@ynput/ayon-frontend-shared 0.2.32 → 0.2.34

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 (636) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +32 -22
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/Feed.cjs.js +1 -1
  5. package/dist/Feed.es.js +19 -13
  6. package/dist/Feed.es.js.map +1 -1
  7. package/dist/Views.cjs.js.map +1 -1
  8. package/dist/Views.es.js.map +1 -1
  9. package/dist/_virtual/index.cjs5.js +1 -1
  10. package/dist/_virtual/index.cjs6.js +1 -1
  11. package/dist/_virtual/index.es5.js +2 -5
  12. package/dist/_virtual/index.es5.js.map +1 -1
  13. package/dist/_virtual/index.es6.js +5 -2
  14. package/dist/_virtual/index.es6.js.map +1 -1
  15. package/dist/api.cjs.js +1 -1
  16. package/dist/api.es.js +230 -223
  17. package/dist/api.es.js.map +1 -1
  18. package/dist/components.cjs.js +1 -1
  19. package/dist/components.es.js +84 -69
  20. package/dist/components.es.js.map +1 -1
  21. package/dist/index.cjs.js +1 -1
  22. package/dist/index.es.js +19 -9
  23. package/dist/index.es.js.map +1 -1
  24. package/dist/node_modules/rehype-prism-plus/dist/index.es.cjs.js +1 -1
  25. package/dist/node_modules/rehype-prism-plus/dist/index.es.es.js +1 -1
  26. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  27. package/dist/node_modules/remove-accents/index.es.js +1 -1
  28. package/dist/shared/src/api/base/client.cjs.js +1 -1
  29. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  30. package/dist/shared/src/api/base/client.es.js +9 -8
  31. package/dist/shared/src/api/base/client.es.js.map +1 -1
  32. package/dist/shared/src/api/generated/activityFeed.cjs.js +1 -1
  33. package/dist/shared/src/api/generated/activityFeed.cjs.js.map +1 -1
  34. package/dist/shared/src/api/generated/activityFeed.es.js +3 -0
  35. package/dist/shared/src/api/generated/activityFeed.es.js.map +1 -1
  36. package/dist/shared/src/api/generated/entityLists.cjs.js +1 -1
  37. package/dist/shared/src/api/generated/entityLists.cjs.js.map +1 -1
  38. package/dist/shared/src/api/generated/entityLists.es.js +4 -1
  39. package/dist/shared/src/api/generated/entityLists.es.js.map +1 -1
  40. package/dist/shared/src/api/generated/graphql.cjs.js +10 -7
  41. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  42. package/dist/shared/src/api/generated/graphql.es.js +15 -12
  43. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  44. package/dist/shared/src/api/generated/projects.cjs.js.map +1 -1
  45. package/dist/shared/src/api/generated/projects.es.js.map +1 -1
  46. package/dist/shared/src/api/generated/views.cjs.js.map +1 -1
  47. package/dist/shared/src/api/generated/views.es.js.map +1 -1
  48. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  49. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  50. package/dist/shared/src/api/queries/activities/getActivities.es.js +4 -8
  51. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  52. package/dist/shared/src/api/queries/activities/getCategories.cjs.js +2 -0
  53. package/dist/shared/src/api/queries/activities/getCategories.cjs.js.map +1 -0
  54. package/dist/shared/src/api/queries/activities/getCategories.es.js +53 -0
  55. package/dist/shared/src/api/queries/activities/getCategories.es.js.map +1 -0
  56. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js +1 -1
  57. package/dist/shared/src/api/queries/activities/updateActivities.cjs.js.map +1 -1
  58. package/dist/shared/src/api/queries/activities/updateActivities.es.js +53 -51
  59. package/dist/shared/src/api/queries/activities/updateActivities.es.js.map +1 -1
  60. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  61. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  62. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +5 -3
  63. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  64. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
  65. package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
  66. package/dist/shared/src/api/queries/entities/updateEntity.es.js +32 -30
  67. package/dist/shared/src/api/queries/entities/updateEntity.es.js.map +1 -1
  68. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js +1 -1
  69. package/dist/shared/src/api/queries/entityLists/getLists.cjs.js.map +1 -1
  70. package/dist/shared/src/api/queries/entityLists/getLists.es.js +68 -68
  71. package/dist/shared/src/api/queries/entityLists/getLists.es.js.map +1 -1
  72. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  73. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  74. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +47 -49
  75. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  76. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  77. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  78. package/dist/shared/src/api/queries/overview/updateOverview.es.js +62 -60
  79. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  80. package/dist/shared/src/api/queries/share/share.cjs.js +1 -1
  81. package/dist/shared/src/api/queries/share/share.cjs.js.map +1 -1
  82. package/dist/shared/src/api/queries/share/share.es.js +38 -12
  83. package/dist/shared/src/api/queries/share/share.es.js.map +1 -1
  84. package/dist/shared/src/api/queries/users/getUsers.cjs.js +2 -2
  85. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  86. package/dist/shared/src/api/queries/users/getUsers.es.js +39 -33
  87. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  88. package/dist/shared/src/api/queries/users/guests.cjs.js +2 -0
  89. package/dist/shared/src/api/queries/users/guests.cjs.js.map +1 -0
  90. package/dist/shared/src/api/queries/users/guests.es.js +60 -0
  91. package/dist/shared/src/api/queries/users/guests.es.js.map +1 -0
  92. package/dist/shared/src/api/queries/views/updateViews.cjs.js +1 -1
  93. package/dist/shared/src/api/queries/views/updateViews.cjs.js.map +1 -1
  94. package/dist/shared/src/api/queries/views/updateViews.es.js +14 -15
  95. package/dist/shared/src/api/queries/views/updateViews.es.js.map +1 -1
  96. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.cjs.js +2 -0
  97. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.cjs.js.map +1 -0
  98. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.es.js +135 -0
  99. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.es.js.map +1 -0
  100. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.cjs.js +39 -0
  101. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.cjs.js.map +1 -0
  102. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.es.js +44 -0
  103. package/dist/shared/src/components/AccessSearchInput/AccessSearchInput.styled.es.js.map +1 -0
  104. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js +2 -0
  105. package/dist/shared/src/components/AccessUser/AccessUser.cjs.js.map +1 -0
  106. package/dist/shared/src/components/AccessUser/AccessUser.es.js +43 -0
  107. package/dist/shared/src/components/AccessUser/AccessUser.es.js.map +1 -0
  108. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js +46 -0
  109. package/dist/shared/src/components/AccessUser/AccessUser.styled.cjs.js.map +1 -0
  110. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js +50 -0
  111. package/dist/shared/src/components/AccessUser/AccessUser.styled.es.js.map +1 -0
  112. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  113. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  114. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +4 -2
  115. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  116. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  117. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  118. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +4 -2
  119. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  120. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  121. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  122. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +4 -2
  123. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  124. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js +47 -43
  125. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.cjs.js.map +1 -1
  126. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js +47 -43
  127. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.styles.es.js.map +1 -1
  128. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +2 -2
  129. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  130. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +4 -2
  131. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  132. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js +1 -1
  133. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.cjs.js.map +1 -1
  134. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.es.js +4 -2
  135. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityData.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 +4 -2
  139. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  140. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  141. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  142. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +12 -2
  143. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  144. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  145. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  146. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +6 -4
  147. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  148. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  149. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  150. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +12 -2
  151. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  152. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  153. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  154. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +4 -2
  155. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  156. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  157. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  158. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +12 -2
  159. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  160. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  161. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  162. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +40 -38
  163. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  164. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  165. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  166. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +12 -2
  167. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  168. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js +9 -0
  169. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.cjs.js.map +1 -0
  170. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js +25 -0
  171. package/dist/shared/src/components/Powerpack/RequiredPowerpackVersion.es.js.map +1 -0
  172. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  173. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  174. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +14 -4
  175. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  176. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js +1 -1
  177. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.cjs.js.map +1 -1
  178. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js +12 -2
  179. package/dist/shared/src/components/ProjectTableSettings/RowHeightSettings.es.js.map +1 -1
  180. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  181. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  182. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +25 -21
  183. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  184. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  185. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  186. package/dist/shared/src/components/RenameForm/RenameForm.es.js +12 -2
  187. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  188. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  189. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  190. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +4 -2
  191. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  192. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  193. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  194. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +12 -2
  195. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  196. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  197. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  198. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +13 -3
  199. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  200. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  201. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  202. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +12 -2
  203. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  204. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  205. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  206. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +4 -2
  207. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  208. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  209. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  210. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +4 -2
  211. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  212. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js +12 -0
  213. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.cjs.js.map +1 -0
  214. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js +46 -0
  215. package/dist/shared/src/components/ShareOptionIcon/ShareOptionIcon.es.js.map +1 -0
  216. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  217. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  218. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +12 -2
  219. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  220. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  221. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  222. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +12 -2
  223. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  224. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  225. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  226. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +6 -4
  227. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  228. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  229. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  230. package/dist/shared/src/components/Watchers/Watchers.es.js +4 -2
  231. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  232. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  233. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  234. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +12 -2
  235. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  236. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  237. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  238. package/dist/shared/src/containers/Actions/Actions.es.js +4 -2
  239. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  240. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  241. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  242. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +12 -2
  243. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  244. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  245. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  246. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +136 -117
  247. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  248. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  249. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  250. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js +12 -2
  251. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  253. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  254. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js +28 -18
  255. package/dist/shared/src/containers/DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  257. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  258. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js +13 -3
  259. package/dist/shared/src/containers/DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  261. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  262. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +4 -2
  263. package/dist/shared/src/containers/DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js +1 -1
  265. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.cjs.js.map +1 -1
  266. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js +5 -2
  267. package/dist/shared/src/containers/DetailsPanel/FeedContextWrapper.es.js.map +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js +1 -1
  269. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.cjs.js.map +1 -1
  270. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js +21 -17
  271. package/dist/shared/src/containers/DetailsPanel/FeedWrapper.es.js.map +1 -1
  272. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  273. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  274. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +4 -2
  275. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  276. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  277. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  278. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +12 -2
  279. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  280. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  281. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  282. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +12 -2
  283. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  284. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  285. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  286. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +12 -2
  287. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  288. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  289. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  290. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +12 -2
  291. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  292. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  293. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  294. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +4 -2
  295. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  296. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  297. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  298. package/dist/shared/src/containers/Feed/Feed.es.js +92 -95
  299. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  300. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js +4 -4
  301. package/dist/shared/src/containers/Feed/Feed.styled.cjs.js.map +1 -1
  302. package/dist/shared/src/containers/Feed/Feed.styled.es.js +8 -7
  303. package/dist/shared/src/containers/Feed/Feed.styled.es.js.map +1 -1
  304. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js +13 -0
  305. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js.map +1 -0
  306. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js +89 -0
  307. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js.map +1 -0
  308. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js +21 -0
  309. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js.map +1 -0
  310. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js +62 -0
  311. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js.map +1 -0
  312. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js +51 -0
  313. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js.map +1 -0
  314. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js +76 -0
  315. package/dist/shared/src/containers/Feed/components/ActivityCategorySelect/CategoryTag.es.js.map +1 -0
  316. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  317. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  318. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +164 -130
  319. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  320. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js +34 -14
  321. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js.map +1 -1
  322. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js +45 -24
  323. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.styled.es.js.map +1 -1
  324. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js +3 -3
  325. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.cjs.js.map +1 -1
  326. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js +58 -48
  327. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.es.js.map +1 -1
  328. package/dist/shared/src/containers/Feed/components/ActivityHeader/ActivityHeader.cjs.js +1 -1
  329. package/dist/shared/src/containers/Feed/components/ActivityHeader/ActivityHeader.cjs.js.map +1 -1
  330. package/dist/shared/src/containers/Feed/components/ActivityHeader/ActivityHeader.es.js +28 -28
  331. package/dist/shared/src/containers/Feed/components/ActivityHeader/ActivityHeader.es.js.map +1 -1
  332. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  333. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  334. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js +1 -1
  335. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.cjs.js.map +1 -1
  336. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js +24 -20
  337. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.es.js.map +1 -1
  338. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js +12 -12
  339. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js.map +1 -1
  340. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js +13 -13
  341. package/dist/shared/src/containers/Feed/components/ActivityReference/ActivityReference.styled.es.js.map +1 -1
  342. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  343. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  344. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +339 -257
  345. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  346. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +69 -41
  347. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  348. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +77 -48
  349. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  350. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js +2 -0
  351. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.cjs.js.map +1 -0
  352. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js +19 -0
  353. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.es.js.map +1 -0
  354. package/dist/shared/src/containers/Feed/components/CommentMentionSelect/CommentMentionSelect.cjs.js +1 -1
  355. package/dist/shared/src/containers/Feed/components/CommentMentionSelect/CommentMentionSelect.cjs.js.map +1 -1
  356. package/dist/shared/src/containers/Feed/components/CommentMentionSelect/CommentMentionSelect.es.js +34 -31
  357. package/dist/shared/src/containers/Feed/components/CommentMentionSelect/CommentMentionSelect.es.js.map +1 -1
  358. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.cjs.js +1 -1
  359. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.cjs.js.map +1 -1
  360. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.es.js +15 -6
  361. package/dist/shared/src/containers/Feed/components/ReactionContainer/ExistingReactions.es.js.map +1 -1
  362. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.cjs.js +1 -1
  363. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.cjs.js.map +1 -1
  364. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.es.js +24 -14
  365. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reaction.es.js.map +1 -1
  366. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.cjs.js +1 -1
  367. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.cjs.js.map +1 -1
  368. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.es.js +60 -38
  369. package/dist/shared/src/containers/Feed/components/ReactionContainer/ReactionPanelOpener.es.js.map +1 -1
  370. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.cjs.js +1 -1
  371. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.cjs.js.map +1 -1
  372. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.es.js +26 -8
  373. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.es.js.map +1 -1
  374. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js +65 -20
  375. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js.map +1 -1
  376. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.es.js +71 -26
  377. package/dist/shared/src/containers/Feed/components/ReactionContainer/Reactions.styled.es.js.map +1 -1
  378. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  379. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  380. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -2
  381. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  382. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  383. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  384. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +39 -33
  385. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  386. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  387. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  388. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +57 -53
  389. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  390. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  391. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  392. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +4 -2
  393. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  394. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  396. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +12 -2
  397. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  398. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  400. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +51 -41
  401. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  402. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +12 -2
  405. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  406. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  408. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +12 -2
  409. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  410. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +12 -2
  413. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  414. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +12 -10
  417. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  418. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +50 -40
  421. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +4 -2
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +7 -5
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +24 -21
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +12 -2
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +12 -2
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +12 -2
  445. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  446. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +4 -2
  449. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  452. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +12 -2
  453. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.cjs.js.map +1 -1
  456. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js +4 -2
  457. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetTaskGroups.es.js.map +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  460. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +12 -2
  461. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  462. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  464. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +12 -2
  465. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  468. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +12 -2
  469. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.cjs.js.map +1 -1
  472. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js +4 -2
  473. package/dist/shared/src/containers/ProjectTreeTable/hooks/useProjectTableModules.es.js.map +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  476. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +12 -2
  477. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  480. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +23 -13
  481. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  482. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  483. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  484. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +7 -7
  485. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  486. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +5 -3
  489. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  490. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +14 -4
  493. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  494. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  496. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +12 -2
  497. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  498. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  499. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  500. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +12 -2
  501. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  502. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  503. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  504. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +43 -33
  505. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  506. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  507. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  508. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +4 -2
  509. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  510. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  511. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  512. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +6 -4
  513. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  514. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  515. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  516. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +4 -2
  517. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  518. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js +1 -1
  519. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.cjs.js.map +1 -1
  520. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js +4 -2
  521. package/dist/shared/src/containers/Views/hooks/useSaveViewFromCurrent.es.js.map +1 -1
  522. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  523. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  524. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +4 -2
  525. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  526. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  527. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  528. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +4 -2
  529. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  530. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  531. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  532. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +4 -2
  533. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  534. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  535. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  536. package/dist/shared/src/context/AddonProjectContext.es.js +6 -4
  537. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  538. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  539. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  540. package/dist/shared/src/context/DetailsPanelContext.es.js +73 -66
  541. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  542. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  543. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  544. package/dist/shared/src/context/PowerpackContext.es.js +42 -26
  545. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  546. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  547. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  548. package/dist/shared/src/context/RemoteModulesContext.es.js +6 -4
  549. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  550. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  551. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  552. package/dist/shared/src/hooks/useActionTriggers.es.js +4 -2
  553. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  554. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  555. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  556. package/dist/shared/src/hooks/useEntityUpdate.es.js +4 -2
  557. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  558. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  559. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  560. package/dist/shared/src/hooks/useHierarchyTable.es.js +4 -2
  561. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  562. package/dist/shared/src/hooks/useLoadModule.cjs.js.map +1 -1
  563. package/dist/shared/src/hooks/useLoadModule.es.js.map +1 -1
  564. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  565. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  566. package/dist/shared/src/hooks/useScopedStatuses.es.js +6 -4
  567. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  568. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  569. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  570. package/dist/shared/src/hooks/useUserProjectConfig.es.js +4 -2
  571. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  572. package/dist/shared/src/util/colorUtils.cjs.js +2 -0
  573. package/dist/shared/src/util/colorUtils.cjs.js.map +1 -0
  574. package/dist/shared/src/util/colorUtils.es.js +40 -0
  575. package/dist/shared/src/util/colorUtils.es.js.map +1 -0
  576. package/dist/types/api/generated/activityFeed.d.ts +9 -0
  577. package/dist/types/api/generated/entityLists.d.ts +2 -0
  578. package/dist/types/api/generated/graphql.d.ts +11 -3
  579. package/dist/types/api/generated/projects.d.ts +4 -4
  580. package/dist/types/api/generated/views.d.ts +9 -3
  581. package/dist/types/api/index.d.ts +1 -0
  582. package/dist/types/api/queries/activities/getCategories.d.ts +142 -0
  583. package/dist/types/api/queries/activities/getMentions.d.ts +1 -0
  584. package/dist/types/api/queries/activities/index.d.ts +1 -0
  585. package/dist/types/api/queries/activities/updateReaction.d.ts +1 -0
  586. package/dist/types/api/queries/users/getUsers.d.ts +132 -0
  587. package/dist/types/api/queries/users/guests.d.ts +453 -0
  588. package/dist/types/api/queries/users/index.d.ts +1 -0
  589. package/dist/types/api/queries/watchers/getWatchers.d.ts +1 -0
  590. package/dist/types/components/AccessSearchInput/AccessSearchInput.d.ts +16 -0
  591. package/dist/types/components/AccessSearchInput/AccessSearchInput.styled.d.ts +2 -0
  592. package/dist/types/components/AccessSearchInput/index.d.ts +2 -0
  593. package/dist/types/components/AccessUser/AccessUser.d.ts +24 -0
  594. package/dist/types/components/AccessUser/AccessUser.styled.d.ts +1 -0
  595. package/dist/types/components/AccessUser/index.d.ts +1 -0
  596. package/dist/types/components/Powerpack/RequiredPowerpackVersion.d.ts +5 -0
  597. package/dist/types/components/Powerpack/index.d.ts +1 -0
  598. package/dist/types/components/ShareOptionIcon/ShareOptionIcon.d.ts +16 -0
  599. package/dist/types/components/ShareOptionIcon/index.d.ts +1 -0
  600. package/dist/types/components/index.d.ts +4 -0
  601. package/dist/types/containers/DetailsPanel/DetailsPanel.d.ts +3 -1
  602. package/dist/types/containers/DetailsPanel/FeedContextWrapper.d.ts +1 -1
  603. package/dist/types/containers/DetailsPanel/FeedWrapper.d.ts +2 -1
  604. package/dist/types/containers/Feed/Feed.d.ts +3 -2
  605. package/dist/types/containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.d.ts +14 -0
  606. package/dist/types/containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.d.ts +10 -0
  607. package/dist/types/containers/Feed/components/ActivityCategorySelect/CategoryTag.d.ts +10 -0
  608. package/dist/types/containers/Feed/components/ActivityCategorySelect/index.d.ts +3 -0
  609. package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.d.ts +1 -1
  610. package/dist/types/containers/Feed/components/ActivityComment/ActivityComment.styled.d.ts +2 -1
  611. package/dist/types/containers/Feed/components/ActivityComment/ActivityMarkdownComponents.d.ts +3 -1
  612. package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -1
  613. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.d.ts +2 -0
  614. package/dist/types/containers/Feed/components/ActivityReference/ActivityReference.styled.d.ts +2 -0
  615. package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +1 -0
  616. package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +7 -1
  617. package/dist/types/containers/Feed/components/CommentInput/hooks/useBlendedCategoryColor.d.ts +11 -0
  618. package/dist/types/containers/Feed/components/CommentMentionSelect/CommentMentionSelect.d.ts +2 -1
  619. package/dist/types/containers/Feed/components/ReactionContainer/ExistingReactions.d.ts +4 -1
  620. package/dist/types/containers/Feed/components/ReactionContainer/Reaction.d.ts +4 -1
  621. package/dist/types/containers/Feed/components/ReactionContainer/ReactionPanelOpener.d.ts +4 -1
  622. package/dist/types/containers/Feed/components/ReactionContainer/Reactions.d.ts +5 -1
  623. package/dist/types/containers/Feed/components/ReactionContainer/Reactions.styled.d.ts +8 -3
  624. package/dist/types/containers/Feed/context/FeedContext.d.ts +3 -1
  625. package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +3 -2
  626. package/dist/types/containers/Feed/index.d.ts +1 -0
  627. package/dist/types/containers/ProjectTreeTable/widgets/BooleanWidget.d.ts +1 -0
  628. package/dist/types/containers/Views/index.d.ts +5 -2
  629. package/dist/types/context/DetailsPanelContext.d.ts +9 -0
  630. package/dist/types/context/PowerpackContext.d.ts +1 -1
  631. package/dist/types/util/colorUtils.d.ts +42 -0
  632. package/dist/types/util/index.d.ts +1 -0
  633. package/dist/util.cjs.js +1 -1
  634. package/dist/util.es.js +30 -24
  635. package/dist/util.es.js.map +1 -1
  636. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","_a","borders","_b","_c","_d","_e","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBY,IAAAA,sBAAAA,OACVA,EAAAA,EAAA,OAAO,CAAP,IAAA,QACAA,EAAAA,EAAA,MAAM,CAAN,IAAA,OACAA,EAAAA,EAAA,QAAQ,CAAR,IAAA,SACAA,EAAAA,EAAA,SAAS,CAAT,IAAA,UACAA,EAAAA,EAAA,OAAO,CAAP,IAAA,QACAA,EAAAA,EAAA,MAAM,EAAN,IAAA,OANUA,IAAAA,KAAA,CAAA,CAAA;AAYL,MAAMC,KAAY,CAACC,GAAcC,MAAyB,QAAQD,CAAK,IAAIC,CAAK,IAM1EC,KAAc,CAACC,MAAwC;AAC5D,QAAAC,IAAQD,EAAO,MAAM,kBAAkB;AACzC,SAACC,IACE,EAAE,OAAOA,EAAM,CAAC,GAAG,OAAOA,EAAM,CAAC,EAAE,IADvB;AAErB,GAEaC,KAAe,CAACC,GAAUC,MAAsB;AAC3D,MAAI,CAACD,KAAO,CAACC,EAAa;AAEpB,QAAAC,IAAQD,EAAK,MAAM,GAAG;AAC5B,MAAIE,IAAUH;AAEd,aAAWI,KAAQF;AACjB,QAAIC,KAAW,OAAOA,KAAY,YAAYC,KAAQD;AACpD,MAAAA,IAAUA,EAAQC,CAAI;AAAA;AAEf;AAIJ,SAAAD;AACT,GAGaE,KAA6B,CAACC,GAAmBC,MAA6B;AAEnF,QAAA,CAACC,GAAOC,GAAUC,GAASC,GAAUC,CAAS,IAAIL,EAAS,MAAM,GAAG,GACpEM,IAAYP,EAAM;AAAA,IACtB,CAACQ,MAASA,EAAK,aAAaL,KAAYK,EAAK,cAAcF;AAAA,EAC7D;AACA,SAAIC,EAAU,SACLA,EAAU,IAAI,CAACC,MAASA,EAAK,KAAK,EAAE,EAAE,KAAK,GAAG,IAE9C;AAEX,GAWaC,KAAiB,CAC5BC,GACAC,GACAC,MACmB;;AACnB,MAAI,GAACC,IAAAD,EAAcF,CAAQ,MAAtB,QAAAG,EAA0BF;AACtB,WAAA;AAGT,MAAIG,IAAU;AAGV,UAAAJ,MAAa,KAAK,GAACK,IAAAH,EAAcF,IAAW,CAAC,MAA1B,QAAAK,EAA8BJ,SACxCG,KAAA,KAIRE,IAAAJ,EAAcF,CAAQ,MAAtB,QAAAM,EAA0BL,IAAW,OAC7BG,KAAA,KAIRG,IAAAL,EAAcF,IAAW,CAAC,MAA1B,QAAAO,EAA8BN,OACtBG,KAAA,KAITH,MAAa,KAAK,GAACO,IAAAN,EAAcF,CAAQ,MAAtB,QAAAQ,EAA0BP,IAAW,SAC/CG,KAAA,IAGNA;AACT,GAKaK,KAAmB,CAACL,MAAsC;AACrE,QAAMM,IAAoB,CAAC;AAE3B,SAAIN,IAAU,KAA4BM,EAAA,KAAK,YAAY,GACvDN,IAAU,KAA8BM,EAAA,KAAK,cAAc,GAC3DN,IAAU,KAA+BM,EAAA,KAAK,eAAe,GAC7DN,IAAU,KAA6BM,EAAA,KAAK,aAAa,GAEtDA;AACT,GAGaC,KAAoB,CAC/BC,GACAC,MACGA,EAAY,IAAIC,EAAWF,CAAE,CAAC;"}
