@ynput/ayon-frontend-shared 0.3.26 → 0.3.28

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 (672) hide show
  1. package/dist/DetailsPanel.cjs.js +1 -1
  2. package/dist/DetailsPanel.es.js +25 -23
  3. package/dist/DetailsPanel.es.js.map +1 -1
  4. package/dist/ProjectTreeTable.cjs.js +1 -1
  5. package/dist/ProjectTreeTable.es.js +404 -190
  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.cjs8.js +1 -1
  12. package/dist/_virtual/index.es14.js +5 -2
  13. package/dist/_virtual/index.es14.js.map +1 -1
  14. package/dist/_virtual/index.es8.js +2 -5
  15. package/dist/_virtual/index.es8.js.map +1 -1
  16. package/dist/api.cjs.js +1 -1
  17. package/dist/api.es.js +406 -402
  18. package/dist/api.es.js.map +1 -1
  19. package/dist/hooks.cjs.js +1 -1
  20. package/dist/hooks.es.js +15 -13
  21. package/dist/hooks.es.js.map +1 -1
  22. package/dist/index.cjs.js +1 -1
  23. package/dist/index.es.js +12 -10
  24. package/dist/index.es.js.map +1 -1
  25. package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
  26. package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
  27. package/dist/node_modules/remove-accents/index.cjs.js +1 -1
  28. package/dist/node_modules/remove-accents/index.cjs.js.map +1 -1
  29. package/dist/node_modules/remove-accents/index.es.js +1 -1
  30. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.cjs.js +1 -1
  31. package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/utils.es.js +1 -1
  32. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.cjs.js +1 -1
  33. package/dist/shared/node_modules/@module-federation/sdk/dist/utils.es.js +1 -1
  34. package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
  35. package/dist/shared/node_modules/react-is/index.es.js +1 -1
  36. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
  37. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +1 -1
  38. package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
  39. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
  40. package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js.map +1 -1
  41. package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
  42. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
  43. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js.map +1 -1
  44. package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
  45. package/dist/shared/src/api/base/client.cjs.js +1 -1
  46. package/dist/shared/src/api/base/client.cjs.js.map +1 -1
  47. package/dist/shared/src/api/base/client.es.js +1 -0
  48. package/dist/shared/src/api/base/client.es.js.map +1 -1
  49. package/dist/shared/src/api/generated/graphql.cjs.js +58 -36
  50. package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
  51. package/dist/shared/src/api/generated/graphql.es.js +125 -99
  52. package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
  53. package/dist/shared/src/api/generated/graphqlLinks.cjs.js +69 -9
  54. package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
  55. package/dist/shared/src/api/generated/graphqlLinks.es.js +95 -35
  56. package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
  57. package/dist/shared/src/api/generated/projectFolders.cjs.js.map +1 -1
  58. package/dist/shared/src/api/generated/projectFolders.es.js.map +1 -1
  59. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js +1 -1
  60. package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -1
  61. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js +20 -19
  62. package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -1
  63. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
  64. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
  65. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
  66. package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
  67. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js +2 -0
  68. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js.map +1 -0
  69. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js +64 -0
  70. package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js.map +1 -0
  71. package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
  72. package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
  73. package/dist/shared/src/api/queries/links/getLinks.es.js +27 -26
  74. package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
  75. package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
  76. package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
  77. package/dist/shared/src/api/queries/overview/getOverview.es.js +104 -103
  78. package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
  79. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
  80. package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
  81. package/dist/shared/src/api/queries/overview/updateOverview.es.js +118 -111
  82. package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
  83. package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
  84. package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
  85. package/dist/shared/src/api/queries/project/updateProject.es.js +43 -19
  86. package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
  87. package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
  88. package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
  89. package/dist/shared/src/api/queries/users/getUsers.es.js +22 -21
  90. package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
  91. package/dist/shared/src/api/queries/views/getViews.cjs.js +1 -1
  92. package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
  93. package/dist/shared/src/api/queries/views/getViews.es.js +24 -20
  94. package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
  95. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js +1 -1
  96. package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js.map +1 -1
  97. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js +89 -88
  98. package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js.map +1 -1
  99. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
  100. package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
  101. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
  102. package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
  103. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
  104. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
  105. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -2
  106. package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
  107. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
  108. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
  109. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
  110. package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
  111. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
  112. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
  113. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
  114. package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
  115. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
  116. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
  117. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
  118. package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
  119. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
  120. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
  121. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +9 -7
  122. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
  123. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
  124. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
  125. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +5 -3
  126. package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
  127. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
  128. package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
  129. package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
  130. package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
  131. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
  132. package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
  133. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
  134. package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
  135. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
  136. package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
  137. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
  138. package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
  139. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
  140. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
  141. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +9 -7
  142. package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
  143. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
  144. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
  145. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
  146. package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
  147. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
  148. package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
  149. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +5 -3
  150. package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
  151. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
  152. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
  153. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +46 -43
  154. package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
  155. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
  156. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
  157. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +5 -3
  158. package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
  159. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
  160. package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
  161. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +5 -3
  162. package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
  163. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
  164. package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
  165. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +23 -21
  166. package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
  167. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
  168. package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
  169. package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -7
  170. package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
  171. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
  172. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
  173. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
  174. package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
  175. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
  176. package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
  177. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -3
  178. package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
  179. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
  180. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
  181. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -4
  182. package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
  183. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
  184. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
  185. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +5 -3
  186. package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
  187. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
  188. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
  189. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
  190. package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
  191. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
  192. package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
  193. package/dist/shared/src/components/ReviewablesSelector/Card.es.js +5 -2
  194. package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
  195. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
  196. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
  197. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +67 -77
  198. package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
  199. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
  200. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
  201. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +192 -141
  202. package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
  203. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
  204. package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
  205. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +7 -5
  206. package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
  207. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
  208. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
  209. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +5 -3
  210. package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
  211. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
  212. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
  213. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
  214. package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
  215. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
  216. package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
  217. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +41 -44
  218. package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
  219. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +4 -4
  220. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
  221. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -3
  222. package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
  223. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
  224. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
  225. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +7 -5
  226. package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
  227. package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
  228. package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
  229. package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
  230. package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
  231. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
  232. package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
  233. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -3
  234. package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
  235. package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
  236. package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
  237. package/dist/shared/src/containers/Actions/Actions.es.js +5 -2
  238. package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
  239. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
  240. package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
  241. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -3
  242. package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
  243. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
  244. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
  245. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +5 -3
  246. package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
  247. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
  248. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
  249. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -3
  250. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
  251. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
  252. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
  253. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -3
  254. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
  255. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
  256. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
  257. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -3
  258. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
  259. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
  260. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
  261. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
  262. package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
  263. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
  264. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
  265. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -18
  266. package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
  267. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
  268. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
  269. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +5 -3
  270. package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
  271. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
  272. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
  273. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
  274. package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
  275. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
  276. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
  277. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +5 -2
  278. package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
  279. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
  280. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
  281. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +5 -2
  282. package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
  283. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
  284. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
  285. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +67 -64
  286. package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
  287. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
  288. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
  289. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +5 -3
  290. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
  291. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
  292. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
  293. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +5 -3
  294. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
  295. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
  296. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
  297. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +5 -3
  298. package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
  299. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
  300. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
  301. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +5 -2
  302. package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
  303. package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
  304. package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
  305. package/dist/shared/src/containers/Feed/Feed.es.js +5 -4
  306. package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
  307. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
  308. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
  309. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +5 -3
  310. package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
  311. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
  312. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
  313. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +5 -3
  314. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
  315. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
  316. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
  317. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +5 -3
  318. package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
  319. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
  320. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
  321. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -3
  322. package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
  323. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
  324. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
  325. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +9 -7
  326. package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
  327. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
  328. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
  329. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -3
  330. package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
  331. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
  332. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
  333. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
  334. package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
  335. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
  336. package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
  337. package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
  338. package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
  339. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
  340. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
  341. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
  342. package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
  343. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
  344. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
  345. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +565 -563
  346. package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
  347. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
  348. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
  349. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +61 -50
  350. package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
  351. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
  352. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
  353. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +9 -7
  354. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
  355. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
  356. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
  357. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +104 -102
  358. package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
  359. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js +10 -0
  360. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js.map +1 -0
  361. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js +25 -0
  362. package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js.map +1 -0
  363. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
  364. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
  365. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -3
  366. package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
  367. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
  368. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
  369. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +114 -112
  370. package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
  371. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
  372. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
  373. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
  374. package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
  375. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
  376. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
  377. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +8 -8
  378. package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
  379. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
  380. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
  381. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
  382. package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
  383. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
  384. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
  385. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +21 -19
  386. package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
  387. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
  388. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
  389. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +113 -111
  390. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
  391. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
  392. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
  393. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +109 -107
  394. package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
  395. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
  396. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
  397. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +106 -105
  398. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
  399. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
  400. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
  401. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +107 -105
  402. package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
  403. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
  404. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
  405. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +101 -99
  406. package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
  407. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
  408. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
  409. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +337 -40
  410. package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
  411. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
  412. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
  413. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +123 -119
  414. package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
  415. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
  416. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
  417. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +100 -98
  418. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
  419. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
  420. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
  421. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +125 -120
  422. package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
  423. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
  424. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
  425. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +103 -101
  426. package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
  427. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
  428. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
  429. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +9 -7
  430. package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
  431. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
  432. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
  433. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -7
  434. package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
  435. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
  436. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
  437. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +112 -110
  438. package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
  439. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
  440. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
  441. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +100 -98
  442. package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
  443. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
  444. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
  445. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +110 -108
  446. package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
  447. package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.cjs.js.map +1 -1
  448. package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.es.js.map +1 -1
  449. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
  450. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
  451. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +89 -356
  452. package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
  453. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
  454. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
  455. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +41 -39
  456. package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
  457. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +1 -1
  458. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
  459. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +29 -28
  460. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
  461. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
  462. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
  463. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +31 -32
  464. package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
  465. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
  466. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
  467. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -5
  468. package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
  469. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
  470. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
  471. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +98 -96
  472. package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
  473. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
  474. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
  475. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +5 -3
  476. package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
  477. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
  478. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
  479. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
  480. package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
  481. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
  482. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
  483. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -3
  484. package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
  485. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
  486. package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
  487. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +5 -3
  488. package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
  489. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
  490. package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
  491. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +5 -3
  492. package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
  493. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
  494. package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
  495. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +53 -49
  496. package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
  497. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
  498. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
  499. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
  500. package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
  501. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
  502. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
  503. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +9 -7
  504. package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
  505. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
  506. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
  507. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +21 -149
  508. package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
  509. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
  510. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
  511. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +54 -53
  512. package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
  513. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
  514. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
  515. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
  516. package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
  517. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
  518. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
  519. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +5 -2
  520. package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
  521. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
  522. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
  523. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +10 -8
  524. package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
  525. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
  526. package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
  527. package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
  528. package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
  529. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
  530. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
  531. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
  532. package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
  533. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
  534. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
  535. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +8 -5
  536. package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
  537. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
  538. package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
  539. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
  540. package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
  541. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
  542. package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
  543. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
  544. package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
  545. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
  546. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
  547. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +32 -26
  548. package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
  549. package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
  550. package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
  551. package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
  552. package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
  553. package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
  554. package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
  555. package/dist/shared/src/context/DetailsPanelContext.es.js +7 -4
  556. package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
  557. package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
  558. package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
  559. package/dist/shared/src/context/GlobalContext.es.js +5 -4
  560. package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
  561. package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
  562. package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
  563. package/dist/shared/src/context/PowerpackContext.es.js +9 -6
  564. package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
  565. package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
  566. package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
  567. package/dist/shared/src/context/ProjectContext.es.js +5 -4
  568. package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
  569. package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
  570. package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
  571. package/dist/shared/src/context/ProjectFoldersContext.es.js +7 -4
  572. package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
  573. package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
  574. package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
  575. package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
  576. package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
  577. package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
  578. package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
  579. package/dist/shared/src/context/SubtasksModulesContext.es.js +7 -4
  580. package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
  581. package/dist/shared/src/context/UriContext.cjs.js +1 -1
  582. package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
  583. package/dist/shared/src/context/UriContext.es.js +6 -5
  584. package/dist/shared/src/context/UriContext.es.js.map +1 -1
  585. package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
  586. package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
  587. package/dist/shared/src/context/WebsocketContext.es.js +7 -5
  588. package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
  589. package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
  590. package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
  591. package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
  592. package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
  593. package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
  594. package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
  595. package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
  596. package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
  597. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
  598. package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
  599. package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
  600. package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
  601. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
  602. package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
  603. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
  604. package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
  605. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +2 -0
  606. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -0
  607. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +31 -0
  608. package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -0
  609. package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
  610. package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
  611. package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
  612. package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
  613. package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
  614. package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
  615. package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
  616. package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
  617. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
  618. package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
  619. package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
  620. package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
  621. package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js +1 -1
  622. package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js.map +1 -1
  623. package/dist/shared/src/util/buildHierarchicalTableRows.es.js +43 -44
  624. package/dist/shared/src/util/buildHierarchicalTableRows.es.js.map +1 -1
  625. package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
  626. package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
  627. package/dist/shared/src/util/formatUTCDate.cjs.js +2 -0
  628. package/dist/shared/src/util/formatUTCDate.cjs.js.map +1 -0
  629. package/dist/shared/src/util/formatUTCDate.es.js +9 -0
  630. package/dist/shared/src/util/formatUTCDate.es.js.map +1 -0
  631. package/dist/shared/src/util/getProjectDisplayName.cjs.js +2 -0
  632. package/dist/shared/src/util/getProjectDisplayName.cjs.js.map +1 -0
  633. package/dist/shared/src/util/getProjectDisplayName.es.js +5 -0
  634. package/dist/shared/src/util/getProjectDisplayName.es.js.map +1 -0
  635. package/dist/types/api/generated/graphql.d.ts +38 -0
  636. package/dist/types/api/generated/graphqlLinks.d.ts +10 -4
  637. package/dist/types/api/generated/projectFolders.d.ts +1 -0
  638. package/dist/types/api/queries/activities/getActivities.d.ts +7 -0
  639. package/dist/types/api/queries/activities/updateActivities.d.ts +14 -0
  640. package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
  641. package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
  642. package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
  643. package/dist/types/api/queries/entityLists/getLists.d.ts +7 -0
  644. package/dist/types/api/queries/folders/getFolderDeleteInfo.d.ts +566 -0
  645. package/dist/types/api/queries/folders/index.d.ts +1 -0
  646. package/dist/types/api/queries/links/getLinks.d.ts +1 -0
  647. package/dist/types/api/queries/overview/getOverview.d.ts +7 -0
  648. package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
  649. package/dist/types/api/queries/users/getUsers.d.ts +7 -0
  650. package/dist/types/api/queries/versions/getVersionsProducts.d.ts +14 -0
  651. package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +1 -0
  652. package/dist/types/components/ReviewablesSelector/ReviewablesSelector.d.ts +7 -2
  653. package/dist/types/components/ReviewablesSelector/index.d.ts +1 -0
  654. package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +2 -1
  655. package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
  656. package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
  657. package/dist/types/containers/ProjectTreeTable/components/DeleteConfirmContent.d.ts +6 -0
  658. package/dist/types/containers/ProjectTreeTable/utils/expandRelativeDates.d.ts +1 -1
  659. package/dist/types/containers/Slicer/context/SlicerContext.d.ts +1 -0
  660. package/dist/types/containers/Slicer/hooks/useSlicerViewSync.d.ts +3 -7
  661. package/dist/types/containers/Views/utils/viewUpdateHelper.d.ts +2 -0
  662. package/dist/types/hooks/index.d.ts +1 -0
  663. package/dist/types/hooks/useReviewablesKeyboardNavigation.d.ts +13 -0
  664. package/dist/types/util/buildHierarchicalTableRows.d.ts +2 -0
  665. package/dist/types/util/confirmDelete.d.ts +1 -1
  666. package/dist/types/util/formatUTCDate.d.ts +1 -0
  667. package/dist/types/util/getProjectDisplayName.d.ts +6 -0
  668. package/dist/types/util/index.d.ts +1 -0
  669. package/dist/util.cjs.js +1 -1
  670. package/dist/util.es.js +23 -21
  671. package/dist/util.es.js.map +1 -1
  672. package/package.json +1 -1
