@ynput/ayon-frontend-shared 0.3.32 → 0.3.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 (832) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +26 -24
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +218 -214
  6. package/dist/ProjectTreeTable.es.js.map +1 -1
  7. package/dist/Slicer.cjs.js +1 -1
  8. package/dist/Slicer.es.js +19 -18
  9. package/dist/Slicer.es.js.map +1 -1
  10. package/dist/_virtual/index.cjs14.js +1 -1
  11. package/dist/_virtual/index.cjs15.js +1 -1
  12. package/dist/_virtual/index.cjs19.js +1 -1
  13. package/dist/_virtual/index.cjs4.js +1 -1
  14. package/dist/_virtual/index.cjs5.js +1 -1
  15. package/dist/_virtual/index.cjs6.js +1 -1
  16. package/dist/_virtual/index.cjs8.js +1 -1
  17. package/dist/_virtual/index.cjs9.js +1 -1
  18. package/dist/_virtual/index.es10.js +2 -2
  19. package/dist/_virtual/index.es11.js +2 -2
  20. package/dist/_virtual/index.es13.js +2 -2
  21. package/dist/_virtual/index.es14.js +2 -5
  22. package/dist/_virtual/index.es14.js.map +1 -1
  23. package/dist/_virtual/index.es15.js +2 -2
  24. package/dist/_virtual/index.es16.js +2 -2
  25. package/dist/_virtual/index.es17.js +2 -2
  26. package/dist/_virtual/index.es18.js +2 -2
  27. package/dist/_virtual/index.es19.js +2 -2
  28. package/dist/_virtual/index.es4.js +5 -2
  29. package/dist/_virtual/index.es4.js.map +1 -1
  30. package/dist/_virtual/index.es5.js +2 -5
  31. package/dist/_virtual/index.es5.js.map +1 -1
  32. package/dist/_virtual/index.es6.js +2 -2
  33. package/dist/_virtual/index.es8.js +2 -2
  34. package/dist/_virtual/index.es9.js +5 -2
  35. package/dist/_virtual/index.es9.js.map +1 -1
  36. package/dist/api.cjs.js +1 -1
  37. package/dist/api.es.js +435 -430
  38. package/dist/api.es.js.map +1 -1
  39. package/dist/components.cjs.js +1 -1
  40. package/dist/components.es.js +83 -80
  41. package/dist/components.es.js.map +1 -1
  42. package/dist/index.cjs.js +1 -1
  43. package/dist/index.es.js +13 -11
  44. package/dist/index.es.js.map +1 -1
  45. package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
  46. package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
  47. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  48. package/dist/node_modules/remove-accents/index.es.js +1 -1
  49. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
  50. package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
  51. package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
  52. package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
  53. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
  54. package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
  55. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
  56. package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
  57. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
  58. package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
  59. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
  60. package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
  61. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
  62. package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
  63. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
  64. package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
  65. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
  66. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
  67. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
  68. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
  69. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
  70. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
  71. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
  72. package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
  73. package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
  74. package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
  75. package/dist/shared/node_modules/prop-types/index.es.js +1 -1
  76. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  77. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  78. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  79. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  80. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  81. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  82. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  83. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  84. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  85. package/dist/shared/src/api/base/client.cjs.js +1 -1
  86. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  87. package/dist/shared/src/api/base/client.es.js +1 -0
  88. package/dist/shared/src/api/base/client.es.js.map +1 -1
  89. package/dist/shared/src/api/generated/graphql.cjs.js +104 -48
  90. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  91. package/dist/shared/src/api/generated/graphql.es.js +175 -115
  92. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  93. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  94. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  95. package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
  96. package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
  97. package/dist/shared/src/api/queries/activities/getActivities.es.js +26 -24
  98. package/dist/shared/src/api/queries/activities/getActivities.es.js.map +1 -1
  99. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
  100. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
  101. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +6 -6
  102. package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
  103. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +2 -0
  104. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -0
  105. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +68 -0
  106. package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -0
  107. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
  108. package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
  109. package/dist/shared/src/api/queries/entityLists/updateLists.es.js +73 -69
  110. package/dist/shared/src/api/queries/entityLists/updateLists.es.js.map +1 -1
  111. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  112. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  113. package/dist/shared/src/api/queries/overview/updateOverview.es.js +60 -55
  114. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  115. package/dist/shared/src/api/queries/users/getUsers.cjs.js +4 -4
  116. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  117. package/dist/shared/src/api/queries/users/getUsers.es.js +11 -11
  118. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  119. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
  120. package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
  121. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +3 -2
  122. package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
  123. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  124. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  125. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  126. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  127. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  128. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  129. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -4
  130. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  131. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  132. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  133. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  134. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  135. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  136. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  137. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
  138. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  139. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  140. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  141. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
  142. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  143. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
  144. package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
  145. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +3 -2
  146. package/dist/shared/src/components/EntityIcon/EntityIcon.es.js.map +1 -1
  147. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  148. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  149. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +6 -4
  150. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  151. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  152. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  153. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +6 -4
  154. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  155. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
  156. package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
  157. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +3 -2
  158. package/dist/shared/src/components/EntityPath/SegmentProvider.es.js.map +1 -1
  159. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  160. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  161. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  162. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  163. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  164. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  165. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
  166. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  167. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  168. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  169. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  170. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  171. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
  172. package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
  173. package/dist/shared/src/components/LinksManager/LinksManager.es.js +3 -2
  174. package/dist/shared/src/components/LinksManager/LinksManager.es.js.map +1 -1
  175. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  176. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  177. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +6 -4
  178. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  179. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  180. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  181. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
  182. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  183. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
  184. package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
  185. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +3 -2
  186. package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
  187. package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
  188. package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
  189. package/dist/shared/src/components/Menu/Menu.es.js +3 -2
  190. package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
  191. package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
  192. package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
  193. package/dist/shared/src/components/Menu/MenuItem.es.js +1 -0
  194. package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
  195. package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
  196. package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
  197. package/dist/shared/src/components/Menu/MenuList.es.js +3 -2
  198. package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
  199. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
  200. package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
  201. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +3 -2
  202. package/dist/shared/src/components/Powerpack/PowerpackButton.es.js.map +1 -1
  203. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  204. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  205. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +3 -2
  206. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  207. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
  208. package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
  209. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +3 -2
  210. package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js.map +1 -1
  211. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
  212. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
  213. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +6 -4
  214. package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
  215. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
  216. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  217. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +8 -6
  218. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  219. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  220. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  221. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +3 -2
  222. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  223. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  224. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  225. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +6 -4
  226. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  227. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  228. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  229. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +6 -4
  230. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  231. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  232. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  233. package/dist/shared/src/components/RenameForm/RenameForm.es.js +6 -4
  234. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  235. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  236. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  237. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  238. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  239. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  240. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  241. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +6 -4
  242. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  243. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  244. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  245. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +7 -5
  246. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  247. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  248. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  249. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +6 -4
  250. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  251. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  252. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  253. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  254. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  255. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  256. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  257. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +6 -4
  258. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  259. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
  260. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
  261. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +2 -1
  262. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
  263. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js +2 -0
  264. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js.map +1 -0
  265. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js +24 -0
  266. package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js.map +1 -0
  267. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  268. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  269. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +7 -6
  270. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  271. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
  272. package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
  273. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +3 -2
  274. package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js.map +1 -1
  275. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  276. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  277. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +8 -6
  278. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  279. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  280. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  281. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +6 -4
  282. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  283. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  284. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  285. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
  286. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  287. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
  288. package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
  289. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +3 -2
  290. package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
  291. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
  292. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  293. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +6 -4
  294. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  295. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  296. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  297. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +10 -8
  298. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  299. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  300. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  301. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  302. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  303. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  304. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  305. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -4
  306. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  307. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  308. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  309. package/dist/shared/src/containers/Actions/Actions.es.js +3 -2
  310. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  311. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  312. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  313. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +6 -4
  314. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  315. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  316. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  317. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +6 -4
  318. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  319. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  320. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  321. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +6 -4
  322. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  323. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  324. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  325. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +6 -4
  326. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  327. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  328. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  329. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +6 -4
  330. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  331. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
  332. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
  333. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +6 -4
  334. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
  335. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
  336. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
  337. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +6 -4
  338. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js.map +1 -1
  339. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  340. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  341. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  342. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  343. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  344. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  345. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +19 -17
  346. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  347. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  348. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  349. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +6 -4
  350. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  351. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  352. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
  354. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  355. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  356. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  357. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +3 -2
  358. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  359. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  360. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  361. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +3 -2
  362. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  363. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
  364. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  365. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +6 -4
  366. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  367. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  368. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  369. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +6 -4
  370. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  371. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  372. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  373. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +6 -4
  374. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  375. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  376. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  377. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +6 -4
  378. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  379. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  380. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  381. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +3 -2
  382. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  383. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  384. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  385. package/dist/shared/src/containers/Feed/Feed.es.js +164 -146
  386. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  387. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  388. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  389. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +6 -4
  390. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  391. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  392. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  393. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +131 -144
  394. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  395. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  396. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  397. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +6 -4
  398. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  399. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js +3 -3
  400. package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js.map +1 -1
  401. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js +39 -29
  402. package/dist/shared/src/containers/Feed/components/ActivityDate.es.js.map +1 -1
  403. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
  404. package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
  405. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +24 -20
  406. package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
  407. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +2 -0
  408. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -0
  409. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +345 -0
  410. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -0
  411. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js +59 -0
  412. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js.map +1 -0
  413. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js +65 -0
  414. package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js.map +1 -0
  415. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
  416. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
  417. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +3 -2
  418. package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js.map +1 -1
  419. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +2 -2
  420. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  421. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +349 -290
  422. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  423. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +89 -12
  424. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
  425. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +101 -19
  426. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
  427. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js +2 -0
  428. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js.map +1 -0
  429. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js +34 -0
  430. package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js.map +1 -0
  431. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  432. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  433. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +10 -8
  434. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  435. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
  436. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
  437. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +3 -2
  438. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
  439. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
  440. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
  441. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +3 -2
  442. package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
  443. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
  444. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
  445. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +3 -2
  446. package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js.map +1 -1
  447. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  448. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  449. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -3
  450. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  451. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  452. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  453. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
  454. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  455. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  456. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  457. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
  458. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  459. package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js +2 -0
  460. package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js.map +1 -0
  461. package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js +27 -0
  462. package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js.map +1 -0
  463. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
  464. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
  465. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +88 -68
  466. package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
  467. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  468. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  469. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  470. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  471. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +2 -0
  472. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -0
  473. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +113 -0
  474. package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -0
  475. package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
  476. package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
  477. package/dist/shared/src/containers/ListTable/ListTable.es.js +6 -4
  478. package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
  479. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
  480. package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
  481. package/dist/shared/src/containers/ListTable/ListTableCell.es.js +6 -4
  482. package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
  483. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
  484. package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
  485. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +6 -4
  486. package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
  487. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  488. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  489. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +34 -32
  490. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  491. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  492. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  493. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +6 -4
  494. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  495. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  496. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  497. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +6 -4
  498. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  499. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
  500. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  501. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +6 -4
  502. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  503. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  504. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  505. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +6 -4
  506. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  507. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  508. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  509. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +6 -4
  510. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  511. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +1 -1
  512. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  513. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
  514. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  515. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  516. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  517. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +6 -4
  518. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  519. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  520. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  521. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
  522. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  523. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
  524. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
  525. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +93 -90
  526. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js.map +1 -1
  527. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  528. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  529. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +6 -4
  530. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  531. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
  532. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
  533. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +3 -2
  534. package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js.map +1 -1
  535. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  536. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  537. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +9 -7
  538. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  539. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  540. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  541. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +121 -104
  542. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  543. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  544. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  545. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +6 -4
  546. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  547. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  548. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  549. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +6 -4
  550. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  551. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  552. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  553. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +6 -4
  554. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  555. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  556. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  557. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +6 -4
  558. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  559. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  560. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  561. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +178 -175
  562. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  563. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  564. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  565. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +6 -4
  566. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  567. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  568. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  569. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +6 -4
  570. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  571. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  572. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  573. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +6 -4
  574. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  575. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  576. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  577. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +6 -4
  578. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  579. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  580. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  581. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +6 -4
  582. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  583. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  584. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  585. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +20 -17
  586. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  587. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  588. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  589. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +6 -4
  590. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  591. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
  592. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
  593. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +3 -2
  594. package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js.map +1 -1
  595. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  596. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  597. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +17 -15
  598. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  599. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  600. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  601. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +61 -61
  602. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  603. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js +2 -0
  604. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js.map +1 -0
  605. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js +15 -0
  606. package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js.map +1 -0
  607. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
  608. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
  609. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +6 -4
  610. package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js.map +1 -1
  611. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  612. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  613. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +7 -5
  614. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  615. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  616. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  617. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +8 -6
  618. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  619. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
  620. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
  621. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +3 -2
  622. package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js.map +1 -1
  623. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  624. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  625. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +6 -4
  626. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  627. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  628. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  629. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +6 -4
  630. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  631. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  632. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  633. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
  634. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  635. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  636. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  637. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +6 -4
  638. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  639. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  640. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  641. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +6 -4
  642. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  643. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
  644. package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
  645. package/dist/shared/src/containers/Slicer/components/Slicer.es.js +52 -50
  646. package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
  647. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
  648. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
  649. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +3 -2
  650. package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js.map +1 -1
  651. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  652. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  653. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +6 -4
  654. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  655. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  656. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  657. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +56 -53
  658. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  659. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  660. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  661. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
  662. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  663. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
  664. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
  665. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +3 -2
  666. package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
  667. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  668. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  669. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +6 -4
  670. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  671. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
  672. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
  673. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +3 -2
  674. package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
  675. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
  676. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
  677. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +12 -18
  678. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
  679. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  680. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  681. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +3 -2
  682. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  683. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  684. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  685. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
  686. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  687. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  688. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  689. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
  690. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  691. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  692. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  693. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +6 -4
  694. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  695. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
  696. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
  697. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +3 -2
  698. package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js.map +1 -1
  699. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  700. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  701. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +5 -4
  702. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  703. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  704. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  705. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
  706. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  707. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  708. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  709. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +6 -5
  710. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  711. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  712. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  713. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  714. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  715. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  716. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  717. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  718. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  719. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  720. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  721. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
  722. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  723. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  724. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  725. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  726. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  727. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  728. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  729. package/dist/shared/src/context/DetailsPanelContext.es.js +5 -4
  730. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  731. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  732. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  733. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  734. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  735. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  736. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  737. package/dist/shared/src/context/PowerpackContext.es.js +7 -6
  738. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  739. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  740. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  741. package/dist/shared/src/context/ProjectContext.es.js +5 -4
  742. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  743. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  744. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  745. package/dist/shared/src/context/ProjectFoldersContext.es.js +5 -4
  746. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  747. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  748. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  749. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  750. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  751. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  752. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  753. package/dist/shared/src/context/SubtasksModulesContext.es.js +5 -4
  754. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  755. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  756. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  757. package/dist/shared/src/context/UriContext.es.js +6 -5
  758. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  759. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  760. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  761. package/dist/shared/src/context/WebsocketContext.es.js +8 -6
  762. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  763. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  764. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  765. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  766. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  767. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  768. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  769. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  770. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  771. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  772. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  773. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  774. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  775. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  776. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  777. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +3 -2
  778. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  779. package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
  780. package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
  781. package/dist/shared/src/hooks/useHierarchyTable.es.js +3 -2
  782. package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
  783. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  784. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  785. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  786. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  787. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  788. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  789. package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
  790. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  791. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  792. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  793. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  794. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  795. package/dist/types/api/generated/graphql.d.ts +129 -0
  796. package/dist/types/api/generated/graphqlLinks.d.ts +74 -0
  797. package/dist/types/api/queries/activities/getActivities.d.ts +459 -0
  798. package/dist/types/api/queries/activities/updateActivities.d.ts +22 -0
  799. package/dist/types/api/queries/entities/getEntity.d.ts +10 -0
  800. package/dist/types/api/queries/entities/getEntityPanel.d.ts +10 -0
  801. package/dist/types/api/queries/entities/updateEntity.d.ts +10 -0
  802. package/dist/types/api/queries/entityLists/getLists.d.ts +10 -0
  803. package/dist/types/api/queries/entityLists/index.d.ts +1 -0
  804. package/dist/types/api/queries/entityLists/listItemsColumnStats.d.ts +312 -0
  805. package/dist/types/api/queries/entityLists/types.d.ts +3 -0
  806. package/dist/types/api/queries/overview/getOverview.d.ts +10 -0
  807. package/dist/types/api/queries/project/getProject.d.ts +10 -0
  808. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +10 -0
  809. package/dist/types/api/queries/users/getUsers.d.ts +10 -0
  810. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +20 -0
  811. package/dist/types/components/SearchFilter/filterScopeRegistry.d.ts +5 -0
  812. package/dist/types/components/SearchFilter/index.d.ts +1 -0
  813. package/dist/types/containers/Feed/Feed.d.ts +2 -1
  814. package/dist/types/containers/Feed/components/ActivityDate.d.ts +3 -1
  815. package/dist/types/containers/Feed/components/ActivityItem.d.ts +1 -0
  816. package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +21 -0
  817. package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.d.ts +3 -0
  818. package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +8 -0
  819. package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +19 -0
  820. package/dist/types/containers/Feed/components/CommentInput/VersionReviewPill.d.ts +7 -0
  821. package/dist/types/containers/Feed/hooks/useCategoryData.d.ts +7 -0
  822. package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +2 -0
  823. package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +3 -0
  824. package/dist/types/containers/Feed/hooks/useLastVersionReview.d.ts +11 -0
  825. package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
  826. package/dist/types/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.d.ts +2 -1
  827. package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
  828. package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +1 -1
  829. package/dist/types/containers/ProjectTreeTable/types/table.d.ts +1 -0
  830. package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
  831. package/dist/types/containers/ProjectTreeTable/utils/sanitizeQueryFilter.d.ts +2 -0
  832. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SortableReviewableCard.es.js","sources":["../../../../../src/components/ReviewablesList/SortableReviewableCard.tsx"],"sourcesContent":["import { FC } from 'react'\nimport { useSortable } from '@dnd-kit/sortable'\nimport { CSS } from '@dnd-kit/utilities'\nimport { ReviewableCardProps, ReviewableCard } from '@shared/components'\n\ntype SortableReviewableCardProps = ReviewableCardProps\n\nconst SortableReviewableCard: FC<SortableReviewableCardProps> = ({ ...props }) => {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: props.fileId,\n animateLayoutChanges: () => false,\n })\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n return (\n <div ref={setNodeRef} style={style}>\n <ReviewableCard\n isDropPlaceholder={isDragging}\n dragProps={{ ...attributes, ...listeners }}\n disabled={props.sortingDisabled}\n {...props}\n />\n </div>\n )\n}\n\nexport default SortableReviewableCard\n"],"names":["SortableReviewableCard","props","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","style","CSS","jsx","ReviewableCard"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAMA,KAA0D,CAAC,EAAE,GAAGC,QAAY;AAChF,QAAM,EAAE,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,YAAAC,EAAA,IAAeC,EAAY;AAAA,IAC3F,IAAIP,EAAM;AAAA,IACV,sBAAsB,MAAM;AAAA,EAAA,CAC7B,GAEKQ,IAAQ;AAAA,IACZ,WAAWC,EAAI,UAAU,SAASL,CAAS;AAAA,IAC3C,YAAAC;AAAA,EAAA;AAGF,SACEK,gBAAAA,EAAAA,IAAC,OAAA,EAAI,KAAKP,GAAY,OAAAK,GACpB,UAAAE,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,mBAAmBL;AAAA,MACnB,WAAW,EAAE,GAAGL,GAAY,GAAGC,EAAA;AAAA,MAC/B,UAAUF,EAAM;AAAA,MACf,GAAGA;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ;"}