1
+ {"version":3,"file":"cellUtils.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/utils/cellUtils.ts"],"sourcesContent":["/**\n * Shared cell utilities for table operations\n */\n\nimport { TaskLink } from '@shared/api'\nimport { parseRowId } from '../context'\nimport { EMapResult, EntitiesMap } from '../types'\n\n// Type definitions for cell identifiers\nexport type CellId = string\nexport type RowId = string\nexport type ColId = string\n\n// Cell position in the grid\nexport interface CellPosition {\n rowId: RowId\n colId: ColId\n}\n\n// Cell border position flags - used for determining which borders to show\nexport enum BorderPosition {\n None = 0,\n Top = 1 << 0,\n Right = 1 << 1,\n Bottom = 1 << 2,\n Left = 1 << 3,\n All = Top | Right | Bottom | Left,\n}\n\n/**\n * Create a standardized cell ID from row and column IDs\n */\nexport const getCellId = (rowId: RowId, colId: ColId): CellId => `cell-${rowId}-${colId}`\n\n/**\n * Parse a cell ID to extract row and column IDs\n * @returns CellPosition or null if invalid format\n */\nexport const parseCellId = (cellId: CellId): CellPosition | null => {\n const match = cellId.match(/^cell-(.+)-(.+)$/)\n if (!match) return null\n return { rowId: match[1], colId: match[2] }\n}\n\nexport const getCellValue = (obj: any, path: string): any => {\n if (!obj || !path) return undefined\n\n const parts = path.split('_')\n let current = obj\n\n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part]\n } else {\n return undefined // Return undefined if any part of the path is invalid\n }\n }\n\n return current\n}\n\n// return the link entity ids for a given column id\nexport const getLinkEntityIdsByColumnId = (links: TaskLink[], columnId: CellId): string => {\n // split the columnId\n const [_link, linkType, _inType, _outType, direction] = columnId.split('_')\n const cellLinks = links.filter(\n (link) => link.linkType === linkType && link.direction === direction,\n )\n if (cellLinks.length) {\n return cellLinks.map((link) => link.node.id).join(',')\n } else {\n return ''\n }\n}\n\n/**\n * Determines which borders to display for a selected cell\n * based on its position within the selection grid\n *\n * @param rowIndex Current cell's row index\n * @param colIndex Current cell's column index\n * @param selectedCells 2D array representing selection state (true = selected)\n * @returns BorderPosition flags indicating which borders to display\n */\nexport const getCellBorders = (\n rowIndex: number,\n colIndex: number,\n selectedCells: boolean[][],\n): BorderPosition => {\n if (!selectedCells[rowIndex]?.[colIndex]) {\n return BorderPosition.None\n }\n\n let borders = BorderPosition.None\n\n // Check top border\n if (rowIndex === 0 || !selectedCells[rowIndex - 1]?.[colIndex]) {\n borders |= BorderPosition.Top\n }\n\n // Check right border\n if (!selectedCells[rowIndex]?.[colIndex + 1]) {\n borders |= BorderPosition.Right\n }\n\n // Check bottom border\n if (!selectedCells[rowIndex + 1]?.[colIndex]) {\n borders |= BorderPosition.Bottom\n }\n\n // Check left border\n if (colIndex === 0 || !selectedCells[rowIndex]?.[colIndex - 1]) {\n borders |= BorderPosition.Left\n }\n\n return borders\n}\n\n/**\n * Converts border position flags to CSS classes for shadow styling\n */\nexport const getBorderClasses = (borders: BorderPosition): string[] => {\n const classes: string[] = []\n\n if (borders & BorderPosition.Top) classes.push('shadow-top')\n if (borders & BorderPosition.Right) classes.push('shadow-right')\n if (borders & BorderPosition.Bottom) classes.push('shadow-bottom')\n if (borders & BorderPosition.Left) classes.push('shadow-left')\n\n return classes\n}\n\n// get a entity from it's id\nexport const getEntityDataById = <T extends 'folder' | 'task' | 'product' | 'version'>(\n id: string,\n entitiesMap: EntitiesMap,\n) => entitiesMap.get(parseRowId(id)) as EMapResult<T> | undefined\n"],"names":["BorderPosition","getCellId","rowId","colId","parseCellId","cellId","match","getCellValue","obj","path","parts","current","part","getLinkEntityIdsByColumnId","links","columnId","_link","linkType","_inType","_outType","direction","cellLinks","link","getCellBorders","rowIndex","colIndex","selectedCells","_a","borders","_b","_c","_d","_e","getBorderClasses","classes","getEntityDataById","id","entitiesMap","parseRowId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBY,IAAAA,sBAAAA,OACVA,EAAAA,EAAA,OAAO,CAAP,IAAA,QACAA,EAAAA,EAAA,MAAM,CAAN,IAAA,OACAA,EAAAA,EAAA,QAAQ,CAAR,IAAA,SACAA,EAAAA,EAAA,SAAS,CAAT,IAAA,UACAA,EAAAA,EAAA,OAAO,CAAP,IAAA,QACAA,EAAAA,EAAA,MAAM,EAAN,IAAA,OANUA,IAAAA,KAAA,CAAA,CAAA;AAYL,MAAMC,KAAY,CAACC,GAAcC,MAAyB,QAAQD,CAAK,IAAIC,CAAK,IAM1EC,KAAc,CAACC,MAAwC;AAC5D,QAAAC,IAAQD,EAAO,MAAM,kBAAkB;AACzC,SAACC,IACE,EAAE,OAAOA,EAAM,CAAC,GAAG,OAAOA,EAAM,CAAC,EAAE,IADvB;AAErB,GAEaC,KAAe,CAACC,GAAUC,MAAsB;AAC3D,MAAI,CAACD,KAAO,CAACC,EAAa;AAEpB,QAAAC,IAAQD,EAAK,MAAM,GAAG;AAC5B,MAAIE,IAAUH;AAEd,aAAWI,KAAQF;AACjB,QAAIC,KAAW,OAAOA,KAAY,YAAYC,KAAQD;AACpD,MAAAA,IAAUA,EAAQC,CAAI;AAAA;AAEf;AAIJ,SAAAD;AACT,GAGaE,KAA6B,CAACC,GAAmBC,MAA6B;AAEnF,QAAA,CAACC,GAAOC,GAAUC,GAASC,GAAUC,CAAS,IAAIL,EAAS,MAAM,GAAG,GACpEM,IAAYP,EAAM;AAAA,IACtB,CAACQ,MAASA,EAAK,aAAaL,KAAYK,EAAK,cAAcF;AAAA,EAC7D;AACA,SAAIC,EAAU,SACLA,EAAU,IAAI,CAACC,MAASA,EAAK,KAAK,EAAE,EAAE,KAAK,GAAG,IAE9C;AAEX,GAWaC,KAAiB,CAC5BC,GACAC,GACAC,MACmB;;AACnB,MAAI,GAACC,IAAAD,EAAcF,CAAQ,MAAtB,QAAAG,EAA0BF;AACtB,WAAA;AAGT,MAAIG,IAAU;AAGV,UAAAJ,MAAa,KAAK,GAACK,IAAAH,EAAcF,IAAW,CAAC,MAA1B,QAAAK,EAA8BJ,SACxCG,KAAA,KAIRE,IAAAJ,EAAcF,CAAQ,MAAtB,QAAAM,EAA0BL,IAAW,OAC7BG,KAAA,KAIRG,IAAAL,EAAcF,IAAW,CAAC,MAA1B,QAAAO,EAA8BN,OACtBG,KAAA,KAITH,MAAa,KAAK,GAACO,IAAAN,EAAcF,CAAQ,MAAtB,QAAAQ,EAA0BP,IAAW,SAC/CG,KAAA,IAGNA;AACT,GAKaK,KAAmB,CAACL,MAAsC;AACrE,QAAMM,IAAoB,CAAC;AAE3B,SAAIN,IAAU,KAA4BM,EAAA,KAAK,YAAY,GACvDN,IAAU,KAA8BM,EAAA,KAAK,cAAc,GAC3DN,IAAU,KAA+BM,EAAA,KAAK,eAAe,GAC7DN,IAAU,KAA6BM,EAAA,KAAK,aAAa,GAEtDA;AACT,GAGaC,KAAoB,CAC/BC,GACAC,MACGA,EAAY,IAAIC,EAAWF,CAAE,CAAC;"}
@@ -19,5 +19,5 @@
19
19
  border-color: var(--md-sys-color-primary);
