@ynput/ayon-frontend-shared 0.3.27 → 0.3.29
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.
- package/dist/DetailsPanel.cjs.js +1 -1
- package/dist/DetailsPanel.es.js +25 -23
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +404 -190
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +19 -18
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs22.js +1 -1
- package/dist/_virtual/index.cjs23.js +1 -1
- package/dist/_virtual/index.cjs24.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.es22.js +3 -3
- package/dist/_virtual/index.es23.js +5 -5
- package/dist/_virtual/index.es24.js +5 -5
- package/dist/_virtual/index.es6.js +2 -2
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +406 -402
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +34 -33
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.es.js +15 -13
- package/dist/hooks.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +12 -10
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/unified/lib/index.es.js +2 -2
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype/node_modules/vfile/lib/index.es.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.cjs.js +1 -1
- package/dist/node_modules/rehype-parse/lib/index.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
- package/dist/shared/node_modules/react-is/index.es.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js.map +1 -1
- package/dist/shared/src/api/base/client.es.js +1 -0
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +58 -36
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +125 -99
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js +69 -9
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js +95 -35
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/generated/projectFolders.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/projectFolders.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js +20 -19
- package/dist/shared/src/api/queries/entities/patchDetailsPanel.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js +4 -3
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js +2 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js +64 -0
- package/dist/shared/src/api/queries/folders/getFolderDeleteInfo.es.js.map +1 -0
- package/dist/shared/src/api/queries/links/getLinks.cjs.js +1 -1
- package/dist/shared/src/api/queries/links/getLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/links/getLinks.es.js +27 -26
- package/dist/shared/src/api/queries/links/getLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/getOverview.es.js +104 -103
- package/dist/shared/src/api/queries/overview/getOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/overview/updateOverview.es.js +118 -111
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/project/updateProject.cjs.js +1 -1
- package/dist/shared/src/api/queries/project/updateProject.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/project/updateProject.es.js +43 -19
- package/dist/shared/src/api/queries/project/updateProject.es.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +22 -21
- package/dist/shared/src/api/queries/users/getUsers.es.js.map +1 -1
- package/dist/shared/src/api/queries/views/getViews.cjs.js +1 -1
- package/dist/shared/src/api/queries/views/getViews.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/views/getViews.es.js +24 -20
- package/dist/shared/src/api/queries/views/getViews.es.js.map +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.cjs.js.map +1 -1
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js +89 -88
- package/dist/shared/src/components/DateRangePicker/DateRangePicker.es.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -2
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +5 -2
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js +162 -138
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploader.es.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js +5 -3
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.cjs.js.map +1 -1
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js +5 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js +9 -7
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js +5 -3
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PricingLink.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PricingLink.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PricingLink.es.js +5 -5
- package/dist/shared/src/components/Powerpack/PricingLink.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +2 -2
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +46 -43
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js +5 -3
- package/dist/shared/src/components/ProjectTableSettings/TableSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js +5 -3
- package/dist/shared/src/components/RemotePage/ProjectPageRemote.es.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js +9 -7
- package/dist/shared/src/components/RemotePage/RemotePageWrapper.es.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.cjs.js.map +1 -1
- package/dist/shared/src/components/RenameForm/RenameForm.es.js +9 -7
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +5 -3
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js +6 -4
- package/dist/shared/src/components/ReviewablesList/ReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js +5 -3
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +5 -2
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +69 -79
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js +192 -141
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js +7 -5
- package/dist/shared/src/components/SimpleFormDialog/FormFile.es.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js +5 -3
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js +41 -44
- package/dist/shared/src/components/Thumbnail/Thumbnail.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +4 -4
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +5 -3
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js +103 -100
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +5 -3
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/Actions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/Actions.es.js +5 -2
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +5 -3
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/DetailsPanel.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFiles/DetailsPanelFiles.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelFloating/DetailsPanelFloating.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js +3 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +20 -18
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js +5 -2
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +2 -2
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +67 -64
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js +26 -24
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTable.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js +5 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js +5 -3
- package/dist/shared/src/containers/EntityPickerDialog/components/EntityTypeTableSearch.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js +5 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +6 -5
- package/dist/shared/src/containers/Feed/Feed.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/ActivityCheckbox/ActivityCheckbox.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityComment.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js +9 -7
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js +5 -3
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +565 -563
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js +61 -50
- package/dist/shared/src/containers/ProjectTreeTable/buildTreeTableColumns.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js +9 -7
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +104 -102
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js +10 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js +25 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/DeleteConfirmContent.es.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js +5 -3
- package/dist/shared/src/containers/ProjectTreeTable/components/GroupSettingsFallback.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js +114 -112
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +3 -3
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +8 -8
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js +21 -19
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js +113 -111
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildGroupByTableData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js +109 -107
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js +106 -105
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCellContextMenu.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js +107 -105
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useCheckSelectedCellsVisible.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js +101 -99
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useColumnGroupBy.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js +337 -40
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useDeleteEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js +123 -119
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useFetchOverviewData.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js +100 -98
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGetGroupedFields.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js +125 -120
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useGroupBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js +103 -101
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useKeyboardNavigation.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js +9 -7
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useMoveEntities.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js +9 -7
- package/dist/shared/src/containers/ProjectTreeTable/hooks/usePasteLinks.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js +112 -110
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useQueryFilters.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js +100 -98
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js +110 -108
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/expandRelativeDates.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js +89 -356
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js +41 -39
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js +29 -28
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js +2 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js +31 -32
- package/dist/shared/src/containers/ProjectTreeTable/widgets/DateWidgetInput.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js +7 -5
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js +98 -96
- package/dist/shared/src/containers/ProjectTreeTable/widgets/NameWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js +5 -3
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +5 -3
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js +5 -3
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js +5 -3
- package/dist/shared/src/containers/Slicer/components/SlicerSearch.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js +53 -49
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +9 -7
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +21 -149
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +54 -53
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +5 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +10 -8
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js +23 -20
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +8 -5
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +7 -4
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +5 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +9 -6
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +5 -4
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.es.js +7 -4
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.es.js +7 -4
- package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +1 -1
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
- package/dist/shared/src/context/UriContext.es.js +6 -5
- package/dist/shared/src/context/UriContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +7 -5
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +5 -2
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js +2 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.cjs.js.map +1 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js +31 -0
- package/dist/shared/src/hooks/useReviewablesKeyboardNavigation.es.js.map +1 -0
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
- package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.cjs.js.map +1 -1
- package/dist/shared/src/util/buildHierarchicalTableRows.es.js +43 -44
- package/dist/shared/src/util/buildHierarchicalTableRows.es.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.cjs.js.map +1 -1
- package/dist/shared/src/util/confirmDelete.es.js.map +1 -1
- package/dist/shared/src/util/formatUTCDate.cjs.js +2 -0
- package/dist/shared/src/util/formatUTCDate.cjs.js.map +1 -0
- package/dist/shared/src/util/formatUTCDate.es.js +9 -0
- package/dist/shared/src/util/formatUTCDate.es.js.map +1 -0
- package/dist/shared/src/util/getProjectDisplayName.cjs.js +2 -0
- package/dist/shared/src/util/getProjectDisplayName.cjs.js.map +1 -0
- package/dist/shared/src/util/getProjectDisplayName.es.js +5 -0
- package/dist/shared/src/util/getProjectDisplayName.es.js.map +1 -0
- package/dist/types/api/generated/graphql.d.ts +38 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +10 -4
- package/dist/types/api/generated/projectFolders.d.ts +1 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +7 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +14 -0
- package/dist/types/api/queries/entities/getEntity.d.ts +7 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +7 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +7 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +7 -0
- package/dist/types/api/queries/folders/getFolderDeleteInfo.d.ts +566 -0
- package/dist/types/api/queries/folders/index.d.ts +1 -0
- package/dist/types/api/queries/links/getLinks.d.ts +1 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +7 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +7 -0
- package/dist/types/api/queries/users/getUsers.d.ts +7 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +14 -0
- package/dist/types/components/Powerpack/PricingLink.d.ts +1 -1
- package/dist/types/components/ProjectTableSettings/ProjectTableSettings.d.ts +1 -0
- package/dist/types/components/ReviewablesSelector/ReviewablesSelector.d.ts +7 -2
- package/dist/types/components/ReviewablesSelector/index.d.ts +1 -0
- package/dist/types/components/SearchFilter/useBuildFilterOptions.d.ts +2 -1
- package/dist/types/components/VersionUploader/context/VersionUploadContext.d.ts +1 -0
- package/dist/types/containers/EntityPickerDialog/EntityPickerDialog.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/components/DeleteConfirmContent.d.ts +6 -0
- package/dist/types/containers/ProjectTreeTable/utils/expandRelativeDates.d.ts +1 -1
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +1 -0
- package/dist/types/containers/Slicer/hooks/useSlicerViewSync.d.ts +3 -7
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/useReviewablesKeyboardNavigation.d.ts +13 -0
- package/dist/types/util/buildHierarchicalTableRows.d.ts +2 -0
- package/dist/types/util/confirmDelete.d.ts +1 -1
- package/dist/types/util/formatUTCDate.d.ts +1 -0
- package/dist/types/util/getProjectDisplayName.d.ts +6 -0
- package/dist/types/util/index.d.ts +1 -0
- package/dist/util.cjs.js +1 -1
- package/dist/util.es.js +23 -21
- package/dist/util.es.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { j as
|
|
1
|
+
import { j as ct } from "../../../../../_virtual/jsx-runtime.es.js";
|
|
2
2
|
import "../../../api/base/client.es.js";
|
|
3
3
|
import "../../../api/generated/graphql.es.js";
|
|
4
4
|
import "../../../api/generated/graphqlLinks.es.js";
|
|
@@ -62,6 +62,7 @@ import "../../../api/queries/entityLists/getListsAttributes.es.js";
|
|
|
62
62
|
import "../../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
63
63
|
import "../../../api/queries/entityLists/listFolders.es.js";
|
|
64
64
|
import "../../../api/queries/folders/getFolders.es.js";
|
|
65
|
+
import "../../../api/queries/folders/getFolderDeleteInfo.es.js";
|
|
65
66
|
import "../../../api/queries/grouping/getGrouping.es.js";
|
|
66
67
|
import "../../../api/queries/links/updateLinks.es.js";
|
|
67
68
|
import "../../../api/queries/links/getLinks.es.js";
|
|
@@ -70,8 +71,8 @@ import "../../../api/queries/overview/getOverview.es.js";
|
|
|
70
71
|
import "../../../api/queries/overview/updateOverview.es.js";
|
|
71
72
|
import "../../../api/queries/versions/getVersionsProducts.es.js";
|
|
72
73
|
import "../../../api/queries/permissions/getPermissions.es.js";
|
|
73
|
-
import { useCreateProductMutation as
|
|
74
|
-
import { useGetFolderProductsQuery as
|
|
74
|
+
import { useCreateProductMutation as ft } from "../../../api/queries/products/createProduct.es.js";
|
|
75
|
+
import { useGetFolderProductsQuery as vt } from "../../../api/queries/products/getFolderProducts.es.js";
|
|
75
76
|
import "../../../api/queries/project/getProject.es.js";
|
|
76
77
|
import "../../../api/queries/project/updateProject.es.js";
|
|
77
78
|
import "../../../api/queries/projectFolders/projectFolders.es.js";
|
|
@@ -86,17 +87,17 @@ import "../../../api/queries/userDashboard/getUserDashboard.es.js";
|
|
|
86
87
|
import "../../../api/queries/users/getUsers.es.js";
|
|
87
88
|
import "../../../api/queries/users/updateUsers.es.js";
|
|
88
89
|
import "../../../api/queries/users/guests.es.js";
|
|
89
|
-
import { useGetLatestProductVersionQuery as
|
|
90
|
+
import { useGetLatestProductVersionQuery as It, useGetVersionQuery as Vt, useCreateVersionMutation as kt } from "../../../api/queries/versions/updateVersions.es.js";
|
|
90
91
|
import "../../../api/queries/views/getViews.es.js";
|
|
91
92
|
import "../../../api/queries/views/updateViews.es.js";
|
|
92
93
|
import "../../../api/queries/watchers/getWatchers.es.js";
|
|
93
94
|
import "../../../api/queries/uris/getUris.es.js";
|
|
94
|
-
import { createContext as
|
|
95
|
+
import { createContext as Tt, useState as i, useRef as mt, useMemo as et, useCallback as I, useEffect as A, useContext as nt } from "react";
|
|
95
96
|
import "lodash";
|
|
96
|
-
import { toast as
|
|
97
|
+
import { toast as st } from "react-toastify";
|
|
97
98
|
import "uuid";
|
|
98
99
|
import { extractVersionFromFilename as Pt } from "../../../util/extractVersionFromFilename.es.js";
|
|
99
|
-
import { createVersionHelper as ht, createProductAndVersion as wt, validateFormData as
|
|
100
|
+
import { createVersionHelper as ht, createProductAndVersion as wt, validateFormData as xt } from "../../../util/versionUploadHelpers.es.js";
|
|
100
101
|
import "../../../util/pubsub.es.js";
|
|
101
102
|
import "@dnd-kit/core";
|
|
102
103
|
import "@dnd-kit/sortable";
|
|
@@ -205,6 +206,7 @@ import "../../../containers/ProjectTreeTable/context/SelectionCellsContext.es.js
|
|
|
205
206
|
import "../../../containers/ProjectTreeTable/context/ProjectTableQueriesContext.es.js";
|
|
206
207
|
import "../../../containers/ProjectTreeTable/context/ClipboardContext.es.js";
|
|
207
208
|
import "../../../containers/ProjectTreeTable/context/ColumnSettingsContext.es.js";
|
|
209
|
+
import "../../../containers/ProjectTreeTable/components/DeleteConfirmContent.es.js";
|
|
208
210
|
import "../../../containers/ProjectTreeTable/context/ProjectDataContext.es.js";
|
|
209
211
|
import "../../../../../_virtual/runtime.es.js";
|
|
210
212
|
import "../../../../../_virtual/semver.es.js";
|
|
@@ -266,64 +268,64 @@ import "../components/UploadVersionDialog.es.js";
|
|
|
266
268
|
import "../../Watchers/Watchers.es.js";
|
|
267
269
|
import "../../Menu/Menu.styled.es.js";
|
|
268
270
|
import "../../Menu/MenuItem.es.js";
|
|
269
|
-
import "../../ReviewablesSelector/ReviewablesSelector.
|
|
271
|
+
import "../../ReviewablesSelector/ReviewablesSelector.es.js";
|
|
270
272
|
import "../../ReviewablesList/ReviewablesList.styled.es.js";
|
|
271
273
|
import "../../ReviewablesList/ReviewablesUpload.styled.es.js";
|
|
272
|
-
import { parseFilename as
|
|
273
|
-
const
|
|
274
|
+
import { parseFilename as yt } from "../../ReviewablesList/useReviewablesUpload.es.js";
|
|
275
|
+
const G = Tt(void 0), T = {
|
|
274
276
|
version: 1,
|
|
275
277
|
name: "review",
|
|
276
278
|
productType: "review"
|
|
277
|
-
},
|
|
278
|
-
children:
|
|
279
|
+
}, Lm = ({
|
|
280
|
+
children: y,
|
|
279
281
|
projectName: u,
|
|
280
|
-
onVersionCreated:
|
|
281
|
-
dispatch:
|
|
282
|
+
onVersionCreated: M,
|
|
283
|
+
dispatch: Q
|
|
282
284
|
}) => {
|
|
283
|
-
const [d,
|
|
285
|
+
const [d, F] = i(""), [p, g] = i(""), [P, V] = i(null), [D, v] = i(null), [e, B] = i(!1), [k, E] = i([]), [c, m] = i(T), [H, C] = i(!1), [q, U] = i(""), [z, J] = i(null), [K, W] = i(null), [b, X] = i(void 0), [O, Y] = i(void 0), f = mt(!1), Z = mt(null), { data: s = [], isLoading: _ } = vt(
|
|
284
286
|
{ projectName: u, folderId: d },
|
|
285
|
-
{ skip: !d || !e || !!
|
|
286
|
-
), n =
|
|
287
|
-
if (!(
|
|
287
|
+
{ skip: !d || !e || !!p }
|
|
288
|
+
), n = et(() => {
|
|
289
|
+
if (!(p || !c.name || s.length === 0))
|
|
288
290
|
return s.find((t) => t.name === c.name);
|
|
289
|
-
}, [
|
|
291
|
+
}, [p, c.name, s]), a = p || n?.id || "", { currentData: L } = It(
|
|
290
292
|
{
|
|
291
293
|
projectName: u,
|
|
292
|
-
productId:
|
|
294
|
+
productId: p
|
|
293
295
|
},
|
|
294
|
-
{ skip: !
|
|
295
|
-
), { data:
|
|
296
|
+
{ skip: !p || !e || b != null }
|
|
297
|
+
), { data: $ } = Vt(
|
|
296
298
|
{ projectName: u, versionId: O },
|
|
297
299
|
{ skip: !O || !e || P !== null }
|
|
298
|
-
), h = P ??
|
|
299
|
-
({ productId: t, folderId: r, taskId: o, linkedTask: l, latestVersionNumber:
|
|
300
|
-
|
|
301
|
-
...
|
|
302
|
-
...
|
|
303
|
-
})),
|
|
300
|
+
), h = P ?? $?.taskId ?? "", N = !!(O && P === null && !$), j = I(
|
|
301
|
+
({ productId: t, folderId: r, taskId: o, linkedTask: l, latestVersionNumber: x, latestVersionId: lt }) => {
|
|
302
|
+
g(t || ""), F(r || ""), V(o || null), v(l || null), X(x), Y(lt), m((ut) => ({
|
|
303
|
+
...ut,
|
|
304
|
+
...x != null ? { version: x + 1 } : {}
|
|
305
|
+
})), B(!0);
|
|
304
306
|
},
|
|
305
307
|
[]
|
|
306
308
|
), w = I(() => {
|
|
307
309
|
k.forEach((t) => {
|
|
308
310
|
t.preview && URL.revokeObjectURL(t.preview);
|
|
309
|
-
}), E([]),
|
|
310
|
-
}, [k]), [
|
|
311
|
+
}), E([]), m(T), J(null), W(null), U(""), C(!1), B(!1), g(""), F(""), V(null), v(null), f.current = !1, X(void 0), Y(void 0);
|
|
312
|
+
}, [k]), [dt] = ft(), [tt] = kt(), R = I(
|
|
311
313
|
async (t) => {
|
|
312
314
|
try {
|
|
313
315
|
if (a) {
|
|
314
|
-
const r = await ht(
|
|
316
|
+
const r = await ht(tt, u, {
|
|
315
317
|
productId: a,
|
|
316
318
|
version: t.version,
|
|
317
319
|
taskId: h || void 0
|
|
318
320
|
});
|
|
319
|
-
return
|
|
321
|
+
return M(a, r.id), st.success("Created new version"), {
|
|
320
322
|
productId: a,
|
|
321
323
|
versionId: r.id
|
|
322
324
|
};
|
|
323
325
|
} else {
|
|
324
326
|
const { product: r, version: o } = await wt(
|
|
325
|
-
|
|
326
|
-
|
|
327
|
+
dt,
|
|
328
|
+
tt,
|
|
327
329
|
u,
|
|
328
330
|
{
|
|
329
331
|
folderId: d,
|
|
@@ -336,7 +338,7 @@ const st = kt(void 0), T = {
|
|
|
336
338
|
taskId: h || void 0
|
|
337
339
|
}
|
|
338
340
|
);
|
|
339
|
-
return
|
|
341
|
+
return M(r.id, o.id), st.success("Created new version"), {
|
|
340
342
|
productId: r.id,
|
|
341
343
|
versionId: o.id
|
|
342
344
|
};
|
|
@@ -346,57 +348,57 @@ const st = kt(void 0), T = {
|
|
|
346
348
|
}
|
|
347
349
|
},
|
|
348
350
|
[w, a, d, h, u]
|
|
349
|
-
),
|
|
351
|
+
), rt = I(
|
|
350
352
|
(t) => {
|
|
351
353
|
if (a) return;
|
|
352
354
|
const r = t[0];
|
|
353
355
|
if (r) {
|
|
354
|
-
const o =
|
|
355
|
-
l && l !== c.version &&
|
|
356
|
-
...
|
|
356
|
+
const o = yt(r.name), l = Pt(o);
|
|
357
|
+
l && l !== c.version && m((x) => ({
|
|
358
|
+
...x,
|
|
357
359
|
version: l
|
|
358
360
|
}));
|
|
359
361
|
}
|
|
360
362
|
},
|
|
361
363
|
[a, c.version]
|
|
362
|
-
), S = L?.version ??
|
|
363
|
-
|
|
364
|
+
), S = L?.version ?? b ?? n?.latestVersion?.version, ot = I((t, r) => {
|
|
365
|
+
m((o) => ({
|
|
364
366
|
...o,
|
|
365
367
|
[t]: r
|
|
366
|
-
})),
|
|
367
|
-
}, []),
|
|
368
|
+
})), U("");
|
|
369
|
+
}, []), it = I(
|
|
368
370
|
async (t) => {
|
|
369
371
|
try {
|
|
370
|
-
C(!0),
|
|
371
|
-
const r =
|
|
372
|
+
C(!0), U("");
|
|
373
|
+
const r = xt(t, S, !a);
|
|
372
374
|
if (!r.isValid)
|
|
373
375
|
throw r.error;
|
|
374
376
|
const o = await R(t);
|
|
375
|
-
d && (
|
|
377
|
+
d && (Z.current = { folderId: d, productName: t.name }), o?.productId && J(o.productId), o?.versionId && W(o.versionId), k.length < 1 && (C(!1), w());
|
|
376
378
|
} catch (r) {
|
|
377
|
-
|
|
379
|
+
U(r), C(!1);
|
|
378
380
|
}
|
|
379
381
|
},
|
|
380
382
|
[R, k.length, w, S, a]
|
|
381
383
|
);
|
|
382
384
|
A(() => {
|
|
383
|
-
if (!(!e ||
|
|
384
|
-
return
|
|
385
|
-
|
|
385
|
+
if (!(!e || b != null))
|
|
386
|
+
return m(L ? (t) => ({ ...t, version: L.version + 1 }) : T), () => {
|
|
387
|
+
m(T);
|
|
386
388
|
};
|
|
387
|
-
}, [e, L,
|
|
388
|
-
if (!e ||
|
|
389
|
-
const t =
|
|
389
|
+
}, [e, L, b]), A(() => {
|
|
390
|
+
if (!e || p || s.length === 0 || c.name !== T.name) return;
|
|
391
|
+
const t = Z.current;
|
|
390
392
|
if (t && t.folderId === d && s.some((l) => l.name === t.productName)) {
|
|
391
|
-
|
|
393
|
+
m((l) => ({ ...l, name: t.productName }));
|
|
392
394
|
return;
|
|
393
395
|
}
|
|
394
396
|
const r = s[s.length - 1];
|
|
395
|
-
r &&
|
|
396
|
-
}, [e,
|
|
397
|
-
if (!(!e ||
|
|
397
|
+
r && m((o) => ({ ...o, name: r.name }));
|
|
398
|
+
}, [e, p, s]), A(() => {
|
|
399
|
+
if (!(!e || p))
|
|
398
400
|
if (n) {
|
|
399
|
-
|
|
401
|
+
m((r) => ({
|
|
400
402
|
...r,
|
|
401
403
|
productType: n.productType,
|
|
402
404
|
...n.latestVersion && {
|
|
@@ -411,84 +413,85 @@ const st = kt(void 0), T = {
|
|
|
411
413
|
taskType: t.taskType
|
|
412
414
|
}), f.current = !0) : !t && f.current && (V(null), v(null), f.current = !1);
|
|
413
415
|
} else
|
|
414
|
-
|
|
415
|
-
}, [e,
|
|
416
|
-
const
|
|
416
|
+
m((t) => ({ ...t, version: T.version })), (P === null || f.current) && (V(null), v(null), f.current = !1);
|
|
417
|
+
}, [e, p, n]);
|
|
418
|
+
const pt = I((t) => {
|
|
417
419
|
V(t), f.current = !1;
|
|
418
|
-
}, []),
|
|
420
|
+
}, []), at = et(
|
|
419
421
|
() => ({
|
|
420
|
-
productId:
|
|
421
|
-
setProductId:
|
|
422
|
+
productId: p,
|
|
423
|
+
setProductId: g,
|
|
422
424
|
folderId: d,
|
|
423
425
|
taskId: h,
|
|
424
|
-
linkedTask:
|
|
425
|
-
isLoadingTask:
|
|
426
|
-
setTaskId:
|
|
426
|
+
linkedTask: D,
|
|
427
|
+
isLoadingTask: N,
|
|
428
|
+
setTaskId: pt,
|
|
427
429
|
setLinkedTask: v,
|
|
428
|
-
setFolderId:
|
|
430
|
+
setFolderId: F,
|
|
429
431
|
isOpen: e,
|
|
430
432
|
projectName: u,
|
|
431
433
|
latestVersion: S,
|
|
432
434
|
pendingFiles: k,
|
|
433
435
|
setPendingFiles: E,
|
|
434
|
-
onOpenVersionUpload:
|
|
436
|
+
onOpenVersionUpload: j,
|
|
435
437
|
onCloseVersionUpload: w,
|
|
436
438
|
onUploadVersion: R,
|
|
437
|
-
extractAndSetVersionFromFiles:
|
|
439
|
+
extractAndSetVersionFromFiles: rt,
|
|
438
440
|
form: c,
|
|
439
|
-
setForm:
|
|
440
|
-
isSubmitting:
|
|
441
|
-
error:
|
|
442
|
-
createdProductId:
|
|
443
|
-
createdVersionId:
|
|
444
|
-
handleFormChange:
|
|
445
|
-
handleFormSubmit:
|
|
441
|
+
setForm: m,
|
|
442
|
+
isSubmitting: H,
|
|
443
|
+
error: q,
|
|
444
|
+
createdProductId: z,
|
|
445
|
+
createdVersionId: K,
|
|
446
|
+
handleFormChange: ot,
|
|
447
|
+
handleFormSubmit: it,
|
|
446
448
|
folderProducts: s,
|
|
447
|
-
isFolderProductsLoading:
|
|
449
|
+
isFolderProductsLoading: _,
|
|
448
450
|
matchedProduct: n,
|
|
449
|
-
dispatch:
|
|
451
|
+
dispatch: Q
|
|
450
452
|
}),
|
|
451
453
|
[
|
|
452
454
|
d,
|
|
453
|
-
|
|
454
|
-
|
|
455
|
+
F,
|
|
456
|
+
p,
|
|
455
457
|
h,
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
458
|
+
D,
|
|
459
|
+
N,
|
|
460
|
+
pt,
|
|
459
461
|
v,
|
|
460
|
-
|
|
462
|
+
g,
|
|
461
463
|
e,
|
|
462
464
|
u,
|
|
463
465
|
S,
|
|
464
466
|
k,
|
|
465
467
|
E,
|
|
466
|
-
|
|
468
|
+
j,
|
|
467
469
|
w,
|
|
468
470
|
R,
|
|
469
|
-
|
|
471
|
+
rt,
|
|
470
472
|
c,
|
|
471
|
-
B,
|
|
472
473
|
H,
|
|
473
474
|
q,
|
|
474
|
-
|
|
475
|
-
|
|
475
|
+
z,
|
|
476
|
+
K,
|
|
476
477
|
ot,
|
|
478
|
+
it,
|
|
477
479
|
s,
|
|
478
|
-
|
|
480
|
+
_,
|
|
479
481
|
n,
|
|
480
|
-
|
|
482
|
+
Q
|
|
481
483
|
]
|
|
482
484
|
);
|
|
483
|
-
return /* @__PURE__ */
|
|
484
|
-
},
|
|
485
|
-
const
|
|
486
|
-
if (
|
|
485
|
+
return /* @__PURE__ */ ct.jsx(G.Provider, { value: at, children: y });
|
|
486
|
+
}, Rm = () => {
|
|
487
|
+
const y = nt(G);
|
|
488
|
+
if (y === void 0)
|
|
487
489
|
throw new Error("useVersionUploadContext must be used within a VersionUploadProvider");
|
|
488
|
-
return
|
|
489
|
-
};
|
|
490
|
+
return y;
|
|
491
|
+
}, Sm = () => nt(G) ?? null;
|
|
490
492
|
export {
|
|
491
|
-
|
|
492
|
-
|
|
493
|
+
Lm as VersionUploadProvider,
|
|
494
|
+
Sm as useOptionalVersionUploadContext,
|
|
495
|
+
Rm as useVersionUploadContext
|
|
493
496
|
};
|
|
494
497
|
//# sourceMappingURL=VersionUploadContext.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionUploadContext.es.js","sources":["../../../../../../src/components/VersionUploader/context/VersionUploadContext.tsx"],"sourcesContent":["import {\n useCreateVersionMutation,\n useCreateProductMutation,\n useGetLatestProductVersionQuery,\n useGetVersionQuery,\n useGetFolderProductsQuery,\n} from '@shared/api'\nimport type { FolderProduct } from '@shared/api'\nimport React, {\n createContext,\n useContext,\n useState,\n useRef,\n ReactNode,\n useMemo,\n useCallback,\n useEffect,\n} from 'react'\nimport { extractVersionFromFilename } from '@shared/util'\nimport { toast } from 'react-toastify'\nimport {\n validateFormData as validateFormDataHelper,\n createProductAndVersion,\n createVersionHelper,\n} from '@shared/util/versionUploadHelpers'\nimport { parseFilename } from '@shared/components/ReviewablesList'\n\nexport interface FormData {\n version: number\n name: string\n productType: string\n}\nexport interface LinkedTask {\n id: string\n name: string\n label?: string | null\n taskType: string\n}\n\ninterface VersionUploadContextType {\n productId: string\n folderId: string\n taskId: string\n linkedTask: LinkedTask | null\n isLoadingTask: boolean\n setTaskId: (taskId: string) => void\n setLinkedTask: (task: LinkedTask | null) => void\n setProductId: (productId: string) => void\n setFolderId: (folderId: string) => void\n isOpen: boolean\n projectName: string\n latestVersion: number | undefined\n pendingFiles: Array<{ file: File; preview?: string }>\n setPendingFiles: React.Dispatch<React.SetStateAction<Array<{ file: File; preview?: string }>>>\n extractAndSetVersionFromFiles: (files: File[]) => void\n form: FormData\n setForm: React.Dispatch<React.SetStateAction<FormData>>\n isSubmitting: boolean\n error: string\n createdProductId: string | null\n createdVersionId: string | null\n onOpenVersionUpload: (params: {\n productId?: string\n folderId?: string\n taskId?: string\n linkedTask?: LinkedTask\n latestVersionNumber?: number\n latestVersionId?: string\n }) => void\n onCloseVersionUpload: () => void\n onUploadVersion: (data: FormData) => Promise<{ productId: string; versionId: string }>\n handleFormChange: (key: keyof FormData, value: string | number) => void\n handleFormSubmit: (formData: FormData) => Promise<void>\n folderProducts: FolderProduct[]\n isFolderProductsLoading: boolean\n matchedProduct: FolderProduct | undefined\n // pass through\n dispatch: any\n}\n\nconst VersionUploadContext = createContext<VersionUploadContextType | undefined>(undefined)\n\ninterface VersionUploadProviderProps {\n children: ReactNode\n projectName: string\n onVersionCreated: (productId: string, versionId: string) => void\n dispatch: any\n}\n\nconst defaultFormData: FormData = {\n version: 1,\n name: 'review',\n productType: 'review',\n}\n\nexport const VersionUploadProvider: React.FC<VersionUploadProviderProps> = ({\n children,\n projectName,\n onVersionCreated,\n dispatch,\n}) => {\n const [folderId, setFolderId] = useState<string>('')\n const [productId, setProductId] = useState<string>('')\n // optional task to link the version to\n // null = not set by user (auto-resolve from version), '' = explicitly cleared, 'id' = explicitly set\n const [userTaskId, setUserTaskId] = useState<string | null>(null)\n const [linkedTask, setLinkedTask] = useState<LinkedTask | null>(null)\n const [isOpen, setIsOpen] = useState<boolean>(false)\n const [pendingFiles, setPendingFiles] = useState<Array<{ file: File; preview?: string }>>([])\n const [form, setForm] = useState<FormData>(defaultFormData)\n const [isSubmitting, setIsSubmitting] = useState(false)\n const [error, setError] = useState<string>('')\n const [createdProductId, setCreatedProductId] = useState<string | null>(null)\n const [createdVersionId, setCreatedVersionId] = useState<string | null>(null)\n // Stores the latest version number passed from the caller (e.g. VP page)\n // so we can skip the GetLatestProductVersion query when we already know it\n const [latestVersionNumber, setLatestVersionNumber] = useState<number | undefined>(undefined)\n // Stores the latest version ID so we can fetch its task when not already known\n const [latestVersionId, setLatestVersionId] = useState<string | undefined>(undefined)\n // Tracks whether the current task was auto-linked from a matched product (not explicitly user-chosen)\n const isTaskAutoLinkedRef = useRef(false)\n // Remember the last submitted product name per folder so we can prefill on reopen\n const lastSubmittedRef = useRef<{ folderId: string; productName: string } | null>(null)\n\n // Fetch products for the folder (only when no productId — Overview/Browser flow)\n const { data: folderProducts = [], isLoading: isFolderProductsLoading } =\n useGetFolderProductsQuery(\n { projectName, folderId },\n { skip: !folderId || !isOpen || !!productId },\n )\n\n // Match typed product name against existing folder products\n const matchedProduct = useMemo(() => {\n if (productId || !form.name || folderProducts.length === 0) return undefined\n return folderProducts.find((p) => p.name === form.name)\n }, [productId, form.name, folderProducts])\n\n const effectiveProductId = productId || matchedProduct?.id || ''\n\n const { currentData: version } = useGetLatestProductVersionQuery(\n {\n projectName,\n productId,\n },\n { skip: !productId || !isOpen || latestVersionNumber != null },\n )\n\n // Fetch the latest version to discover its taskId (e.g. when versions are collapsed)\n const { data: latestVersionData } = useGetVersionQuery(\n { projectName, versionId: latestVersionId! },\n { skip: !latestVersionId || !isOpen || userTaskId !== null },\n )\n\n // Derive effective taskId: user's explicit choice takes priority, then auto-resolved from version\n const taskId = userTaskId ?? latestVersionData?.taskId ?? ''\n const isLoadingTask = !!(latestVersionId && userTaskId === null && !latestVersionData)\n\n const onOpenVersionUpload = useCallback<VersionUploadContextType['onOpenVersionUpload']>(\n ({ productId, folderId, taskId, linkedTask, latestVersionNumber, latestVersionId }) => {\n setProductId(productId || '')\n setFolderId(folderId || '')\n setUserTaskId(taskId || null)\n setLinkedTask(linkedTask || null)\n setLatestVersionNumber(latestVersionNumber)\n setLatestVersionId(latestVersionId)\n\n // Set initial form state in a single update\n setForm((prev) => ({\n ...prev,\n ...(latestVersionNumber != null ? { version: latestVersionNumber + 1 } : {}),\n }))\n setIsOpen(true)\n },\n [],\n )\n\n const onCloseVersionUpload = useCallback<VersionUploadContextType['onCloseVersionUpload']>(() => {\n // Clean up pending files\n pendingFiles.forEach((item) => {\n if (item.preview) {\n URL.revokeObjectURL(item.preview)\n }\n })\n setPendingFiles([])\n setForm(defaultFormData)\n setCreatedProductId(null)\n setCreatedVersionId(null)\n setError('')\n setIsSubmitting(false)\n setIsOpen(false)\n setProductId('')\n setFolderId('')\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n setLatestVersionNumber(undefined)\n setLatestVersionId(undefined)\n }, [pendingFiles])\n\n const [createProduct] = useCreateProductMutation()\n const [createVersion] = useCreateVersionMutation()\n\n const onUploadVersion = useCallback<VersionUploadContextType['onUploadVersion']>(\n async (data: FormData) => {\n try {\n if (effectiveProductId) {\n // product already exists (either passed directly or matched by name)\n const versionRes = await createVersionHelper(createVersion, projectName, {\n productId: effectiveProductId,\n version: data.version,\n taskId: taskId || undefined,\n })\n\n // select the new version\n onVersionCreated(effectiveProductId, versionRes.id)\n\n toast.success('Created new version')\n\n return {\n productId: effectiveProductId,\n versionId: versionRes.id,\n }\n } else {\n // product does not exist, create new product with version\n const { product: productRes, version: versionRes } = await createProductAndVersion(\n createProduct,\n createVersion,\n projectName,\n {\n folderId,\n name: data.name,\n productType: data.productType || 'review',\n productBaseType: data.productType || 'review',\n },\n {\n version: data.version,\n taskId: taskId || undefined,\n },\n )\n\n // select the new product and version\n onVersionCreated(productRes.id, versionRes.id)\n\n toast.success('Created new version')\n\n return {\n productId: productRes.id,\n versionId: versionRes.id,\n }\n }\n } catch (error: any) {\n console.error('Error uploading version:', error)\n throw error.message || error\n }\n },\n [onCloseVersionUpload, effectiveProductId, folderId, taskId, projectName],\n )\n\n const extractAndSetVersionFromFiles = useCallback(\n (files: File[]) => {\n // Only extract version if we don't already have a product (new product workflow)\n if (effectiveProductId) return\n\n // Try to extract version from the first file\n const firstFile = files[0]\n if (firstFile) {\n const fileName = parseFilename(firstFile.name)\n const extractedVersion = extractVersionFromFilename(fileName)\n if (extractedVersion && extractedVersion !== form.version) {\n setForm((prev) => ({\n ...prev,\n version: extractedVersion,\n }))\n }\n }\n },\n [effectiveProductId, form.version],\n )\n\n // Fallback order: (1) queried from productId, (2) passed by caller, (3) from matched product name\n const latestVersion =\n version?.version ?? latestVersionNumber ?? matchedProduct?.latestVersion?.version\n\n // Handle form changes\n const handleFormChange = useCallback((key: keyof FormData, value: string | number) => {\n setForm((prev) => ({\n ...prev,\n [key]: value,\n }))\n // Clear any previous validation error when user edits the form\n setError('')\n }, [])\n\n // Handle form submission\n const handleFormSubmit = useCallback(\n async (formData: FormData) => {\n try {\n setIsSubmitting(true)\n setError('')\n\n // validate the form data\n const validation = validateFormDataHelper(formData, latestVersion, !effectiveProductId)\n if (!validation.isValid) {\n throw validation.error\n }\n\n const response = await onUploadVersion(formData)\n\n // Remember last submitted product name for this folder so we can prefill on reopen\n if (folderId) {\n lastSubmittedRef.current = { folderId, productName: formData.name }\n }\n\n // Extract productId and versionId from response\n if (response?.productId) {\n setCreatedProductId(response.productId)\n }\n if (response?.versionId) {\n setCreatedVersionId(response.versionId)\n }\n\n if (pendingFiles.length < 1) {\n setIsSubmitting(false)\n onCloseVersionUpload()\n }\n } catch (error: any) {\n setError(error)\n setIsSubmitting(false)\n }\n },\n [onUploadVersion, pendingFiles.length, onCloseVersionUpload, latestVersion, effectiveProductId],\n )\n\n // Update form when version data changes (only when query is used as fallback)\n useEffect(() => {\n if (!isOpen || latestVersionNumber != null) return\n\n if (version) {\n setForm((prev) => ({ ...prev, version: version.version + 1 }))\n } else {\n setForm(defaultFormData)\n }\n\n return () => {\n setForm(defaultFormData)\n }\n }, [isOpen, version, latestVersionNumber])\n\n // Default product name: prefer last submitted name for same folder, else last folder product\n useEffect(() => {\n if (!isOpen || productId || folderProducts.length === 0) return\n // Only auto-fill if user hasn't changed the name from default\n if (form.name !== defaultFormData.name) return\n\n // Prefer the product name from the last successful submit on this folder\n const lastSubmitted = lastSubmittedRef.current\n if (lastSubmitted && lastSubmitted.folderId === folderId) {\n const exists = folderProducts.some((p) => p.name === lastSubmitted.productName)\n if (exists) {\n setForm((prev) => ({ ...prev, name: lastSubmitted.productName }))\n return\n }\n }\n\n // Fallback: use the last product in the folder list\n const lastProduct = folderProducts[folderProducts.length - 1]\n if (lastProduct) {\n setForm((prev) => ({ ...prev, name: lastProduct.name }))\n }\n }, [isOpen, productId, folderProducts])\n\n // Auto-set version, productType, and task when a matched product is found, reset when match is lost\n useEffect(() => {\n if (!isOpen || productId) return\n\n if (matchedProduct) {\n setForm((prev) => ({\n ...prev,\n productType: matchedProduct.productType,\n ...(matchedProduct.latestVersion && {\n version: matchedProduct.latestVersion.version + 1,\n }),\n }))\n\n const matchedTask = matchedProduct.latestVersion?.task\n if (matchedTask && (userTaskId === null || isTaskAutoLinkedRef.current)) {\n // Auto-link task from matched product's latest version\n setUserTaskId(matchedTask.id)\n setLinkedTask({\n id: matchedTask.id,\n name: matchedTask.name,\n label: matchedTask.label,\n taskType: matchedTask.taskType,\n })\n isTaskAutoLinkedRef.current = true\n } else if (!matchedTask && isTaskAutoLinkedRef.current) {\n // Matched product has no task — clear the auto-linked one\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n }\n } else {\n // Match lost — reset version back to default for new product\n setForm((prev) => ({ ...prev, version: defaultFormData.version }))\n // Clear auto-linked task (only if it was auto-set, not user-chosen)\n if (userTaskId === null || isTaskAutoLinkedRef.current) {\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n }\n }\n }, [isOpen, productId, matchedProduct])\n\n // Wrap setUserTaskId so consumers use a simple string setter\n // Any explicit user action (pick or clear) marks the task as not auto-linked\n const setTaskId = useCallback((id: string) => {\n setUserTaskId(id)\n isTaskAutoLinkedRef.current = false\n }, [])\n\n const value = useMemo(\n () => ({\n productId,\n setProductId,\n folderId,\n taskId,\n linkedTask,\n isLoadingTask,\n setTaskId,\n setLinkedTask,\n setFolderId,\n isOpen,\n projectName,\n latestVersion,\n pendingFiles,\n setPendingFiles,\n onOpenVersionUpload,\n onCloseVersionUpload,\n onUploadVersion,\n extractAndSetVersionFromFiles,\n form,\n setForm,\n isSubmitting,\n error,\n createdProductId,\n createdVersionId,\n handleFormChange,\n handleFormSubmit,\n folderProducts,\n isFolderProductsLoading,\n matchedProduct,\n dispatch,\n }),\n [\n folderId,\n setFolderId,\n productId,\n taskId,\n linkedTask,\n isLoadingTask,\n setTaskId,\n setLinkedTask,\n setProductId,\n isOpen,\n projectName,\n latestVersion,\n pendingFiles,\n setPendingFiles,\n onOpenVersionUpload,\n onCloseVersionUpload,\n onUploadVersion,\n extractAndSetVersionFromFiles,\n form,\n isSubmitting,\n error,\n createdProductId,\n createdVersionId,\n handleFormChange,\n handleFormSubmit,\n folderProducts,\n isFolderProductsLoading,\n matchedProduct,\n dispatch,\n ],\n )\n\n return <VersionUploadContext.Provider value={value}>{children}</VersionUploadContext.Provider>\n}\n\nexport const useVersionUploadContext = (): VersionUploadContextType => {\n const context = useContext(VersionUploadContext)\n if (context === undefined) {\n throw new Error('useVersionUploadContext must be used within a VersionUploadProvider')\n }\n return context\n}\n"],"names":["VersionUploadContext","createContext","defaultFormData","VersionUploadProvider","children","projectName","onVersionCreated","dispatch","folderId","setFolderId","useState","productId","setProductId","userTaskId","setUserTaskId","linkedTask","setLinkedTask","isOpen","setIsOpen","pendingFiles","setPendingFiles","form","setForm","isSubmitting","setIsSubmitting","error","setError","createdProductId","setCreatedProductId","createdVersionId","setCreatedVersionId","latestVersionNumber","setLatestVersionNumber","latestVersionId","setLatestVersionId","isTaskAutoLinkedRef","useRef","lastSubmittedRef","folderProducts","isFolderProductsLoading","useGetFolderProductsQuery","matchedProduct","useMemo","p","effectiveProductId","version","useGetLatestProductVersionQuery","latestVersionData","useGetVersionQuery","taskId","isLoadingTask","onOpenVersionUpload","useCallback","prev","onCloseVersionUpload","item","createProduct","useCreateProductMutation","createVersion","useCreateVersionMutation","onUploadVersion","data","versionRes","createVersionHelper","toast","productRes","createProductAndVersion","extractAndSetVersionFromFiles","files","firstFile","fileName","parseFilename","extractedVersion","extractVersionFromFilename","latestVersion","handleFormChange","key","value","handleFormSubmit","formData","validation","validateFormDataHelper","response","useEffect","lastSubmitted","lastProduct","matchedTask","setTaskId","id","jsx","useVersionUploadContext","context","useContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VersionUploadContext.es.js","sources":["../../../../../../src/components/VersionUploader/context/VersionUploadContext.tsx"],"sourcesContent":["import {\n useCreateVersionMutation,\n useCreateProductMutation,\n useGetLatestProductVersionQuery,\n useGetVersionQuery,\n useGetFolderProductsQuery,\n} from '@shared/api'\nimport type { FolderProduct } from '@shared/api'\nimport React, {\n createContext,\n useContext,\n useState,\n useRef,\n ReactNode,\n useMemo,\n useCallback,\n useEffect,\n} from 'react'\nimport { extractVersionFromFilename } from '@shared/util'\nimport { toast } from 'react-toastify'\nimport {\n validateFormData as validateFormDataHelper,\n createProductAndVersion,\n createVersionHelper,\n} from '@shared/util/versionUploadHelpers'\nimport { parseFilename } from '@shared/components/ReviewablesList'\n\nexport interface FormData {\n version: number\n name: string\n productType: string\n}\nexport interface LinkedTask {\n id: string\n name: string\n label?: string | null\n taskType: string\n}\n\ninterface VersionUploadContextType {\n productId: string\n folderId: string\n taskId: string\n linkedTask: LinkedTask | null\n isLoadingTask: boolean\n setTaskId: (taskId: string) => void\n setLinkedTask: (task: LinkedTask | null) => void\n setProductId: (productId: string) => void\n setFolderId: (folderId: string) => void\n isOpen: boolean\n projectName: string\n latestVersion: number | undefined\n pendingFiles: Array<{ file: File; preview?: string }>\n setPendingFiles: React.Dispatch<React.SetStateAction<Array<{ file: File; preview?: string }>>>\n extractAndSetVersionFromFiles: (files: File[]) => void\n form: FormData\n setForm: React.Dispatch<React.SetStateAction<FormData>>\n isSubmitting: boolean\n error: string\n createdProductId: string | null\n createdVersionId: string | null\n onOpenVersionUpload: (params: {\n productId?: string\n folderId?: string\n taskId?: string\n linkedTask?: LinkedTask\n latestVersionNumber?: number\n latestVersionId?: string\n }) => void\n onCloseVersionUpload: () => void\n onUploadVersion: (data: FormData) => Promise<{ productId: string; versionId: string }>\n handleFormChange: (key: keyof FormData, value: string | number) => void\n handleFormSubmit: (formData: FormData) => Promise<void>\n folderProducts: FolderProduct[]\n isFolderProductsLoading: boolean\n matchedProduct: FolderProduct | undefined\n // pass through\n dispatch: any\n}\n\nconst VersionUploadContext = createContext<VersionUploadContextType | undefined>(undefined)\n\ninterface VersionUploadProviderProps {\n children: ReactNode\n projectName: string\n onVersionCreated: (productId: string, versionId: string) => void\n dispatch: any\n}\n\nconst defaultFormData: FormData = {\n version: 1,\n name: 'review',\n productType: 'review',\n}\n\nexport const VersionUploadProvider: React.FC<VersionUploadProviderProps> = ({\n children,\n projectName,\n onVersionCreated,\n dispatch,\n}) => {\n const [folderId, setFolderId] = useState<string>('')\n const [productId, setProductId] = useState<string>('')\n // optional task to link the version to\n // null = not set by user (auto-resolve from version), '' = explicitly cleared, 'id' = explicitly set\n const [userTaskId, setUserTaskId] = useState<string | null>(null)\n const [linkedTask, setLinkedTask] = useState<LinkedTask | null>(null)\n const [isOpen, setIsOpen] = useState<boolean>(false)\n const [pendingFiles, setPendingFiles] = useState<Array<{ file: File; preview?: string }>>([])\n const [form, setForm] = useState<FormData>(defaultFormData)\n const [isSubmitting, setIsSubmitting] = useState(false)\n const [error, setError] = useState<string>('')\n const [createdProductId, setCreatedProductId] = useState<string | null>(null)\n const [createdVersionId, setCreatedVersionId] = useState<string | null>(null)\n // Stores the latest version number passed from the caller (e.g. VP page)\n // so we can skip the GetLatestProductVersion query when we already know it\n const [latestVersionNumber, setLatestVersionNumber] = useState<number | undefined>(undefined)\n // Stores the latest version ID so we can fetch its task when not already known\n const [latestVersionId, setLatestVersionId] = useState<string | undefined>(undefined)\n // Tracks whether the current task was auto-linked from a matched product (not explicitly user-chosen)\n const isTaskAutoLinkedRef = useRef(false)\n // Remember the last submitted product name per folder so we can prefill on reopen\n const lastSubmittedRef = useRef<{ folderId: string; productName: string } | null>(null)\n\n // Fetch products for the folder (only when no productId — Overview/Browser flow)\n const { data: folderProducts = [], isLoading: isFolderProductsLoading } =\n useGetFolderProductsQuery(\n { projectName, folderId },\n { skip: !folderId || !isOpen || !!productId },\n )\n\n // Match typed product name against existing folder products\n const matchedProduct = useMemo(() => {\n if (productId || !form.name || folderProducts.length === 0) return undefined\n return folderProducts.find((p) => p.name === form.name)\n }, [productId, form.name, folderProducts])\n\n const effectiveProductId = productId || matchedProduct?.id || ''\n\n const { currentData: version } = useGetLatestProductVersionQuery(\n {\n projectName,\n productId,\n },\n { skip: !productId || !isOpen || latestVersionNumber != null },\n )\n\n // Fetch the latest version to discover its taskId (e.g. when versions are collapsed)\n const { data: latestVersionData } = useGetVersionQuery(\n { projectName, versionId: latestVersionId! },\n { skip: !latestVersionId || !isOpen || userTaskId !== null },\n )\n\n // Derive effective taskId: user's explicit choice takes priority, then auto-resolved from version\n const taskId = userTaskId ?? latestVersionData?.taskId ?? ''\n const isLoadingTask = !!(latestVersionId && userTaskId === null && !latestVersionData)\n\n const onOpenVersionUpload = useCallback<VersionUploadContextType['onOpenVersionUpload']>(\n ({ productId, folderId, taskId, linkedTask, latestVersionNumber, latestVersionId }) => {\n setProductId(productId || '')\n setFolderId(folderId || '')\n setUserTaskId(taskId || null)\n setLinkedTask(linkedTask || null)\n setLatestVersionNumber(latestVersionNumber)\n setLatestVersionId(latestVersionId)\n\n // Set initial form state in a single update\n setForm((prev) => ({\n ...prev,\n ...(latestVersionNumber != null ? { version: latestVersionNumber + 1 } : {}),\n }))\n setIsOpen(true)\n },\n [],\n )\n\n const onCloseVersionUpload = useCallback<VersionUploadContextType['onCloseVersionUpload']>(() => {\n // Clean up pending files\n pendingFiles.forEach((item) => {\n if (item.preview) {\n URL.revokeObjectURL(item.preview)\n }\n })\n setPendingFiles([])\n setForm(defaultFormData)\n setCreatedProductId(null)\n setCreatedVersionId(null)\n setError('')\n setIsSubmitting(false)\n setIsOpen(false)\n setProductId('')\n setFolderId('')\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n setLatestVersionNumber(undefined)\n setLatestVersionId(undefined)\n }, [pendingFiles])\n\n const [createProduct] = useCreateProductMutation()\n const [createVersion] = useCreateVersionMutation()\n\n const onUploadVersion = useCallback<VersionUploadContextType['onUploadVersion']>(\n async (data: FormData) => {\n try {\n if (effectiveProductId) {\n // product already exists (either passed directly or matched by name)\n const versionRes = await createVersionHelper(createVersion, projectName, {\n productId: effectiveProductId,\n version: data.version,\n taskId: taskId || undefined,\n })\n\n // select the new version\n onVersionCreated(effectiveProductId, versionRes.id)\n\n toast.success('Created new version')\n\n return {\n productId: effectiveProductId,\n versionId: versionRes.id,\n }\n } else {\n // product does not exist, create new product with version\n const { product: productRes, version: versionRes } = await createProductAndVersion(\n createProduct,\n createVersion,\n projectName,\n {\n folderId,\n name: data.name,\n productType: data.productType || 'review',\n productBaseType: data.productType || 'review',\n },\n {\n version: data.version,\n taskId: taskId || undefined,\n },\n )\n\n // select the new product and version\n onVersionCreated(productRes.id, versionRes.id)\n\n toast.success('Created new version')\n\n return {\n productId: productRes.id,\n versionId: versionRes.id,\n }\n }\n } catch (error: any) {\n console.error('Error uploading version:', error)\n throw error.message || error\n }\n },\n [onCloseVersionUpload, effectiveProductId, folderId, taskId, projectName],\n )\n\n const extractAndSetVersionFromFiles = useCallback(\n (files: File[]) => {\n // Only extract version if we don't already have a product (new product workflow)\n if (effectiveProductId) return\n\n // Try to extract version from the first file\n const firstFile = files[0]\n if (firstFile) {\n const fileName = parseFilename(firstFile.name)\n const extractedVersion = extractVersionFromFilename(fileName)\n if (extractedVersion && extractedVersion !== form.version) {\n setForm((prev) => ({\n ...prev,\n version: extractedVersion,\n }))\n }\n }\n },\n [effectiveProductId, form.version],\n )\n\n // Fallback order: (1) queried from productId, (2) passed by caller, (3) from matched product name\n const latestVersion =\n version?.version ?? latestVersionNumber ?? matchedProduct?.latestVersion?.version\n\n // Handle form changes\n const handleFormChange = useCallback((key: keyof FormData, value: string | number) => {\n setForm((prev) => ({\n ...prev,\n [key]: value,\n }))\n // Clear any previous validation error when user edits the form\n setError('')\n }, [])\n\n // Handle form submission\n const handleFormSubmit = useCallback(\n async (formData: FormData) => {\n try {\n setIsSubmitting(true)\n setError('')\n\n // validate the form data\n const validation = validateFormDataHelper(formData, latestVersion, !effectiveProductId)\n if (!validation.isValid) {\n throw validation.error\n }\n\n const response = await onUploadVersion(formData)\n\n // Remember last submitted product name for this folder so we can prefill on reopen\n if (folderId) {\n lastSubmittedRef.current = { folderId, productName: formData.name }\n }\n\n // Extract productId and versionId from response\n if (response?.productId) {\n setCreatedProductId(response.productId)\n }\n if (response?.versionId) {\n setCreatedVersionId(response.versionId)\n }\n\n if (pendingFiles.length < 1) {\n setIsSubmitting(false)\n onCloseVersionUpload()\n }\n } catch (error: any) {\n setError(error)\n setIsSubmitting(false)\n }\n },\n [onUploadVersion, pendingFiles.length, onCloseVersionUpload, latestVersion, effectiveProductId],\n )\n\n // Update form when version data changes (only when query is used as fallback)\n useEffect(() => {\n if (!isOpen || latestVersionNumber != null) return\n\n if (version) {\n setForm((prev) => ({ ...prev, version: version.version + 1 }))\n } else {\n setForm(defaultFormData)\n }\n\n return () => {\n setForm(defaultFormData)\n }\n }, [isOpen, version, latestVersionNumber])\n\n // Default product name: prefer last submitted name for same folder, else last folder product\n useEffect(() => {\n if (!isOpen || productId || folderProducts.length === 0) return\n // Only auto-fill if user hasn't changed the name from default\n if (form.name !== defaultFormData.name) return\n\n // Prefer the product name from the last successful submit on this folder\n const lastSubmitted = lastSubmittedRef.current\n if (lastSubmitted && lastSubmitted.folderId === folderId) {\n const exists = folderProducts.some((p) => p.name === lastSubmitted.productName)\n if (exists) {\n setForm((prev) => ({ ...prev, name: lastSubmitted.productName }))\n return\n }\n }\n\n // Fallback: use the last product in the folder list\n const lastProduct = folderProducts[folderProducts.length - 1]\n if (lastProduct) {\n setForm((prev) => ({ ...prev, name: lastProduct.name }))\n }\n }, [isOpen, productId, folderProducts])\n\n // Auto-set version, productType, and task when a matched product is found, reset when match is lost\n useEffect(() => {\n if (!isOpen || productId) return\n\n if (matchedProduct) {\n setForm((prev) => ({\n ...prev,\n productType: matchedProduct.productType,\n ...(matchedProduct.latestVersion && {\n version: matchedProduct.latestVersion.version + 1,\n }),\n }))\n\n const matchedTask = matchedProduct.latestVersion?.task\n if (matchedTask && (userTaskId === null || isTaskAutoLinkedRef.current)) {\n // Auto-link task from matched product's latest version\n setUserTaskId(matchedTask.id)\n setLinkedTask({\n id: matchedTask.id,\n name: matchedTask.name,\n label: matchedTask.label,\n taskType: matchedTask.taskType,\n })\n isTaskAutoLinkedRef.current = true\n } else if (!matchedTask && isTaskAutoLinkedRef.current) {\n // Matched product has no task — clear the auto-linked one\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n }\n } else {\n // Match lost — reset version back to default for new product\n setForm((prev) => ({ ...prev, version: defaultFormData.version }))\n // Clear auto-linked task (only if it was auto-set, not user-chosen)\n if (userTaskId === null || isTaskAutoLinkedRef.current) {\n setUserTaskId(null)\n setLinkedTask(null)\n isTaskAutoLinkedRef.current = false\n }\n }\n }, [isOpen, productId, matchedProduct])\n\n // Wrap setUserTaskId so consumers use a simple string setter\n // Any explicit user action (pick or clear) marks the task as not auto-linked\n const setTaskId = useCallback((id: string) => {\n setUserTaskId(id)\n isTaskAutoLinkedRef.current = false\n }, [])\n\n const value = useMemo(\n () => ({\n productId,\n setProductId,\n folderId,\n taskId,\n linkedTask,\n isLoadingTask,\n setTaskId,\n setLinkedTask,\n setFolderId,\n isOpen,\n projectName,\n latestVersion,\n pendingFiles,\n setPendingFiles,\n onOpenVersionUpload,\n onCloseVersionUpload,\n onUploadVersion,\n extractAndSetVersionFromFiles,\n form,\n setForm,\n isSubmitting,\n error,\n createdProductId,\n createdVersionId,\n handleFormChange,\n handleFormSubmit,\n folderProducts,\n isFolderProductsLoading,\n matchedProduct,\n dispatch,\n }),\n [\n folderId,\n setFolderId,\n productId,\n taskId,\n linkedTask,\n isLoadingTask,\n setTaskId,\n setLinkedTask,\n setProductId,\n isOpen,\n projectName,\n latestVersion,\n pendingFiles,\n setPendingFiles,\n onOpenVersionUpload,\n onCloseVersionUpload,\n onUploadVersion,\n extractAndSetVersionFromFiles,\n form,\n isSubmitting,\n error,\n createdProductId,\n createdVersionId,\n handleFormChange,\n handleFormSubmit,\n folderProducts,\n isFolderProductsLoading,\n matchedProduct,\n dispatch,\n ],\n )\n\n return <VersionUploadContext.Provider value={value}>{children}</VersionUploadContext.Provider>\n}\n\nexport const useVersionUploadContext = (): VersionUploadContextType => {\n const context = useContext(VersionUploadContext)\n if (context === undefined) {\n throw new Error('useVersionUploadContext must be used within a VersionUploadProvider')\n }\n return context\n}\n\n// Same as useVersionUploadContext but returns null instead of throwing when no provider is mounted.\n// Use in shared components that may render under pages without a VersionUploadProvider.\nexport const useOptionalVersionUploadContext = (): VersionUploadContextType | null => {\n return useContext(VersionUploadContext) ?? null\n}\n"],"names":["VersionUploadContext","createContext","defaultFormData","VersionUploadProvider","children","projectName","onVersionCreated","dispatch","folderId","setFolderId","useState","productId","setProductId","userTaskId","setUserTaskId","linkedTask","setLinkedTask","isOpen","setIsOpen","pendingFiles","setPendingFiles","form","setForm","isSubmitting","setIsSubmitting","error","setError","createdProductId","setCreatedProductId","createdVersionId","setCreatedVersionId","latestVersionNumber","setLatestVersionNumber","latestVersionId","setLatestVersionId","isTaskAutoLinkedRef","useRef","lastSubmittedRef","folderProducts","isFolderProductsLoading","useGetFolderProductsQuery","matchedProduct","useMemo","p","effectiveProductId","version","useGetLatestProductVersionQuery","latestVersionData","useGetVersionQuery","taskId","isLoadingTask","onOpenVersionUpload","useCallback","prev","onCloseVersionUpload","item","createProduct","useCreateProductMutation","createVersion","useCreateVersionMutation","onUploadVersion","data","versionRes","createVersionHelper","toast","productRes","createProductAndVersion","extractAndSetVersionFromFiles","files","firstFile","fileName","parseFilename","extractedVersion","extractVersionFromFilename","latestVersion","handleFormChange","key","value","handleFormSubmit","formData","validation","validateFormDataHelper","response","useEffect","lastSubmitted","lastProduct","matchedTask","setTaskId","id","jsx","useVersionUploadContext","context","useContext","useOptionalVersionUploadContext"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("../../../../_virtual/jsx-runtime.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/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");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");const c=require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const y=require("@ynput/ayon-react-components"),j=require("react"),E=require("react-toastify"),R=j.forwardRef(({entities:u,entityType:o,onWatchersUpdate:q,userName:h,...d},l)=>{const p=u.map(e=>({entityId:e.id,entityType:o,projectName:e.projectName})),{data:t=[]}=c.useGetEntitiesWatchersQuery({entities:p},{skip:!u.length}),i=Array.from(new Set(t.flatMap(e=>e.watchers))),[m]=c.useSetEntitiesWatchersMutation(),w=async e=>{const s=e.filter(r=>!i.includes(r)),a=i.filter(r=>!e.includes(r)),f=t.map(r=>{const n=r.watchers.filter(W=>!a.includes(W));return n.push(...s),{...r,watchers:n}});try{await m({entities:f}).unwrap(),q&&q(s,a)}catch{E.toast.error("Failed to update watchers")}};return g.jsxRuntimeExports.jsx(y.WatcherSelect,{align:"right",...d,value:i,currentUser:h,onChange:w,ref:l,buttonProps:{"data-tooltip":"Watchers"}})});exports.Watchers=R;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("../../../../_virtual/jsx-runtime.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");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");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");const c=require("../../api/queries/watchers/getWatchers.cjs.js");require("../../api/queries/uris/getUris.cjs.js");const y=require("@ynput/ayon-react-components"),j=require("react"),E=require("react-toastify"),R=j.forwardRef(({entities:u,entityType:o,onWatchersUpdate:q,userName:h,...d},l)=>{const p=u.map(e=>({entityId:e.id,entityType:o,projectName:e.projectName})),{data:t=[]}=c.useGetEntitiesWatchersQuery({entities:p},{skip:!u.length}),i=Array.from(new Set(t.flatMap(e=>e.watchers))),[m]=c.useSetEntitiesWatchersMutation(),w=async e=>{const s=e.filter(r=>!i.includes(r)),a=i.filter(r=>!e.includes(r)),f=t.map(r=>{const n=r.watchers.filter(W=>!a.includes(W));return n.push(...s),{...r,watchers:n}});try{await m({entities:f}).unwrap(),q&&q(s,a)}catch{E.toast.error("Failed to update watchers")}};return g.jsxRuntimeExports.jsx(y.WatcherSelect,{align:"right",...d,value:i,currentUser:h,onChange:w,ref:l,buttonProps:{"data-tooltip":"Watchers"}})});exports.Watchers=R;
|
|
2
2
|
//# sourceMappingURL=Watchers.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Watchers.cjs.js","sources":["../../../../../src/components/Watchers/Watchers.tsx"],"sourcesContent":["import { useGetEntitiesWatchersQuery, useSetEntitiesWatchersMutation } from '@shared/api'\nimport { DropdownRef, WatcherSelect, WatcherSelectProps } from '@ynput/ayon-react-components'\nimport { forwardRef } from 'react'\nimport { toast } from 'react-toastify'\n\ninterface WatchersProps extends Omit<WatcherSelectProps, 'currentUser' | 'value'> {\n entities: { id: string; projectName: string }[]\n entityType: string\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n userName: string\n}\n\nexport const Watchers = forwardRef<DropdownRef, WatchersProps>(\n ({ entities, entityType, onWatchersUpdate, userName, ...props }, ref) => {\n const entitiesQuery = entities.map((entity) => ({\n entityId: entity.id,\n entityType,\n projectName: entity.projectName,\n }))\n\n const { data: watchers = [] } = useGetEntitiesWatchersQuery(\n {\n entities: entitiesQuery,\n },\n { skip: !entities.length },\n )\n\n // merge all watchers into a single unique array\n const uniqueWatchers = Array.from(new Set(watchers.flatMap((watcher) => watcher.watchers)))\n\n const [setEntitiesWatchers] = useSetEntitiesWatchersMutation()\n\n const handleChange = async (value: string[]) => {\n // find the difference between the current watchers and the new watchers\n // which users were added and which were removed\n const added = value.filter((watcher) => !uniqueWatchers.includes(watcher))\n const removed = uniqueWatchers.filter((watcher) => !value.includes(watcher))\n\n // for each entity, add or remove the watchers\n // we do this to preserve the unique watchers for each entity (rather than setting the same watchers for all entities)\n const updatedEntities = watchers.map((entity) => {\n // first remove\n const newWatchers = entity.watchers.filter((watcher) => !removed.includes(watcher))\n // then add\n newWatchers.push(...added)\n\n return {\n ...entity,\n watchers: newWatchers,\n }\n })\n\n // update\n try {\n await setEntitiesWatchers({ entities: updatedEntities }).unwrap()\n onWatchersUpdate && onWatchersUpdate(added, removed)\n } catch (error) {\n toast.error('Failed to update watchers')\n }\n }\n\n return (\n <WatcherSelect\n align=\"right\"\n {...props}\n value={uniqueWatchers}\n currentUser={userName}\n onChange={handleChange}\n ref={ref}\n // @ts-expect-error\n buttonProps={{ 'data-tooltip': 'Watchers' }}\n />\n )\n },\n)\n"],"names":["Watchers","forwardRef","entities","entityType","onWatchersUpdate","userName","props","ref","entitiesQuery","entity","watchers","useGetEntitiesWatchersQuery","uniqueWatchers","watcher","setEntitiesWatchers","useSetEntitiesWatchersMutation","handleChange","value","added","removed","updatedEntities","newWatchers","toast","jsx","WatcherSelect"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Watchers.cjs.js","sources":["../../../../../src/components/Watchers/Watchers.tsx"],"sourcesContent":["import { useGetEntitiesWatchersQuery, useSetEntitiesWatchersMutation } from '@shared/api'\nimport { DropdownRef, WatcherSelect, WatcherSelectProps } from '@ynput/ayon-react-components'\nimport { forwardRef } from 'react'\nimport { toast } from 'react-toastify'\n\ninterface WatchersProps extends Omit<WatcherSelectProps, 'currentUser' | 'value'> {\n entities: { id: string; projectName: string }[]\n entityType: string\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n userName: string\n}\n\nexport const Watchers = forwardRef<DropdownRef, WatchersProps>(\n ({ entities, entityType, onWatchersUpdate, userName, ...props }, ref) => {\n const entitiesQuery = entities.map((entity) => ({\n entityId: entity.id,\n entityType,\n projectName: entity.projectName,\n }))\n\n const { data: watchers = [] } = useGetEntitiesWatchersQuery(\n {\n entities: entitiesQuery,\n },\n { skip: !entities.length },\n )\n\n // merge all watchers into a single unique array\n const uniqueWatchers = Array.from(new Set(watchers.flatMap((watcher) => watcher.watchers)))\n\n const [setEntitiesWatchers] = useSetEntitiesWatchersMutation()\n\n const handleChange = async (value: string[]) => {\n // find the difference between the current watchers and the new watchers\n // which users were added and which were removed\n const added = value.filter((watcher) => !uniqueWatchers.includes(watcher))\n const removed = uniqueWatchers.filter((watcher) => !value.includes(watcher))\n\n // for each entity, add or remove the watchers\n // we do this to preserve the unique watchers for each entity (rather than setting the same watchers for all entities)\n const updatedEntities = watchers.map((entity) => {\n // first remove\n const newWatchers = entity.watchers.filter((watcher) => !removed.includes(watcher))\n // then add\n newWatchers.push(...added)\n\n return {\n ...entity,\n watchers: newWatchers,\n }\n })\n\n // update\n try {\n await setEntitiesWatchers({ entities: updatedEntities }).unwrap()\n onWatchersUpdate && onWatchersUpdate(added, removed)\n } catch (error) {\n toast.error('Failed to update watchers')\n }\n }\n\n return (\n <WatcherSelect\n align=\"right\"\n {...props}\n value={uniqueWatchers}\n currentUser={userName}\n onChange={handleChange}\n ref={ref}\n // @ts-expect-error\n buttonProps={{ 'data-tooltip': 'Watchers' }}\n />\n )\n },\n)\n"],"names":["Watchers","forwardRef","entities","entityType","onWatchersUpdate","userName","props","ref","entitiesQuery","entity","watchers","useGetEntitiesWatchersQuery","uniqueWatchers","watcher","setEntitiesWatchers","useSetEntitiesWatchersMutation","handleChange","value","added","removed","updatedEntities","newWatchers","toast","jsx","WatcherSelect"],"mappings":"yjKAYaA,EAAWC,EAAAA,WACtB,CAAC,CAAE,SAAAC,EAAU,WAAAC,EAAY,iBAAAC,EAAkB,SAAAC,EAAU,GAAGC,CAAA,EAASC,IAAQ,CACvE,MAAMC,EAAgBN,EAAS,IAAKO,IAAY,CAC9C,SAAUA,EAAO,GACjB,WAAAN,EACA,YAAaM,EAAO,WAAA,EACpB,EAEI,CAAE,KAAMC,EAAW,CAAA,GAAOC,EAAAA,4BAC9B,CACE,SAAUH,CAAA,EAEZ,CAAE,KAAM,CAACN,EAAS,MAAA,CAAO,EAIrBU,EAAiB,MAAM,KAAK,IAAI,IAAIF,EAAS,QAASG,GAAYA,EAAQ,QAAQ,CAAC,CAAC,EAEpF,CAACC,CAAmB,EAAIC,iCAAA,EAExBC,EAAe,MAAOC,GAAoB,CAG9C,MAAMC,EAAQD,EAAM,OAAQJ,GAAY,CAACD,EAAe,SAASC,CAAO,CAAC,EACnEM,EAAUP,EAAe,OAAQC,GAAY,CAACI,EAAM,SAASJ,CAAO,CAAC,EAIrEO,EAAkBV,EAAS,IAAKD,GAAW,CAE/C,MAAMY,EAAcZ,EAAO,SAAS,OAAQI,GAAY,CAACM,EAAQ,SAASN,CAAO,CAAC,EAElF,OAAAQ,EAAY,KAAK,GAAGH,CAAK,EAElB,CACL,GAAGT,EACH,SAAUY,CAAA,CAEd,CAAC,EAGD,GAAI,CACF,MAAMP,EAAoB,CAAE,SAAUM,CAAA,CAAiB,EAAE,OAAA,EACzDhB,GAAoBA,EAAiBc,EAAOC,CAAO,CACrD,MAAgB,CACdG,EAAAA,MAAM,MAAM,2BAA2B,CACzC,CACF,EAEA,OACEC,EAAAA,kBAAAA,IAACC,EAAAA,cAAA,CACC,MAAM,QACL,GAAGlB,EACJ,MAAOM,EACP,YAAaP,EACb,SAAUW,EACV,IAAAT,EAEA,YAAa,CAAE,eAAgB,UAAA,CAAW,CAAA,CAGhD,CACF"}
|
|
@@ -62,6 +62,7 @@ import "../../api/queries/entityLists/getListsAttributes.es.js";
|
|
|
62
62
|
import "../../api/queries/entityLists/updateListsAttributes.es.js";
|
|
63
63
|
import "../../api/queries/entityLists/listFolders.es.js";
|
|
64
64
|
import "../../api/queries/folders/getFolders.es.js";
|
|
65
|
+
import "../../api/queries/folders/getFolderDeleteInfo.es.js";
|
|
65
66
|
import "../../api/queries/grouping/getGrouping.es.js";
|
|
66
67
|
import "../../api/queries/links/updateLinks.es.js";
|
|
67
68
|
import "../../api/queries/links/getLinks.es.js";
|
|
@@ -94,7 +95,7 @@ import "../../api/queries/uris/getUris.es.js";
|
|
|
94
95
|
import { WatcherSelect as x } from "@ynput/ayon-react-components";
|
|
95
96
|
import { forwardRef as y } from "react";
|
|
96
97
|
import { toast as S } from "react-toastify";
|
|
97
|
-
const
|
|
98
|
+
const dr = y(
|
|
98
99
|
({ entities: i, entityType: n, onWatchersUpdate: p, userName: c, ...h }, u) => {
|
|
99
100
|
const d = i.map((t) => ({
|
|
100
101
|
entityId: t.id,
|
|
@@ -134,6 +135,6 @@ const ur = y(
|
|
|
134
135
|
}
|
|
135
136
|
);
|
|
136
137
|
export {
|
|
137
|
-
|
|
138
|
+
dr as Watchers
|
|
138
139
|
};
|
|
139
140
|
//# sourceMappingURL=Watchers.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Watchers.es.js","sources":["../../../../../src/components/Watchers/Watchers.tsx"],"sourcesContent":["import { useGetEntitiesWatchersQuery, useSetEntitiesWatchersMutation } from '@shared/api'\nimport { DropdownRef, WatcherSelect, WatcherSelectProps } from '@ynput/ayon-react-components'\nimport { forwardRef } from 'react'\nimport { toast } from 'react-toastify'\n\ninterface WatchersProps extends Omit<WatcherSelectProps, 'currentUser' | 'value'> {\n entities: { id: string; projectName: string }[]\n entityType: string\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n userName: string\n}\n\nexport const Watchers = forwardRef<DropdownRef, WatchersProps>(\n ({ entities, entityType, onWatchersUpdate, userName, ...props }, ref) => {\n const entitiesQuery = entities.map((entity) => ({\n entityId: entity.id,\n entityType,\n projectName: entity.projectName,\n }))\n\n const { data: watchers = [] } = useGetEntitiesWatchersQuery(\n {\n entities: entitiesQuery,\n },\n { skip: !entities.length },\n )\n\n // merge all watchers into a single unique array\n const uniqueWatchers = Array.from(new Set(watchers.flatMap((watcher) => watcher.watchers)))\n\n const [setEntitiesWatchers] = useSetEntitiesWatchersMutation()\n\n const handleChange = async (value: string[]) => {\n // find the difference between the current watchers and the new watchers\n // which users were added and which were removed\n const added = value.filter((watcher) => !uniqueWatchers.includes(watcher))\n const removed = uniqueWatchers.filter((watcher) => !value.includes(watcher))\n\n // for each entity, add or remove the watchers\n // we do this to preserve the unique watchers for each entity (rather than setting the same watchers for all entities)\n const updatedEntities = watchers.map((entity) => {\n // first remove\n const newWatchers = entity.watchers.filter((watcher) => !removed.includes(watcher))\n // then add\n newWatchers.push(...added)\n\n return {\n ...entity,\n watchers: newWatchers,\n }\n })\n\n // update\n try {\n await setEntitiesWatchers({ entities: updatedEntities }).unwrap()\n onWatchersUpdate && onWatchersUpdate(added, removed)\n } catch (error) {\n toast.error('Failed to update watchers')\n }\n }\n\n return (\n <WatcherSelect\n align=\"right\"\n {...props}\n value={uniqueWatchers}\n currentUser={userName}\n onChange={handleChange}\n ref={ref}\n // @ts-expect-error\n buttonProps={{ 'data-tooltip': 'Watchers' }}\n />\n )\n },\n)\n"],"names":["Watchers","forwardRef","entities","entityType","onWatchersUpdate","userName","props","ref","entitiesQuery","entity","watchers","useGetEntitiesWatchersQuery","uniqueWatchers","watcher","setEntitiesWatchers","useSetEntitiesWatchersMutation","handleChange","value","added","removed","updatedEntities","newWatchers","toast","jsx","WatcherSelect"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Watchers.es.js","sources":["../../../../../src/components/Watchers/Watchers.tsx"],"sourcesContent":["import { useGetEntitiesWatchersQuery, useSetEntitiesWatchersMutation } from '@shared/api'\nimport { DropdownRef, WatcherSelect, WatcherSelectProps } from '@ynput/ayon-react-components'\nimport { forwardRef } from 'react'\nimport { toast } from 'react-toastify'\n\ninterface WatchersProps extends Omit<WatcherSelectProps, 'currentUser' | 'value'> {\n entities: { id: string; projectName: string }[]\n entityType: string\n onWatchersUpdate?: (added: any[], removed: any[]) => void\n userName: string\n}\n\nexport const Watchers = forwardRef<DropdownRef, WatchersProps>(\n ({ entities, entityType, onWatchersUpdate, userName, ...props }, ref) => {\n const entitiesQuery = entities.map((entity) => ({\n entityId: entity.id,\n entityType,\n projectName: entity.projectName,\n }))\n\n const { data: watchers = [] } = useGetEntitiesWatchersQuery(\n {\n entities: entitiesQuery,\n },\n { skip: !entities.length },\n )\n\n // merge all watchers into a single unique array\n const uniqueWatchers = Array.from(new Set(watchers.flatMap((watcher) => watcher.watchers)))\n\n const [setEntitiesWatchers] = useSetEntitiesWatchersMutation()\n\n const handleChange = async (value: string[]) => {\n // find the difference between the current watchers and the new watchers\n // which users were added and which were removed\n const added = value.filter((watcher) => !uniqueWatchers.includes(watcher))\n const removed = uniqueWatchers.filter((watcher) => !value.includes(watcher))\n\n // for each entity, add or remove the watchers\n // we do this to preserve the unique watchers for each entity (rather than setting the same watchers for all entities)\n const updatedEntities = watchers.map((entity) => {\n // first remove\n const newWatchers = entity.watchers.filter((watcher) => !removed.includes(watcher))\n // then add\n newWatchers.push(...added)\n\n return {\n ...entity,\n watchers: newWatchers,\n }\n })\n\n // update\n try {\n await setEntitiesWatchers({ entities: updatedEntities }).unwrap()\n onWatchersUpdate && onWatchersUpdate(added, removed)\n } catch (error) {\n toast.error('Failed to update watchers')\n }\n }\n\n return (\n <WatcherSelect\n align=\"right\"\n {...props}\n value={uniqueWatchers}\n currentUser={userName}\n onChange={handleChange}\n ref={ref}\n // @ts-expect-error\n buttonProps={{ 'data-tooltip': 'Watchers' }}\n />\n )\n },\n)\n"],"names":["Watchers","forwardRef","entities","entityType","onWatchersUpdate","userName","props","ref","entitiesQuery","entity","watchers","useGetEntitiesWatchersQuery","uniqueWatchers","watcher","setEntitiesWatchers","useSetEntitiesWatchersMutation","handleChange","value","added","removed","updatedEntities","newWatchers","toast","jsx","WatcherSelect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,MAAMA,KAAWC;AAAA,EACtB,CAAC,EAAE,UAAAC,GAAU,YAAAC,GAAY,kBAAAC,GAAkB,UAAAC,GAAU,GAAGC,EAAA,GAASC,MAAQ;AACvE,UAAMC,IAAgBN,EAAS,IAAI,CAACO,OAAY;AAAA,MAC9C,UAAUA,EAAO;AAAA,MACjB,YAAAN;AAAA,MACA,aAAaM,EAAO;AAAA,IAAA,EACpB,GAEI,EAAE,MAAMC,IAAW,CAAA,MAAOC;AAAA,MAC9B;AAAA,QACE,UAAUH;AAAA,MAAA;AAAA,MAEZ,EAAE,MAAM,CAACN,EAAS,OAAA;AAAA,IAAO,GAIrBU,IAAiB,MAAM,KAAK,IAAI,IAAIF,EAAS,QAAQ,CAACG,MAAYA,EAAQ,QAAQ,CAAC,CAAC,GAEpF,CAACC,CAAmB,IAAIC,EAAA,GAExBC,IAAe,OAAOC,MAAoB;AAG9C,YAAMC,IAAQD,EAAM,OAAO,CAACJ,MAAY,CAACD,EAAe,SAASC,CAAO,CAAC,GACnEM,IAAUP,EAAe,OAAO,CAACC,MAAY,CAACI,EAAM,SAASJ,CAAO,CAAC,GAIrEO,IAAkBV,EAAS,IAAI,CAACD,MAAW;AAE/C,cAAMY,IAAcZ,EAAO,SAAS,OAAO,CAACI,MAAY,CAACM,EAAQ,SAASN,CAAO,CAAC;AAElF,eAAAQ,EAAY,KAAK,GAAGH,CAAK,GAElB;AAAA,UACL,GAAGT;AAAA,UACH,UAAUY;AAAA,QAAA;AAAA,MAEd,CAAC;AAGD,UAAI;AACF,cAAMP,EAAoB,EAAE,UAAUM,EAAA,CAAiB,EAAE,OAAA,GACzDhB,KAAoBA,EAAiBc,GAAOC,CAAO;AAAA,MACrD,QAAgB;AACd,QAAAG,EAAM,MAAM,2BAA2B;AAAA,MACzC;AAAA,IACF;AAEA,WACEC,gBAAAA,EAAAA;AAAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAM;AAAA,QACL,GAAGlB;AAAA,QACJ,OAAOM;AAAA,QACP,aAAaP;AAAA,QACb,UAAUW;AAAA,QACV,KAAAT;AAAA,QAEA,aAAa,EAAE,gBAAgB,WAAA;AAAA,MAAW;AAAA,IAAA;AAAA,EAGhD;AACF;"}
|