1
+ {"version":3,"file":"SortableReviewableCard.es.js","sources":["../../../../../src/components/ReviewablesList/SortableReviewableCard.tsx"],"sourcesContent":["import { FC } from 'react'\nimport { useSortable } from '@dnd-kit/sortable'\nimport { CSS } from '@dnd-kit/utilities'\nimport { ReviewableCardProps, ReviewableCard } from '@shared/components'\n\ntype SortableReviewableCardProps = ReviewableCardProps\n\nconst SortableReviewableCard: FC<SortableReviewableCardProps> = ({ ...props }) => {\n const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({\n id: props.fileId,\n animateLayoutChanges: () => false,\n })\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n return (\n <div ref={setNodeRef} style={style}>\n <ReviewableCard\n isDropPlaceholder={isDragging}\n dragProps={{ ...attributes, ...listeners }}\n disabled={props.sortingDisabled}\n {...props}\n />\n </div>\n )\n}\n\nexport default SortableReviewableCard\n"],"names":["SortableReviewableCard","props","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","style","CSS","jsx","ReviewableCard"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAMA,KAA0D,CAAC,EAAE,GAAGC,QAAY;AAChF,QAAM,EAAE,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,WAAAC,GAAW,YAAAC,GAAY,YAAAC,EAAA,IAAeC,EAAY;AAAA,IAC3F,IAAIP,EAAM;AAAA,IACV,sBAAsB,MAAM;AAAA,EAAA,CAC7B,GAEKQ,IAAQ;AAAA,IACZ,WAAWC,EAAI,UAAU,SAASL,CAAS;AAAA,IAC3C,YAAAC;AAAA,EAAA;AAGF,SACEK,gBAAAA,EAAAA,IAAC,OAAA,EAAI,KAAKP,GAAY,OAAAK,GACpB,UAAAE,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,mBAAmBL;AAAA,MACnB,WAAW,EAAE,GAAGL,GAAY,GAAGC,EAAA;AAAA,MAC/B,UAAUF,EAAM;AAAA,MACf,GAAGA;AAAA,IAAA;AAAA,EAAA,GAER;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),z=require("axios"),x=require("react-toastify"),w=require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");const A=require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const c=a=>{const u=a.replace(/[^\x00-\xFF]/g,"").trim(),p=u.replace(/\.[^/.]+$/,""),o=u.split(".").pop();return p.length===0?"unnamed"+(o?`.${o}`:""):u},C=({projectName:a,versionId:u,taskId:p,folderId:o,productId:b,dispatch:l,onUpload:y,onProgress:$})=>{const[m,g]=f.useState({}),U=f.useCallback(F=>{u&&g(v=>({...v,[u]:v[u]?.filter(r=>r.name!==F)||[]}))},[u]);return{handleFileUpload:f.useCallback(async(F,v)=>{const r=v||u;if(!r||!a)return;const h=Array.from(F),R=h.map(i=>({name:c(i.name),size:i.size,progress:0})),T=[...m[r]||[],...R];g({...m,[r]:T});const P=i=>e=>{if(!r)return;console.log(`Upload successful for ${i.name}`);const t=e.data;a&&(l(A.reviewablesQueries.util.updateQueryData("getReviewablesForVersion",{projectName:a,versionId:r},n=>{n.reviewables||(n.reviewables=[]),n.reviewables.push(t)})),b&&l(w.api.util.invalidateTags([{type:"viewer",id:b}])),l(w.api.util.invalidateTags([{type:"viewer",id:r}])),o&&l(w.api.util.invalidateTags([{type:"viewer",id:o}])),p&&l(w.api.util.invalidateTags([{type:"viewer",id:p}])),U(c(i.name)))},H=i=>e=>{r&&(console.error(`Upload failed for ${i.name}: ${e}`),x.toast.error(`Failed to upload file: ${i.name}`),g(t=>{const s=(t[r]||[]).map(q=>q.name!==c(i.name)?q:(console.log(e),{...q,error:e.response||e.message}));return{...t,[r]:s}}))},M=i=>r?e=>g(t=>{const s=(t[r]||[]).map(d=>d.name!==c(i.name)?d:{...d,progress:e.total?Math.round(e.loaded/e.total*100):0}),q=s.reduce((d,V)=>d+(V.progress||0),0),S=Math.round(q/s.length);return $?.(S),{...t,[r]:s}}):()=>{};try{const i=h.map(e=>{const t=c(e.name),n=t.split(".").slice(0,-1).join(".")||"unnamed",s=`/api/projects/${a}/versions/${r}/reviewables?label=${n}`,q={"content-type":e.type,"x-file-name":t};return z.post(s,e,{headers:q,onUploadProgress:M(e)}).then(P(e)).catch(H(e))});await Promise.all(i),y&&y()}catch(i){console.error(i),x.toast.error("Failed to upload file/s")}},[u,a,m,l,b,o,p,U,y,$]),handleRemoveUpload:U,uploading:m}};exports.parseFilename=c;exports.useReviewablesUpload=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),z=require("axios"),x=require("react-toastify"),w=require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");const A=require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const c=a=>{const u=a.replace(/[^\x00-\xFF]/g,"").trim(),p=u.replace(/\.[^/.]+$/,""),o=u.split(".").pop();return p.length===0?"unnamed"+(o?`.${o}`:""):u},C=({projectName:a,versionId:u,taskId:p,folderId:o,productId:b,dispatch:l,onUpload:y,onProgress:$})=>{const[m,g]=f.useState({}),U=f.useCallback(F=>{u&&g(v=>({...v,[u]:v[u]?.filter(r=>r.name!==F)||[]}))},[u]);return{handleFileUpload:f.useCallback(async(F,v)=>{const r=v||u;if(!r||!a)return;const h=Array.from(F),R=h.map(i=>({name:c(i.name),size:i.size,progress:0})),T=[...m[r]||[],...R];g({...m,[r]:T});const P=i=>e=>{if(!r)return;console.log(`Upload successful for ${i.name}`);const t=e.data;a&&(l(A.reviewablesQueries.util.updateQueryData("getReviewablesForVersion",{projectName:a,versionId:r},n=>{n.reviewables||(n.reviewables=[]),n.reviewables.push(t)})),b&&l(w.api.util.invalidateTags([{type:"viewer",id:b}])),l(w.api.util.invalidateTags([{type:"viewer",id:r}])),o&&l(w.api.util.invalidateTags([{type:"viewer",id:o}])),p&&l(w.api.util.invalidateTags([{type:"viewer",id:p}])),U(c(i.name)))},H=i=>e=>{r&&(console.error(`Upload failed for ${i.name}: ${e}`),x.toast.error(`Failed to upload file: ${i.name}`),g(t=>{const s=(t[r]||[]).map(q=>q.name!==c(i.name)?q:(console.log(e),{...q,error:e.response||e.message}));return{...t,[r]:s}}))},M=i=>r?e=>g(t=>{const s=(t[r]||[]).map(d=>d.name!==c(i.name)?d:{...d,progress:e.total?Math.round(e.loaded/e.total*100):0}),q=s.reduce((d,V)=>d+(V.progress||0),0),S=Math.round(q/s.length);return $?.(S),{...t,[r]:s}}):()=>{};try{const i=h.map(e=>{const t=c(e.name),n=t.split(".").slice(0,-1).join(".")||"unnamed",s=`/api/projects/${a}/versions/${r}/reviewables?label=${n}`,q={"content-type":e.type,"x-file-name":t};return z.post(s,e,{headers:q,onUploadProgress:M(e)}).then(P(e)).catch(H(e))});await Promise.all(i),y&&y()}catch(i){console.error(i),x.toast.error("Failed to upload file/s")}},[u,a,m,l,b,o,p,U,y,$]),handleRemoveUpload:U,uploading:m}};exports.parseFilename=c;exports.useReviewablesUpload=C;
2
2
  //# sourceMappingURL=useReviewablesUpload.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useReviewablesUpload.cjs.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