20
20
  appearance: auto;
21
21
  }
22
- `,l=d.forwardRef(({value:r,onChange:o,isReadOnly:e,isEditing:u,onCancelEdit:p,...t},c)=>a.jsxRuntimeExports.jsx(s,{...t,checked:r,onChange:n=>o(n.target.checked),ref:c,type:"checkbox",disabled:e,readOnly:e}));exports.BooleanWidget=l;
22
+ `,l=d.forwardRef(({value:r,onChange:o,isReadOnly:e,isEditing:u,onCancelEdit:p,isInherited:g,...t},n)=>a.jsxRuntimeExports.jsx(s,{...t,checked:r,onChange:c=>o(c.target.checked),ref:n,type:"checkbox",disabled:e,readOnly:e}));exports.BooleanWidget=l;
23
23
  //# sourceMappingURL=BooleanWidget.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["StyledCheckbox","styled","BooleanWidget","forwardRef","value","onChange","isReadOnly","isEditing","onCancelEdit","props","ref","jsx","e"],"mappings":"gMAIMA,EAAiBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA8BjBC,EAAgBC,EAAA,WAC3B,CAAC,CAAE,MAAAC,EAAO,SAAAC,EAAU,WAAAC,EAAY,UAAAC,EAAW,aAAAC,EAAc,GAAGC,CAAM,EAAGC,IAEjEC,EAAA,kBAAA,IAACX,EAAA,CACE,GAAGS,EACJ,QAASL,EACT,SAAWQ,GAAMP,EAAUO,EAAE,OAA4B,OAAO,EAChE,IAAAF,EACA,KAAK,WACL,SAAUJ,EACV,SAAUA,CAAA,CACZ,CAGN"}