@@ -82,6 +82,7 @@ import "../../api/queries/entityLists/getListsAttributes.es.js";
82
82
  import "../../api/queries/entityLists/updateListsAttributes.es.js";
83
83
  import "../../api/queries/entityLists/listFolders.es.js";
84
84
  import "../../api/queries/folders/getFolders.es.js";
85
+ import "../../api/queries/folders/getFolderDeleteInfo.es.js";
85
86
  import "../../api/queries/grouping/getGrouping.es.js";
86
87
  import "../../api/queries/links/updateLinks.es.js";
87
88
  import "../../api/queries/links/getLinks.es.js";
@@ -204,6 +205,7 @@ import "../../containers/ProjectTreeTable/context/SelectionCellsContext.es.js";
204
205
  import "../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
205
206
  import "../../containers/ProjectTreeTable/context/ClipboardContext.es.js";
206
207
  import "../../containers/ProjectTreeTable/context/ColumnSettingsContext.es.js";
208
+ import "../../containers/ProjectTreeTable/components/DeleteConfirmContent.es.js";
207
209
  import "../../containers/ProjectTreeTable/context/ProjectDataContext.es.js";
208
210
  import "../../../../_virtual/runtime.es.js";
209
211
  import "../../../../_virtual/semver.es.js";
@@ -268,8 +270,9 @@ import "../VersionUploader/context/VersionUploadContext.es.js";
268
270
  import "../Watchers/Watchers.es.js";
