@ynput/ayon-frontend-shared 0.3.51 → 0.3.52
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 +33 -31
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/NewEntity.cjs.js +2 -0
- package/dist/NewEntity.cjs.js.map +1 -0
- package/dist/NewEntity.es.js +16 -0
- package/dist/NewEntity.es.js.map +1 -0
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +236 -230
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +34 -30
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.es5.js +2 -5
- package/dist/_virtual/index.es5.js.map +1 -1
- package/dist/_virtual/index.es6.js +5 -2
- package/dist/_virtual/index.es6.js.map +1 -1
- package/dist/context.cjs.js +1 -1
- package/dist/context.es.js +54 -56
- package/dist/context.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +20 -18
- package/dist/index.es.js.map +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/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/Transition.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/actions/refreshActiveAndPurgeOthers.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js +31 -21
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.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 +55 -52
- package/dist/shared/src/api/queries/entities/transformDetailsPanelData.es.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entities/updateEntity.es.js +129 -127
- package/dist/shared/src/api/queries/entities/updateEntity.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 +96 -93
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.cjs.js.map +1 -1
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js +40 -38
- package/dist/shared/src/components/ColumnHeaderMenuUI.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 +13 -11
- 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 +40 -38
- 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 +40 -38
- 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 +40 -38
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityIcon/EntityIcon.es.js +40 -38
- package/dist/shared/src/components/EntityIcon/EntityIcon.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 +40 -38
- 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 +13 -11
- package/dist/shared/src/components/EntityPanelUploader/EntityPanelUploaderDialog.es.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.cjs.js.map +1 -1
- package/dist/shared/src/components/EntityPath/SegmentProvider.es.js +40 -38
- package/dist/shared/src/components/EntityPath/SegmentProvider.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 +44 -42
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinksManager.es.js +40 -38
- package/dist/shared/src/components/LinksManager/LinksManager.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 +40 -38
- 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 +40 -38
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.cjs.js.map +1 -1
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js +40 -38
- package/dist/shared/src/components/ListMetaData/ListMetaData.es.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js +1 -1
- package/dist/shared/src/components/Menu/Menu.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/Menu.es.js +40 -38
- package/dist/shared/src/components/Menu/Menu.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuItem.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuItem.es.js +38 -36
- package/dist/shared/src/components/Menu/MenuItem.es.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js +1 -1
- package/dist/shared/src/components/Menu/MenuList.cjs.js.map +1 -1
- package/dist/shared/src/components/Menu/MenuList.es.js +40 -38
- package/dist/shared/src/components/Menu/MenuList.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/PowerpackButton.es.js +40 -38
- package/dist/shared/src/components/Powerpack/PowerpackButton.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 +40 -38
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js +11 -9
- package/dist/shared/src/components/ProjectTableSettings/ColumnsSettings.es.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.cjs.js.map +1 -1
- package/dist/shared/src/components/ProjectTableSettings/ProjectTableSettings.es.js +9 -7
- 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 +40 -38
- 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 +113 -111
- 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 +40 -38
- 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 +40 -38
- package/dist/shared/src/components/RenameForm/RenameForm.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 +13 -11
- 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 +14 -12
- 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 +13 -11
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.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 +13 -11
- package/dist/shared/src/components/ReviewablesSelector/Card.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 +76 -74
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.cjs.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js +43 -41
- package/dist/shared/src/components/SearchFilter/useDateRangeFilter.es.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.cjs.js.map +1 -1
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.es.js +40 -38
- package/dist/shared/src/components/SettingsPanel/SettingsPanel.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 +15 -13
- 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 +13 -11
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.cjs.js +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.cjs.js.map +1 -1
- package/dist/shared/src/components/SyncButton/SyncButton.es.js +2 -3
- package/dist/shared/src/components/SyncButton/SyncButton.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.cjs.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js +40 -38
- package/dist/shared/src/components/Thumbnail/StackedThumbnails.es.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.cjs.js.map +1 -1
- package/dist/shared/src/components/VersionUploader/components/UploadVersionForm.es.js +13 -11
- 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 +17 -15
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.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 +13 -11
- 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 +40 -38
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +118 -119
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js +40 -38
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/LinkedTaskRow.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js +13 -11
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/DetailsPanelMoreMenu.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.es.js +13 -11
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelMoreMenu/hooks/useContextAccess.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 +40 -38
- 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 +21 -19
- 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 +13 -11
- 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 +7 -5
- 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 -3
- 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 +40 -38
- package/dist/shared/src/containers/DetailsPanel/hooks/useGetEntityPath.es.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/EntityPickerDialog/EntityPickerDialog.es.js +12 -10
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- 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 +40 -38
- 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 -4
- 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 +13 -11
- 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 +13 -11
- 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 +13 -11
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.es.js +171 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.cjs.js → ActivityFieldChange/ActivityFieldChange.styled.cjs.js} +5 -11
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.es.js → ActivityFieldChange/ActivityFieldChange.styled.es.js} +8 -14
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.styled.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.cjs.js +21 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.es.js +36 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/FieldValue.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.es.js +8 -0
- package/dist/shared/src/containers/Feed/components/ActivityFieldChange/hooks/getContextParents.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityGroup/ActivityGroup.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityGroup/ActivityGroup.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js +36 -25
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +15 -13
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.es.js +52 -57
- package/dist/shared/src/containers/Feed/components/ActivityVersions/ActivityVersions.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 +7 -5
- 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 +17 -15
- package/dist/shared/src/containers/Feed/components/CommentInput/helpers.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js +40 -38
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useAnnotationsSync.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js +40 -38
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js +37 -35
- package/dist/shared/src/containers/Feed/components/FeedSearchFilter.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.es.js +40 -38
- package/dist/shared/src/containers/Feed/components/FileUploadCard/FileUploadCard.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 +7 -5
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.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 +43 -41
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/getActivityUserName.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.es.js +14 -17
- package/dist/shared/src/containers/Feed/helpers/mergeSimilarActivities.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js +36 -26
- package/dist/shared/src/containers/Feed/hooks/useTransformActivities.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTable.es.js +13 -11
- package/dist/shared/src/containers/ListTable/ListTable.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js +7 -5
- package/dist/shared/src/containers/ListTable/ListTableCell.es.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.cjs.js.map +1 -1
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js +13 -11
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.cjs.js +2 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.cjs.js.map +1 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.es.js +35 -0
- package/dist/shared/src/containers/MoveEntityDialog/MoveEntityDialog.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.es.js +309 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.cjs.js +122 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.es.js +135 -0
- package/dist/shared/src/containers/NewEntity/components/FolderSequence.styled.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js +47 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js +661 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntity.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.cjs.js +66 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.es.js +141 -0
- package/dist/shared/src/containers/NewEntity/components/NewEntityForm.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.es.js +43 -0
- package/dist/shared/src/containers/NewEntity/components/TypeEditor.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js +554 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContext.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.es.js +6 -0
- package/dist/shared/src/containers/NewEntity/context/NewEntityContextInstance.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.es.js +26 -0
- package/dist/shared/src/containers/NewEntity/hooks/useCreateEntityShortcuts.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.es.js +16 -0
- package/dist/shared/src/containers/NewEntity/util/entityDefinitions.es.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.cjs.js +2 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.cjs.js.map +1 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.es.js +16 -0
- package/dist/shared/src/containers/NewEntity/util/getSequence.es.js.map +1 -0
- 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 +642 -675
- 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 +13 -11
- 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 +41 -39
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnDndProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js +44 -42
- package/dist/shared/src/containers/ProjectTreeTable/components/ColumnHeaderMenu.es.js.map +1 -1
- 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 +13 -11
- 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 +11 -9
- package/dist/shared/src/containers/ProjectTreeTable/context/CellEditingProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js +44 -42
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.es.js +22 -16
- package/dist/shared/src/containers/ProjectTreeTable/context/DetailsPanelEntityContext.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 +42 -40
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js +156 -153
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js +7 -6
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectedRowsContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.es.js +7 -6
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsContext.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 +8 -6
- package/dist/shared/src/containers/ProjectTreeTable/context/SelectionCellsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.es.js +40 -38
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useAttributesList.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 +16 -14
- 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 +13 -11
- 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 +233 -218
- 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 +11 -9
- 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 +13 -11
- 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 +40 -38
- 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 +43 -41
- 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 +13 -11
- 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 +13 -11
- 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 +11 -9
- 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 +121 -150
- 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 +39 -37
- 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 +13 -11
- 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 +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useSortBySettings.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.es.js +38 -36
- package/dist/shared/src/containers/ProjectTreeTable/hooks/useUpdateTableData.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 +24 -22
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.es.js +47 -30
- package/dist/shared/src/containers/ProjectTreeTable/utils/clientFilterToQueryFilter.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 +113 -91
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.es.js +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/widgets/BooleanWidget.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 +33 -31
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.es.js +13 -11
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CommentsWidget.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 +15 -13
- package/dist/shared/src/containers/ProjectTreeTable/widgets/LinksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.es.js +39 -37
- package/dist/shared/src/containers/ProjectTreeTable/widgets/MarkdownWidget.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 +13 -11
- 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 +13 -11
- 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 +40 -38
- 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 +13 -11
- 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 +256 -246
- package/dist/shared/src/containers/SimpleTable/SimpleTable.es.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.cjs.js.map +1 -1
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js +15 -15
- package/dist/shared/src/containers/SimpleTable/SimpleTableRowTemplate.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js +2 -2
- package/dist/shared/src/containers/Slicer/components/Slicer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js +206 -162
- package/dist/shared/src/containers/Slicer/components/Slicer.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.es.js +40 -38
- package/dist/shared/src/containers/Slicer/components/SlicerDropdownFallback.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 +13 -11
- 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 +82 -74
- 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 +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js +2 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.cjs.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js +470 -0
- package/dist/shared/src/containers/Slicer/hooks/useHierarchyContextMenuItems.es.js.map +1 -0
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js +42 -40
- package/dist/shared/src/containers/Slicer/hooks/useSlicerCounts.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRemotes.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerRowSelection.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.es.js +40 -38
- package/dist/shared/src/containers/Slicer/hooks/useSlicerSplitter.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 +50 -48
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.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 +40 -38
- 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 +40 -38
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.es.js +40 -38
- package/dist/shared/src/containers/Views/ViewsMenuContainer/ViewsMenuContainer.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 +42 -40
- package/dist/shared/src/containers/Views/context/ViewsContext.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 +43 -41
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.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 +44 -42
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.cjs.js +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/EntityUpdatesContext.es.js +46 -44
- package/dist/shared/src/context/EntityUpdatesContext.es.js.map +1 -1
- package/dist/shared/src/context/MenuContext.cjs.js +1 -1
- package/dist/shared/src/context/MenuContext.cjs.js.map +1 -1
- package/dist/shared/src/context/MenuContext.es.js +1 -0
- package/dist/shared/src/context/MenuContext.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 +44 -42
- package/dist/shared/src/context/PowerpackContext.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 +126 -99
- package/dist/shared/src/context/ProjectFoldersContext.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 +42 -40
- package/dist/shared/src/context/SubtasksModulesContext.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 +15 -13
- package/dist/shared/src/context/WebsocketContext.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 +40 -38
- package/dist/shared/src/hooks/useEntityUpdate.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 +40 -38
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useHierarchyTable.es.js +40 -38
- package/dist/shared/src/hooks/useHierarchyTable.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 +40 -38
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/types/NewEntity.d.ts +2 -0
- package/dist/types/containers/Feed/components/ActivityFieldChange/ActivityFieldChange.d.ts +36 -0
- package/dist/types/containers/Feed/components/{ActivityStatusChange/ActivityStatusChange.styled.d.ts → ActivityFieldChange/ActivityFieldChange.styled.d.ts} +1 -1
- package/dist/types/containers/Feed/components/ActivityFieldChange/FieldValue.d.ts +11 -0
- package/dist/types/containers/Feed/components/ActivityGroup/ActivityGroup.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +1 -1
- package/dist/types/containers/MoveEntityDialog/MoveEntityDialog.d.ts +10 -0
- package/dist/types/containers/MoveEntityDialog/index.d.ts +2 -0
- package/dist/types/containers/MoveEntityDialog/types.d.ts +12 -0
- package/dist/types/containers/NewEntity/components/FolderSequence.d.ts +36 -0
- package/dist/types/containers/NewEntity/components/FolderSequence.styled.d.ts +20 -0
- package/dist/types/containers/NewEntity/components/NewEntity.d.ts +12 -0
- package/dist/types/containers/NewEntity/components/NewEntityForm.d.ts +15 -0
- package/dist/types/containers/NewEntity/components/TypeEditor.d.ts +18 -0
- package/dist/types/containers/NewEntity/context/NewEntityContext.d.ts +37 -0
- package/dist/types/containers/NewEntity/context/NewEntityContextInstance.d.ts +2 -0
- package/dist/types/containers/NewEntity/hooks/useCreateEntityShortcuts.d.ts +21 -0
- package/dist/types/containers/NewEntity/index.d.ts +4 -0
- package/dist/types/containers/NewEntity/util/entityDefinitions.d.ts +7 -0
- package/dist/types/containers/NewEntity/util/getSequence.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/ProjectTreeTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectedRowsContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/context/SelectionCellsContext.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/hooks/useCellContextMenu.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useMoveEntities.d.ts +5 -7
- package/dist/types/containers/ProjectTreeTable/types/overviewContext.d.ts +3 -6
- package/dist/types/containers/ProjectTreeTable/utils/queryFilterToClientFilter.d.ts +6 -0
- package/dist/types/containers/SimpleTable/SimpleTable.types.d.ts +3 -0
- package/dist/types/containers/SimpleTable/SimpleTableRowTemplate.d.ts +1 -1
- package/dist/types/containers/Slicer/components/Slicer.d.ts +2 -1
- package/dist/types/containers/Slicer/context/SlicerContext.d.ts +6 -1
- package/dist/types/containers/Slicer/hooks/index.d.ts +1 -0
- package/dist/types/containers/Slicer/hooks/useHierarchyContextMenuItems.d.ts +15 -0
- package/dist/types/containers/index.d.ts +1 -0
- package/dist/types/context/MenuContext.d.ts +1 -0
- package/dist/types/context/ProjectFoldersContext.d.ts +1 -0
- package/dist/types/context/index.d.ts +0 -1
- package/package.json +13 -4
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js +0 -2
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js +0 -44
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.styled.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js +0 -11
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js +0 -27
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.es.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.cjs.js +0 -2
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.cjs.js.map +0 -1
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.es.js +0 -8
- package/dist/shared/src/containers/Feed/components/ActivityStatusChange/hooks/getContextParents.es.js.map +0 -1
- package/dist/shared/src/context/MoveEntityContext.cjs.js +0 -2
- package/dist/shared/src/context/MoveEntityContext.cjs.js.map +0 -1
- package/dist/shared/src/context/MoveEntityContext.es.js +0 -34
- package/dist/shared/src/context/MoveEntityContext.es.js.map +0 -1
- package/dist/types/containers/Feed/components/ActivityStatusChange/ActivityStatusChange.d.ts +0 -19
- package/dist/types/containers/Feed/components/ActivityStatusChange/ActivityStatusSecondary.d.ts +0 -7
- package/dist/types/context/MoveEntityContext.d.ts +0 -28
- /package/dist/types/containers/Feed/components/{ActivityStatusChange → ActivityFieldChange}/hooks/getContextParents.d.ts +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const F=require("../folders/getFolders.cjs.js");require("../folders/getFolderDeleteInfo.cjs.js");const E=require("../entities/getEntityPanel.cjs.js");require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");const _=require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");require("../entityLists/updateLists.cjs.js");const T=require("./getOverview.cjs.js");require("../entities/getEntity.cjs.js");const j=require("./patchVersions.cjs.js"),H=require("./patchProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("../entities/updateEntity.cjs.js");const V=require("../entities/patchDetailsPanel.cjs.js"),Q=require("./filterRefetchUtils.cjs.js"),b=require("./refetchFilteredEntities.cjs.js"),A=require("../entityLists/getLists.cjs.js"),w=(e,i)=>{if(Object.keys(i).forEach(r=>{r==="attrib"||r==="links"||r==="deleteLinks"||(e[r]=i[r])}),i.attrib&&(e.attrib={...e.attrib,...i.attrib}),i.links){const r=e.links||[],o=i.links||[];e.links||(e.links=[]),e.links=[...r],o.forEach(s=>{const c=e.links.findIndex(d=>d.id===s.id);c!==-1?e.links[c]={...e.links[c],...s}:e.links.push(s)})}if(i.deleteLinks){const r=i.deleteLinks||[];e.links||(e.links=[]),r.forEach(o=>{e.links=e.links.filter(s=>s.id!==o)})}},$=e=>[{type:"overviewTask",id:"LIST"},...e.map(i=>({type:"overviewTask",id:i.entityId})),...e.filter(i=>i.data?.projectName).map(i=>({type:"overviewTask",id:i.data?.projectName}))],W=e=>[...e.map(i=>({type:"folder",id:i.entityId})),...e.filter(i=>i.data?.projectName).map(i=>({type:"folder",id:i.data?.projectName}))],D=(e,i,r)=>({entityId:e,entityType:i,type:"update",data:{deleteLinks:r}}),G=(e,i)=>e.map(r=>D(r.entityId,r.entityType,i)),J=(e,{state:i,dispatch:r},o)=>{const s=e.reduce((c,d)=>(c[d.entityType]||(c[d.entityType]=[]),c[d.entityType].push(d),c),{});s.task&&L(s.task,{state:i,dispatch:r},o),s.folder&&O(s.folder,{state:i,dispatch:r},o)},L=(e,{state:i,dispatch:r},o)=>{const s=$(e),c=T.default.util.selectInvalidatedBy(i,s),d=new Set(e.filter(n=>n.type==="delete"&&n.entityId).map(n=>n.entityId)),l=n=>{for(let a=n.length-1;a>=0;a--)d.has(n[a].id)&&n.splice(a,1)};for(const n of c)if(n.endpointName==="getTasksListInfinite"){const a=r(T.default.util.updateQueryData("getTasksListInfinite",n.originalArgs,t=>{for(const u of e)if(u.type==="create"&&u.data)t.pages[0].tasks.push(u.data);else if(u.type!=="delete")for(const f of t.pages){const y=f.tasks.find(g=>g.id===u.entityId);y&&w(y,u.data)}if(d.size>0)for(const u of t.pages)l(u.tasks)}));o?.push(a)}else{const a=r(T.default.util.updateQueryData(n.endpointName,n.originalArgs,t=>{const u=f=>{Array.isArray(t)?f(t):t.tasks&&Array.isArray(t.tasks)&&f(t.tasks)};for(const f of e)f.type==="create"&&f.data&&n.originalArgs.parentIds?.includes(f.data.folderId)?u(y=>{y.push(f.data)}):f.type!=="delete"&&u(y=>{const g=y.find(S=>S.id===f.entityId);g&&w(g,f.data)});d.size>0&&u(l)}));o?.push(a)}},P=new Map,B=(e,i,r)=>{const o=`${i}:${r.join()}`,s=P.get(o);s&&clearTimeout(s),P.set(o,setTimeout(()=>{P.delete(o),e(T.default.util.invalidateTags(r.map(c=>({type:c,id:i}))))},500))},O=(e,{state:i,dispatch:r},o)=>{const s=F.foldersQueries.util.selectInvalidatedBy(i,W(e)).filter(d=>d.endpointName==="getFolderList"),c=new Set(e.filter(d=>d.type==="delete"&&d.entityId).map(d=>d.entityId));for(const d of s){const l=r(F.foldersQueries.util.updateQueryData(d.endpointName,d.originalArgs,n=>{const a=new Map;n.folders.forEach(t=>{a.set(t.id,t)});for(const t of e)if(t.type==="create"&&t.data)n.folders.push(t.data);else if(t.type!=="delete"){const u=a.get(t.entityId);u&&w(u,t.data)}if(c.size>0)for(let t=n.folders.length-1;t>=0;t--)c.has(n.folders[t].id)&&n.folders.splice(t,1)}));o?.push(l)}},K=(e,{state:i,dispatch:r},o)=>{const s=e.map(l=>({type:"entityListItem",id:l.entityId})),c=A.default.util.selectInvalidatedBy(i,s),d=new Set(e.filter(l=>l.type==="delete"&&l.entityId).map(l=>l.entityId));for(const l of c)if(l.endpointName==="getListItemsInfinite"){const n=r(A.default.util.updateQueryData("getListItemsInfinite",l.originalArgs,a=>{for(const t of e)if(t.type==="update"&&t.data)for(const u of a.pages){const f=u.items.find(y=>y.entityId===t.entityId);f&&w(f,t.data)}if(d.size>0)for(const t of a.pages)for(let u=t.items.length-1;u>=0;u--)d.has(t.items[u].entityId)&&t.items.splice(u,1)}));o?.push(n)}},R=e=>e.reduce((i,r)=>(i[r.type].push(r),i),{create:[],update:[],delete:[]}),x=_.api.enhanceEndpoints({endpoints:{operations:{}}}),X=x.injectEndpoints({endpoints:e=>({updateOverviewEntities:e.mutation({async queryFn(i,{dispatch:r}){try{const o=await r(x.endpoints.operations.initiate(i));if(o.error)return{error:o.error};const s=o.data,c=new Set,d=new Set;for(const l of s?.operations||[])l.success===!1&&l.detail&&(c.has(l.detail)||c.add(l.detail),d.has(l.errorCode)||d.add(l.errorCode));return c.size>0?{error:{status:"FETCH_ERROR",error:Array.from(c).join(", "),errorCodes:Array.from(d)}}:{data:s}}catch(o){return console.error(o),{error:{status:"FETCH_ERROR",error:o.message}}}},async onQueryStarted({operationsRequestModel:i,patchOperations:r=[],projectName:o},{dispatch:s,queryFulfilled:c,getState:d}){if(!i.operations?.length)return;const{operations:l}=i,n=l.reduce((p,h)=>(p[h.entityType].push(h),p),{task:[],folder:[],product:[],version:[],representation:[],workfile:[]}),a=d(),t=[];if(n.task?.length){const{delete:p,update:h}=R(n.task),k=h.filter(I=>!r.some(v=>v.entityId===I.entityId));L([...k,...p],{state:a,dispatch:s},t)}if(n.folder?.length){const{delete:p,update:h}=R(n.folder),k=h.filter(I=>!r.some(v=>v.entityId===I.entityId));O([...k,...p],{state:a,dispatch:s},t)}const u=r.filter(p=>p.entityType==="task"),f=r.filter(p=>p.entityType==="folder");u.length&&L(u,{state:a,dispatch:s},t),f.length&&O(f,{state:a,dispatch:s},t),K([...l,...r],{state:a,dispatch:s},t),n.version?.length&&j.patchVersions(n.version,{state:a,dispatch:s},t),n.product?.length&&H.patchProducts(n.product,{state:a,dispatch:s},t);const y=l.map(p=>({id:p.entityId,type:p.entityType})),g=y.map(p=>({type:"entities",id:p.id})),S=()=>s(E.detailsPanelQueries.util.invalidateTags(g)),z=E.detailsPanelQueries.util.selectInvalidatedBy(a,y),M=E.detailsPanelQueries.util.selectInvalidatedBy(a,g);for(const p of M){if(p.endpointName!=="getEntitiesDetailsPanel")continue;const h=s(E.detailsPanelQueries.util.updateQueryData(p.endpointName,p.originalArgs,k=>{for(const I of k)V.patchDetailsPanelEntity(l,I)}));t.push(h)}try{await c;const p=n.task||[],h=n.folder||[],k=n.version||[],I=n.product||[];if(o&&((p.length||h.length)&&B(s,o,["folderColumnStats","taskColumnStats","entityListItemsColumnStats"]),(k.length||I.length)&&B(s,o,["productColumnStats","versionColumnStats","entityListItemsColumnStats"])),p.length===0&&h.length===0)return;const v=Q.getUpdatedEntityIds(p),U=Q.getUpdatedEntityIds(h),C=v.map(q=>({type:"overviewTask",id:q})),N=T.default.util.selectInvalidatedBy(a,C).filter(q=>q.endpointName==="getTasksListInfinite");if(v.length>0&&o){for(const m of N)await b.refetchTasksForCacheEntry({dispatch:s,projectName:o,updatedTaskIds:v,cacheEntry:m});const q=T.default.util.selectInvalidatedBy(a,C).filter(m=>m.endpointName==="getOverviewTasksByFolders");for(const m of q)await b.refetchOverviewTasksForCacheEntry({dispatch:s,projectName:o,updatedTaskIds:v,cacheEntry:m})}U.length>0&&o&&s(F.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}catch{for(const h of t)h.undo();z.length&&S()}},invalidatesTags:(i,r,{operationsRequestModel:o,projectName:s})=>{const c=[{type:"kanban",id:"project-"+s}],d=[],l=[],n=[],a=[];let t=!1;const u=new Set;o.operations?.forEach(y=>{const{entityId:g}=y;g?(d.push({type:"progress",id:g}),l.push({type:"entityListItem",id:g})):d.push({type:"progress",id:"LIST"}),y.data?.attrib&&(t=!0),y.type==="delete"&&g&&(u.add(y.entityType),a.push({type:y.entityType,id:g}),a.push({type:"entities",id:g}))}),t&&n.push({type:"tasksFolder",id:s});const f=new Set;return u.has("folder")&&["folder","task","product","version"].forEach(y=>f.add(y)),u.has("product")&&f.add("version"),f.has("folder")&&a.push({type:"folder",id:"LIST"}),f.has("task")&&a.push({type:"overviewTask",id:"LIST"},{type:"overviewTask",id:s}),f.has("product")&&a.push({type:"product",id:"LIST"}),f.has("version")&&a.push({type:"version",id:"LIST"}),[...c,...d,...l,...n,...a]}})})}),{useUpdateOverviewEntitiesMutation:Y}=X;exports.createLinkDeletionPatch=D;exports.deleteLinksFromEntities=G;exports.patchOverviewEntities=J;exports.patchOverviewFolders=O;exports.patchOverviewTasks=L;exports.useUpdateOverviewEntitiesMutation=Y;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../folders/getFolders.cjs.js");require("../folders/getFolderDeleteInfo.cjs.js");const w=require("../entities/getEntityPanel.cjs.js");require("../../base/client.cjs.js");require("../../generated/graphql.cjs.js");require("../../generated/graphqlLinks.cjs.js");require("../../generated/access.cjs.js");require("../../generated/actions.cjs.js");require("../../generated/activityFeed.cjs.js");require("../../generated/addons.cjs.js");require("../../generated/anatomy.cjs.js");require("../../generated/attributes.cjs.js");require("../../generated/authentication.cjs.js");require("../../generated/bundles.cjs.js");require("../../generated/configuration.cjs.js");require("../../generated/dataImport.cjs.js");require("../../generated/desktop.cjs.js");require("../../generated/entityLists.cjs.js");require("../../generated/events.cjs.js");require("../../generated/files.cjs.js");require("../../generated/folders.cjs.js");require("../../generated/inbox.cjs.js");require("../../generated/links.cjs.js");require("../../generated/market.cjs.js");require("../../generated/onboarding.cjs.js");const _=require("../../generated/operations.cjs.js");require("../../generated/products.cjs.js");require("../../generated/projectDashboard.cjs.js");require("../../generated/projects.cjs.js");require("../../generated/projectFolders.cjs.js");require("../../generated/reviewables.cjs.js");require("../../generated/services.cjs.js");require("../../generated/system.cjs.js");require("../../generated/tasks.cjs.js");require("../../generated/teams.cjs.js");require("../../generated/thumbnails.cjs.js");require("../../generated/uRIs.cjs.js");require("../../generated/users.cjs.js");require("../../generated/versions.cjs.js");require("../../generated/workfiles.cjs.js");require("../../generated/ynputCloud.cjs.js");require("../../generated/grouping.cjs.js");require("../../generated/views.cjs.js");require("../entityLists/updateLists.cjs.js");const q=require("./getOverview.cjs.js");require("../entities/getEntity.cjs.js");const $=require("./patchVersions.cjs.js"),j=require("./patchProducts.cjs.js");require("../links/getEntityLinks.cjs.js");require("../entities/updateEntity.cjs.js");const H=require("../entities/patchDetailsPanel.cjs.js"),b=require("./filterRefetchUtils.cjs.js"),Q=require("./refetchFilteredEntities.cjs.js"),B=require("../entityLists/getLists.cjs.js"),L=(e,i)=>{if(Object.keys(i).forEach(r=>{r==="attrib"||r==="links"||r==="deleteLinks"||(e[r]=i[r])}),i.attrib&&(e.attrib={...e.attrib,...i.attrib}),i.links){const r=e.links||[],a=i.links||[];e.links||(e.links=[]),e.links=[...r],a.forEach(s=>{const c=e.links.findIndex(d=>d.id===s.id);c!==-1?e.links[c]={...e.links[c],...s}:e.links.push(s)})}if(i.deleteLinks){const r=i.deleteLinks||[];e.links||(e.links=[]),r.forEach(a=>{e.links=e.links.filter(s=>s.id!==a)})}},V=e=>[{type:"overviewTask",id:"LIST"},...e.map(i=>({type:"overviewTask",id:i.entityId})),...e.filter(i=>i.data?.projectName).map(i=>({type:"overviewTask",id:i.data?.projectName}))],W=e=>[...e.map(i=>({type:"folder",id:i.entityId})),...e.filter(i=>i.data?.projectName).map(i=>({type:"folder",id:i.data?.projectName}))],z=(e,i,r)=>({entityId:e,entityType:i,type:"update",data:{deleteLinks:r}}),G=(e,i)=>e.map(r=>z(r.entityId,r.entityType,i)),J=(e,{state:i,dispatch:r},a)=>{const s=e.reduce((c,d)=>(c[d.entityType]||(c[d.entityType]=[]),c[d.entityType].push(d),c),{});s.task&&O(s.task,{state:i,dispatch:r},a),s.folder&&S(s.folder,{state:i,dispatch:r},a)},O=(e,{state:i,dispatch:r},a)=>{const s=V(e),c=q.default.util.selectInvalidatedBy(i,s),d=new Set(e.filter(n=>n.type==="delete"&&n.entityId).map(n=>n.entityId)),l=n=>{for(let o=n.length-1;o>=0;o--)d.has(n[o].id)&&n.splice(o,1)};for(const n of c)if(n.endpointName==="getTasksListInfinite"){const o=r(q.default.util.updateQueryData("getTasksListInfinite",n.originalArgs,t=>{for(const u of e)if(u.type==="create"&&u.data)t.pages[0].tasks.push(u.data);else if(u.type!=="delete")for(const p of t.pages){const y=p.tasks.find(g=>g.id===u.entityId);y&&L(y,u.data)}if(d.size>0)for(const u of t.pages)l(u.tasks)}));a?.push(o)}else{const o=r(q.default.util.updateQueryData(n.endpointName,n.originalArgs,t=>{const u=p=>{Array.isArray(t)?p(t):t.tasks&&Array.isArray(t.tasks)&&p(t.tasks)};for(const p of e)p.type==="create"&&p.data&&n.originalArgs.parentIds?.includes(p.data.folderId)?u(y=>{y.push(p.data)}):p.type!=="delete"&&u(y=>{const g=y.find(v=>v.id===p.entityId);g&&L(g,p.data)});d.size>0&&u(l)}));a?.push(o)}},F=new Map,R=(e,i,r)=>{const a=`${i}:${r.join()}`,s=F.get(a);s&&clearTimeout(s),F.set(a,setTimeout(()=>{F.delete(a),e(q.default.util.invalidateTags(r.map(c=>({type:c,id:i}))))},500))},S=(e,{state:i,dispatch:r},a)=>{const s=C.foldersQueries.util.selectInvalidatedBy(i,W(e)).filter(d=>d.endpointName==="getFolderList"),c=new Set(e.filter(d=>d.type==="delete"&&d.entityId).map(d=>d.entityId));for(const d of s){const l=r(C.foldersQueries.util.updateQueryData(d.endpointName,d.originalArgs,n=>{const o=new Map;n.folders.forEach(t=>{o.set(t.id,t)});for(const t of e)if(t.type==="create"&&t.data)n.folders.push(t.data);else if(t.type!=="delete"){const u=o.get(t.entityId);u&&L(u,t.data)}if(c.size>0)for(let t=n.folders.length-1;t>=0;t--)c.has(n.folders[t].id)&&n.folders.splice(t,1)}));a?.push(l)}},K=(e,{state:i,dispatch:r},a)=>{const s=e.map(l=>({type:"entityListItem",id:l.entityId})),c=B.default.util.selectInvalidatedBy(i,s),d=new Set(e.filter(l=>l.type==="delete"&&l.entityId).map(l=>l.entityId));for(const l of c)if(l.endpointName==="getListItemsInfinite"){const n=r(B.default.util.updateQueryData("getListItemsInfinite",l.originalArgs,o=>{for(const t of e)if(t.type==="update"&&t.data)for(const u of o.pages){const p=u.items.find(y=>y.entityId===t.entityId);p&&L(p,t.data)}if(d.size>0)for(const t of o.pages)for(let u=t.items.length-1;u>=0;u--)d.has(t.items[u].entityId)&&t.items.splice(u,1)}));a?.push(n)}},x=e=>e.reduce((i,r)=>(i[r.type].push(r),i),{create:[],update:[],delete:[]}),D=_.api.enhanceEndpoints({endpoints:{operations:{}}}),X=D.injectEndpoints({endpoints:e=>({updateOverviewEntities:e.mutation({async queryFn(i,{dispatch:r}){try{const a=await r(D.endpoints.operations.initiate(i));if(a.error)return{error:a.error};const s=a.data,c=new Set,d=new Set;for(const l of s?.operations||[])l.success===!1&&l.detail&&(c.has(l.detail)||c.add(l.detail),d.has(l.errorCode)||d.add(l.errorCode));return c.size>0?{error:{status:"FETCH_ERROR",error:Array.from(c).join(", "),errorCodes:Array.from(d)}}:{data:s}}catch(a){return console.error(a),{error:{status:"FETCH_ERROR",error:a.message}}}},async onQueryStarted({operationsRequestModel:i,patchOperations:r=[],projectName:a},{dispatch:s,queryFulfilled:c,getState:d}){if(!i.operations?.length)return;const{operations:l}=i,n=l.reduce((f,h)=>(f[h.entityType].push(h),f),{task:[],folder:[],product:[],version:[],representation:[],workfile:[]}),o=d(),t=[];if(n.task?.length){const{delete:f,update:h}=x(n.task),k=h.filter(I=>!r.some(T=>T.entityId===I.entityId));O([...k,...f],{state:o,dispatch:s},t)}if(n.folder?.length){const{delete:f,update:h}=x(n.folder),k=h.filter(I=>!r.some(T=>T.entityId===I.entityId));S([...k,...f],{state:o,dispatch:s},t)}const u=r.filter(f=>f.entityType==="task"),p=r.filter(f=>f.entityType==="folder");u.length&&O(u,{state:o,dispatch:s},t),p.length&&S(p,{state:o,dispatch:s},t),K([...l,...r],{state:o,dispatch:s},t),n.version?.length&&$.patchVersions(n.version,{state:o,dispatch:s},t),n.product?.length&&j.patchProducts(n.product,{state:o,dispatch:s},t);const y=l.map(f=>({id:f.entityId,type:f.entityType})),g=y.map(f=>({type:"entities",id:f.id})),v=()=>s(w.detailsPanelQueries.util.invalidateTags(g)),P=w.detailsPanelQueries.util.selectInvalidatedBy(o,y),M=w.detailsPanelQueries.util.selectInvalidatedBy(o,g);for(const f of M){if(f.endpointName!=="getEntitiesDetailsPanel")continue;const h=s(w.detailsPanelQueries.util.updateQueryData(f.endpointName,f.originalArgs,k=>{for(const I of k)H.patchDetailsPanelEntity(l,I)}));t.push(h)}try{await c;const f=n.task||[],h=n.folder||[],k=n.version||[],I=n.product||[];if(a&&((f.length||h.length)&&R(s,a,["folderColumnStats","taskColumnStats","entityListItemsColumnStats"]),(k.length||I.length)&&R(s,a,["productColumnStats","versionColumnStats","entityListItemsColumnStats"])),f.length===0&&h.length===0)return;const T=b.getUpdatedEntityIds(f),U=b.getUpdatedEntityIds(h),A=T.map(m=>({type:"overviewTask",id:m})),N=q.default.util.selectInvalidatedBy(o,A).filter(m=>m.endpointName==="getTasksListInfinite");if(T.length>0&&a){for(const E of N)await Q.refetchTasksForCacheEntry({dispatch:s,projectName:a,updatedTaskIds:T,cacheEntry:E});const m=q.default.util.selectInvalidatedBy(o,A).filter(E=>E.endpointName==="getOverviewTasksByFolders");for(const E of m)await Q.refetchOverviewTasksForCacheEntry({dispatch:s,projectName:a,updatedTaskIds:T,cacheEntry:E})}U.length>0&&a&&s(C.foldersQueries.util.invalidateTags([{type:"folder",id:"LIST"}]))}catch{for(const h of t)h.undo();P.length&&v()}},invalidatesTags:(i,r,{operationsRequestModel:a,projectName:s})=>{const c=[{type:"kanban",id:"project-"+s}],d=[],l=[],n=[],o=[],t=[];let u=!1;const p=new Set;a.operations?.forEach(g=>{const{entityId:v}=g;v?(d.push({type:"progress",id:v}),l.push({type:"entityListItem",id:v})):d.push({type:"progress",id:"LIST"}),g.data?.attrib&&(u=!0),g.type==="update"&&v&&["status","attrib","tags","assignees",`${g.entityType}Type`].some(P=>g.data?.[P]!==void 0)&&t.push({type:"entityActivities",id:v}),g.type==="delete"&&v&&(p.add(g.entityType),o.push({type:g.entityType,id:v}),o.push({type:"entities",id:v}))}),u&&n.push({type:"tasksFolder",id:s});const y=new Set;return p.has("folder")&&["folder","task","product","version"].forEach(g=>y.add(g)),p.has("product")&&y.add("version"),y.has("folder")&&o.push({type:"folder",id:"LIST"}),y.has("task")&&o.push({type:"overviewTask",id:"LIST"},{type:"overviewTask",id:s}),y.has("product")&&o.push({type:"product",id:"LIST"}),y.has("version")&&o.push({type:"version",id:"LIST"}),[...c,...d,...l,...n,...o,...t]}})})}),{useUpdateOverviewEntitiesMutation:Y}=X;exports.createLinkDeletionPatch=z;exports.deleteLinksFromEntities=G;exports.patchOverviewEntities=J;exports.patchOverviewFolders=S;exports.patchOverviewTasks=O;exports.useUpdateOverviewEntitiesMutation=Y;
|
|
2
2
|
//# sourceMappingURL=updateOverview.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateOverview.cjs.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import { foldersQueries } from '../folders'\nimport { detailsPanelQueries } from '../entities/getEntityPanel'\nimport { operationsApi } from '@shared/api/generated'\nimport { entityListsQueriesGql } from '../entityLists/updateLists'\nimport type {\n OperationsResponseModel,\n OperationModel,\n OperationsApiArg,\n} from '@shared/api/generated'\nimport getOverviewApi from './getOverview'\nimport { patchDetailsPanelEntity } from '../entities'\nimport { FetchBaseQueryError, RootState } from '@reduxjs/toolkit/query'\nimport { ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport { getUpdatedEntityIds } from './filterRefetchUtils'\nimport {\n refetchTasksForCacheEntry,\n refetchOverviewTasksForCacheEntry,\n} from './refetchFilteredEntities'\nimport { patchVersions } from './patchVersions'\nimport { patchProducts } from './patchProducts'\n// these operations are dedicated to the overview page\n// this mean cache updates are custom for the overview page here\n\n// Helper function to update entities with operation data\nconst updateEntityWithOperation = (entity: any, operationData: any) => {\n // Update top-level properties directly\n Object.keys(operationData).forEach((key) => {\n if (key === 'attrib' || key === 'links' || key === 'deleteLinks') return\n entity[key] = operationData[key]\n })\n\n // Handle attrib merging\n if (operationData.attrib) {\n entity.attrib = {\n ...entity.attrib,\n ...operationData.attrib,\n }\n }\n\n // Handle links merging\n if (operationData.links) {\n const existingLinks = entity.links || []\n const newLinks = operationData.links || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Process links directly\n entity.links = [...existingLinks]\n\n newLinks.forEach((newLink: any) => {\n const existingIndex = entity.links.findIndex((link: any) => link.id === newLink.id)\n\n if (existingIndex !== -1) {\n entity.links[existingIndex] = { ...entity.links[existingIndex], ...newLink }\n } else {\n entity.links.push(newLink)\n }\n })\n }\n\n // Handle links deletion\n if (operationData.deleteLinks) {\n const linksToDelete = operationData.deleteLinks || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Remove links by ID\n linksToDelete.forEach((linkId: string) => {\n entity.links = entity.links.filter((link: any) => link.id !== linkId)\n })\n }\n}\n\nconst getOverviewTaskTags = (tasks: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n { type: 'overviewTask', id: 'LIST' },\n ...tasks.map((op) => ({ type: 'overviewTask', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...tasks\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'overviewTask',\n id: op.data?.projectName,\n })),\n ]\n}\n\nconst getOverviewFolderTags = (folders: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n ...folders.map((op) => ({ type: 'folder', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...folders\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'folder',\n id: op.data?.projectName,\n })),\n ]\n}\n\nexport type PatchOperation = Pick<OperationModel, 'entityId' | 'entityType' | 'data'> & {\n type?: OperationModel['type']\n}\n\n// Helper function to create a patch operation for deleting links\nexport const createLinkDeletionPatch = (\n entityId: string,\n entityType: OperationModel['entityType'],\n linkIds: string[],\n): PatchOperation => {\n return {\n entityId,\n entityType,\n type: 'update',\n data: { deleteLinks: linkIds },\n }\n}\n\n// Utility function to delete specific links by ID from entities\nexport const deleteLinksFromEntities = (\n entities: { entityId: string; entityType: OperationModel['entityType'] }[],\n linkIds: string[],\n): PatchOperation[] => {\n return entities.map((entity) =>\n createLinkDeletionPatch(entity.entityId, entity.entityType, linkIds),\n )\n}\n\n// Generic helper function to patch entities based on their type\nexport const patchOverviewEntities = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n // Group entities by type\n const entitiesByType = entities.reduce((acc, entity) => {\n if (!acc[entity.entityType]) {\n acc[entity.entityType] = []\n }\n acc[entity.entityType].push(entity)\n return acc\n }, {} as Record<string, PatchOperation[]>)\n\n // Patch each entity type using the appropriate function\n if (entitiesByType.task) {\n patchOverviewTasks(entitiesByType.task, { state, dispatch }, patches)\n }\n if (entitiesByType.folder) {\n patchOverviewFolders(entitiesByType.folder, { state, dispatch }, patches)\n }\n // Add more entity types as needed\n // if (entitiesByType.product) { ... }\n // if (entitiesByType.version) { ... }\n // etc.\n}\n\nexport const patchOverviewTasks = (\n tasks: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = getOverviewTaskTags(tasks)\n const taskEntries = getOverviewApi.util.selectInvalidatedBy(state, tags)\n\n const deleteIds = new Set(\n tasks.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n const removeDeletedTasks = (tasksArrayDraft: EditorTaskNode[]) => {\n for (let i = tasksArrayDraft.length - 1; i >= 0; i--) {\n if (deleteIds.has(tasksArrayDraft[i].id)) tasksArrayDraft.splice(i, 1)\n }\n }\n\n for (const entry of taskEntries) {\n if (entry.endpointName === 'getTasksListInfinite') {\n // patch getTasksListInfinite\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData('getTasksListInfinite', entry.originalArgs, (draft) => {\n // Apply each change to matching tasks in all pages\n for (const taskOperation of tasks) {\n if (taskOperation.type === 'create' && taskOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.pages[0].tasks.push(taskOperation.data)\n } else if (taskOperation.type !== 'delete') {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n // TODO: task is not found here, why?\n const task = page.tasks.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n }\n }\n // optimistically remove deleted tasks\n if (deleteIds.size > 0) {\n for (const page of draft.pages) {\n removeDeletedTasks(page.tasks)\n }\n }\n }),\n )\n\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n } else {\n // this updates the main overview cache task\n // it also updates any GetTasksByParent caches\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData(\n entry.endpointName as 'getOverviewTasksByFolders' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\n const applyToDraft = (patchTask: (tasksArrayDraft: EditorTaskNode[]) => void) => {\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n patchTask(draft.tasks)\n }\n }\n\n // Apply each change to matching tasks in the cache\n for (const taskOperation of tasks) {\n if (\n taskOperation.type === 'create' &&\n taskOperation.data &&\n entry.originalArgs.parentIds?.includes(taskOperation.data.folderId)\n ) {\n applyToDraft((tasksArrayDraft) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n })\n } else if (taskOperation.type !== 'delete') {\n applyToDraft((tasksArrayDraft) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n })\n }\n }\n // optimistically remove deleted tasks\n if (deleteIds.size > 0) {\n applyToDraft(removeDeletedTasks)\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\n// Debounced, per-project invalidation of the footer stats caches after entity ops.\ntype StatsTagType =\n | 'folderColumnStats'\n | 'taskColumnStats'\n | 'productColumnStats'\n | 'versionColumnStats'\n | 'entityListItemsColumnStats'\nconst statsRefetchTimers = new Map<string, ReturnType<typeof setTimeout>>()\nconst scheduleStatsRefetch = (\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n projectName: string,\n tagTypes: StatsTagType[],\n) => {\n const key = `${projectName}:${tagTypes.join()}`\n const existing = statsRefetchTimers.get(key)\n if (existing) clearTimeout(existing)\n statsRefetchTimers.set(\n key,\n setTimeout(() => {\n statsRefetchTimers.delete(key)\n dispatch(\n getOverviewApi.util.invalidateTags(tagTypes.map((type) => ({ type, id: projectName }))),\n )\n }, 500),\n )\n}\n\nexport const patchOverviewFolders = (\n folders: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const folderEntries = foldersQueries.util\n .selectInvalidatedBy(state, getOverviewFolderTags(folders))\n .filter((entry) => entry.endpointName === 'getFolderList')\n\n const deleteIds = new Set(\n folders.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n\n for (const entry of folderEntries) {\n const folderPatch = dispatch(\n foldersQueries.util.updateQueryData(\n entry.endpointName as 'getFolderList',\n entry.originalArgs,\n (draft) => {\n // Create a Map for O(1) folder lookups\n const folderMap = new Map()\n draft.folders.forEach((folder) => {\n folderMap.set(folder.id, folder)\n })\n\n for (const folderOperation of folders) {\n if (folderOperation.type === 'create' && folderOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.folders.push(folderOperation.data)\n } else if (folderOperation.type !== 'delete') {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\n }\n }\n\n // optimistically remove deleted folders\n if (deleteIds.size > 0) {\n for (let i = draft.folders.length - 1; i >= 0; i--) {\n if (deleteIds.has(draft.folders[i].id)) draft.folders.splice(i, 1)\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(folderPatch)\n }\n}\n\nconst patchListItems = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = entities.map((op) => ({ type: 'entityListItem', id: op.entityId }))\n const entries = entityListsQueriesGql.util.selectInvalidatedBy(state, tags)\n\n const deleteIds = new Set(\n entities.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n\n for (const entry of entries) {\n if (entry.endpointName === 'getListItemsInfinite') {\n const listItemsPatch = dispatch(\n entityListsQueriesGql.util.updateQueryData(\n 'getListItemsInfinite',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in all pages\n for (const listOperation of entities) {\n if (listOperation.type === 'update' && listOperation.data) {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n const item = page.items.find((item) => item.entityId === listOperation.entityId)\n if (item) {\n updateEntityWithOperation(item, listOperation.data)\n }\n }\n }\n }\n // optimistically remove items whose entity is being deleted\n if (deleteIds.size > 0) {\n for (const page of draft.pages) {\n for (let i = page.items.length - 1; i >= 0; i--) {\n if (deleteIds.has(page.items[i].entityId)) page.items.splice(i, 1)\n }\n }\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches?.push(listItemsPatch)\n }\n }\n}\n\nconst splitByOpType = (operations: OperationModel[]) => {\n return operations.reduce(\n (acc: Record<OperationModel['type'], OperationModel[]>, operation) => {\n acc[operation.type].push(operation)\n return acc\n },\n {\n create: [],\n update: [],\n delete: [],\n },\n )\n}\n\nconst operationsEnhanced = operationsApi.enhanceEndpoints({\n endpoints: {\n operations: {},\n },\n})\n\n// enhance the argument type to include some extra fields\ninterface UpdateOverviewEntitiesArg extends OperationsApiArg {\n patchOperations?: PatchOperation[] // extra entities to patch\n}\n\nconst operationsApiEnhancedInjected = operationsEnhanced.injectEndpoints({\n endpoints: (build) => ({\n updateOverviewEntities: build.mutation<\n OperationsResponseModel | undefined,\n UpdateOverviewEntitiesArg\n >({\n async queryFn(arg, { dispatch }) {\n try {\n const result = await dispatch(operationsEnhanced.endpoints.operations.initiate(arg))\n\n // Check if the network request itself failed (offline, timeout, etc.)\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n const data = result.data\n // check for any errors in the result\n const uniqueErrors = new Set()\n const uniqueErrorCodes = new Set()\n for (const op of data?.operations || []) {\n if (op.success === false && op.detail) {\n if (!uniqueErrors.has(op.detail)) {\n uniqueErrors.add(op.detail)\n }\n if (!uniqueErrorCodes.has(op.errorCode)) {\n uniqueErrorCodes.add(op.errorCode)\n }\n }\n }\n\n if (uniqueErrors.size > 0) {\n const error = {\n status: 'FETCH_ERROR',\n error: Array.from(uniqueErrors).join(', '),\n errorCodes: Array.from(uniqueErrorCodes),\n } as FetchBaseQueryError\n return { error }\n } else {\n return { data }\n }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n async onQueryStarted(\n { operationsRequestModel, patchOperations = [], projectName },\n { dispatch, queryFulfilled, getState },\n ) {\n if (!operationsRequestModel.operations?.length) return\n const { operations } = operationsRequestModel\n // we need to split the operations by entity type\n const operationsByType = operations.reduce(\n (acc: Record<OperationModel['entityType'], OperationModel[]>, operation) => {\n acc[operation.entityType].push(operation)\n return acc\n },\n {\n task: [],\n folder: [],\n product: [],\n version: [],\n representation: [],\n workfile: [],\n },\n )\n\n // collect patches incase we need to undo them\n const state = getState()\n const patches: any[] = []\n\n // patch the overview tasks\n if (operationsByType.task?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.task)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing tasks and optimistically remove deleted ones\n // (deletes are reconciled via invalidatesTags once the request settles)\n patchOverviewTasks([...updatesToPatch, ...deleteOps], { state, dispatch }, patches)\n }\n\n // patch the overview folders (any other folders from foldersList)\n if (operationsByType.folder?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.folder)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing folders and optimistically remove deleted ones\n patchOverviewFolders([...updatesToPatch, ...deleteOps], { state, dispatch }, patches)\n }\n\n const patchExtraTasks = patchOperations.filter((op) => op.entityType === 'task')\n const patchExtraFolders = patchOperations.filter((op) => op.entityType === 'folder')\n\n if (patchExtraTasks.length) {\n // often used for updating inherited dependents\n patchOverviewTasks(patchExtraTasks, { state, dispatch }, patches)\n }\n\n if (patchExtraFolders.length) {\n // often used for updating inherited dependents\n patchOverviewFolders(patchExtraFolders, { state, dispatch }, patches)\n }\n\n // patch the list items\n patchListItems([...operations, ...patchOperations], { state, dispatch }, patches)\n\n // patch versions\n if (operationsByType.version?.length) {\n patchVersions(operationsByType.version, { state, dispatch }, patches)\n }\n\n // patch products\n if (operationsByType.product?.length) {\n patchProducts(operationsByType.product, { state, dispatch }, patches)\n }\n\n // try to patch any details panels\n // first we patch the individual entities\n // then we patch the details panel cache\n const entityTags = operations.map((op) => ({\n id: op.entityId,\n type: op.entityType,\n }))\n const entitiesTags = entityTags.map((tag) => ({\n type: 'entities',\n id: tag.id,\n }))\n\n // invalidates the details panel cache so that it fetches all individual entities again (using it's updated cache)\n const invalidateEntryPanel = () =>\n dispatch(detailsPanelQueries.util.invalidateTags(entitiesTags))\n\n // the individual entities that are patched for the details panel\n // remember the details panel cache is made up of individual entity caches\n const detailsPanelEntityCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entityTags,\n )\n\n // the cache for the whole details panel\n const detailsPanelEntitiesCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entitiesTags,\n )\n\n for (const entry of detailsPanelEntitiesCaches) {\n if (entry.endpointName !== 'getEntitiesDetailsPanel') continue\n const entitiesDetailsResult = dispatch(\n detailsPanelQueries.util.updateQueryData(\n entry.endpointName as 'getEntitiesDetailsPanel',\n entry.originalArgs,\n (draft) => {\n for (const entity of draft) {\n patchDetailsPanelEntity(operations, entity)\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches.push(entitiesDetailsResult)\n }\n\n try {\n await queryFulfilled\n\n // Background refetch logic - runs after successful mutation\n // This ensures calculated attributes are up-to-date and entities are correctly filtered\n\n const taskOperations = operationsByType.task || []\n const folderOperations = operationsByType.folder || []\n const versionOperations = operationsByType.version || []\n const productOperations = operationsByType.product || []\n\n if (projectName) {\n if (taskOperations.length || folderOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'folderColumnStats',\n 'taskColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n if (versionOperations.length || productOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'productColumnStats',\n 'versionColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n }\n\n // Early exit if no operations\n if (taskOperations.length === 0 && folderOperations.length === 0) {\n return\n }\n\n // Extract updated entity IDs (always needed for refetch)\n const updatedTaskIds = getUpdatedEntityIds(taskOperations)\n const updatedFolderIds = getUpdatedEntityIds(folderOperations)\n\n // Get all active task list cache entries\n const overviewTaskTags = updatedTaskIds.map((id) => ({ type: 'overviewTask', id }))\n const tasksListInfiniteEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getTasksListInfinite')\n\n // Requirement: \"refetch the full data for the specific entity/entities\"\n // For each cache with its own filter, fetch entities and update that cache\n if (updatedTaskIds.length > 0 && projectName) {\n // Process getTasksListInfinite caches\n for (const entry of tasksListInfiniteEntries) {\n await refetchTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n\n // Process getOverviewTasksByFolders caches\n // Use selectInvalidatedBy to get only caches that contain the updated tasks\n const overviewTasksEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getOverviewTasksByFolders')\n\n for (const entry of overviewTasksEntries) {\n await refetchOverviewTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n }\n\n // Always refetch folders if they were updated (for calculated attributes)\n // Not conditional on affectsFilter - requirement says \"always refetch entities\"\n // (deletes are reconciled via invalidatesTags)\n if (updatedFolderIds.length > 0 && projectName) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n } catch (error) {\n // undo all patches if there is an error\n for (const patch of patches) {\n patch.undo()\n }\n\n if (detailsPanelEntityCaches.length) {\n // we invalidate the tags for the detailsPanelEntityCaches that were patched\n // invalidate the details panel cache\n invalidateEntryPanel()\n }\n }\n },\n invalidatesTags: (_r, _e, { operationsRequestModel, projectName }) => {\n type Tags = { id: string; type: string }[]\n const userDashboardTags: Tags = [{ type: 'kanban', id: 'project-' + projectName }],\n taskProgressTags: Tags = [],\n entityListItemTags: Tags = [],\n tasksFolderTags: Tags = [],\n deletedEntityTags: Tags = []\n\n let hasAttribOp = false\n const deletedTypes = new Set<string>()\n operationsRequestModel.operations?.forEach((op) => {\n const { entityId } = op\n if (entityId) {\n taskProgressTags.push({ type: 'progress', id: entityId })\n // Invalidate list item cache for this entity to trigger background refetch\n entityListItemTags.push({ type: 'entityListItem', id: entityId })\n } else {\n // new entity created, so we should invalidate everything\n taskProgressTags.push({ type: 'progress', id: 'LIST' })\n }\n if ((op.data as any)?.attrib) hasAttribOp = true\n if (op.type === 'delete' && entityId) {\n deletedTypes.add(op.entityType)\n deletedEntityTags.push({ type: op.entityType, id: entityId })\n // details panels showing the deleted entity\n deletedEntityTags.push({ type: 'entities', id: entityId })\n }\n })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n // Deleted rows are removed optimistically; only server-side descendants need a refetch\n // (folder -> folders/tasks/products/versions, product -> versions).\n const invalidateList = new Set<string>()\n if (deletedTypes.has('folder')) {\n ;['folder', 'task', 'product', 'version'].forEach((t) => invalidateList.add(t))\n }\n if (deletedTypes.has('product')) invalidateList.add('version')\n\n if (invalidateList.has('folder')) deletedEntityTags.push({ type: 'folder', id: 'LIST' })\n if (invalidateList.has('task')) {\n deletedEntityTags.push(\n { type: 'overviewTask', id: 'LIST' },\n { type: 'overviewTask', id: projectName },\n )\n }\n if (invalidateList.has('product')) deletedEntityTags.push({ type: 'product', id: 'LIST' })\n if (invalidateList.has('version')) deletedEntityTags.push({ type: 'version', id: 'LIST' })\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\n ...deletedEntityTags,\n ]\n },\n }),\n }),\n})\n\nexport const { useUpdateOverviewEntitiesMutation } = operationsApiEnhancedInjected\n"],"names":["updateEntityWithOperation","entity","operationData","key","existingLinks","newLinks","newLink","existingIndex","link","linksToDelete","linkId","getOverviewTaskTags","tasks","op","getOverviewFolderTags","folders","createLinkDeletionPatch","entityId","entityType","linkIds","deleteLinksFromEntities","entities","patchOverviewEntities","state","dispatch","patches","entitiesByType","acc","patchOverviewTasks","patchOverviewFolders","tags","taskEntries","getOverviewApi","deleteIds","removeDeletedTasks","tasksArrayDraft","i","entry","tasksPatch","draft","taskOperation","page","task","applyToDraft","patchTask","statsRefetchTimers","scheduleStatsRefetch","projectName","tagTypes","existing","type","folderEntries","foldersQueries","folderPatch","folderMap","folder","folderOperation","patchListItems","entries","entityListsQueriesGql","listItemsPatch","listOperation","item","splitByOpType","operations","operation","operationsEnhanced","operationsApi","operationsApiEnhancedInjected","build","arg","result","data","uniqueErrors","uniqueErrorCodes","e","operationsRequestModel","patchOperations","queryFulfilled","getState","operationsByType","deleteOps","update","updatesToPatch","dep","patchExtraTasks","patchExtraFolders","patchVersions","patchProducts","entityTags","entitiesTags","tag","invalidateEntryPanel","detailsPanelQueries","detailsPanelEntityCaches","detailsPanelEntitiesCaches","entitiesDetailsResult","patchDetailsPanelEntity","taskOperations","folderOperations","versionOperations","productOperations","updatedTaskIds","getUpdatedEntityIds","updatedFolderIds","overviewTaskTags","id","tasksListInfiniteEntries","refetchTasksForCacheEntry","overviewTasksEntries","refetchOverviewTasksForCacheEntry","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","deletedEntityTags","hasAttribOp","deletedTypes","invalidateList","t","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"updateOverview.cjs.js","sources":["../../../../../../src/api/queries/overview/updateOverview.ts"],"sourcesContent":["import { foldersQueries } from '../folders'\nimport { detailsPanelQueries } from '../entities/getEntityPanel'\nimport { operationsApi } from '@shared/api/generated'\nimport { entityListsQueriesGql } from '../entityLists/updateLists'\nimport type {\n OperationsResponseModel,\n OperationModel,\n OperationsApiArg,\n} from '@shared/api/generated'\nimport getOverviewApi from './getOverview'\nimport { patchDetailsPanelEntity } from '../entities'\nimport { FetchBaseQueryError, RootState } from '@reduxjs/toolkit/query'\nimport { ThunkDispatch, UnknownAction } from '@reduxjs/toolkit'\nimport { EditorTaskNode } from '@shared/containers/ProjectTreeTable'\nimport { getUpdatedEntityIds } from './filterRefetchUtils'\nimport {\n refetchTasksForCacheEntry,\n refetchOverviewTasksForCacheEntry,\n} from './refetchFilteredEntities'\nimport { patchVersions } from './patchVersions'\nimport { patchProducts } from './patchProducts'\n// these operations are dedicated to the overview page\n// this mean cache updates are custom for the overview page here\n\n// Helper function to update entities with operation data\nconst updateEntityWithOperation = (entity: any, operationData: any) => {\n // Update top-level properties directly\n Object.keys(operationData).forEach((key) => {\n if (key === 'attrib' || key === 'links' || key === 'deleteLinks') return\n entity[key] = operationData[key]\n })\n\n // Handle attrib merging\n if (operationData.attrib) {\n entity.attrib = {\n ...entity.attrib,\n ...operationData.attrib,\n }\n }\n\n // Handle links merging\n if (operationData.links) {\n const existingLinks = entity.links || []\n const newLinks = operationData.links || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Process links directly\n entity.links = [...existingLinks]\n\n newLinks.forEach((newLink: any) => {\n const existingIndex = entity.links.findIndex((link: any) => link.id === newLink.id)\n\n if (existingIndex !== -1) {\n entity.links[existingIndex] = { ...entity.links[existingIndex], ...newLink }\n } else {\n entity.links.push(newLink)\n }\n })\n }\n\n // Handle links deletion\n if (operationData.deleteLinks) {\n const linksToDelete = operationData.deleteLinks || []\n\n // Ensure links structure exists\n if (!entity.links) entity.links = []\n\n // Remove links by ID\n linksToDelete.forEach((linkId: string) => {\n entity.links = entity.links.filter((link: any) => link.id !== linkId)\n })\n }\n}\n\nconst getOverviewTaskTags = (tasks: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n { type: 'overviewTask', id: 'LIST' },\n ...tasks.map((op) => ({ type: 'overviewTask', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...tasks\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'overviewTask',\n id: op.data?.projectName,\n })),\n ]\n}\n\nconst getOverviewFolderTags = (folders: Pick<OperationModel, 'entityId' | 'data'>[]) => {\n return [\n ...folders.map((op) => ({ type: 'folder', id: op.entityId })),\n // we also add the projectName so that tasks that do not exist in the cache can still invalidate\n ...folders\n .filter((op) => op.data?.projectName)\n .map((op) => ({\n type: 'folder',\n id: op.data?.projectName,\n })),\n ]\n}\n\nexport type PatchOperation = Pick<OperationModel, 'entityId' | 'entityType' | 'data'> & {\n type?: OperationModel['type']\n}\n\n// Helper function to create a patch operation for deleting links\nexport const createLinkDeletionPatch = (\n entityId: string,\n entityType: OperationModel['entityType'],\n linkIds: string[],\n): PatchOperation => {\n return {\n entityId,\n entityType,\n type: 'update',\n data: { deleteLinks: linkIds },\n }\n}\n\n// Utility function to delete specific links by ID from entities\nexport const deleteLinksFromEntities = (\n entities: { entityId: string; entityType: OperationModel['entityType'] }[],\n linkIds: string[],\n): PatchOperation[] => {\n return entities.map((entity) =>\n createLinkDeletionPatch(entity.entityId, entity.entityType, linkIds),\n )\n}\n\n// Generic helper function to patch entities based on their type\nexport const patchOverviewEntities = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n // Group entities by type\n const entitiesByType = entities.reduce((acc, entity) => {\n if (!acc[entity.entityType]) {\n acc[entity.entityType] = []\n }\n acc[entity.entityType].push(entity)\n return acc\n }, {} as Record<string, PatchOperation[]>)\n\n // Patch each entity type using the appropriate function\n if (entitiesByType.task) {\n patchOverviewTasks(entitiesByType.task, { state, dispatch }, patches)\n }\n if (entitiesByType.folder) {\n patchOverviewFolders(entitiesByType.folder, { state, dispatch }, patches)\n }\n // Add more entity types as needed\n // if (entitiesByType.product) { ... }\n // if (entitiesByType.version) { ... }\n // etc.\n}\n\nexport const patchOverviewTasks = (\n tasks: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = getOverviewTaskTags(tasks)\n const taskEntries = getOverviewApi.util.selectInvalidatedBy(state, tags)\n\n const deleteIds = new Set(\n tasks.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n const removeDeletedTasks = (tasksArrayDraft: EditorTaskNode[]) => {\n for (let i = tasksArrayDraft.length - 1; i >= 0; i--) {\n if (deleteIds.has(tasksArrayDraft[i].id)) tasksArrayDraft.splice(i, 1)\n }\n }\n\n for (const entry of taskEntries) {\n if (entry.endpointName === 'getTasksListInfinite') {\n // patch getTasksListInfinite\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData('getTasksListInfinite', entry.originalArgs, (draft) => {\n // Apply each change to matching tasks in all pages\n for (const taskOperation of tasks) {\n if (taskOperation.type === 'create' && taskOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.pages[0].tasks.push(taskOperation.data)\n } else if (taskOperation.type !== 'delete') {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n // TODO: task is not found here, why?\n const task = page.tasks.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n }\n }\n // optimistically remove deleted tasks\n if (deleteIds.size > 0) {\n for (const page of draft.pages) {\n removeDeletedTasks(page.tasks)\n }\n }\n }),\n )\n\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n } else {\n // this updates the main overview cache task\n // it also updates any GetTasksByParent caches\n const tasksPatch = dispatch(\n getOverviewApi.util.updateQueryData(\n entry.endpointName as 'getOverviewTasksByFolders' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\n const applyToDraft = (patchTask: (tasksArrayDraft: EditorTaskNode[]) => void) => {\n // Check if draft is an array or an object with a tasks property\n if (Array.isArray(draft)) {\n patchTask(draft)\n } else if (draft.tasks && Array.isArray(draft.tasks)) {\n // Handle object with tasks array case (like in GetTasksList)\n patchTask(draft.tasks)\n }\n }\n\n // Apply each change to matching tasks in the cache\n for (const taskOperation of tasks) {\n if (\n taskOperation.type === 'create' &&\n taskOperation.data &&\n entry.originalArgs.parentIds?.includes(taskOperation.data.folderId)\n ) {\n applyToDraft((tasksArrayDraft) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n })\n } else if (taskOperation.type !== 'delete') {\n applyToDraft((tasksArrayDraft) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n })\n }\n }\n // optimistically remove deleted tasks\n if (deleteIds.size > 0) {\n applyToDraft(removeDeletedTasks)\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\n// Debounced, per-project invalidation of the footer stats caches after entity ops.\ntype StatsTagType =\n | 'folderColumnStats'\n | 'taskColumnStats'\n | 'productColumnStats'\n | 'versionColumnStats'\n | 'entityListItemsColumnStats'\nconst statsRefetchTimers = new Map<string, ReturnType<typeof setTimeout>>()\nconst scheduleStatsRefetch = (\n dispatch: ThunkDispatch<any, any, UnknownAction>,\n projectName: string,\n tagTypes: StatsTagType[],\n) => {\n const key = `${projectName}:${tagTypes.join()}`\n const existing = statsRefetchTimers.get(key)\n if (existing) clearTimeout(existing)\n statsRefetchTimers.set(\n key,\n setTimeout(() => {\n statsRefetchTimers.delete(key)\n dispatch(\n getOverviewApi.util.invalidateTags(tagTypes.map((type) => ({ type, id: projectName }))),\n )\n }, 500),\n )\n}\n\nexport const patchOverviewFolders = (\n folders: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const folderEntries = foldersQueries.util\n .selectInvalidatedBy(state, getOverviewFolderTags(folders))\n .filter((entry) => entry.endpointName === 'getFolderList')\n\n const deleteIds = new Set(\n folders.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n\n for (const entry of folderEntries) {\n const folderPatch = dispatch(\n foldersQueries.util.updateQueryData(\n entry.endpointName as 'getFolderList',\n entry.originalArgs,\n (draft) => {\n // Create a Map for O(1) folder lookups\n const folderMap = new Map()\n draft.folders.forEach((folder) => {\n folderMap.set(folder.id, folder)\n })\n\n for (const folderOperation of folders) {\n if (folderOperation.type === 'create' && folderOperation.data) {\n // push operation data to first page\n // @ts-expect-error\n draft.folders.push(folderOperation.data)\n } else if (folderOperation.type !== 'delete') {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\n }\n }\n\n // optimistically remove deleted folders\n if (deleteIds.size > 0) {\n for (let i = draft.folders.length - 1; i >= 0; i--) {\n if (deleteIds.has(draft.folders[i].id)) draft.folders.splice(i, 1)\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(folderPatch)\n }\n}\n\nconst patchListItems = (\n entities: PatchOperation[],\n {\n state,\n dispatch,\n }: {\n state: RootState<any, any, 'restApi'>\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n patches?: any[],\n) => {\n const tags = entities.map((op) => ({ type: 'entityListItem', id: op.entityId }))\n const entries = entityListsQueriesGql.util.selectInvalidatedBy(state, tags)\n\n const deleteIds = new Set(\n entities.filter((op) => op.type === 'delete' && op.entityId).map((op) => op.entityId),\n )\n\n for (const entry of entries) {\n if (entry.endpointName === 'getListItemsInfinite') {\n const listItemsPatch = dispatch(\n entityListsQueriesGql.util.updateQueryData(\n 'getListItemsInfinite',\n entry.originalArgs,\n (draft) => {\n // Apply each change to matching tasks in all pages\n for (const listOperation of entities) {\n if (listOperation.type === 'update' && listOperation.data) {\n // Iterate through all pages in the infinite query\n for (const page of draft.pages) {\n const item = page.items.find((item) => item.entityId === listOperation.entityId)\n if (item) {\n updateEntityWithOperation(item, listOperation.data)\n }\n }\n }\n }\n // optimistically remove items whose entity is being deleted\n if (deleteIds.size > 0) {\n for (const page of draft.pages) {\n for (let i = page.items.length - 1; i >= 0; i--) {\n if (deleteIds.has(page.items[i].entityId)) page.items.splice(i, 1)\n }\n }\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches?.push(listItemsPatch)\n }\n }\n}\n\nconst splitByOpType = (operations: OperationModel[]) => {\n return operations.reduce(\n (acc: Record<OperationModel['type'], OperationModel[]>, operation) => {\n acc[operation.type].push(operation)\n return acc\n },\n {\n create: [],\n update: [],\n delete: [],\n },\n )\n}\n\nconst operationsEnhanced = operationsApi.enhanceEndpoints({\n endpoints: {\n operations: {},\n },\n})\n\n// enhance the argument type to include some extra fields\ninterface UpdateOverviewEntitiesArg extends OperationsApiArg {\n patchOperations?: PatchOperation[] // extra entities to patch\n}\n\nconst operationsApiEnhancedInjected = operationsEnhanced.injectEndpoints({\n endpoints: (build) => ({\n updateOverviewEntities: build.mutation<\n OperationsResponseModel | undefined,\n UpdateOverviewEntitiesArg\n >({\n async queryFn(arg, { dispatch }) {\n try {\n const result = await dispatch(operationsEnhanced.endpoints.operations.initiate(arg))\n\n // Check if the network request itself failed (offline, timeout, etc.)\n if (result.error) {\n return { error: result.error as FetchBaseQueryError }\n }\n\n const data = result.data\n // check for any errors in the result\n const uniqueErrors = new Set()\n const uniqueErrorCodes = new Set()\n for (const op of data?.operations || []) {\n if (op.success === false && op.detail) {\n if (!uniqueErrors.has(op.detail)) {\n uniqueErrors.add(op.detail)\n }\n if (!uniqueErrorCodes.has(op.errorCode)) {\n uniqueErrorCodes.add(op.errorCode)\n }\n }\n }\n\n if (uniqueErrors.size > 0) {\n const error = {\n status: 'FETCH_ERROR',\n error: Array.from(uniqueErrors).join(', '),\n errorCodes: Array.from(uniqueErrorCodes),\n } as FetchBaseQueryError\n return { error }\n } else {\n return { data }\n }\n } catch (e: any) {\n console.error(e)\n const error = { status: 'FETCH_ERROR', error: e.message } as FetchBaseQueryError\n return { error }\n }\n },\n async onQueryStarted(\n { operationsRequestModel, patchOperations = [], projectName },\n { dispatch, queryFulfilled, getState },\n ) {\n if (!operationsRequestModel.operations?.length) return\n const { operations } = operationsRequestModel\n // we need to split the operations by entity type\n const operationsByType = operations.reduce(\n (acc: Record<OperationModel['entityType'], OperationModel[]>, operation) => {\n acc[operation.entityType].push(operation)\n return acc\n },\n {\n task: [],\n folder: [],\n product: [],\n version: [],\n representation: [],\n workfile: [],\n },\n )\n\n // collect patches incase we need to undo them\n const state = getState()\n const patches: any[] = []\n\n // patch the overview tasks\n if (operationsByType.task?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.task)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing tasks and optimistically remove deleted ones\n // (deletes are reconciled via invalidatesTags once the request settles)\n patchOverviewTasks([...updatesToPatch, ...deleteOps], { state, dispatch }, patches)\n }\n\n // patch the overview folders (any other folders from foldersList)\n if (operationsByType.folder?.length) {\n // split operations by operation type\n const { delete: deleteOps, update } = splitByOpType(operationsByType.folder)\n // filter out updates that are in updateToPatch as we patch them later on\n const updatesToPatch = update.filter(\n (op) => !patchOperations.some((dep) => dep.entityId === op.entityId),\n )\n // update existing folders and optimistically remove deleted ones\n patchOverviewFolders([...updatesToPatch, ...deleteOps], { state, dispatch }, patches)\n }\n\n const patchExtraTasks = patchOperations.filter((op) => op.entityType === 'task')\n const patchExtraFolders = patchOperations.filter((op) => op.entityType === 'folder')\n\n if (patchExtraTasks.length) {\n // often used for updating inherited dependents\n patchOverviewTasks(patchExtraTasks, { state, dispatch }, patches)\n }\n\n if (patchExtraFolders.length) {\n // often used for updating inherited dependents\n patchOverviewFolders(patchExtraFolders, { state, dispatch }, patches)\n }\n\n // patch the list items\n patchListItems([...operations, ...patchOperations], { state, dispatch }, patches)\n\n // patch versions\n if (operationsByType.version?.length) {\n patchVersions(operationsByType.version, { state, dispatch }, patches)\n }\n\n // patch products\n if (operationsByType.product?.length) {\n patchProducts(operationsByType.product, { state, dispatch }, patches)\n }\n\n // try to patch any details panels\n // first we patch the individual entities\n // then we patch the details panel cache\n const entityTags = operations.map((op) => ({\n id: op.entityId,\n type: op.entityType,\n }))\n const entitiesTags = entityTags.map((tag) => ({\n type: 'entities',\n id: tag.id,\n }))\n\n // invalidates the details panel cache so that it fetches all individual entities again (using it's updated cache)\n const invalidateEntryPanel = () =>\n dispatch(detailsPanelQueries.util.invalidateTags(entitiesTags))\n\n // the individual entities that are patched for the details panel\n // remember the details panel cache is made up of individual entity caches\n const detailsPanelEntityCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entityTags,\n )\n\n // the cache for the whole details panel\n const detailsPanelEntitiesCaches = detailsPanelQueries.util.selectInvalidatedBy(\n state,\n entitiesTags,\n )\n\n for (const entry of detailsPanelEntitiesCaches) {\n if (entry.endpointName !== 'getEntitiesDetailsPanel') continue\n const entitiesDetailsResult = dispatch(\n detailsPanelQueries.util.updateQueryData(\n entry.endpointName as 'getEntitiesDetailsPanel',\n entry.originalArgs,\n (draft) => {\n for (const entity of draft) {\n patchDetailsPanelEntity(operations, entity)\n }\n },\n ),\n )\n\n // add the patch to the list of patches\n patches.push(entitiesDetailsResult)\n }\n\n try {\n await queryFulfilled\n\n // Background refetch logic - runs after successful mutation\n // This ensures calculated attributes are up-to-date and entities are correctly filtered\n\n const taskOperations = operationsByType.task || []\n const folderOperations = operationsByType.folder || []\n const versionOperations = operationsByType.version || []\n const productOperations = operationsByType.product || []\n\n if (projectName) {\n if (taskOperations.length || folderOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'folderColumnStats',\n 'taskColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n if (versionOperations.length || productOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'productColumnStats',\n 'versionColumnStats',\n 'entityListItemsColumnStats',\n ])\n }\n }\n\n // Early exit if no operations\n if (taskOperations.length === 0 && folderOperations.length === 0) {\n return\n }\n\n // Extract updated entity IDs (always needed for refetch)\n const updatedTaskIds = getUpdatedEntityIds(taskOperations)\n const updatedFolderIds = getUpdatedEntityIds(folderOperations)\n\n // Get all active task list cache entries\n const overviewTaskTags = updatedTaskIds.map((id) => ({ type: 'overviewTask', id }))\n const tasksListInfiniteEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getTasksListInfinite')\n\n // Requirement: \"refetch the full data for the specific entity/entities\"\n // For each cache with its own filter, fetch entities and update that cache\n if (updatedTaskIds.length > 0 && projectName) {\n // Process getTasksListInfinite caches\n for (const entry of tasksListInfiniteEntries) {\n await refetchTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n\n // Process getOverviewTasksByFolders caches\n // Use selectInvalidatedBy to get only caches that contain the updated tasks\n const overviewTasksEntries = getOverviewApi.util\n .selectInvalidatedBy(state, overviewTaskTags)\n .filter((entry) => entry.endpointName === 'getOverviewTasksByFolders')\n\n for (const entry of overviewTasksEntries) {\n await refetchOverviewTasksForCacheEntry({\n dispatch,\n projectName,\n updatedTaskIds,\n cacheEntry: entry,\n })\n }\n }\n\n // Always refetch folders if they were updated (for calculated attributes)\n // Not conditional on affectsFilter - requirement says \"always refetch entities\"\n // (deletes are reconciled via invalidatesTags)\n if (updatedFolderIds.length > 0 && projectName) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\n } catch (error) {\n // undo all patches if there is an error\n for (const patch of patches) {\n patch.undo()\n }\n\n if (detailsPanelEntityCaches.length) {\n // we invalidate the tags for the detailsPanelEntityCaches that were patched\n // invalidate the details panel cache\n invalidateEntryPanel()\n }\n }\n },\n invalidatesTags: (_r, _e, { operationsRequestModel, projectName }) => {\n type Tags = { id: string; type: string }[]\n const userDashboardTags: Tags = [{ type: 'kanban', id: 'project-' + projectName }],\n taskProgressTags: Tags = [],\n entityListItemTags: Tags = [],\n tasksFolderTags: Tags = [],\n deletedEntityTags: Tags = [],\n entityActivityTags: Tags = []\n\n let hasAttribOp = false\n const deletedTypes = new Set<string>()\n operationsRequestModel.operations?.forEach((op) => {\n const { entityId } = op\n if (entityId) {\n taskProgressTags.push({ type: 'progress', id: entityId })\n // Invalidate list item cache for this entity to trigger background refetch\n entityListItemTags.push({ type: 'entityListItem', id: entityId })\n } else {\n // new entity created, so we should invalidate everything\n taskProgressTags.push({ type: 'progress', id: 'LIST' })\n }\n if ((op.data as any)?.attrib) hasAttribOp = true\n // own-edit activity events are sender-filtered on the websocket, so refetch open feeds\n if (\n op.type === 'update' &&\n entityId &&\n ['status', 'attrib', 'tags', 'assignees', `${op.entityType}Type`].some(\n (key) => (op.data as any)?.[key] !== undefined,\n )\n ) {\n entityActivityTags.push({ type: 'entityActivities', id: entityId })\n }\n if (op.type === 'delete' && entityId) {\n deletedTypes.add(op.entityType)\n deletedEntityTags.push({ type: op.entityType, id: entityId })\n // details panels showing the deleted entity\n deletedEntityTags.push({ type: 'entities', id: entityId })\n }\n })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n // Deleted rows are removed optimistically; only server-side descendants need a refetch\n // (folder -> folders/tasks/products/versions, product -> versions).\n const invalidateList = new Set<string>()\n if (deletedTypes.has('folder')) {\n ;['folder', 'task', 'product', 'version'].forEach((t) => invalidateList.add(t))\n }\n if (deletedTypes.has('product')) invalidateList.add('version')\n\n if (invalidateList.has('folder')) deletedEntityTags.push({ type: 'folder', id: 'LIST' })\n if (invalidateList.has('task')) {\n deletedEntityTags.push(\n { type: 'overviewTask', id: 'LIST' },\n { type: 'overviewTask', id: projectName },\n )\n }\n if (invalidateList.has('product')) deletedEntityTags.push({ type: 'product', id: 'LIST' })\n if (invalidateList.has('version')) deletedEntityTags.push({ type: 'version', id: 'LIST' })\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\n ...deletedEntityTags,\n ...entityActivityTags,\n ]\n },\n }),\n }),\n})\n\nexport const { useUpdateOverviewEntitiesMutation } = operationsApiEnhancedInjected\n"],"names":["updateEntityWithOperation","entity","operationData","key","existingLinks","newLinks","newLink","existingIndex","link","linksToDelete","linkId","getOverviewTaskTags","tasks","op","getOverviewFolderTags","folders","createLinkDeletionPatch","entityId","entityType","linkIds","deleteLinksFromEntities","entities","patchOverviewEntities","state","dispatch","patches","entitiesByType","acc","patchOverviewTasks","patchOverviewFolders","tags","taskEntries","getOverviewApi","deleteIds","removeDeletedTasks","tasksArrayDraft","i","entry","tasksPatch","draft","taskOperation","page","task","applyToDraft","patchTask","statsRefetchTimers","scheduleStatsRefetch","projectName","tagTypes","existing","type","folderEntries","foldersQueries","folderPatch","folderMap","folder","folderOperation","patchListItems","entries","entityListsQueriesGql","listItemsPatch","listOperation","item","splitByOpType","operations","operation","operationsEnhanced","operationsApi","operationsApiEnhancedInjected","build","arg","result","data","uniqueErrors","uniqueErrorCodes","e","operationsRequestModel","patchOperations","queryFulfilled","getState","operationsByType","deleteOps","update","updatesToPatch","dep","patchExtraTasks","patchExtraFolders","patchVersions","patchProducts","entityTags","entitiesTags","tag","invalidateEntryPanel","detailsPanelQueries","detailsPanelEntityCaches","detailsPanelEntitiesCaches","entitiesDetailsResult","patchDetailsPanelEntity","taskOperations","folderOperations","versionOperations","productOperations","updatedTaskIds","getUpdatedEntityIds","updatedFolderIds","overviewTaskTags","id","tasksListInfiniteEntries","refetchTasksForCacheEntry","overviewTasksEntries","refetchOverviewTasksForCacheEntry","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","deletedEntityTags","entityActivityTags","hasAttribOp","deletedTypes","invalidateList","t","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
|