1
+ {"version":3,"file":"BooleanWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n isInherited?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, isInherited, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["StyledCheckbox","styled","BooleanWidget","forwardRef","value","onChange","isReadOnly","isEditing","onCancelEdit","isInherited","props","ref","jsx","e"],"mappings":"gMAIMA,EAAiBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA+BjBC,EAAgBC,EAAA,WAC3B,CAAC,CAAE,MAAAC,EAAO,SAAAC,EAAU,WAAAC,EAAY,UAAAC,EAAW,aAAAC,EAAc,YAAAC,EAAa,GAAGC,CAAM,EAAGC,IAE9EC,EAAA,kBAAA,IAACZ,EAAA,CACE,GAAGU,EACJ,QAASN,EACT,SAAWS,GAAMR,EAAUQ,EAAE,OAA4B,OAAO,EAChE,IAAAF,EACA,KAAK,WACL,SAAUL,EACV,SAAUA,CAAA,CACZ,CAGN"}
@@ -1,7 +1,7 @@
1
1
  import { j as c } from "../../../../../_virtual/jsx-runtime.es.js";
2
2
  import { forwardRef as n } from "react";
3
3
  import i from "styled-components";
4
- const p = i.input`
4
+ const s = i.input`
5
5
  margin: auto;
6
6
  z-index: 1;
7
7
  cursor: pointer;
@@ -22,14 +22,14 @@ const p = i.input`
22
22
  border-color: var(--md-sys-color-primary);
23
23
  appearance: auto;
24
24
  }
25
- `, u = n(
26
- ({ value: o, onChange: e, isReadOnly: r, isEditing: s, onCancelEdit: l, ...a }, t) => /* @__PURE__ */ c.jsx(
27
- p,
25
+ `, b = n(
26
+ ({ value: o, onChange: e, isReadOnly: r, isEditing: p, onCancelEdit: l, isInherited: m, ...t }, a) => /* @__PURE__ */ c.jsx(
27
+ s,
28
28
  {
29
- ...a,
29
+ ...t,
30
30
  checked: o,
31
31
  onChange: (d) => e(d.target.checked),
32
- ref: t,
32
+ ref: a,
33
33
  type: "checkbox",
34
34
  disabled: r,
35
35
  readOnly: r
@@ -37,6 +37,6 @@ const p = i.input`
37
37
  )
38
38
  );
39
39
  export {
40
- u as BooleanWidget
40
+ b as BooleanWidget
41
41
  };
42
42
  //# sourceMappingURL=BooleanWidget.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BooleanWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["StyledCheckbox","styled","BooleanWidget","forwardRef","value","onChange","isReadOnly","isEditing","onCancelEdit","props","ref","jsx","e"],"mappings":";;;AAIA,MAAMA,IAAiBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA8BjBC,IAAgBC;AAAA,EAC3B,CAAC,EAAE,OAAAC,GAAO,UAAAC,GAAU,YAAAC,GAAY,WAAAC,GAAW,cAAAC,GAAc,GAAGC,EAAM,GAAGC,MAEjEC,gBAAAA,EAAA;AAAA,IAACX;AAAA,IAAA;AAAA,MACE,GAAGS;AAAA,MACJ,SAASL;AAAA,MACT,UAAU,CAACQ,MAAMP,EAAUO,EAAE,OAA4B,OAAO;AAAA,MAChE,KAAAF;AAAA,MACA,MAAK;AAAA,MACL,UAAUJ;AAAA,MACV,UAAUA;AAAA,IAAA;AAAA,EACZ;AAGN;"}
1
+ {"version":3,"file":"BooleanWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/BooleanWidget.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\nimport { WidgetBaseProps } from './CellWidget'\n\nconst StyledCheckbox = styled.input`\n margin: auto;\n z-index: 1;\n cursor: pointer;\n\n width: 16px;\n height: 16px;\n background-color: transparent;\n border: 1px solid var(--md-sys-color-outline);\n appearance: none;\n border-radius: 2px;\n\n &:hover {\n border-color: hsl(212.31deg 16.83% 74.65%);\n }\n\n &:checked {\n background-color: var(--md-sys-color-primary);\n border-color: var(--md-sys-color-primary);\n appearance: auto;\n }\n`\n\nexport interface BooleanWidgetProps\n extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'>,\n WidgetBaseProps {\n value: boolean\n isReadOnly?: boolean\n isInherited?: boolean\n}\n\nexport const BooleanWidget = forwardRef<HTMLInputElement, BooleanWidgetProps>(\n ({ value, onChange, isReadOnly, isEditing, onCancelEdit, isInherited, ...props }, ref) => {\n return (\n <StyledCheckbox\n {...props}\n checked={value}\n onChange={(e) => onChange((e.target as HTMLInputElement).checked)}\n ref={ref}\n type=\"checkbox\"\n disabled={isReadOnly}\n readOnly={isReadOnly}\n />\n )\n },\n)\n"],"names":["StyledCheckbox","styled","BooleanWidget","forwardRef","value","onChange","isReadOnly","isEditing","onCancelEdit","isInherited","props","ref","jsx","e"],"mappings":";;;AAIA,MAAMA,IAAiBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA+BjBC,IAAgBC;AAAA,EAC3B,CAAC,EAAE,OAAAC,GAAO,UAAAC,GAAU,YAAAC,GAAY,WAAAC,GAAW,cAAAC,GAAc,aAAAC,GAAa,GAAGC,EAAM,GAAGC,MAE9EC,gBAAAA,EAAA;AAAA,IAACZ;AAAA,IAAA;AAAA,MACE,GAAGU;AAAA,MACJ,SAASN;AAAA,MACT,UAAU,CAACS,MAAMR,EAAUQ,EAAE,OAA4B,OAAO;AAAA,MAChE,KAAAF;AAAA,MACA,MAAK;AAAA,MACL,UAAUL;AAAA,MACV,UAAUA;AAAA,IAAA;AAAA,EACZ;AAGN;"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../_virtual/jsx-runtime.cjs.js"),f=require("react"),z=require("styled-components"),J=require("./BooleanWidget.cjs.js"),K=require("./CollapsedWidget.cjs.js"),Q=require("./DateWidget.cjs.js"),X=require("./EnumWidget.cjs.js"),Y=require("./TextWidget.cjs.js"),I=require("./LinksWidget.cjs.js"),Z=require("../context/CellEditingContext.cjs.js"),$=require("../context/ColumnSettingsContext.cjs.js"),w=require("../utils/cellUtils.cjs.js"),O=require("clsx"),V=require("../context/SelectionCellsContext.cjs.js");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("@ynput/ayon-react-components");require("@tanstack/react-table");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("./LoadMoreWidget.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const ee=require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../ProjectTreeTable.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");;/* empty css */require("../../ContextMenu/ContextMenuContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");const re=require("./EnumCellValue.cjs.js"),ie=require("./NameWidget.cjs.js"),ue=z.div`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../../../../_virtual/jsx-runtime.cjs.js"),f=require("react"),z=require("styled-components"),J=require("./BooleanWidget.cjs.js"),K=require("./CollapsedWidget.cjs.js"),Q=require("./DateWidget.cjs.js"),X=require("./EnumWidget.cjs.js"),Y=require("./TextWidget.cjs.js"),I=require("./LinksWidget.cjs.js"),Z=require("../context/CellEditingContext.cjs.js"),$=require("../context/ColumnSettingsContext.cjs.js"),w=require("../utils/cellUtils.cjs.js"),O=require("clsx"),V=require("../context/SelectionCellsContext.cjs.js");require("react-toastify");require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("@ynput/ayon-react-components");require("@tanstack/react-table");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("./LoadMoreWidget.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");const ee=require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../ProjectTreeTable.cjs.js");require("../context/SelectedRowsContext.cjs.js");require("../context/DetailsPanelEntityContext.cjs.js");;/* empty css */require("../../ContextMenu/ContextMenuContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/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("../../../context/RemoteModulesContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");const re=require("./EnumCellValue.cjs.js"),ie=require("./NameWidget.cjs.js"),ue=z.div`
2
2
  position: absolute;
3
3
  inset: 0;
4
4
  padding: 4px 8px;
@@ -1 +1 @@
1
- {"version":3,"file":"CellWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget, BooleanWidgetProps } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget, DateWidgetProps } from './DateWidget'\nimport { EnumWidget, EnumWidgetProps } from './EnumWidget'\nimport { TextWidget, TextWidgetProps, TextWidgetType } from './TextWidget'\nimport { isLinkEditable, LinksWidget, LinkWidgetData } from './LinksWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { useColumnSettingsContext } from '../context/ColumnSettingsContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { useProjectTableContext } from '../context'\nimport { EnumCellValue } from './EnumCellValue'\nimport { NameWidget } from '@shared/containers/ProjectTreeTable/widgets/NameWidget'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\n// use this class to trigger the editing mode on a single click\nexport const EDIT_TRIGGER_CLASS = 'edit-trigger'\n\ntype WidgetAttributeData = { type: AttributeData['type'] | 'links' | 'name' }\n\nexport type CellValue = string | number | boolean\nexport type CellValueData = Record<string, any>\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n valueData?: CellValueData | CellValueData[] // extra data for the value\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n folderId?: string | null\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n // options passthrough props\n pt?: {\n enum?: Partial<EnumWidgetProps>\n text?: Partial<TextWidgetProps>\n date?: Partial<DateWidgetProps>\n boolean?: Partial<BooleanWidgetProps>\n }\n entityType?: string\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nexport const CellWidget: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n valueData,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n folderId,\n onChange,\n entityType,\n pt,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { projectName } = useProjectTableContext()\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const { rowHeight } = useColumnSettingsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n // NOTE: the selection of a cell is handled in ProjectTreeTable.tsx line 1079\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n // ensure the browser focus moves back to the parent <td>\n const td = ref.current?.closest('td') as HTMLElement | null\n if (td) td.focus()\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n case type === 'name': {\n return (\n <NameWidget\n value={value as CellValue}\n valueData={valueData as NameWidgetData}\n cellId={cellId}\n entityType={entityType || ''}\n {...sharedProps}\n />\n )\n }\n\n case type === 'links': {\n const linksValue = valueData as LinkWidgetData | undefined\n\n const isEditable = isLinkEditable(\n linksValue?.direction || 'out',\n linksValue?.link.linkType || '',\n linksValue?.entityType || '',\n )\n\n // overwrite readonly state if the cell is currently being edited\n isReadOnly = !isEditable\n return (\n <LinksWidget\n value={linksValue}\n cellId={cellId}\n projectName={projectName}\n disabled={!isEditable}\n folderId={folderId}\n {...sharedProps}\n />\n )\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n if (isReadOnly) {\n const selectedOptions = options.filter((option) => enumValue.includes(option.value))\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n isReadOnly\n hasMultipleValues={enumValue.length > 1}\n isMultiSelect={type?.includes('list')}\n rowHeight={rowHeight}\n />\n )\n }\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n {...pt?.enum}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return (\n <TextWidget\n value={value as string}\n isInherited={isInherited}\n columnId={columnId}\n {...sharedProps}\n {...pt?.text}\n />\n )\n\n case type === 'datetime':\n return (\n <DateWidget\n value={value ? (value as string) : undefined}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.date}\n />\n )\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} {...pt?.boolean} />\n\n case isPlaceholder:\n return null\n\n default:\n // TODO: We should not allow editing unrecognized types\n // At this point, only list_of_strings without proper options is unrecognized\n // (tags if not tags are specified in anatomy) and in that case, validation\n // on the server fails with a string value. Unless we have a widget that\n // accepts a string value AND options at the same time we shouldn't show\n // any edit widget\n\n //console.log(`Unrecognized type \"${type}\" for cell ${cellId}.`)\n return null\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, {\n inherited: isInherited && !isCurrentCellEditing,\n readonly: isReadOnly,\n editable: !isReadOnly,\n })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n"],"names":["Cell","styled","EDIT_TRIGGER_CLASS","CellWidget","rowId","columnId","value","valueData","attributeData","options","isCollapsed","isInherited","isPlaceholder","isReadOnly","enableCustomValues","folderId","onChange","entityType","pt","props","ref","useRef","type","projectName","useProjectTableContext","isEditing","setEditingCellId","useCellEditing","isCellFocused","gridMap","selectCell","focusCell","useSelectionCellsContext","rowHeight","useColumnSettingsContext","cellId","getCellId","isCurrentCellEditing","isCurrentCellFocused","handleDoubleClick","useCallback","handleSingleClick","moveToNextRow","rowIndex","newRowId","newCellId","handleOnChange","newValue","key","handleCancel","td","_a","widget","useMemo","sharedProps","textTypes","firstSelectedOption","option","color","jsx","CollapsedWidget","NameWidget","linksValue","isEditable","isLinkEditable","LinksWidget","enumValue","selectedOptions","EnumCellValue","EnumWidget","TextWidget","DateWidget","BooleanWidget","clsx"],"mappings":"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"}
1
+ {"version":3,"file":"CellWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget, BooleanWidgetProps } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget, DateWidgetProps } from './DateWidget'\nimport { EnumWidget, EnumWidgetProps } from './EnumWidget'\nimport { TextWidget, TextWidgetProps, TextWidgetType } from './TextWidget'\nimport { isLinkEditable, LinksWidget, LinkWidgetData } from './LinksWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { useColumnSettingsContext } from '../context/ColumnSettingsContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { useProjectTableContext } from '../context'\nimport { EnumCellValue } from './EnumCellValue'\nimport { NameWidget } from '@shared/containers/ProjectTreeTable/widgets/NameWidget'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\n// use this class to trigger the editing mode on a single click\nexport const EDIT_TRIGGER_CLASS = 'edit-trigger'\n\ntype WidgetAttributeData = { type: AttributeData['type'] | 'links' | 'name' }\n\nexport type CellValue = string | number | boolean\nexport type CellValueData = Record<string, any>\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n valueData?: CellValueData | CellValueData[] // extra data for the value\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n folderId?: string | null\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n // options passthrough props\n pt?: {\n enum?: Partial<EnumWidgetProps>\n text?: Partial<TextWidgetProps>\n date?: Partial<DateWidgetProps>\n boolean?: Partial<BooleanWidgetProps>\n }\n entityType?: string\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nexport const CellWidget: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n valueData,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n folderId,\n onChange,\n entityType,\n pt,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { projectName } = useProjectTableContext()\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const { rowHeight } = useColumnSettingsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n // NOTE: the selection of a cell is handled in ProjectTreeTable.tsx line 1079\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n // ensure the browser focus moves back to the parent <td>\n const td = ref.current?.closest('td') as HTMLElement | null\n if (td) td.focus()\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n case type === 'name': {\n return (\n <NameWidget\n value={value as CellValue}\n valueData={valueData as NameWidgetData}\n cellId={cellId}\n entityType={entityType || ''}\n {...sharedProps}\n />\n )\n }\n\n case type === 'links': {\n const linksValue = valueData as LinkWidgetData | undefined\n\n const isEditable = isLinkEditable(\n linksValue?.direction || 'out',\n linksValue?.link.linkType || '',\n linksValue?.entityType || '',\n )\n\n // overwrite readonly state if the cell is currently being edited\n isReadOnly = !isEditable\n return (\n <LinksWidget\n value={linksValue}\n cellId={cellId}\n projectName={projectName}\n disabled={!isEditable}\n folderId={folderId}\n {...sharedProps}\n />\n )\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n if (isReadOnly) {\n const selectedOptions = options.filter((option) => enumValue.includes(option.value))\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n isReadOnly\n hasMultipleValues={enumValue.length > 1}\n isMultiSelect={type?.includes('list')}\n rowHeight={rowHeight}\n />\n )\n }\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n {...pt?.enum}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return (\n <TextWidget\n value={value as string}\n isInherited={isInherited}\n columnId={columnId}\n {...sharedProps}\n {...pt?.text}\n />\n )\n\n case type === 'datetime':\n return (\n <DateWidget\n value={value ? (value as string) : undefined}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.date}\n />\n )\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} {...pt?.boolean} />\n\n case isPlaceholder:\n return null\n\n default:\n // TODO: We should not allow editing unrecognized types\n // At this point, only list_of_strings without proper options is unrecognized\n // (tags if not tags are specified in anatomy) and in that case, validation\n // on the server fails with a string value. Unless we have a widget that\n // accepts a string value AND options at the same time we shouldn't show\n // any edit widget\n\n //console.log(`Unrecognized type \"${type}\" for cell ${cellId}.`)\n return null\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, {\n inherited: isInherited && !isCurrentCellEditing,\n readonly: isReadOnly,\n editable: !isReadOnly,\n })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n"],"names":["Cell","styled","EDIT_TRIGGER_CLASS","CellWidget","rowId","columnId","value","valueData","attributeData","options","isCollapsed","isInherited","isPlaceholder","isReadOnly","enableCustomValues","folderId","onChange","entityType","pt","props","ref","useRef","type","projectName","useProjectTableContext","isEditing","setEditingCellId","useCellEditing","isCellFocused","gridMap","selectCell","focusCell","useSelectionCellsContext","rowHeight","useColumnSettingsContext","cellId","getCellId","isCurrentCellEditing","isCurrentCellFocused","handleDoubleClick","useCallback","handleSingleClick","moveToNextRow","rowIndex","newRowId","newCellId","handleOnChange","newValue","key","handleCancel","td","_a","widget","useMemo","sharedProps","textTypes","firstSelectedOption","option","color","jsx","CollapsedWidget","NameWidget","linksValue","isEditable","isLinkEditable","LinksWidget","enumValue","selectedOptions","EnumCellValue","EnumWidget","TextWidget","DateWidget","BooleanWidget","clsx"],"mappings":"4wNAyBMA,GAAOC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAwBPC,GAAqB,eAsCrBC,GAAkC,CAAC,CAC9C,MAAAC,EACA,SAAAC,EACA,MAAAC,EACA,UAAAC,EACA,cAAAC,EACA,QAAAC,EAAU,CAAC,EACX,YAAAC,EACA,YAAAC,EACA,cAAAC,EACA,WAAAC,EACA,mBAAAC,EACA,SAAAC,EACA,SAAAC,EACA,WAAAC,EACA,GAAAC,EACA,GAAGC,CACL,IAAM,CACE,MAAAC,EAAMC,SAAuB,IAAI,EACjCC,EAAOd,GAAA,YAAAA,EAAe,KAEtB,CAAE,YAAAe,CAAY,EAAIC,0BAAuB,EACzC,CAAE,UAAAC,EAAW,iBAAAC,CAAiB,EAAIC,iBAAe,EACjD,CAAE,cAAAC,EAAe,QAAAC,EAAS,WAAAC,EAAY,UAAAC,CAAA,EAAcC,EAAAA,yBAAyB,EAC7E,CAAE,UAAAC,CAAU,EAAIC,2BAAyB,EACzCC,EAASC,EAAAA,UAAUhC,EAAOC,CAAQ,EAElCgC,EAAuBZ,EAAUU,CAAM,EACvCG,EAAuBV,EAAcO,CAAM,EAE3CI,EAAoBC,EAAAA,YAAY,IAAM,CACtC5B,GAAiBC,GACrBa,EAAiBS,CAAM,CACtB,EAAA,CAACA,EAAQT,EAAkBd,CAAa,CAAC,EAEtC6B,EAAoB,IAAM,CAGzBJ,GACHX,EAAiB,IAAI,CAEzB,EAEMgB,EAAgB,IAAM,CAC1B,MAAMC,EAAWd,EAAQ,aAAa,IAAIzB,CAAK,EAC/C,GAAIuC,IAAa,OAAW,OAC5B,MAAMC,EAAWf,EAAQ,aAAa,IAAIc,EAAW,CAAC,EACtD,GAAIC,EAAU,CACN,MAAAC,EAAYT,EAAAA,UAAUQ,EAAUvC,CAAQ,EACnCyB,EAAAe,EAAW,GAAO,EAAK,EAClCd,EAAUc,CAAS,EACnBnB,EAAiBmB,CAAS,CAAA,CAE9B,EAEMC,EAA8C,CAACC,EAAUC,IAAQ,CACrEtB,EAAiB,IAAI,EACjB,CAAAb,IAEJmC,IAAQ,SAAWN,EAAc,GAE7BK,IAAazC,GAAS0C,IAAQ,WAChChC,GAAA,MAAAA,EAAW+B,EAAUC,IAEzB,EAEMC,EAAe,IAAM,OACzBvB,EAAiB,IAAI,EAErB,MAAMwB,GAAKC,EAAA/B,EAAI,UAAJ,YAAA+B,EAAa,QAAQ,MAC5BD,KAAO,MAAM,CACnB,EAEME,EAASC,EAAAA,QAAQ,IAAM,CAE3B,MAAMC,EAA+B,CACnC,SAAUR,EACV,aAAcG,EACd,UAAWZ,CACb,EAEMkB,EAA8B,CAAC,SAAU,UAAW,OAAO,EAGjE,OAAQ,GAAM,CAEZ,KAAK7C,EAAa,CAEhB,MAAM8C,EAAsBlC,GAAA,MAAAA,EAAM,SAAS,QACvCb,EAAQ,KAAMgD,GACZ,MAAM,QAAQnD,CAAK,EAAIA,EAAM,SAASmD,EAAO,KAAK,EAAInD,IAAUmD,EAAO,KAAA,EAEzE,OACEC,EAAQF,GAAA,YAAAA,EAAqB,MAC5B,OAAAG,wBAACC,EAAAA,iBAAgB,MAAAF,EAAc,CAAA,CAExC,KAAKpC,IAAS,OAEV,OAAAqC,EAAA,kBAAA,IAACE,GAAA,WAAA,CACC,MAAAvD,EACA,UAAAC,EACA,OAAA4B,EACA,WAAYlB,GAAc,GACzB,GAAGqC,CAAA,CACN,EAIJ,KAAKhC,IAAS,QAAS,CACrB,MAAMwC,EAAavD,EAEbwD,EAAaC,EAAA,gBACjBF,GAAA,YAAAA,EAAY,YAAa,OACzBA,GAAA,YAAAA,EAAY,KAAK,WAAY,IAC7BA,GAAA,YAAAA,EAAY,aAAc,EAC5B,EAGA,OAAAjD,EAAa,CAACkD,EAEZJ,EAAA,kBAAA,IAACM,EAAA,YAAA,CACC,MAAOH,EACP,OAAA3B,EACA,YAAAZ,EACA,SAAU,CAACwC,EACX,SAAAhD,EACC,GAAGuC,CAAA,CACN,CAAA,CAIJ,IAAK,CAAC,CAAC7C,EAAQ,OAAQ,CACrB,MAAMyD,EAAY,MAAM,QAAQ5D,CAAK,EAAIA,EAAQ,CAACA,CAAK,EACvD,GAAIO,EAAY,CACR,MAAAsD,EAAkB1D,EAAQ,OAAQgD,GAAWS,EAAU,SAAST,EAAO,KAAK,CAAC,EAEjF,OAAAE,EAAA,kBAAA,IAACS,GAAA,cAAA,CACC,gBAAAD,EACA,WAAU,GACV,kBAAmBD,EAAU,OAAS,EACtC,cAAe5C,GAAA,YAAAA,EAAM,SAAS,QAC9B,UAAAW,CAAA,CACF,CAAA,CAIF,OAAA0B,EAAA,kBAAA,IAACU,EAAA,WAAA,CACC,MAAOH,EACP,QAAAzD,EACA,KAAAa,EACA,OAAQ,IAAMI,EAAiBS,CAAM,EACrC,mBAAArB,EACC,GAAGwC,EACH,GAAGpC,GAAA,YAAAA,EAAI,IAAA,CACV,CAAA,CAIJ,KAAKqC,EAAU,SAASjC,CAAsB,EAE1C,OAAAqC,EAAA,kBAAA,IAACW,EAAA,WAAA,CACC,MAAAhE,EACA,YAAAK,EACA,SAAAN,EACC,GAAGiD,EACH,GAAGpC,GAAA,YAAAA,EAAI,IAAA,CACV,EAGJ,KAAKI,IAAS,WAEV,OAAAqC,EAAA,kBAAA,IAACY,EAAA,WAAA,CACC,MAAOjE,GAA4B,OACnC,YAAAK,EACC,GAAG2C,EACH,GAAGpC,GAAA,YAAAA,EAAI,IAAA,CACV,EAGJ,KAAKI,IAAS,UACZ,+BAAQkD,EAAc,cAAA,CAAA,MAAAlE,EAA0B,GAAGgD,EAAc,GAAGpC,GAAA,YAAAA,EAAI,QAAS,EAEnF,KAAKN,EACI,OAAA,KAET,QASS,OAAA,IAAA,CACX,EACC,CAACuB,EAAQ7B,EAAOgB,EAAMe,EAAsB5B,EAASC,CAAW,CAAC,EAGlE,OAAAiD,EAAA,kBAAA,IAAC3D,GAAA,CACE,GAAGmB,EACJ,UAAWsD,EAAKtD,EAAM,UAAW,CAC/B,UAAWR,GAAe,CAAC0B,EAC3B,SAAUxB,EACV,SAAU,CAACA,CAAA,CACZ,EACD,IAAAO,EACA,cAAemB,EACf,QAASE,EACT,GAAIN,EACJ,eACExB,GAAe,CAAC0B,GAAwBC,EAAuB,YAAc,OAE/E,qBAAoB,IAEnB,SAAAc,CAAA,CACH,CAEJ"}
@@ -77,6 +77,7 @@ import "../../../api/queries/activities/getActivities.es.js";
77
77
  import "../../../api/queries/activities/updateActivities.es.js";
78
78
  import "../../../api/queries/activities/updateReaction.es.js";
79
79
  import "../../../api/queries/activities/getMentions.es.js";
80
+ import "../../../api/queries/activities/getCategories.es.js";
80
81
  import "../../../api/queries/addons/getAddons.es.js";