1
+ {"version":3,"file":"useReviewablesUpload.cjs.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
@@ -66,6 +66,7 @@ import "../../api/queries/entities/updateEntity.es.js";
66
66
  import "../../api/queries/entityLists/getLists.es.js";
67
67
  import "../../api/queries/entityLists/updateLists.es.js";
68
68
  import "../../api/queries/entityLists/getListsAttributes.es.js";
69
+ import "../../api/queries/entityLists/listItemsColumnStats.es.js";
69
70
  import "../../api/queries/entityLists/updateListsAttributes.es.js";
70
71
  import "../../api/queries/entityLists/listFolders.es.js";
71
72
  import "../../api/queries/folders/getFolders.es.js";
@@ -98,7 +99,7 @@ import "../../api/queries/uris/getUris.es.js";
98
99
  const d = (p) => {
99
100
  const i = p.replace(/[^\x00-\xFF]/g, "").trim(), u = i.replace(/\.[^/.]+$/, ""), s = i.split(".").pop();
100
101
  return u.length === 0 ? "unnamed" + (s ? `.${s}` : "") : i;
101
- }, Tt = ({
102
+ }, Ht = ({
102
103
  projectName: p,
103
104
  versionId: i,
104
105
  taskId: u,
@@ -196,6 +197,6 @@ const d = (p) => {
196
197
  };
197
198
  export {
198
199
  d as parseFilename,
199
- Tt as useReviewablesUpload
200
+ Ht as useReviewablesUpload
200
201
  };
201
202
  //# sourceMappingURL=useReviewablesUpload.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useReviewablesUpload.es.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
1
+ {"version":3,"file":"useReviewablesUpload.es.js","sources":["../../../../../src/components/ReviewablesList/useReviewablesUpload.ts"],"sourcesContent":["import { useState, useCallback } from 'react'\nimport axios, { AxiosProgressEvent, AxiosResponse } from 'axios'\nimport { toast } from 'react-toastify'\n\nimport api, { reviewablesQueries } from '@shared/api'\nimport type { UploadReviewableApiResponse } from '@shared/api'\nimport type { ReviewableProgress } from '@shared/components'\n\n// strip out non-ISO-8859-1 characters like Narrow No-Break Space and emojis\n// then check it is not an empty string without extension, if so replace with \"unnamed\"\nexport const parseFilename = (filename: string) => {\n const parsed = filename.replace(/[^\\x00-\\xFF]/g, '').trim()\n // without extension\n const nameWithoutExtension = parsed.replace(/\\.[^/.]+$/, '')\n const extension = parsed.split('.').pop()\n if (nameWithoutExtension.length === 0) {\n return 'unnamed' + (extension ? `.${extension}` : '')\n } else {\n return parsed\n }\n}\n\nexport interface UseReviewablesUploadProps {\n projectName: string | null\n versionId?: string | null\n taskId?: string | null\n folderId?: string | null\n productId?: string | null\n dispatch: any\n onUpload?: () => void\n onProgress?: (progress: number) => void\n}\n\nexport interface UploadHandlers {\n handleFileUpload: (files: FileList | File[], versionId?: string) => Promise<void>\n handleRemoveUpload: (name: string) => void\n uploading: { [key: string]: ReviewableProgress[] }\n}\n\nexport const useReviewablesUpload = ({\n projectName,\n versionId,\n taskId,\n folderId,\n productId,\n dispatch,\n onUpload,\n onProgress,\n}: UseReviewablesUploadProps): UploadHandlers => {\n const [uploading, setUploads] = useState<{ [key: string]: ReviewableProgress[] }>({})\n\n const handleRemoveUpload = useCallback(\n (name: string) => {\n if (!versionId) return\n setUploads((uploads) => ({\n ...uploads,\n [versionId]: uploads[versionId]?.filter((upload) => upload.name !== name) || [],\n }))\n },\n [versionId],\n )\n\n const handleFileUpload = useCallback(\n async (files: FileList | File[], fileVersionId?: string) => {\n // use the passed versionId or the one from props\n const reviewableVersionId = fileVersionId || versionId\n if (!reviewableVersionId || !projectName) return\n\n const fileArray = Array.from(files)\n\n const uploadingFiles = fileArray.map((file) => ({\n name: parseFilename(file.name),\n size: file.size,\n progress: 0,\n }))\n\n const newUploadsForVersion = [...(uploading[reviewableVersionId] || []), ...uploadingFiles]\n\n setUploads({ ...uploading, [reviewableVersionId]: newUploadsForVersion })\n\n const successHandler = (file: File) => (response: AxiosResponse) => {\n if (!reviewableVersionId) return\n // Handle successful upload\n console.log(`Upload successful for ${file.name}`)\n // patch the new data into the reviewables cache\n const data = response.data as UploadReviewableApiResponse\n\n if (!projectName) return\n\n dispatch(\n // @ts-ignore\n reviewablesQueries.util.updateQueryData(\n 'getReviewablesForVersion',\n { projectName, versionId: reviewableVersionId },\n (draft) => {\n if (!draft.reviewables) {\n draft.reviewables = []\n }\n // @ts-ignore\n draft.reviewables.push(data)\n },\n ),\n )\n\n // also invalidate the viewer cache\n productId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: productId }]))\n dispatch(api.util.invalidateTags([{ type: 'viewer', id: reviewableVersionId }]))\n folderId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: folderId }]))\n taskId && dispatch(api.util.invalidateTags([{ type: 'viewer', id: taskId }]))\n // remove the file from the list\n handleRemoveUpload(parseFilename(file.name))\n }\n\n const errorHandler = (file: File) => (error: any) => {\n if (!reviewableVersionId) return\n console.error(`Upload failed for ${file.name}: ${error}`)\n toast.error(`Failed to upload file: ${file.name}`)\n // add error to the file\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n console.log(error)\n return {\n ...upload,\n error: error.response || error.message,\n }\n })\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n const progressHandler = (file: File) => {\n if (!reviewableVersionId) return () => {}\n return (progressEvent: AxiosProgressEvent) =>\n setUploads((uploads) => {\n // current uploads for reviewableVersionId\n const currentUploads = uploads[reviewableVersionId] || []\n const updatedUploads = currentUploads.map((upload) => {\n if (upload.name !== parseFilename(file.name)) return upload\n return {\n ...upload,\n progress: progressEvent.total\n ? Math.round((progressEvent.loaded / progressEvent.total) * 100)\n : 0,\n }\n })\n\n // Calculate overall progress across all files\n const totalProgress = updatedUploads.reduce(\n (sum, upload) => sum + (upload.progress || 0),\n 0,\n )\n const overallProgress = Math.round(totalProgress / updatedUploads.length)\n\n // Call the onProgress callback with overall progress\n onProgress?.(overallProgress)\n\n // update state\n return {\n ...uploads,\n [reviewableVersionId]: updatedUploads,\n }\n })\n }\n\n try {\n // upload the files\n const uploadPromises = fileArray.map((file) => {\n const fileName = parseFilename(file.name)\n const autoLabel = fileName.split('.').slice(0, -1).join('.') || 'unnamed'\n\n const url = `/api/projects/${projectName}/versions/${reviewableVersionId}/reviewables?label=${autoLabel}`\n const headers = { 'content-type': file.type, 'x-file-name': fileName }\n return axios\n .post(url, file, { headers, onUploadProgress: progressHandler(file) })\n .then(successHandler(file))\n .catch(errorHandler(file))\n })\n\n // Wait for all uploads to complete\n await Promise.all(uploadPromises)\n\n // Callback after all uploads are finished\n onUpload && onUpload()\n } catch (error) {\n // something went wrong with everything, EEEEK!\n console.error(error)\n toast.error('Failed to upload file/s')\n }\n },\n [\n versionId,\n projectName,\n uploading,\n dispatch,\n productId,\n folderId,\n taskId,\n handleRemoveUpload,\n onUpload,\n onProgress,\n ],\n )\n\n return {\n handleFileUpload,\n handleRemoveUpload,\n uploading,\n }\n}\n"],"names":["parseFilename","filename","parsed","nameWithoutExtension","extension","useReviewablesUpload","projectName","versionId","taskId","folderId","productId","dispatch","onUpload","onProgress","uploading","setUploads","useState","handleRemoveUpload","useCallback","name","uploads","upload","files","fileVersionId","reviewableVersionId","fileArray","uploadingFiles","file","newUploadsForVersion","successHandler","response","data","reviewablesQueries","draft","api","errorHandler","error","toast","updatedUploads","progressHandler","progressEvent","totalProgress","sum","overallProgress","uploadPromises","fileName","autoLabel","url","headers","axios"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const i=require("../../../../_virtual/jsx-runtime.cjs.js"),p=require("clsx");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("react");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../AccessUser/AccessUser.cjs.js");require("../AttributeEditor/AttributeEditor.cjs.js");require("../AttributeEditor/attributeTypeMap.cjs.js");require("../Badge/Badge.cjs.js");require("../Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.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/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("../../../../_virtual/index.cjs.js");require("../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../DetailsPanelDetails/BorderedSection.cjs.js");require("../QuillListStyles/QuillListStyles.cjs.js");require("../DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../context/PowerpackContextInstance.cjs.js");require("../../context/UriContext.cjs.js");require("../../context/DetailsPanelContextInstance.cjs.js");require("../../context/SubtasksModulesContextInstance.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../DetailsPanelDetails/DetailsSection.cjs.js");require("../DetailsPanelDetails/FieldLabel.cjs.js");require("../DoneCheckbox/DoneCheckbox.cjs.js");require("../EarlyPreview/EarlyPreview.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.styled.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const j=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("../../containers/Feed/context/FeedContext.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("../../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../containers/Feed/components/ActivityDate.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../containers/Feed/Feed.styled.cjs.js");require("../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContext.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../PlayableIcon/PlayableIcon.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../containers/Actions/Actions.styled.cjs.js");require("../../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../containers/Actions/ActionIcon.cjs.js");require("../../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../../containers/Views/context/ViewsContextInstance.cjs.js");require("../../containers/Views/Views.styled.cjs.js");require("../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../containers/ListTable/ListTableRow.cjs.js");require("../../containers/ListTable/ListTable.styled.cjs.js");require("../EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../ReviewablesList/ReviewablesList.styled.cjs.js");require("../ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../EntityPath/EntityPath.styled.cjs.js");require("../EntityPath/SegmentProvider.cjs.js");require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../Feedback/FeedbackContextInstance.cjs.js");require("../Feedback/SupportBubble.cjs.js");const C=require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../Powerpack/PowerpackButton.cjs.js");require("../Powerpack/FreeTrialLink.cjs.js");require("../Powerpack/PowerpackDialog.styled.cjs.js");require("../Powerpack/CTAButton.cjs.js");require("../Powerpack/RequiredAddonVersion.cjs.js");require("../ProjectTableSettings/ProjectTableSettings.cjs.js");require("../SizeSlider/SizeSlider.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SettingsPanel/SettingsPanel.cjs.js");require("../SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../ShareOptionIcon/ShareOptionIcon.cjs.js");require("../SimpleFormDialog/SimpleFormDialog.cjs.js");require("../StyledLink/StyledLink.cjs.js");require("../TableGridSwitch/TableGridSwitch.cjs.js");require("../Thumbnail/Thumbnail.styled.cjs.js");require("../Thumbnail/StackedThumbnails.cjs.js");require("../ThumbnailSimple/ThumbnailSimple.cjs.js");require("../VersionUploader/components/UploadVersionDialog.cjs.js");require("../VersionUploader/context/VersionUploadContext.cjs.js");require("../Watchers/Watchers.cjs.js");require("../Menu/Menu.styled.cjs.js");require("../Menu/MenuItem.cjs.js");require("./ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");const t=require("./ReviewablesSelector.styled.cjs.js");function b({fileId:r,label:s,selected:n,projectName:o,onKeyDown:a,onMouseOver:c,onChange:x,tag:u,contextMenuItems:q,selectionVariant:l="primary"}){const[m]=j.useCreateContextMenu();return i.jsxRuntimeExports.jsxs(t.ReviewableCard,{id:"preview-"+r,onClick:e=>x?.(r,e.metaKey||e.ctrlKey),className:p("reviewable-card",{selected:n},l),onMouseOver:e=>c(e,{label:s}),onKeyDown:a,onContextMenu:e=>{q&&(e.preventDefault(),m(e,q))},tabIndex:0,children:[i.jsxRuntimeExports.jsx(C.FileThumbnail,{src:`/api/projects/${o}/files/${r}/thumbnail`}),u&&i.jsxRuntimeExports.jsx(t.Tag,{children:u})]},r)}module.exports=b;
1
+ "use strict";const i=require("../../../../_virtual/jsx-runtime.cjs.js"),p=require("clsx");require("../AddonLoadingScreen/AddonLoadingScreen.cjs.js");require("react");require("../../../../node_modules/match-sorter/dist/match-sorter.esm.cjs.js");require("@ynput/ayon-react-components");require("../AccessSearchInput/AccessSearchInput.styled.cjs.js");require("../AccessUser/AccessUser.cjs.js");require("../AttributeEditor/AttributeEditor.cjs.js");require("../AttributeEditor/attributeTypeMap.cjs.js");require("../Badge/Badge.cjs.js");require("../Chips/Chips.cjs.js");require("react-dom");require("date-fns");require("../DateRangePicker/DateRangePicker.styled.cjs.js");require("../LinksManager/CellEditingDialog.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/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/columnStats/metricTargets.cjs.js");require("../../api/queries/config/getConfig.cjs.js");require("../../api/queries/config/updateConfig.cjs.js");require("../../api/queries/entities/getEntity.cjs.js");require("../../api/queries/entities/getEntityPanel.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/entities/updateEntity.cjs.js");require("../../api/queries/entityLists/getLists.cjs.js");require("../../api/queries/entityLists/updateLists.cjs.js");require("../../api/queries/entityLists/getListsAttributes.cjs.js");require("../../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../../api/queries/entityLists/updateListsAttributes.cjs.js");require("../../api/queries/entityLists/listFolders.cjs.js");require("../../api/queries/folders/getFolders.cjs.js");require("../../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/permissions/getPermissions.cjs.js");require("../../api/queries/products/createProduct.cjs.js");require("../../api/queries/products/getFolderProducts.cjs.js");require("../../api/queries/project/getProject.cjs.js");require("../../api/queries/project/updateProject.cjs.js");require("../../api/queries/projectFolders/projectFolders.cjs.js");require("../../api/queries/review/getReview.cjs.js");require("../../api/queries/review/updateReview.cjs.js");require("../../api/queries/share/share.cjs.js");require("../../api/queries/system/getSystem.cjs.js");require("../../api/queries/tasks/getTasks.cjs.js");require("../../api/queries/tasks/updateTasks.cjs.js");require("../../api/queries/teams/getTeams.cjs.js");require("../../api/queries/userDashboard/getUserDashboard.cjs.js");require("../../api/queries/users/getUsers.cjs.js");require("../../api/queries/users/updateUsers.cjs.js");require("../../api/queries/users/guests.cjs.js");require("../../api/queries/versions/updateVersions.cjs.js");require("../../api/queries/views/getViews.cjs.js");require("../../api/queries/views/updateViews.cjs.js");require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");require("../../../../_virtual/index.cjs.js");require("../../../../node_modules/refractor/lib/common.cjs.js");require("../../../../node_modules/refractor/lib/all.cjs.js");;/* empty css */require("lodash");require("uuid");require("../../util/pubsub.cjs.js");require("../DetailsPanelAttributes/DetailsPanelAttributesEditor.cjs.js");require("../DetailsPanelDetails/DetailsPanelDetails.cjs.js");require("react-quill-ayon");require("../DetailsPanelDetails/BorderedSection.cjs.js");require("../QuillListStyles/QuillListStyles.cjs.js");require("../DetailsPanelDetails/DescriptionSection.styles.cjs.js");require("react-markdown");require("remark-gfm");require("rehype-raw");require("../../containers/Feed/components/CommentInput/quillToMarkdown.cjs.js");require("../DetailsPanelDetails/hooks/useMentionSystem.cjs.js");require("../../containers/Feed/components/CommentInput/modules/index.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../../../_virtual/runtime.cjs.js");require("../../../../_virtual/semver.cjs.js");require("../../context/PowerpackContextInstance.cjs.js");require("../../context/UriContext.cjs.js");require("../../context/DetailsPanelContextInstance.cjs.js");require("../../context/SubtasksModulesContextInstance.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("react-redux");require("custom-protocol-check");require("../../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("../DetailsPanelDetails/DetailsSection.cjs.js");require("../DetailsPanelDetails/FieldLabel.cjs.js");require("../DoneCheckbox/DoneCheckbox.cjs.js");require("../EarlyPreview/EarlyPreview.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholder.cjs.js");require("../EmptyPlaceholder/EmptyPlaceholderFlex.styled.cjs.js");require("@dnd-kit/core");require("@dnd-kit/sortable");require("../EnumEditor/EnumEditor.styled.cjs.js");require("../../containers/ContextMenu/ContextMenuContext.cjs.js");;/* empty css */const j=require("../../containers/ContextMenu/useCreateContextMenu.cjs.js");require("../../containers/Feed/context/FeedContext.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltipItem.cjs.js");require("../../containers/Feed/components/Tooltips/UserTooltip/UserTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.styled.cjs.js");require("../../containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/FileUploadPreview.styled.cjs.js");require("../../containers/Feed/components/FileUploadPreview/Mimes/TextMime.cjs.js");require("remark-emoji");require("remark-directive");require("remark-directive-rehype");require("../../containers/Feed/components/CommentInput/CommentInput.cjs.js");require("../../containers/Feed/components/ReactionContainer/Reactions.styled.cjs.js");require("../../containers/Feed/components/FilesGrid/FilesGrid.styled.cjs.js");require("../../containers/Feed/components/FileUploadCard/FileUploadCard.styled.cjs.js");require("../../containers/Feed/components/ActivityComment/ActivityComment.styled.cjs.js");require("../../containers/Feed/components/ActivityCheckbox/ActivityCheckbox.styled.cjs.js");require("../../containers/Feed/components/ActivityReference/ActivityReference.styled.cjs.js");require("react-router-dom");require("../../containers/Feed/components/ActivityStatus/ActivityStatus.cjs.js");require("../../containers/Feed/components/ActivityHeader/ActivityHeader.styled.cjs.js");require("../../containers/Feed/components/ActivityDate.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryTag.cjs.js");require("../../containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js");require("../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.cjs.js");require("../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.cjs.js");require("../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.cjs.js");require("../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.cjs.js");require("../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.cjs.js");require("../../containers/Feed/Feed.styled.cjs.js");require("../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js");require("@tanstack/react-virtual");require("@tanstack/react-table");require("../../containers/ProjectTreeTable/widgets/CollapsedWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/DateWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EnumCellValue.cjs.js");require("../../containers/ProjectTreeTable/widgets/TextWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/CellWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/EntityNameWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/GroupHeaderWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ThumbnailWidget.cjs.js");require("../../containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js");require("../../containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js");require("../LinksManager/LinksManager.styled.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableContext.cjs.js");require("../../containers/ProjectTreeTable/widgets/EmptyWidget.cjs.js");require("../../containers/ProjectTreeTable/widgets/ErrorWidget.cjs.js");require("../../containers/ProjectTreeTable/context/CellEditingContext.cjs.js");require("../SearchFilter/filterDates.cjs.js");require("short-uuid");require("../../containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.cjs.js");require("../../containers/ProjectTreeTable/context/ClipboardContext.cjs.js");require("../../containers/ProjectTreeTable/context/ColumnSettingsContext.cjs.js");require("../../containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js");require("../../containers/ProjectTreeTable/context/ProjectDataContext.cjs.js");require("../../containers/ProjectTreeTable/ProjectTreeTable.styled.cjs.js");require("../../containers/ProjectTreeTable/components/SelectionCell.cjs.js");require("../../containers/ProjectTreeTable/components/RowSelectionHeader.cjs.js");require("../../containers/ProjectTreeTable/widgets/LoadMoreWidget.cjs.js");require("../../containers/ProjectTreeTable/components/HeaderActionButton.cjs.js");require("../../containers/ProjectTreeTable/components/TableFooterRow.cjs.js");require("../../containers/EntityPickerDialog/EntityPickerDialog.cjs.js");require("../../containers/Slicer/components/Slicer.cjs.js");require("../../containers/Slicer/context/SlicerContext.cjs.js");require("../../containers/Slicer/hooks/useTableDataBySlice.cjs.js");require("../../containers/DetailsPanel/DetailsPanel.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelTabs/DetailsPanelTabs.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.styled.cjs.js");require("../PlayableIcon/PlayableIcon.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelMoreMenu/components/ShareDialog.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.styled.cjs.js");require("../../containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.styled.cjs.js");require("../../containers/Actions/Actions.styled.cjs.js");require("../../containers/Actions/ActionsDropdown/ActionsDropdown.cjs.js");require("../../containers/Actions/ActionIcon.cjs.js");require("../../containers/Views/ViewsMenu/ViewsMenu.cjs.js");require("../../containers/Views/context/ViewsContextInstance.cjs.js");require("../../containers/Views/Views.styled.cjs.js");require("../../containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js");require("../../containers/ListTable/ListTableRow.cjs.js");require("../../containers/ListTable/ListTable.styled.cjs.js");require("../EntityPanelUploader/EntityPanelUploader.styled.cjs.js");require("axios");require("../ReviewablesList/ReviewablesList.styled.cjs.js");require("../ReviewablesList/ReviewablesUpload.styled.cjs.js");require("../EntityPath/EntityPath.styled.cjs.js");require("../EntityPath/SegmentProvider.cjs.js");require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../Feedback/FeedbackContextInstance.cjs.js");require("../Feedback/SupportBubble.cjs.js");const C=require("../FileThumbnail/FileThumbnail.cjs.js");require("../LegacyBadge/LegacyBadge.cjs.js");require("../Powerpack/PowerpackButton.cjs.js");require("../Powerpack/FreeTrialLink.cjs.js");require("../Powerpack/PowerpackDialog.styled.cjs.js");require("../Powerpack/CTAButton.cjs.js");require("../Powerpack/RequiredAddonVersion.cjs.js");require("../ProjectTableSettings/ProjectTableSettings.cjs.js");require("../SizeSlider/SizeSlider.cjs.js");require("../ReviewableCard/ReviewableCard.cjs.js");require("../ReviewableProgressCard/ReviewableProgressCard.styled.cjs.js");require("../SettingsPanel/SettingsPanel.cjs.js");require("../SettingsPanel/SettingsPanelItemTemplate.cjs.js");require("../ShareOptionIcon/ShareOptionIcon.cjs.js");require("../SimpleFormDialog/SimpleFormDialog.cjs.js");require("../StyledLink/StyledLink.cjs.js");require("../TableGridSwitch/TableGridSwitch.cjs.js");require("../Thumbnail/Thumbnail.styled.cjs.js");require("../Thumbnail/StackedThumbnails.cjs.js");require("../ThumbnailSimple/ThumbnailSimple.cjs.js");require("../VersionUploader/components/UploadVersionDialog.cjs.js");require("../VersionUploader/context/VersionUploadContext.cjs.js");require("../Watchers/Watchers.cjs.js");require("../Menu/Menu.styled.cjs.js");require("../Menu/MenuItem.cjs.js");require("./ReviewablesSelector.cjs.js");require("../ColumnHeaderMenuUI.cjs.js");const t=require("./ReviewablesSelector.styled.cjs.js");function b({fileId:r,label:s,selected:n,projectName:o,onKeyDown:a,onMouseOver:c,onChange:x,tag:u,contextMenuItems:q,selectionVariant:l="primary"}){const[m]=j.useCreateContextMenu();return i.jsxRuntimeExports.jsxs(t.ReviewableCard,{id:"preview-"+r,onClick:e=>x?.(r,e.metaKey||e.ctrlKey),className:p("reviewable-card",{selected:n},l),onMouseOver:e=>c(e,{label:s}),onKeyDown:a,onContextMenu:e=>{q&&(e.preventDefault(),m(e,q))},tabIndex:0,children:[i.jsxRuntimeExports.jsx(C.FileThumbnail,{src:`/api/projects/${o}/files/${r}/thumbnail`}),u&&i.jsxRuntimeExports.jsx(t.Tag,{children:u})]},r)}module.exports=b;
2
2
  //# sourceMappingURL=Card.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Card.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","jsx","FileThumbnail","Styled.Tag"],"mappings":"izgBAqBA,SAAwBA,EAAK,CAC3B,OAAAC,EACA,MAAAC,EACA,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,YAAAC,EACA,SAAAC,EACA,IAAAC,EACA,iBAAAC,EACA,iBAAAC,EAAmB,SACrB,EAAwB,CACtB,KAAM,CAACC,CAAe,EAAIC,uBAAA,EAE1B,OACEC,EAAAA,kBAAAA,KAACC,EAAAA,eAAA,CAEC,GAAI,WAAab,EACjB,QAAUc,GAAUR,IAAWN,EAAQc,EAAM,SAAWA,EAAM,OAAO,EACrE,UAAWC,EAAK,kBAAmB,CAAE,SAAAb,CAAA,EAAYO,CAAgB,EACjE,YAAc,GAAMJ,EAAY,EAAG,CAAE,MAAAJ,EAAO,EAC5C,UAAAG,EACA,cAAgBU,GAAU,CACnBN,IAELM,EAAM,eAAA,EACNJ,EAAgBI,EAAON,CAAgB,EACzC,EACA,SAAU,EAEV,SAAA,CAAAQ,wBAACC,EAAAA,eAAc,IAAK,iBAAiBd,CAAW,UAAUH,CAAM,aAAc,EAE5EO,GAAOS,EAAAA,kBAAAA,IAACE,EAAAA,IAAA,CAAY,SAAAX,CAAA,CAAI,CAAA,CAAA,EAhBrBP,CAAA,CAoBX"}
1
+ {"version":3,"file":"Card.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","jsx","FileThumbnail","Styled.Tag"],"mappings":"49gBAqBA,SAAwBA,EAAK,CAC3B,OAAAC,EACA,MAAAC,EACA,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,YAAAC,EACA,SAAAC,EACA,IAAAC,EACA,iBAAAC,EACA,iBAAAC,EAAmB,SACrB,EAAwB,CACtB,KAAM,CAACC,CAAe,EAAIC,uBAAA,EAE1B,OACEC,EAAAA,kBAAAA,KAACC,EAAAA,eAAA,CAEC,GAAI,WAAab,EACjB,QAAUc,GAAUR,IAAWN,EAAQc,EAAM,SAAWA,EAAM,OAAO,EACrE,UAAWC,EAAK,kBAAmB,CAAE,SAAAb,CAAA,EAAYO,CAAgB,EACjE,YAAc,GAAMJ,EAAY,EAAG,CAAE,MAAAJ,EAAO,EAC5C,UAAAG,EACA,cAAgBU,GAAU,CACnBN,IAELM,EAAM,eAAA,EACNJ,EAAgBI,EAAON,CAAgB,EACzC,EACA,SAAU,EAEV,SAAA,CAAAQ,wBAACC,EAAAA,eAAc,IAAK,iBAAiBd,CAAW,UAAUH,CAAM,aAAc,EAE5EO,GAAOS,EAAAA,kBAAAA,IAACE,EAAAA,IAAA,CAAY,SAAAX,CAAA,CAAI,CAAA,CAAA,EAhBrBP,CAAA,CAoBX"}
@@ -80,6 +80,7 @@ import "../../api/queries/entities/updateEntity.es.js";
80
80
  import "../../api/queries/entityLists/getLists.es.js";
81
81
  import "../../api/queries/entityLists/updateLists.es.js";
82
82
  import "../../api/queries/entityLists/getListsAttributes.es.js";
83
+ import "../../api/queries/entityLists/listItemsColumnStats.es.js";
83
84
  import "../../api/queries/entityLists/updateListsAttributes.es.js";
84
85
  import "../../api/queries/entityLists/listFolders.es.js";
85
86
  import "../../api/queries/folders/getFolders.es.js";
@@ -188,10 +189,11 @@ import "../../containers/Feed/components/ActivityStatusChange/ActivityStatusChan
188
189
  import "../../containers/Feed/components/ActivityAssigneeChange/ActivityAssigneeChange.styled.es.js";
189
190
  import "../../containers/Feed/components/ActivityVersions/ActivityVersions.styled.es.js";
190
191
  import "../../containers/Feed/components/ActivityGroup/ActivityGroup.styled.es.js";
191
- import "../../containers/Feed/Feed.styled.es.js";
192
- import "../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
192
+ import "../../containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js";
193
193
  import "../../containers/Feed/components/ActivityCategorySelect/ActivityCategorySelect.es.js";
194
194
  import "../../containers/Feed/components/ActivityCategorySelect/CategoryDropdownItem.es.js";
195
+ import "../../containers/Feed/Feed.styled.es.js";
196
+ import "../../containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js";
195
197
  import "@tanstack/react-virtual";
196
198
  import "@tanstack/react-table";
197
199
  import "../../containers/ProjectTreeTable/widgets/CollapsedWidget.es.js";
@@ -284,7 +286,7 @@ import "../Menu/MenuItem.es.js";
284
286
  import "./ReviewablesSelector.es.js";
285
287
  import "../ColumnHeaderMenuUI.es.js";
286
288
  import { ReviewableCard as C, Tag as b } from "./ReviewablesSelector.styled.es.js";
287
- function gm({
289
+ function zm({
288
290
  fileId: o,
289
291
  label: p,
290
292
  selected: e,
@@ -318,6 +320,6 @@ function gm({
318
320
  );
319
321
  }
320
322
  export {
321
- gm as default
323
+ zm as default
322
324
  };
323
325
  //# sourceMappingURL=Card.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Card.es.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","e","jsx","FileThumbnail","Styled.Tag"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,SAAwBA,GAAK;AAAA,EAC3B,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,KAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC,IAAmB;AACrB,GAAwB;AACtB,QAAM,CAACC,CAAe,IAAIC,EAAA;AAE1B,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAAA,IAAA;AAAA,MAEC,IAAI,aAAab;AAAA,MACjB,SAAS,CAACc,MAAUR,IAAWN,GAAQc,EAAM,WAAWA,EAAM,OAAO;AAAA,MACrE,WAAWC,EAAK,mBAAmB,EAAE,UAAAb,EAAA,GAAYO,CAAgB;AAAA,MACjE,aAAa,CAACO,MAAMX,EAAYW,GAAG,EAAE,OAAAf,GAAO;AAAA,MAC5C,WAAAG;AAAA,MACA,eAAe,CAACU,MAAU;AACxB,QAAKN,MAELM,EAAM,eAAA,GACNJ,EAAgBI,GAAON,CAAgB;AAAA,MACzC;AAAA,MACA,UAAU;AAAA,MAEV,UAAA;AAAA,QAAAS,gBAAAA,MAACC,KAAc,KAAK,iBAAiBf,CAAW,UAAUH,CAAM,cAAc;AAAA,QAE5EO,KAAOU,gBAAAA,EAAAA,IAACE,GAAA,EAAY,UAAAZ,EAAA,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,IAhBrBP;AAAA,EAAA;AAoBX;"}
1
+ {"version":3,"file":"Card.es.js","sources":["../../../../../src/components/ReviewablesSelector/Card.tsx"],"sourcesContent":["import clsx from 'clsx'\nimport { FileThumbnail } from '@shared/components'\nimport { ReviewableModel } from '@shared/api'\nimport { ContextMenuItemType, useCreateContextMenu } from '@shared/containers'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { KeyboardEvent, MouseEvent } from 'react'\n\nexport type ReviewableCard = Pick<ReviewableModel, 'fileId' | 'label'> & {\n tag?: JSX.Element,\n contextMenuItems?: ContextMenuItemType[],\n selectionVariant?: 'primary' | 'tertiary',\n}\n\nexport type ReviewableCardProps = ReviewableCard & {\n projectName: string | null,\n selected: boolean,\n onChange?: (fileId: string, modifier?: boolean) => void,\n onKeyDown: (event: KeyboardEvent<HTMLDivElement>) => void,\n onMouseOver: (event: MouseEvent<HTMLDivElement>, { label }: { label?: string }) => void,\n}\n\nexport default function Card({\n fileId,\n label,\n selected,\n projectName,\n onKeyDown,\n onMouseOver,\n onChange,\n tag,\n contextMenuItems,\n selectionVariant = 'primary',\n}: ReviewableCardProps) {\n const [contextMenuShow] = useCreateContextMenu()\n\n return (\n <Styled.ReviewableCard\n key={fileId}\n id={'preview-' + fileId}\n onClick={(event) => onChange?.(fileId, event.metaKey || event.ctrlKey)}\n className={clsx('reviewable-card', { selected }, selectionVariant)}\n onMouseOver={(e) => onMouseOver(e, { label })}\n onKeyDown={onKeyDown}\n onContextMenu={(event) => {\n if (!contextMenuItems) return\n\n event.preventDefault()\n contextMenuShow(event, contextMenuItems)\n }}\n tabIndex={0}\n >\n <FileThumbnail src={`/api/projects/${projectName}/files/${fileId}/thumbnail`} />\n {\n tag && <Styled.Tag>{tag}</Styled.Tag>\n }\n </Styled.ReviewableCard>\n )\n}\n"],"names":["Card","fileId","label","selected","projectName","onKeyDown","onMouseOver","onChange","tag","contextMenuItems","selectionVariant","contextMenuShow","useCreateContextMenu","jsxs","Styled.ReviewableCard","event","clsx","e","jsx","FileThumbnail","Styled.Tag"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,SAAwBA,GAAK;AAAA,EAC3B,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,KAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC,IAAmB;AACrB,GAAwB;AACtB,QAAM,CAACC,CAAe,IAAIC,EAAA;AAE1B,SACEC,gBAAAA,EAAAA;AAAAA,IAACC;AAAAA,IAAA;AAAA,MAEC,IAAI,aAAab;AAAA,MACjB,SAAS,CAACc,MAAUR,IAAWN,GAAQc,EAAM,WAAWA,EAAM,OAAO;AAAA,MACrE,WAAWC,EAAK,mBAAmB,EAAE,UAAAb,EAAA,GAAYO,CAAgB;AAAA,MACjE,aAAa,CAACO,MAAMX,EAAYW,GAAG,EAAE,OAAAf,GAAO;AAAA,MAC5C,WAAAG;AAAA,MACA,eAAe,CAACU,MAAU;AACxB,QAAKN,MAELM,EAAM,eAAA,GACNJ,EAAgBI,GAAON,CAAgB;AAAA,MACzC;AAAA,MACA,UAAU;AAAA,MAEV,UAAA;AAAA,QAAAS,gBAAAA,MAACC,KAAc,KAAK,iBAAiBf,CAAW,UAAUH,CAAM,cAAc;AAAA,QAE5EO,KAAOU,gBAAAA,EAAAA,IAACE,GAAA,EAAY,UAAAZ,EAAA,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,IAhBrBP;AAAA,EAAA;AAoBX;"}
@@ -1,2 +1,2 @@
1
- "use strict";const l=require("../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),i=require("./ReviewablesSelector.styled.cjs.js"),y=require("./Card.cjs.js"),S=n.forwardRef(({reviewables:p=[],selected:w=[],projectName:b,onChange:u,onUpload:d},j)=>{const f=n.useRef(null),a=n.useRef(null),[m,c]=n.useState(null),[R,v]=n.useState(null),x=()=>a.current?.scrollTop||0,E=e=>{const o=a.current,t=document.getElementById("preview-"+e);if(!o||!t)return;const s=o.getBoundingClientRect(),r=t.getBoundingClientRect();r.top<s.top?o.scrollTop-=s.top-r.top:r.bottom>s.bottom&&(o.scrollTop+=r.bottom-s.bottom),f.current?.updateScroll?.()};n.useImperativeHandle(j,()=>({notifyNavigation:({fileId:e,label:o})=>{requestAnimationFrame(()=>E(e)),c(o??null);const t=document.getElementById("preview-"+e);if(t){const s=t.offsetTop+t.offsetHeight/2-x();v(s),t.focus({preventScroll:!0})}}}),[]),n.useEffect(()=>{const e=o=>{o.target.closest(".reviewables")||c(null)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]);const g=(e,{label:o})=>{const t=e.target.closest(".reviewable-card");if(!t)return;c(o??null);const s=t.offsetTop+t.offsetHeight/2-x();v(s)},T=e=>{if(e.key==="Enter"||e.key===" "){const o=e.target.closest(".reviewable-card");if(!o)return;const t=o.id.replace("preview-","");u&&u(t)}};return p.length?l.jsxRuntimeExports.jsxs(i.ReviewablesSelector,{children:[l.jsxRuntimeExports.jsxs(i.Scrollable,{className:"reviewables",ref:f,containerRef:e=>{a.current=e},children:[p.map(({fileId:e,label:o,tag:t,selectionVariant:s,contextMenuItems:r})=>l.jsxRuntimeExports.jsx(y,{projectName:b,fileId:e,label:o,selected:w.includes(e),selectionVariant:s,tag:t,contextMenuItems:r,onChange:u,onKeyDown:T,onMouseOver:g})),!!d&&l.jsxRuntimeExports.jsx(i.AddButton,{icon:"add",onClick:d,onMouseEnter:()=>c(null)})]}),m&&R&&l.jsxRuntimeExports.jsx(i.Label,{style:{top:R},children:m})]}):l.jsxRuntimeExports.jsx("div",{})});module.exports=S;
1
+ "use strict";const l=require("../../../../_virtual/jsx-runtime.cjs.js"),n=require("react"),i=require("./ReviewablesSelector.styled.cjs.js"),y=require("./Card.cjs.js"),S=n.forwardRef(({reviewables:p=[],selected:w=[],projectName:b,onChange:u,onUpload:d},j)=>{const f=n.useRef(null),a=n.useRef(null),[m,c]=n.useState(null),[R,v]=n.useState(null),x=()=>a.current?.scrollTop||0,E=e=>{const o=a.current,t=document.getElementById("preview-"+e);if(!o||!t)return;const s=o.getBoundingClientRect(),r=t.getBoundingClientRect();r.top<s.top?o.scrollTop-=s.top-r.top:r.bottom>s.bottom&&(o.scrollTop+=r.bottom-s.bottom),f.current?.updateScroll?.()};n.useImperativeHandle(j,()=>({notifyNavigation:({fileId:e,label:o})=>{requestAnimationFrame(()=>E(e)),c(o??null);const t=document.getElementById("preview-"+e);if(t){const s=t.offsetTop+t.offsetHeight/2-x();v(s),t.focus({preventScroll:!0})}}}),[]),n.useEffect(()=>{const e=o=>{o.target.closest(".reviewables")||c(null)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]);const g=(e,{label:o})=>{const t=e.target.closest(".reviewable-card");if(!t)return;c(o??null);const s=t.offsetTop+t.offsetHeight/2-x();v(s)},T=e=>{if(e.key==="Enter"||e.key===" "){const o=e.target.closest(".reviewable-card");if(!o)return;const t=o.id.replace("preview-","");u&&u(t)}};return p.length?l.jsxRuntimeExports.jsxs(i.ReviewablesSelector,{children:[l.jsxRuntimeExports.jsxs(i.Scrollable,{className:"reviewables",ref:f,containerRef:e=>{a.current=e},children:[p.map(({fileId:e,label:o,tag:t,selectionVariant:s,contextMenuItems:r})=>l.jsxRuntimeExports.jsx(y,{projectName:b,fileId:e,label:o,selected:w.includes(e),selectionVariant:s,tag:t,contextMenuItems:r,onChange:u,onKeyDown:T,onMouseOver:g},e)),!!d&&l.jsxRuntimeExports.jsx(i.AddButton,{icon:"add",onClick:d,onMouseEnter:()=>c(null)})]}),m&&R&&l.jsxRuntimeExports.jsx(i.Label,{style:{top:R},children:m})]}):l.jsxRuntimeExports.jsx("div",{})});module.exports=S;
2
2
  //# sourceMappingURL=ReviewablesSelector.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewablesSelector.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
1
+ {"version":3,"file":"ReviewablesSelector.cjs.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n key={fileId}\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
@@ -73,7 +73,8 @@ const K = E(({
73
73
  onChange: c,
74
74
  onKeyDown: y,
75
75
  onMouseOver: j
76
- }
76
+ },
77
+ e
77
78
  )),
78
79
  !!u && /* @__PURE__ */ n.jsx(
79
80
  M,
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewablesSelector.es.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
1
+ {"version":3,"file":"ReviewablesSelector.es.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport ScrollBar from 'react-perfect-scrollbar'\nimport Card, { ReviewableCard, ReviewableCardProps } from './Card'\n\ninterface ReviewablesSelectorProps {\n reviewables: ReviewableCard[]\n selected: string[]\n projectName: string | null\n onChange?: (fileId: string, modifier?: boolean) => void\n onUpload?: () => void\n}\n\nexport type ReviewablesSelectorHandle = {\n notifyNavigation: (next: { fileId: string; label?: string | null }) => void\n}\n\nconst ReviewablesSelector = forwardRef<ReviewablesSelectorHandle, ReviewablesSelectorProps>(({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}, ref) => {\n const scrollRef = useRef<ScrollBar>(null)\n const scrollContainerRef = useRef<HTMLElement | null>(null)\n const [labelTooltip, setLabelTooltip] = useState<null | string>(null)\n const [labelTooltipYPos, setLabelTooltipYPos] = useState<null | number>(null)\n\n const getScrollTop = (): number => {\n return scrollContainerRef.current?.scrollTop || 0\n }\n\n const scrollReviewableIntoView = (fileId: string) => {\n const container = scrollContainerRef.current\n const el = document.getElementById('preview-' + fileId)\n if (!container || !el) return\n\n const containerRect = container.getBoundingClientRect()\n const itemRect = el.getBoundingClientRect()\n\n if (itemRect.top < containerRect.top) {\n container.scrollTop -= containerRect.top - itemRect.top\n } else if (itemRect.bottom > containerRect.bottom) {\n container.scrollTop += itemRect.bottom - containerRect.bottom\n }\n\n // keep the custom scrollbar thumb in sync with manual scrollTop updates\n // @ts-ignore\n scrollRef.current?.updateScroll?.()\n }\n\n // Imperative hook for the parent: keyboard nav lives upstream so it works\n // in theatre mode (where this component is unmounted). When nav happens,\n // we still update scroll + tooltip via this handle.\n useImperativeHandle(\n ref,\n () => ({\n notifyNavigation: ({ fileId, label }) => {\n requestAnimationFrame(() => scrollReviewableIntoView(fileId))\n setLabelTooltip(label ?? null)\n const el = document.getElementById('preview-' + fileId)\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n el.focus({ preventScroll: true })\n }\n },\n }),\n [],\n )\n\n // keep track of when NOT hovering over the reviewable cards\n useEffect(() => {\n const handleMouseMove = (event: MouseEvent) => {\n // check if the mouse is over a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewables')\n if (!closest) {\n setLabelTooltip(null)\n }\n }\n\n window.addEventListener('mousemove', handleMouseMove)\n\n return () => {\n window.removeEventListener('mousemove', handleMouseMove)\n }\n }, [])\n\n const handleMouseOver = (\n event: React.MouseEvent<HTMLDivElement>,\n { label }: Pick<ReviewableCardProps, 'label'>,\n ) => {\n // check event is coming from a reviewable card\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n setLabelTooltip(label ?? null)\n // set label tooltip position\n const top = closest.offsetTop + closest.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n\n // select with enter or space key when focused on a reviewable card\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n const closest = (event.target as HTMLElement).closest('.reviewable-card') as HTMLElement\n if (!closest) return\n const fileId = closest.id.replace('preview-', '')\n onChange && onChange(fileId)\n }\n }\n\n // if no reviewables, return null\n if (!reviewables.length) return <div />\n\n return (\n <Styled.ReviewablesSelector>\n <Styled.Scrollable\n className=\"reviewables\"\n ref={scrollRef}\n containerRef={(el) => {\n scrollContainerRef.current = el\n }}\n >\n {reviewables.map(({ fileId, label, tag, selectionVariant, contextMenuItems }) => (\n <Card\n key={fileId}\n projectName={projectName}\n fileId={fileId}\n label={label}\n selected={selected.includes(fileId)}\n selectionVariant={selectionVariant}\n tag={tag}\n contextMenuItems={contextMenuItems}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n onMouseOver={handleMouseOver}\n />\n ))}\n {!!onUpload && (\n <Styled.AddButton\n icon=\"add\"\n onClick={onUpload}\n onMouseEnter={() => setLabelTooltip(null)}\n />\n )}\n </Styled.Scrollable>\n {labelTooltip && labelTooltipYPos && (\n <Styled.Label style={{ top: labelTooltipYPos }}>{labelTooltip}</Styled.Label>\n )}\n </Styled.ReviewablesSelector>\n )\n})\n\nexport default ReviewablesSelector\n"],"names":["ReviewablesSelector","forwardRef","reviewables","selected","projectName","onChange","onUpload","ref","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useImperativeHandle","label","top","useEffect","handleMouseMove","event","handleMouseOver","closest","handleKeyDown","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","tag","selectionVariant","contextMenuItems","jsx","Card","Styled.AddButton","Styled.Label"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=["status","tags","attributes","createdAt","updatedAt"],s={folder:[...e,"name","folderType"],task:[...e,"name","taskType","folderType","assignees"],version:[...e,"productType","productBaseType","author","version","hasReviewables","taskType","folderType"],product:[...e,"productName","productBaseType"],user:[...e]},d=(r,a)=>r.map(t=>({scope:t,filterTypes:s[t].filter(o=>!a?.[t]?.includes(o))}));exports.FILTER_TYPES_BY_SCOPE=s;exports.buildScopes=d;
2
+ //# sourceMappingURL=filterScopeRegistry.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterScopeRegistry.cjs.js","sources":["../../../../../src/components/SearchFilter/filterScopeRegistry.ts"],"sourcesContent":["import type { FilterFieldType, ScopeWithFilterTypes } from '@shared/components'\n\ntype ScopeType = ScopeWithFilterTypes['scope']\n\nconst BASE: FilterFieldType[] = ['status', 'tags', 'attributes', 'createdAt', 'updatedAt']\n\n// Single source of truth for which filter options each entity scope offers.\n// Pages differ only by which scopes they include, never by the field list per scope.\nexport const FILTER_TYPES_BY_SCOPE: Record<ScopeType, FilterFieldType[]> = {\n folder: [...BASE, 'name', 'folderType'],\n task: [...BASE, 'name', 'taskType', 'folderType', 'assignees'],\n version: [\n ...BASE,\n 'productType',\n 'productBaseType',\n 'author',\n 'version',\n 'hasReviewables',\n 'taskType',\n 'folderType',\n ],\n product: [...BASE, 'productName', 'productBaseType'],\n user: [...BASE],\n}\n\n// exclude lets a page subtract fields its backend endpoint cannot filter by,\n// but never add page-specific ones — additions belong in FILTER_TYPES_BY_SCOPE.\nexport const buildScopes = (\n scopes: ScopeType[],\n exclude?: Partial<Record<ScopeType, FilterFieldType[]>>,\n): ScopeWithFilterTypes[] =>\n scopes.map((scope) => ({\n scope,\n filterTypes: FILTER_TYPES_BY_SCOPE[scope].filter((t) => !exclude?.[scope]?.includes(t)),\n }))\n"],"names":["BASE","FILTER_TYPES_BY_SCOPE","buildScopes","scopes","exclude","scope","t"],"mappings":"gFAIA,MAAMA,EAA0B,CAAC,SAAU,OAAQ,aAAc,YAAa,WAAW,EAI5EC,EAA8D,CACzE,OAAQ,CAAC,GAAGD,EAAM,OAAQ,YAAY,EACtC,KAAM,CAAC,GAAGA,EAAM,OAAQ,WAAY,aAAc,WAAW,EAC7D,QAAS,CACP,GAAGA,EACH,cACA,kBACA,SACA,UACA,iBACA,WACA,YAAA,EAEF,QAAS,CAAC,GAAGA,EAAM,cAAe,iBAAiB,EACnD,KAAM,CAAC,GAAGA,CAAI,CAChB,EAIaE,EAAc,CACzBC,EACAC,IAEAD,EAAO,IAAKE,IAAW,CACrB,MAAAA,EACA,YAAaJ,EAAsBI,CAAK,EAAE,OAAQC,GAAM,CAACF,IAAUC,CAAK,GAAG,SAASC,CAAC,CAAC,CACxF,EAAE"}
@@ -0,0 +1,24 @@
1
+ const e = ["status", "tags", "attributes", "createdAt", "updatedAt"], p = {
2
+ folder: [...e, "name", "folderType"],
3
+ task: [...e, "name", "taskType", "folderType", "assignees"],
4
+ version: [
5
+ ...e,
6
+ "productType",
7
+ "productBaseType",
8
+ "author",
9
+ "version",
10
+ "hasReviewables",
11
+ "taskType",
12
+ "folderType"
13
+ ],
14
+ product: [...e, "productName", "productBaseType"],
15
+ user: [...e]
16
+ }, o = (s, a) => s.map((t) => ({
17
+ scope: t,
18
+ filterTypes: p[t].filter((r) => !a?.[t]?.includes(r))
19
+ }));
20
+ export {
21
+ p as FILTER_TYPES_BY_SCOPE,
22
+ o as buildScopes
23
+ };
24
+ //# sourceMappingURL=filterScopeRegistry.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterScopeRegistry.es.js","sources":["../../../../../src/components/SearchFilter/filterScopeRegistry.ts"],"sourcesContent":["import type { FilterFieldType, ScopeWithFilterTypes } from '@shared/components'\n\ntype ScopeType = ScopeWithFilterTypes['scope']\n\nconst BASE: FilterFieldType[] = ['status', 'tags', 'attributes', 'createdAt', 'updatedAt']\n\n// Single source of truth for which filter options each entity scope offers.\n// Pages differ only by which scopes they include, never by the field list per scope.\nexport const FILTER_TYPES_BY_SCOPE: Record<ScopeType, FilterFieldType[]> = {\n folder: [...BASE, 'name', 'folderType'],\n task: [...BASE, 'name', 'taskType', 'folderType', 'assignees'],\n version: [\n ...BASE,\n 'productType',\n 'productBaseType',\n 'author',\n 'version',\n 'hasReviewables',\n 'taskType',\n 'folderType',\n ],\n product: [...BASE, 'productName', 'productBaseType'],\n user: [...BASE],\n}\n\n// exclude lets a page subtract fields its backend endpoint cannot filter by,\n// but never add page-specific ones — additions belong in FILTER_TYPES_BY_SCOPE.\nexport const buildScopes = (\n scopes: ScopeType[],\n exclude?: Partial<Record<ScopeType, FilterFieldType[]>>,\n): ScopeWithFilterTypes[] =>\n scopes.map((scope) => ({\n scope,\n filterTypes: FILTER_TYPES_BY_SCOPE[scope].filter((t) => !exclude?.[scope]?.includes(t)),\n }))\n"],"names":["BASE","FILTER_TYPES_BY_SCOPE","buildScopes","scopes","exclude","scope","t"],"mappings":"AAIA,MAAMA,IAA0B,CAAC,UAAU,QAAQ,cAAc,aAAa,WAAW,GAI5EC,IAA8D;AAAA,EACzE,QAAQ,CAAC,GAAGD,GAAM,QAAQ,YAAY;AAAA,EACtC,MAAM,CAAC,GAAGA,GAAM,QAAQ,YAAY,cAAc,WAAW;AAAA,EAC7D,SAAS;AAAA,IACP,GAAGA;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAAA,EAEF,SAAS,CAAC,GAAGA,GAAM,eAAe,iBAAiB;AAAA,EACnD,MAAM,CAAC,GAAGA,CAAI;AAChB,GAIaE,IAAc,CACzBC,GACAC,MAEAD,EAAO,IAAI,CAACE,OAAW;AAAA,EACrB,OAAAA;AAAA,EACA,aAAaJ,EAAsBI,CAAK,EAAE,OAAO,CAACC,MAAM,CAACF,IAAUC,CAAK,GAAG,SAASC,CAAC,CAAC;AACxF,EAAE;"}