269
271
  import "../Menu/Menu.styled.es.js";
270
272
  import "../Menu/MenuItem.es.js";
273
+ import "./ReviewablesSelector.es.js";
271
274
  import { ReviewableCard as C, Tag as b } from "./ReviewablesSelector.styled.es.js";
272
- function wm({
275
+ function Mm({
273
276
  fileId: o,
274
277
  label: p,
275
278
  selected: e,
@@ -303,6 +306,6 @@ function wm({
303
306
  );
304
307
  }
305
308
  export {
306
- wm as default
309
+ Mm as default
307
310
  };
308
311
  //# 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 c=require("../../../../_virtual/jsx-runtime.cjs.js"),i=require("react"),d=require("./ReviewablesSelector.styled.cjs.js");require("lodash");require("react-toastify");require("uuid");const I=require("../../util/isHTMLElement.cjs.js");require("../../util/pubsub.cjs.js");const h=require("./Card.cjs.js"),k=({reviewables:r=[],selected:a=[],projectName:y,onChange:l,onUpload:w})=>{const R=i.useRef(null),f=i.useRef(null),[E,u]=i.useState(null),[g,v]=i.useState(null),b=()=>f.current?.scrollTop||0,T=t=>{const e=f.current,o=document.getElementById("preview-"+t);if(!e||!o)return;const n=e.getBoundingClientRect(),s=o.getBoundingClientRect();s.top<n.top?e.scrollTop-=n.top-s.top:s.bottom>n.bottom&&(e.scrollTop+=s.bottom-n.bottom),R.current?.updateScroll?.()};i.useEffect(()=>{if(r.length===1)return;const t=e=>{if(["w","s","ArrowUp","ArrowDown"].includes(e.key)){if(I(e.target)&&(e.target.tagName==="INPUT"||e.target.tagName==="TEXTAREA"||e.target.isContentEditable))return;const o=r.findIndex(({fileId:x})=>a.includes(x)),n=e.key==="w"||e.key==="ArrowUp"?o-1:o+1,s=r[n<0?r.length-1:n%r.length],p=s.fileId;l&&l(p),requestAnimationFrame(()=>T(p)),u(s.label??null);const m=document.getElementById("preview-"+p);if(m){const x=m.offsetTop+m.offsetHeight/2-b();v(x)}}};return window.addEventListener("keydown",t),()=>{window.removeEventListener("keydown",t)}},[a,r,l]),i.useEffect(()=>{const t=e=>{e.target.closest(".reviewables")||u(null)};return window.addEventListener("mousemove",t),()=>{window.removeEventListener("mousemove",t)}},[]);const j=(t,{label:e})=>{const o=t.target.closest(".reviewable-card");if(!o)return;u(e??null);const n=o.offsetTop+o.offsetHeight/2-b();v(n)},q=t=>{if(t.key==="Enter"||t.key===" "){const e=t.target.closest(".reviewable-card");if(!e)return;const o=e.id.replace("preview-","");l&&l(o)}};return r.length?c.jsxRuntimeExports.jsxs(d.ReviewablesSelector,{children:[c.jsxRuntimeExports.jsxs(d.Scrollable,{className:"reviewables",ref:R,containerRef:t=>{f.current=t},children:[r.map(({fileId:t,label:e,tag:o,selectionVariant:n,contextMenuItems:s})=>c.jsxRuntimeExports.jsx(h,{projectName:y,fileId:t,label:e,selected:a.includes(t),selectionVariant:n,tag:o,contextMenuItems:s,onChange:l,onKeyDown:q,onMouseOver:j})),!!w&&c.jsxRuntimeExports.jsx(d.AddButton,{icon:"add",onClick:w,onMouseEnter:()=>u(null)})]}),E&&g&&c.jsxRuntimeExports.jsx(d.Label,{style:{top:g},children:E})]}):c.jsxRuntimeExports.jsx("div",{})};module.exports=k;
1
+ "use strict";const r=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,x]=n.useState(null),v=()=>a.current?.scrollTop||0,E=e=>{const t=a.current,o=document.getElementById("preview-"+e);if(!t||!o)return;const s=t.getBoundingClientRect(),l=o.getBoundingClientRect();l.top<s.top?t.scrollTop-=s.top-l.top:l.bottom>s.bottom&&(t.scrollTop+=l.bottom-s.bottom),f.current?.updateScroll?.()};n.useImperativeHandle(j,()=>({notifyNavigation:({fileId:e,label:t})=>{requestAnimationFrame(()=>E(e)),c(t??null);const o=document.getElementById("preview-"+e);if(o){const s=o.offsetTop+o.offsetHeight/2-v();x(s)}}}),[]),n.useEffect(()=>{const e=t=>{t.target.closest(".reviewables")||c(null)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]);const g=(e,{label:t})=>{const o=e.target.closest(".reviewable-card");if(!o)return;c(t??null);const s=o.offsetTop+o.offsetHeight/2-v();x(s)},T=e=>{if(e.key==="Enter"||e.key===" "){const t=e.target.closest(".reviewable-card");if(!t)return;const o=t.id.replace("preview-","");u&&u(o)}};return p.length?r.jsxRuntimeExports.jsxs(i.ReviewablesSelector,{children:[r.jsxRuntimeExports.jsxs(i.Scrollable,{className:"reviewables",ref:f,containerRef:e=>{a.current=e},children:[p.map(({fileId:e,label:t,tag:o,selectionVariant:s,contextMenuItems:l})=>r.jsxRuntimeExports.jsx(y,{projectName:b,fileId:e,label:t,selected:w.includes(e),selectionVariant:s,tag:o,contextMenuItems:l,onChange:u,onKeyDown:T,onMouseOver:g})),!!d&&r.jsxRuntimeExports.jsx(i.AddButton,{icon:"add",onClick:d,onMouseEnter:()=>c(null)})]}),m&&R&&r.jsxRuntimeExports.jsx(i.Label,{style:{top:R},children:m})]}):r.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 { FC, useEffect, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { isHTMLElement } from '@shared/util'\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\nconst ReviewablesSelector: FC<ReviewablesSelectorProps> = ({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}) => {\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 // add keyboard support\n // use up and down arrow keys to navigate through the reviewables\n // if at top and press up, go to bottom, if at bottom and press down, go to top\n useEffect(() => {\n if (reviewables.length === 1) return\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (['w', 's', 'ArrowUp', 'ArrowDown'].includes(e.key)) {\n // Check if e.target is an HTMLElement before accessing tagName or isContentEditable\n if (isHTMLElement(e.target)) {\n if (e.target.tagName === 'INPUT' || e.target.tagName === 'TEXTAREA') return\n if (e.target.isContentEditable) return\n }\n\n const currentIndex = reviewables.findIndex(({ fileId }) => selected.includes(fileId))\n const nextIndex = e.key === 'w' || e.key === 'ArrowUp' ? currentIndex - 1 : currentIndex + 1\n const nextReviewable =\n reviewables[nextIndex < 0 ? reviewables.length - 1 : nextIndex % reviewables.length]\n const nextFileId = nextReviewable.fileId\n\n onChange && onChange(nextFileId)\n requestAnimationFrame(() => scrollReviewableIntoView(nextFileId))\n // also set new label for the tooltip\n setLabelTooltip(nextReviewable.label ?? null)\n // set label tooltip position\n const el = document.getElementById('preview-' + nextFileId)\n\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [selected, reviewables, onChange])\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={(ref) => {\n scrollContainerRef.current = ref\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","reviewables","selected","projectName","onChange","onUpload","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useEffect","handleKeyDown","isHTMLElement","currentIndex","nextIndex","nextReviewable","nextFileId","top","handleMouseMove","event","handleMouseOver","label","closest","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","ref","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 }\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,105 +1,95 @@
1
- import { j as c } from "../../../../_virtual/jsx-runtime.es.js";
2
- import { useRef as b, useState as E, useEffect as T } from "react";
3
- import { ReviewablesSelector as k, Scrollable as L, AddButton as A, Label as S } from "./ReviewablesSelector.styled.es.js";
4
- import "lodash";
5
- import "react-toastify";
6
- import "uuid";
7
- import M from "../../util/isHTMLElement.es.js";
8
- import "../../util/pubsub.es.js";
9
- import B from "./Card.es.js";
10
- const q = ({
11
- reviewables: l = [],
12
- selected: u = [],
13
- projectName: y,
14
- onChange: s,
15
- onUpload: p
16
- }) => {
17
- const w = b(null), d = b(null), [g, i] = E(null), [v, x] = E(null), R = () => d.current?.scrollTop || 0, I = (t) => {
18
- const e = d.current, o = document.getElementById("preview-" + t);
19
- if (!e || !o) return;
20
- const n = e.getBoundingClientRect(), r = o.getBoundingClientRect();
21
- r.top < n.top ? e.scrollTop -= n.top - r.top : r.bottom > n.bottom && (e.scrollTop += r.bottom - n.bottom), w.current?.updateScroll?.();
1
+ import { j as n } from "../../../../_virtual/jsx-runtime.es.js";
2
+ import { forwardRef as E, useRef as w, useState as b, useImperativeHandle as h, useEffect as S } from "react";
3
+ import { ReviewablesSelector as B, Scrollable as L, AddButton as M, Label as k } from "./ReviewablesSelector.styled.es.js";
4
+ import C from "./Card.es.js";
5
+ const K = E(({
6
+ reviewables: a = [],
7
+ selected: R = [],
8
+ projectName: g,
9
+ onChange: c,
10
+ onUpload: u
11
+ }, T) => {
12
+ const f = w(null), i = w(null), [d, r] = b(null), [p, m] = b(null), v = () => i.current?.scrollTop || 0, x = (e) => {
13
+ const t = i.current, o = document.getElementById("preview-" + e);
14
+ if (!t || !o) return;
15
+ const s = t.getBoundingClientRect(), l = o.getBoundingClientRect();
16
+ l.top < s.top ? t.scrollTop -= s.top - l.top : l.bottom > s.bottom && (t.scrollTop += l.bottom - s.bottom), f.current?.updateScroll?.();
22
17
  };
23
- T(() => {
24
- if (l.length === 1) return;
25
- const t = (e) => {
26
- if (["w", "s", "ArrowUp", "ArrowDown"].includes(e.key)) {
27
- if (M(e.target) && (e.target.tagName === "INPUT" || e.target.tagName === "TEXTAREA" || e.target.isContentEditable))
28
- return;
29
- const o = l.findIndex(({ fileId: m }) => u.includes(m)), n = e.key === "w" || e.key === "ArrowUp" ? o - 1 : o + 1, r = l[n < 0 ? l.length - 1 : n % l.length], a = r.fileId;
30
- s && s(a), requestAnimationFrame(() => I(a)), i(r.label ?? null);
31
- const f = document.getElementById("preview-" + a);
32
- if (f) {
33
- const m = f.offsetTop + f.offsetHeight / 2 - R();
34
- x(m);
18
+ h(
19
+ T,
20
+ () => ({
21
+ notifyNavigation: ({ fileId: e, label: t }) => {
22
+ requestAnimationFrame(() => x(e)), r(t ?? null);
23
+ const o = document.getElementById("preview-" + e);
24
+ if (o) {
25
+ const s = o.offsetTop + o.offsetHeight / 2 - v();
26
+ m(s);
35
27
  }
36
28
  }
29
+ }),
30
+ []
31
+ ), S(() => {
32
+ const e = (t) => {
33
+ t.target.closest(".reviewables") || r(null);
37
34
  };
38
- return window.addEventListener("keydown", t), () => {
39
- window.removeEventListener("keydown", t);
40
- };
41
- }, [u, l, s]), T(() => {
42
- const t = (e) => {
43
- e.target.closest(".reviewables") || i(null);
44
- };
45
- return window.addEventListener("mousemove", t), () => {
46
- window.removeEventListener("mousemove", t);
35
+ return window.addEventListener("mousemove", e), () => {
36
+ window.removeEventListener("mousemove", e);
47
37
  };
48
38
  }, []);
49
- const h = (t, { label: e }) => {
50
- const o = t.target.closest(".reviewable-card");
39
+ const j = (e, { label: t }) => {
40
+ const o = e.target.closest(".reviewable-card");
51
41
  if (!o) return;
52
- i(e ?? null);
53
- const n = o.offsetTop + o.offsetHeight / 2 - R();
54
- x(n);
55
- }, j = (t) => {
56
- if (t.key === "Enter" || t.key === " ") {
57
- const e = t.target.closest(".reviewable-card");
58
- if (!e) return;
59
- const o = e.id.replace("preview-", "");
60
- s && s(o);
42
+ r(t ?? null);
43
+ const s = o.offsetTop + o.offsetHeight / 2 - v();
44
+ m(s);
45
+ }, y = (e) => {
46
+ if (e.key === "Enter" || e.key === " ") {
47
+ const t = e.target.closest(".reviewable-card");
48
+ if (!t) return;
49
+ const o = t.id.replace("preview-", "");
50
+ c && c(o);
61
51
  }
62
52
  };
63
- return l.length ? /* @__PURE__ */ c.jsxs(k, { children: [
64
- /* @__PURE__ */ c.jsxs(
53
+ return a.length ? /* @__PURE__ */ n.jsxs(B, { children: [
54
+ /* @__PURE__ */ n.jsxs(
65
55
  L,
66
56
  {
67
57
  className: "reviewables",
68
- ref: w,
69
- containerRef: (t) => {
70
- d.current = t;
58
+ ref: f,
59
+ containerRef: (e) => {
60
+ i.current = e;
71
61
  },
72
62
  children: [
73
- l.map(({ fileId: t, label: e, tag: o, selectionVariant: n, contextMenuItems: r }) => /* @__PURE__ */ c.jsx(
74
- B,
63
+ a.map(({ fileId: e, label: t, tag: o, selectionVariant: s, contextMenuItems: l }) => /* @__PURE__ */ n.jsx(
64
+ C,
75
65
  {
76
- projectName: y,
77
- fileId: t,
78
- label: e,
79
- selected: u.includes(t),
80
- selectionVariant: n,
66
+ projectName: g,
67
+ fileId: e,
68
+ label: t,
69
+ selected: R.includes(e),
70
+ selectionVariant: s,
81
71
  tag: o,
82
- contextMenuItems: r,
83
- onChange: s,
84
- onKeyDown: j,
85
- onMouseOver: h
72
+ contextMenuItems: l,
73
+ onChange: c,
74
+ onKeyDown: y,
75
+ onMouseOver: j
86
76
  }
87
77
  )),
88
- !!p && /* @__PURE__ */ c.jsx(
89
- A,
78
+ !!u && /* @__PURE__ */ n.jsx(
79
+ M,
90
80
  {
91
81
  icon: "add",
92
- onClick: p,
93
- onMouseEnter: () => i(null)
82
+ onClick: u,
83
+ onMouseEnter: () => r(null)
94
84
  }
95
85
  )
96
86
  ]
97
87
  }
98
88
  ),
99
- g && v && /* @__PURE__ */ c.jsx(S, { style: { top: v }, children: g })
100
- ] }) : /* @__PURE__ */ c.jsx("div", {});
101
- };
89
+ d && p && /* @__PURE__ */ n.jsx(k, { style: { top: p }, children: d })
90
+ ] }) : /* @__PURE__ */ n.jsx("div", {});
91
+ });
102
92
  export {
103
- q as default
93
+ K as default
104
94
  };
105
95
  //# sourceMappingURL=ReviewablesSelector.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewablesSelector.es.js","sources":["../../../../../src/components/ReviewablesSelector/ReviewablesSelector.tsx"],"sourcesContent":["import { FC, useEffect, useRef, useState } from 'react'\nimport * as Styled from './ReviewablesSelector.styled'\nimport { isHTMLElement } from '@shared/util'\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\nconst ReviewablesSelector: FC<ReviewablesSelectorProps> = ({\n reviewables = [],\n selected = [],\n projectName,\n onChange,\n onUpload,\n}) => {\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 // add keyboard support\n // use up and down arrow keys to navigate through the reviewables\n // if at top and press up, go to bottom, if at bottom and press down, go to top\n useEffect(() => {\n if (reviewables.length === 1) return\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (['w', 's', 'ArrowUp', 'ArrowDown'].includes(e.key)) {\n // Check if e.target is an HTMLElement before accessing tagName or isContentEditable\n if (isHTMLElement(e.target)) {\n if (e.target.tagName === 'INPUT' || e.target.tagName === 'TEXTAREA') return\n if (e.target.isContentEditable) return\n }\n\n const currentIndex = reviewables.findIndex(({ fileId }) => selected.includes(fileId))\n const nextIndex = e.key === 'w' || e.key === 'ArrowUp' ? currentIndex - 1 : currentIndex + 1\n const nextReviewable =\n reviewables[nextIndex < 0 ? reviewables.length - 1 : nextIndex % reviewables.length]\n const nextFileId = nextReviewable.fileId\n\n onChange && onChange(nextFileId)\n requestAnimationFrame(() => scrollReviewableIntoView(nextFileId))\n // also set new label for the tooltip\n setLabelTooltip(nextReviewable.label ?? null)\n // set label tooltip position\n const el = document.getElementById('preview-' + nextFileId)\n\n if (el) {\n const top = el.offsetTop + el.offsetHeight / 2 - getScrollTop()\n setLabelTooltipYPos(top)\n }\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [selected, reviewables, onChange])\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={(ref) => {\n scrollContainerRef.current = ref\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","reviewables","selected","projectName","onChange","onUpload","scrollRef","useRef","scrollContainerRef","labelTooltip","setLabelTooltip","useState","labelTooltipYPos","setLabelTooltipYPos","getScrollTop","scrollReviewableIntoView","fileId","container","el","containerRect","itemRect","useEffect","handleKeyDown","isHTMLElement","currentIndex","nextIndex","nextReviewable","nextFileId","top","handleMouseMove","event","handleMouseOver","label","closest","jsxs","Styled.ReviewablesSelector","Styled.Scrollable","ref","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 }\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,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../../../../_virtual/jsx-runtime.cjs.js"),Q=require("lodash");require("react-toastify");const Y=require("../../util/getEntityTypeIcon.cjs.js"),O=require("../../util/getAttributeIcon.cjs.js");require("uuid");require("../../util/pubsub.cjs.js");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/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/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");const K=require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.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");const P=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 _=require("@ynput/ayon-react-components"),C=require("./filterDates.cjs.js"),J=require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/SubtasksModulesContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");const X=require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");const Z=({filterTypes:u=[],projectNames:t,scope:p,scopes:i,data:r,config:s,columnOrder:e=[],power:n})=>{let o=[];const c=i||(p?Array.isArray(p)?p:[p]:[]).map(d=>({scope:d,filterTypes:u})),h=c.length>1,S=c.some(b=>["entitySubType","status"].some(d=>b.filterTypes.includes(d))),E=c.some(b=>["assignees","users","author"].some(d=>b.filterTypes.includes(d))),A=b=>c.some(d=>d.filterTypes.includes(b)),{data:{groups:T=[]}={}}=K.useGetEntityGroupsQuery({entityType:"product",groupingKey:"productType",projectName:t[0],empty:!0},{skip:!t?.length||!A("productType")}),{data:x={}}=P.useGetProjectsInfoQuery({projects:t},{skip:!t?.length||!S}),{data:H=[]}=P.useGetKanbanProjectUsersQuery({projects:t},{skip:!t?.length||!E}),{attributes:M}=X.useGlobalContext(),G=b=>b.charAt(0).toUpperCase()+b.slice(1);return c.forEach(({scope:b,filterTypes:d})=>{const m=h?b:void 0,v=h?G(b):void 0;if(d.includes("taskType")&&b!=="user"){const a=w("taskType",{...s,enableOperatorChange:!1},m,v);if(a){let l=N({projectsInfo:x,productTypes:T},"task");a.values?.push(...l),o.push(a)}}if(d.includes("folderType")&&b!=="user"){const a=w("folderType",{...s,enableOperatorChange:!1},m,v);if(a){let l=N({projectsInfo:x,productTypes:T},"folder");a.values?.push(...l),o.push(a)}}if(d.includes("productType")&&b!=="user"){const a=w("productType",{...s,enableOperatorChange:!1},m,v);if(a){let l=N({projectsInfo:x,productTypes:T},"product");a.values?.push(...l),o.push(a)}}if(d.includes("productName")&&b==="product"){const a=w("productName",s,m,v);a&&(r.productNames?.forEach(l=>{a.values?.some(g=>g.id===l)||a.values?.push({id:l,label:l})}),o.push(a))}if(d.includes("status")){const a=w("status",{...s,enableOperatorChange:!1},m,v);a&&(Object.values(x).forEach(l=>{(l?.statuses||[]).filter(f=>f.scope?.includes(b)).forEach(f=>{a.values?.some(q=>q.id===f.name)||a.values?.push({id:f.name,label:f.name,icon:f.icon,color:f.color})})}),o.push(a))}if(d.includes("assignees")){const a=w("assignees",s,m,v);a&&(H.forEach(l=>{a.values?.some(g=>g.id===l.name)||a.values?.push({id:l.name,label:l.attrib.fullName||l.name,img:`/api/users/${l.name}/avatar`,icon:null})}),a.values?.sort((l,g)=>{const f=r.assignees?.filter(y=>y===l.id).length||0;return(r.assignees?.filter(y=>y===g.id).length||0)-f}),o.push(a))}if(d.includes("author")){const a=w("author",s,m,v);a&&(H.forEach(l=>{a.values?.some(g=>g.id===l.name)||a.values?.push({id:l.name,label:l.attrib.fullName||l.name,img:`/api/users/${l.name}/avatar`,icon:null})}),o.push(a))}if(d.includes("tags")){const a=w("tags",s,m,v);if(a){const l=new Map;Object.values(x).forEach(q=>{q?.tags&&q.tags.forEach(y=>{l.has(y.name)||l.set(y.name,y)})});const g=new Map;r.tags?.forEach(q=>{const y=g.get(q);if(y){y.count++;return}else{const V=l.get(q);g.set(q,{id:q,type:"string",label:q,values:[],color:V?.color||null,count:1})}});const f=Array.from(g.values()).sort((q,y)=>y.count-q.count);a.values?.push(...f),o.push(a)}}if(d.includes("version")){const a=w("version",s,m,v);a&&(J.FEATURED_VERSION_TYPES.forEach(l=>{a.values?.push({id:l.value,label:l.label,icon:l.icon})}),o.push(a))}if(d.includes("name")){const a=w("name",s,m,v);a&&o.push(a)}if(d.includes("hasReviewables")){const a=w("hasReviewables",s,m,v);if(a){const l=[{id:"true",label:"Yes",values:[]},{id:"false",label:"No",values:[]}];a.values?.push(...l),o.push(a)}}if(d.includes("createdAt")){const a=w("createdAt",s,m,v);a&&(a.values?.push(C.customRangeOption),a.values?.push(...C.generateDatePresetOptions().map(l=>({...l,contentAfter:n?void 0:I.jsxRuntimeExports.jsx(_.Icon,{icon:"bolt"})}))),o.push(a))}if(d.includes("updatedAt")){const a=w("updatedAt",s,m,v);a&&(a.values?.push(C.customRangeOption),a.values?.push(...C.generateDatePresetOptions().map(l=>({...l,contentAfter:n?void 0:I.jsxRuntimeExports.jsx(_.Icon,{icon:"bolt"})}))),o.push(a))}if(d.includes("attributes")){const a=M.filter(f=>f.scope?.includes(b)),l=Q.isEmpty(r.attributes)?a:a.filter(f=>r.attributes&&r.attributes[f.name]);(s?.enableRelativeValues?l:l.filter(f=>f.data.type!=="datetime")).forEach(f=>{const q=r.attributes&&r.attributes[f.name],y=f.data.enum,V=f.data.type,j=["list_of_strings","list_of_integers","list_of_any","list_of_submodels"].includes(V||""),$=V==="datetime",U=j?s?.enableOperatorChange:!1,L=j||$?s?.enableRelativeValues:!1,D=F(f,{...s,allowsCustomValues:!0,enableOperatorChange:U,enableRelativeValues:L},m,v),z=["string","integer","float","list_of_strings","list_of_integers"],R=[];if(z.includes(V)){const k=ee(q,y,V);R.push(...k)}if(V==="boolean"){const k=[{id:"true",label:"Yes",values:[]},{id:"false",label:"No",values:[]}];R.push(...k)}$&&(R.push(C.customRangeOption),R.push(...C.generateDatePresetOptions().map(k=>({...k,contentAfter:n?void 0:I.jsxRuntimeExports.jsx(_.Icon,{icon:"bolt"})})))),D.values?.push(...R),o.push(D)})}}),e?se(o,e):o},N=({projectsInfo:u,productTypes:t},p)=>{const i=[];return p==="product"?t.forEach(({icon:r,label:s,value:e})=>{i.push({id:e,type:"string",label:s||e,icon:r||Y.getEntityTypeIcon("product"),inverted:!1,values:[],allowsCustomValues:!1})}):p==="task"?Object.values(u).forEach(r=>{(r?.taskTypes||[]).forEach(e=>{i.some(n=>n.id===e.name)||i.push({id:e.name,type:"string",label:e.name,icon:e.icon,color:e.color,inverted:!1,values:[],allowsCustomValues:!1,pt:{style:{color:"inherit"}}})})}):p==="folder"&&Object.values(u).forEach(r=>{(r?.folderTypes||[]).forEach(e=>{i.some(n=>n.id===e.name)||i.push({id:e.name,type:"string",label:e.name,icon:e.icon,color:e.color,inverted:!1,values:[],allowsCustomValues:!1,pt:{style:{color:"inherit"}}})})}),i},W=(u,t,p,i)=>{const{prefixes:r,keys:s}=p||{};let e=u;return s&&t in s?e=`${s[t]}`:r&&t in r&&(e=`${r[t]}${u}`),i&&(e=`${i}_${e}`),e},B=(u,t)=>t?`${u} - ${t}`:u,w=(u,t,p,i)=>{const r=n=>W(n,u,t,p),s=n=>B(n,i);let e=null;switch(u){case"taskType":e={id:r("taskType"),type:"string",label:s("Task Type"),icon:O.getAttributeIcon("task"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"folderType":e={id:r("folderType"),type:"string",label:s("Folder Type"),icon:O.getAttributeIcon("folder"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"productType":e={id:r("productType"),type:"string",label:s("Product Type"),icon:O.getAttributeIcon("product"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"productName":e={id:r("productNames"),type:"string",label:s("Product Name"),icon:O.getAttributeIcon("productName","string"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!0};break;case"status":e={id:r("status"),type:"string",label:s("Status"),icon:O.getAttributeIcon("status"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"assignees":e={id:r("assignees"),type:"list_of_strings",label:s("Assignee"),icon:O.getAttributeIcon("assignees"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"author":e={id:r("author"),type:"string",label:s("Author"),icon:O.getAttributeIcon("author"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"tags":e={id:r("tags"),type:"list_of_strings",label:s("Tags"),icon:O.getAttributeIcon("tags"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"version":e={id:r("version"),type:"string",label:s("Version"),icon:O.getAttributeIcon("version"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1};break;case"name":e={id:r("name"),type:"string",label:s("Name"),icon:"text_fields",inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1};break;case"hasReviewables":e={id:r("hasReviewables"),type:"boolean",label:s("Has Reviewables"),icon:"play_circle",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1,singleSelect:!0};break;case"createdAt":e={id:r("createdAt"),type:"datetime",label:s("Created"),icon:"calendar_add_on",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1,singleSelect:!0};break;case"updatedAt":e={id:r("updatedAt"),type:"datetime",label:s("Updated"),icon:"edit_calendar",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1,singleSelect:!0};break}return e},F=(u,t,p,i)=>({id:W(u.name,"attributes",t,p),type:u.data.type,label:i?B(u.data.title||u.name,i):u.data.title||u.name,operator:"OR",inverted:!1,values:[],allowsCustomValues:t?.allowsCustomValues,allowHasValue:t.enableRelativeValues,allowNoValue:t.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange,icon:O.getAttributeIcon(u.name,u.data.type,!!u.data.enum?.length),singleSelect:["boolean","datetime"].includes(u.data.type||"")}),ee=(u,t,p)=>{const i=[],r=[];return t&&t.forEach(s=>{i.push({id:s.value.toString(),type:p,label:s.label,values:[],icon:s.icon,color:s.color,pt:{style:{color:"inherit"}}})}),u?.forEach(s=>{if(!s)return;let e="";switch(typeof s){case"string":case"number":case"boolean":e=s.toString();break;case"object":Array.isArray(s)?e=s.join(", "):e=JSON.stringify(s);break}const n=e.trim().toLowerCase().replace(/[^a-z0-9\s]/g,"").replace(/\s+/g,"-");if(i?.find(h=>h.id===n))return;const c=r.find(h=>h.id===n);if(c){c.count++;return}else r.push({id:n,type:p,label:e,values:[],count:1})}),r.sort((s,e)=>e.count-s.count),[...i,...r]},se=(u,t)=>{const p=t.flatMap(i=>i==="subType"?["taskType","folderType"]:i);return[...u].sort((i,r)=>{const s=p.indexOf(i.id.replace(".","_")),e=p.indexOf(r.id.replace(".","_"));return s!==-1&&e!==-1?s-e:s!==-1?-1:e!==-1?1:0})},ae=(u,t,p,i)=>{const r={folder:{conditions:[]},product:{conditions:[]},task:{conditions:[]},user:{conditions:[]},version:{conditions:[]},unscoped:{conditions:[]}};if(!u?.conditions||u?.conditions.length===0)return r;const s=(n,o)=>{const c=t.find(h=>n.startsWith(`${h}_`));if(c){const h=n.substring(`${c}_`.length);return{scope:c,cleanId:h}}else if(p?.fallbackScope)return{scope:p.fallbackScope,cleanId:n};return{scope:null,cleanId:n}},e=(n,o)=>{!n||n.length===0||n.forEach(c=>{if("conditions"in c&&!("key"in c))e(c.conditions,o);else if("key"in c){const{scope:h,cleanId:S}=s(c.key);if(h&&o[h])o[h].conditions?.push({...c,key:S});else if(!h){const E=i?.[c.key];E&&o[E]?o[E].conditions?.push(c):c.key===_.SEARCH_FILTER_ID||c.key==="name"||c.key?.endsWith("_name")?t.forEach(A=>{o[A]&&o[A].conditions?.push(c)}):o.unscoped?.conditions?.push(c)}}})};return e(u.conditions,r),r},te=(u,t,p)=>{const i={folder:[],product:[],task:[],user:[],version:[],unscoped:[]};if(!u||u.length===0)return i;const r=e=>t.find(o=>e.startsWith(`${o}_`))||null,s=(e,n)=>{const o=`${n}_`;return e.startsWith(o)?e.substring(o.length):e};return u.forEach(e=>{if(!e.id)return;const n=r(e.id);if(n){const o={...e,id:s(e.id,n)};i[n].push(o)}else{const o=p?.[e.id];o?i[o].push(e):i.unscoped.push(e)}}),i};exports.splitClientFiltersByScope=te;exports.splitFiltersByScope=ae;exports.useBuildFilterOptions=Z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("../../../../_virtual/jsx-runtime.cjs.js"),J=require("lodash");require("react-toastify");const W=require("../../util/getEntityTypeIcon.cjs.js"),O=require("../../util/getAttributeIcon.cjs.js");require("uuid");require("../../util/pubsub.cjs.js");require("../../api/base/client.cjs.js");require("../../api/generated/graphql.cjs.js");require("../../api/generated/graphqlLinks.cjs.js");require("../../api/generated/access.cjs.js");require("../../api/generated/actions.cjs.js");require("../../api/generated/activityFeed.cjs.js");require("../../api/generated/addons.cjs.js");require("../../api/generated/anatomy.cjs.js");require("../../api/generated/attributes.cjs.js");require("../../api/generated/authentication.cjs.js");require("../../api/generated/bundles.cjs.js");require("../../api/generated/configuration.cjs.js");require("../../api/generated/dataImport.cjs.js");require("../../api/generated/desktop.cjs.js");require("../../api/generated/entityLists.cjs.js");require("../../api/generated/events.cjs.js");require("../../api/generated/files.cjs.js");require("../../api/generated/folders.cjs.js");require("../../api/generated/inbox.cjs.js");require("../../api/generated/links.cjs.js");require("../../api/generated/market.cjs.js");require("../../api/generated/onboarding.cjs.js");require("../../api/generated/operations.cjs.js");require("../../api/generated/products.cjs.js");require("../../api/generated/projectDashboard.cjs.js");require("../../api/generated/projects.cjs.js");require("../../api/generated/projectFolders.cjs.js");require("../../api/generated/reviewables.cjs.js");require("../../api/generated/services.cjs.js");require("../../api/generated/system.cjs.js");require("../../api/generated/tasks.cjs.js");require("../../api/generated/teams.cjs.js");require("../../api/generated/thumbnails.cjs.js");require("../../api/generated/uRIs.cjs.js");require("../../api/generated/users.cjs.js");require("../../api/generated/versions.cjs.js");require("../../api/generated/workfiles.cjs.js");require("../../api/generated/ynputCloud.cjs.js");require("../../api/generated/grouping.cjs.js");require("../../api/generated/views.cjs.js");require("../../api/queries/actions/getActions.cjs.js");require("../../api/queries/activities/getActivities.cjs.js");require("../../api/queries/activities/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/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/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");const $=require("../../api/queries/grouping/getGrouping.cjs.js");require("../../api/queries/links/updateLinks.cjs.js");require("../../api/queries/links/getLinks.cjs.js");require("../../api/queries/links/getEntityLinks.cjs.js");require("../../api/queries/overview/getOverview.cjs.js");require("../../api/queries/overview/updateOverview.cjs.js");require("../../api/queries/versions/getVersionsProducts.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");const D=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 T=require("@ynput/ayon-react-components"),E=require("./filterDates.cjs.js"),X=require("../FeaturedVersionOrder/FeaturedVersionOrder.cjs.js");require("../../context/RemoteModulesContext.cjs.js");require("../../context/DetailsPanelContext.cjs.js");require("../../context/SubtasksModulesContext.cjs.js");require("../../context/ThumbnailUploaderContext.cjs.js");require("../../context/SettingsPanelContext.cjs.js");require("../../context/pip/PiPProvider.cjs.js");require("react-dom");require("../../context/pip/PiPWrapper.cjs.js");require("../../context/AddonProjectContext.cjs.js");require("../../context/AddonContext.cjs.js");require("../../context/PowerpackContext.cjs.js");require("../../context/MoveEntityContext.cjs.js");require("../../context/MenuContext.cjs.js");require("../../context/WebsocketContext.cjs.js");const Z=require("../../context/GlobalContext.cjs.js");require("../../context/ProjectContext.cjs.js");require("../../context/ProjectFoldersContext.cjs.js");require("../../context/UriContext.cjs.js");const F=({filterTypes:u=[],projectNames:t,scope:d,scopes:i,data:r,config:a,columnOrder:e=[],power:n})=>{let o=[];const c=i||(d?Array.isArray(d)?d:[d]:[]).map(f=>({scope:f,filterTypes:u})),y=c.length>1,_=c.some(b=>["entitySubType","status"].some(f=>b.filterTypes.includes(f))),C=c.some(b=>["assignees","users","author"].some(f=>b.filterTypes.includes(f))),x=b=>c.some(f=>f.filterTypes.includes(b)),{data:{groups:I=[]}={}}=$.useGetEntityGroupsQuery({entityType:"product",groupingKey:"productType",projectName:t[0],empty:!0},{skip:!t?.length||!x("productType")}),{data:{groups:U=[]}={}}=$.useGetEntityGroupsQuery({entityType:"product",groupingKey:"productBaseType",projectName:t[0],empty:!0},{skip:!t?.length||!x("productBaseType")}),{data:R={}}=D.useGetProjectsInfoQuery({projects:t},{skip:!t?.length||!_}),{data:B=[]}=D.useGetKanbanProjectUsersQuery({projects:t},{skip:!t?.length||!C}),{attributes:L}=Z.useGlobalContext(),Q=b=>b.charAt(0).toUpperCase()+b.slice(1);return c.forEach(({scope:b,filterTypes:f})=>{const v=y?b:void 0,m=y?Q(b):void 0;if(f.includes("taskType")&&b!=="user"){const s=w("taskType",{...a,enableOperatorChange:!1},v,m);if(s){let l=N({projectsInfo:R,productTypes:I},"task");s.values?.push(...l),o.push(s)}}if(f.includes("folderType")&&b!=="user"){const s=w("folderType",{...a,enableOperatorChange:!1},v,m);if(s){let l=N({projectsInfo:R,productTypes:I},"folder");s.values?.push(...l),o.push(s)}}if(f.includes("productType")&&b!=="user"){const s=w("productType",{...a,enableOperatorChange:!1},v,m);if(s){let l=N({projectsInfo:R,productTypes:I},"product");s.values?.push(...l),o.push(s)}}if(f.includes("productBaseType")&&b!=="user"){const s=w("productBaseType",{...a,enableOperatorChange:!1},v,m);s&&(U.forEach(({icon:l,label:h,value:p})=>{s.values?.some(q=>q.id===p)||s.values?.push({id:p,type:"string",label:h||p,icon:l||W.getEntityTypeIcon("product"),inverted:!1,values:[]})}),r.productBaseTypes?.forEach(l=>{s.values?.some(h=>h.id===l)||s.values?.push({id:l,label:l})}),o.push(s))}if(f.includes("productName")&&b==="product"){const s=w("productName",a,v,m);s&&(r.productNames?.forEach(l=>{s.values?.some(h=>h.id===l)||s.values?.push({id:l,label:l})}),o.push(s))}if(f.includes("status")){const s=w("status",{...a,enableOperatorChange:!1},v,m);s&&(Object.values(R).forEach(l=>{(l?.statuses||[]).filter(p=>p.scope?.includes(b)).forEach(p=>{s.values?.some(q=>q.id===p.name)||s.values?.push({id:p.name,label:p.name,icon:p.icon,color:p.color})})}),o.push(s))}if(f.includes("assignees")){const s=w("assignees",a,v,m);s&&(B.forEach(l=>{s.values?.some(h=>h.id===l.name)||s.values?.push({id:l.name,label:l.attrib.fullName||l.name,img:`/api/users/${l.name}/avatar`,icon:null})}),s.values?.sort((l,h)=>{const p=r.assignees?.filter(g=>g===l.id).length||0;return(r.assignees?.filter(g=>g===h.id).length||0)-p}),o.push(s))}if(f.includes("author")){const s=w("author",a,v,m);s&&(B.forEach(l=>{s.values?.some(h=>h.id===l.name)||s.values?.push({id:l.name,label:l.attrib.fullName||l.name,img:`/api/users/${l.name}/avatar`,icon:null})}),o.push(s))}if(f.includes("tags")){const s=w("tags",a,v,m);if(s){const l=new Map;Object.values(R).forEach(q=>{q?.tags&&q.tags.forEach(g=>{l.has(g.name)||l.set(g.name,g)})});const h=new Map;r.tags?.forEach(q=>{const g=h.get(q);if(g){g.count++;return}else{const V=l.get(q);h.set(q,{id:q,type:"string",label:q,values:[],color:V?.color||null,count:1})}});const p=Array.from(h.values()).sort((q,g)=>g.count-q.count);s.values?.push(...p),o.push(s)}}if(f.includes("version")){const s=w("version",a,v,m);s&&(X.FEATURED_VERSION_TYPES.forEach(l=>{s.values?.push({id:l.value,label:l.label,icon:l.icon})}),o.push(s))}if(f.includes("name")){const s=w("name",a,v,m);s&&o.push(s)}if(f.includes("hasReviewables")){const s=w("hasReviewables",a,v,m);if(s){const l=[{id:"true",label:"Yes",values:[]},{id:"false",label:"No",values:[]}];s.values?.push(...l),o.push(s)}}if(f.includes("createdAt")){const s=w("createdAt",a,v,m);s&&(s.values?.push(E.customRangeOption),s.values?.push(...E.generateDatePresetOptions().map(l=>({...l,contentAfter:n?void 0:S.jsxRuntimeExports.jsx(T.Icon,{icon:"bolt"})}))),o.push(s))}if(f.includes("updatedAt")){const s=w("updatedAt",a,v,m);s&&(s.values?.push(E.customRangeOption),s.values?.push(...E.generateDatePresetOptions().map(l=>({...l,contentAfter:n?void 0:S.jsxRuntimeExports.jsx(T.Icon,{icon:"bolt"})}))),o.push(s))}if(f.includes("attributes")){const s=L.filter(p=>p.scope?.includes(b)),l=J.isEmpty(r.attributes)?s:s.filter(p=>r.attributes&&r.attributes[p.name]);(a?.enableRelativeValues?l:l.filter(p=>p.data.type!=="datetime")).forEach(p=>{const q=r.attributes&&r.attributes[p.name],g=p.data.enum,V=p.data.type,H=["list_of_strings","list_of_integers","list_of_any","list_of_submodels"].includes(V||""),j=V==="datetime",z=H?a?.enableOperatorChange:!1,K=H||j?a?.enableRelativeValues:!1,P=ee(p,{...a,allowsCustomValues:!0,enableOperatorChange:z,enableRelativeValues:K},v,m),Y=["string","integer","float","list_of_strings","list_of_integers"],k=[];if(Y.includes(V)){const A=se(q,g,V);k.push(...A)}if(V==="boolean"){const A=[{id:"true",label:"Yes",values:[]},{id:"false",label:"No",values:[]}];k.push(...A)}j&&(k.push(E.customRangeOption),k.push(...E.generateDatePresetOptions().map(A=>({...A,contentAfter:n?void 0:S.jsxRuntimeExports.jsx(T.Icon,{icon:"bolt"})})))),P.values?.push(...k),o.push(P)})}}),e?ae(o,e):o},N=({projectsInfo:u,productTypes:t},d)=>{const i=[];return d==="product"?t.forEach(({icon:r,label:a,value:e})=>{i.push({id:e,type:"string",label:a||e,icon:r||W.getEntityTypeIcon("product"),inverted:!1,values:[],allowsCustomValues:!1})}):d==="task"?Object.values(u).forEach(r=>{(r?.taskTypes||[]).forEach(e=>{i.some(n=>n.id===e.name)||i.push({id:e.name,type:"string",label:e.name,icon:e.icon,color:e.color,inverted:!1,values:[],allowsCustomValues:!1,pt:{style:{color:"inherit"}}})})}):d==="folder"&&Object.values(u).forEach(r=>{(r?.folderTypes||[]).forEach(e=>{i.some(n=>n.id===e.name)||i.push({id:e.name,type:"string",label:e.name,icon:e.icon,color:e.color,inverted:!1,values:[],allowsCustomValues:!1,pt:{style:{color:"inherit"}}})})}),i},G=(u,t,d,i)=>{const{prefixes:r,keys:a}=d||{};let e=u;return a&&t in a?e=`${a[t]}`:r&&t in r&&(e=`${r[t]}${u}`),i&&(e=`${i}_${e}`),e},M=(u,t)=>t?`${u} - ${t}`:u,w=(u,t,d,i)=>{const r=n=>G(n,u,t,d),a=n=>M(n,i);let e=null;switch(u){case"taskType":e={id:r("taskType"),type:"string",label:a("Task Type"),icon:O.getAttributeIcon("task"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"folderType":e={id:r("folderType"),type:"string",label:a("Folder Type"),icon:O.getAttributeIcon("folder"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"productType":e={id:r("productType"),type:"string",label:a("Product Type"),icon:O.getAttributeIcon("product"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"productBaseType":e={id:r("productBaseType"),type:"string",label:a("Product Base Type"),icon:O.getAttributeIcon("product"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"productName":e={id:r("productNames"),type:"string",label:a("Product Name"),icon:O.getAttributeIcon("productName","string"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!0};break;case"status":e={id:r("status"),type:"string",label:a("Status"),icon:O.getAttributeIcon("status"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1};break;case"assignees":e={id:r("assignees"),type:"list_of_strings",label:a("Assignee"),icon:O.getAttributeIcon("assignees"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"author":e={id:r("author"),type:"string",label:a("Author"),icon:O.getAttributeIcon("author"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"tags":e={id:r("tags"),type:"list_of_strings",label:a("Tags"),icon:O.getAttributeIcon("tags"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:t?.enableRelativeValues,allowNoValue:t?.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange};break;case"version":e={id:r("version"),type:"string",label:a("Version"),icon:O.getAttributeIcon("version"),inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1};break;case"name":e={id:r("name"),type:"string",label:a("Name"),icon:"text_fields",inverted:!1,operator:"OR",values:[],allowsCustomValues:!0,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1};break;case"hasReviewables":e={id:r("hasReviewables"),type:"boolean",label:a("Has Reviewables"),icon:"play_circle",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:t?.enableExcludes,operatorChangeable:!1,singleSelect:!0};break;case"createdAt":e={id:r("createdAt"),type:"datetime",label:a("Created"),icon:"calendar_add_on",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1,singleSelect:!0};break;case"updatedAt":e={id:r("updatedAt"),type:"datetime",label:a("Updated"),icon:"edit_calendar",inverted:!1,operator:"OR",values:[],allowsCustomValues:!1,allowHasValue:!1,allowNoValue:!1,allowExcludes:!1,operatorChangeable:!1,singleSelect:!0};break}return e},ee=(u,t,d,i)=>({id:G(u.name,"attributes",t,d),type:u.data.type,label:i?M(u.data.title||u.name,i):u.data.title||u.name,operator:"OR",inverted:!1,values:[],allowsCustomValues:t?.allowsCustomValues,allowHasValue:t.enableRelativeValues,allowNoValue:t.enableRelativeValues,allowExcludes:t?.enableExcludes,operatorChangeable:t?.enableOperatorChange,icon:O.getAttributeIcon(u.name,u.data.type,!!u.data.enum?.length),singleSelect:["boolean","datetime"].includes(u.data.type||"")}),se=(u,t,d)=>{const i=[],r=[];return t&&t.forEach(a=>{i.push({id:a.value.toString(),type:d,label:a.label,values:[],icon:a.icon,color:a.color,pt:{style:{color:"inherit"}}})}),u?.forEach(a=>{if(!a)return;let e="";switch(typeof a){case"string":case"number":case"boolean":e=a.toString();break;case"object":Array.isArray(a)?e=a.join(", "):e=JSON.stringify(a);break}const n=e.trim().toLowerCase().replace(/[^a-z0-9\s]/g,"").replace(/\s+/g,"-");if(i?.find(y=>y.id===n))return;const c=r.find(y=>y.id===n);if(c){c.count++;return}else r.push({id:n,type:d,label:e,values:[],count:1})}),r.sort((a,e)=>e.count-a.count),[...i,...r]},ae=(u,t)=>{const d=t.flatMap(i=>i==="subType"?["taskType","folderType"]:i);return[...u].sort((i,r)=>{const a=d.indexOf(i.id.replace(".","_")),e=d.indexOf(r.id.replace(".","_"));return a!==-1&&e!==-1?a-e:a!==-1?-1:e!==-1?1:0})},te=(u,t,d,i)=>{const r={folder:{conditions:[]},product:{conditions:[]},task:{conditions:[]},user:{conditions:[]},version:{conditions:[]},unscoped:{conditions:[]}};if(!u?.conditions||u?.conditions.length===0)return r;const a=(n,o)=>{const c=t.find(y=>n.startsWith(`${y}_`));if(c){const y=n.substring(`${c}_`.length);return{scope:c,cleanId:y}}else if(d?.fallbackScope)return{scope:d.fallbackScope,cleanId:n};return{scope:null,cleanId:n}},e=(n,o)=>{!n||n.length===0||n.forEach(c=>{if("conditions"in c&&!("key"in c))e(c.conditions,o);else if("key"in c){const{scope:y,cleanId:_}=a(c.key);if(y&&o[y])o[y].conditions?.push({...c,key:_});else if(!y){const C=i?.[c.key];C&&o[C]?o[C].conditions?.push(c):c.key===T.SEARCH_FILTER_ID||c.key==="name"||c.key?.endsWith("_name")?t.forEach(x=>{o[x]&&o[x].conditions?.push(c)}):o.unscoped?.conditions?.push(c)}}})};return e(u.conditions,r),r},re=(u,t,d)=>{const i={folder:[],product:[],task:[],user:[],version:[],unscoped:[]};if(!u||u.length===0)return i;const r=e=>t.find(o=>e.startsWith(`${o}_`))||null,a=(e,n)=>{const o=`${n}_`;return e.startsWith(o)?e.substring(o.length):e};return u.forEach(e=>{if(!e.id)return;const n=r(e.id);if(n){const o={...e,id:a(e.id,n)};i[n].push(o)}else{const o=d?.[e.id];o?i[o].push(e):i.unscoped.push(e)}}),i};exports.splitClientFiltersByScope=re;exports.splitFiltersByScope=te;exports.useBuildFilterOptions=F;
2
2
  //# sourceMappingURL=useBuildFilterOptions.cjs.js.map