81
82
  import "../../../api/queries/addons/updateAddons.es.js";
82
83
  import "../../../api/queries/attributes/getAttributes.es.js";
@@ -109,6 +110,7 @@ import "../../../api/queries/system/getSystem.es.js";
109
110
  import "../../../api/queries/userDashboard/getUserDashboard.es.js";
110
111
  import "../../../api/queries/users/getUsers.es.js";
111
112
  import "../../../api/queries/users/updateUsers.es.js";
113
+ import "../../../api/queries/users/guests.es.js";
112
114
  import "../../../api/queries/versions/updateVersions.es.js";
113
115
  import "../../../api/queries/views/getViews.es.js";
114
116
  import "../../../api/queries/views/updateViews.es.js";
@@ -153,7 +155,7 @@ const pt = Q.div`
153
155
  border-radius: 4px;
154
156
  opacity: 1;
155
157
  }
156
- `, Fi = "edit-trigger", Gi = ({
158
+ `, _i = "edit-trigger", Bi = ({
157
159
  rowId: j,
158
160
  columnId: g,
159
161
  value: i,
@@ -310,7 +312,7 @@ const pt = Q.div`
310
312
  );
311
313
  };
312
314
  export {
313
- Gi as CellWidget,
314
- Fi as EDIT_TRIGGER_CLASS
315
+ Bi as CellWidget,
316
+ _i as EDIT_TRIGGER_CLASS
315
317
  };
316
318
  //# sourceMappingURL=CellWidget.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CellWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget, BooleanWidgetProps } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget, DateWidgetProps } from './DateWidget'\nimport { EnumWidget, EnumWidgetProps } from './EnumWidget'\nimport { TextWidget, TextWidgetProps, TextWidgetType } from './TextWidget'\nimport { isLinkEditable, LinksWidget, LinkWidgetData } from './LinksWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { useColumnSettingsContext } from '../context/ColumnSettingsContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { useProjectTableContext } from '../context'\nimport { EnumCellValue } from './EnumCellValue'\nimport { NameWidget } from '@shared/containers/ProjectTreeTable/widgets/NameWidget'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\n// use this class to trigger the editing mode on a single click\nexport const EDIT_TRIGGER_CLASS = 'edit-trigger'\n\ntype WidgetAttributeData = { type: AttributeData['type'] | 'links' | 'name' }\n\nexport type CellValue = string | number | boolean\nexport type CellValueData = Record<string, any>\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n valueData?: CellValueData | CellValueData[] // extra data for the value\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n folderId?: string | null\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n // options passthrough props\n pt?: {\n enum?: Partial<EnumWidgetProps>\n text?: Partial<TextWidgetProps>\n date?: Partial<DateWidgetProps>\n boolean?: Partial<BooleanWidgetProps>\n }\n entityType?: string\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nexport const CellWidget: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n valueData,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n folderId,\n onChange,\n entityType,\n pt,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { projectName } = useProjectTableContext()\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const { rowHeight } = useColumnSettingsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n // NOTE: the selection of a cell is handled in ProjectTreeTable.tsx line 1079\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n // ensure the browser focus moves back to the parent <td>\n const td = ref.current?.closest('td') as HTMLElement | null\n if (td) td.focus()\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n case type === 'name': {\n return (\n <NameWidget\n value={value as CellValue}\n valueData={valueData as NameWidgetData}\n cellId={cellId}\n entityType={entityType || ''}\n {...sharedProps}\n />\n )\n }\n\n case type === 'links': {\n const linksValue = valueData as LinkWidgetData | undefined\n\n const isEditable = isLinkEditable(\n linksValue?.direction || 'out',\n linksValue?.link.linkType || '',\n linksValue?.entityType || '',\n )\n\n // overwrite readonly state if the cell is currently being edited\n isReadOnly = !isEditable\n return (\n <LinksWidget\n value={linksValue}\n cellId={cellId}\n projectName={projectName}\n disabled={!isEditable}\n folderId={folderId}\n {...sharedProps}\n />\n )\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n if (isReadOnly) {\n const selectedOptions = options.filter((option) => enumValue.includes(option.value))\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n isReadOnly\n hasMultipleValues={enumValue.length > 1}\n isMultiSelect={type?.includes('list')}\n rowHeight={rowHeight}\n />\n )\n }\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n {...pt?.enum}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return (\n <TextWidget\n value={value as string}\n isInherited={isInherited}\n columnId={columnId}\n {...sharedProps}\n {...pt?.text}\n />\n )\n\n case type === 'datetime':\n return (\n <DateWidget\n value={value ? (value as string) : undefined}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.date}\n />\n )\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} {...pt?.boolean} />\n\n case isPlaceholder:\n return null\n\n default:\n // TODO: We should not allow editing unrecognized types\n // At this point, only list_of_strings without proper options is unrecognized\n // (tags if not tags are specified in anatomy) and in that case, validation\n // on the server fails with a string value. Unless we have a widget that\n // accepts a string value AND options at the same time we shouldn't show\n // any edit widget\n\n //console.log(`Unrecognized type \"${type}\" for cell ${cellId}.`)\n return null\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, {\n inherited: isInherited && !isCurrentCellEditing,\n readonly: isReadOnly,\n editable: !isReadOnly,\n })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n"],"names":["Cell","styled","EDIT_TRIGGER_CLASS","CellWidget","rowId","columnId","value","valueData","attributeData","options","isCollapsed","isInherited","isPlaceholder","isReadOnly","enableCustomValues","folderId","onChange","entityType","pt","props","ref","useRef","type","projectName","useProjectTableContext","isEditing","setEditingCellId","useCellEditing","isCellFocused","gridMap","selectCell","focusCell","useSelectionCellsContext","rowHeight","useColumnSettingsContext","cellId","getCellId","isCurrentCellEditing","isCurrentCellFocused","handleDoubleClick","useCallback","handleSingleClick","moveToNextRow","rowIndex","newRowId","newCellId","handleOnChange","newValue","key","handleCancel","td","_a","widget","useMemo","sharedProps","textTypes","firstSelectedOption","option","color","jsx","CollapsedWidget","NameWidget","linksValue","isEditable","isLinkEditable","LinksWidget","enumValue","selectedOptions","EnumCellValue","EnumWidget","TextWidget","DateWidget","BooleanWidget","clsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAMA,KAAOC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAwBPC,KAAqB,gBAsCrBC,KAAkC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAC,IAAU,CAAC;AAAA,EACX,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,IAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAMC,EAAuB,IAAI,GACjCC,IAAOd,KAAA,gBAAAA,EAAe,MAEtB,EAAE,aAAAe,EAAY,IAAIC,GAAuB,GACzC,EAAE,WAAAC,GAAW,kBAAAC,EAAiB,IAAIC,EAAe,GACjD,EAAE,eAAAC,GAAe,SAAAC,GAAS,YAAAC,GAAY,WAAAC,EAAA,IAAcC,GAAyB,GAC7E,EAAE,WAAAC,EAAU,IAAIC,GAAyB,GACzCC,IAASC,EAAUhC,GAAOC,CAAQ,GAElCgC,IAAuBZ,EAAUU,CAAM,GACvCG,IAAuBV,EAAcO,CAAM,GAE3CI,IAAoBC,EAAY,MAAM;AAC1C,IAAI5B,KAAiBC,KACrBa,EAAiBS,CAAM;AAAA,EACtB,GAAA,CAACA,GAAQT,GAAkBd,CAAa,CAAC,GAEtC6B,IAAoB,MAAM;AAG9B,IAAKJ,KACHX,EAAiB,IAAI;AAAA,EAEzB,GAEMgB,IAAgB,MAAM;AAC1B,UAAMC,IAAWd,EAAQ,aAAa,IAAIzB,CAAK;AAC/C,QAAIuC,MAAa,OAAW;AAC5B,UAAMC,IAAWf,EAAQ,aAAa,IAAIc,IAAW,CAAC;AACtD,QAAIC,GAAU;AACN,YAAAC,IAAYT,EAAUQ,GAAUvC,CAAQ;AACnC,MAAAyB,EAAAe,GAAW,IAAO,EAAK,GAClCd,EAAUc,CAAS,GACnBnB,EAAiBmB,CAAS;AAAA,IAAA;AAAA,EAE9B,GAEMC,IAA8C,CAACC,GAAUC,MAAQ;AAErE,IADAtB,EAAiB,IAAI,GACjB,CAAAb,MAEJmC,MAAQ,WAAWN,EAAc,IAE7BK,MAAazC,KAAS0C,MAAQ,aAChChC,KAAA,QAAAA,EAAW+B,GAAUC;AAAA,EAEzB,GAEMC,IAAe,MAAM;;AACzB,IAAAvB,EAAiB,IAAI;AAErB,UAAMwB,KAAKC,IAAA/B,EAAI,YAAJ,gBAAA+B,EAAa,QAAQ;AAC5B,IAAAD,OAAO,MAAM;AAAA,EACnB,GAEME,IAASC,EAAQ,MAAM;AAE3B,UAAMC,IAA+B;AAAA,MACnC,UAAUR;AAAA,MACV,cAAcG;AAAA,MACd,WAAWZ;AAAA,IACb,GAEMkB,IAA8B,CAAC,UAAU,WAAW,OAAO;AAGjE,YAAQ,IAAM;AAAA;AAAA,MAEZ,KAAK7C,GAAa;AAEhB,cAAM8C,IAAsBlC,KAAA,QAAAA,EAAM,SAAS,UACvCb,EAAQ;AAAA,UAAK,CAACgD,MACZ,MAAM,QAAQnD,CAAK,IAAIA,EAAM,SAASmD,EAAO,KAAK,IAAInD,MAAUmD,EAAO;AAAA,QAAA,IAEzE,QACEC,IAAQF,KAAA,gBAAAA,EAAqB;AAC5B,eAAAG,gBAAAA,MAACC,KAAgB,OAAAF,GAAc;AAAA,MAAA;AAAA,MAExC,KAAKpC,MAAS;AAEV,eAAAqC,gBAAAA,EAAA;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,OAAAvD;AAAA,YACA,WAAAC;AAAA,YACA,QAAA4B;AAAA,YACA,YAAYlB,KAAc;AAAA,YACzB,GAAGqC;AAAA,UAAA;AAAA,QACN;AAAA,MAIJ,KAAKhC,MAAS,SAAS;AACrB,cAAMwC,IAAavD,GAEbwD,IAAaC;AAAA,WACjBF,KAAA,gBAAAA,EAAY,cAAa;AAAA,WACzBA,KAAA,gBAAAA,EAAY,KAAK,aAAY;AAAA,WAC7BA,KAAA,gBAAAA,EAAY,eAAc;AAAA,QAC5B;AAGA,eAAAjD,IAAa,CAACkD,GAEZJ,gBAAAA,EAAA;AAAA,UAACM;AAAA,UAAA;AAAA,YACC,OAAOH;AAAA,YACP,QAAA3B;AAAA,YACA,aAAAZ;AAAA,YACA,UAAU,CAACwC;AAAA,YACX,UAAAhD;AAAA,YACC,GAAGuC;AAAA,UAAA;AAAA,QACN;AAAA,MAAA;AAAA,MAIJ,KAAK,CAAC,CAAC7C,EAAQ,QAAQ;AACrB,cAAMyD,IAAY,MAAM,QAAQ5D,CAAK,IAAIA,IAAQ,CAACA,CAAK;AACvD,YAAIO,GAAY;AACR,gBAAAsD,IAAkB1D,EAAQ,OAAO,CAACgD,MAAWS,EAAU,SAAST,EAAO,KAAK,CAAC;AAEjF,iBAAAE,gBAAAA,EAAA;AAAA,YAACS;AAAA,YAAA;AAAA,cACC,iBAAAD;AAAA,cACA,YAAU;AAAA,cACV,mBAAmBD,EAAU,SAAS;AAAA,cACtC,eAAe5C,KAAA,gBAAAA,EAAM,SAAS;AAAA,cAC9B,WAAAW;AAAA,YAAA;AAAA,UACF;AAAA,QAAA;AAIF,eAAA0B,gBAAAA,EAAA;AAAA,UAACU;AAAA,UAAA;AAAA,YACC,OAAOH;AAAA,YACP,SAAAzD;AAAA,YACA,MAAAa;AAAA,YACA,QAAQ,MAAMI,EAAiBS,CAAM;AAAA,YACrC,oBAAArB;AAAA,YACC,GAAGwC;AAAA,YACH,GAAGpC,KAAA,gBAAAA,EAAI;AAAA,UAAA;AAAA,QACV;AAAA,MAAA;AAAA,MAIJ,KAAKqC,EAAU,SAASjC,CAAsB;AAE1C,eAAAqC,gBAAAA,EAAA;AAAA,UAACW;AAAA,UAAA;AAAA,YACC,OAAAhE;AAAA,YACA,aAAAK;AAAA,YACA,UAAAN;AAAA,YACC,GAAGiD;AAAA,YACH,GAAGpC,KAAA,gBAAAA,EAAI;AAAA,UAAA;AAAA,QACV;AAAA,MAGJ,KAAKI,MAAS;AAEV,eAAAqC,gBAAAA,EAAA;AAAA,UAACY;AAAA,UAAA;AAAA,YACC,OAAOjE,KAA4B;AAAA,YACnC,aAAAK;AAAA,YACC,GAAG2C;AAAA,YACH,GAAGpC,KAAA,gBAAAA,EAAI;AAAA,UAAA;AAAA,QACV;AAAA,MAGJ,KAAKI,MAAS;AACZ,qCAAQkD,GAAc,EAAA,OAAAlE,GAA0B,GAAGgD,GAAc,GAAGpC,KAAA,gBAAAA,EAAI,SAAS;AAAA,MAEnF,KAAKN;AACI,eAAA;AAAA,MAET;AASS,eAAA;AAAA,IAAA;AAAA,EACX,GACC,CAACuB,GAAQ7B,GAAOgB,GAAMe,GAAsB5B,GAASC,CAAW,CAAC;AAGlE,SAAAiD,gBAAAA,EAAA;AAAA,IAAC3D;AAAA,IAAA;AAAA,MACE,GAAGmB;AAAA,MACJ,WAAWsD,GAAKtD,EAAM,WAAW;AAAA,QAC/B,WAAWR,KAAe,CAAC0B;AAAA,QAC3B,UAAUxB;AAAA,QACV,UAAU,CAACA;AAAA,MAAA,CACZ;AAAA,MACD,KAAAO;AAAA,MACA,eAAemB;AAAA,MACf,SAASE;AAAA,MACT,IAAIN;AAAA,MACJ,gBACExB,KAAe,CAAC0B,KAAwBC,IAAuB,cAAc;AAAA,MAE/E,sBAAoB;AAAA,MAEnB,UAAAc;AAAA,IAAA;AAAA,EACH;AAEJ;"}
