@ynput/ayon-frontend-shared 0.3.32 → 0.3.33
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 +26 -24
- package/dist/DetailsPanel.es.js.map +1 -1
- package/dist/ProjectTreeTable.cjs.js +1 -1
- package/dist/ProjectTreeTable.es.js +218 -214
- package/dist/ProjectTreeTable.es.js.map +1 -1
- package/dist/Slicer.cjs.js +1 -1
- package/dist/Slicer.es.js +19 -18
- package/dist/Slicer.es.js.map +1 -1
- package/dist/_virtual/index.cjs14.js +1 -1
- package/dist/_virtual/index.cjs15.js +1 -1
- package/dist/_virtual/index.cjs19.js +1 -1
- package/dist/_virtual/index.cjs4.js +1 -1
- package/dist/_virtual/index.cjs5.js +1 -1
- package/dist/_virtual/index.cjs6.js +1 -1
- package/dist/_virtual/index.cjs7.js +1 -1
- package/dist/_virtual/index.cjs8.js +1 -1
- package/dist/_virtual/index.es10.js +2 -2
- package/dist/_virtual/index.es11.js +2 -2
- package/dist/_virtual/index.es13.js +2 -2
- package/dist/_virtual/index.es14.js +2 -5
- package/dist/_virtual/index.es14.js.map +1 -1
- package/dist/_virtual/index.es15.js +2 -2
- package/dist/_virtual/index.es16.js +2 -2
- package/dist/_virtual/index.es17.js +2 -2
- package/dist/_virtual/index.es18.js +2 -2
- package/dist/_virtual/index.es19.js +2 -2
- package/dist/_virtual/index.es4.js +5 -2
- package/dist/_virtual/index.es4.js.map +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 +2 -2
- package/dist/_virtual/index.es7.js +5 -2
- package/dist/_virtual/index.es7.js.map +1 -1
- package/dist/_virtual/index.es8.js +2 -2
- package/dist/_virtual/index.es9.js +2 -2
- package/dist/api.cjs.js +1 -1
- package/dist/api.es.js +435 -430
- package/dist/api.es.js.map +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +83 -80
- package/dist/components.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +13 -11
- package/dist/index.es.js.map +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.cjs.js +1 -1
- package/dist/node_modules/match-sorter/dist/match-sorter.esm.es.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.cjs.js +1 -1
- package/dist/node_modules/parse-numeric-range/index.es.js +1 -1
- package/dist/node_modules/remove-accents/index.cjs.js +1 -1
- package/dist/node_modules/remove-accents/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/error-codes/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/module/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/plugins/snapshot/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/remote/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/shared/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/type/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/hooks/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.cjs.js.map +1 -1
- package/dist/shared/node_modules/@module-federation/runtime-core/dist/utils/semver/index.es.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.cjs.js +1 -1
- package/dist/shared/node_modules/@module-federation/sdk/dist/index.es.js +1 -1
- package/dist/shared/node_modules/prop-types/index.cjs.js +1 -1
- package/dist/shared/node_modules/prop-types/index.es.js +1 -1
- package/dist/shared/node_modules/react-is/index.cjs.js +1 -1
- package/dist/shared/node_modules/react-is/index.es.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/CSSTransition.cjs.js.map +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.cjs.js.map +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.cjs.js.map +1 -1
- package/dist/shared/node_modules/react-transition-group/esm/utils/PropTypes.es.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js +1 -1
- package/dist/shared/src/api/base/client.cjs.js.map +1 -1
- package/dist/shared/src/api/base/client.es.js +1 -0
- package/dist/shared/src/api/base/client.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.cjs.js +104 -48
- package/dist/shared/src/api/generated/graphql.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphql.es.js +175 -115
- package/dist/shared/src/api/generated/graphql.es.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.cjs.js.map +1 -1
- package/dist/shared/src/api/generated/graphqlLinks.es.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/activities/getActivities.es.js +26 -24
- package/dist/shared/src/api/queries/activities/getActivities.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 +6 -6
- package/dist/shared/src/api/queries/activities/util/activitiesHelpers.es.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js +2 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.cjs.js.map +1 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js +68 -0
- package/dist/shared/src/api/queries/entityLists/listItemsColumnStats.es.js.map +1 -0
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/entityLists/updateLists.es.js +73 -69
- package/dist/shared/src/api/queries/entityLists/updateLists.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 +60 -55
- package/dist/shared/src/api/queries/overview/updateOverview.es.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.cjs.js +4 -4
- package/dist/shared/src/api/queries/users/getUsers.cjs.js.map +1 -1
- package/dist/shared/src/api/queries/users/getUsers.es.js +11 -11
- package/dist/shared/src/api/queries/users/getUsers.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 +3 -2
- package/dist/shared/src/components/ColumnHeaderMenuUI.es.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js +3 -2
- package/dist/shared/src/components/DetailsDialog/DetailsDialog.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js +6 -4
- package/dist/shared/src/components/DetailsPanelAttributes/components/RenderFieldWidget.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DescriptionSection.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js +3 -2
- package/dist/shared/src/components/DetailsPanelDetails/DetailsPanelDetails.es.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.cjs.js.map +1 -1
- package/dist/shared/src/components/DetailsPanelDetails/hooks/useEntityEditing.es.js +3 -2
- 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 +3 -2
- 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 +6 -4
- 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 +6 -4
- 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 +3 -2
- 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 +5 -4
- package/dist/shared/src/components/Feedback/FeedbackContext.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js +3 -2
- package/dist/shared/src/components/LinksManager/AddNewLinks.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.cjs.js.map +1 -1
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js +3 -2
- package/dist/shared/src/components/LinksManager/LinkManagerItem.es.js.map +1 -1
- package/dist/shared/src/components/LinksManager/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 +3 -2
- 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 +6 -4
- package/dist/shared/src/components/LinksManager/hooks/useUpdateLinks.es.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.cjs.js.map +1 -1
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js +3 -2
- package/dist/shared/src/components/ListAttributeForm/ListAttributeForm.es.js.map +1 -1
- package/dist/shared/src/components/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 +3 -2
- 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 +3 -2
- 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 +1 -0
- 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 +3 -2
- 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 +3 -2
- 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 +3 -2
- package/dist/shared/src/components/Powerpack/PowerpackDialog.es.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.cjs.js.map +1 -1
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.es.js +3 -2
- package/dist/shared/src/components/Powerpack/useFreeTrialLink.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 +6 -4
- 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 +8 -6
- 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 +3 -2
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- package/dist/shared/src/components/RenameForm/RenameForm.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/EditReviewableDialog.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/ReviewablesList.es.js +6 -4
- 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 +7 -5
- 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 +6 -4
- package/dist/shared/src/components/ReviewablesList/SortableReviewableCard.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js +3 -2
- package/dist/shared/src/components/ReviewablesList/useReviewablesUpload.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js +6 -4
- package/dist/shared/src/components/ReviewablesSelector/Card.es.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.cjs.js.map +1 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js +2 -1
- package/dist/shared/src/components/ReviewablesSelector/ReviewablesSelector.es.js.map +1 -1
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js +2 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.cjs.js.map +1 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js +24 -0
- package/dist/shared/src/components/SearchFilter/filterScopeRegistry.es.js.map +1 -0
- 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 +7 -6
- package/dist/shared/src/components/SearchFilter/useBuildFilterOptions.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 +3 -2
- 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 +8 -6
- 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 +6 -4
- package/dist/shared/src/components/SimpleFormDialog/SimpleFormDialog.es.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.cjs.js.map +1 -1
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js +3 -2
- package/dist/shared/src/components/SubtasksManager/SubtasksManagerWrapper.es.js.map +1 -1
- package/dist/shared/src/components/Thumbnail/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 +3 -2
- 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 +6 -4
- 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 +10 -8
- package/dist/shared/src/components/VersionUploader/context/VersionUploadContext.es.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js +1 -1
- package/dist/shared/src/components/Watchers/Watchers.cjs.js.map +1 -1
- package/dist/shared/src/components/Watchers/Watchers.es.js +3 -2
- package/dist/shared/src/components/Watchers/Watchers.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/ActionConfigDialog.es.js +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/Actions/Actions.es.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.cjs.js.map +1 -1
- package/dist/shared/src/containers/Actions/InteractiveActionDialog.es.js +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelHeader/DetailsPanelHeader.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 +6 -4
- 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 +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/DetailsPanel/components/DetailsPanelSlideOut/DetailsPanelSlideOut.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/components/TabHeaderAndFilters/TabHeaderAndFilters.styled.es.js +19 -17
- 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 +6 -4
- package/dist/shared/src/containers/DetailsPanel/containers/DetailsPanelSubtasks.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js +5 -3
- package/dist/shared/src/containers/DetailsPanel/containers/FeedContextWrapper.es.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.cjs.js.map +1 -1
- package/dist/shared/src/containers/DetailsPanel/containers/FeedWrapper.es.js +10 -9
- 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 +3 -2
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +3 -2
- package/dist/shared/src/containers/EntityPickerDialog/hooks/useGetEntityPickerData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/Feed.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/Feed.es.js +156 -140
- 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 +6 -4
- 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 +131 -144
- 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 +6 -4
- package/dist/shared/src/containers/Feed/components/ActivityComment/ActivityCommentMenu.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js +3 -3
- package/dist/shared/src/containers/Feed/components/ActivityDate.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityDate.es.js +39 -31
- package/dist/shared/src/containers/Feed/components/ActivityDate.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 +23 -20
- package/dist/shared/src/containers/Feed/components/ActivityItem.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js +349 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js +50 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js +56 -0
- package/dist/shared/src/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.es.js.map +1 -0
- 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 +3 -2
- 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 +2 -2
- 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 +349 -290
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js +87 -12
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js +101 -21
- package/dist/shared/src/containers/Feed/components/CommentInput/CommentInput.styled.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js +34 -0
- package/dist/shared/src/containers/Feed/components/CommentInput/VersionReviewPill.es.js.map +1 -0
- 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 +10 -8
- 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 +3 -2
- 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 +3 -2
- package/dist/shared/src/containers/Feed/components/CommentInput/hooks/useMentionLink.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 +3 -2
- 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 +5 -3
- package/dist/shared/src/containers/Feed/components/Tooltips/EntityTooltip/EntityTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js +3 -2
- package/dist/shared/src/containers/Feed/components/Tooltips/TeamTooltip/TeamTooltip.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js +6 -5
- package/dist/shared/src/containers/Feed/context/FeedContext.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js +27 -0
- package/dist/shared/src/containers/Feed/hooks/useCategoryData.es.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js +88 -68
- package/dist/shared/src/containers/Feed/hooks/useCommentMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.cjs.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js +3 -2
- package/dist/shared/src/containers/Feed/hooks/useGetFeedActivitiesData.es.js.map +1 -1
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js +2 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.cjs.js.map +1 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js +113 -0
- package/dist/shared/src/containers/Feed/hooks/useLastVersionReview.es.js.map +1 -0
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ListTable/ListTableHeader.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/ProjectTreeTable.es.js +34 -32
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ClipboardContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ColumnSettingsProvider.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js +5 -4
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectDataContext.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.es.js +93 -90
- package/dist/shared/src/containers/ProjectTreeTable/context/ProjectTableProvider.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 +6 -4
- 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 +3 -2
- 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 +9 -7
- 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 +121 -104
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +178 -175
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +6 -4
- 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 +20 -17
- 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 +6 -4
- 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 +3 -2
- 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 +17 -15
- package/dist/shared/src/containers/ProjectTreeTable/utils/cellUtils.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 +61 -61
- package/dist/shared/src/containers/ProjectTreeTable/utils/queryFilterToClientFilter.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js +2 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.cjs.js.map +1 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js +15 -0
- package/dist/shared/src/containers/ProjectTreeTable/utils/sanitizeQueryFilter.es.js.map +1 -0
- 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 +6 -4
- 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 +7 -5
- package/dist/shared/src/containers/ProjectTreeTable/widgets/CellWidget.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 +8 -6
- 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 +3 -2
- 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 +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/ProjectTreeTable/widgets/SubtasksWidget.es.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.cjs.js.map +1 -1
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js +3 -2
- package/dist/shared/src/containers/ProjectTreeTable/widgets/TextContentWidget.es.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.cjs.js.map +1 -1
- package/dist/shared/src/containers/RepresentationsList/RepresentationsList.es.js +6 -4
- 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 +6 -4
- package/dist/shared/src/containers/SimpleTable/SimpleTable.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 +52 -50
- 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 +3 -2
- 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 +6 -4
- 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 +56 -53
- package/dist/shared/src/containers/Slicer/context/SlicerContext.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useEntityListsSlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/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 +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useProjectAnatomySlices.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.es.js +6 -4
- package/dist/shared/src/containers/Slicer/hooks/useSelectedEntityIds.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 +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useSlicerAttributesData.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js +12 -18
- package/dist/shared/src/containers/Slicer/hooks/useSlicerViewSync.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useTableDataBySlice.es.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.cjs.js.map +1 -1
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js +3 -2
- package/dist/shared/src/containers/Slicer/hooks/useUsersTable.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js +3 -2
- package/dist/shared/src/containers/Views/ViewsDialogContainer/ViewsDialogContainer.es.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/ViewsMenuContainer/BaseViewsTags.es.js +6 -4
- 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 +3 -2
- 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 +5 -4
- package/dist/shared/src/containers/Views/context/ViewsContext.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useBaseViewMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js +6 -5
- package/dist/shared/src/containers/Views/hooks/useBuildViewMenuItems.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useSelectedView.es.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js +3 -2
- package/dist/shared/src/containers/Views/hooks/useViewsMutations.es.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.cjs.js.map +1 -1
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js +3 -2
- package/dist/shared/src/containers/Views/utils/viewUpdateHelper.es.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/AddonProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/AddonProjectContext.es.js +5 -4
- package/dist/shared/src/context/AddonProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js +1 -1
- package/dist/shared/src/context/DetailsPanelContext.cjs.js.map +1 -1
- package/dist/shared/src/context/DetailsPanelContext.es.js +5 -4
- package/dist/shared/src/context/DetailsPanelContext.es.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js +1 -1
- package/dist/shared/src/context/GlobalContext.cjs.js.map +1 -1
- package/dist/shared/src/context/GlobalContext.es.js +5 -4
- package/dist/shared/src/context/GlobalContext.es.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js +1 -1
- package/dist/shared/src/context/PowerpackContext.cjs.js.map +1 -1
- package/dist/shared/src/context/PowerpackContext.es.js +7 -6
- package/dist/shared/src/context/PowerpackContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectContext.es.js +5 -4
- package/dist/shared/src/context/ProjectContext.es.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.cjs.js.map +1 -1
- package/dist/shared/src/context/ProjectFoldersContext.es.js +5 -4
- package/dist/shared/src/context/ProjectFoldersContext.es.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/RemoteModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/RemoteModulesContext.es.js +5 -4
- package/dist/shared/src/context/RemoteModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.cjs.js.map +1 -1
- package/dist/shared/src/context/SubtasksModulesContext.es.js +5 -4
- package/dist/shared/src/context/SubtasksModulesContext.es.js.map +1 -1
- package/dist/shared/src/context/UriContext.cjs.js +1 -1
- package/dist/shared/src/context/UriContext.cjs.js.map +1 -1
- package/dist/shared/src/context/UriContext.es.js +6 -5
- package/dist/shared/src/context/UriContext.es.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js +1 -1
- package/dist/shared/src/context/WebsocketContext.cjs.js.map +1 -1
- package/dist/shared/src/context/WebsocketContext.es.js +8 -6
- package/dist/shared/src/context/WebsocketContext.es.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js +1 -1
- package/dist/shared/src/hooks/useActionTriggers.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useActionTriggers.es.js +3 -2
- package/dist/shared/src/hooks/useActionTriggers.es.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useEntityUpdate.es.js +3 -2
- package/dist/shared/src/hooks/useEntityUpdate.es.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGetEntityGroups.es.js +3 -2
- package/dist/shared/src/hooks/useGetEntityGroups.es.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useGroupByRemoteModules.es.js +3 -2
- 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 +3 -2
- package/dist/shared/src/hooks/useHierarchyTable.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedStatuses.es.js +5 -4
- package/dist/shared/src/hooks/useScopedStatuses.es.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js +1 -1
- package/dist/shared/src/hooks/useScopedTypes.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useScopedTypes.es.js +3 -2
- package/dist/shared/src/hooks/useScopedTypes.es.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.cjs.js.map +1 -1
- package/dist/shared/src/hooks/useUserProjectConfig.es.js +3 -2
- package/dist/shared/src/hooks/useUserProjectConfig.es.js.map +1 -1
- package/dist/types/api/generated/graphql.d.ts +128 -0
- package/dist/types/api/generated/graphqlLinks.d.ts +73 -0
- package/dist/types/api/queries/activities/getActivities.d.ts +459 -0
- package/dist/types/api/queries/activities/updateActivities.d.ts +22 -0
- package/dist/types/api/queries/entities/getEntity.d.ts +10 -0
- package/dist/types/api/queries/entities/getEntityPanel.d.ts +10 -0
- package/dist/types/api/queries/entities/updateEntity.d.ts +10 -0
- package/dist/types/api/queries/entityLists/getLists.d.ts +10 -0
- package/dist/types/api/queries/entityLists/index.d.ts +1 -0
- package/dist/types/api/queries/entityLists/listItemsColumnStats.d.ts +312 -0
- package/dist/types/api/queries/entityLists/types.d.ts +3 -0
- package/dist/types/api/queries/overview/getOverview.d.ts +10 -0
- package/dist/types/api/queries/project/getProject.d.ts +10 -0
- package/dist/types/api/queries/userDashboard/getUserDashboard.d.ts +10 -0
- package/dist/types/api/queries/users/getUsers.d.ts +10 -0
- package/dist/types/api/queries/versions/getVersionsProducts.d.ts +20 -0
- package/dist/types/components/SearchFilter/filterScopeRegistry.d.ts +5 -0
- package/dist/types/components/SearchFilter/index.d.ts +1 -0
- package/dist/types/containers/Feed/Feed.d.ts +2 -1
- package/dist/types/containers/Feed/components/ActivityDate.d.ts +1 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.d.ts +20 -0
- package/dist/types/containers/Feed/components/ActivityVersionReview/ActivityVersionReview.styled.d.ts +3 -0
- package/dist/types/containers/Feed/components/CommentInput/CommentInput.d.ts +8 -0
- package/dist/types/containers/Feed/components/CommentInput/CommentInput.styled.d.ts +19 -0
- package/dist/types/containers/Feed/components/CommentInput/VersionReviewPill.d.ts +7 -0
- package/dist/types/containers/Feed/hooks/useCategoryData.d.ts +7 -0
- package/dist/types/containers/Feed/hooks/useCommentMutations.d.ts +2 -0
- package/dist/types/containers/Feed/hooks/useGetFeedActivitiesData.d.ts +3 -0
- package/dist/types/containers/Feed/hooks/useLastVersionReview.d.ts +11 -0
- package/dist/types/containers/ProjectTreeTable/context/ProjectTableProvider.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useBuildProjectDataTable.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useFetchOverviewData.d.ts +2 -1
- package/dist/types/containers/ProjectTreeTable/hooks/useQueryFilters.d.ts +1 -1
- package/dist/types/containers/ProjectTreeTable/types/table.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/index.d.ts +1 -0
- package/dist/types/containers/ProjectTreeTable/utils/sanitizeQueryFilter.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateOverview.es.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 '@shared/api/queries/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 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 {\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 }),\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' | 'GetTasksByParent' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\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 const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n }\n\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 const draftArray = draft.tasks\n patchTask(draftArray)\n }\n } else {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n\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 const draftArray = draft.tasks\n patchTask(draftArray)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\nconst invalidateOverviewTasks = (\n tasks: PatchOperation[],\n {\n dispatch,\n }: {\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n) => {\n if (!tasks.length) return\n dispatch(getOverviewApi.util.invalidateTags(getOverviewTaskTags(tasks)))\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'\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(\n tagTypes.map((type) => ({ type, id: projectName })),\n ),\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 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 {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\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 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 },\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\n patchOverviewTasks(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for tasks being created and deleted\n invalidateOverviewTasks([...deleteOps], {\n dispatch,\n })\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\n patchOverviewFolders(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for folders being created and deleted\n if (deleteOps.length) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\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, ['folderColumnStats', 'taskColumnStats'])\n }\n if (versionOperations.length || productOperations.length) {\n scheduleStatsRefetch(dispatch, projectName, [\n 'productColumnStats',\n 'versionColumnStats',\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 // Only invalidate if we haven't already done so for delete operations\n const hasDeleteOps = (operationsByType.folder || []).some(\n (op: OperationModel) => op.type === 'delete',\n )\n if (updatedFolderIds.length > 0 && projectName && !hasDeleteOps) {\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\n let hasAttribOp = false\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 })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\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","entry","tasksPatch","draft","taskOperation","page","task","patchTask","tasksArrayDraft","draftArray","invalidateOverviewTasks","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","hasDeleteOps","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","hasAttribOp","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"updateOverview.es.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 '@shared/api/queries/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 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 {\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 }),\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' | 'GetTasksByParent' | 'GetTasksList',\n entry.originalArgs,\n (draft) => {\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 const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n // @ts-expect-error\n tasksArrayDraft.push(taskOperation.data)\n }\n\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 const draftArray = draft.tasks\n patchTask(draftArray)\n }\n } else {\n const patchTask = (tasksArrayDraft: EditorTaskNode[]) => {\n const task = tasksArrayDraft.find((task) => task.id === taskOperation.entityId)\n if (task) {\n updateEntityWithOperation(task, taskOperation.data)\n }\n }\n\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 const draftArray = draft.tasks\n patchTask(draftArray)\n }\n }\n }\n },\n ),\n )\n // add the patch to the list of patches\n patches?.push(tasksPatch)\n }\n }\n}\n\nconst invalidateOverviewTasks = (\n tasks: PatchOperation[],\n {\n dispatch,\n }: {\n dispatch: ThunkDispatch<any, any, UnknownAction>\n },\n) => {\n if (!tasks.length) return\n dispatch(getOverviewApi.util.invalidateTags(getOverviewTaskTags(tasks)))\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(\n tagTypes.map((type) => ({ type, id: projectName })),\n ),\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 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 {\n const folder = folderMap.get(folderOperation.entityId)\n\n if (folder) {\n updateEntityWithOperation(folder, folderOperation.data)\n }\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 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 },\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\n patchOverviewTasks(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for tasks being created and deleted\n invalidateOverviewTasks([...deleteOps], {\n dispatch,\n })\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\n patchOverviewFolders(updatesToPatch, { state, dispatch }, patches)\n // invalidate the caches for folders being created and deleted\n if (deleteOps.length) {\n dispatch(foldersQueries.util.invalidateTags([{ type: 'folder', id: 'LIST' }]))\n }\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 // Only invalidate if we haven't already done so for delete operations\n const hasDeleteOps = (operationsByType.folder || []).some(\n (op: OperationModel) => op.type === 'delete',\n )\n if (updatedFolderIds.length > 0 && projectName && !hasDeleteOps) {\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\n let hasAttribOp = false\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 })\n\n if (hasAttribOp) {\n tasksFolderTags.push({ type: 'tasksFolder', id: projectName })\n }\n\n return [\n ...userDashboardTags,\n ...taskProgressTags,\n ...entityListItemTags,\n ...tasksFolderTags,\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","entry","tasksPatch","draft","taskOperation","page","task","patchTask","tasksArrayDraft","draftArray","invalidateOverviewTasks","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","hasDeleteOps","patch","_r","_e","userDashboardTags","taskProgressTags","entityListItemTags","tasksFolderTags","hasAttribOp","useUpdateOverviewEntitiesMutation"],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
}
|
|
22
22
|
`,d=`
|
|
23
23
|
query UserList {
|
|
24
|
-
users(last: 2000) {
|
|
24
|
+
users(last: 2000, isSupport: false) {
|
|
25
25
|
edges {
|
|
26
26
|
node {
|
|
27
27
|
name
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
}
|
|
49
49
|
`,p=`
|
|
50
50
|
query Assignees($names: [String!]!){
|
|
51
|
-
users(names: $names) {
|
|
51
|
+
users(names: $names, isSupport: false) {
|
|
52
52
|
edges {
|
|
53
53
|
node {
|
|
54
54
|
name
|
|
@@ -60,7 +60,7 @@ query Assignees($names: [String!]!){
|
|
|
60
60
|
}
|
|
61
61
|
}`,l=`
|
|
62
62
|
query Assignees($projectName: String) {
|
|
63
|
-
users(last: 2000 projectName: $projectName) {
|
|
63
|
+
users(last: 2000 projectName: $projectName, isSupport: false) {
|
|
64
64
|
edges {
|
|
65
65
|
node {
|
|
66
66
|
name
|
|
@@ -70,5 +70,5 @@ query Assignees($projectName: String) {
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
}`,m=n.api.enhanceEndpoints({endpoints:{getCurrentUser:{providesTags:[{type:"user",id:"LIST"}]},getUser:{providesTags:r=>r?[{type:"user",id:r.name}]:[{type:"user",id:"LIST"}]},getUserSessions:{transformResponse:r=>r?.sessions,providesTags:(r,e,{userName:s})=>[{type:"session",id:s}]}}}),y=a.api.injectEndpoints({endpoints:r=>({getUsers:r.query({query:()=>({url:"/graphql",method:"POST",body:{query:d,variables:{}}}),transformResponse:(e,s,{selfName:u})=>{if(e?.errors)throw console.log(e.errors),new Error(e.errors[0].message);return e?.data?.users.edges.filter(t=>t.node.name!=="CloudServiceWorker").map(t=>({...t.node,self:t.node.name===u,avatarUrl:`/api/users/${t.node.name}/avatar`,accessGroups:t.node.accessGroups?JSON.parse(t.node.accessGroups):{},attrib:i.parseAllAttribs(t.node.allAttrib)}))},providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:[{type:"user",id:"LIST"}]}),getUserByName:r.query({query:({name:e})=>({url:"/graphql",method:"POST",body:{query:o,variables:{name:e}}}),transformResponse:e=>e?.data?.users.edges.map(s=>({...s.node,avatarUrl:`/api/users/${s.node?.name}/avatar`,attrib:i.parseAllAttribs(s.node.allAttrib)})),providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:["user",{type:"user",id:"LIST"}]}),getUsersAssignee:r.query({query:({names:e,projectName:s})=>({url:"/graphql",method:"POST",body:{query:e?p:l,variables:{names:e,projectName:s}}}),transformResponse:e=>e?.data?.users.edges.flatMap(s=>{if(!s.node)return[];const u=s.node;return{name:u.name,fullName:u.attrib?.fullName,avatarUrl:`/api/users/${u.name}/avatar`}}),providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:[{type:"user",id:"LIST"}]})}),overrideExisting:!0}),q=y.enhanceEndpoints({endpoints:{GetAllProjectUsersAsAssignee:{transformResponse:r=>r.users.edges.map(e=>({name:e.node.name,fullName:e.node.attrib.fullName,updatedAt:e.node.updatedAt})),providesTags:r=>r?[{type:"user",id:"LIST"},...r.map(e=>({type:"user",id:e.name}))]:[{type:"user",id:"LIST"}]},GetActiveUsersCount:{transformResponse:r=>r.users.edges.filter(e=>e.node.active&&!e.node.isGuest).length,providesTags:[{type:"user",id:"LIST"}]},GetAllAssignees:{transformResponse:r=>r.users.edges.map(e=>({name:e.node.name,fullName:e.node.attrib.fullName,updatedAt:e.node.updatedAt})),providesTags:r=>r?[{type:"user",id:"LIST"},...r.map(e=>({type:"user",id:e.name}))]:[{type:"user",id:"LIST"}]}}}),{useGetAllProjectUsersAsAssigneeQuery:g,useLazyGetAllProjectUsersAsAssigneeQuery:A,useGetActiveUsersCountQuery:c,useGetAllAssigneesQuery:S,useGetUsersQuery:U,useGetUserByNameQuery:v,useGetUsersAssigneeQuery:G}=q,{useGetUserSessionsQuery:
|
|
73
|
+
}`,m=n.api.enhanceEndpoints({endpoints:{getCurrentUser:{providesTags:[{type:"user",id:"LIST"}]},getUser:{providesTags:r=>r?[{type:"user",id:r.name}]:[{type:"user",id:"LIST"}]},getUserSessions:{transformResponse:r=>r?.sessions,providesTags:(r,e,{userName:s})=>[{type:"session",id:s}]}}}),y=a.api.injectEndpoints({endpoints:r=>({getUsers:r.query({query:()=>({url:"/graphql",method:"POST",body:{query:d,variables:{}}}),transformResponse:(e,s,{selfName:u})=>{if(e?.errors)throw console.log(e.errors),new Error(e.errors[0].message);return e?.data?.users.edges.filter(t=>t.node.name!=="CloudServiceWorker").map(t=>({...t.node,self:t.node.name===u,avatarUrl:`/api/users/${t.node.name}/avatar`,accessGroups:t.node.accessGroups?JSON.parse(t.node.accessGroups):{},attrib:i.parseAllAttribs(t.node.allAttrib)}))},providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:[{type:"user",id:"LIST"}]}),getUserByName:r.query({query:({name:e})=>({url:"/graphql",method:"POST",body:{query:o,variables:{name:e}}}),transformResponse:e=>e?.data?.users.edges.map(s=>({...s.node,avatarUrl:`/api/users/${s.node?.name}/avatar`,attrib:i.parseAllAttribs(s.node.allAttrib)})),providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:["user",{type:"user",id:"LIST"}]}),getUsersAssignee:r.query({query:({names:e,projectName:s})=>({url:"/graphql",method:"POST",body:{query:e?p:l,variables:{names:e,projectName:s}}}),transformResponse:e=>e?.data?.users.edges.flatMap(s=>{if(!s.node)return[];const u=s.node;return{name:u.name,fullName:u.attrib?.fullName,avatarUrl:`/api/users/${u.name}/avatar`}}),providesTags:e=>e?[...e.map(s=>({type:"user",id:s.name})),{type:"user",id:"LIST"}]:[{type:"user",id:"LIST"}]})}),overrideExisting:!0}),q=y.enhanceEndpoints({endpoints:{GetAllProjectUsersAsAssignee:{transformResponse:r=>r.users.edges.map(e=>({name:e.node.name,fullName:e.node.attrib.fullName,updatedAt:e.node.updatedAt})),providesTags:r=>r?[{type:"user",id:"LIST"},...r.map(e=>({type:"user",id:e.name}))]:[{type:"user",id:"LIST"}]},GetActiveUsersCount:{transformResponse:r=>r.users.edges.filter(e=>e.node.active&&!e.node.isGuest).length,providesTags:[{type:"user",id:"LIST"}]},GetAllAssignees:{transformResponse:r=>r.users.edges.map(e=>({name:e.node.name,fullName:e.node.attrib.fullName,updatedAt:e.node.updatedAt})),providesTags:r=>r?[{type:"user",id:"LIST"},...r.map(e=>({type:"user",id:e.name}))]:[{type:"user",id:"LIST"}]}}}),{useGetAllProjectUsersAsAssigneeQuery:g,useLazyGetAllProjectUsersAsAssigneeQuery:A,useGetActiveUsersCountQuery:c,useGetAllAssigneesQuery:S,useGetUsersQuery:U,useGetUserByNameQuery:v,useGetUsersAssigneeQuery:G}=q,{useGetUserSessionsQuery:f,useGetCurrentUserQuery:T,useGetUserQuery:Q}=m;exports.useGetActiveUsersCountQuery=c;exports.useGetAllAssigneesQuery=S;exports.useGetAllProjectUsersAsAssigneeQuery=g;exports.useGetCurrentUserQuery=T;exports.useGetUserByNameQuery=v;exports.useGetUserQuery=Q;exports.useGetUserSessionsQuery=f;exports.useGetUsersAssigneeQuery=G;exports.useGetUsersQuery=U;exports.useLazyGetAllProjectUsersAsAssigneeQuery=A;
|
|
74
74
|
//# sourceMappingURL=getUsers.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUsers.cjs.js","sources":["../../../../../../src/api/queries/users/getUsers.ts"],"sourcesContent":["import { GetCurrentUserApiResponse, gqlApi, usersApi } from '@shared/api/generated'\nimport type {\n GetActiveUsersCountQuery,\n GetAllAssigneesQuery,\n GetAllProjectUsersAsAssigneeQuery,\n} from '@shared/api/generated'\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\nimport { parseAllAttribs } from '../overview'\n\nconst USER_BY_NAME_QUERY = `\n query UserList($name:String!) {\n users(name: $name) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n allAttrib\n }\n }\n }\n }\n`\nconst USERS_QUERY = `\n query UserList {\n users(last: 2000) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n userPool\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n inviteSentAt\n inviteAcceptedAt\n createdAt\n updatedAt\n apiKeyPreview\n allAttrib\n }\n }\n }\n }\n`\n\nconst ASSIGNEES_BY_NAME_QUERY = `\nquery Assignees($names: [String!]!){\n users(names: $names) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\nconst ASSIGNEES_QUERY = `\nquery Assignees($projectName: String) {\n users(last: 2000 projectName: $projectName) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\n\ninterface GetCurrentUserResult extends GetCurrentUserApiResponse {\n uiExposureLevel: number\n}\n\ntype RestDefinitions = DefinitionsFromApi<typeof usersApi>\ntype RestTagTypes = TagTypesFromApi<typeof usersApi>\n// update the definitions to include the new types\ntype RestUpdatedDefinitions = Omit<RestDefinitions, 'getCurrentUser'> & {\n getCurrentUser: OverrideResultType<RestDefinitions['getCurrentUser'], GetCurrentUserResult>\n}\n\nconst enhancedApi = usersApi.enhanceEndpoints<RestTagTypes, RestUpdatedDefinitions>({\n endpoints: {\n getCurrentUser: {\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n getUser: {\n providesTags: (res) =>\n res ? [{ type: 'user', id: res.name }] : [{ type: 'user', id: 'LIST' }],\n },\n getUserSessions: {\n transformResponse: (res: any) => res?.sessions,\n providesTags: (_res, _g, { userName }) => [{ type: 'session', id: userName }],\n },\n },\n})\n\nconst injectedApi = gqlApi.injectEndpoints({\n endpoints: (build) => ({\n getUsers: build.query({\n query: () => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USERS_QUERY,\n variables: {},\n },\n }),\n transformResponse: (res: any, _meta, { selfName }) => {\n if (res?.errors) {\n console.log(res.errors)\n throw new Error(res.errors[0].message)\n }\n\n return res?.data?.users.edges\n .filter((e: any) => e.node.name !== 'CloudServiceWorker')\n .map((e: any) => ({\n ...e.node,\n self: e.node.name === selfName,\n avatarUrl: `/api/users/${e.node.name}/avatar`,\n accessGroups: e.node.accessGroups ? JSON.parse(e.node.accessGroups) : {},\n attrib: parseAllAttribs(e.node.allAttrib),\n }))\n },\n providesTags: (users) =>\n users\n ? [...users.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : [{ type: 'user', id: 'LIST' }],\n }),\n getUserByName: build.query({\n query: ({ name }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USER_BY_NAME_QUERY,\n variables: { name },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.map((e: any) => ({\n ...e.node,\n avatarUrl: `/api/users/${e.node?.name}/avatar`,\n attrib: parseAllAttribs(e.node.allAttrib),\n })),\n providesTags: (res) =>\n res\n ? [...res.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : ['user', { type: 'user', id: 'LIST' }],\n }),\n getUsersAssignee: build.query({\n query: ({ names, projectName }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: names ? ASSIGNEES_BY_NAME_QUERY : ASSIGNEES_QUERY,\n variables: { names, projectName },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.flatMap((u: any) => {\n if (!u.node) return []\n\n const n = u.node\n\n return {\n name: n.name,\n fullName: n.attrib?.fullName,\n avatarUrl: `/api/users/${n.name}/avatar`,\n }\n }),\n providesTags: (res) =>\n res\n ? [\n ...res.map((user: any) => ({ type: 'user', id: user.name })),\n { type: 'user', id: 'LIST' },\n ]\n : [{ type: 'user', id: 'LIST' }],\n }),\n }),\n overrideExisting: true,\n})\n\ntype AssigneeNode = GetAllProjectUsersAsAssigneeQuery['users']['edges'][0]['node']\nexport type Assignee = {\n name: AssigneeNode['name']\n fullName: AssigneeNode['attrib']['fullName']\n updatedAt: AssigneeNode['updatedAt']\n}\nexport type Assignees = Assignee[]\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetAllProjectUsersAsAssignee'> & {\n GetAllProjectUsersAsAssignee: OverrideResultType<\n Definitions['GetAllProjectUsersAsAssignee'],\n Assignees\n >\n GetActiveUsersCount: OverrideResultType<Definitions['GetActiveUsersCount'], number>\n GetAllAssignees: OverrideResultType<Definitions['GetAllAssignees'], Assignees>\n}\n\nconst gqlUsers = injectedApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetAllProjectUsersAsAssignee: {\n transformResponse: (res: GetAllProjectUsersAsAssigneeQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n GetActiveUsersCount: {\n transformResponse: (res: GetActiveUsersCountQuery) =>\n res.users.edges.filter((e) => e.node.active && !e.node.isGuest).length,\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n GetAllAssignees: {\n transformResponse: (res: GetAllAssigneesQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n },\n})\n\nexport const {\n useGetAllProjectUsersAsAssigneeQuery,\n useLazyGetAllProjectUsersAsAssigneeQuery,\n useGetActiveUsersCountQuery,\n useGetAllAssigneesQuery,\n useGetUsersQuery,\n useGetUserByNameQuery,\n useGetUsersAssigneeQuery,\n} = gqlUsers\n\nexport const { useGetUserSessionsQuery, useGetCurrentUserQuery, useGetUserQuery } = enhancedApi\nexport default injectedApi\n"],"names":["USER_BY_NAME_QUERY","USERS_QUERY","ASSIGNEES_BY_NAME_QUERY","ASSIGNEES_QUERY","enhancedApi","usersApi","res","_res","_g","userName","injectedApi","gqlApi","build","_meta","selfName","e","parseAllAttribs","users","name","names","projectName","u","n","user","gqlUsers","useGetAllProjectUsersAsAssigneeQuery","useLazyGetAllProjectUsersAsAssigneeQuery","useGetActiveUsersCountQuery","useGetAllAssigneesQuery","useGetUsersQuery","useGetUserByNameQuery","useGetUsersAssigneeQuery","useGetUserSessionsQuery","useGetCurrentUserQuery","useGetUserQuery"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"getUsers.cjs.js","sources":["../../../../../../src/api/queries/users/getUsers.ts"],"sourcesContent":["import { GetCurrentUserApiResponse, gqlApi, usersApi } from '@shared/api/generated'\nimport type {\n GetActiveUsersCountQuery,\n GetAllAssigneesQuery,\n GetAllProjectUsersAsAssigneeQuery,\n} from '@shared/api/generated'\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\nimport { parseAllAttribs } from '../overview'\n\nconst USER_BY_NAME_QUERY = `\n query UserList($name:String!) {\n users(name: $name) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n allAttrib\n }\n }\n }\n }\n`\nconst USERS_QUERY = `\n query UserList {\n users(last: 2000, isSupport: false) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n userPool\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n inviteSentAt\n inviteAcceptedAt\n createdAt\n updatedAt\n apiKeyPreview\n allAttrib\n }\n }\n }\n }\n`\n\nconst ASSIGNEES_BY_NAME_QUERY = `\nquery Assignees($names: [String!]!){\n users(names: $names, isSupport: false) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\nconst ASSIGNEES_QUERY = `\nquery Assignees($projectName: String) {\n users(last: 2000 projectName: $projectName, isSupport: false) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\n\ninterface GetCurrentUserResult extends GetCurrentUserApiResponse {\n uiExposureLevel: number\n}\n\ntype RestDefinitions = DefinitionsFromApi<typeof usersApi>\ntype RestTagTypes = TagTypesFromApi<typeof usersApi>\n// update the definitions to include the new types\ntype RestUpdatedDefinitions = Omit<RestDefinitions, 'getCurrentUser'> & {\n getCurrentUser: OverrideResultType<RestDefinitions['getCurrentUser'], GetCurrentUserResult>\n}\n\nconst enhancedApi = usersApi.enhanceEndpoints<RestTagTypes, RestUpdatedDefinitions>({\n endpoints: {\n getCurrentUser: {\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n getUser: {\n providesTags: (res) =>\n res ? [{ type: 'user', id: res.name }] : [{ type: 'user', id: 'LIST' }],\n },\n getUserSessions: {\n transformResponse: (res: any) => res?.sessions,\n providesTags: (_res, _g, { userName }) => [{ type: 'session', id: userName }],\n },\n },\n})\n\nconst injectedApi = gqlApi.injectEndpoints({\n endpoints: (build) => ({\n getUsers: build.query({\n query: () => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USERS_QUERY,\n variables: {},\n },\n }),\n transformResponse: (res: any, _meta, { selfName }) => {\n if (res?.errors) {\n console.log(res.errors)\n throw new Error(res.errors[0].message)\n }\n\n return res?.data?.users.edges\n .filter((e: any) => e.node.name !== 'CloudServiceWorker')\n .map((e: any) => ({\n ...e.node,\n self: e.node.name === selfName,\n avatarUrl: `/api/users/${e.node.name}/avatar`,\n accessGroups: e.node.accessGroups ? JSON.parse(e.node.accessGroups) : {},\n attrib: parseAllAttribs(e.node.allAttrib),\n }))\n },\n providesTags: (users) =>\n users\n ? [...users.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : [{ type: 'user', id: 'LIST' }],\n }),\n getUserByName: build.query({\n query: ({ name }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USER_BY_NAME_QUERY,\n variables: { name },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.map((e: any) => ({\n ...e.node,\n avatarUrl: `/api/users/${e.node?.name}/avatar`,\n attrib: parseAllAttribs(e.node.allAttrib),\n })),\n providesTags: (res) =>\n res\n ? [...res.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : ['user', { type: 'user', id: 'LIST' }],\n }),\n getUsersAssignee: build.query({\n query: ({ names, projectName }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: names ? ASSIGNEES_BY_NAME_QUERY : ASSIGNEES_QUERY,\n variables: { names, projectName },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.flatMap((u: any) => {\n if (!u.node) return []\n\n const n = u.node\n\n return {\n name: n.name,\n fullName: n.attrib?.fullName,\n avatarUrl: `/api/users/${n.name}/avatar`,\n }\n }),\n providesTags: (res) =>\n res\n ? [\n ...res.map((user: any) => ({ type: 'user', id: user.name })),\n { type: 'user', id: 'LIST' },\n ]\n : [{ type: 'user', id: 'LIST' }],\n }),\n }),\n overrideExisting: true,\n})\n\ntype AssigneeNode = GetAllProjectUsersAsAssigneeQuery['users']['edges'][0]['node']\nexport type Assignee = {\n name: AssigneeNode['name']\n fullName: AssigneeNode['attrib']['fullName']\n updatedAt: AssigneeNode['updatedAt']\n}\nexport type Assignees = Assignee[]\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetAllProjectUsersAsAssignee'> & {\n GetAllProjectUsersAsAssignee: OverrideResultType<\n Definitions['GetAllProjectUsersAsAssignee'],\n Assignees\n >\n GetActiveUsersCount: OverrideResultType<Definitions['GetActiveUsersCount'], number>\n GetAllAssignees: OverrideResultType<Definitions['GetAllAssignees'], Assignees>\n}\n\nconst gqlUsers = injectedApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetAllProjectUsersAsAssignee: {\n transformResponse: (res: GetAllProjectUsersAsAssigneeQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n GetActiveUsersCount: {\n transformResponse: (res: GetActiveUsersCountQuery) =>\n res.users.edges.filter((e) => e.node.active && !e.node.isGuest).length,\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n GetAllAssignees: {\n transformResponse: (res: GetAllAssigneesQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n },\n})\n\nexport const {\n useGetAllProjectUsersAsAssigneeQuery,\n useLazyGetAllProjectUsersAsAssigneeQuery,\n useGetActiveUsersCountQuery,\n useGetAllAssigneesQuery,\n useGetUsersQuery,\n useGetUserByNameQuery,\n useGetUsersAssigneeQuery,\n} = gqlUsers\n\nexport const { useGetUserSessionsQuery, useGetCurrentUserQuery, useGetUserQuery } = enhancedApi\nexport default injectedApi\n"],"names":["USER_BY_NAME_QUERY","USERS_QUERY","ASSIGNEES_BY_NAME_QUERY","ASSIGNEES_QUERY","enhancedApi","usersApi","res","_res","_g","userName","injectedApi","gqlApi","build","_meta","selfName","e","parseAllAttribs","users","name","names","projectName","u","n","user","gqlUsers","useGetAllProjectUsersAsAssigneeQuery","useLazyGetAllProjectUsersAsAssigneeQuery","useGetActiveUsersCountQuery","useGetAllAssigneesQuery","useGetUsersQuery","useGetUserByNameQuery","useGetUsersAssigneeQuery","useGetUserSessionsQuery","useGetCurrentUserQuery","useGetUserQuery"],"mappings":"u9DASA,MAAMA,EAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBrBC,EAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA6BdC,EAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAa1BC,EAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAyBlBC,EAAcC,EAAAA,IAAS,iBAAuD,CAClF,UAAW,CACT,eAAgB,CACd,aAAc,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,EAE7C,QAAS,CACP,aAAeC,GACbA,EAAM,CAAC,CAAE,KAAM,OAAQ,GAAIA,EAAI,IAAA,CAAM,EAAI,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,EAE1E,gBAAiB,CACf,kBAAoBA,GAAaA,GAAK,SACtC,aAAc,CAACC,EAAMC,EAAI,CAAE,SAAAC,CAAA,IAAe,CAAC,CAAE,KAAM,UAAW,GAAIA,EAAU,CAAA,CAC9E,CAEJ,CAAC,EAEKC,EAAcC,EAAAA,IAAO,gBAAgB,CACzC,UAAYC,IAAW,CACrB,SAAUA,EAAM,MAAM,CACpB,MAAO,KAAO,CACZ,IAAK,WACL,OAAQ,OACR,KAAM,CACJ,MAAOX,EACP,UAAW,CAAA,CAAC,CACd,GAEF,kBAAmB,CAACK,EAAUO,EAAO,CAAE,SAAAC,KAAe,CACpD,GAAIR,GAAK,OACP,cAAQ,IAAIA,EAAI,MAAM,EAChB,IAAI,MAAMA,EAAI,OAAO,CAAC,EAAE,OAAO,EAGvC,OAAOA,GAAK,MAAM,MAAM,MACrB,OAAQS,GAAWA,EAAE,KAAK,OAAS,oBAAoB,EACvD,IAAKA,IAAY,CAChB,GAAGA,EAAE,KACL,KAAMA,EAAE,KAAK,OAASD,EACtB,UAAW,cAAcC,EAAE,KAAK,IAAI,UACpC,aAAcA,EAAE,KAAK,aAAe,KAAK,MAAMA,EAAE,KAAK,YAAY,EAAI,CAAA,EACtE,OAAQC,EAAAA,gBAAgBD,EAAE,KAAK,SAAS,CAAA,EACxC,CACN,EACA,aAAeE,GACbA,EACI,CAAC,GAAGA,EAAM,IAAKF,IAAY,CAAE,KAAM,OAAQ,GAAIA,EAAE,IAAA,EAAO,EAAG,CAAE,KAAM,OAAQ,GAAI,OAAQ,EACvF,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,CACpC,EACD,cAAeH,EAAM,MAAM,CACzB,MAAO,CAAC,CAAE,KAAAM,MAAY,CACpB,IAAK,WACL,OAAQ,OACR,KAAM,CACJ,MAAOlB,EACP,UAAW,CAAE,KAAAkB,CAAA,CAAK,CACpB,GAEF,kBAAoBZ,GAClBA,GAAK,MAAM,MAAM,MAAM,IAAKS,IAAY,CACtC,GAAGA,EAAE,KACL,UAAW,cAAcA,EAAE,MAAM,IAAI,UACrC,OAAQC,EAAAA,gBAAgBD,EAAE,KAAK,SAAS,CAAA,EACxC,EACJ,aAAeT,GACbA,EACI,CAAC,GAAGA,EAAI,IAAKS,IAAY,CAAE,KAAM,OAAQ,GAAIA,EAAE,MAAO,EAAG,CAAE,KAAM,OAAQ,GAAI,OAAQ,EACrF,CAAC,OAAQ,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,CAC5C,EACD,iBAAkBH,EAAM,MAAM,CAC5B,MAAO,CAAC,CAAE,MAAAO,EAAO,YAAAC,MAAmB,CAClC,IAAK,WACL,OAAQ,OACR,KAAM,CACJ,MAAOD,EAAQjB,EAA0BC,EACzC,UAAW,CAAE,MAAAgB,EAAO,YAAAC,CAAA,CAAY,CAClC,GAEF,kBAAoBd,GAClBA,GAAK,MAAM,MAAM,MAAM,QAASe,GAAW,CACzC,GAAI,CAACA,EAAE,KAAM,MAAO,CAAA,EAEpB,MAAMC,EAAID,EAAE,KAEZ,MAAO,CACL,KAAMC,EAAE,KACR,SAAUA,EAAE,QAAQ,SACpB,UAAW,cAAcA,EAAE,IAAI,SAAA,CAEnC,CAAC,EACH,aAAehB,GACbA,EACI,CACE,GAAGA,EAAI,IAAKiB,IAAe,CAAE,KAAM,OAAQ,GAAIA,EAAK,IAAA,EAAO,EAC3D,CAAE,KAAM,OAAQ,GAAI,MAAA,CAAO,EAE7B,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,CACpC,CAAA,GAEH,iBAAkB,EACpB,CAAC,EAsBKC,EAAWd,EAAY,iBAA+C,CAC1E,UAAW,CACT,6BAA8B,CAC5B,kBAAoBJ,GAClBA,EAAI,MAAM,MAAM,IAAK,IAAO,CAC1B,KAAM,EAAE,KAAK,KACb,SAAU,EAAE,KAAK,OAAO,SACxB,UAAW,EAAE,KAAK,SAAA,EAClB,EACJ,aAAeA,GACbA,EACI,CAAC,CAAE,KAAM,OAAQ,GAAI,MAAA,EAAU,GAAGA,EAAI,IAAK,IAAO,CAAE,KAAM,OAAQ,GAAI,EAAE,MAAO,CAAC,EAChF,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,EAErC,oBAAqB,CACnB,kBAAoBA,GAClBA,EAAI,MAAM,MAAM,OAAQ,GAAM,EAAE,KAAK,QAAU,CAAC,EAAE,KAAK,OAAO,EAAE,OAClE,aAAc,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,EAE7C,gBAAiB,CACf,kBAAoBA,GAClBA,EAAI,MAAM,MAAM,IAAK,IAAO,CAC1B,KAAM,EAAE,KAAK,KACb,SAAU,EAAE,KAAK,OAAO,SACxB,UAAW,EAAE,KAAK,SAAA,EAClB,EACJ,aAAeA,GACbA,EACI,CAAC,CAAE,KAAM,OAAQ,GAAI,MAAA,EAAU,GAAGA,EAAI,IAAK,IAAO,CAAE,KAAM,OAAQ,GAAI,EAAE,MAAO,CAAC,EAChF,CAAC,CAAE,KAAM,OAAQ,GAAI,OAAQ,CAAA,CACrC,CAEJ,CAAC,EAEY,CACX,qCAAAmB,EACA,yCAAAC,EACA,4BAAAC,EACA,wBAAAC,EACA,iBAAAC,EACA,sBAAAC,EACA,yBAAAC,CACF,EAAIP,EAES,CAAE,wBAAAQ,EAAyB,uBAAAC,EAAwB,gBAAAC,GAAoB9B"}
|
|
@@ -32,7 +32,7 @@ import "../../generated/tasks.es.js";
|
|
|
32
32
|
import "../../generated/teams.es.js";
|
|
33
33
|
import "../../generated/thumbnails.es.js";
|
|
34
34
|
import "../../generated/uRIs.es.js";
|
|
35
|
-
import { api as
|
|
35
|
+
import { api as p } from "../../generated/users.es.js";
|
|
36
36
|
import "../../generated/versions.es.js";
|
|
37
37
|
import "../../generated/workfiles.es.js";
|
|
38
38
|
import "../../generated/ynputCloud.es.js";
|
|
@@ -42,7 +42,7 @@ import { parseAllAttribs as o } from "../overview/getOverview.es.js";
|
|
|
42
42
|
import "../overview/updateOverview.es.js";
|
|
43
43
|
import "../versions/getVersionsProducts.es.js";
|
|
44
44
|
import "../links/getEntityLinks.es.js";
|
|
45
|
-
const
|
|
45
|
+
const n = `
|
|
46
46
|
query UserList($name:String!) {
|
|
47
47
|
users(name: $name) {
|
|
48
48
|
edges {
|
|
@@ -65,7 +65,7 @@ const p = `
|
|
|
65
65
|
}
|
|
66
66
|
`, m = `
|
|
67
67
|
query UserList {
|
|
68
|
-
users(last: 2000) {
|
|
68
|
+
users(last: 2000, isSupport: false) {
|
|
69
69
|
edges {
|
|
70
70
|
node {
|
|
71
71
|
name
|
|
@@ -92,7 +92,7 @@ const p = `
|
|
|
92
92
|
}
|
|
93
93
|
`, d = `
|
|
94
94
|
query Assignees($names: [String!]!){
|
|
95
|
-
users(names: $names) {
|
|
95
|
+
users(names: $names, isSupport: false) {
|
|
96
96
|
edges {
|
|
97
97
|
node {
|
|
98
98
|
name
|
|
@@ -104,7 +104,7 @@ query Assignees($names: [String!]!){
|
|
|
104
104
|
}
|
|
105
105
|
}`, u = `
|
|
106
106
|
query Assignees($projectName: String) {
|
|
107
|
-
users(last: 2000 projectName: $projectName) {
|
|
107
|
+
users(last: 2000 projectName: $projectName, isSupport: false) {
|
|
108
108
|
edges {
|
|
109
109
|
node {
|
|
110
110
|
name
|
|
@@ -114,7 +114,7 @@ query Assignees($projectName: String) {
|
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
-
}`, l =
|
|
117
|
+
}`, l = p.enhanceEndpoints({
|
|
118
118
|
endpoints: {
|
|
119
119
|
getCurrentUser: {
|
|
120
120
|
providesTags: [{ type: "user", id: "LIST" }]
|
|
@@ -156,7 +156,7 @@ query Assignees($projectName: String) {
|
|
|
156
156
|
url: "/graphql",
|
|
157
157
|
method: "POST",
|
|
158
158
|
body: {
|
|
159
|
-
query:
|
|
159
|
+
query: n,
|
|
160
160
|
variables: { name: e }
|
|
161
161
|
}
|
|
162
162
|
}),
|
|
@@ -218,15 +218,15 @@ query Assignees($projectName: String) {
|
|
|
218
218
|
}), {
|
|
219
219
|
useGetAllProjectUsersAsAssigneeQuery: oe,
|
|
220
220
|
useLazyGetAllProjectUsersAsAssigneeQuery: ae,
|
|
221
|
-
useGetActiveUsersCountQuery:
|
|
222
|
-
useGetAllAssigneesQuery:
|
|
221
|
+
useGetActiveUsersCountQuery: pe,
|
|
222
|
+
useGetAllAssigneesQuery: ne,
|
|
223
223
|
useGetUsersQuery: me,
|
|
224
224
|
useGetUserByNameQuery: de,
|
|
225
225
|
useGetUsersAssigneeQuery: ue
|
|
226
226
|
} = y, { useGetUserSessionsQuery: le, useGetCurrentUserQuery: ge, useGetUserQuery: ye } = l;
|
|
227
227
|
export {
|
|
228
|
-
|
|
229
|
-
|
|
228
|
+
pe as useGetActiveUsersCountQuery,
|
|
229
|
+
ne as useGetAllAssigneesQuery,
|
|
230
230
|
oe as useGetAllProjectUsersAsAssigneeQuery,
|
|
231
231
|
ge as useGetCurrentUserQuery,
|
|
232
232
|
de as useGetUserByNameQuery,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUsers.es.js","sources":["../../../../../../src/api/queries/users/getUsers.ts"],"sourcesContent":["import { GetCurrentUserApiResponse, gqlApi, usersApi } from '@shared/api/generated'\nimport type {\n GetActiveUsersCountQuery,\n GetAllAssigneesQuery,\n GetAllProjectUsersAsAssigneeQuery,\n} from '@shared/api/generated'\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\nimport { parseAllAttribs } from '../overview'\n\nconst USER_BY_NAME_QUERY = `\n query UserList($name:String!) {\n users(name: $name) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n allAttrib\n }\n }\n }\n }\n`\nconst USERS_QUERY = `\n query UserList {\n users(last: 2000) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n userPool\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n inviteSentAt\n inviteAcceptedAt\n createdAt\n updatedAt\n apiKeyPreview\n allAttrib\n }\n }\n }\n }\n`\n\nconst ASSIGNEES_BY_NAME_QUERY = `\nquery Assignees($names: [String!]!){\n users(names: $names) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\nconst ASSIGNEES_QUERY = `\nquery Assignees($projectName: String) {\n users(last: 2000 projectName: $projectName) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\n\ninterface GetCurrentUserResult extends GetCurrentUserApiResponse {\n uiExposureLevel: number\n}\n\ntype RestDefinitions = DefinitionsFromApi<typeof usersApi>\ntype RestTagTypes = TagTypesFromApi<typeof usersApi>\n// update the definitions to include the new types\ntype RestUpdatedDefinitions = Omit<RestDefinitions, 'getCurrentUser'> & {\n getCurrentUser: OverrideResultType<RestDefinitions['getCurrentUser'], GetCurrentUserResult>\n}\n\nconst enhancedApi = usersApi.enhanceEndpoints<RestTagTypes, RestUpdatedDefinitions>({\n endpoints: {\n getCurrentUser: {\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n getUser: {\n providesTags: (res) =>\n res ? [{ type: 'user', id: res.name }] : [{ type: 'user', id: 'LIST' }],\n },\n getUserSessions: {\n transformResponse: (res: any) => res?.sessions,\n providesTags: (_res, _g, { userName }) => [{ type: 'session', id: userName }],\n },\n },\n})\n\nconst injectedApi = gqlApi.injectEndpoints({\n endpoints: (build) => ({\n getUsers: build.query({\n query: () => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USERS_QUERY,\n variables: {},\n },\n }),\n transformResponse: (res: any, _meta, { selfName }) => {\n if (res?.errors) {\n console.log(res.errors)\n throw new Error(res.errors[0].message)\n }\n\n return res?.data?.users.edges\n .filter((e: any) => e.node.name !== 'CloudServiceWorker')\n .map((e: any) => ({\n ...e.node,\n self: e.node.name === selfName,\n avatarUrl: `/api/users/${e.node.name}/avatar`,\n accessGroups: e.node.accessGroups ? JSON.parse(e.node.accessGroups) : {},\n attrib: parseAllAttribs(e.node.allAttrib),\n }))\n },\n providesTags: (users) =>\n users\n ? [...users.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : [{ type: 'user', id: 'LIST' }],\n }),\n getUserByName: build.query({\n query: ({ name }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USER_BY_NAME_QUERY,\n variables: { name },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.map((e: any) => ({\n ...e.node,\n avatarUrl: `/api/users/${e.node?.name}/avatar`,\n attrib: parseAllAttribs(e.node.allAttrib),\n })),\n providesTags: (res) =>\n res\n ? [...res.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : ['user', { type: 'user', id: 'LIST' }],\n }),\n getUsersAssignee: build.query({\n query: ({ names, projectName }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: names ? ASSIGNEES_BY_NAME_QUERY : ASSIGNEES_QUERY,\n variables: { names, projectName },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.flatMap((u: any) => {\n if (!u.node) return []\n\n const n = u.node\n\n return {\n name: n.name,\n fullName: n.attrib?.fullName,\n avatarUrl: `/api/users/${n.name}/avatar`,\n }\n }),\n providesTags: (res) =>\n res\n ? [\n ...res.map((user: any) => ({ type: 'user', id: user.name })),\n { type: 'user', id: 'LIST' },\n ]\n : [{ type: 'user', id: 'LIST' }],\n }),\n }),\n overrideExisting: true,\n})\n\ntype AssigneeNode = GetAllProjectUsersAsAssigneeQuery['users']['edges'][0]['node']\nexport type Assignee = {\n name: AssigneeNode['name']\n fullName: AssigneeNode['attrib']['fullName']\n updatedAt: AssigneeNode['updatedAt']\n}\nexport type Assignees = Assignee[]\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetAllProjectUsersAsAssignee'> & {\n GetAllProjectUsersAsAssignee: OverrideResultType<\n Definitions['GetAllProjectUsersAsAssignee'],\n Assignees\n >\n GetActiveUsersCount: OverrideResultType<Definitions['GetActiveUsersCount'], number>\n GetAllAssignees: OverrideResultType<Definitions['GetAllAssignees'], Assignees>\n}\n\nconst gqlUsers = injectedApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetAllProjectUsersAsAssignee: {\n transformResponse: (res: GetAllProjectUsersAsAssigneeQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n GetActiveUsersCount: {\n transformResponse: (res: GetActiveUsersCountQuery) =>\n res.users.edges.filter((e) => e.node.active && !e.node.isGuest).length,\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n GetAllAssignees: {\n transformResponse: (res: GetAllAssigneesQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n },\n})\n\nexport const {\n useGetAllProjectUsersAsAssigneeQuery,\n useLazyGetAllProjectUsersAsAssigneeQuery,\n useGetActiveUsersCountQuery,\n useGetAllAssigneesQuery,\n useGetUsersQuery,\n useGetUserByNameQuery,\n useGetUsersAssigneeQuery,\n} = gqlUsers\n\nexport const { useGetUserSessionsQuery, useGetCurrentUserQuery, useGetUserQuery } = enhancedApi\nexport default injectedApi\n"],"names":["USER_BY_NAME_QUERY","USERS_QUERY","ASSIGNEES_BY_NAME_QUERY","ASSIGNEES_QUERY","enhancedApi","usersApi","res","_res","_g","userName","injectedApi","gqlApi","build","_meta","selfName","e","parseAllAttribs","users","name","names","projectName","u","n","user","gqlUsers","useGetAllProjectUsersAsAssigneeQuery","useLazyGetAllProjectUsersAsAssigneeQuery","useGetActiveUsersCountQuery","useGetAllAssigneesQuery","useGetUsersQuery","useGetUserByNameQuery","useGetUsersAssigneeQuery","useGetUserSessionsQuery","useGetCurrentUserQuery","useGetUserQuery"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"getUsers.es.js","sources":["../../../../../../src/api/queries/users/getUsers.ts"],"sourcesContent":["import { GetCurrentUserApiResponse, gqlApi, usersApi } from '@shared/api/generated'\nimport type {\n GetActiveUsersCountQuery,\n GetAllAssigneesQuery,\n GetAllProjectUsersAsAssigneeQuery,\n} from '@shared/api/generated'\nimport { DefinitionsFromApi, OverrideResultType, TagTypesFromApi } from '@reduxjs/toolkit/query'\nimport { parseAllAttribs } from '../overview'\n\nconst USER_BY_NAME_QUERY = `\n query UserList($name:String!) {\n users(name: $name) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n allAttrib\n }\n }\n }\n }\n`\nconst USERS_QUERY = `\n query UserList {\n users(last: 2000, isSupport: false) {\n edges {\n node {\n name\n isAdmin\n isManager\n isService\n isDeveloper\n isGuest\n active\n userPool\n accessGroups\n defaultAccessGroups\n hasPassword\n disablePasswordLogin\n inviteSentAt\n inviteAcceptedAt\n createdAt\n updatedAt\n apiKeyPreview\n allAttrib\n }\n }\n }\n }\n`\n\nconst ASSIGNEES_BY_NAME_QUERY = `\nquery Assignees($names: [String!]!){\n users(names: $names, isSupport: false) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\nconst ASSIGNEES_QUERY = `\nquery Assignees($projectName: String) {\n users(last: 2000 projectName: $projectName, isSupport: false) {\n edges {\n node {\n name\n attrib {\n fullName\n }\n }\n }\n}\n}`\n\ninterface GetCurrentUserResult extends GetCurrentUserApiResponse {\n uiExposureLevel: number\n}\n\ntype RestDefinitions = DefinitionsFromApi<typeof usersApi>\ntype RestTagTypes = TagTypesFromApi<typeof usersApi>\n// update the definitions to include the new types\ntype RestUpdatedDefinitions = Omit<RestDefinitions, 'getCurrentUser'> & {\n getCurrentUser: OverrideResultType<RestDefinitions['getCurrentUser'], GetCurrentUserResult>\n}\n\nconst enhancedApi = usersApi.enhanceEndpoints<RestTagTypes, RestUpdatedDefinitions>({\n endpoints: {\n getCurrentUser: {\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n getUser: {\n providesTags: (res) =>\n res ? [{ type: 'user', id: res.name }] : [{ type: 'user', id: 'LIST' }],\n },\n getUserSessions: {\n transformResponse: (res: any) => res?.sessions,\n providesTags: (_res, _g, { userName }) => [{ type: 'session', id: userName }],\n },\n },\n})\n\nconst injectedApi = gqlApi.injectEndpoints({\n endpoints: (build) => ({\n getUsers: build.query({\n query: () => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USERS_QUERY,\n variables: {},\n },\n }),\n transformResponse: (res: any, _meta, { selfName }) => {\n if (res?.errors) {\n console.log(res.errors)\n throw new Error(res.errors[0].message)\n }\n\n return res?.data?.users.edges\n .filter((e: any) => e.node.name !== 'CloudServiceWorker')\n .map((e: any) => ({\n ...e.node,\n self: e.node.name === selfName,\n avatarUrl: `/api/users/${e.node.name}/avatar`,\n accessGroups: e.node.accessGroups ? JSON.parse(e.node.accessGroups) : {},\n attrib: parseAllAttribs(e.node.allAttrib),\n }))\n },\n providesTags: (users) =>\n users\n ? [...users.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : [{ type: 'user', id: 'LIST' }],\n }),\n getUserByName: build.query({\n query: ({ name }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: USER_BY_NAME_QUERY,\n variables: { name },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.map((e: any) => ({\n ...e.node,\n avatarUrl: `/api/users/${e.node?.name}/avatar`,\n attrib: parseAllAttribs(e.node.allAttrib),\n })),\n providesTags: (res) =>\n res\n ? [...res.map((e: any) => ({ type: 'user', id: e.name })), { type: 'user', id: 'LIST' }]\n : ['user', { type: 'user', id: 'LIST' }],\n }),\n getUsersAssignee: build.query({\n query: ({ names, projectName }) => ({\n url: '/graphql',\n method: 'POST',\n body: {\n query: names ? ASSIGNEES_BY_NAME_QUERY : ASSIGNEES_QUERY,\n variables: { names, projectName },\n },\n }),\n transformResponse: (res: any) =>\n res?.data?.users.edges.flatMap((u: any) => {\n if (!u.node) return []\n\n const n = u.node\n\n return {\n name: n.name,\n fullName: n.attrib?.fullName,\n avatarUrl: `/api/users/${n.name}/avatar`,\n }\n }),\n providesTags: (res) =>\n res\n ? [\n ...res.map((user: any) => ({ type: 'user', id: user.name })),\n { type: 'user', id: 'LIST' },\n ]\n : [{ type: 'user', id: 'LIST' }],\n }),\n }),\n overrideExisting: true,\n})\n\ntype AssigneeNode = GetAllProjectUsersAsAssigneeQuery['users']['edges'][0]['node']\nexport type Assignee = {\n name: AssigneeNode['name']\n fullName: AssigneeNode['attrib']['fullName']\n updatedAt: AssigneeNode['updatedAt']\n}\nexport type Assignees = Assignee[]\n\ntype Definitions = DefinitionsFromApi<typeof gqlApi>\ntype TagTypes = TagTypesFromApi<typeof gqlApi>\n// update the definitions to include the new types\ntype UpdatedDefinitions = Omit<Definitions, 'GetAllProjectUsersAsAssignee'> & {\n GetAllProjectUsersAsAssignee: OverrideResultType<\n Definitions['GetAllProjectUsersAsAssignee'],\n Assignees\n >\n GetActiveUsersCount: OverrideResultType<Definitions['GetActiveUsersCount'], number>\n GetAllAssignees: OverrideResultType<Definitions['GetAllAssignees'], Assignees>\n}\n\nconst gqlUsers = injectedApi.enhanceEndpoints<TagTypes, UpdatedDefinitions>({\n endpoints: {\n GetAllProjectUsersAsAssignee: {\n transformResponse: (res: GetAllProjectUsersAsAssigneeQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n GetActiveUsersCount: {\n transformResponse: (res: GetActiveUsersCountQuery) =>\n res.users.edges.filter((e) => e.node.active && !e.node.isGuest).length,\n providesTags: [{ type: 'user', id: 'LIST' }],\n },\n GetAllAssignees: {\n transformResponse: (res: GetAllAssigneesQuery) =>\n res.users.edges.map((e) => ({\n name: e.node.name,\n fullName: e.node.attrib.fullName,\n updatedAt: e.node.updatedAt,\n })),\n providesTags: (res) =>\n res\n ? [{ type: 'user', id: 'LIST' }, ...res.map((e) => ({ type: 'user', id: e.name }))]\n : [{ type: 'user', id: 'LIST' }],\n },\n },\n})\n\nexport const {\n useGetAllProjectUsersAsAssigneeQuery,\n useLazyGetAllProjectUsersAsAssigneeQuery,\n useGetActiveUsersCountQuery,\n useGetAllAssigneesQuery,\n useGetUsersQuery,\n useGetUserByNameQuery,\n useGetUsersAssigneeQuery,\n} = gqlUsers\n\nexport const { useGetUserSessionsQuery, useGetCurrentUserQuery, useGetUserQuery } = enhancedApi\nexport default injectedApi\n"],"names":["USER_BY_NAME_QUERY","USERS_QUERY","ASSIGNEES_BY_NAME_QUERY","ASSIGNEES_QUERY","enhancedApi","usersApi","res","_res","_g","userName","injectedApi","gqlApi","build","_meta","selfName","e","parseAllAttribs","users","name","names","projectName","u","n","user","gqlUsers","useGetAllProjectUsersAsAssigneeQuery","useLazyGetAllProjectUsersAsAssigneeQuery","useGetActiveUsersCountQuery","useGetAllAssigneesQuery","useGetUsersQuery","useGetUserByNameQuery","useGetUsersAssigneeQuery","useGetUserSessionsQuery","useGetCurrentUserQuery","useGetUserQuery"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../_virtual/jsx-runtime.cjs.js"),c=require("react"),l=require("@ynput/ayon-react-components"),p=require("styled-components");require("../context/RemoteModulesContext.cjs.js");require("../../../_virtual/runtime.cjs.js");require("../../../_virtual/semver.cjs.js");require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/columnStats/metricTargets.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../util/pubsub.cjs.js");require("../context/PowerpackContextInstance.cjs.js");require("../context/UriContext.cjs.js");require("../context/DetailsPanelContextInstance.cjs.js");require("../context/SubtasksModulesContextInstance.cjs.js");require("../context/ThumbnailUploaderContext.cjs.js");require("../context/SettingsPanelContext.cjs.js");require("../context/pip/PiPProvider.cjs.js");require("react-dom");require("../context/pip/PiPWrapper.cjs.js");require("../context/AddonProjectContext.cjs.js");require("../context/AddonContext.cjs.js");require("../context/MoveEntityContext.cjs.js");const x=require("../context/MenuContext.cjs.js");require("../context/WebsocketContext.cjs.js");require("../context/GlobalContext.cjs.js");require("../context/ProjectContext.cjs.js");require("../context/ProjectFoldersContext.cjs.js");const d=require("./Menu/Menu.cjs.js"),g=require("./Menu/MenuContainer.cjs.js");require("./Menu/MenuItem.cjs.js");require("./Menu/Menu.styled.cjs.js");const o=p(l.Button)`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../../../_virtual/jsx-runtime.cjs.js"),c=require("react"),l=require("@ynput/ayon-react-components"),p=require("styled-components");require("../context/RemoteModulesContext.cjs.js");require("../../../_virtual/runtime.cjs.js");require("../../../_virtual/semver.cjs.js");require("../api/base/client.cjs.js");require("../api/generated/graphql.cjs.js");require("../api/generated/graphqlLinks.cjs.js");require("../api/generated/access.cjs.js");require("../api/generated/actions.cjs.js");require("../api/generated/activityFeed.cjs.js");require("../api/generated/addons.cjs.js");require("../api/generated/anatomy.cjs.js");require("../api/generated/attributes.cjs.js");require("../api/generated/authentication.cjs.js");require("../api/generated/bundles.cjs.js");require("../api/generated/configuration.cjs.js");require("../api/generated/dataImport.cjs.js");require("../api/generated/desktop.cjs.js");require("../api/generated/entityLists.cjs.js");require("../api/generated/events.cjs.js");require("../api/generated/files.cjs.js");require("../api/generated/folders.cjs.js");require("../api/generated/inbox.cjs.js");require("../api/generated/links.cjs.js");require("../api/generated/market.cjs.js");require("../api/generated/onboarding.cjs.js");require("../api/generated/operations.cjs.js");require("../api/generated/products.cjs.js");require("../api/generated/projectDashboard.cjs.js");require("../api/generated/projects.cjs.js");require("../api/generated/projectFolders.cjs.js");require("../api/generated/reviewables.cjs.js");require("../api/generated/services.cjs.js");require("../api/generated/system.cjs.js");require("../api/generated/tasks.cjs.js");require("../api/generated/teams.cjs.js");require("../api/generated/thumbnails.cjs.js");require("../api/generated/uRIs.cjs.js");require("../api/generated/users.cjs.js");require("../api/generated/versions.cjs.js");require("../api/generated/workfiles.cjs.js");require("../api/generated/ynputCloud.cjs.js");require("../api/generated/grouping.cjs.js");require("../api/generated/views.cjs.js");require("../api/queries/actions/getActions.cjs.js");require("../api/queries/activities/getActivities.cjs.js");require("../api/queries/activities/updateActivities.cjs.js");require("../api/queries/activities/updateReaction.cjs.js");require("../api/queries/activities/getMentions.cjs.js");require("../api/queries/activities/getCategories.cjs.js");require("../api/queries/addons/getAddons.cjs.js");require("../api/queries/addons/updateAddons.cjs.js");require("../api/queries/attributes/getAttributes.cjs.js");require("../api/queries/attributes/updateAttributes.cjs.js");require("../api/queries/authentication/getAuthentication.cjs.js");require("../api/queries/cloud/cloud.cjs.js");require("../api/queries/columnStats/metricTargets.cjs.js");require("../api/queries/config/getConfig.cjs.js");require("../api/queries/config/updateConfig.cjs.js");require("../api/queries/entities/getEntity.cjs.js");require("../api/queries/entities/getEntityPanel.cjs.js");require("../api/queries/overview/getOverview.cjs.js");require("../api/queries/overview/updateOverview.cjs.js");require("../api/queries/versions/getVersionsProducts.cjs.js");require("../api/queries/links/getEntityLinks.cjs.js");require("../api/queries/entities/updateEntity.cjs.js");require("../api/queries/entityLists/getLists.cjs.js");require("../api/queries/entityLists/updateLists.cjs.js");require("../api/queries/entityLists/getListsAttributes.cjs.js");require("../api/queries/entityLists/listItemsColumnStats.cjs.js");require("../api/queries/entityLists/updateListsAttributes.cjs.js");require("../api/queries/entityLists/listFolders.cjs.js");require("../api/queries/folders/getFolders.cjs.js");require("../api/queries/folders/getFolderDeleteInfo.cjs.js");require("../api/queries/grouping/getGrouping.cjs.js");require("../api/queries/links/updateLinks.cjs.js");require("../api/queries/links/getLinks.cjs.js");require("../api/queries/permissions/getPermissions.cjs.js");require("../api/queries/products/createProduct.cjs.js");require("../api/queries/products/getFolderProducts.cjs.js");require("../api/queries/project/getProject.cjs.js");require("../api/queries/project/updateProject.cjs.js");require("../api/queries/projectFolders/projectFolders.cjs.js");require("../api/queries/review/getReview.cjs.js");require("../api/queries/review/updateReview.cjs.js");require("../api/queries/share/share.cjs.js");require("../api/queries/system/getSystem.cjs.js");require("../api/queries/tasks/getTasks.cjs.js");require("../api/queries/tasks/updateTasks.cjs.js");require("../api/queries/teams/getTeams.cjs.js");require("../api/queries/userDashboard/getUserDashboard.cjs.js");require("../api/queries/users/getUsers.cjs.js");require("../api/queries/users/updateUsers.cjs.js");require("../api/queries/users/guests.cjs.js");require("../api/queries/versions/updateVersions.cjs.js");require("../api/queries/views/getViews.cjs.js");require("../api/queries/views/updateViews.cjs.js");require("../api/queries/watchers/getWatchers.cjs.js");require("../api/queries/uris/getUris.cjs.js");require("lodash");require("react-toastify");require("react-redux");require("custom-protocol-check");require("../containers/ProjectTreeTable/components/GroupSettingsFallback.cjs.js");require("uuid");require("../util/pubsub.cjs.js");require("../context/PowerpackContextInstance.cjs.js");require("../context/UriContext.cjs.js");require("../context/DetailsPanelContextInstance.cjs.js");require("../context/SubtasksModulesContextInstance.cjs.js");require("../context/ThumbnailUploaderContext.cjs.js");require("../context/SettingsPanelContext.cjs.js");require("../context/pip/PiPProvider.cjs.js");require("react-dom");require("../context/pip/PiPWrapper.cjs.js");require("../context/AddonProjectContext.cjs.js");require("../context/AddonContext.cjs.js");require("../context/MoveEntityContext.cjs.js");const x=require("../context/MenuContext.cjs.js");require("../context/WebsocketContext.cjs.js");require("../context/GlobalContext.cjs.js");require("../context/ProjectContext.cjs.js");require("../context/ProjectFoldersContext.cjs.js");const d=require("./Menu/Menu.cjs.js"),g=require("./Menu/MenuContainer.cjs.js");require("./Menu/MenuItem.cjs.js");require("./Menu/Menu.styled.cjs.js");const o=p(l.Button)`
|
|
2
2
|
background-color: unset !important;
|
|
3
3
|
z-index: 110;
|
|
4
4
|
position: relative;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnHeaderMenuUI.cjs.js","sources":["../../../../src/components/ColumnHeaderMenuUI.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { useMenuContext } from '@shared/context'\nimport { Menu, MenuContainer } from './Menu'\nimport type { MenuItemType } from './Menu'\n\nexport type ColumnMenuItemType = {\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n}\n\nexport const ColumnMenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuUIProps {\n menuItems: ColumnMenuItemType[]\n menuId: string\n className?: string\n}\n\n/**\n * Self-contained column header menu UI.\n * Uses the shared MenuContainer/Menu infrastructure and MenuContext for open state.\n */\nexport const ColumnHeaderMenuUI = ({ menuItems, menuId, className }: ColumnHeaderMenuUIProps) => {\n const { toggleMenuOpen, menuOpen } = useMenuContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n const isOpen = menuOpen === menuId\n\n if (menuItems.length === 0) return null\n\n return (\n <>\n <ColumnMenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n toggleMenuOpen(menuId)\n }}\n onPointerDown={(e) => e.stopPropagation()}\n icon=\"more_horiz\"\n $isOpen={isOpen}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n toggleMenuOpen(false)\n }}\n >\n <Menu menu={menuItems as MenuItemType[]} onClose={() => toggleMenuOpen(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["ColumnMenuButton","styled","Button","$isOpen","ColumnHeaderMenuUI","menuItems","menuId","className","toggleMenuOpen","menuOpen","useMenuContext","buttonRef","useRef","isOpen","jsxs","Fragment","jsx","MenuContainer","Menu"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ColumnHeaderMenuUI.cjs.js","sources":["../../../../src/components/ColumnHeaderMenuUI.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { useMenuContext } from '@shared/context'\nimport { Menu, MenuContainer } from './Menu'\nimport type { MenuItemType } from './Menu'\n\nexport type ColumnMenuItemType = {\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n}\n\nexport const ColumnMenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuUIProps {\n menuItems: ColumnMenuItemType[]\n menuId: string\n className?: string\n}\n\n/**\n * Self-contained column header menu UI.\n * Uses the shared MenuContainer/Menu infrastructure and MenuContext for open state.\n */\nexport const ColumnHeaderMenuUI = ({ menuItems, menuId, className }: ColumnHeaderMenuUIProps) => {\n const { toggleMenuOpen, menuOpen } = useMenuContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n const isOpen = menuOpen === menuId\n\n if (menuItems.length === 0) return null\n\n return (\n <>\n <ColumnMenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n toggleMenuOpen(menuId)\n }}\n onPointerDown={(e) => e.stopPropagation()}\n icon=\"more_horiz\"\n $isOpen={isOpen}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n toggleMenuOpen(false)\n }}\n >\n <Menu menu={menuItems as MenuItemType[]} onClose={() => toggleMenuOpen(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["ColumnMenuButton","styled","Button","$isOpen","ColumnHeaderMenuUI","menuItems","menuId","className","toggleMenuOpen","menuOpen","useMenuContext","buttonRef","useRef","isOpen","jsxs","Fragment","jsx","MenuContainer","Menu"],"mappings":"mrMAiBO,MAAMA,EAAmBC,EAAOC,QAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAiBzC,CAAC,CAAE,QAAAC,CAAA,IACHA,GACA;AAAA;AAAA,GAED;AAAA,EAaUC,EAAqB,CAAC,CAAE,UAAAC,EAAW,OAAAC,EAAQ,UAAAC,KAAyC,CAC/F,KAAM,CAAE,eAAAC,EAAgB,SAAAC,CAAA,EAAaC,iBAAA,EAC/BC,EAAYC,EAAAA,OAA0B,IAAI,EAC1CC,EAASJ,IAAaH,EAE5B,OAAID,EAAU,SAAW,EAAU,KAGjCS,EAAAA,kBAAAA,KAAAC,6BAAA,CACE,SAAA,CAAAC,EAAAA,kBAAAA,IAAChB,EAAA,CACC,IAAKW,EACL,UAAAJ,EACA,QAAU,GAAM,CACd,EAAE,gBAAA,EACFC,EAAeF,CAAM,CACvB,EACA,cAAgB,GAAM,EAAE,gBAAA,EACxB,KAAK,aACL,QAASO,CAAA,CAAA,EAEXG,EAAAA,kBAAAA,IAACC,EAAAA,cAAA,CACC,OAAQN,EAAU,QAClB,GAAIL,EACJ,MAAM,OACN,QAAU,GAAW,CACnB,EAAE,gBAAA,EACFE,EAAe,EAAK,CACtB,EAEA,SAAAQ,EAAAA,kBAAAA,IAACE,EAAAA,MAAK,KAAMb,EAA6B,QAAS,IAAMG,EAAe,EAAK,CAAA,CAAG,CAAA,CAAA,CACjF,EACF,CAEJ"}
|
|
@@ -70,6 +70,7 @@ import "../api/queries/entities/updateEntity.es.js";
|
|
|
70
70
|
import "../api/queries/entityLists/getLists.es.js";
|
|
71
71
|
import "../api/queries/entityLists/updateLists.es.js";
|
|
72
72
|
import "../api/queries/entityLists/getListsAttributes.es.js";
|
|
73
|
+
import "../api/queries/entityLists/listItemsColumnStats.es.js";
|
|
73
74
|
import "../api/queries/entityLists/updateListsAttributes.es.js";
|
|
74
75
|
import "../api/queries/entityLists/listFolders.es.js";
|
|
75
76
|
import "../api/queries/folders/getFolders.es.js";
|
|
@@ -147,7 +148,7 @@ const d = l(c)`
|
|
|
147
148
|
${({ $isOpen: t }) => t && `
|
|
148
149
|
background-color: var(--md-sys-color-surface-container-hover) !important;
|
|
149
150
|
`}
|
|
150
|
-
`,
|
|
151
|
+
`, Ar = ({ menuItems: t, menuId: i, className: n }) => {
|
|
151
152
|
const { toggleMenuOpen: p, menuOpen: e } = u(), m = a(null), s = e === i;
|
|
152
153
|
return t.length === 0 ? null : /* @__PURE__ */ r.jsxs(r.Fragment, { children: [
|
|
153
154
|
/* @__PURE__ */ r.jsx(
|
|
@@ -178,7 +179,7 @@ const d = l(c)`
|
|
|
178
179
|
] });
|
|
179
180
|
};
|
|
180
181
|
export {
|
|
181
|
-
|
|
182
|
+
Ar as ColumnHeaderMenuUI,
|
|
182
183
|
d as ColumnMenuButton
|
|
183
184
|
};
|
|
184
185
|
//# sourceMappingURL=ColumnHeaderMenuUI.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnHeaderMenuUI.es.js","sources":["../../../../src/components/ColumnHeaderMenuUI.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { useMenuContext } from '@shared/context'\nimport { Menu, MenuContainer } from './Menu'\nimport type { MenuItemType } from './Menu'\n\nexport type ColumnMenuItemType = {\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n}\n\nexport const ColumnMenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuUIProps {\n menuItems: ColumnMenuItemType[]\n menuId: string\n className?: string\n}\n\n/**\n * Self-contained column header menu UI.\n * Uses the shared MenuContainer/Menu infrastructure and MenuContext for open state.\n */\nexport const ColumnHeaderMenuUI = ({ menuItems, menuId, className }: ColumnHeaderMenuUIProps) => {\n const { toggleMenuOpen, menuOpen } = useMenuContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n const isOpen = menuOpen === menuId\n\n if (menuItems.length === 0) return null\n\n return (\n <>\n <ColumnMenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n toggleMenuOpen(menuId)\n }}\n onPointerDown={(e) => e.stopPropagation()}\n icon=\"more_horiz\"\n $isOpen={isOpen}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n toggleMenuOpen(false)\n }}\n >\n <Menu menu={menuItems as MenuItemType[]} onClose={() => toggleMenuOpen(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["ColumnMenuButton","styled","Button","$isOpen","ColumnHeaderMenuUI","menuItems","menuId","className","toggleMenuOpen","menuOpen","useMenuContext","buttonRef","useRef","isOpen","jsxs","Fragment","jsx","e","MenuContainer","Menu"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ColumnHeaderMenuUI.es.js","sources":["../../../../src/components/ColumnHeaderMenuUI.tsx"],"sourcesContent":["import { useRef } from 'react'\nimport { Button } from '@ynput/ayon-react-components'\nimport styled from 'styled-components'\nimport { useMenuContext } from '@shared/context'\nimport { Menu, MenuContainer } from './Menu'\nimport type { MenuItemType } from './Menu'\n\nexport type ColumnMenuItemType = {\n id: string\n label?: string\n icon?: string\n className?: string\n onClick?: () => void\n type?: 'divider'\n selected?: boolean\n}\n\nexport const ColumnMenuButton = styled(Button)<{ $isOpen: boolean }>`\n background-color: unset !important;\n z-index: 110;\n position: relative;\n padding: 2px;\n width: 24px;\n height: 24px;\n\n &.hasIcon {\n padding: 2px;\n }\n\n &:hover,\n &.active {\n background-color: var(--md-sys-color-surface-container-hover) !important;\n }\n\n ${({ $isOpen }) =>\n $isOpen &&\n `\n background-color: var(--md-sys-color-surface-container-hover) !important;\n `}\n`\n\ninterface ColumnHeaderMenuUIProps {\n menuItems: ColumnMenuItemType[]\n menuId: string\n className?: string\n}\n\n/**\n * Self-contained column header menu UI.\n * Uses the shared MenuContainer/Menu infrastructure and MenuContext for open state.\n */\nexport const ColumnHeaderMenuUI = ({ menuItems, menuId, className }: ColumnHeaderMenuUIProps) => {\n const { toggleMenuOpen, menuOpen } = useMenuContext()\n const buttonRef = useRef<HTMLButtonElement>(null)\n const isOpen = menuOpen === menuId\n\n if (menuItems.length === 0) return null\n\n return (\n <>\n <ColumnMenuButton\n ref={buttonRef}\n className={className}\n onClick={(e) => {\n e.stopPropagation()\n toggleMenuOpen(menuId)\n }}\n onPointerDown={(e) => e.stopPropagation()}\n icon=\"more_horiz\"\n $isOpen={isOpen}\n />\n <MenuContainer\n target={buttonRef.current}\n id={menuId}\n align=\"left\"\n onClose={(e: any) => {\n e.stopPropagation()\n toggleMenuOpen(false)\n }}\n >\n <Menu menu={menuItems as MenuItemType[]} onClose={() => toggleMenuOpen(false)} />\n </MenuContainer>\n </>\n )\n}\n"],"names":["ColumnMenuButton","styled","Button","$isOpen","ColumnHeaderMenuUI","menuItems","menuId","className","toggleMenuOpen","menuOpen","useMenuContext","buttonRef","useRef","isOpen","jsxs","Fragment","jsx","e","MenuContainer","Menu"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBO,MAAMA,IAAmBC,EAAOC,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAiBzC,CAAC,EAAE,SAAAC,EAAA,MACHA,KACA;AAAA;AAAA,GAED;AAAA,GAaUC,KAAqB,CAAC,EAAE,WAAAC,GAAW,QAAAC,GAAQ,WAAAC,QAAyC;AAC/F,QAAM,EAAE,gBAAAC,GAAgB,UAAAC,EAAA,IAAaC,EAAA,GAC/BC,IAAYC,EAA0B,IAAI,GAC1CC,IAASJ,MAAaH;AAE5B,SAAID,EAAU,WAAW,IAAU,OAGjCS,gBAAAA,EAAAA,KAAAC,YAAA,EACE,UAAA;AAAA,IAAAC,gBAAAA,EAAAA;AAAAA,MAAChB;AAAA,MAAA;AAAA,QACC,KAAKW;AAAA,QACL,WAAAJ;AAAA,QACA,SAAS,CAACU,MAAM;AACd,UAAAA,EAAE,gBAAA,GACFT,EAAeF,CAAM;AAAA,QACvB;AAAA,QACA,eAAe,CAACW,MAAMA,EAAE,gBAAA;AAAA,QACxB,MAAK;AAAA,QACL,SAASJ;AAAA,MAAA;AAAA,IAAA;AAAA,IAEXG,gBAAAA,EAAAA;AAAAA,MAACE;AAAA,MAAA;AAAA,QACC,QAAQP,EAAU;AAAA,QAClB,IAAIL;AAAA,QACJ,OAAM;AAAA,QACN,SAAS,CAACW,MAAW;AACnB,UAAAA,EAAE,gBAAA,GACFT,EAAe,EAAK;AAAA,QACtB;AAAA,QAEA,UAAAQ,gBAAAA,EAAAA,IAACG,KAAK,MAAMd,GAA6B,SAAS,MAAMG,EAAe,EAAK,EAAA,CAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EACjF,GACF;AAEJ;"}
|