1
+ {"version":3,"file":"CellWidget.es.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/CellWidget.tsx"],"sourcesContent":["import { useMemo, useCallback, useRef, FC } from 'react'\nimport styled from 'styled-components'\n\n// Widgets\nimport { BooleanWidget, BooleanWidgetProps } from './BooleanWidget'\nimport { CollapsedWidget } from './CollapsedWidget'\nimport { DateWidget, DateWidgetProps } from './DateWidget'\nimport { EnumWidget, EnumWidgetProps } from './EnumWidget'\nimport { TextWidget, TextWidgetProps, TextWidgetType } from './TextWidget'\nimport { isLinkEditable, LinksWidget, LinkWidgetData } from './LinksWidget'\n\n// Contexts\nimport { useCellEditing } from '../context/CellEditingContext'\nimport { useColumnSettingsContext } from '../context/ColumnSettingsContext'\n\n// Utils\nimport { getCellId } from '../utils/cellUtils'\nimport clsx from 'clsx'\nimport { useSelectionCellsContext } from '../context/SelectionCellsContext'\nimport { AttributeData, AttributeEnumItem } from '../types'\nimport { useProjectTableContext } from '../context'\nimport { EnumCellValue } from './EnumCellValue'\nimport { NameWidget } from '@shared/containers/ProjectTreeTable/widgets/NameWidget'\nimport { NameWidgetData } from '@shared/components/RenameForm'\n\nconst Cell = styled.div`\n position: absolute;\n inset: 0;\n padding: 4px 8px;\n display: flex;\n align-items: center;\n\n &:focus-visible {\n outline: none;\n }\n\n &.inherited {\n opacity: 0.6;\n font-style: italic;\n }\n\n &.loading {\n inset: 4px;\n border-radius: 4px;\n opacity: 1;\n }\n`\n\n// use this class to trigger the editing mode on a single click\nexport const EDIT_TRIGGER_CLASS = 'edit-trigger'\n\ntype WidgetAttributeData = { type: AttributeData['type'] | 'links' | 'name' }\n\nexport type CellValue = string | number | boolean\nexport type CellValueData = Record<string, any>\n\ninterface EditorCellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {\n rowId: string\n columnId: string\n value: CellValue | CellValue[]\n valueData?: CellValueData | CellValueData[] // extra data for the value\n attributeData?: WidgetAttributeData\n options?: AttributeEnumItem[]\n isCollapsed?: boolean\n isInherited?: boolean\n isPlaceholder?: boolean\n isFocused?: boolean\n isReadOnly?: boolean\n enableCustomValues?: boolean\n folderId?: string | null\n onChange?: (value: CellValue | CellValue[], key?: 'Enter' | 'Click' | 'Escape') => void\n // options passthrough props\n pt?: {\n enum?: Partial<EnumWidgetProps>\n text?: Partial<TextWidgetProps>\n date?: Partial<DateWidgetProps>\n boolean?: Partial<BooleanWidgetProps>\n }\n entityType?: string\n}\n\nexport interface WidgetBaseProps {\n isEditing?: boolean\n onChange: Required<EditorCellProps>['onChange']\n onCancelEdit?: () => void\n}\n\nexport const CellWidget: FC<EditorCellProps> = ({\n rowId,\n columnId,\n value,\n valueData,\n attributeData,\n options = [],\n isCollapsed,\n isInherited,\n isPlaceholder,\n isReadOnly,\n enableCustomValues,\n folderId,\n onChange,\n entityType,\n pt,\n ...props\n}) => {\n const ref = useRef<HTMLDivElement>(null)\n const type = attributeData?.type\n\n const { projectName } = useProjectTableContext()\n const { isEditing, setEditingCellId } = useCellEditing()\n const { isCellFocused, gridMap, selectCell, focusCell } = useSelectionCellsContext()\n const { rowHeight } = useColumnSettingsContext()\n const cellId = getCellId(rowId, columnId)\n\n const isCurrentCellEditing = isEditing(cellId)\n const isCurrentCellFocused = isCellFocused(cellId)\n\n const handleDoubleClick = useCallback(() => {\n if (isPlaceholder || isReadOnly) return\n setEditingCellId(cellId)\n }, [cellId, setEditingCellId, isPlaceholder])\n\n const handleSingleClick = () => {\n // clicking a cell that is not editing will close the editor on this cell\n // NOTE: the selection of a cell is handled in ProjectTreeTable.tsx line 1079\n if (!isCurrentCellEditing) {\n setEditingCellId(null)\n }\n }\n\n const moveToNextRow = () => {\n const rowIndex = gridMap.rowIdToIndex.get(rowId)\n if (rowIndex === undefined) return\n const newRowId = gridMap.indexToRowId.get(rowIndex + 1)\n if (newRowId) {\n const newCellId = getCellId(newRowId, columnId)\n selectCell(newCellId, false, false)\n focusCell(newCellId)\n setEditingCellId(newCellId)\n }\n }\n\n const handleOnChange: WidgetBaseProps['onChange'] = (newValue, key) => {\n setEditingCellId(null)\n if (isReadOnly) return\n // move to the next cell row\n key === 'Enter' && moveToNextRow()\n // make change if the value is different or if the key is 'Enter'\n if (newValue !== value || key === 'Enter') {\n onChange?.(newValue, key)\n }\n }\n\n const handleCancel = () => {\n setEditingCellId(null)\n // ensure the browser focus moves back to the parent <td>\n const td = ref.current?.closest('td') as HTMLElement | null\n if (td) td.focus()\n }\n\n const widget = useMemo(() => {\n // Common props shared across all widgets\n const sharedProps: WidgetBaseProps = {\n onChange: handleOnChange,\n onCancelEdit: handleCancel,\n isEditing: isCurrentCellEditing,\n }\n\n const textTypes: TextWidgetType[] = ['string', 'integer', 'float']\n\n // Determine widget type based on attribute type\n switch (true) {\n // this is showing the collapsed widget (dot)\n case isCollapsed: {\n // if enum, find the first selected option and get its color\n const firstSelectedOption = type?.includes('list')\n ? options.find((option) =>\n Array.isArray(value) ? value.includes(option.value) : value === option.value,\n )\n : undefined\n const color = firstSelectedOption?.color\n return <CollapsedWidget color={color} />\n }\n case type === 'name': {\n return (\n <NameWidget\n value={value as CellValue}\n valueData={valueData as NameWidgetData}\n cellId={cellId}\n entityType={entityType || ''}\n {...sharedProps}\n />\n )\n }\n\n case type === 'links': {\n const linksValue = valueData as LinkWidgetData | undefined\n\n const isEditable = isLinkEditable(\n linksValue?.direction || 'out',\n linksValue?.link.linkType || '',\n linksValue?.entityType || '',\n )\n\n // overwrite readonly state if the cell is currently being edited\n isReadOnly = !isEditable\n return (\n <LinksWidget\n value={linksValue}\n cellId={cellId}\n projectName={projectName}\n disabled={!isEditable}\n folderId={folderId}\n {...sharedProps}\n />\n )\n }\n\n case !!options.length: {\n const enumValue = Array.isArray(value) ? value : [value]\n if (isReadOnly) {\n const selectedOptions = options.filter((option) => enumValue.includes(option.value))\n return (\n <EnumCellValue\n selectedOptions={selectedOptions}\n isReadOnly\n hasMultipleValues={enumValue.length > 1}\n isMultiSelect={type?.includes('list')}\n rowHeight={rowHeight}\n />\n )\n }\n return (\n <EnumWidget\n value={enumValue}\n options={options}\n type={type}\n onOpen={() => setEditingCellId(cellId)}\n enableCustomValues={enableCustomValues}\n {...sharedProps}\n {...pt?.enum}\n />\n )\n }\n\n case textTypes.includes(type as TextWidgetType):\n return (\n <TextWidget\n value={value as string}\n isInherited={isInherited}\n columnId={columnId}\n {...sharedProps}\n {...pt?.text}\n />\n )\n\n case type === 'datetime':\n return (\n <DateWidget\n value={value ? (value as string) : undefined}\n isInherited={isInherited}\n {...sharedProps}\n {...pt?.date}\n />\n )\n\n case type === 'boolean':\n return <BooleanWidget value={value as boolean} {...sharedProps} {...pt?.boolean} />\n\n case isPlaceholder:\n return null\n\n default:\n // TODO: We should not allow editing unrecognized types\n // At this point, only list_of_strings without proper options is unrecognized\n // (tags if not tags are specified in anatomy) and in that case, validation\n // on the server fails with a string value. Unless we have a widget that\n // accepts a string value AND options at the same time we shouldn't show\n // any edit widget\n\n //console.log(`Unrecognized type \"${type}\" for cell ${cellId}.`)\n return null\n }\n }, [cellId, value, type, isCurrentCellEditing, options, isCollapsed])\n\n return (\n <Cell\n {...props}\n className={clsx(props.className, {\n inherited: isInherited && !isCurrentCellEditing,\n readonly: isReadOnly,\n editable: !isReadOnly,\n })}\n ref={ref}\n onDoubleClick={handleDoubleClick}\n onClick={handleSingleClick}\n id={cellId}\n data-tooltip={\n isInherited && !isCurrentCellEditing && isCurrentCellFocused ? 'Inherited' : undefined\n }\n data-tooltip-delay={200}\n >\n {widget}\n </Cell>\n )\n}\n"],"names":["Cell","styled","EDIT_TRIGGER_CLASS","CellWidget","rowId","columnId","value","valueData","attributeData","options","isCollapsed","isInherited","isPlaceholder","isReadOnly","enableCustomValues","folderId","onChange","entityType","pt","props","ref","useRef","type","projectName","useProjectTableContext","isEditing","setEditingCellId","useCellEditing","isCellFocused","gridMap","selectCell","focusCell","useSelectionCellsContext","rowHeight","useColumnSettingsContext","cellId","getCellId","isCurrentCellEditing","isCurrentCellFocused","handleDoubleClick","useCallback","handleSingleClick","moveToNextRow","rowIndex","newRowId","newCellId","handleOnChange","newValue","key","handleCancel","td","_a","widget","useMemo","sharedProps","textTypes","firstSelectedOption","option","color","jsx","CollapsedWidget","NameWidget","linksValue","isEditable","isLinkEditable","LinksWidget","enumValue","selectedOptions","EnumCellValue","EnumWidget","TextWidget","DateWidget","BooleanWidget","clsx"],"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");require("@ynput/ayon-react-components");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/versions/updateVersions.cjs.js");require("../../../api/queries/views/getViews.cjs.js");require("../../../api/queries/views/updateViews.cjs.js");require("../../../api/queries/watchers/getWatchers.cjs.js");require("react");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../ProjectTreeTable.cjs.js");require("../context/CellEditingContext.cjs.js");require("@tanstack/react-table");require("./CollapsedWidget.cjs.js");require("./DateWidget.cjs.js");require("./EnumWidget.cjs.js");require("./TextWidget.cjs.js");require("./BooleanWidget.cjs.js");const E=require("./CellWidget.cjs.js");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");const C=require("../../../components/LinksManager/CellEditingDialog.cjs.js"),g=require("../context/DetailsPanelEntityContext.cjs.js"),h=require("../context/SelectedRowsContext.cjs.js"),j=require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("./LoadMoreWidget.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");const m=require("../../../components/Chips/Chips.cjs.js"),R=require("../../../components/LinksManager/LinksManager.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");const k=e=>[...e].sort((i,u)=>{const t=i.parents.join("/")+i.label,n=u.parents.join("/")+u.label;return t.localeCompare(n)}),L=(e,i,u)=>{const t=i.split("|"),[n,s,c]=t;return e==="in"?u===c:u===s},T=({value:e,isEditing:i,cellId:u,projectName:t,disabled:n,folderId:s,onChange:c,onCancelEdit:y})=>{let o,l;const a=[];try{const r=g.useDetailsPanelEntityContext();o=r.setSelectedEntity,r.selectedEntity&&a.push(r.selectedEntity.entityId)}catch{}try{l=h.useSelectedRowsContext().clearRowsSelection}catch{}const x=(r,d)=>{l&&l(),o?o({entityId:r,entityType:d}):console.log("Entity clicked:",r,d)},p=e!=null&&e.links?k(e.links):[];return q.jsxRuntimeExports.jsxs(q.jsxRuntimeExports.Fragment,{children:[q.jsxRuntimeExports.jsx(m.Chips,{values:p.map(r=>({label:r.label,tooltip:r.parents.join("/")+"/"+r.label}))||[],pt:{chip:{className:E.EDIT_TRIGGER_CLASS}},disabled:n}),i&&e&&q.jsxRuntimeExports.jsx(C.CellEditingDialog,{isEditing:i,anchorId:u,onClose:y,children:n?q.jsxRuntimeExports.jsx(j.Container,{style:{color:"var(--md-sys-color-outline)"},children:`${e.link.label||""} ${e.direction} link is not of type ${e.entityType}`}):q.jsxRuntimeExports.jsx(R.LinksManager,{projectName:t,linkTypeLabel:e.link.label||"",links:p,direction:e.direction,entityId:e.entityId,entityType:e.entityType,targetEntityType:e.link.targetEntityType,linkType:e.link.linkType,selectedEntityIds:a,onEntityClick:x,folderId:s,onClose:y})})]})};exports.LinksWidget=T;exports.isLinkEditable=L;exports.sortEntityLinksByPath=k;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("../../../../../_virtual/jsx-runtime.cjs.js");require("@ynput/ayon-react-components");require("clsx");require("../../../components/ThumbnailSimple/ThumbnailSimple.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../../../components/EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("react-toastify");require("../../../api/base/client.cjs.js");require("../../../api/generated/graphql.cjs.js");require("../../../api/generated/graphqlLinks.cjs.js");require("../../../api/generated/access.cjs.js");require("../../../api/generated/actions.cjs.js");require("../../../api/generated/activityFeed.cjs.js");require("../../../api/generated/addons.cjs.js");require("../../../api/generated/anatomy.cjs.js");require("../../../api/generated/attributes.cjs.js");require("../../../api/generated/authentication.cjs.js");require("../../../api/generated/bundles.cjs.js");require("../../../api/generated/configuration.cjs.js");require("../../../api/generated/desktop.cjs.js");require("../../../api/generated/entityLists.cjs.js");require("../../../api/generated/events.cjs.js");require("../../../api/generated/files.cjs.js");require("../../../api/generated/folders.cjs.js");require("../../../api/generated/inbox.cjs.js");require("../../../api/generated/links.cjs.js");require("../../../api/generated/market.cjs.js");require("../../../api/generated/onboarding.cjs.js");require("../../../api/generated/operations.cjs.js");require("../../../api/generated/products.cjs.js");require("../../../api/generated/projectDashboard.cjs.js");require("../../../api/generated/projects.cjs.js");require("../../../api/generated/reviewables.cjs.js");require("../../../api/generated/services.cjs.js");require("../../../api/generated/system.cjs.js");require("../../../api/generated/tasks.cjs.js");require("../../../api/generated/teams.cjs.js");require("../../../api/generated/thumbnails.cjs.js");require("../../../api/generated/uRIs.cjs.js");require("../../../api/generated/users.cjs.js");require("../../../api/generated/versions.cjs.js");require("../../../api/generated/workfiles.cjs.js");require("../../../api/generated/ynputCloud.cjs.js");require("../../../api/generated/grouping.cjs.js");require("../../../api/generated/views.cjs.js");require("../../../api/queries/actions/getActions.cjs.js");require("../../../api/queries/activities/getActivities.cjs.js");require("../../../api/queries/activities/updateActivities.cjs.js");require("../../../api/queries/activities/updateReaction.cjs.js");require("../../../api/queries/activities/getMentions.cjs.js");require("../../../api/queries/activities/getCategories.cjs.js");require("../../../api/queries/addons/getAddons.cjs.js");require("../../../api/queries/addons/updateAddons.cjs.js");require("../../../api/queries/attributes/getAttributes.cjs.js");require("../../../api/queries/attributes/updateAttributes.cjs.js");require("../../../api/queries/authentication/getAuthentication.cjs.js");require("../../../api/queries/cloud/cloud.cjs.js");require("../../../api/queries/entities/getEntity.cjs.js");require("../../../api/queries/entities/getEntityPanel.cjs.js");require("../../../api/queries/entities/updateEntity.cjs.js");require("../../../api/queries/entityLists/getLists.cjs.js");require("../../../api/queries/entityLists/updateLists.cjs.js");require("../../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../../api/queries/entityLists/listFolders.cjs.js");require("../../../api/queries/folders/getFolders.cjs.js");require("../../../api/queries/grouping/getGrouping.cjs.js");require("../../../api/queries/links/updateLinks.cjs.js");require("../../../api/queries/links/getLinks.cjs.js");require("../../../api/queries/links/getEntityLinks.cjs.js");require("../../../api/queries/overview/getOverview.cjs.js");require("../../../api/queries/overview/updateOverview.cjs.js");require("../../../api/queries/permissions/getPermissions.cjs.js");require("../../../api/queries/products/createProduct.cjs.js");require("../../../api/queries/project/getProject.cjs.js");require("../../../api/queries/project/updateProject.cjs.js");require("../../../api/queries/review/getReview.cjs.js");require("../../../api/queries/review/updateReview.cjs.js");require("../../../api/queries/share/share.cjs.js");require("../../../api/queries/system/getSystem.cjs.js");require("../../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../../api/queries/users/getUsers.cjs.js");require("../../../api/queries/users/updateUsers.cjs.js");require("../../../api/queries/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("react");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../../../components/ReviewablesList/ReviewablesList.styled.cjs.js");require("../../ContextMenu/ContextMenuContext.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../../util/pubsub.cjs.js");require("../../../components/ReviewablesList/ReviewablesUpload.styled.cjs.js");require("axios");require("../../../context/RemoteModulesContext.cjs.js");require("../../../context/DetailsPanelContext.cjs.js");require("../../../context/ThumbnailUploaderContext.cjs.js");require("../../../context/SettingsPanelContext.cjs.js");require("../../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../../context/pip/PiPWrapper.cjs.js");require("../../../context/AddonProjectContext.cjs.js");require("../../../context/AddonContext.cjs.js");require("../../../context/PowerpackContext.cjs.js");require("../../../context/MoveEntityContext.cjs.js");require("../../../context/MenuContext.cjs.js");require("../../../components/ReviewableCard/ReviewableCard.cjs.js");require("../../../components/ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../../../components/FileThumbnail/FileThumbnail.cjs.js");require("../../../components/Thumbnail/Thumbnail.styled.cjs.js");require("../../../components/Thumbnail/StackedThumbnails.cjs.js");require("../../Feed/context/FeedContext.cjs.js");require("../../Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("react-markdown");require("remark-emoji");require("remark-gfm");require("remark-directive");require("remark-directive-rehype");require("../../Feed/components/CommentInput/CommentInput.cjs.js");require("../../Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../../Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../Feed/components/ActivityDate.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../Feed/Feed.styled.cjs.js");require("date-fns");require("../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../ProjectTreeTable.cjs.js");require("../context/CellEditingContext.cjs.js");require("@tanstack/react-table");require("./CollapsedWidget.cjs.js");require("./DateWidget.cjs.js");require("./EnumWidget.cjs.js");require("./TextWidget.cjs.js");require("./BooleanWidget.cjs.js");const E=require("./CellWidget.cjs.js");require("./EntityNameWidget.cjs.js");require("./GroupHeaderWidget.cjs.js");require("./ThumbnailWidget.cjs.js");const C=require("../../../components/LinksManager/CellEditingDialog.cjs.js"),g=require("../context/DetailsPanelEntityContext.cjs.js"),h=require("../context/SelectedRowsContext.cjs.js"),j=require("../../../components/LinksManager/LinksManager.styled.cjs.js");require("../ProjectTreeTable.styled.cjs.js");require("../components/SelectionCell.cjs.js");require("../components/RowSelectionHeader.cjs.js");require("../context/SelectionCellsContext.cjs.js");require("./LoadMoreWidget.cjs.js");require("../context/ProjectTableQueriesContext.cjs.js");require("../context/ProjectTableContext.cjs.js");require("../context/ClipboardContext.cjs.js");require("../context/ColumnSettingsContext.cjs.js");require("../context/ProjectDataContext.cjs.js");require("../../../../../_virtual/runtime.cjs.js");require("../../../../../_virtual/semver.cjs.js");require("react-redux");require("custom-protocol-check");require("../components/GroupSettingsFallback.cjs.js");require("../components/HeaderActionButton.cjs.js");require("../components/ColumnHeaderMenu.cjs.js");require("../../DetailsPanel/DetailsPanel.styled.cjs.js");require("../../DetailsPanel/FeedFilters/FeedFilters.styled.cjs.js");require("../../DetailsPanel/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../../../components/PlayableIcon/PlayableIcon.cjs.js");require("../../DetailsPanel/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../DetailsPanel/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../DetailsPanel/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../Actions/Actions.styled.cjs.js");require("../../Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../Actions/ActionIcon.cjs.js");require("../../Views/context/ViewsContext.cjs.js");require("../../Views/Views.styled.cjs.js");require("../../Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../Views/ViewsMenu/ViewsMenu.cjs.js");require("../../../components/EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("../../../components/SimpleFormDialog/SimpleFormDialog.cjs.js");require("../../../components/EntityPath/EntityPath.styled.cjs.js");require("../../../components/EntityPath/SegmentProvider.cjs.js");require("../../../components/DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../../../components/DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("../../../components/DetailsPanelDetails/DetailsSection.cjs.js");require("../../../components/DetailsPanelDetails/FieldLabel.cjs.js");require("../../../components/Watchers/Watchers.cjs.js");require("../../../components/ProjectTableSettings/ProjectTableSettings.cjs.js");require("../../../components/Powerpack/PowerpackButton.cjs.js");require("../../../components/Powerpack/PricingLink.cjs.js");require("../../../components/Powerpack/PowerpackDialog.styled.cjs.js");require("../../../components/Powerpack/CTAButton.cjs.js");require("../../../components/Powerpack/RequiredPowerpackVersion.cjs.js");require("../../../components/SettingsPanel/SettingsPanel.cjs.js");require("../../../components/SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../../../components/AttributeEditor/components/MinMaxField.cjs.js");require("../../../components/EnumEditor/EnumEditor.styled.cjs.js");require("../../../components/SearchFilter/filterDates.cjs.js");require("../../../components/Badge/Badge.cjs.js");require("../../../components/VersionUploader/components/UploadVersionDialog.cjs.js");require("../../../components/VersionUploader/context/VersionUploadContext.cjs.js");require("../../../components/Feedback/FeedbackContext.cjs.js");require("../../../components/Feedback/SupportBubble.cjs.js");const m=require("../../../components/Chips/Chips.cjs.js"),R=require("../../../components/LinksManager/LinksManager.cjs.js");require("../../../components/StyledLink/StyledLink.cjs.js");require("../../../components/ShareOptionIcon/ShareOptionIcon.cjs.js");require("../../../components/AccessUser/AccessUser.cjs.js");require("../../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("../../../components/AccessSearchInput/AccessSearchInput.styled.cjs.js");const k=e=>[...e].sort((i,u)=>{const t=i.parents.join("/")+i.label,n=u.parents.join("/")+u.label;return t.localeCompare(n)}),L=(e,i,u)=>{const t=i.split("|"),[n,s,c]=t;return e==="in"?u===c:u===s},T=({value:e,isEditing:i,cellId:u,projectName:t,disabled:n,folderId:s,onChange:c,onCancelEdit:y})=>{let o,l;const a=[];try{const r=g.useDetailsPanelEntityContext();o=r.setSelectedEntity,r.selectedEntity&&a.push(r.selectedEntity.entityId)}catch{}try{l=h.useSelectedRowsContext().clearRowsSelection}catch{}const x=(r,d)=>{l&&l(),o?o({entityId:r,entityType:d}):console.log("Entity clicked:",r,d)},p=e!=null&&e.links?k(e.links):[];return q.jsxRuntimeExports.jsxs(q.jsxRuntimeExports.Fragment,{children:[q.jsxRuntimeExports.jsx(m.Chips,{values:p.map(r=>({label:r.label,tooltip:r.parents.join("/")+"/"+r.label}))||[],pt:{chip:{className:E.EDIT_TRIGGER_CLASS}},disabled:n}),i&&e&&q.jsxRuntimeExports.jsx(C.CellEditingDialog,{isEditing:i,anchorId:u,onClose:y,children:n?q.jsxRuntimeExports.jsx(j.Container,{style:{color:"var(--md-sys-color-outline)"},children:`${e.link.label||""} ${e.direction} link is not of type ${e.entityType}`}):q.jsxRuntimeExports.jsx(R.LinksManager,{projectName:t,linkTypeLabel:e.link.label||"",links:p,direction:e.direction,entityId:e.entityId,entityType:e.entityType,targetEntityType:e.link.targetEntityType,linkType:e.link.linkType,selectedEntityIds:a,onEntityClick:x,folderId:s,onClose:y})})]})};exports.LinksWidget=T;exports.isLinkEditable=L;exports.sortEntityLinksByPath=k;
2
2
  //# sourceMappingURL=LinksWidget.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinksWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/LinksWidget.tsx"],"sourcesContent":["import { Chips, ChipValue, LinkEntity, LinksManager } from '@shared/components'\nimport { CellEditingDialog } from '@shared/components/LinksManager/CellEditingDialog'\nimport { FC } from 'react'\nimport { EDIT_TRIGGER_CLASS, WidgetBaseProps } from './CellWidget'\nimport { createPortal } from 'react-dom'\nimport { useDetailsPanelEntityContext } from '../context/DetailsPanelEntityContext'\nimport { useSelectedRowsContext } from '../context/SelectedRowsContext'\nimport { Container } from '@shared/components/LinksManager/LinksManager.styled'\n\nexport const sortEntityLinksByPath = (links: LinkEntity[]) => {\n return [...links].sort((a, b) => {\n const aPath = a.parents.join('/') + a.label\n const bPath = b.parents.join('/') + b.label\n\n return aPath.localeCompare(bPath)\n })\n}\n\nexport const isLinkEditable = (\n direction: 'in' | 'out',\n linkType: string,\n entityType: string,\n): boolean => {\n const linkTypeParts = linkType.split('|')\n const [_name, outType, inType] = linkTypeParts\n if (direction === 'in') {\n return entityType === inType\n } else {\n return entityType === outType\n }\n}\n\nexport type LinkWidgetData = {\n direction: 'in' | 'out'\n entityId: string\n entityType: string\n link: {\n linkType: string\n label: string\n targetEntityType: string\n }\n links: LinkEntity[]\n}\n\nexport interface LinksWidgetProps extends WidgetBaseProps {\n value?: LinkWidgetData\n projectName: string\n cellId: string\n disabled?: boolean\n folderId?: string | null // the folder selected or the parent folder of the selected (used in EntityPickerDialog)\n}\n\nexport const LinksWidget: FC<LinksWidgetProps> = ({\n value,\n isEditing,\n cellId,\n projectName,\n disabled,\n folderId,\n onChange: _onChange, // not used in this widget\n onCancelEdit,\n}) => {\n // Try to get the contexts, but they might not exist in all environments\n let setSelectedEntity:\n | ((entity: { entityId: string; entityType: 'folder' | 'task' }) => void)\n | undefined\n let clearRowsSelection: (() => void) | undefined\n\n const selectedEntityIds: string[] = []\n try {\n const entityContext = useDetailsPanelEntityContext()\n setSelectedEntity = entityContext.setSelectedEntity\n if (entityContext.selectedEntity) {\n selectedEntityIds.push(entityContext.selectedEntity.entityId)\n }\n } catch {\n // Context not available\n }\n\n try {\n const rowsContext = useSelectedRowsContext()\n clearRowsSelection = rowsContext.clearRowsSelection\n } catch {\n // Context not available\n }\n\n const handleEntityClick = (entityId: string, entityType: string) => {\n // Clear any row selection first if context is available\n if (clearRowsSelection) {\n clearRowsSelection()\n }\n // Set the selected entity if context is available\n if (setSelectedEntity) {\n setSelectedEntity({\n entityId,\n entityType: entityType as 'folder' | 'task',\n })\n } else {\n // Fallback to console.log if contexts are not available\n console.log('Entity clicked:', entityId, entityType)\n }\n }\n\n const sortedLinks = value?.links ? sortEntityLinksByPath(value.links) : []\n\n return (\n <>\n <Chips\n values={\n sortedLinks.map((v) => ({\n label: v.label,\n tooltip: v.parents.join('/') + '/' + v.label,\n })) || []\n }\n pt={{ chip: { className: EDIT_TRIGGER_CLASS } }}\n disabled={disabled}\n />\n {isEditing && value && (\n <CellEditingDialog isEditing={isEditing} anchorId={cellId} onClose={onCancelEdit}>\n {disabled ? (\n <Container style={{ color: 'var(--md-sys-color-outline)' }}>\n {`${value.link.label || ''} ${value.direction} link is not of type ${\n value.entityType\n }`}\n </Container>\n ) : (\n <LinksManager\n projectName={projectName}\n linkTypeLabel={value.link.label || ''}\n links={sortedLinks}\n direction={value.direction}\n entityId={value.entityId}\n entityType={value.entityType}\n targetEntityType={value.link.targetEntityType}\n linkType={value.link.linkType}\n selectedEntityIds={selectedEntityIds}\n onEntityClick={handleEntityClick}\n folderId={folderId}\n onClose={onCancelEdit}\n />\n )}\n </CellEditingDialog>\n )}\n </>\n )\n}\n"],"names":["sortEntityLinksByPath","links","a","b","aPath","bPath","isLinkEditable","direction","linkType","entityType","linkTypeParts","_name","outType","inType","LinksWidget","value","isEditing","cellId","projectName","disabled","folderId","_onChange","onCancelEdit","setSelectedEntity","clearRowsSelection","selectedEntityIds","entityContext","useDetailsPanelEntityContext","useSelectedRowsContext","handleEntityClick","entityId","sortedLinks","jsxs","Fragment","jsx","Chips","v","EDIT_TRIGGER_CLASS","CellEditingDialog","Container","LinksManager"],"mappings":"84XASa,MAAAA,EAAyBC,GAC7B,CAAC,GAAGA,CAAK,EAAE,KAAK,CAACC,EAAGC,IAAM,CAC/B,MAAMC,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAChCG,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAE/B,OAAAC,EAAM,cAAcC,CAAK,CAAA,CACjC,EAGUC,EAAiB,CAC5BC,EACAC,EACAC,IACY,CACN,MAAAC,EAAgBF,EAAS,MAAM,GAAG,EAClC,CAACG,EAAOC,EAASC,CAAM,EAAIH,EACjC,OAAIH,IAAc,KACTE,IAAeI,EAEfJ,IAAeG,CAE1B,EAsBaE,EAAoC,CAAC,CAChD,MAAAC,EACA,UAAAC,EACA,OAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,EACA,SAAUC,EACV,aAAAC,CACF,IAAM,CAEA,IAAAC,EAGAC,EAEJ,MAAMC,EAA8B,CAAC,EACjC,GAAA,CACF,MAAMC,EAAgBC,EAAAA,6BAA6B,EACnDJ,EAAoBG,EAAc,kBAC9BA,EAAc,gBACED,EAAA,KAAKC,EAAc,eAAe,QAAQ,CAC9D,MACM,CAAA,CAIJ,GAAA,CAEFF,EADoBI,EAAAA,uBAAuB,EACV,kBAAA,MAC3B,CAAA,CAIF,MAAAC,EAAoB,CAACC,EAAkBrB,IAAuB,CAE9De,GACiBA,EAAA,EAGjBD,EACgBA,EAAA,CAChB,SAAAO,EACA,WAAArB,CAAA,CACD,EAGO,QAAA,IAAI,kBAAmBqB,EAAUrB,CAAU,CAEvD,EAEMsB,EAAchB,GAAA,MAAAA,EAAO,MAAQf,EAAsBe,EAAM,KAAK,EAAI,CAAC,EAEzE,OAEIiB,EAAA,kBAAA,KAAAC,6BAAA,CAAA,SAAA,CAAAC,EAAA,kBAAA,IAACC,EAAA,MAAA,CACC,OACEJ,EAAY,IAAKK,IAAO,CACtB,MAAOA,EAAE,MACT,QAASA,EAAE,QAAQ,KAAK,GAAG,EAAI,IAAMA,EAAE,KACzC,EAAE,GAAK,CAAC,EAEV,GAAI,CAAE,KAAM,CAAE,UAAWC,qBAAqB,EAC9C,SAAAlB,CAAA,CACF,EACCH,GAAaD,GACXmB,EAAA,kBAAA,IAAAI,EAAA,kBAAA,CAAkB,UAAAtB,EAAsB,SAAUC,EAAQ,QAASK,EACjE,SAAAH,EACEe,EAAA,kBAAA,IAAAK,EAAA,UAAA,CAAU,MAAO,CAAE,MAAO,6BACxB,EAAA,SAAA,GAAGxB,EAAM,KAAK,OAAS,EAAE,IAAIA,EAAM,SAAS,wBAC3CA,EAAM,UACR,EACF,CAAA,EAEAmB,EAAA,kBAAA,IAACM,EAAA,aAAA,CACC,YAAAtB,EACA,cAAeH,EAAM,KAAK,OAAS,GACnC,MAAOgB,EACP,UAAWhB,EAAM,UACjB,SAAUA,EAAM,SAChB,WAAYA,EAAM,WAClB,iBAAkBA,EAAM,KAAK,iBAC7B,SAAUA,EAAM,KAAK,SACrB,kBAAAU,EACA,cAAeI,EACf,SAAAT,EACA,QAASE,CAAA,CAAA,CAGf,CAAA,CAAA,EAEJ,CAEJ"}
1
+ {"version":3,"file":"LinksWidget.cjs.js","sources":["../../../../../../src/containers/ProjectTreeTable/widgets/LinksWidget.tsx"],"sourcesContent":["import { Chips, ChipValue, LinkEntity, LinksManager } from '@shared/components'\nimport { CellEditingDialog } from '@shared/components/LinksManager/CellEditingDialog'\nimport { FC } from 'react'\nimport { EDIT_TRIGGER_CLASS, WidgetBaseProps } from './CellWidget'\nimport { createPortal } from 'react-dom'\nimport { useDetailsPanelEntityContext } from '../context/DetailsPanelEntityContext'\nimport { useSelectedRowsContext } from '../context/SelectedRowsContext'\nimport { Container } from '@shared/components/LinksManager/LinksManager.styled'\n\nexport const sortEntityLinksByPath = (links: LinkEntity[]) => {\n return [...links].sort((a, b) => {\n const aPath = a.parents.join('/') + a.label\n const bPath = b.parents.join('/') + b.label\n\n return aPath.localeCompare(bPath)\n })\n}\n\nexport const isLinkEditable = (\n direction: 'in' | 'out',\n linkType: string,\n entityType: string,\n): boolean => {\n const linkTypeParts = linkType.split('|')\n const [_name, outType, inType] = linkTypeParts\n if (direction === 'in') {\n return entityType === inType\n } else {\n return entityType === outType\n }\n}\n\nexport type LinkWidgetData = {\n direction: 'in' | 'out'\n entityId: string\n entityType: string\n link: {\n linkType: string\n label: string\n targetEntityType: string\n }\n links: LinkEntity[]\n}\n\nexport interface LinksWidgetProps extends WidgetBaseProps {\n value?: LinkWidgetData\n projectName: string\n cellId: string\n disabled?: boolean\n folderId?: string | null // the folder selected or the parent folder of the selected (used in EntityPickerDialog)\n}\n\nexport const LinksWidget: FC<LinksWidgetProps> = ({\n value,\n isEditing,\n cellId,\n projectName,\n disabled,\n folderId,\n onChange: _onChange, // not used in this widget\n onCancelEdit,\n}) => {\n // Try to get the contexts, but they might not exist in all environments\n let setSelectedEntity:\n | ((entity: { entityId: string; entityType: 'folder' | 'task' }) => void)\n | undefined\n let clearRowsSelection: (() => void) | undefined\n\n const selectedEntityIds: string[] = []\n try {\n const entityContext = useDetailsPanelEntityContext()\n setSelectedEntity = entityContext.setSelectedEntity\n if (entityContext.selectedEntity) {\n selectedEntityIds.push(entityContext.selectedEntity.entityId)\n }\n } catch {\n // Context not available\n }\n\n try {\n const rowsContext = useSelectedRowsContext()\n clearRowsSelection = rowsContext.clearRowsSelection\n } catch {\n // Context not available\n }\n\n const handleEntityClick = (entityId: string, entityType: string) => {\n // Clear any row selection first if context is available\n if (clearRowsSelection) {\n clearRowsSelection()\n }\n // Set the selected entity if context is available\n if (setSelectedEntity) {\n setSelectedEntity({\n entityId,\n entityType: entityType as 'folder' | 'task',\n })\n } else {\n // Fallback to console.log if contexts are not available\n console.log('Entity clicked:', entityId, entityType)\n }\n }\n\n const sortedLinks = value?.links ? sortEntityLinksByPath(value.links) : []\n\n return (\n <>\n <Chips\n values={\n sortedLinks.map((v) => ({\n label: v.label,\n tooltip: v.parents.join('/') + '/' + v.label,\n })) || []\n }\n pt={{ chip: { className: EDIT_TRIGGER_CLASS } }}\n disabled={disabled}\n />\n {isEditing && value && (\n <CellEditingDialog isEditing={isEditing} anchorId={cellId} onClose={onCancelEdit}>\n {disabled ? (\n <Container style={{ color: 'var(--md-sys-color-outline)' }}>\n {`${value.link.label || ''} ${value.direction} link is not of type ${\n value.entityType\n }`}\n </Container>\n ) : (\n <LinksManager\n projectName={projectName}\n linkTypeLabel={value.link.label || ''}\n links={sortedLinks}\n direction={value.direction}\n entityId={value.entityId}\n entityType={value.entityType}\n targetEntityType={value.link.targetEntityType}\n linkType={value.link.linkType}\n selectedEntityIds={selectedEntityIds}\n onEntityClick={handleEntityClick}\n folderId={folderId}\n onClose={onCancelEdit}\n />\n )}\n </CellEditingDialog>\n )}\n </>\n )\n}\n"],"names":["sortEntityLinksByPath","links","a","b","aPath","bPath","isLinkEditable","direction","linkType","entityType","linkTypeParts","_name","outType","inType","LinksWidget","value","isEditing","cellId","projectName","disabled","folderId","_onChange","onCancelEdit","setSelectedEntity","clearRowsSelection","selectedEntityIds","entityContext","useDetailsPanelEntityContext","useSelectedRowsContext","handleEntityClick","entityId","sortedLinks","jsxs","Fragment","jsx","Chips","v","EDIT_TRIGGER_CLASS","CellEditingDialog","Container","LinksManager"],"mappings":"omZASa,MAAAA,EAAyBC,GAC7B,CAAC,GAAGA,CAAK,EAAE,KAAK,CAACC,EAAGC,IAAM,CAC/B,MAAMC,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAChCG,EAAQF,EAAE,QAAQ,KAAK,GAAG,EAAIA,EAAE,MAE/B,OAAAC,EAAM,cAAcC,CAAK,CAAA,CACjC,EAGUC,EAAiB,CAC5BC,EACAC,EACAC,IACY,CACN,MAAAC,EAAgBF,EAAS,MAAM,GAAG,EAClC,CAACG,EAAOC,EAASC,CAAM,EAAIH,EACjC,OAAIH,IAAc,KACTE,IAAeI,EAEfJ,IAAeG,CAE1B,EAsBaE,EAAoC,CAAC,CAChD,MAAAC,EACA,UAAAC,EACA,OAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,EACA,SAAUC,EACV,aAAAC,CACF,IAAM,CAEA,IAAAC,EAGAC,EAEJ,MAAMC,EAA8B,CAAC,EACjC,GAAA,CACF,MAAMC,EAAgBC,EAAAA,6BAA6B,EACnDJ,EAAoBG,EAAc,kBAC9BA,EAAc,gBACED,EAAA,KAAKC,EAAc,eAAe,QAAQ,CAC9D,MACM,CAAA,CAIJ,GAAA,CAEFF,EADoBI,EAAAA,uBAAuB,EACV,kBAAA,MAC3B,CAAA,CAIF,MAAAC,EAAoB,CAACC,EAAkBrB,IAAuB,CAE9De,GACiBA,EAAA,EAGjBD,EACgBA,EAAA,CAChB,SAAAO,EACA,WAAArB,CAAA,CACD,EAGO,QAAA,IAAI,kBAAmBqB,EAAUrB,CAAU,CAEvD,EAEMsB,EAAchB,GAAA,MAAAA,EAAO,MAAQf,EAAsBe,EAAM,KAAK,EAAI,CAAC,EAEzE,OAEIiB,EAAA,kBAAA,KAAAC,6BAAA,CAAA,SAAA,CAAAC,EAAA,kBAAA,IAACC,EAAA,MAAA,CACC,OACEJ,EAAY,IAAKK,IAAO,CACtB,MAAOA,EAAE,MACT,QAASA,EAAE,QAAQ,KAAK,GAAG,EAAI,IAAMA,EAAE,KACzC,EAAE,GAAK,CAAC,EAEV,GAAI,CAAE,KAAM,CAAE,UAAWC,qBAAqB,EAC9C,SAAAlB,CAAA,CACF,EACCH,GAAaD,GACXmB,EAAA,kBAAA,IAAAI,EAAA,kBAAA,CAAkB,UAAAtB,EAAsB,SAAUC,EAAQ,QAASK,EACjE,SAAAH,EACEe,EAAA,kBAAA,IAAAK,EAAA,UAAA,CAAU,MAAO,CAAE,MAAO,6BACxB,EAAA,SAAA,GAAGxB,EAAM,KAAK,OAAS,EAAE,IAAIA,EAAM,SAAS,wBAC3CA,EAAM,UACR,EACF,CAAA,EAEAmB,EAAA,kBAAA,IAACM,EAAA,aAAA,CACC,YAAAtB,EACA,cAAeH,EAAM,KAAK,OAAS,GACnC,MAAOgB,EACP,UAAWhB,EAAM,UACjB,SAAUA,EAAM,SAChB,WAAYA,EAAM,WAClB,iBAAkBA,EAAM,KAAK,iBAC7B,SAAUA,EAAM,KAAK,SACrB,kBAAAU,EACA,cAAeI,EACf,SAAAT,EACA,QAASE,CAAA,CAAA,CAGf,CAAA,CAAA,EAEJ,CAEJ"}
@@ -48,6 +48,7 @@ import "../../../api/queries/activities/getActivities.es.js";
48
48
  import "../../../api/queries/activities/updateActivities.es.js";
49
49
  import "../../../api/queries/activities/updateReaction.es.js";
50
50
  import "../../../api/queries/activities/getMentions.es.js";
51
+ import "../../../api/queries/activities/getCategories.es.js";
51
52
  import "../../../api/queries/addons/getAddons.es.js";
52
53
  import "../../../api/queries/addons/updateAddons.es.js";
53
54
  import "../../../api/queries/attributes/getAttributes.es.js";
@@ -80,6 +81,7 @@ import "../../../api/queries/system/getSystem.es.js";
80
81
  import "../../../api/queries/userDashboard/getUserDashboard.es.js";
81
82
  import "../../../api/queries/users/getUsers.es.js";
82
83
  import "../../../api/queries/users/updateUsers.es.js";
84
+ import "../../../api/queries/users/guests.es.js";
83
85
  import "../../../api/queries/versions/updateVersions.es.js";
84
86
  import "../../../api/queries/views/getViews.es.js";
85
87
  import "../../../api/queries/views/updateViews.es.js";
@@ -134,12 +136,15 @@ import "react-router-dom";
134
136
  import "../../Feed/components/ActivityStatus/ActivityStatus.es.js";
135
137
  import "../../Feed/components/ActivityHeader/ActivityHeader.styled.es.js";
136
138
  import "../../Feed/components/ActivityDate.es.js";
139
+ import "../../Feed/components/ActivityCategorySelect/CategoryTag.es.js";
137
140
  import "../../Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js";
138
141
  import "../../Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
139
142
  import "../../Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
140
143
  import "../../Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
141
144
  import "../../Feed/Feed.styled.es.js";
142
145
  import "date-fns";
146
+ import "../../Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
147
+ import "../../Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
143
148
  import "../ProjectTreeTable.es.js";
144
149
  import "../context/CellEditingContext.es.js";
145
150
  import "@tanstack/react-table";
@@ -201,6 +206,7 @@ import "../../../components/Powerpack/PowerpackButton.es.js";
201
206
  import "../../../components/Powerpack/PricingLink.es.js";
202
207
  import "../../../components/Powerpack/PowerpackDialog.styled.es.js";
203
208
  import "../../../components/Powerpack/CTAButton.es.js";
209
+ import "../../../components/Powerpack/RequiredPowerpackVersion.es.js";
204
210
  import "../../../components/SettingsPanel/SettingsPanel.es.js";
205
211
  import "../../../components/SettingsPanel/SettingsPanelItemTemplate.es.js";
206
212
  import "../../../components/AttributeEditor/components/MinMaxField.es.js";
@@ -214,13 +220,17 @@ import "../../../components/Feedback/SupportBubble.es.js";
214
220
  import { Chips as j } from "../../../components/Chips/Chips.es.js";
215
221
  import { LinksManager as g } from "../../../components/LinksManager/LinksManager.es.js";
216
222
  import "../../../components/StyledLink/StyledLink.es.js";
223
+ import "../../../components/ShareOptionIcon/ShareOptionIcon.es.js";
224
+ import "../../../components/AccessUser/AccessUser.es.js";
225
+ import "../../../../../node_modules/match-sorter/dist/match-sorter.esm.es.js";
226
+ import "../../../components/AccessSearchInput/AccessSearchInput.styled.es.js";
217
227
  const b = (t) => [...t].sort((i, r) => {
218
228
  const m = i.parents.join("/") + i.label, n = r.parents.join("/") + r.label;
219
229
  return m.localeCompare(n);
220
- }), Sr = (t, i, r) => {
230
+ }), Br = (t, i, r) => {
221
231
  const m = i.split("|"), [n, e, c] = m;
222
232
  return t === "in" ? r === c : r === e;
223
- }, Ir = ({
233
+ }, Fr = ({
224
234
  value: t,
225
235
  isEditing: i,
226
236
  cellId: r,
@@ -280,8 +290,8 @@ const b = (t) => [...t].sort((i, r) => {
280
290
  ] });
281
291
  };
282
292
  export {
283
- Ir as LinksWidget,
284
- Sr as isLinkEditable,
293
+ Fr as LinksWidget,
294
+ Br as isLinkEditable,
285
295
  b as sortEntityLinksByPath
286
296
  };
287
297
  //# sourceMappingURL=LinksWidget.es.js.map