{"version":3,"file":"713.js","mappings":"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","sources":["webpack:///./contentManager/Body/useFileUpload.tsx?","webpack:///./contentManager/Hooks/useMailSendPopUpAuth.tsx?","webpack:///./contentManager/Hooks/usePopUpAuth.tsx?","webpack:///./contentManager/Panels/CMEmailAttachmentPanel.tsx?","webpack:///./contentManager/Panels/CMErrorModal.tsx?","webpack:///./contentManager/Panels/CMFileFilterPanel/CMFileFilterPanelSection.tsx?","webpack:///./contentManager/Panels/CMFileFilterPanel/FileFilterHelper.ts?","webpack:///./contentManager/Panels/CMFileSharePanel.tsx?","webpack:///./contentManager/Panels/CMFilesUpdatePanel.tsx?","webpack:///./contentManager/Panels/CMMultipleFilesMetaDataPanel.tsx?","webpack:///./contentManager/Panels/CMPermissionsAddMembersPanel.tsx?","webpack:///./contentManager/Panels/CMPermissionsMemberListPanel.tsx?","webpack:///./contentManager/Panels/CMPermissionsPanel.tsx?","webpack:///./contentManager/Panels/CMVersionHistoryModal.tsx?","webpack:///./contentManager/Services/SendMessageTeams.ts?","webpack:///./src/taskpane/components/_v2/_shared/VersionSelector/VersionSelectorMinMajOnly.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/HomeFolderItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/MainLocationItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/SharePointDocumentLibraryItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/SharePointFolderItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/SiteItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Explorer/FolderView/TeamChannelItem.tsx?","webpack:///./src/taskpane/components/_v2/components/Panels/SigningPanel/SigningPanel.tsx?","webpack:///./src/taskpane/components/_v2/components/SvgIcons/ChannelPrivateIcon.tsx?","webpack:///./src/taskpane/components/_v2/components/SvgIcons/ChannelShareIcon.tsx?","webpack:///./src/taskpane/components/directoryComponents/AfterSaveAppSelector.tsx?","webpack:///./src/taskpane/components/directoryComponents/DropDownSearch.tsx?","webpack:///./src/taskpane/components/directoryComponents/ExpanderWithSubtitle.tsx?","webpack:///./src/taskpane/components/directoryComponents/Locations.tsx?","webpack:///./src/taskpane/components/directoryComponents/PreviewFile.tsx?","webpack:///./src/taskpane/components/directoryComponents/SavingInBackgroundContent.tsx?","webpack:///./src/taskpane/components/directoryComponents/SearchBox/SearchBox.base.tsx?","webpack:///./src/taskpane/components/directoryComponents/SearchBox/SearchBox.styles.tsx?","webpack:///./src/taskpane/components/directoryComponents/SearchBox/SearchBox.ts?","webpack:///./src/taskpane/components/directoryComponents/SubTitle.tsx?","webpack:///./src/taskpane/components/directoryComponents/SubTitleRefreshButton.tsx?","webpack:///./src/taskpane/components/directoryComponents/home/HomeItem.tsx?","webpack:///./src/taskpane/components/directoryComponents/home/PinnedItems.tsx?","webpack:///./src/taskpane/components/directoryComponents/home/RecentItems.tsx?","webpack:///./src/taskpane/components/directoryComponents/home/SharedItems.tsx?","webpack:///./src/taskpane/components/directoryComponents/home/SuggestedItems.tsx?","webpack:///./src/taskpane/components/directoryComponents/myApprovals/ApprovalsPanel.tsx?","webpack:///./src/taskpane/components/directoryComponents/myApprovals/IApprovalAction.ts?","webpack:///./src/taskpane/components/directoryComponents/myApprovals/MyApprovals.tsx?","webpack:///./src/taskpane/components/directoryComponents/oneDrive/DuplicateFiles.tsx?","webpack:///./src/taskpane/components/directoryComponents/oneDrive/DuplicateFolders.tsx?","webpack:///./src/taskpane/components/directoryComponents/sharepoint/SharePointSite.tsx?","webpack:///./src/taskpane/components/directoryComponents/teams/Teams.tsx?","webpack:///./src/taskpane/components/enums/FolderTypeIconEnum.ts?","webpack:///./src/taskpane/components/enums/ImageSizeEnum.ts?","webpack:///./src/taskpane/components/enums/ImageTypeEnum.ts?","webpack:///./src/taskpane/components/enums/LandingPageEnum.ts?","webpack:///./src/taskpane/components/file/fileAndFoldersSharepointSearch.tsx?","webpack:///./src/taskpane/components/file/fileItems.tsx?","webpack:///./src/taskpane/components/file/fileSortOptions.tsx?","webpack:///./src/taskpane/components/helpers/DriveSearchResultMapper.ts?","webpack:///./src/taskpane/components/helpers/InlineEmailHelperWrapper.ts?","webpack:///./src/taskpane/components/helpers/ItemCheck/ItemCheckFactory.ts?","webpack:///./src/taskpane/components/helpers/ItemCheck/NormalDriveItemCheck.ts?","webpack:///./src/taskpane/components/helpers/ItemCheck/SharepointListCheck.ts?","webpack:///./src/taskpane/components/helpers/ItemCheck/SharepointSiteCheck.ts?","webpack:///./src/taskpane/components/helpers/ItemCheck/TeamSiteCheck.ts?","webpack:///./src/taskpane/components/helpers/accessLicenseHelper.ts?","webpack:///./src/taskpane/components/helpers/emailAttachment/AddEmailer.ts?","webpack:///./src/taskpane/components/helpers/emailAttachment/CreateEmailer.ts?","webpack:///./src/taskpane/components/helpers/emailAttachment/EmailCreatorFactory.ts?","webpack:///./src/taskpane/components/helpers/fileSortOptionHelper.ts?","webpack:///./src/taskpane/components/helpers/fileUploadHelper.ts?","webpack:///./src/taskpane/components/helpers/folderCreationHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/BaseFolderPanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/FolderPanelHelperFactory.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/OneDriveFolderPanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/SharepointFolderPanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/SharepointSubsitePanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/TeamChannelFolderPanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderPanel/TeamMainFolderPanelHelper.ts?","webpack:///./src/taskpane/components/helpers/folderTypeHelper.ts?","webpack:///./src/taskpane/components/helpers/folderTypeIconQuery.ts?","webpack:///./src/taskpane/components/helpers/iconTypeNameResolver.ts?","webpack:///./src/taskpane/components/helpers/metaDataHelper.ts?","webpack:///./src/taskpane/components/helpers/officeHelper.ts?","webpack:///./src/taskpane/components/helpers/searchedOneDriveDirectoryBuilder.ts?","webpack:///./src/taskpane/components/helpers/searchedSharepointFoldersDirectoryBuilder.ts?","webpack:///./src/taskpane/components/helpers/shareFileEmailTemplateHelper.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/BaseLocationBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/OneDriveFolderLocationBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/OneDriveWorkingDirectoriesBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/baseUrlSearchBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/factory/UrlSearchBuilderFactory.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/sharepointDocumentLibraryUrlBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/sharepointFolderLocationBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/sharepointFolderSearchQueryStringBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/sharepointSiteSearchUrlBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/sharepointWorkingDirectoriesBuilder.ts?","webpack:///./src/taskpane/components/helpers/sharepointSearch/teamSearchUrlBuilder.ts?","webpack:///./src/taskpane/components/inputs/contentTypeNameDatasourcePicker.tsx?","webpack:///./src/taskpane/components/panels/EmailMappingPanel.tsx?","webpack:///./src/taskpane/components/panels/FileOptionPanel.tsx?","webpack:///./src/taskpane/components/panels/FolderOptionPanel.tsx?","webpack:///./src/taskpane/components/panels/MultipleFilesSeleted.tsx?","webpack:///./src/taskpane/components/panels/NewFolderPanel.tsx?","webpack:///./src/taskpane/components/panels/UserSettingsPanel.tsx?","webpack:///./src/taskpane/config/graphConstants.ts?","webpack:///./src/taskpane/services/AttachmentService.ts?","webpack:///./src/taskpane/services/BasePersistor.ts?","webpack:///./src/taskpane/services/EmailBuilderWrapper.ts?","webpack:///./src/taskpane/services/EmailComposerBuilderService.ts?","webpack:///./src/taskpane/services/ExchangeService.ts?","webpack:///./src/taskpane/services/FileSystemEntryPersistor.ts?","webpack:///./src/taskpane/services/InlineMailHelper.ts?","webpack:///./src/taskpane/services/OfficePersistor.ts?","webpack:///./src/taskpane/services/OutlookPersistor.ts?","webpack:///./src/taskpane/services/factories/PersistorFactory.ts?","webpack:///./src/taskpane/styles/iconStyles.ts?","webpack:///./utilities/SaveOnSendUtils.ts?","webpack:///./utilities/TreeStructureModule.ts?"],"sourcesContent":["import React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { customToast } from \"../../src/taskpane/components/CustomToast\";\r\nimport { ContentManagerCopyMoveModeEnum } from \"../../src/taskpane/components/enums/ContentManagerCopyMoveModeEnum\";\r\nimport { FileTypeEnum } from \"../../src/taskpane/components/enums/fileTypeEnum\";\r\nimport { FolderTypeEnum } from \"../../src/taskpane/components/enums/FolderTypeEnum\";\r\nimport { FolderTypeIconEnum } from \"../../src/taskpane/components/enums/FolderTypeIconEnum\";\r\nimport { OneDriveOverWriteEnum } from \"../../src/taskpane/components/enums/oneDriveOverWriteEnum\";\r\nimport { renameDuplicateNames } from \"../../src/taskpane/components/helpers/fileUploadHelper\";\r\nimport { FolderTypeIconQuery } from \"../../src/taskpane/components/helpers/folderTypeIconQuery\";\r\nimport { OneDriveUrlHelper } from \"../../src/taskpane/components/helpers/oneDriveUrlHelper\";\r\nimport { StoreItemHelper } from \"../../src/taskpane/components/helpers/storeItemHelper\";\r\nimport { RecentFilesMapper } from \"../../src/taskpane/components/mappers/recentFilesMapper\";\r\nimport { CheckinTypes, ExchangeMailFolderUploadRequest, IFileSaveFileItem, IFileSaveResult, ListSettings } from \"../../src/taskpane/components/_v2/redux/api/local/api-local-interfaces\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { ComponentTypes } from \"../../src/taskpane/config/config\";\r\nimport { DocubirdCache, sharePointInternalFileName, sharePointInternalTitleName } from \"../../src/taskpane/config/constants\";\r\nimport { IFileToUpload } from \"../../src/taskpane/interfaces/IFileToUpload\";\r\nimport { IPageSettings } from \"../../src/taskpane/interfaces/IPageSettings\";\r\nimport { ISharepointRelativeFileInfo } from \"../../src/taskpane/interfaces/ISharepointRelativeFileInfo\";\r\nimport { IStoreItem } from \"../../src/taskpane/interfaces/IStoredItem\";\r\nimport { ListItemCreationData } from \"../../src/taskpane/interfaces/ListItemCreationData\";\r\nimport { FileMetaData } from \"../../src/taskpane/interfaces/props/FileMetaData\";\r\nimport { SharePointInputData } from \"../../src/taskpane/interfaces/props/SharePointInputData\";\r\nimport { setContentManagerExchange, setContentManagerExchangeProgress, setContentManagerMoveTo } from \"../../src/taskpane/redux/modules/contentManagerDirectory\";\r\nimport { resetDuplicateFilesAndOverWriteSettings, setFiles, setOneDriveOverwriteOptionSelected } from \"../../src/taskpane/redux/modules/file\";\r\nimport { resetLocationBeforeSaving } from \"../../src/taskpane/redux/modules/oneDrive\";\r\nimport { addRecentItem } from \"../../src/taskpane/redux/modules/recentItems\";\r\nimport { setIsBusySaving, setIsCheckingForDuplicates, setIsSavingInBackground, setNeedsRedirectToHome } from \"../../src/taskpane/redux/modules/savingInBackground\";\r\nimport { resetWorkingDirectories } from \"../../src/taskpane/redux/modules/workingDirectory\";\r\nimport { DefaultValueService } from \"../../src/taskpane/services/DefaultValueService\";\r\nimport emailMapper from \"../../src/taskpane/services/EmailMapper\";\r\nimport { PersistorFactory } from \"../../src/taskpane/services/factories/PersistorFactory\";\r\nimport { FileService } from \"../../src/taskpane/services/FileService\";\r\nimport { getOneDriveRootDetails, getRelativeFileInfo } from \"../../src/taskpane/services/GraphService\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport { CacheHelper } from \"../../utilities/CacheHelper\";\r\nimport { DragAndDropHelper, IFileSystemFolder } from \"../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { CategoryDisplayNames } from \"../../utilities/OutlookUtils\";\r\nimport savingLocationStructureModule from \"../../utilities/SavingLocationStructureModule\";\r\nimport { FileSystemEntryPersistor } from \"../../src/taskpane/services/FileSystemEntryPersistor\";\r\nimport { apiAddListItem, apiUploadExchangeMailFolder } from \"../../src/taskpane/services/ApiService\";\r\nimport { SaveMode } from \"../../src/taskpane/components/enums/SaveModeEnum\";\r\nimport { useFiles } from \"../../src/taskpane/components/_v2/redux/hooks/useFiles\";\r\n\r\nexport function useFileUpload() {\r\n const dispatch = useDispatch();\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n // const hasDuplicateFiles = useSelector((state: RootState) => state.files.files.some(item => item.isDuplicate && item.isSelected && !item.isFolder));\r\n // const hasDuplicateFolders = useSelector((state: RootState) => state.files.files.some(item => item.isDuplicate && item.isSelected && item.isFolder));\r\n // const canOverwrite = useSelector((state: RootState) => state.files.canOverwrite);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const mode = useSelector((state: RootState) => state.mode.mode);\r\n const currentSharepointFolder = useSelector((state: RootState) => state.currentSharepointFolder);\r\n const files = useSelector((state: RootState) => state.files.files);\r\n // const selectedFiles = useSelector((state: RootState) => state.files.files.filter(item => item.isSelected));\r\n const savingLocation = useSelector((state: RootState) => state.savingLocation);\r\n const accountUniqueId = useSelector((state: RootState) => state.user?.account?.uniqueId);\r\n const accountId = useSelector((state: RootState) => state.user?.account?.accountId);\r\n const convertEmailToPDF = useSelector((state: RootState) => state.user.settings.convertEmailToPDF);\r\n\r\n const userSettings = useSelector((state: RootState) => state.user);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n const oneDriveOverwriteOption = useSelector((state: RootState) => state.files.oneDriveOverwriteOption);\r\n const oneDriveLocationBeforeSaving = useSelector((state: RootState) => state.oneDrive.locationBeforeSaving);\r\n const rootOneDriveId = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails?.driveId);\r\n const tenantReplaceFileNameWithGUID = useSelector((state: RootState) => state.tenantInfo?.replaceFileNameWithGUID);\r\n const moveToEnabled = useSelector((state: RootState) => state.contentManagerDirectory.moveTo.moveToEnabled);\r\n const moveToMode = useSelector((state: RootState) => state.contentManagerDirectory.moveTo.mode);\r\n const exchange = useSelector((state: RootState) => state.contentManagerDirectory.exchange);\r\n const exchangeSelectedAccount = useSelector((state: RootState) => state.contentManagerDirectory.exchange.selectedAccount);\r\n\r\n const { checkPdfFiles } = useFiles();\r\n\r\n const [showSelectVersion, setShowSelectVersion] = React.useState(false);\r\n const [spHasDuplicateFiles, setSpHasDuplicateFiles] = React.useState(false);\r\n const [spHasDuplicateFolders, setSpHasDuplicateFolders] = React.useState(false);\r\n const [selectedCheckinType, setSelectedCheckinType] = React.useState(CheckinTypes.minorCheckIn);\r\n const selectedCheckinTypeRef = React.useRef(CheckinTypes.minorCheckIn);\r\n\r\n const [_isFileSystemFileUpload, _setIsFileSystemFileUpload] = React.useState();\r\n const isFileSystemFileUploadRef = React.useRef(false);\r\n const setIsFileSystemFileUpload = (isFileSystemFileUpload: boolean) => {\r\n isFileSystemFileUploadRef.current = isFileSystemFileUpload;\r\n _setIsFileSystemFileUpload(isFileSystemFileUpload);\r\n };\r\n\r\n const filesRef = React.useRef([]);\r\n const selectedFilesRef = React.useRef([]);\r\n React.useEffect(() => {\r\n filesRef.current = files;\r\n selectedFilesRef.current = files.filter(item => item.isSelected);\r\n }, [files]);\r\n\r\n React.useEffect(() => {\r\n selectedCheckinTypeRef.current = selectedCheckinType;\r\n }, [selectedCheckinType])\r\n\r\n const saveEntireEmailFolder = async (\r\n autoFolderCreation: boolean,\r\n inputValuesToSave: SharePointInputData[],\r\n isInOneDrive: boolean,\r\n folderName: string\r\n ) => {\r\n const siteUrl = !isInOneDrive ? currentDirectory?.webUrl : oneDriveRootDetails?.sharePointSiteUrl;\r\n const saveLocation = savingLocation ?? currentDirectory;\r\n const sharePointListId = !isInOneDrive ? currentDirectory.sharePointListId : oneDriveRootDetails?.sharePointListId;\r\n const sharePointToken = !isInOneDrive ? await authModule.getSharePointAccessToken() : await authModule.getOneDriveAccessToken();\r\n\r\n const emailMappings = CacheHelper.get(DocubirdCache.spEmailPropertyMappings);\r\n\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n dispatch(setContentManagerMoveTo({\r\n moveToEnabled: false,\r\n workingDirectories: [],\r\n selectedFiles: [],\r\n siteUrl: \"\",\r\n sourceServerRelPath: \"\",\r\n }));\r\n\r\n try {\r\n const request: ExchangeMailFolderUploadRequest = {\r\n sharePointToken,\r\n mailToken: await authModule.getMailboxAccessToken(true),\r\n siteUrl,\r\n listId: sharePointListId,\r\n destinationUrl: !saveLocation.directory ? saveLocation.webUrl : `${saveLocation.webUrl}/${saveLocation.directory}`,\r\n autoFolderCreation,\r\n exchangeAccountEmail: exchangeSelectedAccount,\r\n mailItemCategory: getCategoryType(getFolderType()),\r\n mailFolderId: exchange.selectedFolderId,\r\n metadata: inputValuesToSave.map(inputValue => {\r\n return {\r\n ...inputValue,\r\n }\r\n }),\r\n sharePointEmailMappings: emailMappings,\r\n folderName\r\n }\r\n\r\n const uploadResults = await apiUploadExchangeMailFolder(request);\r\n dispatch(setContentManagerExchangeProgress(uploadResults));\r\n dispatch(setContentManagerExchange({ selectedFolderId: \"\", selectedFolderName: \"\", selectedAccount: \"\" }));\r\n\r\n CacheHelper.remove(DocubirdCache.spEmailPropertyMappings);\r\n } catch (error) {\r\n let message = error.error ? error.error : languageStrings.ErrorMessageGeneric;\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: [message] }));\r\n logger(error, \"useFileUpload.tsx (uploadExchangeMailFolder)\");\r\n }\r\n }\r\n\r\n const saveSharePointEmailandMetadata = async (\r\n autoFolderCreation: boolean,\r\n inputValuesToSave: SharePointInputData[],\r\n informationProtectionId: string,\r\n fileMetaData?: FileMetaData[],\r\n setIsCMMultipleFilesMetaDataPanelOpen?: (isOpen: boolean) => void,\r\n savingIndividualFile?: boolean,\r\n setSelectedIndividualFile?: (fileId: string, isSaving: boolean, saveSuccess: boolean, saveError: boolean) => void,\r\n optionsSelected?: boolean,\r\n saveMode?: SaveMode\r\n ) => {\r\n const fileMetaDataToValidate: FileMetaData[] = [];\r\n if (fileMetaData) {\r\n fileMetaData.forEach(fileMetaData => {\r\n const file = selectedFilesRef.current.find(x => x.id === fileMetaData.fileId);\r\n if (file) {\r\n fileMetaDataToValidate.push({\r\n fileId: fileMetaData.fileId,\r\n name: fileMetaData.name,\r\n isSelected: fileMetaData.isSelected,\r\n metaData: fileMetaData.metaData?.filter(x => x.internalName !== sharePointInternalFileName)\r\n });\r\n }\r\n });\r\n }\r\n\r\n const updatedSelectedFiles = renameDuplicateNames([...selectedFilesRef.current].filter(f => !f.isFolder));\r\n const hasDuplicateFolders: boolean = selectedFilesRef.current?.some(x => x.isDuplicate && x.isFolder);\r\n let hasDuplicateFiles: boolean;\r\n\r\n let metaDataInvalid: boolean = false;\r\n if (fileMetaDataToValidate?.length > 0) {\r\n metaDataInvalid = !sharepointDataListIsValid(fileMetaDataToValidate, savingIndividualFile);\r\n }\r\n else {\r\n metaDataInvalid = !sharepointDataIsValid(inputValuesToSave);\r\n }\r\n\r\n if (metaDataInvalid) {\r\n dispatch(setIsSavingInBackground(false));\r\n if (savingIndividualFile) {\r\n setSelectedIndividualFile(fileMetaDataToValidate.find(x => x.isSelected === true)?.fileId, false, false, false);\r\n }\r\n return false;\r\n }\r\n else if (saveMode === SaveMode.SaveAsPdf) {\r\n const fileCheckResults: IFileToUpload[] = await checkPdfFiles(saveMode, updatedSelectedFiles);\r\n selectedFilesRef.current = fileCheckResults?.filter(file => file.isSelected);\r\n hasDuplicateFiles = fileCheckResults?.some(item => item.isSelected && item.isDuplicate && !item.isFolder);\r\n if (oneDriveOverwriteOption === OneDriveOverWriteEnum.notSelected && fileCheckResults?.some(res => res.isDuplicate || res.filePreCommitResult?.checkedOut || res.filePreCommitResult?.locked)) {\r\n dispatch(setIsSavingInBackground(false));\r\n setSpHasDuplicateFiles(true);\r\n return false;\r\n }\r\n }\r\n\r\n if (savingIndividualFile) {\r\n const individualFile = fileMetaDataToValidate.find(x => x.isSelected === true);\r\n setSelectedIndividualFile(individualFile.fileId, true, false, false);\r\n\r\n hasDuplicateFiles = selectedFilesRef.current?.some(x => x.id === individualFile.fileId && x.isDuplicate && !x.isFolder);\r\n } else {\r\n dispatch(setIsSavingInBackground(true, ComponentTypes.SharePoint));\r\n hasDuplicateFiles = selectedFilesRef.current?.some(x => x.isDuplicate && !x.isFolder);\r\n }\r\n\r\n if (fileMetaDataToValidate?.length > 0) {\r\n const individualFile = fileMetaDataToValidate.find(x => x.isSelected === true);\r\n\r\n if (currentSharepointFolder?.enableMinorVersions === true && !optionsSelected) {\r\n setShowSelectVersion(true);\r\n setSpHasDuplicateFiles(hasDuplicateFiles);\r\n setSpHasDuplicateFolders(hasDuplicateFolders);\r\n dispatch(setIsSavingInBackground(false));\r\n if (savingIndividualFile) {\r\n setSelectedIndividualFile(individualFile.fileId, false, false, false);\r\n }\r\n return false;\r\n }\r\n else if ((hasDuplicateFiles || hasDuplicateFolders) && oneDriveOverwriteOption === OneDriveOverWriteEnum.notSelected) {\r\n setSpHasDuplicateFiles(hasDuplicateFiles);\r\n setSpHasDuplicateFolders(hasDuplicateFolders);\r\n dispatch(setIsSavingInBackground(false));\r\n if (savingIndividualFile) {\r\n setSelectedIndividualFile(individualFile.fileId, false, false, false);\r\n }\r\n return false;\r\n }\r\n\r\n if (!savingIndividualFile && setIsCMMultipleFilesMetaDataPanelOpen) {\r\n setIsCMMultipleFilesMetaDataPanelOpen(false);\r\n }\r\n }\r\n else {\r\n if (currentSharepointFolder?.enableMinorVersions === true && showSelectVersion === false) {\r\n setShowSelectVersion(true);\r\n setSpHasDuplicateFiles(hasDuplicateFiles);\r\n setSpHasDuplicateFolders(hasDuplicateFolders);\r\n dispatch(setIsSavingInBackground(false));\r\n return false;\r\n }\r\n else if (hasDuplicateFiles && oneDriveOverwriteOption === OneDriveOverWriteEnum.notSelected) {\r\n setSpHasDuplicateFiles(hasDuplicateFiles);\r\n setSpHasDuplicateFolders(hasDuplicateFolders);\r\n dispatch(setIsSavingInBackground(false));\r\n return false;\r\n }\r\n else if (hasDuplicateFolders && !spHasDuplicateFolders) {\r\n setSpHasDuplicateFiles(hasDuplicateFiles);\r\n setSpHasDuplicateFolders(hasDuplicateFolders);\r\n dispatch(setIsSavingInBackground(false));\r\n return false;\r\n }\r\n }\r\n\r\n if (!savingIndividualFile) {\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n }\r\n setShowSelectVersion(false);\r\n setSpHasDuplicateFiles(false);\r\n setSpHasDuplicateFolders(false);\r\n setIsFileSystemFileUpload(DragAndDropHelper.isDroppedModeActive);\r\n\r\n try {\r\n const selectedItems = CacheHelper.get(DocubirdCache.selectedExchangeItems);\r\n\r\n const fileMetaDataInput: FileMetaData[] = fileMetaDataToValidate?.length > 0\r\n ? fileMetaDataToValidate\r\n : updatedSelectedFiles.map(file => {\r\n const selectedItem = (moveToEnabled && moveToMode === ContentManagerCopyMoveModeEnum.CopySelectedEmails) ? selectedItems?.find(x => x.id === file.graphMailItemId) : null;\r\n return {\r\n fileId: file.id,\r\n name: file.name,\r\n isSelected: false,\r\n metaData: inputValuesToSave.filter(x => x.internalName !== sharePointInternalFileName).map(inputValue => {\r\n let value = (inputValue.internalName === sharePointInternalTitleName && inputValue.value === languageStrings.TitleAutoSet) ? file.name : inputValue.value;\r\n\r\n if (selectedItem) {\r\n if (inputValue.xml && inputValue.xml.DisplayName) {\r\n const colName = inputValue.xml.DisplayName.trim().toLowerCase(); //directly from sharepoint\r\n const spColumnNames = emailMapper.getAllListedColumns(); //list of all saved columns we should check for mapping\r\n const spColumnName = spColumnNames.find(col => col.toLowerCase() === colName); //either returns undefined or a sharepoint column name \r\n if (spColumnName) {\r\n const mappedResult = emailMapper.getOfficeJSToEmailMapping(spColumnName, selectedItem);\r\n if (mappedResult.mappedVal?.value) {\r\n value = DefaultValueService.setMappedDefault(inputValue, mappedResult.mappedVal);\r\n }\r\n }\r\n }\r\n }\r\n\r\n return {\r\n ...inputValue,\r\n value\r\n }\r\n })\r\n }\r\n });\r\n\r\n let fileSaveResult: IFileSaveResult;\r\n\r\n if (moveToEnabled) {\r\n dispatch(setContentManagerMoveTo({\r\n moveToEnabled: false,\r\n workingDirectories: [],\r\n selectedFiles: [],\r\n siteUrl: \"\",\r\n sourceServerRelPath: \"\",\r\n }));\r\n dispatch(setContentManagerExchange({ selectedFolderId: \"\", selectedFolderName: \"\", selectedAccount: \"\" }));\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n }\r\n else if (DragAndDropHelper.isDroppedModeActive) {\r\n const folderEntriesToUpload: IFileSystemFolder[] = [...DragAndDropHelper.folderEntries];\r\n const fileSystemFilesUploadResult = await DragAndDropHelper.uploadDroppedFiles(accountUniqueId, updatedSelectedFiles, folderEntriesToUpload);\r\n if (fileSystemFilesUploadResult.success === false) {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: fileSystemFilesUploadResult.failedFileNames }));\r\n setShowSelectVersion(false);\r\n setSpHasDuplicateFiles(false);\r\n setSpHasDuplicateFolders(false);\r\n return false;\r\n }\r\n\r\n // const siteUrl: string = savingLocation.webUrl;\r\n // const parentUrl: string = `${siteUrl}${savingLocation.directory ? `/${savingLocation.directory}` : ''}`;\r\n // await DragAndDropHelper.createFolders(await authModule.getSharePointAccessToken(), siteUrl, parentUrl, savingLocation.sharePointListId, autoFolderCreation, updatedSelectedFiles);\r\n\r\n try {\r\n fileSaveResult = await new FileSystemEntryPersistor().saveToSharepoint(\r\n false,\r\n savingIndividualFile ? updatedSelectedFiles.filter(x => x.id === fileMetaDataToValidate[0].fileId) : updatedSelectedFiles,\r\n folderEntriesToUpload,\r\n savingLocation,\r\n autoFolderCreation,\r\n fileMetaDataInput,\r\n accountUniqueId,\r\n informationProtectionId,\r\n userSettings.tenantOcrLanguage,\r\n tenantReplaceFileNameWithGUID,\r\n null,\r\n selectedCheckinTypeRef.current,\r\n oneDriveOverwriteOption === OneDriveOverWriteEnum.rename,\r\n saveMode\r\n );\r\n } catch (error) {\r\n logger(error, \"useFileUpload.tsx (saveSharePointEmailandMetadata - FileSystemEntryPersistor.saveToSharepoint)\");\r\n }\r\n }\r\n\r\n const folderType = getFolderType();\r\n if (!isFileSystemFileUploadRef.current) {\r\n const persistor = PersistorFactory.create(null, null, mode, isFileSystemFileUploadRef.current);\r\n const listSettings: ListSettings = {\r\n enableMinorVersions: currentSharepointFolder.enableMinorVersions ? currentSharepointFolder.enableMinorVersions : false,\r\n }\r\n\r\n fileSaveResult = await persistor.saveToSharepoint(\r\n savingIndividualFile ? updatedSelectedFiles.filter(x => x.id === fileMetaDataToValidate[0].fileId) : updatedSelectedFiles,\r\n savingLocation,\r\n autoFolderCreation,\r\n fileMetaDataInput,\r\n accountUniqueId,\r\n informationProtectionId,\r\n null,\r\n folderType,\r\n false,\r\n userSettings.convertEmailToPDF,\r\n userSettings.tenantOcrLanguage,\r\n userSettings.tenantEnablePII,\r\n tenantReplaceFileNameWithGUID,\r\n listSettings,\r\n selectedCheckinTypeRef.current,\r\n oneDriveOverwriteOption === OneDriveOverWriteEnum.rename ? true : false,\r\n exchangeSelectedAccount,\r\n getCategoryType(folderType),\r\n saveMode\r\n );\r\n }\r\n\r\n if (savingIndividualFile) {\r\n const savingSuccess = fileSaveResult.success === true;\r\n const savingError = fileSaveResult.success === false;\r\n const individualFile = fileMetaDataToValidate.find(x => x.isSelected === true);\r\n setSelectedIndividualFile(individualFile.fileId, false, savingSuccess, savingError);\r\n }\r\n else {\r\n if (fileSaveResult.success === true) {\r\n const recentFolder = saveToSharepointRecent(folderType);\r\n const recentFiles = await savesFileToRecent(await buildFilesToGetRecent(null, fileSaveResult.succeededFiles), autoFolderCreation);\r\n dispatch(addRecentItem(accountId, [...recentFiles, ...recentFolder]));\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: true }));\r\n }\r\n else if (fileSaveResult.success === false) {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: fileSaveResult.failedFileNames }));\r\n }\r\n else {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: [languageStrings.ErrorMessageGeneric] }));\r\n }\r\n }\r\n\r\n setShowSelectVersion(false);\r\n setSpHasDuplicateFiles(false);\r\n setSpHasDuplicateFolders(false);\r\n dispatch(setOneDriveOverwriteOptionSelected(OneDriveOverWriteEnum.notSelected));\r\n } catch (err) {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: err?.response?.data }));\r\n setShowSelectVersion(false);\r\n setSpHasDuplicateFiles(false);\r\n setSpHasDuplicateFolders(false);\r\n }\r\n\r\n return true;\r\n };\r\n\r\n const getCategoryType = (folderType: FolderTypeEnum) => {\r\n let categoryToSet = \"\";\r\n switch (folderType) {\r\n case FolderTypeEnum.teamChannel:\r\n categoryToSet = CategoryDisplayNames.Teams;\r\n break;\r\n case FolderTypeEnum.sharepoint:\r\n categoryToSet = CategoryDisplayNames.SharePoint;\r\n break;\r\n case FolderTypeEnum.oneDrive:\r\n categoryToSet = CategoryDisplayNames.OneDrive;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n return categoryToSet;\r\n }\r\n\r\n const addListItem = async (data: ListItemCreationData) => {\r\n try {\r\n dispatch(setIsSavingInBackground(true));\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n\r\n await apiAddListItem(data);\r\n\r\n dispatch(setIsSavingInBackground(false));\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: true }));\r\n } catch (error) {\r\n logger(error, \"useFileUpload.tsx (addListItem)\");\r\n\r\n dispatch(setIsSavingInBackground(false));\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: [languageStrings.ErrorMessageGeneric] }));\r\n }\r\n\r\n return true;\r\n }\r\n\r\n const sharepointDataIsValid = (inputValuesToSave: SharePointInputData[]) => {\r\n let itemsWithErrors = inputValuesToSave.filter(item => item.hasError).map(item => item.displayName);\r\n\r\n if (itemsWithErrors.length > 0) {\r\n generateToastError(itemsWithErrors);\r\n return false;\r\n }\r\n\r\n //double check validations\r\n inputValuesToSave.forEach(inputValue => {\r\n if (inputValue.xml?.Required === \"TRUE\") {\r\n if (!inputValue.value) {\r\n itemsWithErrors.push(inputValue.displayName);\r\n }\r\n else if (Array.isArray(inputValue.value) && inputValue.value?.length === 0) {\r\n itemsWithErrors.push(inputValue.displayName);\r\n }\r\n else if (Array.isArray(inputValue.value?.terms) && inputValue.value?.terms?.length === 0) {\r\n itemsWithErrors.push(inputValue.displayName);\r\n }\r\n }\r\n });\r\n\r\n if (itemsWithErrors.length > 0) {\r\n generateToastError(itemsWithErrors);\r\n return false\r\n }\r\n\r\n return true;\r\n };\r\n\r\n const sharepointDataListIsValid = (fileMetaData: FileMetaData[], savingIndividualFile: boolean) => {\r\n let allErrors: string[] = [];\r\n\r\n fileMetaData.forEach(file => {\r\n if (savingIndividualFile && file.isSelected) {\r\n const itemsWithErrors = file.metaData.filter(item => item.hasError).map(item => `${item.displayName} (${file.name})`);\r\n allErrors = allErrors.concat(itemsWithErrors);\r\n }\r\n\r\n if (!savingIndividualFile) {\r\n const itemsWithErrors = file.metaData.filter(item => item.hasError).map(item => `${item.displayName} (${file.name})`);\r\n allErrors = allErrors.concat(itemsWithErrors);\r\n }\r\n\r\n });\r\n\r\n if (allErrors.length > 0) {\r\n generateToastError(allErrors);\r\n }\r\n\r\n return allErrors.length === 0;\r\n };\r\n\r\n const sharepointDataListEntireFolderIsValid = (inputValues: SharePointInputData[]) => {\r\n let allErrors: string[] = [];\r\n\r\n const itemsWithErrors = inputValues.filter(item => item.hasError).map(item => `${item.displayName}`);\r\n allErrors = allErrors.concat(itemsWithErrors);\r\n\r\n if (allErrors.length > 0) {\r\n generateToastError(allErrors);\r\n }\r\n\r\n return allErrors.length === 0;\r\n };\r\n\r\n const generateToastError = (items: string[]) => {\r\n customToast.error(\r\n
\r\n {languageStrings.MetadataValidationFailed}
\r\n {generateErrors(items)}\r\n
\r\n );\r\n };\r\n\r\n const generateErrors = (items: string[]) => {\r\n return items.map((item, index) => {\r\n return (\r\n \r\n • {item}
\r\n
\r\n );\r\n });\r\n };\r\n\r\n const getFolderType = () => {\r\n if (currentDirectory.isTeamsRootFolder) return FolderTypeEnum.teamChannel;\r\n if (currentDirectory.type === ComponentTypes.OneDrive)\r\n return FolderTypeEnum.oneDrive;\r\n\r\n return FolderTypeEnum.sharepoint;\r\n };\r\n\r\n const saveToSharepointRecent = (folderType: FolderTypeEnum.sharepoint | FolderTypeEnum.oneDrive | FolderTypeEnum.teamChannel): IStoreItem[] => {\r\n try {\r\n const savinglocationStructure = savingLocationStructureModule.getSavingLocationStructure();\r\n const lastDirectoryItem = savinglocationStructure ? savinglocationStructure[savinglocationStructure.length - 1] : null;\r\n const item: IStoreItem = {\r\n driveId: !lastDirectoryItem?.parentId ? lastDirectoryItem.id : lastDirectoryItem?.parentId,\r\n locations: savinglocationStructure && [...savinglocationStructure],\r\n itemId: !lastDirectoryItem?.parentId ? null : lastDirectoryItem?.id,\r\n name: lastDirectoryItem.fileTitle,\r\n fileType: FileTypeEnum.folder,\r\n folderTypeIcon: FolderTypeIconQuery.getIconType(\r\n folderType,\r\n {\r\n driveId: !lastDirectoryItem?.parentId ? lastDirectoryItem.id : lastDirectoryItem?.parentId,\r\n id: !lastDirectoryItem?.parentId ? null : lastDirectoryItem.id,\r\n name: \"\",\r\n contentTypeId: lastDirectoryItem?.contentTypeId\r\n },\r\n currentDirectory?.isTeamsFolder\r\n ),\r\n datePinned: new Date(),\r\n folderId: !lastDirectoryItem?.parentId ? null : lastDirectoryItem?.id,\r\n sharePointListId: lastDirectoryItem?.sharePointListId\r\n };\r\n\r\n StoreItemHelper.removeSaveLocation(item.locations);\r\n if (item.locations?.length > 0) {\r\n return [item];\r\n }\r\n } catch (e) {\r\n logger(e, \"useFileUpload.tsx (saveToSharepointRecent)\");\r\n }\r\n return [];\r\n };\r\n\r\n const savesFileToRecent = async (files: ISharepointRelativeFileInfo[], autoFolderCreation: boolean): Promise => {\r\n const data = await getRelativeFileInfo(files, autoFolderCreation); //info of files being saved\r\n if (!data.length) {\r\n return [];\r\n }\r\n\r\n try {\r\n const mapper = new RecentFilesMapper(languageStrings);\r\n return mapper.map(data, true);\r\n } catch (e) {\r\n logger(e, \"App.tsx (savesFileToRecent)\");\r\n }\r\n return [];\r\n }\r\n\r\n const buildFilesToGetRecent = async (fileSavedLocation?: IPageSettings, succeededFiles?: IFileSaveFileItem[]): Promise => {\r\n const fileLocation: IPageSettings = fileSavedLocation ?? savingLocationStructureModule.getSavingDestination() ?? currentDirectory;\r\n /*\r\n Required due to inconsistent property casing.\r\n */\r\n let fileDocumentLibrary: string = fileLocation.DocumentLibrary;\r\n if (!fileDocumentLibrary) {\r\n try {\r\n fileDocumentLibrary = fileLocation[\"documentLibrary\"];\r\n } catch (error) {\r\n logger(error, \"App.tsx (buildFilesToGetRecent)\");\r\n }\r\n }\r\n\r\n const driveId: string = await determineDriveIdForSaving(fileLocation);\r\n return selectedFilesRef.current.map((email, index) => ({\r\n driveId: driveId,\r\n documentLibrary: fileDocumentLibrary,\r\n directory: fileLocation.directory,\r\n fileName: `${succeededFiles[index] ? succeededFiles[index].name : `${email.name}.${email.extension}`}`\r\n }));\r\n }\r\n\r\n const determineDriveIdForSaving = async (destinationLocation: IPageSettings) => {\r\n const destinationLocationType = destinationLocation?.type;\r\n return destinationLocationType == ComponentTypes.OneDrive || destinationLocationType == ComponentTypes.OneDriveSubFolder\r\n ? getOneDriveBusinessDriveId(destinationLocation)\r\n : getSharepointDriveId(destinationLocation);\r\n }\r\n\r\n const getSharepointDriveId = (destinationLocation: IPageSettings) => {\r\n return !destinationLocation?.parentId ? destinationLocation.id : destinationLocation.parentId;\r\n }\r\n\r\n const getOneDriveBusinessDriveId = async (destinationLocation: IPageSettings) => {\r\n return destinationLocation.type === ComponentTypes.OneDrive ? oneDriveRootDetails?.driveId ?? (await getOneDriveRootDetails())?.driveId : destinationLocation.parentId;\r\n }\r\n\r\n const saveToOneDrive = async (\r\n folderName: string = \"\",\r\n fromLocationItemCurrentDirectory?: IPageSettings,\r\n savingLocationDirectory?: string,\r\n locationBeforeSaving?: IPageSettings[],\r\n searchedFolderLocation?: IPageSettings[],\r\n goToHome: boolean = false,\r\n saveMode?: SaveMode\r\n ): Promise => {\r\n\r\n dispatch(setIsCheckingForDuplicates(true));\r\n try {\r\n const duplicateFileResult = await getDuplicateOneDriveResult(saveMode);\r\n\r\n await doOneDriveSavingWork(\r\n folderName,\r\n duplicateFileResult,\r\n goToHome,\r\n fromLocationItemCurrentDirectory,\r\n savingLocationDirectory,\r\n locationBeforeSaving,\r\n searchedFolderLocation,\r\n saveMode\r\n );\r\n } catch (error) {\r\n logger(error, \"CMUploadFilesPanel.tsx (saveToOneDrive)\");\r\n dispatch(setIsCheckingForDuplicates(false));\r\n }\r\n };\r\n\r\n const getDuplicateOneDriveResult = async (saveMode?: SaveMode): Promise => {\r\n const savinglocationStructure = savingLocationStructureModule.getSavingLocationStructure();\r\n const lastDirectoryItem = savinglocationStructure ? savinglocationStructure[savinglocationStructure.length - 1] : null;\r\n const directoryUrl = !lastDirectoryItem?.directory\r\n ? lastDirectoryItem?.webUrl\r\n : `${lastDirectoryItem?.webUrl}${lastDirectoryItem?.directory?.startsWith('/') ? lastDirectoryItem.directory : `/${lastDirectoryItem?.directory}`}`;\r\n\r\n return await FileService.getFilePreCommitCheck(\r\n filesRef.current,\r\n {\r\n autoFolderCreation: false,\r\n destinationUrl: directoryUrl,\r\n siteUrl: OneDriveUrlHelper.getSiteUrl(lastDirectoryItem?.webUrl)\r\n },\r\n convertEmailToPDF,\r\n saveMode\r\n );\r\n };\r\n\r\n const doOneDriveSavingWork = async (\r\n folderName: string,\r\n duplicateFileResult: IFileToUpload[],\r\n goToHome: boolean,\r\n fromLocationItemCurrentDirectory?: IPageSettings,\r\n savingLocationDirectory?: string,\r\n locationBeforeSaving?: IPageSettings[],\r\n searchedFolderLocation?: IPageSettings[],\r\n saveMode?: SaveMode\r\n ): Promise => {\r\n dispatch(setFiles(duplicateFileResult));\r\n dispatch(setIsCheckingForDuplicates(false));\r\n\r\n const duplicateFiles = duplicateFileResult.some(item => item.isDuplicate && !item.isFolder);\r\n const duplicateFolders = duplicateFileResult.some(item => item.isDuplicate && item.isFolder);\r\n\r\n if (duplicateFiles || duplicateFolders) {\r\n if (duplicateFiles && (!oneDriveOverwriteOption || oneDriveOverwriteOption === OneDriveOverWriteEnum.notSelected)) {\r\n setSpHasDuplicateFiles(true);\r\n dispatch(setOneDriveOverwriteOptionSelected(OneDriveOverWriteEnum.rename));\r\n\r\n if (duplicateFolders && !spHasDuplicateFolders) {\r\n setSpHasDuplicateFolders(true);\r\n }\r\n\r\n if (goToHome) dispatch(setNeedsRedirectToHome(goToHome));\r\n return;\r\n }\r\n if (duplicateFolders && !spHasDuplicateFolders) {\r\n if (goToHome) dispatch(setNeedsRedirectToHome(goToHome));\r\n setSpHasDuplicateFolders(true);\r\n return;\r\n }\r\n }\r\n\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n dispatch(setIsSavingInBackground(true, ComponentTypes.OneDrive));\r\n\r\n setIsFileSystemFileUpload(DragAndDropHelper.isDroppedModeActive);\r\n\r\n const updatedSelectedFiles = renameDuplicateNames([...selectedFilesRef.current].filter(f => !f.isFolder));\r\n const folderType = getFolderType();\r\n\r\n let fileSaveResult: IFileSaveResult;\r\n try {\r\n if (moveToEnabled) {\r\n dispatch(setContentManagerMoveTo({\r\n moveToEnabled: false,\r\n workingDirectories: [],\r\n selectedFiles: [],\r\n siteUrl: \"\",\r\n sourceServerRelPath: \"\",\r\n }));\r\n dispatch(setContentManagerExchange({ selectedFolderId: \"\", selectedFolderName: \"\", selectedAccount: \"\" }));\r\n dispatch(setIsBusySaving({ isBusySaving: true, isSuccess: false }));\r\n CacheHelper.remove(DocubirdCache.selectedExchangeItems);\r\n }\r\n else if (DragAndDropHelper.isDroppedModeActive) {\r\n const folderEntriesToUpload: IFileSystemFolder[] = [...DragAndDropHelper.folderEntries];\r\n const fileSystemFilesUploadResult = await DragAndDropHelper.uploadDroppedFiles(accountUniqueId, updatedSelectedFiles, folderEntriesToUpload);\r\n if (fileSystemFilesUploadResult.success === false) {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: fileSystemFilesUploadResult?.failedFileNames }));\r\n return;\r\n }\r\n\r\n // const oneDriveDetails: IOneDriveRootDetails = oneDriveRootDetails ?? await getOneDriveRootDetails();\r\n // const savingDestination = savingLocationStructureModule.getSavingDestination();\r\n // const directory = savingLocationDirectory ? savingLocationDirectory : savingDestination?.directory;\r\n // const parentUrl = !directory\r\n // ? savingDestination?.webUrl\r\n // : `${savingDestination?.webUrl}${directory.startsWith('/') ? directory : `/${directory}`}`;\r\n // await DragAndDropHelper.createFolders(await authModule.getOneDriveAccessToken(), oneDriveDetails?.sharePointSiteUrl, parentUrl, oneDriveDetails?.sharePointListId, false, selectedFiles);\r\n try {\r\n fileSaveResult = await new FileSystemEntryPersistor().saveToSharepoint(\r\n true,\r\n updatedSelectedFiles,\r\n folderEntriesToUpload,\r\n savingLocation,\r\n false,\r\n [],\r\n accountUniqueId,\r\n null,\r\n userSettings.tenantOcrLanguage,\r\n false,\r\n null,\r\n CheckinTypes.majorCheckIn,\r\n oneDriveOverwriteOption === OneDriveOverWriteEnum.rename,\r\n saveMode\r\n );\r\n } catch (error) {\r\n logger(error, \"useFileUpload.tsx (doOneDriveSavingWork - FileSystemEntryPersistor.saveToSharepoint)\");\r\n }\r\n }\r\n\r\n if (!isFileSystemFileUploadRef.current) {\r\n const persistor = PersistorFactory.create(null, null, mode, isFileSystemFileUploadRef.current);\r\n fileSaveResult = await persistor.saveToOneDrive(\r\n updatedSelectedFiles,\r\n savingLocationDirectory ? savingLocationDirectory : savingLocation.directory,\r\n oneDriveOverwriteOption,\r\n null,\r\n savingLocationDirectory ? null : folderName,\r\n accountUniqueId,\r\n false,\r\n false,\r\n userSettings.tenantOcrLanguage,\r\n exchangeSelectedAccount,\r\n getCategoryType(folderType)\r\n );\r\n }\r\n\r\n if (fileSaveResult.success === true) {\r\n const recentFolder = saveToOneDriveRecent();\r\n const recentFiles = await savesFileToRecent(await buildFilesToGetRecent(fromLocationItemCurrentDirectory, fileSaveResult.succeededFiles), false);\r\n addRecentItem(accountId, [...recentFiles, ...recentFolder]);\r\n\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: true }));\r\n //dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: ['file 1', 'file 2'] }));\r\n resetToPreviousOneDriveLocationBeforeSaving(locationBeforeSaving ?? oneDriveLocationBeforeSaving);\r\n dispatch(resetDuplicateFilesAndOverWriteSettings(filesRef.current));\r\n }\r\n else if (fileSaveResult.success === false) {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: fileSaveResult.failedFileNames }));\r\n }\r\n else {\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false, errorMessages: [languageStrings.ErrorMessageGeneric] }));\r\n }\r\n } catch (err) {\r\n logger(err, \"CMUploadFilesPanel.txs (doOneDriveSavingWork)\");\r\n customToast.error(languageStrings.ErrorMessageGeneric, { autoClose: false });\r\n dispatch(setIsBusySaving({ isBusySaving: false, isSuccess: false }));\r\n }\r\n\r\n setSpHasDuplicateFolders(false);\r\n setSpHasDuplicateFiles(false);\r\n\r\n if (goToHome) {\r\n dispatch(resetWorkingDirectories());\r\n dispatch(setIsSavingInBackground(false));\r\n dispatch(resetDuplicateFilesAndOverWriteSettings(filesRef.current));\r\n dispatch(setNeedsRedirectToHome(false));\r\n }\r\n };\r\n\r\n const saveToOneDriveRecent = (): IStoreItem[] => {\r\n try {\r\n const savinglocationStructure = savingLocationStructureModule.getSavingLocationStructure();\r\n const lastDirectoryItem = savinglocationStructure ? savinglocationStructure[savinglocationStructure.length - 1] : null;\r\n const item: IStoreItem = {\r\n driveId: !lastDirectoryItem?.parentId ? rootOneDriveId : lastDirectoryItem?.parentId,\r\n locations: savinglocationStructure && [...savinglocationStructure],\r\n itemId: !lastDirectoryItem?.parentId ? null : lastDirectoryItem?.id,\r\n name: !lastDirectoryItem?.parentId ? ComponentTypes.OneDrive : lastDirectoryItem.fileTitle,\r\n fileType: FileTypeEnum.folder,\r\n folderTypeIcon: lastDirectoryItem?.type === ComponentTypes.OneDrive ? FolderTypeIconEnum.oneDrive : FolderTypeIconEnum.oneDriveSubFolder,\r\n datePinned: new Date(),\r\n folderId: !lastDirectoryItem?.parentId ? null : lastDirectoryItem?.id\r\n };\r\n StoreItemHelper.removeSaveLocation(item.locations);\r\n //recentMode.save(item);\r\n if (item.locations?.length > 0) {\r\n return [item];\r\n }\r\n } catch (error) {\r\n logger(error, \"App.tsx (saveToOneDriveRecent)\");\r\n }\r\n return [];\r\n };\r\n\r\n const resetToPreviousOneDriveLocationBeforeSaving = (previousLocation: IPageSettings[]) => {\r\n if (previousLocation?.length > 0) {\r\n dispatch(resetWorkingDirectories(previousLocation));\r\n dispatch(resetLocationBeforeSaving());\r\n }\r\n };\r\n\r\n return {\r\n saveSharePointEmailandMetadata,\r\n saveToOneDrive,\r\n showSelectVersion,\r\n setShowSelectVersion,\r\n setSelectedCheckinType,\r\n addListItem,\r\n spHasDuplicateFiles,\r\n setSpHasDuplicateFiles,\r\n spHasDuplicateFolders,\r\n setSpHasDuplicateFolders,\r\n saveEntireEmailFolder,\r\n sharepointDataListEntireFolderIsValid\r\n }\r\n}","import React from \"react\";\r\nimport { PopUpConstants, shared } from \"../../src/taskpane/config/constants\";\r\nimport { IAuthTokenResultDto } from \"../../src/taskpane/interfaces/IAuthTokenResultDto\";\r\nimport authModule, { DialogMessageResponse, DialogMessageStatus, TokenResource } from \"../../utilities/AuthModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\n\r\nexport function useMailSendPopUpAuth() {\r\n const [isMailSendTokenAvailable, setIsMailSendTokenAvailable] = React.useState(authModule.getPersistedAuthState()?.mailSendToken?.length > 0);\r\n const [isMailSendTokenRequestInProgress, setIsMailSendTokenRequestInProgress] = React.useState(false);\r\n\r\n const authDialogRef = React.useRef();\r\n\r\n const requestMailSendToken = () => {\r\n let authState: IAuthTokenResultDto = authModule.getPersistedAuthState();\r\n\r\n let authUrl: URL = new URL(`${process.env.baseUri}/auth.html`);\r\n authUrl.searchParams.append(shared.params.app, \"content_manager\");\r\n authUrl.searchParams.append(shared.params.resource, TokenResource.MailSend.toString());\r\n authUrl.searchParams.append(shared.params.username, authState.account?.username);\r\n /**\r\n * adding winLeft and winTop to account for dual monitor\r\n * using screenLeft and screenTop for IE8 and earlier\r\n */\r\n const winLeft = window.screenLeft ? window.screenLeft : window.screenX;\r\n const winTop = window.screenTop ? window.screenTop : window.screenY;\r\n /**\r\n * window.innerWidth displays browser window\"s height and width excluding toolbars\r\n * using document.documentElement.clientWidth for IE8 and earlier\r\n */\r\n const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n const height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\r\n const left = Math.max(0, ((width / 2) - (PopUpConstants.POPUP_WIDTH / 2)) + winLeft);\r\n const top = Math.max(0, ((height / 2) - (PopUpConstants.POPUP_HEIGHT / 2)) + winTop);\r\n\r\n authDialogRef.current = window.open(authUrl.href, `${PopUpConstants.POPUP_NAME_PREFIX}.${TokenResource.MailSend}`, `width=${PopUpConstants.POPUP_WIDTH}, height=${PopUpConstants.POPUP_HEIGHT}, top=${top}, left=${left}, scrollbars=yes`);\r\n }\r\n\r\n const processAuthDialogResponse = (event) => {\r\n if (event.origin != process.env.baseUri)\r\n return;\r\n\r\n try {\r\n if (event.data) {\r\n const messageFromDialog: DialogMessageResponse = event.data;\r\n if (messageFromDialog?.status === DialogMessageStatus.Success) {\r\n if (messageFromDialog.result?.mailSendToken?.length > 0) {\r\n let authState: IAuthTokenResultDto = authModule.getPersistedAuthState(); \r\n if (authState) {\r\n authState.mailSendToken = messageFromDialog.result.mailSendToken;\r\n authState.mailSendTokenExpiresOn = messageFromDialog.result.mailSendTokenExpiresOn;\r\n authModule.persistAuthState(authState);\r\n setIsMailSendTokenAvailable(true);\r\n }\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n logger(error, \"useMailSendPopUpAuth.tsx (processAuthDialogResponse)\", event.data);\r\n }\r\n\r\n authDialogRef?.current?.close();\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"message\", processAuthDialogResponse);\r\n if (!isMailSendTokenAvailable) {\r\n (async () => {\r\n setIsMailSendTokenRequestInProgress(true);\r\n const mailSendToken: string = await authModule.getMailSendAccessToken(true);\r\n if (mailSendToken) {\r\n setIsMailSendTokenAvailable(true);\r\n }\r\n setIsMailSendTokenRequestInProgress(false);\r\n })();\r\n }\r\n return () => window.removeEventListener(\"message\", processAuthDialogResponse);\r\n }, [isMailSendTokenAvailable]);\r\n\r\n return { isMailSendTokenAvailable, isMailSendTokenRequestInProgress, requestMailSendToken }\r\n}","import React from \"react\";\r\nimport { PopUpConstants, shared } from \"../../src/taskpane/config/constants\";\r\nimport { IAuthTokenResultDto } from \"../../src/taskpane/interfaces/IAuthTokenResultDto\";\r\nimport authModule, { DialogMessageResponse, DialogMessageStatus, TokenResource } from \"../../utilities/AuthModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\n\r\nexport function usePopUpAuth() {\r\n const [isSharePointAdminTokenAvailable, setIsSharePointAdminTokenAvailable] = React.useState(authModule.getPersistedAuthState()?.sharePointAdminToken?.length > 0);\r\n const [isSharePointAdminTokenRequestInProgress, setIsSharePointAdminTokenRequestInProgress] = React.useState(false);\r\n\r\n const authDialogRef = React.useRef();\r\n\r\n const requestSharePointAdminToken = () => {\r\n let authState: IAuthTokenResultDto = authModule.getPersistedAuthState();\r\n let authUrl: URL = new URL(`${process.env.baseUri}/auth.html`);\r\n authUrl.searchParams.append(shared.params.app, \"content_manager\");\r\n authUrl.searchParams.append(shared.params.resource, TokenResource.SharePointAdmin.toString());\r\n authUrl.searchParams.append(shared.params.username, authState.account?.username);\r\n authUrl.searchParams.append(\"sharePointBaseUrl\", authState.account?.sharePointBaseUrl);\r\n /**\r\n * adding winLeft and winTop to account for dual monitor\r\n * using screenLeft and screenTop for IE8 and earlier\r\n */\r\n const winLeft = window.screenLeft ? window.screenLeft : window.screenX;\r\n const winTop = window.screenTop ? window.screenTop : window.screenY;\r\n /**\r\n * window.innerWidth displays browser window\"s height and width excluding toolbars\r\n * using document.documentElement.clientWidth for IE8 and earlier\r\n */\r\n const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n const height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\r\n const left = Math.max(0, ((width / 2) - (PopUpConstants.POPUP_WIDTH / 2)) + winLeft);\r\n const top = Math.max(0, ((height / 2) - (PopUpConstants.POPUP_HEIGHT / 2)) + winTop);\r\n\r\n authDialogRef.current = window.open(authUrl.href, `${PopUpConstants.POPUP_NAME_PREFIX}.${TokenResource.SharePointAdmin}`, `width=${PopUpConstants.POPUP_WIDTH}, height=${PopUpConstants.POPUP_HEIGHT}, top=${top}, left=${left}, scrollbars=yes`);\r\n }\r\n\r\n const processAuthDialogResponse = (event) => {\r\n if (event.origin != process.env.baseUri)\r\n return;\r\n\r\n try {\r\n if (event.data) {\r\n const messageFromDialog: DialogMessageResponse = event.data;\r\n if (messageFromDialog?.status === DialogMessageStatus.Success) {\r\n if (messageFromDialog.result?.sharePointAdminToken?.length > 0) {\r\n let authState: IAuthTokenResultDto = authModule.getPersistedAuthState();\r\n if (authState) {\r\n authState.sharePointAdminToken = messageFromDialog.result.sharePointAdminToken;\r\n authState.sharePointAdminTokenExpiresOn = messageFromDialog.result.sharePointAdminTokenExpiresOn;\r\n authModule.persistAuthState(authState);\r\n setIsSharePointAdminTokenAvailable(true);\r\n }\r\n }\r\n }\r\n }\r\n } catch (error) {\r\n logger(error, \"usePopUpAuth.tsx (processAuthDialogResponse)\", event.data);\r\n }\r\n\r\n authDialogRef?.current?.close();\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"message\", processAuthDialogResponse);\r\n if (!isSharePointAdminTokenAvailable) {\r\n (async () => {\r\n setIsSharePointAdminTokenRequestInProgress(true);\r\n const sharePointAdminToken: string = await authModule.getSharePointAdminAccessToken(true);\r\n if (sharePointAdminToken) {\r\n setIsSharePointAdminTokenAvailable(true);\r\n }\r\n setIsSharePointAdminTokenRequestInProgress(false);\r\n })();\r\n }\r\n return () => window.removeEventListener(\"message\", processAuthDialogResponse);\r\n }, [isSharePointAdminTokenAvailable]);\r\n\r\n return { isSharePointAdminTokenAvailable, isSharePointAdminTokenRequestInProgress, requestSharePointAdminToken }\r\n}","import { Checkbox, DefaultButton, DirectionalHint, Icon, IPanelStyles, IStackTokens, ITextFieldStyles, Link, mergeStyles, Panel, PanelType, PrimaryButton, ScrollablePane, ScrollbarVisibility, Stack, TextField, TooltipDelay, TooltipHost } from \"@fluentui/react\";\r\nimport { getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ContentManagerCopyMoveModeEnum } from \"../../src/taskpane/components/enums/ContentManagerCopyMoveModeEnum\";\r\nimport { setContentManagerMoveTo } from '../../src/taskpane/redux/modules/contentManagerDirectory';\r\nimport { ChangedInput } from \"../../src/taskpane/components/file/fileItems\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { ComponentTypes } from \"../../src/taskpane/config/config\";\r\nimport { IFileToUpload } from \"../../src/taskpane/interfaces/IFileToUpload\";\r\nimport { setFiles, updateFileName } from \"../../src/taskpane/redux/modules/file\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { CMConfirmModal } from \"./CMConfirmModal\";\r\n\r\nexport const scrollStyle = mergeStyles({\r\n position: \"relative\",\r\n height: \"calc(100vh - 135px)\",\r\n});\r\n\r\nconst themedLargeStackTokens: IStackTokens = {\r\n childrenGap: \"s2\",\r\n padding: \"0px 0px\"\r\n};\r\n\r\nconst textFieldStyles: Partial = {\r\n suffix: {\r\n paddingLeft: 0\r\n }\r\n};\r\n\r\nconst stackTokens: IStackTokens = { childrenGap: 5 };\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 15,\r\n paddingRight: 15\r\n }\r\n}\r\nexport interface ICMEmailAttachmentPanelProps {\r\n panelIsOpen: boolean;\r\n closePanel: () => void;\r\n}\r\n\r\nexport const CMEmailAttachmentPanel = ({ panelIsOpen, closePanel }: ICMEmailAttachmentPanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const VISIBLE_FILES_PER_LOAD = 30;\r\n const MAX_SELECTED_FILES = 50;\r\n\r\n const dispatch = useDispatch();\r\n\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const files = useSelector((state: RootState) => state.files.files);\r\n\r\n const [showConfirmMoveToDialog, setShowConfirmMoveToDialog] = React.useState(false);\r\n const [visibleFiles, setVisibleFiles] = React.useState([]);\r\n const [showMaxFilesSelectedDialog, setShowMaxFilesSelectedDialog] = React.useState(false);\r\n\r\n const isOneDrive = currentDirectory?.type === ComponentTypes.OneDrive || currentDirectory?.type === ComponentTypes.OneDriveSubFolder;\r\n\r\n React.useEffect(() => {\r\n if (files) {\r\n if (visibleFiles.length === 0) {\r\n setVisibleFiles(files.filter(item => item.isGraphMailItem).slice(0, VISIBLE_FILES_PER_LOAD));\r\n } else {\r\n setVisibleFiles(files.filter(item => item.isGraphMailItem).slice(0, visibleFiles.length));\r\n }\r\n }\r\n }, [files]);\r\n\r\n const addMoreVisibleFiles = () => {\r\n setVisibleFiles(files.filter(item => item.isGraphMailItem).slice(0, visibleFiles.length + VISIBLE_FILES_PER_LOAD));\r\n }\r\n const handleTextFieldOnchange = async (event: any, newValue: string): Promise => {\r\n const currentChangedInput: ChangedInput = {\r\n id: event.target.name,\r\n value: newValue\r\n }\r\n dispatch(updateFileName({ name: currentChangedInput.value, id: currentChangedInput.id }));\r\n };\r\n\r\n const getFileErrorMessage = (file: IFileToUpload) => {\r\n if (file.filePreCommitResult) {\r\n if (file.filePreCommitResult.exists && !file.filePreCommitResult.locked && !file.filePreCommitResult.checkedOut)\r\n return languageStrings.FileSameName;\r\n if (file.filePreCommitResult.exists && file.filePreCommitResult.locked && !file.filePreCommitResult.checkedOut)\r\n return languageStrings.FileSameLocked;\r\n if (file.filePreCommitResult.exists && !file.filePreCommitResult.locked && file.filePreCommitResult.checkedOut)\r\n return languageStrings.FileSameCheckedOut;\r\n }\r\n\r\n return \"\";\r\n };\r\n\r\n const handleEmailChecked = async (event, isChecked: boolean, item: any) => {\r\n dispatch(setFiles(files.map(file => {\r\n return {\r\n ...file,\r\n isSelected: item.id === file.id ? isChecked : file.isSelected\r\n }\r\n })))\r\n };\r\n\r\n const onRenderFooterContent = React.useCallback(\r\n () => (\r\n \r\n {!generalModule.isInConentMangerMode() && {\r\n if (files.filter(x => x.isSelected && x.isGraphMailItem).length > MAX_SELECTED_FILES) {\r\n setShowMaxFilesSelectedDialog(true);\r\n } else {\r\n setShowConfirmMoveToDialog(true);\r\n }\r\n }\r\n }\r\n text={languageStrings.Save} />}\r\n {\r\n closePanel();\r\n }}\r\n text={languageStrings.Close}\r\n />\r\n \r\n ),\r\n [files],\r\n );\r\n\r\n return (\r\n closePanel()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"350px\"}\r\n styles={panelStyles}\r\n onRenderFooterContent={onRenderFooterContent}\r\n isFooterAtBottom={true}\r\n >\r\n
\r\n \r\n \r\n {visibleFiles.map((item, index) => {\r\n let mailClass = \"xb-select-documents-mail-border xb-select-documents-mail\";\r\n let attachmentClass = \"xb-select-documents-mail-border xb-select-documents-attachment\";\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {item.isAttachment ? (\r\n x.isSelected === true).length === 1)}\r\n styles={textFieldStyles}\r\n borderless\r\n value={item.name}\r\n name={item.id}\r\n onChange={handleTextFieldOnchange}\r\n suffix={item.extension ? `.${item.extension}` : undefined}\r\n className=\"xb-select-documents-input\"\r\n />\r\n ) : (\r\n x.isSelected === true).length === 1)}\r\n styles={textFieldStyles}\r\n borderless\r\n name={item.id}\r\n value={item.name}\r\n onChange={handleTextFieldOnchange}\r\n className=\"xb-select-documents-input\"\r\n />\r\n )}\r\n \r\n \r\n handleEmailChecked(ev, checked, item)}\r\n />\r\n \r\n
\r\n )\r\n })}\r\n {files.filter(x => x.isGraphMailItem).length > visibleFiles.length &&\r\n
\r\n addMoreVisibleFiles()}>{languageStrings.LoadMore}\r\n
\r\n }\r\n
\r\n
\r\n {showConfirmMoveToDialog && !generalModule.isInConentMangerMode() && {\r\n setShowConfirmMoveToDialog(false);\r\n }}\r\n closeText=\"\"\r\n confirmText={languageStrings.Ok}\r\n onConfirm={() => {\r\n dispatch(setContentManagerMoveTo({\r\n mode: ContentManagerCopyMoveModeEnum.CopySelectedEmails,\r\n error: \"\",\r\n moveToEnabled: true,\r\n workingDirectories: [],\r\n selectedFiles: [],\r\n siteUrl: \"\",\r\n sourceSiteUrl: \"\",\r\n sourceServerRelPath: \"\",\r\n busyMovingFiles: false,\r\n copyJobResults: [],\r\n isMoveComplete: false,\r\n isMoveCancelled: false,\r\n destinationDirectory: {},\r\n progressCountCompleted: 0,\r\n progressCountTotal: 0\r\n }));\r\n dispatch(setFiles(files.map(file => {\r\n return {\r\n ...file,\r\n isSelected: !file.isGraphMailItem ? false : file.isSelected\r\n }\r\n })));\r\n setShowConfirmMoveToDialog(false);\r\n closePanel();\r\n }}\r\n />}\r\n {showMaxFilesSelectedDialog && {\r\n setShowMaxFilesSelectedDialog(false);\r\n }}\r\n closeText=\"\"\r\n confirmText={languageStrings.Ok}\r\n onConfirm={() => {\r\n setShowMaxFilesSelectedDialog(false);\r\n }}\r\n />}\r\n
\r\n\r\n \r\n )\r\n};","import { DefaultButton, Dialog, DialogFooter, DialogType, IDialogContentProps } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\n\r\nexport interface ICMConfirmModalProps {\r\n message: string;\r\n showDialog: boolean;\r\n closeDialog: () => void;\r\n}\r\n\r\nexport const CMErrorModal = ({ message, showDialog, closeDialog }: ICMConfirmModalProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dialogContentProps: IDialogContentProps = {\r\n type: DialogType.normal,\r\n title: languageStrings.Error,\r\n subText: message,\r\n showCloseButton: true,\r\n closeButtonAriaLabel: 'Close'\r\n };\r\n\r\n return (\r\n \r\n )\r\n};","import { ActionButton, Checkbox, FontIcon, Icon, IIconProps, ILabelStyles, ILinkStyles, ISearchBoxStyles, IStackItemStyles, IStackTokens, Label, Link, mergeStyles, SearchBox, Slider, Stack, StackItem, TooltipHost } from \"@fluentui/react\";\r\nimport { getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport dayjs from \"dayjs\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useLazyRenderListAsStreamQuery } from \"../../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { IOneDriveRootDetails } from \"../../../src/taskpane/interfaces/IOneDriveRootDetails\";\r\nimport { IPageSettings } from \"../../../src/taskpane/interfaces/IPageSettings\";\r\nimport { FilterItem, FilterSection } from \"../../../src/taskpane/redux/models/reduxModels\";\r\nimport { setContentManagerFilterSectionItem, setContentManagerFilterSectionItems, setContentManagerFilterSectionItemsFromRange, setContentManagerFilterSectionToggleShowMOre, setContentManagerFilterSectionToggleSlider } from \"../../../src/taskpane/redux/modules/contentManagerDirectory\";\r\nimport { toggleReload } from \"../../../src/taskpane/redux/modules/reload\";\r\nimport authModule from \"../../../utilities/AuthModule\";\r\nimport { LanguageContext } from \"../../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../../utilities/logger\";\r\nimport { GridProps } from \"../../Body/useContentManagerBody\";\r\n\r\nexport interface DateRangeStep {\r\n index: number;\r\n label: string;\r\n daysOffset?: number;\r\n}\r\n\r\nconst checkboxLabelStyles: IStackItemStyles = {\r\n root: {\r\n textOverflow: \"ellipsis\",\r\n overflow: \"hidden\",\r\n whiteSpace: \"nowrap\"\r\n }\r\n}\r\n\r\nconst labelStyles: ILabelStyles = {\r\n root: { marginBottom: 10 }\r\n}\r\n\r\nconst linkStyles: ILinkStyles = {\r\n root: { marginTop: 10 }\r\n}\r\n\r\nconst filterButtonStackItemStyles: IStackItemStyles = {\r\n root: {\r\n marginTop: -10\r\n }\r\n}\r\n\r\nconst searchIcon: IIconProps = { iconName: \"Search\" };\r\nconst searchBoxStyles: Partial = {\r\n root: { height: \"100%\", marginBottom: 10, paddingBottom: 5 }\r\n};\r\n\r\nconst horizontalGapStackTokens: IStackTokens = {\r\n childrenGap: 10\r\n};\r\n\r\nexport interface CMFileFilterPanelSectionProps {\r\n filterSections: FilterSection[];\r\n filterSection: FilterSection;\r\n isInOneDrive: boolean;\r\n serverRelPath: string;\r\n oneDriveRootDetails: IOneDriveRootDetails;\r\n currentDirectory: IPageSettings;\r\n isInContentManagerMode: boolean;\r\n setFilterSectionItem?: (filterSection: FilterSection, sectionItem: FilterItem, isChecked: boolean) => void;\r\n setFilterSectionItems?: (filterSection: FilterSection, sectionItems: FilterItem[]) => void;\r\n setFilterSectionItemsFromRange?: (filterSection: FilterSection, daysOffset: number) => void;\r\n setFilterSectionToggleSlider?: (filterSection: FilterSection, skipApiCall?: boolean) => void;\r\n setFilterSectionToggleShowMore?: (filterSection: FilterSection) => void;\r\n}\r\n\r\nexport interface FilterSectionItemsExpandSearchParams {\r\n field: string;\r\n value: string;\r\n}\r\n\r\nexport const CMFileFilterPanelSection = ({ filterSections, filterSection, isInOneDrive, serverRelPath, oneDriveRootDetails, currentDirectory, isInContentManagerMode, setFilterSectionItem, setFilterSectionItems, setFilterSectionItemsFromRange, setFilterSectionToggleSlider, setFilterSectionToggleShowMore }: CMFileFilterPanelSectionProps) => {\r\n const dispatch = useDispatch();\r\n\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n //const filterSections = isInContentManagerMode ? useSelector((state: RootState) => state.contentManagerDirectory.filterSections) : localFilterSections;\r\n\r\n const [sectionElement, setSectionElement] = React.useState();\r\n const [minItems, setMinItems] = React.useState(5);\r\n const [loadSection, setLoadSection] = React.useState(false);\r\n const [showFilterIcon, setShowFilterIcon] = React.useState(false);\r\n const [showFilterSearchBox, setFilterSearchBox] = React.useState(false);\r\n const [sectionFilterValue, setSectionFilterValue] = React.useState(\"\");\r\n const [uniqueSearches, setUniqueSearches] = React.useState([]);\r\n\r\n const [getListAsStream] = useLazyRenderListAsStreamQuery();\r\n\r\n const [dateRangeSteps, setDateRangeSteps] = React.useState([\r\n { index: -5, label: languageStrings.FilterDateStepSince },\r\n { index: -4, label: languageStrings.FilterDateStepLast3Months, daysOffset: -92 },\r\n { index: -3, label: languageStrings.FilterDateStepLast30Days, daysOffset: -30 },\r\n { index: -2, label: languageStrings.FilterDateStepLast7Days, daysOffset: -7 },\r\n { index: -1, label: languageStrings.FilterDateStepSinceYesterday, daysOffset: -1 },\r\n { index: 0, label: languageStrings.FilterDateStepToday, daysOffset: 0 },\r\n { index: 1, label: languageStrings.FilterDateStepTomorrow, daysOffset: 1 },\r\n { index: 2, label: languageStrings.FilterDateStepIn7Days, daysOffset: 7 },\r\n { index: 3, label: languageStrings.FilterDateStepIn30Days, daysOffset: 30 },\r\n { index: 4, label: languageStrings.FilterDateStepIn3Months, daysOffset: 92 },\r\n { index: 5, label: languageStrings.FilterDateStepIn3MonthsOrMore, daysOffset: 93 }\r\n ]);\r\n\r\n const [selectedDateRangeStep, setSelectedDateRangeStep] = React.useState(dateRangeSteps[0]);\r\n const [sliderValue, setSliderValue] = React.useState(selectedDateRangeStep.index);\r\n const [hasFutureDateValues, setHasFutureDateValues] = React.useState(false);\r\n\r\n const onChange = (value: number) => {\r\n if (value !== selectedDateRangeStep.index) {\r\n const dateRangeStep = dateRangeSteps.find(x => x.index === value);\r\n setSelectedDateRangeStep(dateRangeStep);\r\n setSliderValue(value);\r\n }\r\n };\r\n\r\n const onChanged = (event: any, value: number, range?: [number, number]) => {\r\n if (selectedDateRangeStep.index !== value) {\r\n const dateRangeStep = dateRangeSteps.find(x => x.index === value);\r\n if (isInContentManagerMode) {\r\n dispatch(setContentManagerFilterSectionItemsFromRange(filterSection, dateRangeStep.daysOffset));\r\n dispatch(toggleReload());\r\n }\r\n else {\r\n setFilterSectionItemsFromRange(filterSection, dateRangeStep.daysOffset);\r\n }\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n const currentFilterSection = filterSections.find(x => x.filterField.RealFieldName === filterSection.filterField.RealFieldName)\r\n if (currentFilterSection) {\r\n if (currentFilterSection.filterField.Type === 'DateTime') {\r\n const selectedDateRange = (!currentFilterSection.daysOffset && currentFilterSection.daysOffset !== 0) ? dateRangeSteps[0] : dateRangeSteps.find(x => x.daysOffset === currentFilterSection.daysOffset);\r\n setSelectedDateRangeStep(selectedDateRange);\r\n setSliderValue(selectedDateRange.index);\r\n\r\n let hasFutureDates: boolean = false;\r\n if (currentFilterSection.items.length > 0) {\r\n try {\r\n const filterDate = new Date(currentFilterSection.items[currentFilterSection.items.length - 1].value);\r\n const filterTimeStamp = filterDate.getTime();\r\n if (!isNaN(filterTimeStamp) && filterTimeStamp > (new Date()).getTime()) {\r\n hasFutureDates = true;\r\n setHasFutureDateValues(true);\r\n }\r\n } catch (error) {\r\n // Ignore\r\n }\r\n }\r\n\r\n if (!hasFutureDates) {\r\n setDateRangeSteps(dateRangeSteps.slice(0, 6));\r\n }\r\n }\r\n\r\n const itemHeight: number = 30;\r\n let containerHeight: number;\r\n\r\n if (currentFilterSection.items.length > minItems && currentFilterSection.showMoreExpanded === false) {\r\n containerHeight = itemHeight * minItems;\r\n }\r\n else {\r\n containerHeight = itemHeight * currentFilterSection.items.length;\r\n }\r\n\r\n if (!currentFilterSection.hasSlider && currentFilterSection.items.length > minItems) {\r\n setShowFilterIcon(true);\r\n }\r\n\r\n const sectionStyle = mergeStyles({\r\n maxHeight: containerHeight - 10,\r\n overflow: \"hidden\",\r\n transition: \"max-height 0.3s ease-in-out\",\r\n });\r\n\r\n if (currentFilterSection?.items?.length > 0) {\r\n setSectionElement(\r\n \r\n {currentFilterSection.items.filter(x => x.title?.toLowerCase().includes(sectionFilterValue?.toLowerCase())).slice(0, currentFilterSection.showMoreExpanded ? currentFilterSection.items.length : currentFilterSection.items.length > minItems ? minItems : currentFilterSection.items.length).map((item, index) => {\r\n return (\r\n _onRenderLabel(item)} checked={item.selected} onChange={(ev?: React.FormEvent, isChecked?: boolean) => _onCheckboxChange(ev, isChecked, item)} />\r\n )\r\n })}\r\n \r\n );\r\n } else {\r\n setSectionElement(undefined);\r\n }\r\n\r\n setLoadSection(true);\r\n }\r\n }, [filterSection, sectionFilterValue])\r\n\r\n React.useEffect(() => {\r\n if (uniqueSearches?.length > 0) {\r\n (async () => {\r\n const lastSearchValue = uniqueSearches[uniqueSearches?.length - 1];\r\n\r\n const gridProps: GridProps = {\r\n sort: []\r\n }\r\n\r\n if (lastSearchValue) {\r\n try {\r\n const listStream = await getListAsStream({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n sharePointListId: currentDirectory?.sharePointListId,\r\n gridProps: { ...gridProps },\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n serverRelativePath: serverRelPath,\r\n filterSections: [],\r\n filterSectionItemsExpandParams: {\r\n field: filterSection.filterField.RealFieldName,\r\n value: lastSearchValue\r\n }\r\n }).unwrap();\r\n\r\n const items: string[] = listStream.ListData.Row\r\n .map(item => item[filterSection.filterField.RealFieldName])\r\n .filter((v, i, a) => a.indexOf(v) === i); //Remove duplicates\r\n\r\n const oldSectionItems = [...filterSection.items];\r\n const newSectionItems: FilterItem[] = [...filterSection.items];\r\n\r\n items.forEach(item => {\r\n if (item) {\r\n const filterItem = newSectionItems.find(x => x.value?.toUpperCase() === item.toUpperCase());\r\n\r\n if (!filterItem) {\r\n let newFilterItem: FilterItem = {\r\n title: item,\r\n value: item,\r\n selected: false\r\n }\r\n\r\n newSectionItems.push(newFilterItem);\r\n }\r\n }\r\n });\r\n\r\n if (newSectionItems?.length > oldSectionItems?.length) {\r\n const sectionItemsSorted = newSectionItems.sort((a, b) => (a.title?.toUpperCase() > b.title?.toUpperCase()) ? 1 : -1).map((item, index) => {\r\n return {\r\n ...item,\r\n index\r\n }\r\n });\r\n if (isInContentManagerMode)\r\n dispatch(setContentManagerFilterSectionItems(filterSection, sectionItemsSorted));\r\n else\r\n setFilterSectionItems(filterSection, sectionItemsSorted);\r\n }\r\n } catch (error) {\r\n logger(error, \"CMFileFilterPanelSection.tsx (Search filters)\");\r\n }\r\n }\r\n })();\r\n }\r\n }, [uniqueSearches]);\r\n\r\n const _onRenderLabel = (item: FilterItem) => {\r\n return (\r\n
\r\n \r\n {filterSection.filterField.RealFieldName === 'DocIcon' && }\r\n {item.title}\r\n \r\n
\r\n )\r\n }\r\n\r\n function _onCheckboxChange(ev?: React.FormEvent, isChecked?: boolean, item?: FilterItem) {\r\n\r\n if (isInContentManagerMode) {\r\n dispatch(setContentManagerFilterSectionItem(filterSection, item, isChecked));\r\n dispatch(toggleReload());\r\n } else {\r\n setFilterSectionItem(filterSection, item, isChecked);\r\n }\r\n }\r\n\r\n const showMoreClicked = () => {\r\n if (isInContentManagerMode) {\r\n dispatch(setContentManagerFilterSectionToggleShowMOre(filterSection))\r\n } else {\r\n setFilterSectionToggleShowMore(filterSection);\r\n }\r\n }\r\n\r\n const showDatesClicked = () => {\r\n const reloadGrid: boolean = selectedDateRangeStep.index !== dateRangeSteps[0].index;\r\n setSelectedDateRangeStep(dateRangeSteps[0]);\r\n setSliderValue(0);\r\n if (isInContentManagerMode) {\r\n dispatch(setContentManagerFilterSectionItemsFromRange(filterSection, dateRangeSteps[0].daysOffset));\r\n dispatch(setContentManagerFilterSectionToggleSlider(filterSection));\r\n if (reloadGrid)\r\n dispatch(toggleReload());\r\n }\r\n else {\r\n setFilterSectionItemsFromRange(filterSection, dateRangeSteps[0].daysOffset);\r\n setFilterSectionToggleSlider(filterSection, !reloadGrid);\r\n }\r\n }\r\n\r\n const showSliderClicked = () => {\r\n let reloadGrid = filterSection.items.some(x => x.selected);\r\n if (isInContentManagerMode) {\r\n dispatch(setContentManagerFilterSectionToggleSlider(filterSection));\r\n if (reloadGrid) {\r\n dispatch(toggleReload());\r\n }\r\n }\r\n else {\r\n setFilterSectionToggleSlider(filterSection, !reloadGrid);\r\n }\r\n }\r\n\r\n const getSectionSubtitle = () => {\r\n if (filterSection.showSlider) {\r\n if (selectedDateRangeStep.index === dateRangeSteps[0]?.index) {\r\n let hasEmptyItem = (filterSection.items.some(x => x.title === `(Empty)`) || filterSection.items.some(x => x.title === `(Leeg)`)) ? true : false;\r\n let firstItem = hasEmptyItem ? filterSection?.items[1] : filterSection?.items[0]\r\n let dateString = dayjs(firstItem?.value).isValid() ? dayjs(firstItem?.value).format(\"ll\") : firstItem?.title\r\n return `(${selectedDateRangeStep.label} ${dateString})`;\r\n } else {\r\n return `(${selectedDateRangeStep.label})`;\r\n }\r\n }\r\n\r\n if (filterSection.items?.some(x => x.selected)) {\r\n return `(${filterSection.items?.filter(x => x.selected)?.length})`;\r\n }\r\n\r\n return '';\r\n }\r\n\r\n const onFilterClick = () => {\r\n setFilterSearchBox(prev => !prev);\r\n setSectionFilterValue(\"\");\r\n }\r\n\r\n const onChangeFilter = React.useCallback(async (event?: React.ChangeEvent, newValue?: string) => {\r\n setSectionFilterValue(newValue);\r\n const searchValue = newValue.toLowerCase();\r\n const minItemsBeforeAdditionalSearch = 6;\r\n if (filterSection.items?.length > minItemsBeforeAdditionalSearch && newValue?.length > 0 && !uniqueSearches.includes(searchValue)) {\r\n const oldValues = [...uniqueSearches];\r\n oldValues.push(newValue);\r\n setUniqueSearches(oldValues);\r\n }\r\n }, [uniqueSearches]);\r\n\r\n return (\r\n <>\r\n {loadSection && <>\r\n {filterSection?.items?.length > 0 &&\r\n \r\n \r\n \r\n \r\n {showFilterIcon &&\r\n \r\n \r\n \r\n \r\n }\r\n \r\n }\r\n {showFilterSearchBox && }\r\n {!filterSection.showSlider && sectionElement &&\r\n <>\r\n {sectionElement}\r\n {filterSection?.items?.filter(x => x.title?.toLowerCase().includes(sectionFilterValue?.toLowerCase())).length > minItems &&
{ showMoreClicked() }}>\r\n \r\n {!filterSection.showMoreExpanded ? languageStrings.ShowMore : languageStrings.ShowLess}\r\n
}\r\n }\r\n {filterSection.hasSlider && filterSection.showSlider && dateRangeSteps[0]?.index}\r\n />}\r\n {filterSection.hasSlider && filterSection.showSlider && showDatesClicked()}>{languageStrings.SelectSpecificDates}}\r\n {filterSection.hasSlider && !filterSection.showSlider && showSliderClicked()}>{languageStrings.ShowDateRangeSlider}}\r\n }\r\n \r\n )\r\n};\r\n","import Axios from \"axios\";\r\nimport { officeExtentions } from \"../../../src/taskpane/config/constants\";\r\nimport { IPageSettings } from \"../../../src/taskpane/interfaces/IPageSettings\";\r\nimport { FilterItem, FilterSection } from \"../../../src/taskpane/redux/models/reduxModels\";\r\nimport authModule from \"../../../utilities/AuthModule\";\r\nimport { logger } from \"../../../utilities/logger\";\r\nimport { tryDecodeUriComponent, tryEncodeUriComponent } from \"../../../utilities/EncodeDecode\";\r\nimport { IAuthAccount } from \"../../../src/taskpane/interfaces/IAuthTokenResultDto\";\r\nimport { IViewsDropdown } from \"../../../src/taskpane/interfaces/IViewsDropdown\";\r\nimport { parseDocument } from \"htmlparser2\";\r\nimport { getElementsByTagName } from \"domutils\";\r\n\r\nconst extractSelectOptions = (data: any) => {\r\n const options = getElementsByTagName(\"option\", parseDocument(data));\r\n\r\n if (Array.isArray(options)) {\r\n return options.map((el) => {\r\n const option: FilterItem = {\r\n title: el.children[0]['data'],\r\n value: el.attribs.value,\r\n selected: false\r\n }\r\n return option;\r\n });\r\n }\r\n\r\n return [];\r\n}\r\n\r\nconst extractListItems = (data: any) => {\r\n const list = getElementsByTagName(\"li\", parseDocument(data)).splice(1);\r\n const options: FilterItem[] = [];\r\n\r\n if (Array.isArray(list)) {\r\n list.forEach((el, index) => {\r\n if (index % 5 === 0) {\r\n options.push({\r\n title: el.children[0]['data'],\r\n value: el.children[0]['data'],\r\n selected: false\r\n })\r\n }\r\n });\r\n }\r\n\r\n return options;\r\n}\r\n\r\nexport const resetFilterValues = (\r\n filterSections: FilterSection[]\r\n): FilterSection[] => {\r\n return filterSections.map(section => {\r\n return {\r\n ...section,\r\n showMoreExpanded: false,\r\n daysOffset: null,\r\n items: section.items.map(item => {\r\n return {\r\n ...item,\r\n selected: false\r\n }\r\n })\r\n }\r\n });\r\n}\r\n\r\nexport const setFilterSectionsFromFields = async (\r\n isInOneDrive: boolean,\r\n oneDriveRootDetails: any,\r\n currentDirectory: IPageSettings,\r\n userAccount: IAuthAccount,\r\n filterFieldList: any[],\r\n serverRelPath: string,\r\n localizedMeText: string,\r\n selectedView?: IViewsDropdown\r\n): Promise => {\r\n try {\r\n const siteUrl = isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl;\r\n const config = {\r\n headers: {\r\n Authorization: `Bearer ${isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken()}`,\r\n }\r\n }\r\n\r\n const filterSections = await Promise.all(\r\n filterFieldList\r\n ?.filter(x => x.RealFieldName !== 'FileSizeDisplay'\r\n && x.RealFieldName !== 'Title'\r\n && x.RealFieldName !== '_UIVersionString'\r\n && x.Filterable !== 'FALSE'\r\n && x.ShowInFiltersPane !== 'FALSE'\r\n && x.GroupField !== 'TRUE'\r\n )\r\n ?.map(async field => {\r\n try {\r\n const data = (await Axios.post(`${siteUrl}/_api/web/lists('${currentDirectory?.sharePointListId}')/RenderListFilterData?&FieldInternalName=${field.RealFieldName}&RootFolder=${tryEncodeUriComponent(tryDecodeUriComponent(serverRelPath))}&ExcludeFieldFilteringHtml=true${selectedView?.Id ? `&ViewId=${selectedView.Id}` : \"\"}`, {}, config)).data;\r\n\r\n const section: FilterSection = {\r\n filterField: field,\r\n items: data.includes(' {\r\n if (item.title !== '(All)' && item.title !== '(Alles)') {\r\n if (field.RealFieldName === 'DocIcon') {\r\n if (officeExtentions.word.items.includes(item.value)) {\r\n if (!compactItems.some(x => x.fileType === 'docx')) {\r\n compactItems.push({\r\n title: 'Word',\r\n value: officeExtentions.word.values,\r\n fileType: 'docx',\r\n selected: false\r\n })\r\n }\r\n }\r\n else if (officeExtentions.excel.items.includes(item.value)) {\r\n if (!compactItems.some(x => x.fileType === 'xlsx')) {\r\n compactItems.push({\r\n title: 'Excel',\r\n value: officeExtentions.excel.values,\r\n fileType: 'xlsx',\r\n selected: false\r\n })\r\n }\r\n }\r\n else if (officeExtentions.powerPoint.items.includes(item.value)) {\r\n if (!compactItems.some(x => x.fileType === 'pptx')) {\r\n compactItems.push({\r\n title: 'PowerPoint',\r\n value: officeExtentions.powerPoint.values,\r\n fileType: 'pptx',\r\n selected: false\r\n })\r\n }\r\n }\r\n else if (officeExtentions.visio.items.includes(item.value)) {\r\n if (!compactItems.some(x => x.fileType === 'vsdx')) {\r\n compactItems.push({\r\n title: 'Visio',\r\n value: officeExtentions.visio.values,\r\n fileType: 'vsdx',\r\n selected: false\r\n })\r\n }\r\n }\r\n else if (item.title !== `(Empty)` && item.title !== `(Leeg)`) {\r\n compactItems.push({ ...item, fileType: item.value });\r\n }\r\n }\r\n else if (field.FieldType === \"User\" || field.FieldType === \"UserMulti\") {\r\n if (item.title === userAccount.displayName) {\r\n compactItems.push({ ...item, title: `@${localizedMeText}` });\r\n }\r\n else {\r\n compactItems.push({ ...item });\r\n }\r\n }\r\n else {\r\n compactItems.push({ ...item });\r\n }\r\n }\r\n });\r\n\r\n // try {\r\n // const dataSourceField = dataSourceHelper.getInputDataSource(datasourceItems, field.DisplayName);\r\n // if (dataSourceField) {\r\n // const dropdownBinder = new dataSourceDropdownBinder(dataSourceService, dataSourceField, field.DisplayName);\r\n // const property = dropdownBinder.getDataSourcePropertyToBindTo();\r\n // if (property) {\r\n // const datasourceData = await dropdownBinder.getDatasourceEntries();\r\n // const datasourceValues = dropdownBinder.bindDataSourceToDropdown(datasourceData, property);\r\n\r\n // datasourceValues.forEach(datasourceValue => {\r\n // const datasourceFilterValue: string = (datasourceValue.key as string)?.trim();\r\n // if (datasourceFilterValue) {\r\n // const compactItem = compactItems.find(x => x.value?.trim().toUpperCase() === datasourceFilterValue.toUpperCase());\r\n // if (!compactItem) {\r\n // const newFilterItem: FilterItem = {\r\n // title: datasourceFilterValue,\r\n // value: datasourceFilterValue,\r\n // selected: false\r\n // }\r\n\r\n // compactItems.push(newFilterItem);\r\n // }\r\n // }\r\n // });\r\n // }\r\n // }\r\n // } catch (error) {\r\n // logger(error, \"CMFileFilterPanel.tsx (Add datasource options)\");\r\n // }\r\n\r\n if (field.FieldType === \"DateTime\") {\r\n compactItems.sort((a, b) => {\r\n try {\r\n // Convert the value of a and b to Date objects\r\n const aDate = new Date(a.value);\r\n const bDate = new Date(b.value);\r\n\r\n // Check if both a and b are valid dates\r\n if (!isNaN(aDate.getTime()) && !isNaN(bDate.getTime())) {\r\n // If both are valid dates, compare their timestamps to sort them\r\n return aDate.getTime() - bDate.getTime();\r\n }\r\n } catch (error) {\r\n // Ignore\r\n }\r\n\r\n // If either a or b (or both) are not valid dates, don't change their order\r\n return 0;\r\n });\r\n } else {\r\n compactItems = compactItems\r\n .sort((a, b) => (a.title?.toUpperCase() > b.title?.toUpperCase()) ? 1 : -1)\r\n .map((item) => {\r\n return {\r\n ...item\r\n }\r\n });\r\n }\r\n\r\n section.items = [...compactItems];\r\n\r\n return section;\r\n } catch (error) {\r\n logger(error, \"FileFilterHelper.ts (filterFields)\");\r\n return null;\r\n }\r\n }));\r\n\r\n const displayFilterSections: FilterSection[] = [];\r\n\r\n (filterSections as FilterSection[])\r\n ?.filter(section => section)\r\n ?.forEach(section => {\r\n if (!(section.filterField.RealFieldName === 'ID' && section.filterField.FromBaseType === 'TRUE')) {\r\n if (section.items?.length === 1) {\r\n //Hide section if only (Empty) \r\n if (section.items[0].title !== `(Empty)` && section.items[0].title !== `(Leeg)`) {\r\n section.showSlider = false;\r\n section.hasSlider = false;\r\n displayFilterSections.push(section);\r\n }\r\n }\r\n else if (section.items?.length === 2) {\r\n //Hide section slider if only 1 item \r\n if (section.items[0].title === `(Empty)` || section.items[0].title === `(Leeg)`) {\r\n section.showSlider = false;\r\n section.hasSlider = false;\r\n }\r\n displayFilterSections.push(section);\r\n }\r\n else {\r\n displayFilterSections.push(section);\r\n }\r\n }\r\n });\r\n\r\n return displayFilterSections;\r\n\r\n } catch (error) {\r\n logger(error, \"FileFilterHelper.ts (setFilterSectionsFromFields)\");\r\n }\r\n\r\n return [];\r\n}","import { ActivityItem, DefaultButton, DirectionalHint, Dropdown, IActivityItemProps, IDropdownOption, IPanelStyles, IPersonaProps, IPersonaSharedProps, IStackTokens, Label, Link, mergeStyles, mergeStyleSets, MessageBar, MessageBarType, Panel, PanelType, PrimaryButton, ScrollablePane, ScrollbarVisibility, Spinner, SpinnerSize, Stack, StackItem, TextField, Toggle, TooltipHost } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { getEmailTemplateHtml } from \"../../src/taskpane/components/helpers/shareFileEmailTemplateHelper\";\r\nimport { Fileview } from \"../../src/taskpane/components/_v2/components/Explorer/Fileview/Fileview\";\r\nimport { IGraphCreateShareableLinkRequest, ShareableLinkRequestScope, ShareableLinkRequestType } from \"../../src/taskpane/components/_v2/redux/api/graph/api-graph-interfaces\";\r\nimport { useLazySendMailQuery } from \"../../src/taskpane/components/_v2/redux/api/graph/api-graph-slice\";\r\nimport { useLazyGetSharingInformationQuery } from \"../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { PeopleFinder } from \"../../src/taskpane/components/_v2/_shared/PeopleFinder/PeopleFinder\";\r\nimport { ComponentTypes } from \"../../src/taskpane/config/config\";\r\nimport { createItemShareableLink, getFileItemIdFromRelativePath, getItemWebViewUrl } from \"../../src/taskpane/services/GraphService\";\r\nimport { isMobile } from \"../../src/taskpane/styles/mobileStyles\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { useMailSendPopUpAuth } from \"../Hooks/useMailSendPopUpAuth\";\r\nimport { IPageSettings } from \"../../src/taskpane/interfaces/IPageSettings\";\r\n\r\nconst scrollStyle = mergeStyles({\r\n position: \"relative\",\r\n height: \"calc(100vh - 160px)\",\r\n});\r\n\r\nconst stackTokens: IStackTokens = { childrenGap: 20 };\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 15,\r\n paddingRight: 15\r\n }\r\n}\r\nexport interface ICMFileSharePanelProps {\r\n panelIsOpen: boolean;\r\n closePanel: () => void;\r\n item: any;\r\n}\r\n\r\nexport const CMFileSharePanel = ({ panelIsOpen, closePanel, item }: ICMFileSharePanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories?.oneDriveRootDetails);//state.workingDirectories.rootOneDriveId,\r\n const currentSharepointFolder = useSelector((state: RootState) => state.currentSharepointFolder);\r\n const user = useSelector((state: RootState) => state.user);\r\n\r\n const [message, setMessage] = React.useState('');\r\n const [errorMessage, setErrorMessage] = React.useState('');\r\n const [filenameWithoutExtention, setFilenameWithoutExtention] = React.useState('');\r\n const [blockDownload, setBlockDownload] = React.useState(false);\r\n const [isCreatingLink, setIsCreatingLink] = React.useState(false);\r\n const [sharedSuccess, setSharedSuccess] = React.useState(false);\r\n\r\n const [types] = React.useState([\r\n { key: 'edit', text: languageStrings.CanEditMakesChanges },\r\n { key: 'view', text: languageStrings.CanViewCannotMakeChanges }\r\n ]);\r\n const [selectedType, setSelectedType] = React.useState({ key: 'edit', text: languageStrings.CanEditMakesChanges });\r\n const [activityItem, setActivityItem] = React.useState()\r\n const [tooltipContent, setTooltipContent] = React.useState();\r\n\r\n const [selectedPeople, setSelectedPeople] = React.useState([])\r\n const selectedPersonasChanged = (selectedPersonas: IPersonaProps[], customTextValue?: string) => {\r\n const people = selectedPersonas.map(x => x.primaryText ? x.primaryText : x.secondaryText);\r\n if (customTextValue) {\r\n people.push(customTextValue);\r\n }\r\n setSelectedPeople(people);\r\n }\r\n\r\n const [getSharingInformation] = useLazyGetSharingInformationQuery();\r\n const [sendMail] = useLazySendMailQuery();\r\n\r\n const { isMailSendTokenAvailable, isMailSendTokenRequestInProgress, requestMailSendToken } = useMailSendPopUpAuth();\r\n\r\n const isInOneDrive = React.useRef(currentDirectory?.type == ComponentTypes.OneDrive || currentDirectory?.type == ComponentTypes.OneDriveSubFolder);\r\n\r\n React.useEffect(() => {\r\n if (item) {\r\n (async () => {\r\n let siteUrl: string;\r\n if (item.currentLocation) {\r\n const currentLocation: IPageSettings = item.currentLocation;\r\n isInOneDrive.current = currentLocation.type == ComponentTypes.OneDrive || currentLocation.type == ComponentTypes.OneDriveSubFolder;\r\n siteUrl = isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentLocation.webUrl;\r\n }\r\n else {\r\n siteUrl = isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl;\r\n }\r\n\r\n const sharingInformation = await getSharingInformation({\r\n siteUrl,\r\n sharePointListId: item.sharePointListId || item.sharepointIds?.listId || currentSharepointFolder.sharepointListId,\r\n uniqueId: item.UniqueId ? item.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : item.sharepointIds.listItemUniqueId,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n }).unwrap();\r\n\r\n const personas: IPersonaSharedProps[] = sharingInformation.permissionsInformation.principals.map(principal => {\r\n let initials = \"\";\r\n\r\n const parts = principal.principal.name?.split(\" \");\r\n\r\n if (parts.length === 1) {\r\n initials = `${parts[0].charAt(0)}`;\r\n }\r\n if (parts.length > 1) {\r\n initials = `${parts[0].charAt(0)}${parts[1].charAt(0)}`;\r\n }\r\n\r\n const persona: IPersonaSharedProps = {\r\n text: principal.principal.name,\r\n imageInitials: initials\r\n }\r\n return persona;\r\n });\r\n\r\n if (personas.length > 0) {\r\n let activityDescription: any;\r\n if (personas.length === 1) {\r\n activityDescription = [{personas[0].text}]\r\n }\r\n else if (personas.length === 2) {\r\n activityDescription = [{personas[0].text}, {personas[1].text}]\r\n }\r\n else if (personas.length === 3) {\r\n activityDescription = [{personas[0].text}, {personas[1].text} and 1 other]\r\n }\r\n else if (personas.length > 3) {\r\n activityDescription = [{personas[0].text}, {personas[1].text} and {personas.length - 2} others]\r\n }\r\n\r\n setTooltipContent(\r\n <>\r\n \r\n
    \r\n {personas.map((persona, index) => {\r\n return (\r\n
  • {persona.text}
  • \r\n )\r\n })}\r\n
\r\n \r\n );\r\n\r\n setActivityItem({\r\n activityDescription: activityDescription,\r\n activityPersonas: personas,\r\n isCompact: true,\r\n });\r\n }\r\n })();\r\n }\r\n }, [item]);\r\n\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n if (isCreatingLink && isMailSendTokenAvailable) {\r\n if (!selectedPeople || selectedPeople.length === 0) {\r\n setIsCreatingLink(false);\r\n setErrorMessage(languageStrings.PleaseSelectSomeoneShare);\r\n return;\r\n }\r\n\r\n setErrorMessage(\"\");\r\n\r\n let driveId = '';\r\n let itemId = '';\r\n\r\n if (item.driveId && item.id) {\r\n driveId = item.driveId;\r\n itemId = item.id;\r\n }\r\n else {\r\n const spItemUrlparts = item['.spItemUrl'].split('/');\r\n driveId = isInOneDrive.current ? oneDriveRootDetails?.driveId : (currentDirectory?.parentId ? currentDirectory?.parentId : currentDirectory?.id);\r\n itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n }\r\n\r\n if (!itemId) {\r\n const driveUrl = new URL(await getItemWebViewUrl(await authModule.getGraphAccessToken(), driveId, null));\r\n const folderUrl = new URL(driveUrl.origin + item['FileRef']);\r\n itemId = await getFileItemIdFromRelativePath(await authModule.getGraphAccessToken(), driveId, folderUrl.pathname.replace(driveUrl.pathname, \"\"), false);\r\n }\r\n\r\n if (itemId) {\r\n const request: IGraphCreateShareableLinkRequest = {\r\n driveId,\r\n itemId,\r\n recipients: selectedPeople,\r\n message,\r\n type: selectedType.key === ShareableLinkRequestType.Edit ? ShareableLinkRequestType.Edit : blockDownload === true ? ShareableLinkRequestType.BlocksDownload : ShareableLinkRequestType.View,\r\n scope: ShareableLinkRequestScope.Users\r\n }\r\n\r\n try {\r\n const createLinkResults = await createItemShareableLink(request);\r\n if (createLinkResults) {\r\n const fileParts = getFileParts(item.FileLeafRef ?? item.name);\r\n setFilenameWithoutExtention(fileParts.nameWithoutExtention)\r\n\r\n const res = await sendMail({\r\n accessToken: await authModule.getMailSendAccessToken(),\r\n html: getEmailTemplateHtml(\r\n createLinkResults.link.webUrl,\r\n fileParts.extention,\r\n languageStrings.DocumentSharedWithYouBy.replace(\"[person]\", user.account.displayName),\r\n fileParts.nameWithoutExtention,\r\n message,\r\n languageStrings.Open\r\n ),\r\n subject: languageStrings.DocumentSharedWithYouByEmailSubject.replace(\"[person]\", user.account.displayName).replace(\"[file_name]\", fileParts.nameWithoutExtention),\r\n toRecipients: selectedPeople\r\n });\r\n\r\n if (res.isError) {\r\n setSharedSuccess(false);\r\n setIsCreatingLink(false);\r\n setErrorMessage(res.error[\"data\"][\"error\"][\"message\"] ? res.error[\"data\"][\"error\"][\"message\"] : languageStrings.ErrorMessageGeneric);\r\n logger(res.error[\"data\"][\"error\"][\"message\"], \"CMFileSharePanel.tsx (sendMail)\");\r\n } else if (res.isSuccess) {\r\n setIsCreatingLink(false);\r\n setSharedSuccess(true);\r\n }\r\n }\r\n else {\r\n setSharedSuccess(false);\r\n setIsCreatingLink(false);\r\n setErrorMessage(languageStrings.ErrorMessageGeneric);\r\n logger(new Error(`Sharing link could not be created for request ${JSON.stringify(request)}`), \"CMFileSharePanel.tsx (getCreateShareableLink)\");\r\n }\r\n } catch (error) {\r\n setIsCreatingLink(false);\r\n setErrorMessage(languageStrings.ErrorMessageGeneric);\r\n logger(error, \"CMFileSharePanel.tsx (getCreateShareableLink)\");\r\n }\r\n }\r\n\r\n setIsCreatingLink(false);\r\n }\r\n setIsCreatingLink(false);\r\n })();\r\n\r\n }, [isCreatingLink, isMailSendTokenAvailable])\r\n\r\n const getFileParts = (name: string) => {\r\n let extention = '';\r\n let nameWithoutExtention = '';\r\n\r\n const fileParts = name.split('.');\r\n if (fileParts) {\r\n if (fileParts.length > 0) extention = fileParts[fileParts.length - 1];\r\n nameWithoutExtention = fileParts[0];\r\n }\r\n\r\n return {\r\n extention,\r\n nameWithoutExtention\r\n }\r\n }\r\n\r\n const createShareableLink = async () => {\r\n setIsCreatingLink(true);\r\n setSharedSuccess(false);\r\n if (!isMailSendTokenAvailable) {\r\n requestMailSendToken();\r\n }\r\n }\r\n\r\n const onRenderFooterContent = React.useCallback(\r\n () => (\r\n \r\n {!sharedSuccess && {\r\n createShareableLink();\r\n }}\r\n disabled={isCreatingLink || isMailSendTokenRequestInProgress}\r\n text={languageStrings.Send}\r\n >\r\n {(isCreatingLink) && }\r\n }\r\n {sharedSuccess && {\r\n closePanel();\r\n }}\r\n text={languageStrings.Close}\r\n />}\r\n \r\n ),\r\n [createShareableLink, isCreatingLink],\r\n );\r\n\r\n const onTypeChange = (event: React.FormEvent, item: IDropdownOption): void => {\r\n setSelectedType(item);\r\n };\r\n\r\n return (\r\n closePanel()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"450px\"}\r\n styles={panelStyles}\r\n onRenderFooterContent={onRenderFooterContent}\r\n isFooterAtBottom={true}\r\n >\r\n
\r\n \r\n \r\n {errorMessage && \r\n {errorMessage}\r\n }\r\n {sharedSuccess && \r\n {languageStrings.DocumentShareSuccess.replace(\"[file_name]\", filenameWithoutExtention)}\r\n }\r\n \r\n \r\n setMessage(newValue)} />\r\n \r\n {selectedType.key === ShareableLinkRequestType.View && {\r\n setBlockDownload(prev => !prev);\r\n }} />}\r\n {activityItem && \r\n \r\n \r\n \r\n \r\n }\r\n \r\n \r\n
\r\n\r\n \r\n )\r\n};","import React from \"react\";\r\nimport SaveWithMetaData from \"../../src/taskpane/components/directoryComponents/sharepoint/SaveToSharepoint\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ComponentTypes } from \"../../src/taskpane/config/config\";\r\nimport { SharePointInputData } from \"../../src/taskpane/interfaces/props/SharePointInputData\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport savingLocationStructureModule from \"../../utilities/SavingLocationStructureModule\";\r\nimport DuplicateFiles from \"../../src/taskpane/components/directoryComponents/oneDrive/DuplicateFiles\";\r\nimport { IPanelStyles, IStackItemStyles, IStackStyles, IStackTokens, MessageBar, MessageBarButton, MessageBarType, Panel, PanelType, PrimaryButton, Spinner, SpinnerSize, Stack } from \"@fluentui/react\";\r\nimport { resetFiles, setOneDriveOverwriteOptionSelected } from \"../../src/taskpane/redux/modules/file\";\r\nimport { setSavingLocation } from \"../../src/taskpane/redux/modules/savingLocation\";\r\nimport { Slide, ToastContainer } from \"react-toastify\";\r\nimport { DatasourceValidationHelper } from \"../../src/taskpane/components/helpers/datasourceValidationHelper\";\r\nimport { setDatasourceValues } from \"../../src/taskpane/redux/modules/datasource\";\r\nimport { useFileUpload } from \"../Body/useFileUpload\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { FileOption } from \"../../src/taskpane/interfaces/IFileOption\";\r\nimport { updateIndividualFileOptionsValue } from \"../../src/taskpane/components/helpers/metaDataHelper\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { VersionSelectorMinMajOnly } from \"../../src/taskpane/components/_v2/_shared/VersionSelector/VersionSelectorMinMajOnly\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport { SharePointFolderContentTypeIds, sharePointInternalFileName } from \"../../src/taskpane/config/constants\";\r\nimport { OneDriveOverWriteEnum } from \"../../src/taskpane/components/enums/oneDriveOverWriteEnum\";\r\nimport DuplicateFolders from \"../../src/taskpane/components/directoryComponents/oneDrive/DuplicateFolders\";\r\nimport { BulkMetadataUpdateRequest, MetadataDto } from \"../../src/taskpane/components/_v2/redux/api/local/api-local-interfaces\";\r\nimport { getListSettings } from \"../../src/taskpane/services/SharePointRestServices\";\r\nimport { getItem } from \"../../src/taskpane/services/GraphService\";\r\nimport { apiBulkUpdateItemMetadata } from \"../../src/taskpane/services/ApiService\";\r\n\r\nconst panelStyles: Partial = {\r\n main: {\r\n overflow: \"hidden\"\r\n },\r\n content: {\r\n paddingLeft: 5,\r\n paddingRight: 5,\r\n },\r\n header: {\r\n marginBottom: 10,\r\n paddingLeft: 15\r\n },\r\n footer: {\r\n backgroundColor: \"#fff\"\r\n },\r\n commands: {\r\n backgroundColor: \"#fff\"\r\n }\r\n}\r\n\r\nconst containerStackTokens: IStackTokens = {\r\n childrenGap: 5\r\n};\r\n\r\nconst containerStackStyles: IStackStyles = {\r\n root: {\r\n height: \"100%\",\r\n }\r\n};\r\n\r\nconst metadataStackItemStyles: IStackItemStyles = {\r\n root: {\r\n overflowY: \"auto\"\r\n }\r\n};\r\n\r\nexport interface ICMFilesUpdatePanel {\r\n closePanel?: () => void;\r\n reloadGrid?: () => void;\r\n panelIsOpen: boolean;\r\n serverRelPath?: string;\r\n isForUpdate?: boolean;\r\n selectedItems?: any[];\r\n}\r\n\r\nexport const CMFilesUpdatePanel = ({ closePanel, reloadGrid, panelIsOpen, serverRelPath, isForUpdate = false, selectedItems }: ICMFilesUpdatePanel) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const workingDirectories = useSelector((state: RootState) => state.workingDirectories.workingDirectories);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const datasourceValues = useSelector((state: RootState) => state.datasource.values);\r\n const canOverwrite = useSelector((state: RootState) => state.files.canOverwrite);\r\n const siteInfo = useSelector((state: RootState) => state.tenantInfo?.sites);\r\n const currentSharepointFolder = useSelector((state: RootState) => state.currentSharepointFolder);\r\n const moveTo = useSelector((state: RootState) => state.contentManagerDirectory.moveTo);\r\n\r\n const [files, setFilesLocal] = React.useState(selectedItems);\r\n const [inputValuesToSave, setInputValuesToSave] = React.useState([]);\r\n const [filesUploaded, setFilesUploaded] = React.useState(files?.length > 0);\r\n const [isCurrentDirectorySPList, setIsCurrentDirectorySPList] = React.useState(false);\r\n const [isBusy, setIsBusy] = React.useState(false);\r\n const [showErrorMessage, setShowErrorMessage] = React.useState(false);\r\n\r\n const [_fileOptions, _setFileOptions] = React.useState([]);\r\n const fileOptionsRef = React.useRef([]);\r\n const setFileOptions = (fileOptions: FileOption[]) => {\r\n fileOptionsRef.current = fileOptions;\r\n _setFileOptions(fileOptions);\r\n };\r\n\r\n const removeMessage = React.useCallback(() => setShowErrorMessage(false), []);\r\n\r\n const isInOneDrive = React.useRef(currentDirectory.type == ComponentTypes.OneDrive || currentDirectory.type == ComponentTypes.OneDriveSubFolder);\r\n\r\n const { showSelectVersion, setShowSelectVersion, setSelectedCheckinType, spHasDuplicateFiles, setSpHasDuplicateFiles, spHasDuplicateFolders, setSpHasDuplicateFolders } = useFileUpload();\r\n\r\n React.useEffect(() => {\r\n const workingDirectoriesAvailable: boolean = Array.isArray(workingDirectories) && workingDirectories.length > 0;\r\n setIsCurrentDirectorySPList(workingDirectoriesAvailable && workingDirectories.some(x => x.type === ComponentTypes.SharePointList));\r\n }, [workingDirectories, siteInfo]);\r\n\r\n React.useEffect(() => {\r\n dispatch(setOneDriveOverwriteOptionSelected(OneDriveOverWriteEnum.notSelected));\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (!generalModule.getIsMultiMetaFileUpdatePanelOpen() && datasourceValues) {\r\n updateMetadataPropertiesFromDataSource(datasourceValues);\r\n }\r\n }, [datasourceValues]);\r\n\r\n React.useEffect(() => {\r\n generalModule.setIsMultiMetaFileUpdatePanelOpen(false);\r\n\r\n savingLocationStructureModule.setSavingLocationStructure(workingDirectories);\r\n dispatch(\r\n setSavingLocation({\r\n display: currentDirectory?.displayName,\r\n webUrl: currentDirectory?.webUrl,\r\n directory: currentDirectory?.directory,\r\n }, isInOneDrive.current)\r\n );\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (fileOptionsRef.current?.length > 0) {\r\n const updateFileOptions = fileOptionsRef.current.map(fileOption => {\r\n return {\r\n ...fileOption,\r\n canOverwrite\r\n }\r\n })\r\n\r\n setFileOptions(updateFileOptions);\r\n }\r\n }, [canOverwrite]);\r\n\r\n const updateMetadataPropertiesFromDataSource = (values: any) => {\r\n const propertyKeys = Object.keys(values);\r\n if (propertyKeys.length > 0) {\r\n const updatedinputValuesToSave = [...inputValuesToSave];\r\n propertyKeys.forEach((propKey) =>\r\n updateDatasourceDisplayNameInputData(updatedinputValuesToSave, propKey, values[propKey])\r\n );\r\n updateSharepointMetadataToSave(updatedinputValuesToSave, null);\r\n }\r\n dispatch(setDatasourceValues(null));\r\n };\r\n\r\n const updateDatasourceDisplayNameInputData = (\r\n updatedinputValuesToSave: SharePointInputData[],\r\n propKey: string,\r\n value: any\r\n ) => {\r\n let inputToUpdate = inputValuesToSave.find(\r\n (item) => item.internalName !== sharePointInternalFileName && item.displayName && item.displayName.trim().toLowerCase() === propKey.trim().toLowerCase()\r\n );\r\n\r\n if (inputToUpdate) {\r\n const validatedValue = DatasourceValidationHelper.validateAndTransformDatasourceValue(inputToUpdate, value);\r\n if (validatedValue) {\r\n const updatedInput: SharePointInputData = updatedinputValuesToSave[inputToUpdate.index];\r\n updatedInput.value = validatedValue;\r\n updatedInput.hasError = false;\r\n updatedInput.updatedFromDataSourceToggle = !updatedInput.updatedFromDataSourceToggle;\r\n }\r\n }\r\n };\r\n\r\n const onPanelCLose = () => {\r\n if (!moveTo.moveToEnabled) {\r\n dispatch(resetFiles([]));\r\n }\r\n closePanel();\r\n }\r\n\r\n const updateSharepointMetadataToSave = (metadata: SharePointInputData[], informationProtectionId: string, changedIndex?: number) => {\r\n setInputValuesToSave(metadata);\r\n\r\n if (fileOptionsRef.current?.length > 0) {\r\n setFileOptions(updateIndividualFileOptionsValue(fileOptionsRef.current, metadata, changedIndex, languageStrings.TitleAutoSet));\r\n }\r\n };\r\n\r\n const getItemWithExistingGraphId = async (driveId, itemId) => {\r\n const fileItem = await getItem(\r\n await authModule.getGraphAccessToken(),\r\n driveId,\r\n itemId\r\n )\r\n if (fileItem) {\r\n return fileItem?.sharepointIds?.listItemUniqueId\r\n } else {\r\n return null\r\n }\r\n };\r\n\r\n const processSelectedItems = async (items) => {\r\n const itemIds = await Promise.all(items.map(async (item) => {\r\n if (item.hasGraphItemId === true) {\r\n return await getItemWithExistingGraphId(item?.driveId, item.id);\r\n } else if ('UniqueId' in item && item.UniqueId) {\r\n return item.UniqueId.replace('{', '').replace('}', '');\r\n } else if ('id' in item) {\r\n return item.id;\r\n }\r\n return null;\r\n }));\r\n\r\n return itemIds.filter(id => id !== null);\r\n }\r\n\r\n const updateFilesSplit = async () => {\r\n const filesArray = files?.filter((item) => !item?.ContentTypeId?.startsWith(SharePointFolderContentTypeIds.folder));\r\n const documentSetsArray = files?.filter((item) => item?.ContentTypeId?.startsWith(SharePointFolderContentTypeIds.documentSet));\r\n\r\n setIsBusy(true);\r\n\r\n const [filesResponse, foldersResponse] = await Promise.all([\r\n Array.isArray(filesArray) && filesArray.length > 0 ? bulkUpdateItems(filesArray) : true,\r\n Array.isArray(documentSetsArray) && documentSetsArray.length > 0 ? bulkUpdateItems(documentSetsArray, true) : true\r\n ]);\r\n\r\n if (filesResponse && foldersResponse) {\r\n reloadGrid();\r\n closePanel();\r\n }\r\n else {\r\n setShowErrorMessage(true);\r\n }\r\n\r\n setIsBusy(false);\r\n }\r\n\r\n const bulkUpdateItems = async (items: any[], isFolder: boolean = false): Promise => {\r\n try {\r\n const accessToken = isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken();\r\n\r\n let currentSharepointFolderInfo;\r\n const webUrl = currentDirectory?.webUrl;\r\n const listId = currentDirectory?.sharePointListId;\r\n if (webUrl && listId) {\r\n const [settings] = await Promise.all([\r\n getListSettings(accessToken, webUrl, listId)\r\n ]);\r\n\r\n currentSharepointFolderInfo = {\r\n sharepointListId: listId,\r\n canView: false,\r\n canCreateFolder: settings ? settings.EnableFolderCreation : currentSharepointFolder?.canCreateFolder ?? false,\r\n contentTypesEnabled: settings ? settings.ContentTypesEnabled : currentSharepointFolder?.contentTypesEnabled ?? false,\r\n enableMinorVersions: settings ? settings.EnableMinorVersions : currentSharepointFolder?.enableMinorVersions ?? false,\r\n };\r\n }\r\n\r\n const request: BulkMetadataUpdateRequest = {\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n siteUrl: webUrl,\r\n listId: listId,\r\n listItemUniqueIds: await processSelectedItems(items),\r\n isFolder: isFolder,\r\n isListItem: isCurrentDirectorySPList ? true : false,\r\n listSettings: {\r\n enableMinorVersions: currentSharepointFolderInfo?.enableMinorVersions === true,\r\n },\r\n metadata: inputValuesToSave\r\n .map(input => {\r\n const meta: MetadataDto = {\r\n type: input.type,\r\n internalName: input.internalName,\r\n value: !(input?.value === 0) && (!input?.value || (Array.isArray(input?.value) && !input?.value?.length)) ? undefined : input.value\r\n }\r\n return meta;\r\n })\r\n .filter(meta => meta.value)\r\n }\r\n\r\n await apiBulkUpdateItemMetadata(request);\r\n return true;\r\n } catch (error) {\r\n logger(error, \"CMFilesUpdatePanel.tsx (ApiBulkUpdate)\");\r\n return false;\r\n }\r\n }\r\n\r\n const cancelDuplicateAndVersionOptionSelection = () => {\r\n setShowSelectVersion(false);\r\n setSpHasDuplicateFiles(false);\r\n setSpHasDuplicateFolders(false);\r\n }\r\n\r\n const resetIndividualFileInputValues = () => {\r\n setFileOptions([]);\r\n }\r\n\r\n const onRenderFooterContent = React.useCallback(\r\n () => (\r\n \r\n {\r\n updateFilesSplit();\r\n }}\r\n text={isBusy ? languageStrings.SaveInProgress : languageStrings.SaveProperties}\r\n >\r\n {isBusy && }\r\n \r\n \r\n ),\r\n [isBusy, inputValuesToSave],\r\n );\r\n\r\n return (\r\n onPanelCLose()}\r\n isLightDismiss={false}\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={'350px'}\r\n styles={panelStyles}\r\n onRenderFooterContent={onRenderFooterContent}\r\n isFooterAtBottom={true}\r\n >\r\n <>\r\n \r\n {files?.length > 1 && _fileOptions?.some(x => x.isModified) && \r\n {\r\n resetIndividualFileInputValues();\r\n }}>{languageStrings.Reset}\r\n \r\n }\r\n >{languageStrings.IndividualFilesUpdated}}\r\n \r\n {(showSelectVersion || spHasDuplicateFiles || spHasDuplicateFolders) &&
\r\n {spHasDuplicateFolders && !spHasDuplicateFiles && }\r\n {spHasDuplicateFiles && }\r\n {showSelectVersion && }\r\n
}\r\n
\r\n {((moveTo.moveToEnabled || isCurrentDirectorySPList || filesUploaded) && !isInOneDrive.current) && }\r\n
\r\n
\r\n \r\n {showErrorMessage && \r\n \r\n {languageStrings.ErrorWhileUpdatingMetadata}\r\n \r\n }\r\n
\r\n \r\n \r\n )\r\n}","import React from \"react\";\r\nimport SaveWithMetaData from \"../../src/taskpane/components/directoryComponents/sharepoint/SaveToSharepoint\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { SharePointInputData } from \"../../src/taskpane/interfaces/props/SharePointInputData\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { Dropdown, Icon, IPanelStyles, IStackItemStyles, IStackStyles, IStackTokens, ITooltipHostStyles, MessageBar, MessageBarType, Panel, PanelType, PrimaryButton, ResponsiveMode, Separator, Spinner, SpinnerSize, Stack, Toggle, TooltipHost, TooltipOverflowMode } from \"@fluentui/react\";\r\nimport { Slide, ToastContainer } from \"react-toastify\";\r\nimport { DatasourceValidationHelper } from \"../../src/taskpane/components/helpers/datasourceValidationHelper\";\r\nimport { setDatasourceValues } from \"../../src/taskpane/redux/modules/datasource\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { IFileToUpload } from \"../../src/taskpane/interfaces/IFileToUpload\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { FolderView } from \"../../src/taskpane/components/helpers/folderView\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { FileOption } from \"../../src/taskpane/interfaces/IFileOption\";\r\nimport { getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport { VersionSelectorMinMajOnly } from \"../../src/taskpane/components/_v2/_shared/VersionSelector/VersionSelectorMinMajOnly\";\r\nimport { CheckinTypes } from \"../../src/taskpane/components/_v2/redux/api/local/api-local-interfaces\";\r\nimport DuplicateFiles from \"../../src/taskpane/components/directoryComponents/oneDrive/DuplicateFiles\";\r\nimport { DragAndDropHelper } from \"../../utilities/DragAndDropHelper\";\r\nimport { CacheHelper } from \"../../utilities/CacheHelper\";\r\nimport { DocubirdCache, sharePointInternalFileName, sharePointInternalTitleName } from \"../../src/taskpane/config/constants\";\r\nimport { ContentManagerCopyMoveModeEnum } from \"../../src/taskpane/components/enums/ContentManagerCopyMoveModeEnum\";\r\nimport emailMapper from \"../../src/taskpane/services/EmailMapper\";\r\nimport { DefaultValueService } from \"../../src/taskpane/services/DefaultValueService\";\r\nimport { IFilePreCommitResult } from \"../../src/taskpane/interfaces/IFilePreCommitResult\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport { getFilePreCommitInfo } from \"../../src/taskpane/services/SharePointRestServices\";\r\nimport { setFile } from \"../../src/taskpane/redux/modules/file\";\r\nimport { getDriveRootWebUrl } from \"../../src/taskpane/services/GraphService\";\r\nimport { SaveMode } from \"../../src/taskpane/components/enums/SaveModeEnum\";\r\nimport { ISaveButtonProps } from \"../../src/taskpane/interfaces/ISaveButtonProps\";\r\nimport { getPlatform } from \"../../src/taskpane/styles/mobileStyles\";\r\n\r\nconst containerStackTokens: IStackTokens = {\r\n childrenGap: 5\r\n};\r\n\r\nconst containerStackStyles: IStackStyles = {\r\n root: {\r\n height: \"100%\",\r\n }\r\n};\r\n\r\nconst metadataStackItemStyles: IStackItemStyles = {\r\n root: {\r\n overflowY: \"auto\"\r\n }\r\n};\r\n\r\nconst tooltipHostCalloutProps = { gapSpace: 7 };\r\n\r\nconst stackTokens: IStackTokens = {\r\n childrenGap: 8\r\n};\r\n\r\nconst fileOptionStackStyles: IStackStyles = {\r\n root: {\r\n minWidth: 0\r\n }\r\n}\r\n\r\nconst fileTypeIconStyles: React.CSSProperties = {\r\n flexShrink: 0\r\n}\r\n\r\nconst fileNameStyles: ITooltipHostStyles = {\r\n root: {\r\n overflow: \"hidden\",\r\n whiteSpace: \"nowrap\",\r\n textOverflow: \"ellipsis\",\r\n msTextOverflow: \"ellipsis\"\r\n }\r\n}\r\n\r\nconst dropdownStyles: React.CSSProperties = {\r\n marginTop: \"10px\",\r\n paddingLeft: \"10px\",\r\n paddingRight: \"10px\",\r\n marginBottom: \"-10px\"\r\n};\r\n\r\nexport interface ICMMultipleFilesMetaDataPanelProps {\r\n closePanel?: () => void;\r\n panelIsOpen: boolean;\r\n originalInputValues: SharePointInputData[];\r\n saveFiles?: (savemode: SaveMode, selectedFile?: FileOption, optionsSelected?: boolean, autoRenameDuplicateFolder?: boolean) => void;\r\n fileOptions: FileOption[];\r\n setFileOptions?: (fileOptions: any[]) => void;\r\n checkForDuplicates: boolean;\r\n setCheckForDuplicates?: (checkForDuplicates: boolean) => void;\r\n showSelectVersion?: boolean;\r\n spHasDuplicateFiles?: boolean;\r\n setSelectedCheckinType?: (checkinType: CheckinTypes) => void;\r\n onCancel?: (selectedFileOption: FileOption) => void;\r\n saveMode: SaveMode;\r\n setSaveMode: (saveMode: SaveMode) => void;\r\n}\r\n\r\nexport const CMMultipleFilesMetaDataPanel = ({ closePanel, panelIsOpen, originalInputValues, fileOptions, setFileOptions, saveFiles, checkForDuplicates, setCheckForDuplicates, showSelectVersion, spHasDuplicateFiles, setSelectedCheckinType, onCancel, saveMode, setSaveMode }: ICMMultipleFilesMetaDataPanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const files = useSelector((state: RootState) => !DragAndDropHelper.isDroppedModeActive ? state.files.files.filter(x => x.isSelected === true) : state.files.files.filter(x => x.isSelected === true && x.isFileSystemEntry && !x.isFolder));\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const currentSharepointFolder = useSelector((state: RootState) => state.currentSharepointFolder);\r\n const siteInfo = useSelector((state: RootState) => state.tenantInfo?.sites);\r\n const tenantReplaceFileNameWithGUID = useSelector((state: RootState) => state.tenantInfo?.replaceFileNameWithGUID);\r\n const isBusySaving = useSelector((state: RootState) => state.savingInBackground.isBusySaving);\r\n const canOverwrite = useSelector((state: RootState) => state.files.canOverwrite);\r\n const datasourceValues = useSelector((state: RootState) => state.datasource.values);\r\n const moveTo = useSelector((state: RootState) => state.contentManagerDirectory.moveTo);\r\n const convertEmailToPDF = useSelector((state: RootState) => state.user.settings.convertEmailToPDF);\r\n const savingLocation = useSelector((state: RootState) => state.savingLocation);\r\n\r\n const initialLoad = React.useRef(true);\r\n\r\n const [selectedFile, _setSelectedFile] = React.useState();\r\n const selectedFileRef = React.useRef();\r\n const setSelectedFile = (fileOption: FileOption) => {\r\n selectedFileRef.current = fileOption;\r\n _setSelectedFile(fileOption);\r\n };\r\n\r\n const [inputValues, setInputValues] = React.useState([]);\r\n const [isBusy, setIsBusy] = React.useState(false);\r\n const [savingButtonProps, setSavingButtonProps] = React.useState();\r\n const [saveAllFilesDisabledTooltip, setSaveAllFilesDisabledTooltip] = React.useState(\"\");\r\n const [saveFileDisabledTooltip, setSaveFileDisabledTooltip] = React.useState(\"\");\r\n const [updatedName, setUpdatedName] = React.useState(\"\");\r\n const [verifyingFiles, setVerifyingFiles] = React.useState(false);\r\n const [fieldsLoaded, setFieldsLoaded] = React.useState(false);\r\n const [selectionOpen, setSelectionOpen] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n if (checkForDuplicates || (initialLoad.current && selectedFileRef.current)) {\r\n // checkFileNamesForDuplicates(files);\r\n checkFileForDuplicates();\r\n initialLoad.current = false;\r\n }\r\n }, [checkForDuplicates, initialLoad.current, selectedFileRef.current])\r\n\r\n React.useEffect(() => {\r\n if (showSelectVersion || spHasDuplicateFiles) {\r\n setSelectionOpen(true);\r\n } else {\r\n setSelectionOpen(false);\r\n }\r\n }, [showSelectVersion, spHasDuplicateFiles])\r\n\r\n React.useEffect(() => {\r\n generalModule.setIsMultiMetaFileUpdatePanelOpen(true);\r\n setSelectedCheckinType(CheckinTypes.minorCheckIn);\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (datasourceValues) {\r\n updateMetadataPropertiesFromDataSource(datasourceValues);\r\n }\r\n }, [datasourceValues, selectedFile, fileOptions]);\r\n\r\n React.useEffect(() => {\r\n if (updatedName) {\r\n setVerifyingFiles(true);\r\n }\r\n\r\n let debounceTimer = setTimeout(() => {\r\n if (updatedName) {\r\n checkFileForDuplicates(updatedName);\r\n } else {\r\n setVerifyingFiles(false);\r\n }\r\n }, 800);\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [updatedName]);\r\n\r\n React.useEffect(() => {\r\n if (selectedFile) {\r\n const selectedFileOption = fileOptions?.find(x => x.key === selectedFile.key);\r\n if (selectedFileOption) {\r\n const selectedFileHasChanged = JSON.stringify(selectedFileOption) !== JSON.stringify(selectedFile);\r\n if (selectedFileHasChanged) {\r\n setSelectedFile(selectedFileOption);\r\n }\r\n }\r\n }\r\n }, [selectedFile, fileOptions]);\r\n\r\n React.useEffect(() => {\r\n setSavingButtonProps(prevVal => {\r\n return {\r\n ...prevVal,\r\n text: saveMode === SaveMode.Default\r\n ? `${languageStrings.SaveTo} ${savingLocation.display}`\r\n : `${languageStrings.SaveTo} ${savingLocation.display} ${languageStrings.AsPdf}`\r\n };\r\n });\r\n }, [saveMode, savingLocation]);\r\n\r\n const canConvertToPDF = React.useMemo(() => {\r\n return files.filter(f => f.isSelected).some(f => f.canSaveAsPDF);\r\n }, [savingButtonProps, files]);\r\n\r\n const panelCssStyles = React.useMemo(() => {\r\n const partialStyles: Partial = {\r\n main: {\r\n overflow: \"hidden\"\r\n },\r\n content: {\r\n height: canConvertToPDF ? \"calc(100vh - 190px);\" : \"calc(100vh - 140px);\",\r\n paddingLeft: 5,\r\n paddingRight: 5,\r\n paddingBottom: 0\r\n },\r\n footer: {\r\n backgroundColor: \"#fff\"\r\n },\r\n };\r\n return partialStyles;\r\n }, [canConvertToPDF]);\r\n\r\n const updateMetadataPropertiesFromDataSource = (values: any) => {\r\n if (selectedFile && fileOptions?.length > 0) {\r\n const propertyKeys = Object.keys(values);\r\n if (propertyKeys.length > 0) {\r\n const selectedFileInputValues = fileOptions.find(x => x.key === selectedFile.key)?.fileInputValues;\r\n if (selectedFileInputValues) {\r\n const updatedinputValuesToSave = [...selectedFileInputValues];\r\n propertyKeys.forEach((propKey) =>\r\n updateDatasourceDisplayNameInputData(updatedinputValuesToSave, propKey, values[propKey])\r\n );\r\n updateSharepointMetadataToSave(updatedinputValuesToSave, null);\r\n }\r\n }\r\n }\r\n dispatch(setDatasourceValues(null));\r\n };\r\n\r\n const updateDatasourceDisplayNameInputData = (\r\n updatedinputValuesToSave: SharePointInputData[],\r\n propKey: string,\r\n value: any\r\n ) => {\r\n const selectedFileInputValues = fileOptions.find(x => x.key === selectedFile.key)?.fileInputValues;\r\n let inputToUpdate = selectedFileInputValues.find(\r\n (item) => item.displayName && item.displayName.trim().toLowerCase() === propKey.trim().toLowerCase()\r\n );\r\n\r\n if (inputToUpdate) {\r\n const validatedValue = DatasourceValidationHelper.validateAndTransformDatasourceValue(inputToUpdate, value);\r\n if (validatedValue) {\r\n const updatedInput: SharePointInputData = updatedinputValuesToSave[inputToUpdate.index];\r\n updatedInput.value = validatedValue;\r\n updatedInput.hasError = false;\r\n updatedInput.updatedFromDataSourceToggle = !updatedInput.updatedFromDataSourceToggle;\r\n }\r\n }\r\n };\r\n\r\n const fieldsChanged = async (fields: any[], contentTypeId: string, inputValues?: SharePointInputData[]) => {\r\n if (fileOptions?.length === 0) {\r\n const selectedItems = CacheHelper.get(DocubirdCache.selectedExchangeItems);\r\n\r\n const options = await Promise.all((files as IFileToUpload[])?.map(async (file, index) => {\r\n const selectedItem = (moveTo.moveToEnabled && moveTo.mode === ContentManagerCopyMoveModeEnum.CopySelectedEmails) ? selectedItems?.find(x => x.id === file.graphMailItemId) : null;\r\n\r\n return {\r\n key: file.id,\r\n text: file.name,\r\n file: file,\r\n isSelectedFile: index === 0,\r\n isModified: false,\r\n canOverwrite,\r\n isSaving: false,\r\n savingSuccess: false,\r\n savingError: false,\r\n fileInputValues: await Promise.all(inputValues.map(async inputValue => {\r\n let extention;\r\n let value = inputValue.value;\r\n if (inputValue.internalName === sharePointInternalFileName || inputValue.internalName === sharePointInternalTitleName) {\r\n value = file.name;\r\n if (inputValue.internalName === sharePointInternalFileName) {\r\n extention = file.extension;\r\n }\r\n } else {\r\n value = originalInputValues.find(x => x.internalName === inputValue.internalName)?.value;\r\n }\r\n\r\n if (selectedItem) {\r\n if (inputValue.xml && inputValue.xml.DisplayName) {\r\n const colName = inputValue.xml.DisplayName.trim().toLowerCase(); //directly from sharepoint\r\n const spColumnNames = emailMapper.getAllListedColumns(); //list of all saved columns we should check for mapping\r\n const spColumnName = spColumnNames.find(col => col.toLowerCase() === colName); //either returns undefined or a sharepoint column name \r\n if (spColumnName) {\r\n const mappedResult = emailMapper.getOfficeJSToEmailMapping(spColumnName, selectedItem);\r\n if (mappedResult.mappedVal?.value) {\r\n value = DefaultValueService.setMappedDefault(inputValue, mappedResult.mappedVal);\r\n }\r\n }\r\n }\r\n }\r\n\r\n let hasError = inputValue.hasError;\r\n if (inputValue.internalName === sharePointInternalFileName) {\r\n hasError = false;\r\n }\r\n else if (inputValue.xml?.Required === \"TRUE\" && value) {\r\n hasError = false;\r\n }\r\n\r\n return {\r\n ...inputValue,\r\n hasError,\r\n value,\r\n extention\r\n }\r\n })),\r\n }\r\n }));\r\n\r\n setFileOptions(options);\r\n setSelectedFile((options as any[])[0]);\r\n setFieldsLoaded(true);\r\n }\r\n else {\r\n const selectedOption = fileOptions.find(x => x.isSelectedFile);\r\n setSelectedFile(selectedOption ? selectedOption : (fileOptions as any[])[0]);\r\n setFieldsLoaded(true);\r\n }\r\n }\r\n\r\n const onPanelCLose = () => {\r\n generalModule.setIsMultiMetaFileUpdatePanelOpen(false);\r\n closePanel();\r\n }\r\n\r\n const updateSharepointMetadataToSave = (metadata: SharePointInputData[], informationProtectionId: string, changedIndex?: number) => {\r\n try {\r\n if (changedIndex !== undefined) {\r\n const changedInput = metadata.find(x => x.index === changedIndex);\r\n if (changedInput?.internalName === sharePointInternalFileName) {\r\n setUpdatedName(changedInput.value);\r\n }\r\n }\r\n\r\n const newFileOptions = fileOptions.map(option => {\r\n if (selectedFile && selectedFile?.key === option.key) {\r\n return {\r\n ...option,\r\n isModified: true,\r\n fileInputValues: metadata.map(inputValue => {\r\n let value = inputValue.value;\r\n\r\n return {\r\n ...inputValue,\r\n value\r\n }\r\n })\r\n }\r\n }\r\n\r\n return {\r\n ...option\r\n }\r\n });\r\n\r\n setFileOptions(newFileOptions);\r\n } catch (error) {\r\n logger(error, \"CMMultipleFilesMetaDataPanel.tsx (updateSharepointMetadataToSave)\");\r\n }\r\n };\r\n\r\n const checkFileForDuplicates = async (updatedName?: string) => {\r\n if (selectedFileRef.current?.file) {\r\n try {\r\n const file: IFileToUpload = { ...selectedFileRef.current.file, name: updatedName ? updatedName : selectedFileRef.current.file.name };\r\n\r\n let preCommitResult: IFilePreCommitResult;\r\n if (!file.isFolder && !file.parentFolderId) {\r\n\r\n let dest: string;\r\n if (currentDirectory?.isTeamsRootFolder && !currentDirectory.parentId) {\r\n dest = await getDriveRootWebUrl(currentDirectory.id);\r\n }\r\n else {\r\n dest = `${currentDirectory.webUrl}/${currentDirectory.directory}`;\r\n }\r\n\r\n preCommitResult = await getFilePreCommitInfo({\r\n accessToken: await authModule.getSharePointAccessToken(),\r\n destinationUrl: dest,\r\n siteUrl: currentDirectory.webUrl,\r\n fileName: (file.isMainMailItem && convertEmailToPDF) || (saveMode === SaveMode.SaveAsPdf && file.canSaveAsPDF) ? `${file.name}.pdf` : `${file.name}.${file.extension}`,\r\n autoFolderCreation: !(new FolderView(siteInfo, currentDirectory).canViewFolder())\r\n });\r\n }\r\n\r\n if (!preCommitResult) {\r\n preCommitResult = { exists: false, checkedOut: false, checkedOutBy: null, locked: false, lockedBy: null };\r\n }\r\n\r\n const fileToSet: IFileToUpload = {\r\n ...file,\r\n isDuplicate: preCommitResult.exists,\r\n filePreCommitResult: preCommitResult\r\n }\r\n\r\n dispatch(setFile(fileToSet));\r\n\r\n const updatedFileOptions = fileOptions.map(option => {\r\n if (selectedFileRef.current.key === option.key) {\r\n return {\r\n ...option,\r\n fileInputValues: option.fileInputValues.map(inputValue => {\r\n return {\r\n ...inputValue,\r\n hasError: (inputValue.internalName === sharePointInternalFileName && preCommitResult.exists) ? true : inputValue.hasError,\r\n errorMessage: (inputValue.internalName === sharePointInternalFileName && preCommitResult.exists) ? languageStrings.FileSameName : inputValue.errorMessage,\r\n }\r\n }),\r\n file: fileToSet,\r\n name: fileToSet.name,\r\n text: fileToSet.name\r\n }\r\n }\r\n\r\n return {\r\n ...option\r\n }\r\n });\r\n\r\n setSelectedFile(updatedFileOptions.find(x => x.key === selectedFileRef.current.key));\r\n setFileOptions(updatedFileOptions);\r\n }\r\n catch (error) {\r\n logger(error, \"CMMultipleFilesMetaDataPanel.tsx (checkFileNamesForDuplicates)\");\r\n }\r\n }\r\n setCheckForDuplicates(false);\r\n setVerifyingFiles(false);\r\n }\r\n\r\n const onFileChange = (event: React.FormEvent, selectedOption?: FileOption, index?: number) => {\r\n const newFileOptions = fileOptions.map(option => {\r\n return {\r\n ...option,\r\n isSelectedFile: selectedOption.key === option.key ? true : false,\r\n }\r\n })\r\n setFileOptions(newFileOptions);\r\n\r\n const option = newFileOptions.find(x => x.key === selectedOption.key);\r\n setSelectedFile(option);\r\n setUpdatedName(option.file.name);\r\n }\r\n\r\n const setSelectedIndividualFile = (selectedIndividualFile: FileOption) => {\r\n setSelectedFile(selectedIndividualFile);\r\n\r\n setFileOptions(fileOptions.map(fileOption => {\r\n if (fileOption.key === selectedIndividualFile.key) {\r\n return {\r\n ...selectedIndividualFile,\r\n isModified: true\r\n }\r\n }\r\n\r\n return { ...fileOption }\r\n }));\r\n }\r\n\r\n const isSaveAllFilesButtonDisabled = React.useMemo(() => {\r\n if (verifyingFiles || isBusySaving || selectedFile?.isSaving) {\r\n return true;\r\n }\r\n\r\n if (currentSharepointFolder.userPermissions?.canEditListItem === false) {\r\n setSaveAllFilesDisabledTooltip(languageStrings.WrongUserPermissionsUpdate);\r\n return true;\r\n }\r\n\r\n if (selectedFile?.file?.isDuplicate && !selectedFile?.canOverwrite) {\r\n setSaveAllFilesDisabledTooltip(languageStrings.OverwriteRequired);\r\n return true;\r\n }\r\n\r\n let isDisabled = false;\r\n fileOptions.forEach(fileOption => {\r\n if (!isDisabled && fileOption?.file?.isDuplicate && !fileOption?.canOverwrite) {\r\n isDisabled = true;\r\n }\r\n });\r\n\r\n setSaveAllFilesDisabledTooltip(isDisabled ? languageStrings.OverwriteRequired : \"\");\r\n return isDisabled;\r\n }, [currentSharepointFolder, selectedFile, fileOptions, verifyingFiles, isBusySaving]);\r\n\r\n const isSaveFileButtonDisabled = React.useMemo(() => {\r\n if (verifyingFiles || isBusySaving) {\r\n return true;\r\n }\r\n\r\n if (currentSharepointFolder.userPermissions?.canEditListItem === false) {\r\n setSaveFileDisabledTooltip(languageStrings.WrongUserPermissionsUpdate);\r\n return true;\r\n }\r\n\r\n setSaveFileDisabledTooltip(\"\");\r\n return false;\r\n }, [currentSharepointFolder, selectedFile, verifyingFiles, isBusySaving])\r\n\r\n const onRenderOption = (option: FileOption): JSX.Element => {\r\n return (\r\n \r\n \r\n \r\n {option.text}\r\n \r\n \r\n );\r\n };\r\n\r\n const onRenderTitle = (options: FileOption[]): JSX.Element => {\r\n const option = options?.length > 0 && options[0];\r\n return (\r\n \r\n \r\n \r\n {option?.text}\r\n \r\n \r\n );\r\n };\r\n\r\n const onRenderFooterContent = React.useCallback(\r\n () => (\r\n \r\n {canConvertToPDF\r\n && setSaveMode(checked ? SaveMode.SaveAsPdf : SaveMode.Default)}\r\n />}\r\n \r\n {\r\n saveFiles(saveMode, undefined, selectionOpen, files.some(x => x.parentFolderId));\r\n setSelectionOpen(false);\r\n }}\r\n text={verifyingFiles ? languageStrings.VerifyingFiles : savingButtonProps?.text}\r\n >\r\n {isBusy && }\r\n \r\n \r\n \r\n ),\r\n [saveAllFilesDisabledTooltip, isSaveAllFilesButtonDisabled, verifyingFiles, saveFileDisabledTooltip, isSaveFileButtonDisabled, selectedFile, isBusy, selectionOpen, saveMode, savingButtonProps, files],\r\n );\r\n\r\n return (\r\n onPanelCLose()}\r\n isLightDismiss={false}\r\n closeButtonAriaLabel=\"Close\"\r\n type={generalModule.isInConentMangerMode() ? PanelType.custom : PanelType.smallFluid}\r\n customWidth={generalModule.isInConentMangerMode() ? '350px' : undefined}\r\n styles={panelCssStyles}\r\n onRenderFooterContent={onRenderFooterContent}\r\n isFooterAtBottom={true}\r\n >\r\n {selectionOpen &&
\r\n {spHasDuplicateFiles && { onCancel(selectedFile); setSelectionOpen(false); }} />}\r\n {showSelectVersion && { onCancel(selectedFile); setSelectionOpen(false); }} labelFontSize={16} paddingTop={0} paddingLeft={0} />}\r\n
}\r\n \r\n \r\n {selectedFile?.isSaving === true &&\r\n \r\n \r\n {`${languageStrings.SavingFiles}...`}\r\n \r\n \r\n }\r\n {selectedFile?.savingSuccess === true && {languageStrings.FileSaveSuccessSingle}}\r\n {selectedFile?.savingError === true && {languageStrings.ErrorMessageGeneric}}\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n )\r\n}","import { CommandBarButton, DetailsList, IBasePickerSuggestionsProps, IButtonStyles, IColumn, ICommandBarItemProps, ICommandBarStyles, Icon, IContextualMenuItem, IIconProps, IPanelStyles, IPersonaProps, IRenderFunction, IStackItemStyles, Label, mergeStyles, NormalPeoplePicker, Panel, PanelType, Persona, PersonaSize, PrimaryButton, ScrollablePane, ScrollbarVisibility, SelectionMode, Spinner, SpinnerSize, Stack, StackItem } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { IGraphGetUsersRequest, IGraphGetUsersResponse } from \"../../src/taskpane/components/_v2/redux/api/graph/api-graph-interfaces\";\r\nimport { useLazyGetGroupsQuery, useLazyGetUsersQuery } from \"../../src/taskpane/components/_v2/redux/api/graph/api-graph-slice\";\r\nimport { useLazyAddUsersToGroupQuery, useLazyBreakRoleInheritanceOfListQuery, useLazyDeleteLibraryCurrentRoleForGroupQuery } from \"../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { CMErrorModal } from \"./CMErrorModal\";\r\n\r\nexport const panelActionButtonStyle: Partial = {\r\n root: {\r\n marginTop: 20,\r\n }\r\n }\r\n\r\nexport const scrollStyle = mergeStyles({\r\n position: \"relative\",\r\n height: \"calc(100vh - 145px)\",\r\n marginTop: 5,\r\n marginBottom: 10\r\n});\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 5,\r\n paddingRight: 5\r\n },\r\n navigation: {\r\n justifyContent: \"space-between\",\r\n marginTop: 5\r\n }\r\n}\r\n\r\nexport interface PersonaUser extends IPersonaProps {\r\n role?: string;\r\n roleId?: number;\r\n groupTitle?: string;\r\n userId?: number;\r\n userGuid?: string;\r\n groupId?: number;\r\n loginName?: string;\r\n email?: string;\r\n userType?: string;\r\n roleAssignment?: any;\r\n roleDefinitionId?: number;\r\n canEdit?: boolean;\r\n canRemoveFromGroup?: boolean;\r\n isGroup?: boolean;\r\n}\r\n\r\nexport interface ICMPermissionsAddMembersPanelProps {\r\n panelIsOpen: boolean;\r\n closePanel: () => void;\r\n closeOnSuccess: () => void;\r\n isInOneDrive: boolean;\r\n groupsUsers: PersonaUser[];\r\n sharePointListId?: string;\r\n roleAssignments: any[];\r\n roleDefinitions: any[];\r\n\r\n}\r\n\r\nexport const CMPermissionsAddMembersPanel = ({ panelIsOpen, closePanel, closeOnSuccess, roleAssignments, roleDefinitions, isInOneDrive, groupsUsers, sharePointListId }: ICMPermissionsAddMembersPanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n\r\n const picker = React.useRef(null);\r\n\r\n const [getUsers] = useLazyGetUsersQuery();\r\n const [getGroups] = useLazyGetGroupsQuery();\r\n \r\n const [addUsersToGroup] = useLazyAddUsersToGroupQuery();\r\n const [breakRoleInheritanceOfList] = useLazyBreakRoleInheritanceOfListQuery();\r\n\r\n const [selectedUsers, setSelectedUsers] = React.useState([]);\r\n const [columns, setColumns] = React.useState([]);\r\n const [isAddingUsers, setIsAddingUsers] = React.useState(false);\r\n const [isCMErrorModalOpen, setIsCMErrorModalOpen] = React.useState(false);\r\n const [errorMessage, setErrorMessage] = React.useState('');\r\n\r\n const suggestionProps: IBasePickerSuggestionsProps = {\r\n noResultsFoundText: languageStrings.GenericNoResultsFoundText,\r\n loadingText: languageStrings.Loading,\r\n };\r\n\r\n React.useEffect(() => {\r\n setColumns([\r\n {\r\n key: 'name',\r\n name: languageStrings.Name,\r\n minWidth: 200,\r\n maxWidth: 200,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n return (\r\n \r\n )\r\n }\r\n },\r\n {\r\n key: 'role',\r\n name: \"\",\r\n minWidth: 30,\r\n maxWidth: 30,\r\n isResizable: false,\r\n onRender: (item: any) => {\r\n return (\r\n \r\n \r\n \r\n \r\n\r\n \r\n )\r\n }\r\n }\r\n ]);\r\n }, [selectedUsers, isAddingUsers])\r\n\r\n const getRoleOptions = (item: PersonaUser) => {\r\n const options: IContextualMenuItem[] = [];\r\n\r\n if (!item.isGroup) {\r\n roleAssignments.forEach(role => {\r\n if (role.Member.PrincipalType === 8) {\r\n options.push(\r\n {\r\n key: role.PrincipalId,\r\n text: role.Member.Title,\r\n //isChecked: true,\r\n onClick: () => {\r\n setSelectedUsers(selectedUsers.map(user => {\r\n if (user.secondaryText === item.secondaryText) {\r\n return {\r\n ...user,\r\n role: role.Member.Title,\r\n groupId: role.PrincipalId,\r\n roleDefinitionId: null\r\n };\r\n } else {\r\n return user\r\n }\r\n }));\r\n }\r\n }\r\n )\r\n }\r\n });\r\n }\r\n\r\n roleDefinitions?.filter(x => x.Hidden === false).forEach(roledef => {\r\n options.push(\r\n {\r\n key: roledef.Id,\r\n text: roledef.Name,\r\n //isChecked: true,\r\n onClick: () => {\r\n setSelectedUsers(selectedUsers.map(user => {\r\n if (user.secondaryText === item.secondaryText) {\r\n return {\r\n ...user,\r\n role: roledef.Name,\r\n roleDefinitionId: roledef.Id,\r\n groupId: null\r\n };\r\n } else {\r\n return user\r\n }\r\n }));\r\n }\r\n }\r\n )\r\n\r\n\r\n });\r\n\r\n options.push(\r\n {\r\n key: 'remove',\r\n text: languageStrings.Remove, onClick: () => {\r\n setSelectedUsers(selectedUsers.filter(x => x.secondaryText !== item.secondaryText).map(user => {\r\n return user;\r\n }))\r\n }\r\n });\r\n\r\n return options;\r\n }\r\n\r\n const onGetUsers = async (filterText: string) => {\r\n const request: IGraphGetUsersRequest = {\r\n filter: filterText,\r\n orderby: 'displayName',\r\n select: 'id, displayName, mail'\r\n }\r\n\r\n try {\r\n const results = await getUsers({request, accessToken: await authModule.getGraphAccessToken()}).unwrap();\r\n\r\n return results.value\r\n } catch (error) {\r\n logger(error, \"CMPermissionsAddMembersPanel.tsx (onGetUsers)\");\r\n }\r\n }\r\n\r\n const onGetGroups = async (filterText: string) => {\r\n const request: IGraphGetUsersRequest = {\r\n filter: filterText,\r\n orderby: 'displayName',\r\n select: 'id, displayName, mail'\r\n }\r\n\r\n try {\r\n const results = await getGroups({ request, accessToken: await authModule.getGraphAccessToken() }).unwrap();\r\n\r\n return results.value\r\n } catch (error) {\r\n logger(error, \"CMPermissionsAddMembersPanel.tsx (onGetGroups)\");\r\n return [];\r\n }\r\n }\r\n\r\n const onFilterChanged = async (filterText: string) => {\r\n if (filterText) {\r\n const [users, groups] = await Promise.all([\r\n onGetUsers(filterText),\r\n onGetGroups(filterText),\r\n ]);\r\n \r\n const personas: PersonaUser[] = [];\r\n const editRoleDef = roleDefinitions.find(x => x.Id === 1073741830);\r\n\r\n (groups as IGraphGetUsersResponse[]).forEach(group => {\r\n if (!selectedUsers.some(x => x.userGuid === group.id)) {\r\n personas.push({\r\n text: `${group.displayName} (${languageStrings.Group.toLowerCase()})`,\r\n secondaryText: group.mail ? group.mail : languageStrings.NoEmailAvailable,\r\n tertiaryText: editRoleDef?.Name,\r\n role: editRoleDef?.Name,\r\n roleDefinitionId: editRoleDef?.Id,\r\n userId: 0,\r\n loginName: '',\r\n email: group.mail,\r\n userGuid: group.id,\r\n isGroup: true\r\n })\r\n }\r\n });\r\n\r\n (users as IGraphGetUsersResponse[]).forEach(user => {\r\n if (!selectedUsers.some(x => x.email === user.id)) {\r\n personas.push({\r\n text: user.displayName,\r\n secondaryText: user.mail,\r\n tertiaryText: editRoleDef?.Name,\r\n role: editRoleDef?.Name,\r\n roleDefinitionId: editRoleDef?.Id,\r\n userId: 0,\r\n loginName: '',\r\n email: user.mail,\r\n userGuid: user.id,\r\n isGroup: false\r\n })\r\n }\r\n });\r\n\r\n return personas;\r\n }\r\n\r\n return [];\r\n };\r\n\r\n const onSelectedPersonasChange = (items: PersonaUser[]) => {\r\n if (items.length > 0) {\r\n const copyOfMembers = [...selectedUsers];\r\n copyOfMembers.push(items[0]);\r\n setSelectedUsers(copyOfMembers);\r\n }\r\n }\r\n\r\n const addUser = async (user?: PersonaUser) => {\r\n const accessToken = isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken();\r\n\r\n try {\r\n let res = await addUsersToGroup({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken,\r\n roleValue: user.groupId ? `group:${user.groupId}` : `role:${user.roleDefinitionId}`,\r\n users: [user],\r\n sharePointListId\r\n }).unwrap();\r\n\r\n if (res.StatusCode === -1) {\r\n res = await addUsersToGroup({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken,\r\n roleValue: user.groupId ? `group:${user.groupId}` : `role:${user.roleDefinitionId}`,\r\n users: [user],\r\n loginNameTypeOveride: 'c:0o.c|federateddirectoryclaimprovider',\r\n sharePointListId\r\n }).unwrap();\r\n }\r\n\r\n return res;\r\n } catch (error) {\r\n logger(error, \"CMPermissionsAddMembersPanel.tsx (addUser)\");\r\n }\r\n }\r\n\r\n return (\r\n closePanel()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"450px\"}\r\n styles={panelStyles}\r\n >\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n {selectedUsers?.length > 0 && }\r\n {selectedUsers?.length === 0 &&\r\n \r\n \r\n \r\n }\r\n
\r\n
\r\n
\r\n \r\n 1 ? 'PeopleAdd' : 'AddFriend' }}\r\n disabled={!(selectedUsers?.length > 0) || isAddingUsers}\r\n onClick={async () => {\r\n setIsAddingUsers(true);\r\n\r\n if (sharePointListId) {\r\n try {\r\n await breakRoleInheritanceOfList({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n sharePointListId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onMoveUserOrGroupRole(breakRoleInheritanceOfList))\");\r\n }\r\n }\r\n\r\n await Promise.all(selectedUsers.map(async user => {\r\n await addUser(user)\r\n }));\r\n\r\n setIsAddingUsers(false);\r\n closeOnSuccess();\r\n }}\r\n text={languageStrings.Add}\r\n >\r\n {isAddingUsers && }\r\n \r\n \r\n {isCMErrorModalOpen && setIsCMErrorModalOpen(false)}/>}\r\n\r\n \r\n )\r\n};\r\n\r\n","import { CommandBarButton, DetailsList, IColumn, IPanelStyles, Label, mergeStyles, Panel, PanelType, Persona, PersonaSize, ScrollablePane, ScrollbarVisibility, SearchBox, SelectionMode, Stack } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useLazyRemoveUserFromSiteGroupQuery } from \"../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { PersonaUser } from \"./CMPermissionsAddMembersPanel\";\r\n\r\nexport const scrollStyle = mergeStyles({\r\n position: \"relative\",\r\n height: \"calc(100vh - 160px)\",\r\n marginTop: 5,\r\n marginBottom: 10\r\n});\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 5,\r\n paddingRight: 5\r\n },\r\n navigation: {\r\n justifyContent: \"space-between\",\r\n marginTop: 5\r\n }\r\n}\r\n\r\n\r\n\r\nexport interface ICMPermissionsMemberListPanelProps {\r\n panelIsOpen: boolean;\r\n closePanel: () => void;\r\n roleAssignment: any;\r\n users: PersonaUser[];\r\n isInOneDrive: boolean;\r\n userDeleted: () => void;\r\n sharePointListId: string;\r\n}\r\n\r\nexport const CMPermissionsMemberListPanel = ({ panelIsOpen, closePanel, roleAssignment, users, isInOneDrive, userDeleted, sharePointListId }: ICMPermissionsMemberListPanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n\r\n const [selectedUsers, setSelectedUsers] = React.useState(users);\r\n const [filteredUsers, setFilteredUsers] = React.useState(users);\r\n const [busyRemovingUser, setBusyRemovingUser] = React.useState(false);\r\n\r\n const [columns, setColumns] = React.useState([]);\r\n\r\n const [removeUserFromSiteGroup] = useLazyRemoveUserFromSiteGroupQuery();\r\n\r\n React.useEffect(() => {\r\n setFilteredUsers(users);\r\n setSelectedUsers(users);\r\n setBusyRemovingUser(false);\r\n },[users]);\r\n\r\n React.useEffect(() => {\r\n const cols: IColumn[] = [{\r\n key: 'name',\r\n name: languageStrings.Name,\r\n minWidth: 250,\r\n maxWidth: 250,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n return (\r\n \r\n )\r\n }\r\n }];\r\n \r\n cols.push(\r\n {\r\n key: 'role',\r\n name: \"\",\r\n minWidth: 90,\r\n maxWidth: 90,\r\n isResizable: true,\r\n onRender: (item: PersonaUser) => {\r\n return (\r\n <>\r\n \r\n \r\n 0)}\r\n menuProps={{\r\n items: [\r\n {\r\n key: 'remove',\r\n text: languageStrings.Remove, onClick: () => {\r\n onRemoveUserFromSiteGroup(item);\r\n }\r\n }\r\n ]\r\n }}\r\n />\r\n \r\n \r\n \r\n\r\n )\r\n }\r\n }\r\n )\r\n\r\n setColumns(cols)\r\n\r\n }, [busyRemovingUser, filteredUsers, sharePointListId])\r\n\r\n const filterTextChanged = (event: React.FormEvent, filter?: string) => {\r\n if (filter?.length > 0) {\r\n setFilteredUsers(selectedUsers.filter(x => (x.text?.toLowerCase().includes(filter?.toLowerCase()) || x.secondaryText?.toLowerCase().includes(filter?.toLowerCase()) || x.tertiaryText?.toLowerCase().includes(filter?.toLowerCase()))))\r\n } else {\r\n setFilteredUsers(selectedUsers);\r\n }\r\n }\r\n\r\n const onRemoveUserFromSiteGroup = async (item: PersonaUser) => {\r\n setBusyRemovingUser(true);\r\n try {\r\n await removeUserFromSiteGroup({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n groupId: item.groupId,\r\n userId: item.userId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsMemberListPanel.tsx (onRemoveUserFromSiteGroup)\");\r\n }\r\n userDeleted();\r\n }\r\n\r\n return (\r\n closePanel()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"450px\"}\r\n styles={panelStyles}\r\n >\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n {selectedUsers?.length > 0 && }\r\n {filteredUsers?.length === 0 &&\r\n \r\n \r\n \r\n }\r\n
\r\n
\r\n
\r\n \r\n )\r\n};\r\n\r\n","import { CommandBar, CommandBarButton, DefaultButton, DetailsList, IColumn, ICommandBarItemProps, ICommandBarStyles, IContextualMenuItem, IIconProps, IPanelStyles, Label, Link, mergeStyles, Panel, PanelType, Persona, PersonaSize, ScrollablePane, ScrollbarVisibility, SearchBox, SelectionMode, Spinner, SpinnerSize, Stack, Text, TooltipHost } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport Loader from \"../../src/taskpane/components/Loader\";\r\nimport { useLazyAddLibraryCurrentRoleForGroupQuery, useLazyBreakRoleInheritanceOfListQuery, useLazyDeleteLibraryCurrentRoleForGroupQuery, useLazyGetRoleDefinitionsQuery, useLazyGetSecurityGroupMembersOwnersQuery, useLazyGetSiteRoleAssignmentsQuery, useLazyRemoveUserFromSiteGroupQuery } from \"../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { ComponentTypes } from \"../../src/taskpane/config/config\";\r\nimport { currentSharepointFolderUserPermissions } from \"../../src/taskpane/redux/models/reduxModels\";\r\nimport { getUserEffectivePermissions } from \"../../src/taskpane/services/SharePointRestServices\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { usePopUpAuth } from \"../Hooks/usePopUpAuth\";\r\nimport { CMErrorModal } from \"./CMErrorModal\";\r\nimport { CMPermissionsAddMembersPanel, PersonaUser } from \"./CMPermissionsAddMembersPanel\";\r\nimport { CMPermissionsMemberListPanel } from \"./CMPermissionsMemberListPanel\";\r\n\r\nexport const scrollStyle = mergeStyles({\r\n position: \"relative\",\r\n height: \"calc(100vh - 160px)\",\r\n});\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 5,\r\n paddingRight: 5\r\n },\r\n navigation: {\r\n justifyContent: \"space-between\",\r\n marginTop: 5\r\n }\r\n}\r\n\r\nconst commandBarStyle: Partial = {\r\n root: {\r\n borderTop: '1px solid rgb(237, 235, 233);',\r\n borderBottom: '1px solid rgb(237, 235, 233);',\r\n paddingLeft: 0,\r\n paddingRight: 10,\r\n paddingBottom: 3,\r\n paddingTop: 3\r\n }\r\n};\r\n\r\nconst addMembersIconProps: IIconProps = { iconName: \"PeopleAdd\" };\r\n\r\nexport interface ICMPermissionsPanelProps {\r\n panelIsOpen: boolean;\r\n sharePointListId?: string;\r\n closePanel: () => void;\r\n}\r\n\r\nexport const CMPermissionsPanel = ({ panelIsOpen, sharePointListId, closePanel }: ICMPermissionsPanelProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n\r\n const [commandItems, setCommandItems] = React.useState();\r\n const [isPermissionsAddMambersPanelOpen, setIsPermissionsAddMambersPanelOpen] = React.useState(false);\r\n const [groupsUsers, setGroupsUsers] = React.useState([]);\r\n const [filteredUsers, setFilteredUsers] = React.useState([]);\r\n const [columns, setColumns] = React.useState([]);\r\n const [reloadUsers, setReloadUsers] = React.useState(false);\r\n const [isLoadingUsers, setIsLoadingUsers] = React.useState(true);\r\n const [roleAssignments, setRoleAssignments] = React.useState([])\r\n const [busyChangingUserRole, setBusyChangingUserRole] = React.useState(false);\r\n const [busyRemovingUser, setBusyRemovingUser] = React.useState(false);\r\n const [firstLoad, setFirstLoad] = React.useState(true);\r\n const [isPermissionsMemberListPanelOpen, setIsPermissionsMemberListPanelOpen] = React.useState(true);\r\n const [selectedRoleAssignment, setSelectedRoleAssignment] = React.useState();\r\n const [roleDefinitions, setRoleDefinitions] = React.useState([]);\r\n const [groupsAndUsers, setGroupsAndUsers] = React.useState([]);\r\n const [userPermissions, setUserPermissions] = React.useState();\r\n const [isCMErrorModalOpen, setIsCMErrorModalOpen] = React.useState(false);\r\n const [errorMessage, setErrorMessage] = React.useState('');\r\n\r\n const isInOneDrive = React.useRef(false);\r\n\r\n const [getSiteRoleAssignments] = useLazyGetSiteRoleAssignmentsQuery();\r\n const [breakRoleInheritanceOfList] = useLazyBreakRoleInheritanceOfListQuery();\r\n const [deleteLibraryCurrentRoleForGroup] = useLazyDeleteLibraryCurrentRoleForGroupQuery();\r\n const [addLibraryCurrentRoleForGroup] = useLazyAddLibraryCurrentRoleForGroupQuery();\r\n const [getRoleDefinitions] = useLazyGetRoleDefinitionsQuery();\r\n const [getSecurityGroupMembersOwners] = useLazyGetSecurityGroupMembersOwnersQuery();\r\n const [removeUserFromSiteGroup] = useLazyRemoveUserFromSiteGroupQuery();\r\n\r\n const { isSharePointAdminTokenAvailable, isSharePointAdminTokenRequestInProgress, requestSharePointAdminToken } = usePopUpAuth();\r\n\r\n React.useEffect(() => {\r\n if (currentDirectory) {\r\n isInOneDrive.current = currentDirectory?.type == ComponentTypes.OneDrive || currentDirectory?.type == ComponentTypes.OneDriveSubFolder;\r\n }\r\n }, [currentDirectory?.type]);\r\n\r\n React.useEffect(() => {\r\n if (isSharePointAdminTokenAvailable) {\r\n (async () => {\r\n const userPerms = await getUserEffectivePermissions(\r\n await authModule.getSharePointAccessToken(),\r\n currentDirectory?.webUrl,\r\n sharePointListId\r\n );\r\n if (userPerms?.canEnumeratePermissions || userPerms?.canManagePermissions) {\r\n setUserPermissions(userPerms);\r\n setReloadUsers(true);\r\n }\r\n })();\r\n }\r\n }, [isSharePointAdminTokenAvailable]);\r\n\r\n React.useEffect(() => {\r\n if (roleAssignments?.length > 0) {\r\n const _usersAndGroups: PersonaUser[] = [];\r\n (async () => {\r\n await Promise.all(\r\n roleAssignments.map(async role => {\r\n const roleUsers = role.Member.Users ? role.Member.Users.filter(x => x.LoginName !== 'SHAREPOINT\\\\system' && ((x.IsHiddenInUI === false && x.PrincipalType !== 4) || (x.PrincipalType === 4))) : [];\r\n\r\n const groupItem = {\r\n text: role.Member.Title,\r\n secondaryText: role.Member.Email,\r\n tertiaryText: role.Member.PrincipalType === 4 ? languageStrings.Group : role?.Member.Email,\r\n role: role?.RoleDefinitionBindings[0]?.Name,\r\n userId: role.Member.Id,\r\n loginName: role.Member.LoginName,\r\n email: role.Member.Email,\r\n groupId: role.PrincipalId,\r\n roleDefinitionId: role.RoleDefinitionBindings[0].Id,\r\n roleAssignment: role,\r\n canEdit: true\r\n }\r\n\r\n const tempUsers: PersonaUser[] = [];\r\n\r\n //if (role.Member.PrincipalType !== 4) {\r\n if (roleUsers.length > 0) {\r\n await Promise.all(\r\n roleUsers.map(async user => {\r\n if (user.PrincipalType === 4 && user.Email) {\r\n const userLoginNameParts = user.LoginName?.split('|');\r\n\r\n let groupGuid = userLoginNameParts[2] as string;\r\n let userType = \"members\"\r\n\r\n if (groupGuid.includes('_o')) {\r\n groupGuid = groupGuid.replace('_o', '');\r\n userType = \"owners\";\r\n }\r\n\r\n try {\r\n const securityUsers = await getSecurityGroupMembersOwners({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n groupGuid,\r\n userType\r\n }).unwrap();\r\n\r\n securityUsers.value.forEach(secUser => {\r\n tempUsers.push({\r\n text: secUser.displayName,\r\n secondaryText: secUser.mail,\r\n tertiaryText: `${user.Title} (${userType === 'owners' ? `${languageStrings.Owner}` : `${languageStrings.Member}`})`,\r\n groupId: role.PrincipalId,\r\n canEdit: false,\r\n role: role?.RoleDefinitionBindings[0]?.Name,\r\n });\r\n });\r\n\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (ExpandSecurityGroupUsers(User))\");\r\n }\r\n\r\n } else {\r\n tempUsers.push({\r\n text: user.Title,\r\n secondaryText: user.Email,\r\n role: role?.RoleDefinitionBindings[0]?.Name,\r\n tertiaryText: `${role.Member.Title}`,\r\n groupId: role.PrincipalId,\r\n canEdit: false,\r\n canRemoveFromGroup: role.Member.PrincipalType === 8 ? true : false,\r\n userId: user.Id,\r\n });\r\n }\r\n\r\n })\r\n )\r\n\r\n }\r\n // }\r\n // else {\r\n // try {\r\n // const userLoginNameParts = role.Member.LoginName?.split('|');\r\n\r\n // let groupGuid = userLoginNameParts[2] as string;\r\n // let userType = \"members\"\r\n\r\n // if (groupGuid.includes('_o')) {\r\n // groupGuid = groupGuid.replace('_o', '');\r\n // userType = \"owners\";\r\n // } \r\n\r\n // const securityUsers = await getSecurityGroupMembersOwners({\r\n // siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n // accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n // groupGuid,\r\n // userType\r\n // }).unwrap();\r\n\r\n // securityUsers.value.forEach(secUser => {\r\n // tempUsers.push({\r\n // text: secUser.displayName,\r\n // secondaryText: secUser.mail,\r\n // tertiaryText: `${role.Member.Title} (${userType === 'owners' ? `${languageStrings.Owner}` : `${languageStrings.Member}`})`,\r\n // groupId: role.PrincipalId,\r\n // canEdit: false\r\n // });\r\n // }); \r\n\r\n // } catch (error) {\r\n // logger(error, \"CMPermissionsPanel.tsx (ExpandSecurityGroupUsers(Group))\");\r\n // }\r\n // }\r\n\r\n\r\n groupItem.tertiaryText = tempUsers.length > 0 ? `${tempUsers.length} ${tempUsers.length > 1 ? `${languageStrings.Members}` : `${languageStrings.Member}`}` : groupItem.tertiaryText;\r\n\r\n _usersAndGroups.push(groupItem);\r\n tempUsers.forEach(tempUser => {\r\n _usersAndGroups.push(tempUser);\r\n });\r\n })\r\n )\r\n\r\n\r\n setGroupsAndUsers(_usersAndGroups);\r\n\r\n setGroupsUsers(_usersAndGroups.filter(x => x.roleAssignment));\r\n setFilteredUsers(_usersAndGroups.filter(x => x.roleAssignment));\r\n setIsLoadingUsers(false);\r\n setFirstLoad(false);\r\n setReloadUsers(false);\r\n })()\r\n }\r\n\r\n }, [roleAssignments]);\r\n\r\n React.useEffect(() => {\r\n if (isSharePointAdminTokenAvailable && reloadUsers === true) {\r\n (async () => {\r\n if (firstLoad) {\r\n setIsLoadingUsers(true);\r\n }\r\n\r\n try {\r\n const [_roleAssignments, roleDefs] = await Promise.all([\r\n getSiteRoleAssignments({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n sharePointListId\r\n }).unwrap(),\r\n getRoleDefinitions({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken()\r\n }).unwrap()\r\n ]);\r\n\r\n setRoleAssignments(_roleAssignments.value);\r\n setRoleDefinitions(roleDefs.value);\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (getSiteRoleAssignments, getRoleDefinitions)\");\r\n }\r\n })()\r\n }\r\n }, [isSharePointAdminTokenAvailable, reloadUsers]);\r\n\r\n React.useEffect(() => {\r\n const items: ICommandBarItemProps[] = [];\r\n\r\n items.push({\r\n key: \"addUsers\",\r\n text: languageStrings.MembersAdd,\r\n disabled: busyChangingUserRole || busyRemovingUser || isLoadingUsers || userPermissions.canManagePermissions === false,\r\n iconProps: addMembersIconProps,\r\n onClick: () => {\r\n setIsPermissionsAddMambersPanelOpen(true)\r\n },\r\n })\r\n\r\n if (busyChangingUserRole) {\r\n items.push({\r\n key: \"changingUser\",\r\n text: languageStrings.UserChangingRole,\r\n disabled: true,\r\n onRenderIcon: () => {\r\n return \r\n }\r\n })\r\n }\r\n\r\n if (busyRemovingUser) {\r\n items.push({\r\n key: \"removingIndicator\",\r\n text: languageStrings.UserRemove,\r\n disabled: true,\r\n onRenderIcon: () => {\r\n return \r\n }\r\n })\r\n }\r\n\r\n setCommandItems(items);\r\n }, [busyChangingUserRole, busyRemovingUser, isLoadingUsers, userPermissions]);\r\n\r\n const onRenderSecondaryText = (item: any) => {\r\n return (\r\n <>\r\n {item.roleAssignment?.Member?.Users?.length > 0 && { setIsPermissionsMemberListPanelOpen(true); setSelectedRoleAssignment(roleAssignments.find(x => x.PrincipalId === item.groupId)) }}>{item.tertiaryText}}\r\n {item.roleAssignment?.Member?.Users?.length === 0 && No members}\r\n {!item.roleAssignment?.Member?.Users && {item.tertiaryText}}\r\n \r\n )\r\n }\r\n\r\n React.useEffect(() => {\r\n const cols: IColumn[] = [{\r\n key: 'name',\r\n name: languageStrings.Name,\r\n minWidth: 250,\r\n maxWidth: 250,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n return (\r\n onRenderSecondaryText(item)}\r\n tertiaryText={item.secondaryText}\r\n size={PersonaSize.size40}\r\n />\r\n )\r\n }\r\n }];\r\n\r\n cols.push(\r\n {\r\n key: 'role',\r\n name: \"\",\r\n minWidth: 90,\r\n maxWidth: 90,\r\n isResizable: true,\r\n onRender: (item: PersonaUser) => {\r\n return (\r\n <>\r\n \r\n \r\n 0)}\r\n menuProps={{\r\n items: getRoleOptions(item)\r\n }}\r\n />\r\n \r\n \r\n \r\n\r\n )\r\n }\r\n }\r\n )\r\n\r\n setColumns(cols);\r\n }, [filteredUsers, busyChangingUserRole, busyRemovingUser, sharePointListId])\r\n\r\n const getRoleOptions = (item: PersonaUser) => {\r\n const options: IContextualMenuItem[] = [];\r\n\r\n if (item.canEdit) {\r\n roleDefinitions?.filter(x => x.Hidden === false).forEach(roledef => {\r\n options.push(\r\n {\r\n key: roledef.Id,\r\n text: roledef.Name,\r\n canCheck: true,\r\n isChecked: item.tertiaryText === roledef.Name,\r\n disabled: item.tertiaryText === roledef.Name,\r\n onClick: () => {\r\n onMoveUserOrGroupRole(item, roledef.Id)\r\n }\r\n }\r\n )\r\n });\r\n }\r\n\r\n\r\n if (item.canRemoveFromGroup || item.roleAssignment?.Member?.PrincipalType === 1 || item.roleAssignment?.Member?.PrincipalType === 4) {\r\n options.push(\r\n {\r\n key: 'remove',\r\n text: languageStrings.Remove, onClick: () => {\r\n onRemoveUserFromSiteGroup(item);\r\n }\r\n });\r\n }\r\n\r\n return options;\r\n }\r\n\r\n const onMoveUserOrGroupRole = async (item: PersonaUser, newRoleDefinitionId: number) => {\r\n setBusyChangingUserRole(true);\r\n if (sharePointListId) {\r\n try {\r\n await breakRoleInheritanceOfList({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n sharePointListId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onMoveUserOrGroupRole(breakRoleInheritanceOfList))\");\r\n }\r\n }\r\n\r\n try {\r\n await Promise.all([\r\n deleteLibraryCurrentRoleForGroup({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n userId: item.userId,\r\n sharePointListId,\r\n roleDefId: item.roleDefinitionId\r\n }).unwrap(),\r\n addLibraryCurrentRoleForGroup({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n userId: item.userId,\r\n sharePointListId,\r\n roleDefId: newRoleDefinitionId\r\n }).unwrap(),\r\n ])\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onMoveUserOrGroupRole(deleteLibraryCurrentRoleForGroup, addLibraryCurrentRoleForGroup))\");\r\n\r\n setErrorMessage(error.data['odata.error']['message']['value']);\r\n setIsCMErrorModalOpen(true);\r\n }\r\n\r\n setBusyChangingUserRole(false);\r\n setReloadUsers(true);\r\n }\r\n\r\n const onRemoveUserFromSiteGroup = async (item: PersonaUser) => {\r\n setBusyRemovingUser(true);\r\n\r\n if (sharePointListId) {\r\n try {\r\n await breakRoleInheritanceOfList({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n sharePointListId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onRemoveUserFromSiteGroup(breakRoleInheritanceOfList))\");\r\n }\r\n\r\n try {\r\n const roleDefId = roleAssignments.find(x => x.PrincipalId === item.groupId)?.RoleDefinitionBindings[0]?.Id\r\n await deleteLibraryCurrentRoleForGroup({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n userId: item.userId,\r\n sharePointListId,\r\n roleDefId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onRemoveUserFromSiteGroup(deleteLibraryCurrentRoleForGroup(if)))\");\r\n }\r\n } else {\r\n if (item.canRemoveFromGroup) {\r\n try {\r\n await removeUserFromSiteGroup({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n groupId: item.groupId,\r\n userId: item.userId\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onRemoveUserFromSiteGroup(removeUserFromSiteGroup(else)))\");\r\n }\r\n }\r\n else {\r\n try {\r\n await deleteLibraryCurrentRoleForGroup({\r\n siteUrl: isInOneDrive.current ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n accessToken: isInOneDrive.current ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAdminAccessToken(),\r\n userId: item.userId,\r\n sharePointListId,\r\n roleDefId: item.roleDefinitionId\r\n }).unwrap();\r\n\r\n } catch (error) {\r\n logger(error, \"CMPermissionsPanel.tsx (onRemoveUserFromSiteGroup(deleteLibraryCurrentRoleForGroup(else)))\");\r\n\r\n setErrorMessage(error.data['odata.error']['message']['value']);\r\n setIsCMErrorModalOpen(true);\r\n }\r\n }\r\n }\r\n\r\n setBusyRemovingUser(false);\r\n setReloadUsers(true);\r\n }\r\n\r\n const filterTextChanged = (event: React.FormEvent, filter?: string) => {\r\n if (filter?.length > 0) {\r\n setFilteredUsers(groupsAndUsers.filter(x => (x.text?.toLowerCase().includes(filter?.toLowerCase()) || x.secondaryText?.toLowerCase().includes(filter?.toLowerCase()) || x.tertiaryText?.toLowerCase().includes(filter?.toLowerCase()))))\r\n } else {\r\n setFilteredUsers(groupsUsers);\r\n }\r\n }\r\n\r\n return (\r\n closePanel()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"450px\"}\r\n styles={panelStyles}\r\n >\r\n {!isSharePointAdminTokenAvailable\r\n ? isSharePointAdminTokenRequestInProgress\r\n ? \r\n : \r\n \r\n \r\n {languageStrings.RequestAccess}\r\n \r\n \r\n \r\n : !(userPermissions?.canEnumeratePermissions || userPermissions?.canManagePermissions)\r\n ? isLoadingUsers\r\n ? \r\n : \r\n {languageStrings.AccessDenied}\r\n \r\n : (<>\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n {isLoadingUsers && }\r\n {groupsUsers?.length > 0 && !isLoadingUsers && }\r\n {filteredUsers?.length === 0 && !isLoadingUsers &&\r\n \r\n \r\n \r\n }\r\n {isPermissionsAddMambersPanelOpen && setIsPermissionsAddMambersPanelOpen(false)}\r\n roleAssignments={roleAssignments}\r\n roleDefinitions={roleDefinitions}\r\n isInOneDrive={isInOneDrive.current}\r\n closeOnSuccess={() => { setIsPermissionsAddMambersPanelOpen(false); setReloadUsers(true) }}\r\n groupsUsers={groupsUsers}\r\n sharePointListId={sharePointListId}\r\n />}\r\n {isPermissionsMemberListPanelOpen && selectedRoleAssignment && setIsPermissionsMemberListPanelOpen(false)}\r\n roleAssignment={selectedRoleAssignment}\r\n users={groupsAndUsers.filter(x => x.groupId === selectedRoleAssignment.PrincipalId && !x.roleAssignment)}\r\n isInOneDrive={isInOneDrive.current}\r\n userDeleted={() => setReloadUsers(true)}\r\n sharePointListId={sharePointListId}\r\n />}\r\n
\r\n
\r\n
\r\n {isCMErrorModalOpen && setIsCMErrorModalOpen(false)} />}\r\n )}\r\n \r\n )\r\n};","import { Selection, CommandBar, DetailsList, DetailsListLayoutMode, Dialog, DialogContent, DialogType, IColumn, ICommandBarItemProps, ICommandBarStyles, IDialogContentProps, Link, mergeStyleSets, ScrollablePane, ScrollbarVisibility, Spinner, SpinnerSize, PanelType, IPanelStyles, Panel, ConstrainMode } from \"@fluentui/react\";\r\nimport dayjs from \"dayjs\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useLazyDeleteAllVersionsQuery, useLazyDeleteVersionByLabelQuery, useLazyGetItemByUniqueIDVersionsQuery, useLazyGetItemVersionsQuery, useLazyRestoreVersionByLabelQuery, useLazyUnpublishItemQuery } from \"../../src/taskpane/components/_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { RootState } from \"../../src/taskpane/components/_v2/redux/storeMain\";\r\nimport { currentSharepointFolderUserPermissions } from \"../../src/taskpane/redux/models/reduxModels\";\r\nimport { getUserEffectivePermissions, getUserEffectivePermissionsFromMask } from \"../../src/taskpane/services/SharePointRestServices\";\r\nimport authModule from \"../../utilities/AuthModule\";\r\nimport generalModule from \"../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../utilities/logger\";\r\nimport { CMConfirmModal } from \"./CMConfirmModal\";\r\n\r\nconst classNames = mergeStyleSets({\r\n wrapper: {\r\n height: \"300px\",\r\n position: \"relative\",\r\n }\r\n});\r\n\r\nconst panelStyles: Partial = {\r\n content: {\r\n paddingLeft: 10,\r\n paddingRight: 10\r\n }\r\n}\r\n\r\nconst commandBarStyle: Partial = {\r\n root: {\r\n borderTop: '1px solid rgb(237, 235, 233);',\r\n borderBottom: '1px solid rgb(237, 235, 233);',\r\n paddingLeft: 0,\r\n paddingRight: 10,\r\n paddingBottom: 3,\r\n paddingTop: 3\r\n }\r\n};\r\n\r\nconst formatBytes = (bytes: number, decimals: number = 2): string => {\r\n if (bytes === 0) return '0 Bytes';\r\n\r\n const k = 1024;\r\n const dm = decimals < 0 ? 0 : decimals;\r\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\r\n\r\n const i = Math.floor(Math.log(bytes) / Math.log(k));\r\n\r\n return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];\r\n}\r\n\r\nfunction _copyAndSort(items: T[], columnKey: string, isSortedDescending?: boolean): T[] {\r\n const key = columnKey as keyof T;\r\n return items.slice(0).sort((a: T, b: T) => ((isSortedDescending ? a[key] < b[key] : a[key] > b[key]) ? 1 : -1));\r\n};\r\n\r\nconst _getKey = (item: any, index?: number): string => {\r\n return item?.key;\r\n};\r\n\r\nexport interface ICMVersionHistoryModalProps {\r\n selectedItem?: any;\r\n selectedAddinItem?: any;\r\n showDialog: boolean;\r\n isInOneDrive: boolean;\r\n closeDialog: () => void;\r\n}\r\n\r\nexport const CMVersionHistoryModal = ({ selectedItem, selectedAddinItem, showDialog, isInOneDrive, closeDialog }: ICMVersionHistoryModalProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const currentSharepointFolder = useSelector((state: RootState) => state.currentSharepointFolder);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n\r\n const [getItemVersions] = useLazyGetItemVersionsQuery();\r\n const [getItemByUniqueIdVersions] = useLazyGetItemByUniqueIDVersionsQuery();\r\n const [restoreVersionByLabel] = useLazyRestoreVersionByLabelQuery();\r\n const [deleteVersionByLabel] = useLazyDeleteVersionByLabelQuery();\r\n const [deleteAllVersions] = useLazyDeleteAllVersionsQuery();\r\n const [unpublishItem] = useLazyUnpublishItemQuery();\r\n\r\n const [userPermissions, setUserPermissions] = React.useState();\r\n const [fileVersions, setFileVersions] = React.useState([]);\r\n const [itemVersions, setItemVersions] = React.useState([]);\r\n const [columns, setColumns] = React.useState([]);\r\n const [commandbarItems, setCommandbarItems] = React.useState([]);\r\n const [commandbarFarItems, setCommandbarFarItems] = React.useState([]);\r\n\r\n const [selectedVersions, setSelectedVersions] = React.useState([]);\r\n const [selectedVersion, setSelectedVersion] = React.useState();\r\n\r\n const [updateVersionList, setUpdateVersionList] = React.useState();\r\n const [waitFor, setWaitFor] = React.useState(false);\r\n const [waitForText, setWaitForText] = React.useState('');\r\n const [selectionCleared, setSelectionCleared] = React.useState(false);\r\n\r\n const [showDeleteAllDialog, setShowDeleteAllDialog] = React.useState(false);\r\n const [showDeleteAllMinorDialog, setShowDeleteAllMinorDialog] = React.useState(false);\r\n\r\n const _selection = React.useRef(new Selection({\r\n onSelectionChanged: () => _getSelectionDetails()\r\n }));\r\n\r\n const _getSelectionDetails = () => {\r\n setSelectedVersions(_selection.current.getSelection());\r\n\r\n if (_selection.current.count === 1) {\r\n let version: any = _selection.current.getSelection()[0];\r\n setSelectedVersion(version);\r\n } else {\r\n setSelectedVersion(null);\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n if (selectionCleared) {\r\n _selection.current.setAllSelected(false);\r\n setSelectedVersions(_selection.current.getSelection());\r\n setSelectedVersion(null);\r\n setSelectionCleared(false);\r\n }\r\n }, [selectionCleared]);\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n let permissions: currentSharepointFolderUserPermissions;\r\n if (selectedItem && selectedItem.PermMask) {\r\n permissions = getUserEffectivePermissionsFromMask(selectedItem.PermMask);\r\n }\r\n else if (selectedAddinItem && selectedAddinItem.PermMask) {\r\n permissions = getUserEffectivePermissionsFromMask(selectedAddinItem.PermMask);\r\n }\r\n\r\n if (!permissions) {\r\n const accessToken: string = isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken();\r\n const webUrl: string = isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl;\r\n const uniqueId: string = selectedItem ? selectedItem.UniqueId?.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId;\r\n if (webUrl && currentSharepointFolder?.sharepointListId && uniqueId) {\r\n permissions = await getUserEffectivePermissions(accessToken, webUrl, currentSharepointFolder.sharepointListId, uniqueId);\r\n }\r\n }\r\n\r\n setUserPermissions(permissions);\r\n })();\r\n }, [selectedItem, selectedAddinItem, currentSharepointFolder]);\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n try {\r\n const [versions, versionsAlt] = await Promise.all([\r\n getItemVersions({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n }).unwrap(),\r\n\r\n getItemByUniqueIdVersions({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n sharePointListId: currentSharepointFolder.sharepointListId,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n }).unwrap()\r\n ]);\r\n\r\n if (versions?.d?.results && versionsAlt?.value) {\r\n const fileVersions = versions.d.results;\r\n const itemVersions = versionsAlt.value\r\n .map(item => {\r\n let fileSize: number = fileVersions.find(fileVersion => fileVersion.VersionLabel === item.VersionLabel)?.Size;\r\n if (isNaN(fileSize)) {\r\n fileSize = Number(item.File_x005f_x0020_x005f_Size);\r\n }\r\n return { ...item, VersionLabelNumeric: Number(item.VersionLabel), FileSizeNumeric: fileSize };\r\n });\r\n\r\n setColumns([\r\n {\r\n key: 'version',\r\n name: languageStrings.Version,\r\n fieldName: 'VersionLabelNumeric',\r\n minWidth: 65,\r\n maxWidth: 65,\r\n isResizable: true,\r\n isSorted: true,\r\n isSortedDescending: true,\r\n onRender: (item: any) => {\r\n return (\r\n {item?.VersionLabel}\r\n )\r\n }\r\n },\r\n {\r\n key: 'modified',\r\n name: languageStrings.Modified,\r\n fieldName: 'Modified',\r\n minWidth: 120,\r\n maxWidth: 120,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n let versionUrl: string;\r\n const siteUrl: string = isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl;\r\n const fileVersion = fileVersions.find(fileVersion => fileVersion.VersionLabel === item.VersionLabel);\r\n if (fileVersion) {\r\n versionUrl = (!siteUrl.endsWith(\"/\") ? siteUrl + \"/\" : siteUrl) + fileVersion.Url;\r\n }\r\n else {\r\n const siteOrigin: string = new URL(siteUrl)?.origin;\r\n versionUrl = (siteOrigin.endsWith(\"/\") ? siteOrigin.slice(0, -1) : siteOrigin) + item.FileRef;\r\n }\r\n return (\r\n <>\r\n {dayjs(item.Modified).format('L LT')}\r\n {currentSharepointFolder?.enableMinorVersions && item.IsCurrentVersion === true && (item.VersionId % 512) === 0 &&\r\n
\r\n {languageStrings.PublishedMajorVersion}\r\n
}\r\n \r\n )\r\n },\r\n },\r\n {\r\n key: 'modifiedBy',\r\n name: languageStrings.ModifiedBy,\r\n minWidth: 120,\r\n maxWidth: 120,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n return (\r\n {item?.Editor?.LookupValue}\r\n )\r\n },\r\n },\r\n {\r\n key: 'size',\r\n name: languageStrings.Size,\r\n fieldName: \"FileSizeNumeric\",\r\n minWidth: 50,\r\n maxWidth: 50,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n return (\r\n {formatBytes(item.FileSizeNumeric, 1)}\r\n )\r\n },\r\n },\r\n {\r\n key: 'comments',\r\n name: 'Comments',\r\n minWidth: 100,\r\n maxWidth: 300,\r\n isResizable: true,\r\n onRender: (item: any) => {\r\n let versionComment: string;\r\n const fileVersion = fileVersions.find(fileVersion => fileVersion.VersionLabel === item.VersionLabel);\r\n if (fileVersion) {\r\n versionComment = fileVersion.CheckInComment;\r\n }\r\n else {\r\n versionComment = item.OData__x005f_CheckinComment;\r\n }\r\n\r\n return (\r\n {versionComment}\r\n )\r\n },\r\n },\r\n ]);\r\n\r\n setFileVersions(fileVersions);\r\n setItemVersions(itemVersions);\r\n }\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (init)\");\r\n }\r\n\r\n setSelectionCleared(true);\r\n })();\r\n }, [updateVersionList]);\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n try {\r\n const items: ICommandBarItemProps[] = [];\r\n\r\n if (selectedVersions.length === 0 && userPermissions?.canDeleteVersions) {\r\n items.push(\r\n {\r\n key: 'DeleteAll',\r\n disabled: itemVersions?.length === 0 || waitFor === true,\r\n text: languageStrings.VersionsDeleteAll,\r\n iconProps: { iconName: 'Delete' },\r\n onClick: () => {\r\n setShowDeleteAllDialog(true);\r\n }\r\n })\r\n\r\n if (currentSharepointFolder.enableMinorVersions === true && userPermissions?.canDeleteVersions && itemVersions.some(x => !x.IsCurrentVersion && x.VersionId % 512 > 0)) {\r\n items.push(\r\n {\r\n key: 'DeleteMinors',\r\n disabled: itemVersions?.length === 0 || waitFor === true,\r\n text: languageStrings.VersionsDeleteMinors,\r\n iconProps: { iconName: 'DependencyRemove' },\r\n onClick: () => {\r\n setShowDeleteAllMinorDialog(true);\r\n }\r\n })\r\n }\r\n }\r\n\r\n if (selectedVersions.length === 1) {\r\n items.push(\r\n {\r\n key: 'view',\r\n text: languageStrings.VersionView,\r\n disabled: waitFor === true,\r\n iconProps: { iconName: 'OpenFile' },\r\n onClick: () => {\r\n let versionUrl: string;\r\n const siteUrl: string = isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl;\r\n const fileVersion = fileVersions.find(fileVersion => fileVersion.VersionLabel === selectedVersion.VersionLabel);\r\n if (fileVersion) {\r\n versionUrl = (!siteUrl.endsWith(\"/\") ? siteUrl + \"/\" : siteUrl) + fileVersion.Url;\r\n }\r\n else {\r\n const siteOrigin: string = new URL(siteUrl)?.origin;\r\n versionUrl = (siteOrigin.endsWith(\"/\") ? siteOrigin.slice(0, -1) : siteOrigin) + selectedVersion.FileRef;\r\n }\r\n\r\n window.open(versionUrl, \"_blank\");\r\n }\r\n });\r\n\r\n const isPublishedMajorVersion: boolean = selectedVersion.IsCurrentVersion === true && (selectedVersion.VersionId % 512) === 0;\r\n const isPublishedMajorSucceededByDraft: boolean = isPublishedMajorVersion && itemVersions.find(ver => ver.IsCurrentVersion)?.VersionId > selectedVersion.VersionId;\r\n if (userPermissions?.canEditListItem && (!selectedVersion.IsCurrentVersion || isPublishedMajorSucceededByDraft)) {\r\n items.push({\r\n key: 'restore',\r\n disabled: waitFor === true,\r\n text: languageStrings.VersionRestore,\r\n iconProps: { iconName: 'Refresh' },\r\n onClick: () => {\r\n restoreVersion();\r\n }\r\n });\r\n\r\n if (!isPublishedMajorVersion && userPermissions?.canDeleteVersions) {\r\n items.push(\r\n {\r\n key: 'delete',\r\n disabled: waitFor === true,\r\n text: languageStrings.VersionDelete,\r\n iconProps: { iconName: 'Delete' },\r\n onClick: () => {\r\n deleteVersion();\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n if (isPublishedMajorVersion && !isPublishedMajorSucceededByDraft && userPermissions?.canEditListItem) {\r\n items.push(\r\n {\r\n key: 'unpublish',\r\n disabled: waitFor === true,\r\n name: languageStrings.Unpublish,\r\n iconProps: { iconName: \"UnpublishContent\" },\r\n onClick: () => {\r\n onUnpublishVersion(selectedVersion);\r\n }\r\n }\r\n )\r\n }\r\n }\r\n\r\n if (selectedVersions.length > 1 && userPermissions?.canDeleteVersions) {\r\n items.push(\r\n {\r\n key: 'deletemulti',\r\n disabled: waitFor === true,\r\n text: languageStrings.VersionDelete,\r\n iconProps: { iconName: 'Delete' },\r\n onClick: () => {\r\n deleteVersion();\r\n }\r\n }\r\n );\r\n }\r\n\r\n setCommandbarItems(items)\r\n\r\n const farItems: ICommandBarItemProps[] = [];\r\n if (waitFor) {\r\n farItems.push(\r\n {\r\n key: \"loadingFiles\",\r\n text: waitForText,\r\n disabled: true,\r\n onRenderIcon: () => {\r\n return \r\n }\r\n }\r\n )\r\n }\r\n\r\n if (selectedVersions.length > 0) {\r\n farItems.push(\r\n {\r\n key: \"selectedFileCount\",\r\n text: `${selectedVersions.length} ${languageStrings.Selected.toLowerCase()}`,\r\n disabled: waitFor === true,\r\n iconProps: { iconName: \"Clear\" },\r\n onClick: () => {\r\n setSelectionCleared(true);\r\n }\r\n }\r\n )\r\n }\r\n\r\n setCommandbarFarItems(farItems)\r\n\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (Commandbar init)\");\r\n }\r\n })();\r\n }, [selectedVersions, fileVersions, itemVersions, waitFor, currentSharepointFolder, userPermissions]);\r\n\r\n const restoreVersion = async () => {\r\n setWaitForText(`${languageStrings.Restoring}...`);\r\n setWaitFor(true);\r\n\r\n try {\r\n const results = await restoreVersionByLabel({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n versionLabel: selectedVersion.VersionLabel\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (restoreVersion)\");\r\n }\r\n\r\n setWaitFor(false);\r\n setWaitForText('')\r\n setUpdateVersionList(prev => prev ? !prev : true);\r\n }\r\n\r\n const deleteVersion = async () => {\r\n setWaitForText(`${languageStrings.Deleting}...`);\r\n setWaitFor(true);\r\n\r\n try {\r\n await Promise.all(selectedVersions.map(async version => {\r\n if (!version.IsCurrentVersion) {\r\n await deleteVersionByLabel({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n versionLabel: version.VersionLabel\r\n }).unwrap();\r\n }\r\n }));\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (deleteVersion)\");\r\n }\r\n\r\n setWaitFor(false);\r\n setWaitForText('')\r\n setUpdateVersionList(prev => prev ? !prev : true);\r\n }\r\n\r\n const onUnpublishVersion = async (item: any) => {\r\n setWaitFor(true);\r\n\r\n try {\r\n await unpublishItem({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: item.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (onUnpublishVersion)\");\r\n }\r\n\r\n setWaitFor(false);\r\n setUpdateVersionList(prev => prev ? !prev : true);\r\n }\r\n\r\n const onDeleteAllVersions = async () => {\r\n setWaitForText(`${languageStrings.Deleting}...`);\r\n setWaitFor(true);\r\n\r\n try {\r\n const results = await deleteAllVersions({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken()\r\n }).unwrap();\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (onDeleteAllVersions)\");\r\n }\r\n\r\n setWaitFor(false);\r\n setWaitForText('')\r\n setUpdateVersionList(prev => prev ? !prev : true);\r\n }\r\n\r\n const onDeleteAllMinorVersions = async () => {\r\n setWaitForText(`${languageStrings.Deleting}...`);\r\n setWaitFor(true);\r\n\r\n try {\r\n await Promise.all(itemVersions.map(async version => {\r\n if (!version.IsCurrentVersion && version.VersionId % 512 > 0) {\r\n await deleteVersionByLabel({\r\n siteUrl: isInOneDrive ? oneDriveRootDetails?.sharePointSiteUrl : currentDirectory?.webUrl,\r\n uniqueId: selectedItem ? selectedItem.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\") : selectedAddinItem.UniqueId,\r\n accessToken: isInOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n versionLabel: version.VersionLabel\r\n }).unwrap();\r\n }\r\n }));\r\n } catch (error) {\r\n logger(error, \"CMVersionHistoryModal.tsx (onDeleteAllMinorVersions)\");\r\n }\r\n\r\n setWaitFor(false);\r\n setWaitForText('')\r\n setUpdateVersionList(prev => prev ? !prev : true);\r\n }\r\n\r\n const onColumnHeaderClick = React.useCallback((ev: React.MouseEvent, column: IColumn): void => {\r\n const newColumns: IColumn[] = columns.slice();\r\n const currColumn: IColumn = newColumns.filter(currCol => column.key === currCol.key)[0];\r\n newColumns.forEach((newCol: IColumn) => {\r\n if (newCol === currColumn) {\r\n currColumn.isSortedDescending = !currColumn.isSortedDescending;\r\n currColumn.isSorted = true;\r\n } else {\r\n newCol.isSorted = false;\r\n newCol.isSortedDescending = true;\r\n }\r\n });\r\n setColumns(newColumns);\r\n setItemVersions(_copyAndSort(itemVersions, currColumn.fieldName!, currColumn.isSortedDescending));\r\n }, [columns, itemVersions, setColumns, setItemVersions]);\r\n\r\n const dialogContentProps: IDialogContentProps = {\r\n type: DialogType.normal,\r\n showCloseButton: true,\r\n closeButtonAriaLabel: 'Close',\r\n };\r\n\r\n return (\r\n \r\n {selectedItem && }\r\n {selectedAddinItem && closeDialog()}\r\n isLightDismiss\r\n closeButtonAriaLabel=\"Close\"\r\n type={PanelType.custom}\r\n customWidth={!generalModule.isInConentMangerMode() ? \"300px\" : \"450px\"}\r\n styles={panelStyles}\r\n >\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n }\r\n
\r\n )\r\n};","import { FileIconType, getFileTypeIconAsUrl, IFileTypeIconOptions } from \"@fluentui/react-file-type-icons\";\r\nimport { IGraphCreateShareableLinkRequest, ShareableLinkRequestScope, ShareableLinkRequestType } from \"../../src/taskpane/components/_v2/redux/api/graph/api-graph-interfaces\";\r\nimport { createItemShareableLink, getItemThumbnail } from \"../../src/taskpane/services/GraphService\";\r\nimport { getExtension } from \"../../src/taskpane/components/helpers/stringHelper\";\r\nimport { SharePointFolderContentTypeIds } from \"../../src/taskpane/config/constants\";\r\nimport { ICardRequest } from \"../../src/taskpane/interfaces/ICardRequest\";\r\nimport * as microsoftTeams from '@microsoft/teams-js'\r\n\r\nconst sendAsMessage = async (driveId, itemId, isDocument, fileName, contentTypeId, webUrl) => {\r\n\r\n const sharedLinkRequest: IGraphCreateShareableLinkRequest = {\r\n driveId: driveId,\r\n itemId: itemId,\r\n type: ShareableLinkRequestType.View,\r\n scope: ShareableLinkRequestScope.Anonymous\r\n };\r\n\r\n const [createLinkResult, thumbNailResult] = await Promise.all([\r\n createItemShareableLink(sharedLinkRequest),\r\n getItemThumbnail(driveId, itemId)\r\n ]);\r\n\r\n const iconType: IFileTypeIconOptions = isDocument\r\n ? { extension: getExtension(fileName), size: 32, imageFileType: \"png\" }\r\n : { type: contentTypeId?.startsWith(SharePointFolderContentTypeIds.documentSet) ? FileIconType.docset : FileIconType.folder, size: 32, imageFileType: \"png\" };\r\n\r\n const taskRequest: ICardRequest = {\r\n fileName: fileName,\r\n url: createLinkResult?.link?.webUrl ?? webUrl,\r\n iconUrl: getFileTypeIconAsUrl(iconType),\r\n thumbUrl: thumbNailResult?.url,\r\n };\r\n\r\n microsoftTeams.getContext((context) => {\r\n if (context.frameContext === \"content\") {\r\n microsoftTeams.sharing.shareWebContent({\r\n content: [\r\n {\r\n type: \"URL\",\r\n url: `${createLinkResult?.link?.webUrl ?? webUrl}`,\r\n message: 'Send as Message',\r\n preview: true\r\n }\r\n ]\r\n });\r\n } else if (context.frameContext === \"task\") {\r\n microsoftTeams.tasks.submitTask(taskRequest);\r\n }\r\n });\r\n}\r\n\r\nexport default sendAsMessage;","import React from \"react\";\r\nimport { ChoiceGroup, IChoiceGroupOption, PrimaryButton, Spinner, SpinnerSize, Stack } from \"@fluentui/react\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { LanguageContext } from \"../../../../../../utilities/LocalizationModule\";\r\nimport { setOneDriveOverwriteOptionSelected } from \"../../../../redux/modules/file\";\r\nimport { OneDriveOverWriteEnum } from \"../../../enums/oneDriveOverWriteEnum\";\r\nimport { CheckinTypes } from \"../../redux/api/local/api-local-interfaces\";\r\n\r\nexport interface IVersionSelectorProps {\r\n checkinTypeChanged?: (checkinType: CheckinTypes) => void;\r\n onCancel?: () => void;\r\n onSave?: () => void;\r\n labelFontSize: number;\r\n paddingTop: number;\r\n paddingLeft: number;\r\n isBusy?: boolean;\r\n}\r\n\r\nexport const VersionSelectorMinMajOnly = (props: IVersionSelectorProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const { checkinTypeChanged } = props;\r\n const [options] = React.useState([\r\n { key: \"0\", text: `${languageStrings.VersionMinorDraft}` },\r\n { key: \"1\", text: `${languageStrings.VersionMajorPublished}` }\r\n ]);\r\n let defaultSelectedKey = \"0\";\r\n\r\n const _onChange = (ev: React.FormEvent, option: IChoiceGroupOption): void => {\r\n checkinTypeChanged(+option.key);\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n {props.onSave &&\r\n {\r\n props.onSave();\r\n }}\r\n style={{ marginTop: \"20px\" }} text={languageStrings.Save} disabled={props?.isBusy}>{props?.isBusy && }}\r\n {props.onCancel &&\r\n {\r\n dispatch(setOneDriveOverwriteOptionSelected(OneDriveOverWriteEnum.notSelected));\r\n props.onCancel();\r\n }}\r\n style={{ marginTop: \"20px\" }} disabled={props?.isBusy}>{languageStrings.Cancel}}\r\n \r\n
\r\n \r\n );\r\n};","import { FontIcon, Icon, Text, TooltipHost, TooltipOverflowMode } from \"@fluentui/react\";\r\nimport { getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport generalModule from \"../../../../../../../utilities/GeneralModule\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { logger } from \"../../../../../../../utilities/logger\";\r\nimport { dropZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { IPageSettings } from \"../../../../../interfaces/IPageSettings\";\r\nimport { IStoreItem } from \"../../../../../interfaces/IStoredItem\";\r\nimport { setContentManagerSearchValue, toggleContentManagerReload } from \"../../../../../redux/modules/contentManagerDirectory\";\r\nimport { addUploadedFiles } from \"../../../../../redux/modules/file\";\r\nimport { setOneDriveDetails, setWorkingDirectories } from \"../../../../../redux/modules/workingDirectory\";\r\nimport { getOneDriveRootDetails } from \"../../../../../services/GraphService\";\r\nimport { homeBrandIconStyles, homeFontIconStyles, homeFontIconStylesMedium } from \"../../../../../styles/iconStyles\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { FolderTypeIconEnum } from \"../../../../enums/FolderTypeIconEnum\";\r\nimport { ImageTypeEnum } from \"../../../../enums/ImageTypeEnum\";\r\nimport { FolderTypeIconQuery } from \"../../../../helpers/folderTypeIconQuery\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { ImageSizeEnum } from \"../../../../enums/ImageSizeEnum\";\r\nimport { ComponentTypes } from \"../../../../../config/config\";\r\nimport { OneDriveUrlHelper } from \"../../../../helpers/oneDriveUrlHelper\";\r\n\r\ninterface IHomeFolderItemProps {\r\n homeItem: IStoreItem;\r\n isMobile: boolean;\r\n isRecentList: boolean;\r\n isSuggestedList: boolean;\r\n hasFileSelected: boolean;\r\n isValidDropZone: boolean;\r\n setContextAwareLoading: (isLoading: boolean, contentManagerOnly?: boolean) => void;\r\n IsFolderInValidState: (item: IStoreItem, isRecentList: boolean) => Promise;\r\n getPath: (workingDirectories: IPageSettings[], folderTypeIcon: FolderTypeIconEnum, includeBrackets?: boolean) => string;\r\n save: (storeItem: IStoreItem) => Promise;\r\n openFolderOptions: (item: IStoreItem, isRecentList: boolean, isSuggestedList?: boolean) => void;\r\n}\r\n\r\nexport const HomeFolderItem = ({ homeItem, isMobile, isRecentList, isSuggestedList, hasFileSelected, isValidDropZone, setContextAwareLoading, IsFolderInValidState, getPath, save, openFolderOptions }: IHomeFolderItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n\r\n const folderIcon = FolderTypeIconQuery.getImage(homeItem.folderTypeIcon);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const dragEnter = React.useCallback((event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event, false, false, homeItem)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, [homeItem]);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }, []);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const handleDrop = React.useCallback(async (event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n dragCounter.current = 0;\r\n setIsDraggedOver(false);\r\n\r\n try {\r\n if (DragAndDropHelper.validateDroppedFiles(event)) {\r\n setContextAwareLoading(true);\r\n try {\r\n dispatch(addUploadedFiles(await DragAndDropHelper.handleDroppedFiles(event, homeItem)));\r\n if (await IsFolderInValidState(homeItem, isRecentList)) {\r\n if (generalModule.isInConentMangerMode()) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n browseLocation();\r\n } else {\r\n save(homeItem);\r\n }\r\n }\r\n } catch (error) {\r\n logger(error, \"homeItem.tsx (handleDrop)\");\r\n }\r\n setContextAwareLoading(false);\r\n }\r\n else if (DragAndDropHelper.validateDroppedGridItems(event, false, false, homeItem)) {\r\n const homeItemCurrentDirectory = homeItem.locations[homeItem.locations.length - 1];\r\n const homeItemIsInOneDrive = homeItemCurrentDirectory.type == ComponentTypes.OneDrive || homeItemCurrentDirectory.type == ComponentTypes.OneDriveSubFolder;\r\n const siteUrl = homeItemIsInOneDrive ? OneDriveUrlHelper.getSiteUrl(homeItemCurrentDirectory.webUrl) : homeItemCurrentDirectory.webUrl\r\n\r\n const origin = new URL(homeItemCurrentDirectory.webUrl).origin;\r\n const homeItemServerRelPath = `${homeItemCurrentDirectory.webUrl.replace(origin, \"\")}/${homeItemCurrentDirectory.directory}`;\r\n\r\n DragAndDropHelper.destinationDirectory = homeItemCurrentDirectory;\r\n DragAndDropHelper.handleGridMove(dispatch, siteUrl, homeItem.locations, homeItemIsInOneDrive, homeItemServerRelPath);\r\n }\r\n } catch (error) {\r\n logger(error, \"HomeFolderItem.tsx (handleDrop)\");\r\n }\r\n }, [homeItem, isRecentList, currentDirectory]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string = \"list-item\";\r\n if (isDraggedOver) {\r\n className += ` dropzone ${dropZoneStyleSets.dropzoneActive}`;\r\n }\r\n else if (isValidDropZone) {\r\n className += ` dropzone`;\r\n }\r\n return className;\r\n }, [isValidDropZone, isDraggedOver]);\r\n\r\n const folderStyles: React.CSSProperties = isMobile ? mobileListItemStyle : {};\r\n\r\n const browseLocation = async () => {\r\n setContextAwareLoading(true);\r\n try {\r\n if (await IsFolderInValidState(homeItem, isRecentList)) {\r\n if (!oneDriveRootDetails && (homeItem.folderTypeIcon === FolderTypeIconEnum.oneDrive || homeItem.folderTypeIcon === FolderTypeIconEnum.oneDriveSubFolder)) {\r\n dispatch(setOneDriveDetails(await getOneDriveRootDetails()));\r\n }\r\n\r\n if (!generalModule.isInConentMangerMode()) {\r\n setContextAwareLoading(false);\r\n }\r\n\r\n dispatch(setWorkingDirectories(homeItem.locations));\r\n\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchValue(\"\"));\r\n dispatch(toggleContentManagerReload());\r\n setContextAwareLoading(false);\r\n }\r\n }\r\n else {\r\n setContextAwareLoading(false);\r\n }\r\n } catch (error) {\r\n setContextAwareLoading(false);\r\n logger(error, \"homeItem.tsx (onClick - item)\");\r\n }\r\n }\r\n\r\n const getFontIconClassName = (fontIcon): string => {\r\n if (fontIcon.imageSize === ImageSizeEnum.medium) {\r\n return homeFontIconStylesMedium;\r\n }\r\n return homeFontIconStyles;\r\n }\r\n\r\n return (\r\n {\r\n e.stopPropagation();\r\n browseLocation();\r\n }}\r\n >\r\n
\r\n \r\n
\r\n {folderIcon.imageType === ImageTypeEnum.fileType\r\n ? \r\n : folderIcon.imageType === ImageTypeEnum.url\r\n ? \r\n : \r\n }\r\n
\r\n
\r\n \r\n \r\n {homeItem.name}\r\n \r\n
\r\n \r\n {getPath(homeItem.locations, homeItem.folderTypeIcon, false)}\r\n \r\n
\r\n
\r\n
\r\n <>\r\n {hasFileSelected && isValidDropZone && (\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n setContextAwareLoading(true);\r\n try {\r\n if (await IsFolderInValidState(homeItem, isRecentList)) {\r\n save(homeItem);\r\n } else {\r\n setContextAwareLoading(false);\r\n }\r\n } catch (error) {\r\n logger(error, \"homeItem.tsx (onClick - save Icon)\");\r\n setContextAwareLoading(false);\r\n }\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n openFolderOptions(homeItem, isRecentList, isSuggestedList);\r\n }}\r\n />\r\n
\r\n
\r\n \r\n \r\n )\r\n};","import React from \"react\";\r\nimport { FontIcon, Spinner, SpinnerSize, Text, TooltipHost } from \"@fluentui/react\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { dragZoneStyleSets, dropZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { treeViewItemStyle } from \"../../../../helpers/treeHelperGeneral\";\r\nimport { ComponentTypes, IDirectoryLocation } from \"../../../../../config/config\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { setIsContentManagerSideMenuCollapsed } from \"../../../../../redux/modules/contentManagerDirectory\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { addUploadedFiles } from \"../../../../../redux/modules/file\";\r\nimport { logger } from \"../../../../../../../utilities/logger\";\r\nimport { IPageSettings } from \"../../../../../interfaces/IPageSettings\";\r\nimport { IOneDriveRootDetails } from \"../../../../../interfaces/IOneDriveRootDetails\";\r\nimport { getOneDriveRootDetails } from \"../../../../../services/GraphService\";\r\nimport { setOneDriveDetails, setWorkingDirectories } from \"../../../../../redux/modules/workingDirectory\";\r\nimport generalModule from \"../../../../../../../utilities/GeneralModule\";\r\nimport savingLocationStructureModule from \"../../../../../../../utilities/SavingLocationStructureModule\";\r\nimport { setSavingLocation } from \"../../../../../redux/modules/savingLocation\";\r\nimport { getLocalStorage, localStorageKeys } from \"../../../../helpers/localStorageHelper\";\r\n\r\ninterface IMainLocationItemProps {\r\n item: IDirectoryLocation;\r\n isMobile: boolean;\r\n isSideMenuCollapsed: boolean;\r\n onMainLocationClick: (item: IDirectoryLocation) => Promise;\r\n onExpandCollapseClick: (item: IDirectoryLocation, isRefresh?: boolean) => Promise;\r\n setContextAwareLoading: (isLoading: boolean, contentManagerOnly?: boolean) => void;\r\n saveToOneDrive: (folderName: string) => Promise;\r\n}\r\n\r\nexport const MainLocationItem = ({ item, isMobile, isSideMenuCollapsed, onMainLocationClick, onExpandCollapseClick, setContextAwareLoading, saveToOneDrive }: IMainLocationItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const isSitesLoading = useSelector((state: RootState) => state.sharePointInfo.isSitesLoading);\r\n const isTeamsLoading = useSelector((state: RootState) => state.teams.isTeamsLoading);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories.oneDriveRootDetails);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const oneDriveWebUrl = useSelector((state: RootState) => state.user.oneDriveWebUrl);\r\n const lastServerFetch_sites = useSelector((state: RootState) => state.sharePointInfo.lastServerFetch);\r\n const lastServerFetch_teams = useSelector((state: RootState) => state.teams.lastServerFetch);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const isDropDisabled = React.useMemo((): boolean => {\r\n return item.type !== ComponentTypes.OneDrive || (DragAndDropHelper.sourceDirectory?.id && item.id === DragAndDropHelper.sourceDirectory.id);\r\n }, [item, DragAndDropHelper.sourceDirectory]);\r\n\r\n const dragEnter = React.useCallback((event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (isDropDisabled) {\r\n event.dataTransfer.dropEffect = \"none\";\r\n }\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, [isDropDisabled]);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (isDropDisabled) {\r\n event.dataTransfer.dropEffect = \"none\";\r\n }\r\n }, [isDropDisabled]);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const handleDrop = React.useCallback(async (event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n dragCounter.current = 0;\r\n setIsDraggedOver(false);\r\n\r\n try {\r\n if (DragAndDropHelper.validateDroppedFiles(event)) {\r\n dispatch(addUploadedFiles(await DragAndDropHelper.handleDroppedFiles(event)));\r\n if (generalModule.isInConentMangerMode()) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n onMainLocationClick(item);\r\n }\r\n else {\r\n const directories: IPageSettings[] = [{\r\n type: item.type,\r\n id: item.id,\r\n directory: \"\",\r\n displayName: item.name,\r\n fileTitle: item.name,\r\n webUrl: oneDriveWebUrl\r\n }];\r\n savingLocationStructureModule.setSavingLocationStructure(directories);\r\n dispatch(setSavingLocation(\r\n {\r\n display: item.name,\r\n webUrl: oneDriveWebUrl,\r\n directory: \"\",\r\n },\r\n true\r\n ));\r\n // saveToOneDrive(item.name);\r\n const savingDirectory = {\r\n ...directories[0],\r\n isSaveLocationStructureSet: true,\r\n displayName: languageStrings.Properties,\r\n type: ComponentTypes.Saving\r\n }\r\n \r\n const newLocations = [\r\n ...directories,\r\n savingDirectory,\r\n ];\r\n \r\n dispatch(setWorkingDirectories(newLocations));\r\n }\r\n }\r\n else if (generalModule.isInConentMangerMode() && DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, item)) {\r\n let oneDriveDetails: IOneDriveRootDetails;\r\n if (oneDriveRootDetails) {\r\n oneDriveDetails = oneDriveRootDetails;\r\n }\r\n else {\r\n setContextAwareLoading(true);\r\n try {\r\n oneDriveDetails = await getOneDriveRootDetails();\r\n dispatch(setOneDriveDetails(oneDriveDetails));\r\n } catch (err) {\r\n logger(err, \"Locations.tsx (onMainLocationClick)\");\r\n }\r\n setContextAwareLoading(false);\r\n }\r\n\r\n const directories: IPageSettings[] = [{\r\n type: item.type,\r\n id: item.id,\r\n directory: \"\",\r\n displayName: item.name,\r\n webUrl: oneDriveWebUrl,\r\n sharePointListId: oneDriveDetails?.sharePointListId\r\n }];\r\n\r\n DragAndDropHelper.destinationDirectory = directories[0];\r\n DragAndDropHelper.handleGridMove(dispatch, oneDriveDetails.sharePointSiteUrl, directories, true, new URL(oneDriveWebUrl).pathname);\r\n }\r\n } catch (error) {\r\n logger(error, \"MainLocationItem (handleDrop)\");\r\n }\r\n }, [item, currentDirectory, oneDriveRootDetails, oneDriveWebUrl, onMainLocationClick]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string;\r\n if (!isSideMenuCollapsed) {\r\n className = \"list-item dropzone\";\r\n if (isDraggedOver) {\r\n className += isDropDisabled\r\n ? ` ${dragZoneStyleSets.dragzoneActive}`\r\n : ` ${dropZoneStyleSets.dropzoneActive}`;\r\n }\r\n }\r\n return className;\r\n }, [isSideMenuCollapsed, isDraggedOver, isDropDisabled]);\r\n\r\n const showLoadingSpinner = React.useMemo((): boolean => {\r\n const hasCachedSites = getLocalStorage(localStorageKeys.sites);\r\n const hasCachedTeams = getLocalStorage(localStorageKeys.teams);\r\n\r\n // No loading spinner when the side menu is collapsed or item has next href\r\n if (isSideMenuCollapsed || item.foldersNextHref) {\r\n return false;\r\n }\r\n\r\n // Show spinner if item is loading\r\n if (item.isLoading) {\r\n return true;\r\n }\r\n\r\n // SharePoint: show spinner only if sites or teams are loading and not cached and wait for server response\r\n if (item.type === ComponentTypes.SharePoint) {\r\n return !hasCachedSites || !hasCachedTeams ? (isSitesLoading || isTeamsLoading || !lastServerFetch_sites || !lastServerFetch_teams) : (false);\r\n }\r\n\r\n // Teams: show spinner only if teams are loading and not cached and wait for server response\r\n if (item.type === ComponentTypes.Teams) {\r\n return !hasCachedTeams && isTeamsLoading && !lastServerFetch_teams;\r\n }\r\n\r\n return false;\r\n }, [item, isSideMenuCollapsed, isSitesLoading, isTeamsLoading, lastServerFetch_sites, lastServerFetch_teams]);\r\n\r\n const showChevron = React.useMemo((): boolean => {\r\n return !isSideMenuCollapsed && ((!item.isLoading && item.canExpand) || (item.isLoading && item.foldersNextHref)) &&\r\n !(item.expanded && (!item.sites || item.sites?.length === 0) && (!item.folders || item.folders?.length === 0));\r\n }, [item, isSideMenuCollapsed]);\r\n\r\n React.useEffect(() => {\r\n let debounceTimer;\r\n if (isDraggedOver && showChevron && !item.expanded && !item.isLoading) {\r\n debounceTimer = setTimeout(() => {\r\n onExpandCollapseClick(item, false);\r\n }, 1500);\r\n }\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [item, isDraggedOver, showChevron, onExpandCollapseClick]);\r\n\r\n return (\r\n !isSideMenuCollapsed\r\n ? {\r\n e.stopPropagation();\r\n onMainLocationClick(item);\r\n }}\r\n onDragEnter={dragEnter}\r\n onDragOver={dragOver}\r\n onDragLeave={dragLeave}\r\n onDrop={item.type === ComponentTypes.OneDrive ? handleDrop : undefined}\r\n >\r\n
\r\n {\r\n if (showChevron && !showLoadingSpinner) {\r\n e.stopPropagation();\r\n onExpandCollapseClick(item, false);\r\n }\r\n }}\r\n >\r\n {showLoadingSpinner && }\r\n {showChevron && !showLoadingSpinner && }\r\n
\r\n
\r\n \r\n
\r\n {item.name}\r\n \r\n {item.expanded && \r\n
\r\n {\r\n e.stopPropagation();\r\n onExpandCollapseClick(item, true);\r\n }}\r\n />\r\n
\r\n
}\r\n \r\n : {\r\n e.stopPropagation();\r\n dispatch(setIsContentManagerSideMenuCollapsed(false));\r\n onMainLocationClick(item);\r\n }}>\r\n \r\n \r\n )\r\n};","import { FontIcon, Spinner, SpinnerSize, Text, TooltipHost, TooltipOverflowMode, mergeStyleSets } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { dropZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { IDocumentLibrarySharepoint } from \"../../../../../interfaces/IDocumentLibrarySharepoint\";\r\nimport { addUploadedFiles } from \"../../../../../redux/modules/file\";\r\nimport { fontIconStyles } from \"../../../../../styles/iconStyles\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { ISharepointDocumentLocation } from \"../../../../../interfaces/ISharepointDocument\";\r\nimport { buildWorkingDirectoryFromTree, findWorkingDirectories, treeViewItemStyle } from \"../../../../helpers/treeHelperGeneral\";\r\nimport generalModule from \"../../../../../../../utilities/GeneralModule\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { logger } from \"../../../../../../../utilities/logger\";\r\n\r\nconst classNames = mergeStyleSets({\r\n svgIcon: {\r\n fontSize: 18\r\n }\r\n});\r\n\r\ninterface ISharePointDocumentLibraryItemProps {\r\n item?: IDocumentLibrarySharepoint;\r\n treeItem?: ISharepointDocumentLocation;\r\n isMobile: boolean;\r\n isValidDropZone: boolean;\r\n hasFileSelected: boolean;\r\n allowScroll?: boolean;\r\n getTreeLocations?: () => any[];\r\n onTreeItemClick?: (event: React.SyntheticEvent, treeItem: any) => Promise;\r\n addSharepointFolderDirectory?: (item: IDocumentLibrarySharepoint) => void;\r\n handleSaveClick: (item: any, e: any) => Promise;\r\n openFolderOptions?: (documentLibrary: IDocumentLibrarySharepoint) => void;\r\n openFolderOptionsTree?: (e: any) => void;\r\n onTreeExpand?: (isRefresh: boolean) => void;\r\n}\r\n\r\nexport const SharePointDocumentLibraryItem = ({ item, treeItem, isMobile, isValidDropZone, hasFileSelected, allowScroll, getTreeLocations, onTreeItemClick, addSharepointFolderDirectory, handleSaveClick, openFolderOptions, openFolderOptionsTree, onTreeExpand }: ISharePointDocumentLibraryItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const user = useSelector((state: RootState) => state.user);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const dragEnter = React.useCallback((event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, [treeItem]);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }, []);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const handleDrop = React.useCallback(async (event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n dragCounter.current = 0;\r\n setIsDraggedOver(false);\r\n\r\n try {\r\n if (DragAndDropHelper.validateDroppedFiles(event)) {\r\n dispatch(addUploadedFiles(await DragAndDropHelper.handleDroppedFiles(event, treeItem)));\r\n handleSaveClick(item ? item : treeItem, event);\r\n }\r\n else if (DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n const newWorkingDirectories = findWorkingDirectories(getTreeLocations(), treeItem);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const siteUrl = currDirectory.webUrl\r\n\r\n const origin = new URL(currDirectory.webUrl).origin;\r\n const destinationServerRelPath = `${currDirectory.webUrl.replace(origin, \"\")}/${currDirectory.directory}`;\r\n\r\n DragAndDropHelper.destinationDirectory = currDirectory;\r\n DragAndDropHelper.handleGridMove(dispatch, siteUrl, directories, false, destinationServerRelPath);\r\n }\r\n } catch (error) {\r\n logger(error, \"SharePointDocumentLibraryItem.tsx (handleDrop)\");\r\n }\r\n }, [item, treeItem, handleSaveClick]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string = \"list-item\";\r\n if (treeItem) {\r\n className += ` ${\"tree-item\"}`;\r\n if (treeItem.isSelected) {\r\n className += ` ${\"tree-item-selected\"}`;\r\n }\r\n }\r\n\r\n if (isDraggedOver) {\r\n className += ` dropzone ${dropZoneStyleSets.dropzoneActive}`;\r\n }\r\n else if (isValidDropZone) {\r\n className += ` dropzone`;\r\n }\r\n return className;\r\n }, [isValidDropZone, treeItem, isDraggedOver]);\r\n\r\n const showChevron = React.useMemo((): boolean => {\r\n return treeItem && (((treeItem.canExpand && !treeItem.isLoading) || (treeItem.isLoading && treeItem.foldersNextHref)) &&\r\n !(treeItem.loaded && treeItem.folders?.length === 0));\r\n }, [treeItem]);\r\n\r\n React.useEffect(() => {\r\n let debounceTimer;\r\n if (treeItem && isValidDropZone && isDraggedOver && showChevron && onTreeExpand && !treeItem.expanded && !treeItem.isLoading) {\r\n debounceTimer = setTimeout(() => {\r\n onTreeExpand(false);\r\n }, 1500);\r\n }\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [treeItem, isValidDropZone, isDraggedOver, showChevron, onTreeExpand]);\r\n\r\n const folderStyles: React.CSSProperties = isMobile ? mobileListItemStyle : {};\r\n\r\n return (\r\n {\r\n e.stopPropagation();\r\n if (onTreeItemClick) {\r\n onTreeItemClick(e, treeItem);\r\n }\r\n else if (addSharepointFolderDirectory) {\r\n addSharepointFolderDirectory(item);\r\n }\r\n }}\r\n >\r\n
\r\n {treeItem &&\r\n {\r\n if (showChevron) {\r\n e.stopPropagation();\r\n onTreeExpand(false);\r\n }\r\n }}>\r\n {treeItem.isLoading && !treeItem.foldersNextHref && }\r\n {showChevron && }\r\n
\r\n }\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n {item?.name || treeItem?.name}\r\n \r\n \r\n \r\n {treeItem && !treeItem.isLoading && treeItem.loaded && \r\n
\r\n {\r\n e.stopPropagation();\r\n onTreeExpand(true);\r\n }}\r\n />\r\n
\r\n
}\r\n {hasFileSelected && isValidDropZone && !generalModule.isInConentMangerMode() && (\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n handleSaveClick(item ? item : treeItem, e);\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n if (item) {\r\n openFolderOptions(item);\r\n } else {\r\n openFolderOptionsTree(e);\r\n }\r\n }}\r\n />\r\n
\r\n
\r\n \r\n )\r\n};","import { FontIcon, Icon, Spinner, SpinnerSize, Text, TooltipHost, TooltipOverflowMode } from \"@fluentui/react\";\r\nimport { FileIconType, getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { SharePointFolderContentTypeIds } from \"../../../../../config/constants\";\r\nimport { dropZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { ISharePointFolder } from \"../../../../../interfaces/ISharePointFolder\";\r\nimport { addUploadedFiles } from \"../../../../../redux/modules/file\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { IFolderLocation } from \"../../../../../interfaces/ISharepointDocument\";\r\nimport { buildWorkingDirectoryFromTree, findWorkingDirectories, treeViewItemStyle } from \"../../../../helpers/treeHelperGeneral\";\r\nimport generalModule from \"../../../../../../../utilities/GeneralModule\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { ComponentTypes } from \"../../../../../config/config\";\r\nimport { OneDriveUrlHelper } from \"../../../../helpers/oneDriveUrlHelper\";\r\nimport { logger } from \"../../../../../../../utilities/logger\";\r\n\r\ninterface ISharePointFolderItemProps {\r\n item?: ISharePointFolder;\r\n treeItem?: IFolderLocation;\r\n isMobile: boolean;\r\n hasFileSelected: boolean;\r\n isValidDropZone: boolean;\r\n allowScroll?: boolean;\r\n getTreeLocations?: () => any[];\r\n onTreeItemClick?: (event: React.SyntheticEvent, treeItem: any) => Promise;\r\n addFolderDirectory?: (item: ISharePointFolder) => Promise;\r\n onSaveClicked: (item: any, e: any) => Promise;\r\n openFolderOptions?: (folderInfo: ISharePointFolder) => void;\r\n openFolderOptionsTree?: (e: any) => void;\r\n onTreeExpand?: (isRefresh: boolean) => void;\r\n}\r\n\r\nexport const SharePointFolderItem = ({ item, treeItem, isMobile, hasFileSelected, isValidDropZone, allowScroll, getTreeLocations, onTreeItemClick, addFolderDirectory, onSaveClicked, openFolderOptions, openFolderOptionsTree, onTreeExpand }: ISharePointFolderItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const user = useSelector((state: RootState) => state.user);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const dragEnter = React.useCallback((event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, [treeItem]);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }, []);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const handleDrop = React.useCallback(async (event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n dragCounter.current = 0;\r\n setIsDraggedOver(false);\r\n\r\n try {\r\n if (DragAndDropHelper.validateDroppedFiles(event)) {\r\n dispatch(addUploadedFiles(await DragAndDropHelper.handleDroppedFiles(event, treeItem)));\r\n onSaveClicked(item ? item : treeItem, event);\r\n }\r\n else if (DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n const newWorkingDirectories = findWorkingDirectories(getTreeLocations(), treeItem);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const isInOneDrive = currDirectory.type == ComponentTypes.OneDrive || currDirectory.type == ComponentTypes.OneDriveSubFolder;\r\n const siteUrl = isInOneDrive ? OneDriveUrlHelper.getSiteUrl(currDirectory.webUrl) : currDirectory.webUrl\r\n\r\n DragAndDropHelper.destinationDirectory = currDirectory;\r\n DragAndDropHelper.handleGridMove(dispatch, siteUrl, directories, isInOneDrive);\r\n }\r\n } catch (error) {\r\n logger(error, \"SharePointFolderItem (handleDrop)\");\r\n }\r\n }, [item, treeItem, onSaveClicked]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string = \"list-item\";\r\n if (treeItem) {\r\n className += ` ${\"tree-item\"}`;\r\n if (treeItem.isSelected) {\r\n className += ` ${\"tree-item-selected\"}`;\r\n }\r\n }\r\n\r\n if (isDraggedOver) {\r\n className += ` dropzone ${dropZoneStyleSets.dropzoneActive}`;\r\n }\r\n else if (isValidDropZone) {\r\n className += ` dropzone`;\r\n }\r\n return className;\r\n }, [isValidDropZone, treeItem, isDraggedOver]);\r\n\r\n const folderStyles: React.CSSProperties = isMobile ? mobileListItemStyle : {};\r\n\r\n const showChevron = React.useMemo((): boolean => {\r\n return treeItem && (((treeItem.canExpand && !treeItem.isLoading) || (treeItem.isLoading && treeItem.foldersNextHref)) &&\r\n !(treeItem.loaded && treeItem.folders?.length === 0));\r\n }, [treeItem]);\r\n\r\n React.useEffect(() => {\r\n let debounceTimer;\r\n if (treeItem && isValidDropZone && isDraggedOver && showChevron && onTreeExpand && !treeItem.expanded && !treeItem.isLoading) {\r\n debounceTimer = setTimeout(() => {\r\n onTreeExpand(false);\r\n }, 1500);\r\n }\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [treeItem, isValidDropZone, isDraggedOver, showChevron, onTreeExpand]);\r\n\r\n return (\r\n {\r\n e.stopPropagation();\r\n if (onTreeItemClick) {\r\n onTreeItemClick(e, treeItem);\r\n }\r\n else if (addFolderDirectory) {\r\n addFolderDirectory(item);\r\n }\r\n }}\r\n >\r\n
\r\n {treeItem &&\r\n
{\r\n if (showChevron) {\r\n e.stopPropagation();\r\n onTreeExpand(false);\r\n }\r\n }}>\r\n {treeItem.isLoading && !treeItem.foldersNextHref && }\r\n {showChevron && }\r\n
\r\n }\r\n
\r\n \r\n
\r\n \r\n \r\n {(item || treeItem).name}\r\n \r\n {item && item.path &&
\r\n \r\n {item.path}\r\n \r\n
}\r\n
\r\n
\r\n {treeItem && ((treeItem.canExpand && !treeItem.isLoading && treeItem.loaded) || (treeItem.canRefresh && !treeItem.isLoading)) && \r\n
\r\n {\r\n e.stopPropagation();\r\n onTreeExpand(true);\r\n }}\r\n />\r\n
\r\n
}\r\n {isValidDropZone && !(treeItem && treeItem?.isLoadingChannelInfo) && !generalModule.isInConentMangerMode() && (\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n onSaveClicked(item ? item : treeItem, e);\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n \r\n {(!treeItem || !treeItem?.isLoadingChannelInfo) &&
\r\n {\r\n e.stopPropagation();\r\n if (item) {\r\n openFolderOptions(item);\r\n } else {\r\n openFolderOptionsTree(e);\r\n }\r\n }}\r\n />\r\n
}\r\n {treeItem && treeItem?.isLoadingChannelInfo && }\r\n
\r\n \r\n )\r\n};","import React from \"react\";\r\nimport { FontIcon, Spinner, SpinnerSize, Text, TooltipDelay, TooltipHost, TooltipOverflowMode } from \"@fluentui/react\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { dragZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { hasChildren, treeViewItemStyle } from \"../../../../helpers/treeHelperGeneral\";\r\nimport { ISiteInfoLocation } from \"../../../../../interfaces/ISiteInfo\";\r\nimport { fontIconStyles } from \"../../../../../styles/iconStyles\";\r\n\r\ninterface ISiteItemProps {\r\n item: ISiteInfoLocation;\r\n isMobile: boolean;\r\n allowScroll: boolean;\r\n onSiteClick: (item: ISiteInfoLocation) => void;\r\n onOptionsClick: (item: ISiteInfoLocation) => void;\r\n onExpandCollapseClick: (item: ISiteInfoLocation, isRefresh?: boolean) => Promise\r\n}\r\n\r\nexport const SiteItem = ({ item, isMobile, allowScroll, onSiteClick, onOptionsClick, onExpandCollapseClick }: ISiteItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const dragEnter = React.useCallback((event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n event.dataTransfer.dropEffect = \"none\";\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, []);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n event.dataTransfer.dropEffect = \"none\";\r\n }, []);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string = \"list-item\";\r\n if (item) {\r\n className += ` ${\"tree-item\"}`;\r\n if (item.isSelected) {\r\n className += ` ${\"tree-item-selected\"}`;\r\n }\r\n }\r\n\r\n if (isDraggedOver) {\r\n className += ` dropzone ${dragZoneStyleSets.dragzoneActive}`;\r\n }\r\n else {\r\n className += ` dropzone`;\r\n }\r\n return className;\r\n }, [item, isDraggedOver]);\r\n\r\n const showChevron = React.useMemo((): boolean => {\r\n return item.canExpand\r\n && !item.isLoading\r\n && !(item.loaded && !hasChildren(item));\r\n }, [item]);\r\n\r\n React.useEffect(() => {\r\n let debounceTimer;\r\n if (isDraggedOver && showChevron && !item.expanded && !item.isLoading) {\r\n debounceTimer = setTimeout(() => {\r\n onExpandCollapseClick(item, false);\r\n }, 1500);\r\n }\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [item, isDraggedOver, showChevron, onExpandCollapseClick]);\r\n\r\n const folderStyles: React.CSSProperties = isMobile ? mobileListItemStyle : {};\r\n\r\n return (\r\n {\r\n e.stopPropagation();\r\n onSiteClick(item);\r\n }}\r\n onDragEnter={dragEnter}\r\n onDragOver={dragOver}\r\n onDragLeave={dragLeave}>\r\n
\r\n {\r\n if (showChevron) {\r\n e.stopPropagation();\r\n onExpandCollapseClick(item, false);\r\n }\r\n }}\r\n >\r\n {item.isLoading && }\r\n {showChevron && }\r\n
\r\n
\r\n {item.isHub\r\n ? \r\n : }\r\n
\r\n \r\n \r\n {item.name}\r\n \r\n \r\n \r\n {item.canExpand && !item.isLoading && item.loaded && \r\n
\r\n {\r\n e.stopPropagation();\r\n onExpandCollapseClick(item, true);\r\n }}\r\n />\r\n
\r\n
}\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n onOptionsClick(item);\r\n }}\r\n />\r\n
\r\n
\r\n \r\n )\r\n};","import { FontIcon, Spinner, SpinnerSize, Text, TooltipHost, TooltipOverflowMode } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { DragAndDropHelper } from \"../../../../../../../utilities/DragAndDropHelper\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { dropZoneStyleSets } from \"../../../../../config/controlStyles\";\r\nimport { ITeamChannelDto, ITeamChannelLocationDto } from \"../../../../../interfaces/services/ITeamChannelDto.1\";\r\nimport { addUploadedFiles } from \"../../../../../redux/modules/file\";\r\nimport { fontIconStyles, smallPadLeft } from \"../../../../../styles/iconStyles\";\r\nimport { mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { buildWorkingDirectoryFromTree, findWorkingDirectories, treeViewItemStyle } from \"../../../../helpers/treeHelperGeneral\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { logger } from \"../../../../../../../utilities/logger\";\r\nimport { ChannelPrivateIcon } from \"../../SvgIcons/ChannelPrivateIcon\";\r\nimport { ChannelShareIcon } from \"../../SvgIcons/ChannelShareIcon\";\r\n\r\ninterface ITeamChannelItemProps {\r\n item?: ITeamChannelDto;\r\n treeItem?: ITeamChannelLocationDto;\r\n isMobile: boolean;\r\n isValidDropZone: boolean;\r\n hasFileSelected: boolean;\r\n allowScroll?: boolean;\r\n getTreeLocations?: () => any[];\r\n onChannelClicked: (event: React.SyntheticEvent, item: ITeamChannelDto, isSaveRequest?: boolean, e?: any) => Promise;\r\n onTreeItemClick?: (event: React.SyntheticEvent, treeItem: any) => Promise;\r\n openFolderOptions?: (teamChannel: ITeamChannelDto) => Promise;\r\n openFolderOptionsTree?: (e: any) => void;\r\n onTreeExpand?: (isRefresh: boolean) => void;\r\n inLocationsComponent?: boolean;\r\n inTeamsComponent?: boolean;\r\n inSharepointComponent?: boolean;\r\n}\r\n\r\nexport const TeamChannelItem = ({ item, treeItem, isMobile, isValidDropZone, hasFileSelected, allowScroll, getTreeLocations, onChannelClicked, onTreeItemClick, openFolderOptions, openFolderOptionsTree, onTreeExpand, inLocationsComponent, inTeamsComponent, inSharepointComponent }: ITeamChannelItemProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const user = useSelector((state: RootState) => state.user);\r\n\r\n const [isDraggedOver, setIsDraggedOver] = React.useState(false);\r\n const dragCounter = React.useRef(0);\r\n\r\n const dragEnter = React.useCallback(async (event: React.DragEvent) => {\r\n if (DragAndDropHelper.validateDroppedFiles(event) || DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n dragCounter.current = dragCounter.current + 1;\r\n setIsDraggedOver(true);\r\n }\r\n }, [treeItem]);\r\n\r\n const dragOver = React.useCallback((event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }, []);\r\n\r\n const dragLeave = React.useCallback((event: React.DragEvent) => {\r\n event.stopPropagation();\r\n if (isDraggedOver) {\r\n dragCounter.current = dragCounter.current - 1;\r\n if (!dragCounter.current || event.target === event.currentTarget) {\r\n setIsDraggedOver(false);\r\n }\r\n }\r\n }, [isDraggedOver]);\r\n\r\n const handleDrop = React.useCallback(async (event: React.DragEvent) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n dragCounter.current = 0;\r\n setIsDraggedOver(false);\r\n\r\n try {\r\n if (DragAndDropHelper.validateDroppedFiles(event)) {\r\n const uploadedFiles = await DragAndDropHelper.handleDroppedFiles(event)\r\n dispatch(addUploadedFiles(uploadedFiles));\r\n onChannelClicked(event, item ? item : treeItem, true);\r\n }\r\n else if (DragAndDropHelper.validateDroppedGridItems(event, false, false, undefined, treeItem)) {\r\n const newWorkingDirectories = findWorkingDirectories(getTreeLocations(), treeItem);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const siteUrl = currDirectory.webUrl\r\n\r\n const origin = new URL(currDirectory.webUrl).origin;\r\n const homeItemServerRelPath = `${currDirectory.webUrl.replace(origin, \"\")}/${currDirectory.directory}`;\r\n\r\n DragAndDropHelper.destinationDirectory = currDirectory;\r\n DragAndDropHelper.handleGridMove(dispatch, siteUrl, directories, false, homeItemServerRelPath);\r\n }\r\n } catch (error) {\r\n logger(error, \"TeamChannelItem.tsx (handleDrop)\");\r\n }\r\n }, [item, treeItem, onChannelClicked]);\r\n\r\n const className = React.useMemo((): string => {\r\n let className: string = \"list-item\";\r\n if (treeItem) {\r\n className += ` ${\"tree-item\"}`;\r\n if (treeItem.isSelected) {\r\n className += ` ${\"tree-item-selected\"}`;\r\n }\r\n }\r\n\r\n if (isDraggedOver) {\r\n className += ` dropzone ${dropZoneStyleSets.dropzoneActive}`;\r\n }\r\n else if (isValidDropZone) {\r\n className += ` dropzone`;\r\n }\r\n return className;\r\n }, [isValidDropZone, treeItem, isDraggedOver]);\r\n\r\n const folderStyles: React.CSSProperties = isMobile ? mobileListItemStyle : {};\r\n\r\n const showChevron = React.useMemo((): boolean => {\r\n return treeItem && (((treeItem.canExpand && !treeItem.isLoading) || (treeItem.isLoading && treeItem.foldersNextHref)) &&\r\n !(treeItem.loaded && treeItem.folders?.length === 0));\r\n }, [treeItem]);\r\n\r\n React.useEffect(() => {\r\n let debounceTimer;\r\n if (treeItem && isValidDropZone && isDraggedOver && showChevron && onTreeExpand && !treeItem.expanded && !treeItem.isLoading) {\r\n debounceTimer = setTimeout(() => {\r\n onTreeExpand(false);\r\n }, 1500);\r\n }\r\n\r\n return () => {\r\n clearTimeout(debounceTimer);\r\n };\r\n }, [treeItem, isValidDropZone, isDraggedOver, showChevron, onTreeExpand]);\r\n\r\n return (\r\n
\r\n {\r\n e.stopPropagation();\r\n if (onTreeItemClick) {\r\n onTreeItemClick(e, treeItem);\r\n }\r\n else if (item) {\r\n onChannelClicked(e, item);\r\n }\r\n }}\r\n >\r\n {treeItem &&\r\n
{\r\n if (showChevron) {\r\n e.stopPropagation();\r\n onTreeExpand(false);\r\n }\r\n }}>\r\n {treeItem.isLoading && !treeItem.foldersNextHref && }\r\n {showChevron && }\r\n
\r\n }\r\n
\r\n \r\n
\r\n \r\n \r\n {item ? item.displayName : treeItem?.displayName}\r\n \r\n \r\n {(item ? item.isPrivate : treeItem?.isPrivate) && }\r\n {(item ? item.isShared : treeItem?.isShared) && }\r\n
\r\n {treeItem && !treeItem.isLoading && treeItem.loaded && \r\n
\r\n {\r\n e.stopPropagation();\r\n onTreeExpand(true);\r\n }}\r\n />\r\n
\r\n
}\r\n {hasFileSelected && isValidDropZone && !(treeItem && treeItem?.isLoadingChannelInfo) && (\r\n \r\n
\r\n {\r\n e.stopPropagation();\r\n onChannelClicked(e, item ? item : treeItem, true);\r\n }}\r\n />\r\n
\r\n
\r\n )}\r\n \r\n {(!treeItem || !treeItem?.isLoadingChannelInfo) &&
\r\n {\r\n e.stopPropagation();\r\n if (item) {\r\n openFolderOptions(item);\r\n } else {\r\n openFolderOptionsTree(e);\r\n }\r\n }}\r\n />\r\n
}\r\n {treeItem && treeItem?.isLoadingChannelInfo && }\r\n
\r\n \r\n )\r\n};","import { IPersonaProps, IDropdownOption, Stack, IStackTokens, TextField, PrimaryButton, IButtonStyles, mergeStyles, Spinner, SpinnerSize, FontIcon, Dropdown, ResponsiveMode, DatePicker, IconButton } from \"@fluentui/react\";\r\nimport React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { LanguageContext } from \"../../../../../../../utilities/LocalizationModule\";\r\nimport { IFile } from \"../../../../../interfaces/IFile\";\r\nimport { IFilePanelInfo } from \"../../../../../interfaces/IFilePanelInfo\";\r\nimport { isMobile, mobileListItemStyle } from \"../../../../../styles/mobileStyles\";\r\nimport { useLazyGetDriveInfoFromSharepointIdQuery } from \"../../../redux/api/graph/api-graph-slice\";\r\nimport { IGraphCreateShareableLinkRequest, ShareableLinkRequestType } from \"../../../redux/api/graph/api-graph-interfaces\";\r\nimport { RootState } from \"../../../redux/storeMain\";\r\nimport { PeopleFinder } from \"../../../_shared/PeopleFinder/PeopleFinder\";\r\nimport { Fileview } from \"../../Explorer/Fileview/Fileview\";\r\nimport { ItemLink, HookType, IHookResult, SignRequestRecipient, SignRequestResult, ApprovalRequest } from \"../../../redux/api/local/api-local-interfaces\";\r\nimport { SuccessErrorMessage } from \"../../../_shared/SuccessErrorMessage/SuccessErrorMessage\";\r\nimport { getFileItemIdFromRelativePath, getFileItemInfo, getItem, getItemApprovalRequestInfo, getItemWebViewUrl } from \"../../../../../services/GraphService\";\r\nimport { IDriveInfo } from \"../../../../../interfaces/IDriveInfo\";\r\nimport authModule from \"../../../../../../../utilities/AuthModule\";\r\nimport { ComponentTypes } from \"../../../../../config/config\";\r\nimport { splitName } from \"../../../../helpers/stringHelper\";\r\nimport { apiGetHooksByType, apiRequestApproval } from \"../../../../../services/ApiService\";\r\nimport { sharePointInternalFileName } from \"../../../../../config/constants\";\r\nimport { getValidHooks } from \"../../../../../services/HooksService\";\r\nimport { DateService } from \"../../../../../services/dateService\";\r\nimport { DayPickerStrings, firstDayOfWeek } from \"../../../../../config/dateSettings\";\r\nimport dayjs from \"dayjs\";\r\nimport { clearButtonClass } from \"../../../../../config/controlStyles\";\r\nimport { clearButtonProps, datePickerStyles, iconButtonProps, iconButtonStyles, textFieldStyles } from \"../../../../../styles/datePickerStyles\";\r\n\r\nconst panelActionButtonStyle: Partial = {\r\n root: {\r\n marginTop: 20,\r\n },\r\n};\r\n\r\nexport interface IFileApproval extends IFile {\r\n itemId?: string\r\n folderId?: string;\r\n serverRelativePath?: string;\r\n}\r\n\r\nexport interface ISigningPanelProps {\r\n file?: IFilePanelInfo;\r\n files?: IFileApproval[];\r\n tenantEnablePII?: boolean;\r\n tenantGuid?: string;\r\n requestor?: string;\r\n isContentManager?: boolean;\r\n closeClicked: () => void;\r\n listName?: string;\r\n}\r\n\r\nconst stackTokens: IStackTokens = { childrenGap: 20 };\r\n\r\nexport const SigningPanel = ({ file, files, tenantEnablePII = false, tenantGuid, requestor, isContentManager, closeClicked, listName }: ISigningPanelProps) => {\r\n const user = useSelector((state: RootState) => state.user);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories?.oneDriveRootDetails);\r\n\r\n const [getDriveInfoFromSharepointId] = useLazyGetDriveInfoFromSharepointIdQuery();\r\n\r\n const [fileViews, setFileViews] = React.useState([]);\r\n const [isBusySending, setIsBusySending] = React.useState(false);\r\n const [formDisabled, setFormDisabled] = React.useState(true);\r\n const [otherError, setOtherError] = React.useState('');\r\n\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const [isSuccessRequestSigning, setIsSuccessRequestSigning] = React.useState(false);\r\n const [isErrorRequestSigning, setIsErrorRequestSigning] = React.useState(false);\r\n const [errorRequestSigning, setErrorRequestSigning] = React.useState();\r\n\r\n const [hooks, setHooks] = React.useState([])\r\n\r\n const [selectedFlow, setSelectedFlow] = React.useState()\r\n\r\n const [options, setOptions] = React.useState();\r\n const [signingFiles, setSigningFiles] = React.useState();\r\n const [additionalDetails, setAdditionalDetails] = React.useState('');\r\n const [dueDate, setDueDate] = React.useState();\r\n const [dateFormat] = React.useState(new Intl.DateTimeFormat());\r\n\r\n const isInOneDrive = React.useRef(currentDirectory?.type == ComponentTypes.OneDrive || currentDirectory?.type == ComponentTypes.OneDriveSubFolder);\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n const hooks = await apiGetHooksByType({ \r\n TenantGUID: tenantGuid ?? user.account.tenantId,\r\n HookTypeId: HookType.Sign \r\n });\r\n\r\n\r\n const validHooks = getValidHooks(hooks, currentDirectory);\r\n\r\n setHooks(validHooks);\r\n\r\n if (validHooks.length === 1) {\r\n setSelectedFlow(validHooks[0]);\r\n }\r\n\r\n setOptions(validHooks.map(hook => {\r\n return {\r\n key: hook.id,\r\n text: hook.name\r\n }\r\n }));\r\n })();\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (signingFiles) {\r\n setFileViews(\r\n signingFiles?.map((item, index) => (\r\n
\r\n \r\n
\r\n ))\r\n );\r\n }\r\n }, [signingFiles]);\r\n\r\n React.useEffect(() => {\r\n let tempFiles: IFileApproval[] = [];\r\n if (file) {\r\n tempFiles.push({\r\n ...file\r\n })\r\n setSigningFiles(tempFiles);\r\n }\r\n else {\r\n setSigningFiles(files);\r\n }\r\n }, [])\r\n\r\n const [selectedRecipients, setSelectedRecipients] = React.useState([])\r\n const selectedPersonasChanged = (selectedPersonas: IPersonaProps[]) => {\r\n setSelectedRecipients(selectedPersonas.map(persona => {\r\n let { firstName, lastName } = splitName(persona.text);\r\n return {\r\n email: persona.secondaryText,\r\n firstName,\r\n lastName\r\n }\r\n }));\r\n }\r\n\r\n const openSigningRequestWindow = (signRequestResults: SignRequestResult) => {\r\n const winLeft = window.screenLeft ? window.screenLeft : window.screenX;\r\n const winTop = window.screenTop ? window.screenTop : window.screenY;\r\n\r\n const width = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\r\n const height = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\r\n const left = Math.max(0, ((width / 2) - (600 / 2)) + winLeft);\r\n const top = Math.max(0, ((height / 2) - (800 / 2)) + winTop);\r\n\r\n window.open(signRequestResults.designerUrl, \"Docubird.Signing\", `width=800, height=600, top=${top}, left=${left}, scrollbars=yes`);\r\n }\r\n\r\n const sendClicked = async () => {\r\n setIsBusySending(true);\r\n setIsErrorRequestSigning(false);\r\n setIsSuccessRequestSigning(false);\r\n setErrorRequestSigning(null);\r\n setOtherError('');\r\n const tempFiles = [...signingFiles];\r\n\r\n const links: ItemLink[] = [];\r\n let hasError = false;\r\n const result = await Promise.all(\r\n\r\n tempFiles.map(async tempFile => {\r\n let itemId = '';\r\n let driveId = '';\r\n\r\n if (!isContentManager) {\r\n driveId = tempFile.driveId;\r\n if (tempFile.id && !tempFile.itemId && !tempFile.hasGraphItemId) {\r\n\r\n const driveInfoResults = await getDriveInfoFromSharepointId({ request: { driveId, sharepointId: tempFile.id }, accessToken: await authModule.getGraphAccessToken() }).unwrap();\r\n\r\n if (driveInfoResults.value.length > 0) {\r\n itemId = driveInfoResults.value[0].id;\r\n }\r\n else {\r\n const driveInfo: IDriveInfo = !tempFile.folderId ? { id: driveId, driveId: null } : { id: tempFile.folderId, driveId }\r\n\r\n const fileItem = await getFileItemInfo(driveInfo, tempFile.name, \"id,webUrl\");\r\n if (fileItem) {\r\n itemId = fileItem.id;\r\n }\r\n }\r\n }\r\n else if (tempFile.hasGraphItemId) {\r\n itemId = tempFile?.id;\r\n }\r\n else {\r\n //source: Advanced Search\r\n itemId = tempFile.itemId;\r\n if (!itemId) {\r\n itemId = await getFileItemIdFromRelativePath(await authModule.getGraphAccessToken(), driveId, tempFile[\"serverRelativePath\"]);\r\n }\r\n }\r\n } else {\r\n //source: Content Manager\r\n driveId = isInOneDrive.current ? oneDriveRootDetails?.driveId : (currentDirectory?.parentId ? currentDirectory?.parentId : currentDirectory?.id);\r\n\r\n const spItemUrlparts = tempFile['.spItemUrl'].split('/');\r\n itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n\r\n if (!itemId) {\r\n const driveUrl = new URL(await getItemWebViewUrl(await authModule.getGraphAccessToken(), driveId, null));\r\n const folderUrl = new URL(driveUrl.origin + tempFile['FileRef']);\r\n itemId = await getFileItemIdFromRelativePath(await authModule.getGraphAccessToken(), driveId, folderUrl.pathname.replace(driveUrl.pathname, \"\"), false);\r\n }\r\n }\r\n\r\n if (itemId) {\r\n try {\r\n const fileDetails = await getItemApprovalRequestInfo(driveId, itemId);\r\n\r\n const link: ItemLink = {\r\n name: tempFile.name || tempFile[\"Name\"] || tempFile[sharePointInternalFileName] || \"\",\r\n fullWebUrl: fileDetails?.listItem?.webUrl,\r\n uniqueId: fileDetails?.sharepointIds?.listItemUniqueId,\r\n siteUrl: fileDetails?.sharepointIds?.siteUrl,\r\n listId: fileDetails?.sharepointIds?.listId,\r\n listName: listName || currentDirectory?.DocumentLibrary || (await getItem(await authModule.getGraphAccessToken(), driveId, null))?.name,\r\n serverRelativeUrl: tempFile[\"FileRef\"],\r\n itemId: tempFile[\"ID\"] || fileDetails?.sharepointIds?.listItemId\r\n }\r\n\r\n links.push(link);\r\n\r\n Promise.resolve(link);\r\n } catch (error) {\r\n hasError = true;\r\n setOtherError(languageStrings.SigningRequestError);\r\n Promise.reject(languageStrings.SigningRequestError);\r\n }\r\n }\r\n })\r\n );\r\n\r\n if (result && !hasError) {\r\n const signingRequest: ApprovalRequest = {\r\n hookId: selectedFlow.id,\r\n hookTypeId: HookType.Sign,\r\n hookName: selectedFlow.name,\r\n tenantGuid: tenantGuid ? tenantGuid : user.account.tenantId,\r\n requestor: requestor ? requestor : user.account.username,\r\n approvers: selectedRecipients.map(x => x.email),\r\n dueDate: dueDate ?? (selectedFlow.dueDateDays > 0 ? dayjs().add(selectedFlow.dueDateDays, \"day\").toDate() : null),\r\n // message: additionalDetails,\r\n details: additionalDetails,\r\n // documents: links\r\n itemLinks: links,\r\n }\r\n\r\n try {\r\n await apiRequestApproval(signingRequest);\r\n setIsSuccessRequestSigning(true);\r\n setIsBusySending(false);\r\n } catch (error) {\r\n setIsErrorRequestSigning(true);\r\n setIsBusySending(false);\r\n error?.response ? setErrorRequestSigning(error?.response) : setOtherError(languageStrings.SigningRequestError);\r\n }\r\n\r\n } else {\r\n setIsBusySending(false);\r\n }\r\n }\r\n\r\n React.useEffect(() => {\r\n let isDisabled = false;\r\n if (!selectedFlow) {\r\n isDisabled = true;\r\n } else if (selectedRecipients?.length === 0) {\r\n isDisabled = true;\r\n }\r\n\r\n setFormDisabled(isDisabled);\r\n }, [selectedFlow, selectedRecipients]);\r\n\r\n const minItems = 5;\r\n const [showMoreIsClicked, setShowMore] = React.useState(false);\r\n const [sectionStyle, setSectionStyle] = React.useState();\r\n\r\n React.useEffect(() => {\r\n const itemHeight = isMobile() ? mobileListItemStyle.height : 40;\r\n let containerHeight = itemHeight * signingFiles?.length;\r\n\r\n if (!showMoreIsClicked) {\r\n containerHeight = signingFiles?.length > minItems ? itemHeight * minItems : itemHeight * signingFiles?.length;\r\n }\r\n\r\n setSectionStyle(\r\n mergeStyles({\r\n maxHeight: containerHeight,\r\n overflow: \"hidden\",\r\n transition: \"max-height 0.5s ease-in-out\",\r\n })\r\n );\r\n }, [showMoreIsClicked, signingFiles]);\r\n\r\n const showMore = signingFiles?.length > minItems && (\r\n setShowMore((prevShowMoreIsClicked) => !prevShowMoreIsClicked)}\r\n style={{ marginTop: \"5px\" }}\r\n >\r\n \r\n {!showMoreIsClicked ? languageStrings.ShowMore : languageStrings.ShowLess}\r\n \r\n );\r\n\r\n const flowChanged = (event: React.FormEvent, item: IDropdownOption): void => {\r\n setSelectedFlow(hooks.find(x => x.id === item.key));\r\n }\r\n\r\n const onFormatDate = React.useCallback((date?: Date): string => {\r\n return !date || date?.getTime() !== date?.getTime() ? \"\" : dateFormat.format(date);\r\n }, [dateFormat]);\r\n\r\n const onClearClick = (ev: React.MouseEvent) => {\r\n if (!ev.defaultPrevented) {\r\n setDueDate(undefined);\r\n ev.stopPropagation();\r\n ev.preventDefault();\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n {fileViews}\r\n
\r\n
\r\n {showMore}\r\n \r\n\r\n flowChanged(event, item)}\r\n />\r\n\r\n \r\n\r\n {Number.isInteger(selectedFlow?.dueDateDays) &&\r\n 0 ? languageStrings.DueDateDescription.replace(\"{days}\", selectedFlow.dueDateDays.toString()) : languageStrings.EnterDate}\r\n ariaLabel={languageStrings.DueDate}\r\n showMonthPickerAsOverlay={true}\r\n onSelectDate={setDueDate}\r\n formatDate={onFormatDate}\r\n textField={{\r\n onRenderSuffix: () => {\r\n return (\r\n
\r\n \r\n
)\r\n },\r\n styles: textFieldStyles\r\n }}\r\n styles={datePickerStyles}\r\n />}\r\n\r\n setAdditionalDetails(newValue)} />\r\n\r\n {(isSuccessRequestSigning || isErrorRequestSigning || otherError) && \r\n 1}\r\n successMessage={languageStrings.SigningRequestCreated}\r\n errorMessage={otherError?.length > 1 ? otherError : languageStrings.SigningRequestError}\r\n errorList={errorRequestSigning ? (errorRequestSigning as any).data.failedFileNames : null}\r\n />\r\n }\r\n\r\n \r\n {!isSuccessRequestSigning && sendClicked()}\r\n disabled={isBusySending || formDisabled}\r\n >\r\n {isBusySending && }\r\n }\r\n {isSuccessRequestSigning && closeClicked()}\r\n />}\r\n \r\n
\r\n \r\n )\r\n};","import * as React from 'react';\r\nimport { defaultFontColor, flexTooltipHost, svgIconStyles } from '../../../../styles/iconStyles';\r\nimport { TooltipHost } from '@fluentui/react';\r\nimport { LanguageContext } from '../../../../../../utilities/LocalizationModule';\r\n\r\nexport const ChannelPrivateIcon: React.FC> = (props) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n return \r\n \r\n \r\n \r\n \r\n}","import * as React from 'react';\r\nimport { defaultFontColor, flexTooltipHost, svgIconStyles } from '../../../../styles/iconStyles';\r\nimport { TooltipHost } from '@fluentui/react';\r\nimport { LanguageContext } from '../../../../../../utilities/LocalizationModule';\r\n\r\nexport const ChannelShareIcon: React.FC> = (props) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n return \r\n \r\n \r\n \r\n \r\n}","import * as React from \"react\";\r\nimport { Stack, MessageBar, MessageBarType, ActionButton, Spinner, CompoundButton, SpinnerSize } from \"@fluentui/react\";\r\nimport { LanguageContext } from \"../../../../utilities/LocalizationModule\";\r\nimport { RootState } from \"../../redux\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { logger } from \"../../../../utilities/logger\";\r\nimport { IFileSaveResult } from \"../_v2/redux/api/local/api-local-interfaces\";\r\nimport authModule from \"../../../../utilities/AuthModule\";\r\nimport { getItemAbsoluteUrl } from \"../../services/SharePointRestServices\";\r\nimport { ComponentTypes } from \"../../config/config\";\r\nimport { SearchOpenExtensionHelper } from \"../helpers/SearchOpenExtensionHelper\";\r\nimport { getFileItemInfo, getItemCustomSelect, getItemWebViewUrl, getListItemWebUrl } from \"../../services/GraphService\";\r\nimport { GetOfficeContextApp } from \"../helpers/officeHelper\";\r\nimport { SaveMode } from \"../enums/SaveModeEnum\";\r\nimport { IDriveInfo } from \"../../interfaces/IDriveInfo\";\r\nimport generalModule from \"../../../../utilities/GeneralModule\";\r\nimport { OneDriveUrlHelper } from \"../helpers/oneDriveUrlHelper\";\r\n\r\ninterface IAfterSaveAppSelectorProps {\r\n onSaveLocation?: () => void;\r\n saveResult?: IFileSaveResult;\r\n saveMode: SaveMode\r\n}\r\n\r\nconst getFileExtension = (name: string) => {\r\n const fileParts = name?.split(\".\");\r\n return fileParts?.length > 1 ? fileParts[fileParts.length - 1] : \"\";\r\n}\r\n\r\nexport const AfterSaveAppSelector = ({ onSaveLocation, saveResult, saveMode }: IAfterSaveAppSelectorProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories?.workingDirectories[state.workingDirectories?.workingDirectories?.length - 1] : null);\r\n const oneDriveRootDetails = useSelector((state: RootState) => state.workingDirectories?.oneDriveRootDetails);\r\n const oneDriveWebUrl = useSelector((state: RootState) => state.user.oneDriveWebUrl);\r\n const userAccount = useSelector((state: RootState) => state.user.account);\r\n\r\n const [isOpeningOnline, setIsOpeningOnline] = React.useState(false);\r\n const [isOpeningLocal, setIsOpeningLocal] = React.useState(false);\r\n\r\n const isInOneDrive = React.useRef(currentDirectory?.type == ComponentTypes.OneDrive || currentDirectory?.type == ComponentTypes.OneDriveSubFolder || currentDirectory?.webUrl === oneDriveWebUrl);\r\n\r\n const getDriveInfo = (): IDriveInfo => {\r\n return !currentDirectory.parentId\r\n ? { id: currentDirectory.id, driveId: null }\r\n : { id: currentDirectory.id, driveId: currentDirectory.parentId };\r\n };\r\n\r\n const openFile = async (isLocal: boolean) => {\r\n try {\r\n isLocal ? setIsOpeningLocal(true) : setIsOpeningOnline(true);\r\n\r\n if (saveResult && saveResult.succeededFiles?.length > 0) {\r\n const uploadedFile = saveResult.succeededFiles[0];\r\n\r\n if (uploadedFile) {\r\n if (isLocal && saveMode === SaveMode.SaveAsPdf && getFileExtension(uploadedFile.name)?.trim().toLowerCase() === \"pdf\") {\r\n const driveId = !isInOneDrive.current ? (!currentDirectory.parentId ? currentDirectory.id : currentDirectory.parentId) : oneDriveRootDetails.driveId;\r\n\r\n const userEmail: string = userAccount.username;\r\n const userId: string = userAccount.uniqueId;\r\n\r\n let file: any;\r\n let itemId: string;\r\n let fileName: string;\r\n let fileId: string;\r\n let siteId: string;\r\n let listId: string;\r\n let webUrl: string;\r\n\r\n if (isInOneDrive.current) {\r\n itemId = uploadedFile.uniqueId;\r\n file = itemId && await getItemCustomSelect(await authModule.getGraphAccessToken(), driveId, itemId, \"name,sharepointIds\");\r\n }\r\n else {\r\n file = await getFileItemInfo(getDriveInfo(), uploadedFile.name, \"id,name,sharepointIds\");\r\n }\r\n\r\n fileId = file.sharepointIds.listItemUniqueId;\r\n siteId = file.sharepointIds.siteId;\r\n listId = file.sharepointIds.listId;\r\n webUrl = file.sharepointIds.siteUrl;\r\n\r\n window.open(OneDriveUrlHelper.getOpenInOneDriveDesktopUrl(fileId, siteId, listId, userEmail, userId, webUrl, fileName), generalModule.isInConentMangerMode() && \"_self\");\r\n }\r\n else {\r\n let url: string;\r\n if (isLocal) {\r\n url = isInOneDrive.current ? await getListItemWebUrl(await authModule.getGraphAccessToken(), oneDriveRootDetails.driveId, uploadedFile.uniqueId) : await getItemAbsoluteUrl(await authModule.getSharePointAccessToken(), currentDirectory.webUrl, currentDirectory.sharePointListId, uploadedFile.uniqueId);\r\n } else {\r\n const driveId = !isInOneDrive.current ? (!currentDirectory.parentId ? currentDirectory.id : currentDirectory.parentId) : oneDriveRootDetails.driveId;\r\n url = await getItemWebViewUrl(await authModule.getGraphAccessToken(), driveId, uploadedFile.uniqueId);\r\n }\r\n\r\n if (url) {\r\n if (isLocal) {\r\n const fileInfo = SearchOpenExtensionHelper.determineOfficeFileType(getFileExtension(uploadedFile.name));\r\n if (fileInfo?.localUrlPrepended) {\r\n window.open(`${fileInfo.localUrlPrepended}${url}`);\r\n }\r\n } else {\r\n window.open(url);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n setIsOpeningLocal(false);\r\n setIsOpeningOnline(false);\r\n\r\n } catch (error) {\r\n logger(error, \"AfterSaveAppSelector.tsx (openFile)\");\r\n }\r\n }\r\n\r\n return (\r\n \r\n {saveMode === SaveMode.Default && \r\n {languageStrings.NotWorkingOnOnlineVersion}\r\n }\r\n openFile(true)}>\r\n {isOpeningLocal && }\r\n \r\n openFile(false)}>\r\n {isOpeningOnline && }\r\n \r\n {\r\n onSaveLocation()\r\n }}\r\n text={languageStrings.Continue}\r\n />\r\n \r\n );\r\n};\r\n","import * as React from \"react\";\r\nimport { Callout, getTheme, mergeStyles, Stack, Text, ISearchBoxStyles, Icon, Persona, PersonaSize, IStyle } from \"@fluentui/react\";\r\nimport { SearchBox } from \"./SearchBox/SearchBox\";\r\nimport { LanguageContext } from \"../../../../utilities/LocalizationModule\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { RootState } from \"../../redux\";\r\nimport { setSearch, setSearchFilterType } from \"../../redux/modules/search\";\r\nimport { getFileTypeIconProps } from \"@fluentui/react-file-type-icons\";\r\nimport { FileIconType } from \"@fluentui/react-file-type-icons\";\r\nimport { setContentManagerSearchFilterType, setContentManagerSearchValue } from \"../../redux/modules/contentManagerDirectory\";\r\nimport { IGraphGetUsersRequest } from \"../_v2/redux/api/graph/api-graph-interfaces\";\r\nimport authModule from \"../../../../utilities/AuthModule\";\r\nimport { logger } from \"../../../../utilities/logger\";\r\nimport { useLazyGetAllUsersQuery, useLazyGetUsersQuery } from \"../_v2/redux/api/graph/api-graph-slice\";\r\nimport { ComponentTypes } from \"../../config/config\";\r\nimport generalModule from \"../../../../utilities/GeneralModule\";\r\nimport { FilterTypeEnum } from \"../enums/FilterTypeEnum\";\r\nimport { validateEmail } from \"../helpers/validateEmail\";\r\nimport { CacheHelper } from \"../../../../utilities/CacheHelper\";\r\nimport { DocubirdCache } from \"../../config/constants\";\r\nimport { setOverlayVisibility } from \"../../redux/modules/overlay\";\r\n\r\nconst theme = getTheme();\r\n\r\nconst styles: Record | IStyle = {\r\n stackMain: {\r\n width: '100%',\r\n },\r\n callout: {\r\n marginTop: -11,\r\n maxHeight: '400px',\r\n minHeight: '220px',\r\n minWidth: '95vw',\r\n },\r\n dropdownElementContainerDiv: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n minHeight: '220px'\r\n },\r\n calloutContainer: {\r\n backgroundColor: 'blue',\r\n },\r\n calloutRoot: {\r\n backgroundColor: 'green',\r\n },\r\n dropdownElement: {\r\n marginTop: 15,\r\n marginBottom: 15,\r\n },\r\n dropdownSection: {\r\n marginLeft: 10,\r\n marginTop: 10,\r\n },\r\n dropdownSectionItems: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n flexWrap: 'wrap',\r\n marginRight: 10,\r\n },\r\n historySearchItem: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n flexWrap: 'wrap',\r\n marginRight: 10,\r\n cursor: 'pointer',\r\n },\r\n iconSpacing: {\r\n marginLeft: 5,\r\n marginRight: 5,\r\n },\r\n quickSearchPadding: {\r\n padding: '10px 5px',\r\n },\r\n svgIcon: {\r\n fonzSize: 16\r\n }\r\n};\r\n\r\nconst filterButtonStyles = {\r\n filterButton: mergeStyles({\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n padding: '4px 10px',\r\n borderRadius: 18,\r\n margin: '5px 2px 0 2px',\r\n border: \"1px solid #c5c5c5\"\r\n }),\r\n filterButtonIcon: mergeStyles({\r\n marginRight: 3,\r\n height: '16px',\r\n }),\r\n};\r\n\r\nconst localSearchBoxStyles: Partial = {\r\n root: {\r\n borderColor: theme.palette.themeDarkAlt,\r\n position: \"relative\",\r\n zIndex: 999999\r\n },\r\n iconContainer: {\r\n alignItems: \"center\"\r\n }\r\n};\r\n\r\nconst searchingForArray = [\r\n { id: 0, buttonText: 'Word', extension: '.docx', filterType: FilterTypeEnum.Word },\r\n { id: 1, buttonText: 'PowerPoint', extension: '.ppt', filterType: FilterTypeEnum.PowerPoint },\r\n { id: 2, buttonText: 'Excel', extension: '.xls', filterType: FilterTypeEnum.Excel },\r\n { id: 3, buttonText: 'PDF', extension: '.pdf', filterType: FilterTypeEnum.PDF },\r\n { id: 4, buttonText: 'Email', extension: '.eml', filterType: FilterTypeEnum.Email },\r\n { id: 5, buttonText: 'All files', extension: '.txt', filterType: FilterTypeEnum.AllFiles },\r\n { id: 7, buttonText: 'Folder', type: FileIconType.folder, filterType: FilterTypeEnum.Folder },\r\n];\r\n\r\nconst createImageProps = (src: string, alt: string) => ({\r\n imageProps: {\r\n src,\r\n alt,\r\n style: { width: '16px' },\r\n },\r\n});\r\n\r\ninterface DropDownSearchProps {\r\n setShowGeneralSearchElement?: (show: boolean) => void;\r\n searchBoxStyles?: Partial;\r\n hideLocations?: boolean\r\n}\r\n\r\ninterface FilterButtonProps {\r\n id?: number,\r\n extension?: string,\r\n type?: FileIconType,\r\n buttonText: string,\r\n handlerFunction?: (extension: number) => void,\r\n selectedFilter?: FilterTypeEnum | \"\",\r\n brand?: string,\r\n filterType: FilterTypeEnum\r\n}\r\n\r\nconst FilterButton = ({ id, extension = \"\", type, buttonText, handlerFunction, selectedFilter, brand }: FilterButtonProps) => {\r\n const [pressed, setPressed] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n setPressed(selectedFilter === id);\r\n }, [selectedFilter]);\r\n\r\n const handleClick = () => {\r\n setPressed(!pressed);\r\n handlerFunction(id);\r\n };\r\n\r\n return (\r\n
{ e.preventDefault(); handleClick() }} className={filterButtonStyles.filterButton} style={{ backgroundColor: pressed ? '#097dd5' : '#fff', cursor: \"pointer\" }}>\r\n
\r\n {extension !== \"\"\r\n ? \r\n : brand !== undefined\r\n ? \r\n : type !== undefined\r\n ? \r\n : \r\n }\r\n
\r\n {buttonText}\r\n
\r\n )\r\n}\r\n\r\nconst SearchMentionComponent = ({ mentionOptions, selectMention }) => (\r\n \r\n {mentionOptions.map((option) => (\r\n
selectMention(option)} className=\"mentionItem\">\r\n \r\n
\r\n ))}\r\n
\r\n)\r\n\r\n// const getSearchHistory = (): string[] => {\r\n// let searchHistory: string[] = getLocalStorage(localStorageKeys.searchHistory);\r\n// if (!Array.isArray(searchHistory)) {\r\n// searchHistory = JSON.parse(StorageHelper.getItem(localStorageKeys.searchHistory));\r\n// }\r\n// return searchHistory ?? [];\r\n// }\r\n\r\n// const saveSearchHistory = (searchHistory: string[]): void => {\r\n// if (!setLocalStorage(localStorageKeys.searchHistory, searchHistory)) {\r\n// StorageHelper.setItemAsync(localStorageKeys.searchHistory, JSON.stringify(searchHistory));\r\n// }\r\n// }\r\n\r\nconst DropDownSearch: React.FunctionComponent = ({\r\n setShowGeneralSearchElement = () => { },\r\n searchBoxStyles,\r\n hideLocations = false\r\n}: DropDownSearchProps) => {\r\n\r\n const searchBoxRef = React.useRef(null);\r\n const dropdownElementRef = React.useRef(null);\r\n\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const [searchPlaceholder, setSearchPlaceholder] = React.useState(languageStrings.Search);\r\n const [isDropdownVisible, setIsDropdownVisible] = React.useState(false);\r\n\r\n const searchValueConentManagerFromRedux = useSelector((state: RootState) => state.contentManagerDirectory.searchValue);\r\n const workingDir = useSelector((state: RootState) => state.workingDirectories.workingDirectories);\r\n const currentDirectory = useSelector((state: RootState) => state.workingDirectories.workingDirectories.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null);\r\n const user = useSelector((state: RootState) => state.user);\r\n\r\n const [hideLocationsInDropDown, setHideLocationsInDropDown] = React.useState(hideLocations);\r\n\r\n const filterTypeFromRedux = useSelector((state: RootState) => state.search.searchValue.filterType);\r\n const filterTypeContentManagerFromRedux = useSelector((state: RootState) => state.contentManagerDirectory.searchValue.filterType);\r\n\r\n const [filterType, setFilterType] = React.useState(\"\");\r\n\r\n const [mentionOptions, setMentionOptions] = React.useState<{ name: string, email: string }[]>([]);\r\n const [allMentionOptions, setAllMentionOptions] = React.useState<{ name: string, email: string }[]>([]);\r\n const [isSearchMention, setIsSearchMention] = React.useState(false);\r\n // const [searchHistory, setSearchHistory] = React.useState(getSearchHistory());\r\n\r\n const [privateSearchValue, _setPrivateSearchValue] = React.useState(\"\");\r\n const privateSearchValueRef = React.useRef(\"\");\r\n const setPrivateSearchValue = (value: string) => {\r\n privateSearchValueRef.current = value;\r\n _setPrivateSearchValue(value);\r\n };\r\n\r\n const showCallOutTimer = React.useRef();\r\n\r\n const [getAllUsers] = useLazyGetAllUsersQuery();\r\n const [getUsers] = useLazyGetUsersQuery();\r\n\r\n const dispatch = useDispatch();\r\n\r\n React.useEffect(() => {\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchFilterType(filterType))\r\n } else {\r\n dispatch(setSearchFilterType(filterType))\r\n }\r\n\r\n if (filterType !== \"\" && privateSearchValueRef.current?.trim()) {\r\n onSearchFilter(privateSearchValueRef.current);\r\n }\r\n }, [filterType]);\r\n\r\n React.useEffect(() => {\r\n setPrivateSearchValue(\"\");\r\n setIsSearchMention(false);\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchValue(\"\"));\r\n dispatch(setContentManagerSearchFilterType(\"\"));\r\n setFilterType(\"\");\r\n } else {\r\n dispatch(setSearch(\"\"));\r\n dispatch(setSearchFilterType(\"\"));\r\n setFilterType(\"\");\r\n }\r\n\r\n if (!currentDirectory) {\r\n setSearchPlaceholder(languageStrings.Search);\r\n }\r\n else if (currentDirectory.displayName) {\r\n setSearchPlaceholder(`${languageStrings.Search} ${currentDirectory.displayName}`);\r\n }\r\n\r\n if (currentDirectory?.type !== undefined) {\r\n setHideLocationsInDropDown(true);\r\n return;\r\n }\r\n setHideLocationsInDropDown(false);\r\n }, [workingDir, currentDirectory]);\r\n\r\n React.useEffect(() => {\r\n if (generalModule.isInConentMangerMode() && searchValueConentManagerFromRedux.value === \"\" && privateSearchValueRef.current !== \"\") {\r\n setPrivateSearchValue(\"\");\r\n }\r\n }, [searchValueConentManagerFromRedux]);\r\n\r\n React.useEffect(() => {\r\n if (generalModule.isInConentMangerMode() && filterTypeContentManagerFromRedux !== filterType && filterTypeContentManagerFromRedux === \"\") {\r\n setFilterType(filterTypeContentManagerFromRedux)\r\n } else if (!generalModule.isInConentMangerMode() && filterTypeFromRedux !== filterType && filterTypeFromRedux === \"\") {\r\n setFilterType(filterTypeFromRedux)\r\n }\r\n }, [filterTypeFromRedux, filterTypeContentManagerFromRedux]);\r\n\r\n React.useEffect(() => {\r\n (async () => {\r\n try {\r\n let getAllUsersResult = CacheHelper.get(DocubirdCache.users);\r\n if (!getAllUsersResult) {\r\n const request: IGraphGetUsersRequest = {\r\n orderby: 'displayName',\r\n select: 'id,displayName,mail,userPrincipalName'\r\n };\r\n getAllUsersResult = await getAllUsers({ request, accessToken: await authModule.getGraphAccessToken() }).unwrap();\r\n CacheHelper.set(DocubirdCache.users, getAllUsersResult);\r\n }\r\n\r\n if (getAllUsersResult?.value?.length > 0) {\r\n const options = getAllUsersResult?.value.map(user => {\r\n return {\r\n name: user.displayName,\r\n email: user.mail ?? (validateEmail(user.userPrincipalName) ? user.userPrincipalName : undefined)\r\n }\r\n })\r\n setMentionOptions(options);\r\n setAllMentionOptions(options);\r\n };\r\n\r\n } catch (error) {\r\n logger(error, \"DropDownSearch.tsx (getUserProfilePicture, getAllUsers)\");\r\n }\r\n })();\r\n }, []);\r\n\r\n const getMentionSearch = async (value: string) => {\r\n if (value?.startsWith(\"@\")) {\r\n setIsSearchMention(true);\r\n if (value === \"@\") {\r\n setMentionOptions(allMentionOptions);\r\n } else {\r\n const request: IGraphGetUsersRequest = {\r\n filter: value.split('@')[1],\r\n orderby: 'displayName',\r\n select: 'id,displayName,mail,userPrincipalName'\r\n }\r\n\r\n try {\r\n const result = await getUsers({ request, accessToken: await authModule.getGraphAccessToken() }).unwrap();\r\n\r\n if (result) {\r\n const options = result?.value?.map(user => {\r\n return {\r\n name: user.displayName,\r\n email: user.mail ?? (validateEmail(user.userPrincipalName) ? user.userPrincipalName : undefined)\r\n }\r\n })\r\n setMentionOptions(options);\r\n }\r\n } catch (error) {\r\n logger(error, \"DropDownSearch.tsx (getUsers)\");\r\n }\r\n }\r\n setIsDropdownVisible(true);\r\n dispatch(setOverlayVisibility(true));\r\n } else {\r\n setIsSearchMention(false);\r\n }\r\n };\r\n\r\n const selectMention = (mention) => {\r\n const mentionSearchValue: string = privateSearchValueRef.current?.trimStart().startsWith(\"@\") ? privateSearchValueRef.current.split(\"@\")[1] : \"\";\r\n const searchValue = privateSearchValueRef.current.replace(`@${mentionSearchValue}`, `@${mention.name}`);\r\n setPrivateSearchValue(searchValue);\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchValue(searchValue?.trim()));\r\n } else {\r\n onSearchFilter(searchValue);\r\n }\r\n setIsDropdownVisible(false);\r\n dispatch(setOverlayVisibility(false));\r\n };\r\n\r\n // const saveSearchToHistory = (value: string) => {\r\n // let tempArr = [...searchHistory];\r\n // const index = tempArr.indexOf(value);\r\n // if (index !== -1) {\r\n // tempArr.splice(index, 1);\r\n // }\r\n // if (tempArr.length >= 4) {\r\n // tempArr = tempArr.slice(0, 4);\r\n // }\r\n // tempArr.unshift(value);\r\n\r\n // setSearchHistory(tempArr);\r\n // saveSearchHistory(tempArr);\r\n // };\r\n\r\n const handleTextChange = (event?: React.ChangeEvent, value?: string) => {\r\n const searchValue: string = value?.trimStart();\r\n setPrivateSearchValue(searchValue);\r\n getMentionSearch(searchValue);\r\n }\r\n\r\n const onSearchFilter = async (value?: string) => {\r\n setShowGeneralSearchElement(true);\r\n setIsDropdownVisible(false);\r\n dispatch(setOverlayVisibility(false));\r\n // saveSearchToHistory(value);\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchValue(value?.trim()));\r\n } else {\r\n dispatch(setSearch(value?.trim()));\r\n }\r\n }\r\n\r\n const onClearFilter = (e?: React.ChangeEvent,) => {\r\n clearTimeout(showCallOutTimer.current);\r\n setIsDropdownVisible(false);\r\n dispatch(setOverlayVisibility(false));\r\n setIsSearchMention(false);\r\n setFilterType(\"\");\r\n setPrivateSearchValue(\"\");\r\n setShowGeneralSearchElement(false);\r\n if (generalModule.isInConentMangerMode()) {\r\n dispatch(setContentManagerSearchValue(\"\"));\r\n dispatch(setContentManagerSearchFilterType(\"\"));\r\n } else {\r\n dispatch(setSearch(\"\"));\r\n dispatch(setSearchFilterType(\"\"));\r\n }\r\n e.preventDefault();\r\n }\r\n\r\n const onEscapeFilter = () => {\r\n }\r\n\r\n const handleFilter = (filterTypeProp: FilterTypeEnum) => {\r\n if (filterType === filterTypeProp) setFilterType(\"\");\r\n else {\r\n setFilterType(filterTypeProp);\r\n setIsDropdownVisible(false);\r\n dispatch(setOverlayVisibility(false));\r\n }\r\n }\r\n\r\n const handleDropdownBlur = () => {\r\n setIsDropdownVisible(false);\r\n dispatch(setOverlayVisibility(false));\r\n }\r\n\r\n const handleDropdownFocus = () => {\r\n if (currentDirectory?.type === ComponentTypes.Exchange) {\r\n return;\r\n }\r\n\r\n showCallOutTimer.current = setTimeout(() => {\r\n setIsDropdownVisible(true);\r\n dispatch(setOverlayVisibility(true));\r\n }, 75);\r\n }\r\n\r\n const handleHistorySearch = (value: string) => {\r\n setPrivateSearchValue(value);\r\n onSearchFilter(value);\r\n }\r\n\r\n const iconClickHandler = () => {\r\n if (currentDirectory?.type === ComponentTypes.Exchange) {\r\n if (privateSearchValueRef.current) {\r\n onSearchFilter(privateSearchValueRef.current);\r\n }\r\n return;\r\n }\r\n setIsDropdownVisible(true);\r\n dispatch(setOverlayVisibility(true));\r\n }\r\n\r\n const getSearchBoxIcon = (): any => {\r\n switch (filterType) {\r\n case \"\":\r\n return { iconName: \"Search\" };\r\n case FilterTypeEnum.Library:\r\n return { iconName: \"DocLibrary\" };\r\n case FilterTypeEnum.Folder:\r\n return {\r\n ...getFileTypeIconProps({\r\n type: FileIconType.folder,\r\n size: 16,\r\n imageFileType: \"svg\",\r\n }), style: { height: '17px' }\r\n };\r\n case FilterTypeEnum.Teams:\r\n return createImageProps('https://res-1.cdn.office.net/files/fabric-cdn-prod_20230815.002/assets/brand-icons/product/svg/teams_16x1.svg', 'Teams Icon');\r\n case FilterTypeEnum.SharePoint:\r\n return createImageProps('https://res-1.cdn.office.net/files/fabric-cdn-prod_20230815.002/assets/brand-icons/product/svg/sharepoint_16x1.svg', 'SharePoint Icon');\r\n case FilterTypeEnum.OneDrive:\r\n return createImageProps('https://res-1.cdn.office.net/files/fabric-cdn-prod_20230815.002/assets/brand-icons/product/svg/onedrive_16x1.svg', 'OneDrive Icon');\r\n default:\r\n const icon = {\r\n ...getFileTypeIconProps({\r\n extension: searchingForArray[filterType].extension,\r\n size: 16,\r\n imageFileType: \"svg\",\r\n }), style: { height: '17px' }\r\n };\r\n return icon;\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n const handleClickOutside = (event) => {\r\n if (dropdownElementRef.current && !dropdownElementRef.current.contains(event.target) && searchBoxRef.current && !searchBoxRef.current.contains(event.target)) {\r\n handleDropdownBlur();\r\n }\r\n };\r\n\r\n document.addEventListener(\"mousedown\", handleClickOutside);\r\n\r\n return () => {\r\n document.removeEventListener(\"mousedown\", handleClickOutside);\r\n };\r\n }, [searchBoxRef]);\r\n\r\n return (\r\n \r\n \r\n
\r\n e.preventDefault()}\r\n onIconClick={() => iconClickHandler()}\r\n />\r\n
\r\n {isDropdownVisible &&\r\n \r\n {isSearchMention ? :\r\n
\r\n
\r\n {!hideLocationsInDropDown &&
\r\n {languageStrings.Location}\r\n
\r\n {user.settings.enableTeams && { handleFilter(FilterTypeEnum.Teams); }} brand=\"teams\" selectedFilter={filterType} filterType={FilterTypeEnum.Teams} />}\r\n {user.settings.enableSharePoint && { handleFilter(FilterTypeEnum.SharePoint); }} brand=\"sharepoint\" selectedFilter={filterType} filterType={FilterTypeEnum.SharePoint} />}\r\n {user.settings.enableOneDrive && user.oneDriveWebUrl?.length > 0 && { handleFilter(FilterTypeEnum.OneDrive); }} brand=\"onedrive\" selectedFilter={filterType} filterType={FilterTypeEnum.OneDrive} />}\r\n
\r\n
}\r\n {/* {searchHistory.length > 0 &&\r\n
\r\n {languageStrings.History}\r\n {searchHistory.map((item, index) => (\r\n
{ e.preventDefault(); handleHistorySearch(item); }} style={styles.historySearchItem}>\r\n \r\n {item}\r\n
\r\n ))}\r\n
} */}\r\n
\r\n {languageStrings.SearchingFor}\r\n
\r\n {searchingForArray.map(item => !((item.id === 6 && (currentDirectory?.type !== ComponentTypes.SharePointDocuments && currentDirectory?.type !== ComponentTypes.GeneralSearch && currentDirectory !== null)) || (generalModule.isInConentMangerMode() && item.id === 7)) && (\r\n handleFilter(item.filterType)}\r\n selectedFilter={filterType}\r\n type={item.type}\r\n filterType={item.filterType}\r\n />\r\n ))}\r\n
\r\n
\r\n
\r\n
}\r\n }\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default DropDownSearch;\r\n\r\n","import * as React from \"react\";\r\nimport { connect, ConnectedProps } from \"react-redux\";\r\nimport { RootState } from \"../../redux\";\r\nimport { setExpandedItem } from \"../../redux/modules/expanders\";\r\nimport { FontIcon, mergeStyles } from \"@fluentui/react\";\r\nimport { LanguageContext } from \"../../../../utilities/LocalizationModule\";\r\nimport SubTitle from \"./SubTitle\";\r\nimport { detectIEOrEdge, IEEdgeSmoothScroll } from \"../../../../utilities/BrowserUtils\";\r\nimport { ExpanderStateEnum } from \"../enums/expanderStateEnum\";\r\nimport { mobileListItemStyle, isMobile } from \"../../styles/mobileStyles\"\r\n\r\nconst mapStateToProps = (state: RootState) => {\r\n return {\r\n expanders: state.expanders\r\n };\r\n};\r\nconst mapDispatchToProps = { setExpandedItem };\r\n\r\nconst connector = connect(mapStateToProps, mapDispatchToProps);\r\ntype PropsFromRedux = ConnectedProps;\r\ninterface SubTitleProps extends PropsFromRedux {\r\n title: string;\r\n iconName?: string;\r\n expanderNameToToggle?: string;\r\n items: JSX.Element[];\r\n itemsSelected?: number;\r\n extra?: JSX.Element;\r\n hasShowMoreButton?: boolean;\r\n expanderState?: ExpanderStateEnum;\r\n fixedHeight?: number;\r\n isWaitingOnContent?: boolean;\r\n selectedItemsMoreClicked?: () => void;\r\n showMoreClicked?: (showMoreIsClicked: boolean) => void;\r\n filterButton?: JSX.Element;\r\n clearFilterButton?: JSX.Element;\r\n sortOptions?: JSX.Element;\r\n actionButton?: JSX.Element;\r\n canToggle?: boolean;\r\n allowScroll?: boolean;\r\n}\r\n\r\nconst minItems = 5;\r\nconst subTitleHeight = 34;\r\n\r\nconst ExpanderWithSubtitle: React.FunctionComponent = ({\r\n title,\r\n iconName,\r\n expanders,\r\n setExpandedItem,\r\n expanderNameToToggle,\r\n items,\r\n itemsSelected,\r\n extra,\r\n hasShowMoreButton,\r\n expanderState,\r\n fixedHeight,\r\n isWaitingOnContent,\r\n selectedItemsMoreClicked,\r\n showMoreClicked,\r\n filterButton,\r\n clearFilterButton,\r\n sortOptions,\r\n actionButton,\r\n canToggle,\r\n allowScroll\r\n}: SubTitleProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n const [showMoreIsClicked, setShowMore] = React.useState(false);\r\n const [scrollPosition, setScrollPosition] = React.useState(0);\r\n\r\n const collapsed = expanders[expanderNameToToggle];\r\n React.useEffect(() => {\r\n if ((expanderState === ExpanderStateEnum.expanded && collapsed) || (expanderState === ExpanderStateEnum.collapsed && !collapsed)) {\r\n setExpandedItem({ toggle: !expanders[expanderNameToToggle], property: expanderNameToToggle });\r\n }\r\n }, [expanderState]);\r\n\r\n const calculateItemsToDisplay = () => {\r\n const itemHeight = isMobile() ? mobileListItemStyle.height : 40;\r\n return fixedHeight\r\n ? fixedHeight + subTitleHeight + (extra ? itemHeight : 0)\r\n : showMoreIsClicked || !hasShowMoreButton\r\n ? itemHeight * items.length + (extra ? itemHeight : 0) + subTitleHeight\r\n : itemHeight * Math.min(items.length, minItems) + subTitleHeight;\r\n };\r\n\r\n const sectionStyle = allowScroll\r\n ? mergeStyles({\r\n maxHeight: collapsed ? subTitleHeight : calculateItemsToDisplay(),\r\n // overflow: \"hidden\",\r\n // transition: \"max-height 0.5s ease-in-out\"\r\n overflowY: \"hidden\",\r\n width: \"max-content\",\r\n minWidth: \"100%\"\r\n })\r\n : mergeStyles({\r\n maxHeight: collapsed ? subTitleHeight : calculateItemsToDisplay(),\r\n overflow: \"hidden\"\r\n });\r\n\r\n const showMoreStyle = {\r\n maxHeight: collapsed ? 0 : 16,\r\n // transition: \"all 0.35s ease-in-out 0.1s\",\r\n overflow: \"hidden\",\r\n paddingTop: collapsed ? 0 : 5,\r\n paddingBottom: collapsed ? 0 : 5\r\n };\r\n\r\n const toggleShowMore = () => {\r\n if (showMoreClicked) {\r\n showMoreClicked(!showMoreIsClicked);\r\n }\r\n\r\n let scrollableContainer = document.querySelector(\".xb-content-container\");\r\n if (!showMoreIsClicked) {\r\n //About to expand\r\n setScrollPosition(scrollableContainer.scrollTop);\r\n } else {\r\n if (detectIEOrEdge()) {\r\n // scrollableContainer.scrollTop = scrollPosition;\r\n IEEdgeSmoothScroll(scrollableContainer, scrollPosition, 500);\r\n } else {\r\n let scrollOptions: ScrollToOptions = {\r\n top: scrollPosition,\r\n left: 0,\r\n behavior: \"smooth\"\r\n };\r\n scrollableContainer.scrollTo(scrollOptions);\r\n }\r\n }\r\n\r\n setShowMore(prevShowMoreIsClicked => !prevShowMoreIsClicked);\r\n };\r\n\r\n const showMore = items.length > minItems && hasShowMoreButton && (\r\n
toggleShowMore()}>\r\n \r\n {!showMoreIsClicked ? languageStrings.ShowMore : languageStrings.ShowLess}\r\n
\r\n );\r\n\r\n return (\r\n <>\r\n
\r\n \r\n {!collapsed && ((fixedHeight || (!hasShowMoreButton || showMoreIsClicked)) ? items : items.slice(0, minItems))}\r\n {!collapsed && extra}\r\n
\r\n {!collapsed && showMore}\r\n \r\n );\r\n};\r\nexport default connector(ExpanderWithSubtitle);\r\n","import * as React from \"react\";\r\nimport { ComponentTypes, DirectoryTreeType, IDirectoryLocation, Initiallocations } from \"../../config/config\";\r\nimport { connect, ConnectedProps } from \"react-redux\";\r\nimport { RootState } from \"../../redux/index\";\r\nimport { addWorkingDirectory, setOneDriveDetails, setWorkingDirectories } from \"../../redux/modules/workingDirectory\";\r\nimport { resetSavingLocation, setSavingLocation } from \"../../redux/modules/savingLocation\";\r\nimport { setMode } from \"../../redux/modules/mode\";\r\nimport { setLoading } from \"../../redux/modules/loader\";\r\nimport Loader from \"../Loader\";\r\nimport { IStoreItem } from \"../../interfaces/IStoredItem\";\r\nimport { IFilePanelInfo } from \"../../interfaces/IFilePanelInfo\";\r\nimport { IFolderPanelInfo } from \"../../interfaces/IFolderPanelInfo\";\r\nimport {\r\n initialFileOptionPanelInfoSetting,\r\n initialFolderOptionPanelInfoSetting,\r\n validSaveModes,\r\n} from \"../../config/constants\";\r\nimport {\r\n ActionButton,\r\n Dialog,\r\n DialogFooter,\r\n DialogType,\r\n IDialogContentProps,\r\n PrimaryButton,\r\n Spinner,\r\n SpinnerSize\r\n} from \"@fluentui/react\";\r\nimport { LanguageContext } from \"../../../../utilities/LocalizationModule\";\r\nimport FileOptionPanel from \"../panels/FileOptionPanel\";\r\nimport FolderOptionPanel from \"../panels/FolderOptionPanel\";\r\nimport { ModeEnum } from \"../enums/modeEnum\";\r\nimport { IPageSettings } from \"../../interfaces/IPageSettings\";\r\nimport { FolderTypeIconQuery } from \"../helpers/folderTypeIconQuery\";\r\nimport { expanderConstants } from \"../../redux/models/constants/expanders\";\r\nimport ExpanderWithSubtitle from \"./ExpanderWithSubtitle\";\r\nimport { AccessLicenseHelper } from \"../helpers/accessLicenseHelper\";\r\nimport { setSearch } from \"../../redux/modules/search\";\r\nimport PinnedItems from \"./home/PinnedItems\";\r\nimport RecentItems from \"./home/RecentItems\";\r\nimport SharedItems from \"./home/SharedItems\";\r\nimport { setShowFolderDeleteDialog } from \"../../redux/modules/showFolderDeleteDialogue\";\r\nimport { isMobile } from \"../../styles/mobileStyles\"\r\nimport MyApprovals from \"./myApprovals/MyApprovals\";\r\nimport generalModule from \"../../../../utilities/GeneralModule\";\r\nimport { IOneDriveRootDetails } from \"../../interfaces/IOneDriveRootDetails\";\r\nimport { getHubSiteSites, getOneDriveRootDetails, getSharePointDocumentLibraries, getSharePointSubsite } from \"../../services/GraphService\";\r\nimport { setContentManagerDirectory, setContentManagerExchange, setContentManagerSearchValue, setIsContentManagerContentLoading, setIsContentManagerSideMenuCollapsed, toggleContentManagerReload } from \"../../redux/modules/contentManagerDirectory\";\r\nimport { ContentManagerDirectoryEnum } from \"../enums/ContentManagerDirectoryEnum\";\r\nimport { IAuthTokenResultDto } from \"../../interfaces/IAuthTokenResultDto\";\r\nimport { ContentManagerCopyMoveModeEnum } from \"../enums/ContentManagerCopyMoveModeEnum\";\r\nimport { getSites } from \"../../redux/modules/sharepointInfo\";\r\nimport { getChannels, getTeams } from \"../../redux/modules/teams\";\r\nimport { ISiteInfoLocation } from \"../../interfaces/ISiteInfo\";\r\nimport authModule from \"../../../../utilities/AuthModule\";\r\nimport { IFolderLocation, ISharepointDocumentLocation } from \"../../interfaces/ISharepointDocument\";\r\nimport { ITeamChannelDto, ITeamChannelLocationDto } from \"../../interfaces/services/ITeamChannelDto.1\";\r\nimport { buildWorkingDirectoryFromTree, calculateLocationHeight, findWorkingDirectories, generateRandomString, openTreeFolderOptions } from \"../helpers/treeHelperGeneral\";\r\nimport { SharePointDocumentLibraryItem } from \"../_v2/components/Explorer/FolderView/SharePointDocumentLibraryItem\";\r\nimport { FolderViewWrapper } from \"../helpers/folderViewWrapper\";\r\nimport { getListSettings, getUserEffectivePermissions } from \"../../services/SharePointRestServices\";\r\nimport { setCanViewFolder } from \"../../redux/modules/currentSharepointFolder\";\r\nimport { logger } from \"../../../../utilities/logger\";\r\nimport savingLocationStructureModule from \"../../../../utilities/SavingLocationStructureModule\";\r\nimport { TeamChannelItem } from \"../_v2/components/Explorer/FolderView/TeamChannelItem\";\r\nimport { useLazyRenderListAsStreamTreeQuery } from \"../_v2/redux/api/sharepoint/api-sharepoint-slice\";\r\nimport { SharePointFolderItem } from \"../_v2/components/Explorer/FolderView/SharePointFolderItem\";\r\nimport { toggleReload } from \"../../redux/modules/reload\";\r\nimport treeStructureModule from \"../../../../utilities/TreeStructureModule\";\r\nimport { ITeam } from \"../../interfaces/services/ITeam\";\r\nimport { SiteItem } from \"../_v2/components/Explorer/FolderView/SiteItem\";\r\nimport { MainLocationItem } from \"../_v2/components/Explorer/FolderView/MainLocationItem\";\r\nimport { SharePointSiteHelper } from \"../../../../utilities/SharePointSiteHelper\";\r\nimport SuggestedItems from \"./home/SuggestedItems\";\r\n\r\nconst mapStateToProps = (state: RootState) => {\r\n return {\r\n currentDirectory: state.workingDirectories?.workingDirectories?.length > 0 ? state.workingDirectories.workingDirectories[state.workingDirectories.workingDirectories.length - 1] : null,\r\n savingLocation: state.savingLocation,\r\n loading: state.loading.isLoading,\r\n mode: state.mode.mode,\r\n expanders: state.expanders,\r\n user: state.user,\r\n folderDeleteDialog: state.showFolderDeleteDialog,\r\n userSettings: state.user.settings,\r\n oneDriveRootDetails: state.workingDirectories.oneDriveRootDetails,\r\n isSideMenuCollapsed: generalModule.isInConentMangerMode() && state.contentManagerDirectory.isSideMenuCollapsed,\r\n nintexClientId: state.tenantInfo.nintexClientId,\r\n nintexClientSecret: state.tenantInfo.nintexClientSecret,\r\n moveTo: state.contentManagerDirectory.moveTo,\r\n enableExchange: state.tenantInfo.enableExchange,\r\n allowedSiteCollections: state.tenantInfo.allowedSiteCollections,\r\n allowedTeams: state.tenantInfo.allowedTeams,\r\n hideDocumentLibrariesInTeams: state.tenantInfo?.hideDocumentLibrariesInTeams,\r\n hideTeamsSitesInSharePoint: state.tenantInfo?.hideTeamsSitesInSharePoint,\r\n sites: state.sharePointInfo.sites,\r\n teams: state.teams.teams,\r\n hasFileSelected: state.files.files.some(file => file.isSelected),\r\n lastServerFetch_sites: state.sharePointInfo.lastServerFetch,\r\n lastServerFetch_teams: state.teams.lastServerFetch,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = {\r\n setWorkingDirectories,\r\n setOneDriveDetails,\r\n resetSavingLocation,\r\n setLoading,\r\n setMode,\r\n setSearch,\r\n setShowFolderDeleteDialog,\r\n setContentManagerDirectory,\r\n setIsContentManagerContentLoading,\r\n setContentManagerSearchValue,\r\n toggleContentManagerReload,\r\n setContentManagerExchange,\r\n getSites,\r\n getTeams,\r\n getChannels,\r\n toggleReload,\r\n setSavingLocation,\r\n addWorkingDirectory,\r\n};\r\n\r\nconst connector = connect(mapStateToProps, mapDispatchToProps);\r\ntype PropsFromRedux = ConnectedProps;\r\ninterface LocationProps extends PropsFromRedux {\r\n hide: boolean;\r\n modeEnum?: ModeEnum;\r\n saveToOneDrive?: (\r\n folderName: string,\r\n fromLocationItemCurrentDirectory?: IPageSettings,\r\n savingLocationDirectory?: string,\r\n locationBeforeSaving?: IPageSettings[]\r\n ) => Promise;\r\n requestFlowResourceToken?: (loginCallback: (authResult: IAuthTokenResultDto) => Promise) => Promise;\r\n}\r\n\r\nconst Location: React.FunctionComponent = ({\r\n hide,\r\n currentDirectory,\r\n setWorkingDirectories,\r\n setOneDriveDetails,\r\n setSearch,\r\n savingLocation,\r\n resetSavingLocation,\r\n loading,\r\n setLoading,\r\n modeEnum,\r\n saveToOneDrive,\r\n user,\r\n setShowFolderDeleteDialog,\r\n folderDeleteDialog,\r\n userSettings,\r\n oneDriveRootDetails,\r\n isSideMenuCollapsed,\r\n setContentManagerDirectory,\r\n setIsContentManagerContentLoading,\r\n setContentManagerSearchValue,\r\n toggleContentManagerReload,\r\n requestFlowResourceToken,\r\n nintexClientId,\r\n nintexClientSecret,\r\n setContentManagerExchange,\r\n moveTo,\r\n enableExchange,\r\n getChannels,\r\n sites,\r\n teams,\r\n mode,\r\n hasFileSelected,\r\n setSavingLocation,\r\n addWorkingDirectory,\r\n allowedSiteCollections,\r\n lastServerFetch_sites,\r\n lastServerFetch_teams,\r\n getSites,\r\n getTeams,\r\n hideDocumentLibrariesInTeams,\r\n hideTeamsSitesInSharePoint\r\n}: LocationProps) => {\r\n const languageStrings = React.useContext(LanguageContext);\r\n\r\n const [isInContentManagerMode] = React.useState(generalModule.isInConentMangerMode());\r\n const [isLicenseDialogHidden, setIsLicenseDialogHidden] = React.useState(true);\r\n const [isFileDeletionDialogHidden, setIsFileDeletionDialogHidden] = React.useState(true);\r\n const [fileOptionPanelInfo, setFileOptionPanelInfo] = React.useState(initialFileOptionPanelInfoSetting);\r\n const [folderOptionPanelInfo, setFolderOptionPanelInfo] = React.useState(initialFolderOptionPanelInfoSetting);\r\n const [licenseMessageContent, setLicenseMessageContent] = React.useState(null);\r\n const [locations, setLocations] = React.useState([]);\r\n const [locationItems, setLocationItems] = React.useState([]);\r\n const [locationItemsShort, setLocationItemsShort] = React.useState([]);\r\n const [locationHeight, setLocationHeight] = React.useState(160);\r\n\r\n const selectedItem = React.useRef(null);\r\n const lastServerFetch_sites_ref = React.useRef(new Date().getTime());\r\n const lastServerFetch_teams_ref = React.useRef(new Date().getTime());\r\n // const loadTreeFromRedux = React.useRef(true);\r\n\r\n const [getListAsStreamTree] = useLazyRenderListAsStreamTreeQuery();\r\n\r\n const hideLicenseDialog = () => {\r\n setIsLicenseDialogHidden(true);\r\n }\r\n\r\n const showLicenseDialog = () => {\r\n setIsLicenseDialogHidden(false);\r\n }\r\n\r\n const hideFileDeleteDialog = () => {\r\n setIsFileDeletionDialogHidden(true);\r\n }\r\n\r\n const showFileDeleteDialog = () => {\r\n setIsFileDeletionDialogHidden(false);\r\n }\r\n\r\n React.useEffect(() => {\r\n // const treeLocations = treeStructureModule.getLocations();\r\n // if (loadTreeFromRedux.current && treeLocations && treeLocations.length > 0) {\r\n // loadTreeFromRedux.current = false;\r\n // setLocations(treeLocations);\r\n // } else {\r\n // setLocations(Initiallocations);\r\n // }\r\n setLocations(Initiallocations);\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n const setupAsyncWrapper = async () => {\r\n setLoading(true);\r\n resetSavingLocation();\r\n setLoading(false);\r\n };\r\n\r\n setupAsyncWrapper();\r\n }, [savingLocation.display !== null]);\r\n\r\n const setUnableToAccessDialog = (locationType: string) => {\r\n const errorMessage = {\r\n type: DialogType.largeHeader,\r\n title: languageStrings.LicenseRequiredTitle,\r\n closeButtonAriaLabel: \"Close\",\r\n subText: languageStrings.LicenseRequired.replace(\"{placeholder}\", locationType)\r\n };\r\n setLicenseMessageContent(errorMessage);\r\n showLicenseDialog();\r\n };\r\n\r\n const setContextAwareLoading = React.useCallback((isLoading: boolean, contentManagerOnly: boolean = false) => {\r\n if (!contentManagerOnly) {\r\n !isInContentManagerMode ? setLoading(isLoading) : setIsContentManagerContentLoading(isLoading);\r\n }\r\n else {\r\n setIsContentManagerContentLoading(isLoading);\r\n }\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n // treeStructureModule.setLocations(locations);\r\n setLocationHeight(calculateLocationHeight(locations));\r\n }, [locations]);\r\n\r\n React.useEffect(() => {\r\n if (locations?.length > 0) {\r\n if (!isSideMenuCollapsed) {\r\n setLocationItems(renderLocations(locations));\r\n }\r\n else if (isSideMenuCollapsed) {\r\n setLocationItemsShort(renderLocations(locations));\r\n }\r\n }\r\n }, [locations, sites, teams, currentDirectory, isSideMenuCollapsed, moveTo.moveToEnabled, moveTo.mode]);\r\n\r\n React.useEffect(() => {\r\n //Adding server results if SharePoint is expanded\r\n if (locations?.length > 0) {\r\n const siteLocation = locations.find(x => x.type === ComponentTypes.SharePoint);\r\n if (siteLocation.expanded && !siteLocation.isServerRefreshed && lastServerFetch_sites && lastServerFetch_sites > lastServerFetch_sites_ref.current) {\r\n lastServerFetch_sites_ref.current = lastServerFetch_sites;\r\n onLocationChevronClicked(siteLocation, false, true);\r\n }\r\n }\r\n }, [locations, lastServerFetch_sites]);\r\n\r\n React.useEffect(() => {\r\n //Adding server results if Teams are expanded\r\n if (locations?.length > 0) {\r\n const teamLocation = locations.find(x => x.type === ComponentTypes.Teams);\r\n if (teamLocation.expanded && !teamLocation.isServerRefreshed && lastServerFetch_teams && lastServerFetch_teams > lastServerFetch_teams_ref.current) {\r\n lastServerFetch_teams_ref.current = lastServerFetch_teams;\r\n onLocationChevronClicked(teamLocation, false, true);\r\n }\r\n }\r\n }, [locations, lastServerFetch_teams]);\r\n\r\n const isValidDropZone = React.useMemo((): boolean => {\r\n return isInContentManagerMode || validSaveModes.some(item => item === mode);\r\n }, [mode]);\r\n\r\n const getTreeLocations = React.useCallback((): any[] => {\r\n return locations;\r\n }, [locations]);\r\n\r\n const handleSaveClick = React.useCallback(async (item, e) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n e.persist();\r\n\r\n setContextAwareLoading(true);\r\n\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, item);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currentDir = directories[directories.length - 1];\r\n const parent = newWorkingDirectories.find(x => x.id === item.parentId);\r\n\r\n var folderViewWrapper = new FolderViewWrapper(parent.subSites, { ...currentDir, DocumentLibrary: item.name, sharePointListId: item.sharePointListId });\r\n const canViewFolder = folderViewWrapper.canViewFolder();\r\n const accessToken = await authModule.getSharePointAccessToken();\r\n const webUrl = currentDir?.webUrl;\r\n const [settings, permissions] = await Promise.all([\r\n getListSettings(accessToken, webUrl, item.sharePointListId),\r\n getUserEffectivePermissions(accessToken, webUrl, item.sharePointListId)\r\n ]);\r\n\r\n setCanViewFolder({\r\n sharepointListId: item.sharePointListId,\r\n canView: canViewFolder,\r\n canCreateFolder: canViewFolder ? settings?.EnableFolderCreation : false,\r\n contentTypesEnabled: settings?.ContentTypesEnabled,\r\n enableMinorVersions: settings?.EnableMinorVersions,\r\n disableOpenInApp: settings?.ExcludeFromOfflineClient === true,\r\n userPermissions: permissions\r\n });\r\n\r\n savingLocationStructureModule.setSavingLocationStructure(directories);\r\n\r\n if (isInContentManagerMode) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n setWorkingDirectories(directories);\r\n setContentManagerSearchValue(\"\");\r\n toggleContentManagerReload();\r\n } else {\r\n const savingDirectory = {\r\n ...directories[directories.length - 1],\r\n isSaveLocationStructureSet: true,\r\n displayName: languageStrings.Properties,\r\n type: ComponentTypes.Saving\r\n }\r\n\r\n const newLocations = [\r\n ...directories,\r\n savingDirectory,\r\n ];\r\n\r\n setWorkingDirectories(newLocations);\r\n }\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (handleSaveClick)\");\r\n }\r\n\r\n setSearch(\"\");\r\n setContextAwareLoading(false);\r\n }, [locations, user]);\r\n\r\n const onChannelSaveClicked = React.useCallback(async (event: React.SyntheticEvent, item: ITeamChannelLocationDto, isSaveRequest: boolean = false) => {\r\n if (isSaveRequest) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n setContextAwareLoading(true);\r\n\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, item);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n\r\n savingLocationStructureModule.setSavingLocationStructure(directories);\r\n\r\n if (isInContentManagerMode) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n setWorkingDirectories(directories);\r\n } else {\r\n const savingDirectory = {\r\n ...directories[directories.length - 1],\r\n isSaveLocationStructureSet: true,\r\n displayName: languageStrings.Properties,\r\n type: ComponentTypes.Saving\r\n }\r\n\r\n const newLocations = [\r\n ...directories,\r\n savingDirectory,\r\n ];\r\n\r\n setWorkingDirectories(newLocations);\r\n }\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (onChannelSaveClicked)\");\r\n }\r\n\r\n setContextAwareLoading(false);\r\n }\r\n }, [locations, user]);\r\n\r\n const onTreeItemClick = React.useCallback(async (event: React.SyntheticEvent, treeItem: any) => {\r\n event.stopPropagation();\r\n setContextAwareLoading(true);\r\n try {\r\n setLocationItem(treeItem, true, undefined);\r\n const newWorkingDirectories = findWorkingDirectories(locations, treeItem);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n setWorkingDirectories(directories);\r\n if (isInContentManagerMode) {\r\n setContentManagerSearchValue(\"\");\r\n toggleContentManagerReload();\r\n }\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (onTreeItemClick)\");\r\n }\r\n setContextAwareLoading(false);\r\n }, [locations, user]);\r\n\r\n const renderLocations = (locations: IDirectoryLocation[]) => {\r\n\r\n return locations.map((locationItem, index) => {\r\n if (locationItem.type === ComponentTypes.OneDrive && (!user.oneDriveWebUrl || 0 === user.oneDriveWebUrl.length || !userSettings.enableOneDrive)) {\r\n return null;\r\n }\r\n\r\n if (locationItem.type === ComponentTypes.SharePoint && (!userSettings.enableSharePoint)) {\r\n return null;\r\n }\r\n\r\n if (locationItem.type === ComponentTypes.Teams && (!userSettings.enableTeams)) {\r\n return null;\r\n }\r\n\r\n if (locationItem.type === ComponentTypes.Exchange && (!isInContentManagerMode || !enableExchange)) {\r\n return null;\r\n }\r\n\r\n if (locationItem.type === ComponentTypes.Exchange && moveTo.moveToEnabled && (moveTo.mode === ContentManagerCopyMoveModeEnum.CopySelectedEmails || moveTo.mode === ContentManagerCopyMoveModeEnum.CopyEntireFolderEmails)) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n {\r\n try {\r\n if (!(moveTo.moveToEnabled && (moveTo.mode === ContentManagerCopyMoveModeEnum.CopySelectedEmails || moveTo.mode === ContentManagerCopyMoveModeEnum.CopyEntireFolderEmails))) {\r\n setContentManagerExchange({ selectedFolderId: \"\", selectedFolderName: \"\", selectedAccount: \"\" })\r\n }\r\n\r\n if (!AccessLicenseHelper.canAccessItem(user.licenseType, locationItem.type) || !AccessLicenseHelper.isLocationEnabled(locationItem.type, user.settings)) {\r\n setUnableToAccessDialog(locationItem.type);\r\n return;\r\n }\r\n\r\n let oneDriveDetails: IOneDriveRootDetails;\r\n if (locationItem.type === ComponentTypes.OneDrive) {\r\n if (oneDriveRootDetails) {\r\n oneDriveDetails = oneDriveRootDetails;\r\n }\r\n else {\r\n setContextAwareLoading(true);\r\n try {\r\n oneDriveDetails = await getOneDriveRootDetails();\r\n setOneDriveDetails(oneDriveDetails);\r\n } catch (err) {\r\n logger(err, \"Locations.tsx (onMainLocationClick)\");\r\n }\r\n setContextAwareLoading(false);\r\n }\r\n if (isInContentManagerMode) {\r\n setContentManagerSearchValue(\"\");\r\n if (currentDirectory?.type == ComponentTypes.OneDriveSubFolder || (currentDirectory?.type == ComponentTypes.OneDrive && currentDirectory.directory?.length > 0)) {\r\n toggleContentManagerReload();\r\n }\r\n };\r\n }\r\n else if (isInContentManagerMode) {\r\n if (locationItem.type === ComponentTypes.SharePoint) setContentManagerDirectory(ContentManagerDirectoryEnum.SharePoint);\r\n if (locationItem.type === ComponentTypes.Teams) setContentManagerDirectory(ContentManagerDirectoryEnum.Teams);\r\n if (locationItem.type === ComponentTypes.Exchange) setContentManagerDirectory(ContentManagerDirectoryEnum.Exchange);\r\n return;\r\n }\r\n\r\n const directories: IPageSettings[] = [{\r\n type: locationItem.type,\r\n id: locationItem.id,\r\n directory: \"\",\r\n displayName: locationItem.name,\r\n webUrl: locationItem.type === ComponentTypes.OneDrive ? user.oneDriveWebUrl : \"\",\r\n sharePointListId: oneDriveDetails?.sharePointListId\r\n }];\r\n\r\n if (locationItem.type === ComponentTypes.OneDrive) {\r\n directories[0].fileTitle = locationItem.name;\r\n }\r\n\r\n setWorkingDirectories(directories);\r\n\r\n setSearch(\"\");\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (onMainLocationClick)\");\r\n }\r\n }}\r\n onExpandCollapseClick={onLocationChevronClicked}\r\n />\r\n {!isSideMenuCollapsed && locationItem.sites && locationItem.expanded && renderLocationSites(locationItem.sites, locationItem.type === ComponentTypes.Teams)}\r\n {!isSideMenuCollapsed && locationItem.folders && locationItem.expanded && renderFolders(locationItem.folders, location)}\r\n
\r\n )\r\n\r\n });\r\n };\r\n\r\n const onLocationChevronClicked = async (location: IDirectoryLocation, isRefresh: boolean = false, isServerRefresh: boolean = false) => {\r\n if (location.type === ComponentTypes.OneDrive) {\r\n // if (isRefresh || (!location.expanded && (!location.folders || location.folders?.length === 0))) {\r\n if (isRefresh || (!location.expanded && !location.loaded)) {\r\n let folders: IFolderLocation[] = [];\r\n\r\n try {\r\n setLocationItem(location, undefined, true);\r\n\r\n let oneDriveDetails: IOneDriveRootDetails;\r\n if (!oneDriveRootDetails) {\r\n oneDriveDetails = await getOneDriveRootDetails();\r\n setOneDriveDetails(oneDriveDetails);\r\n }\r\n\r\n const results = await getListAsStreamTree({\r\n siteUrl: (oneDriveRootDetails || oneDriveDetails).sharePointSiteUrl,\r\n sharePointListId: (oneDriveRootDetails || oneDriveDetails).sharePointListId,\r\n accessToken: await authModule.getOneDriveAccessToken(),\r\n nextPageUrl: \"\",\r\n serverRelativePath: \"\"\r\n });\r\n\r\n const foldersNextHref = results?.data?.ListData?.NextHref ? results.data.ListData.NextHref : \"\";\r\n\r\n if (results?.data?.ListData?.Row && results.data.ListData.Row.length > 0) {\r\n folders = results.data.ListData.Row.map(row => {\r\n const folderChildCount = row.FolderChildCount ? +row.FolderChildCount : 0;\r\n\r\n const spItemUrlparts = row['.spItemUrl']?.split('/');\r\n if (Array.isArray(spItemUrlparts) && spItemUrlparts.length > 2) {\r\n const itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n const driveId = spItemUrlparts[spItemUrlparts.length - 3];\r\n \r\n const sharePointListId = results.data.listName?.replace(\"{\", \"\").replace(\"}\", \"\");\r\n return {\r\n id: itemId,\r\n name: row.FileLeafRef,\r\n level: 2,\r\n parentId: driveId,\r\n sharePointUniqueId: row.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n contentTypeId: row.ContentTypeId,\r\n path: row.FileRef,\r\n canExpand: folderChildCount > 0,\r\n expanded: false,\r\n isLoading: false,\r\n webUrl: user.oneDriveWebUrl,\r\n sharePointListId,\r\n treeType: DirectoryTreeType.folder,\r\n isOneDrive: true,\r\n randomId: generateRandomString()\r\n }\r\n }\r\n return null;\r\n })\r\n .filter(folder => folder);\r\n }\r\n\r\n setLocations(prevLocations => {\r\n return prevLocations.map(prevLocation => {\r\n if (prevLocation.id === location.id) {\r\n return {\r\n ...prevLocation,\r\n folders: [...folders],\r\n foldersNextHref,\r\n expanded: isRefresh ? location.expanded : !location.expanded,\r\n canExpand: folders?.length > 0,\r\n isLoading: false,\r\n loaded: true\r\n };\r\n } else {\r\n return prevLocation;\r\n }\r\n });\r\n });\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx: onLocationChevronClicked (OneDrive)\");\r\n setLocationItem(location, undefined, false);\r\n }\r\n }\r\n else if ((!location.expanded && location.folders?.length > 0) || location.expanded) {\r\n setLocationsToggleExpanded(location);\r\n }\r\n }\r\n else {\r\n // if (isRefresh || (!location.expanded && location.sites?.length === 0)) {\r\n if (isServerRefresh || isRefresh || (!location.expanded && !location.loaded)) {\r\n try {\r\n setLocationItem(location, undefined, true);\r\n\r\n let combinedSites: ISiteInfoLocation[] = [];\r\n let localTeams: ITeam[] = teams ? [...teams] : [];\r\n\r\n if (isRefresh) {\r\n const [updatedSites, updatedTeams] = await Promise.all([await getSites(allowedSiteCollections, null, true, false), await getTeams(true, false)]);\r\n\r\n combinedSites = location.type === ComponentTypes.SharePoint ? updatedSites ? [...updatedSites.map((site, index) => ({ ...site, key: \"s\" + index, randomId: generateRandomString() }))] : [] : [];\r\n localTeams = [...updatedTeams];\r\n }\r\n else {\r\n combinedSites = location.type === ComponentTypes.SharePoint ? sites ? [...sites.map((site, index) => ({ ...site, key: \"s\" + index, randomId: generateRandomString() }))] : [] : [];\r\n }\r\n\r\n localTeams?.forEach((team, index) => {\r\n if (!combinedSites.some(site => site.id === team.siteId)) {\r\n combinedSites.push({\r\n id: team.id,\r\n siteId: team.siteId,\r\n name: team.displayName,\r\n webUrl: team.webUrl,\r\n isSubsite: false,\r\n key: \"t\" + index,\r\n teamDriveId: team.driveId,\r\n teamGroupId: team.id,\r\n randomId: generateRandomString(),\r\n });\r\n }\r\n });\r\n\r\n combinedSites.forEach(site => {\r\n const team = localTeams?.find(x => (x.siteId === site.siteId || x.siteId === site.id));\r\n if (team) {\r\n site.id = team.id;\r\n site.siteId = team.siteId;\r\n site.isTeam = true;\r\n site.isSite = false;\r\n site.teamDriveId = team.driveId;\r\n site.teamGroupId = team.id;\r\n site.isSharedTeam = team.isSharedTeam;\r\n }\r\n site.canExpand = true;\r\n site.expanded = false;\r\n site.parentId = location.id;\r\n site.treeType = DirectoryTreeType.site;\r\n site.level = 2;\r\n site.isLoading = false;\r\n site.loaded = false;\r\n site.isSelected = false;\r\n });\r\n\r\n setLocations(prevLocations => {\r\n return prevLocations.map(prevLocation => {\r\n if (prevLocation.id === location.id) {\r\n const sites = (isServerRefresh || isRefresh) ? [...combinedSites] : [...(prevLocation.sites || []), ...combinedSites];\r\n return {\r\n ...prevLocation,\r\n sites: SharePointSiteHelper.groupAndSortSites(sites),\r\n expanded: (isServerRefresh || isRefresh) ? location.expanded : !location.expanded,\r\n canExpand: sites?.length > 0,\r\n isLoading: false,\r\n loaded: true,\r\n isServerRefresh\r\n };\r\n } else {\r\n return prevLocation;\r\n }\r\n });\r\n });\r\n } catch (error) {\r\n logger(error, \"Locations.tsx: onLocationChevronClicked\");\r\n setLocationItem(location, undefined, false);\r\n }\r\n }\r\n else if ((!location.expanded && location.sites?.length > 0) || location.expanded) {\r\n setLocations(prevLocations => {\r\n return prevLocations.map(prevLocation => {\r\n if (prevLocation.id === location.id) {\r\n return {\r\n ...prevLocation,\r\n expanded: !location.expanded\r\n };\r\n } else {\r\n return prevLocation;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n }\r\n\r\n const renderLocationSites = (locationSites: ISiteInfoLocation[], isMainTeamsLocation: boolean = false) => {\r\n return SharePointSiteHelper.groupAndSortSites(locationSites)\r\n .map((location, index) => {\r\n // return location.isTeam && !userSettings.enableTeams ? null : (\r\n return (isMainTeamsLocation || !location.isTeam || !(hideTeamsSitesInSharePoint || !userSettings.enableTeams)) && (\r\n
\r\n {\r\n setLocationItem(site, true, undefined);\r\n const newWorkingDirectories = findWorkingDirectories(locations, site);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n setWorkingDirectories(directories);\r\n }}\r\n onExpandCollapseClick={onLocationSitesChevronClicked}\r\n onOptionsClick={async (site: ISiteInfoLocation) => setFolderOptionPanelInfo(await openTreeFolderOptions(locations, site, user))}\r\n />\r\n {location.subSites && location.expanded && renderLocationSites(location.subSites)}\r\n\r\n {location.subSitesNextHref &&
\r\n {!location.isLoading && {\r\n e.stopPropagation();\r\n setLocationItem(location, undefined, true);\r\n\r\n try {\r\n const level = location.level ? location.level : 0;\r\n\r\n let accessToken = await authModule.getGraphAccessToken();\r\n let subSiteResult = await getSharePointSubsite(accessToken, location.id, allowedSiteCollections, location.subSitesNextHref);\r\n\r\n const subsites: ISiteInfoLocation[] = subSiteResult?.data?.map(subsite => {\r\n return {\r\n id: subsite.id,\r\n name: subsite.displayName,\r\n description: subsite.description,\r\n webUrl: subsite.webUrl,\r\n isSubsite: true,\r\n canExpand: true,\r\n expanded: false,\r\n parentId: location.id,\r\n treeType: DirectoryTreeType.site,\r\n level: level + 1,\r\n isLoading: false,\r\n loaded: false,\r\n isSelected: false,\r\n randomId: generateRandomString()\r\n }\r\n })\r\n\r\n setLocationsSiteSubsiteUpdate(location, [...location.subSites, ...subsites], location.documents, undefined, undefined, true, false, subSiteResult.nextPageLink);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (subsites load more (getSharePointSubsite))\");\r\n setLocationItem(location, undefined, false);\r\n }\r\n }}>\r\n {languageStrings.LoadMore}\r\n }\r\n\r\n
}\r\n {location.subSitesNextHref && location.isLoading &&
\r\n \r\n
}\r\n\r\n {location.channels && location.expanded && renderChannels(location.channels)}\r\n {location.documents && location.expanded && renderDocuments(location.documents)}\r\n\r\n
\r\n )\r\n });\r\n };\r\n\r\n const onLocationSitesChevronClicked = async (location: ISiteInfoLocation, isRefresh: boolean = false) => {\r\n // if (isRefresh|| (!location.expanded && (((location.isSite || location.isSubsite) && (!location.documents || location.documents?.length === 0)) || (location.isTeam && (!location.channels || location.channels?.length === 0))))) {\r\n if (isRefresh || (!location.expanded && !location.loaded)) {\r\n setLocationItem(location, undefined, true);\r\n const level = location.level;\r\n\r\n try {\r\n const accessToken = await authModule.getGraphAccessToken();\r\n let [subSitesResult, documentLibrariesResult, channelsResult, hubSitesResult] = await Promise.all([\r\n !location.isSharedTeam ? getSharePointSubsite(accessToken, location.isTeam ? location.siteId : location.id, allowedSiteCollections) : { data: [], nextPageLink: null },\r\n !location.isSharedTeam && (!hideDocumentLibrariesInTeams || !location.isTeam) ? getSharePointDocumentLibraries(accessToken, location.isTeam ? location.siteId : location.id) : [],\r\n location.isTeam ? getChannels(location.teamGroupId, location.teamDriveId) : [],\r\n location.isHub ? getHubSiteSites(accessToken, location.hubId, allowedSiteCollections) : []\r\n ]);\r\n\r\n let subSites: ISiteInfoLocation[] = (subSitesResult?.data ?? [])\r\n .concat(hubSitesResult ?? [])\r\n .map(subSite => {\r\n return {\r\n ...subSite,\r\n name: subSite.displayName,\r\n isSubsite: !subSite.isHub,\r\n parentId: location.id,\r\n treeType: DirectoryTreeType.site,\r\n canExpand: true,\r\n expanded: false,\r\n level: level + 1,\r\n isLoading: false,\r\n randomId: generateRandomString()\r\n }\r\n });\r\n\r\n const documents: ISharepointDocumentLocation[] = documentLibrariesResult?.map(doc => {\r\n return {\r\n ...doc,\r\n parentId: location.id,\r\n treeType: DirectoryTreeType.document,\r\n level: level + 1,\r\n canExpand: true,\r\n expanded: false,\r\n isLoading: false,\r\n randomId: generateRandomString()\r\n }\r\n });\r\n\r\n const channels: ITeamChannelLocationDto[] = channelsResult?.map(channel => {\r\n return {\r\n ...channel,\r\n parentId: location.id,\r\n treeType: DirectoryTreeType.channel,\r\n isSelected: false,\r\n key: location.key,\r\n level: level + 1,\r\n randomId: generateRandomString(),\r\n canExpand: true,\r\n expanded: false,\r\n loaded: false\r\n }\r\n });\r\n\r\n setLocationsSiteSubsiteUpdate(location, subSites, documents, undefined, undefined, false, isRefresh, subSitesResult.nextPageLink, channels);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (renderLocationSites)\");\r\n setLocationItem(location, undefined, false);\r\n }\r\n\r\n }\r\n else if ((!location.expanded && (location.documents?.length > 0 || location.channels?.length > 0) || location.subSites?.length > 0) || location.expanded) {\r\n setLocationsToggleExpanded(location);\r\n }\r\n }\r\n\r\n const renderDocuments = (documents: ISharepointDocumentLocation[]) => {\r\n return documents.map((document, index) => (\r\n
\r\n {\r\n e.stopPropagation();\r\n setFolderOptionPanelInfo(await openTreeFolderOptions(locations, document, user));\r\n }}\r\n onTreeExpand={async (isRefresh) => {\r\n // if (isRefresh || (!document.expanded && (!document.folders || document.folders?.length === 0))) {\r\n if (isRefresh || (!document.expanded && !document.loaded)) {\r\n setLocationItem(document, undefined, true);\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, document);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const level = document.level;\r\n let folders: IFolderLocation[] = [];\r\n\r\n const results = await getListAsStreamTree({\r\n siteUrl: currDirectory.webUrl,\r\n sharePointListId: currDirectory.sharePointListId,\r\n accessToken: await authModule.getSharePointAccessToken(),\r\n nextPageUrl: \"\",\r\n serverRelativePath: \"\"\r\n });\r\n\r\n const foldersNextHref = results?.data?.ListData?.NextHref ? results?.data?.ListData?.NextHref : \"\";\r\n\r\n if (results?.data?.ListData?.Row && results?.data?.ListData?.Row.length > 0) {\r\n folders = results?.data?.ListData?.Row.map(row => {\r\n const folderChildCount = row.FolderChildCount ? +row.FolderChildCount : 0;\r\n\r\n const spItemUrlparts = row['.spItemUrl'].split('/');\r\n const itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n const driveId = spItemUrlparts[spItemUrlparts.length - 3];\r\n\r\n return {\r\n id: itemId,\r\n name: row.FileLeafRef,\r\n level: level + 1,\r\n driveId,\r\n sharePointUniqueId: row.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n contentTypeId: row.ContentTypeId,\r\n path: row.FileRef,\r\n canExpand: folderChildCount > 0,\r\n expanded: false,\r\n isLoading: false,\r\n webUrl: currDirectory.webUrl,\r\n sharePointListId: currDirectory.sharePointListId,\r\n treeType: DirectoryTreeType.folder,\r\n randomId: generateRandomString(),\r\n canRefresh: true\r\n }\r\n })\r\n }\r\n\r\n setLocationsSiteSubsiteUpdate(document, undefined, undefined, folders, foldersNextHref, false, isRefresh, undefined);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (renderDocuments(getListAsStreamTree))\");\r\n }\r\n setLocationItem(document, undefined, false);\r\n }\r\n else if ((!document.expanded && document.folders?.length > 0) || document.expanded) {\r\n setLocationsToggleExpanded(document);\r\n }\r\n\r\n }}\r\n />\r\n {document.folders && document.expanded && renderFolders(document.folders, document)}\r\n
\r\n ));\r\n };\r\n\r\n const renderChannels = (channels: ITeamChannelLocationDto[]) => {\r\n return channels.map((channel, index) => (\r\n
\r\n {\r\n e.stopPropagation();\r\n setLocationItem(channel, undefined, undefined, true);\r\n setFolderOptionPanelInfo(await openTreeFolderOptions(locations, channel, user));\r\n setLocationItem(channel, undefined, undefined, false);\r\n }}\r\n onTreeExpand={async (isRefresh) => {\r\n // if (isRefresh || (!channel.expanded && (!channel.folders || channel.folders?.length === 0))) {\r\n if (isRefresh || (!channel.expanded && !channel.loaded)) {\r\n setLocationItem(channel, undefined, true);\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, channel);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const domain = new URL(currDirectory.webUrl).origin;\r\n\r\n const level = channel.level;\r\n let folders: IFolderLocation[] = [];\r\n\r\n const results = await getListAsStreamTree({\r\n siteUrl: currDirectory.webUrl,\r\n sharePointListId: currDirectory.sharePointListId,\r\n accessToken: await authModule.getSharePointAccessToken(),\r\n nextPageUrl: \"\",\r\n serverRelativePath: currDirectory.directory ? `${currDirectory.webUrl.replace(domain, \"\")}/${currDirectory.directory}` : \"\"\r\n });\r\n\r\n const foldersNextHref = results?.data?.ListData?.NextHref ? results?.data?.ListData?.NextHref : \"\";\r\n\r\n if (results?.data?.ListData?.Row && results?.data?.ListData?.Row.length > 0) {\r\n folders = results?.data?.ListData?.Row.map(row => {\r\n const folderChildCount = row.FolderChildCount ? +row.FolderChildCount : 0;\r\n\r\n const spItemUrlparts = row['.spItemUrl'].split('/');\r\n const itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n const driveId = spItemUrlparts[spItemUrlparts.length - 3];\r\n\r\n return {\r\n id: itemId,\r\n name: row.FileLeafRef,\r\n level: level + 1,\r\n driveId,\r\n sharePointUniqueId: row.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n contentTypeId: row.ContentTypeId,\r\n path: row.FileRef,\r\n canExpand: folderChildCount > 0,\r\n expanded: false,\r\n isLoading: false,\r\n webUrl: currDirectory.webUrl,\r\n sharePointListId: currDirectory.sharePointListId,\r\n treeType: DirectoryTreeType.folder,\r\n randomId: generateRandomString(),\r\n canRefresh: true\r\n }\r\n })\r\n }\r\n\r\n setLocationsSiteSubsiteUpdate(channel, undefined, undefined, folders, foldersNextHref, false, isRefresh, undefined);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (renderChannels(getListAsStreamTree))\");\r\n }\r\n setLocationItem(channel, undefined, false);\r\n }\r\n else if ((!channel.expanded && channel.folders?.length > 0) || channel.expanded) {\r\n setLocationsToggleExpanded(channel);\r\n }\r\n\r\n }}\r\n />\r\n {channel.folders && channel.expanded && renderFolders(channel.folders, channel)}\r\n
\r\n ));\r\n };\r\n\r\n const onFolderSaveClicked = React.useCallback(async (item: any, e: any) => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n e.persist();\r\n\r\n setContextAwareLoading(true);\r\n\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, item);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n if (item.isOneDrive) {\r\n treeStructureModule.setIsFolderInOneDrive(true);\r\n const currentDir = directories[directories.length - 1];\r\n\r\n const itemToSave = {\r\n id: currentDir.id,\r\n parentId: currentDir.parentId,\r\n type: ComponentTypes.OneDriveSubFolder,\r\n fileTitle: currentDir.fileTitle,\r\n directory: currentDir.directory,\r\n DocumentLibrary: \"\",\r\n displayName: currentDir.displayName,\r\n webUrl: currentDir.webUrl,\r\n };\r\n\r\n savingLocationStructureModule.addSavingLocationStructure(itemToSave);\r\n\r\n setSavingLocation(\r\n {\r\n display: itemToSave.displayName,\r\n webUrl: itemToSave.webUrl,\r\n directory: itemToSave.directory,\r\n isOneDriveFolder: true\r\n },\r\n true\r\n );\r\n\r\n if (isInContentManagerMode) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n setWorkingDirectories(directories);\r\n }\r\n else if (mode === ModeEnum.office) {\r\n if (directories.length > 0) {\r\n directories[directories.length - 1].isSaveLocationStructureSet = true;\r\n directories[directories.length - 1].type = ComponentTypes.Saving;\r\n }\r\n\r\n addWorkingDirectory(directories[directories.length - 1]);\r\n } else {\r\n // saveToOneDrive(item.name, itemToSave, currentDir.directory); // since redux wont update its state after all the operations are done and I need the data now\r\n if (directories.length > 0) {\r\n const savingDirectory = {\r\n ...directories[directories.length - 1],\r\n isSaveLocationStructureSet: true,\r\n displayName: languageStrings.Properties,\r\n type: ComponentTypes.Saving\r\n }\r\n\r\n const newLocations = [\r\n ...directories,\r\n savingDirectory,\r\n ];\r\n\r\n setWorkingDirectories(newLocations);\r\n }\r\n }\r\n } else {\r\n if (isInContentManagerMode) {\r\n generalModule.setOpenPanelUploadPanel(true);\r\n setWorkingDirectories(directories);\r\n } else {\r\n savingLocationStructureModule.setSavingLocationStructure(directories);\r\n\r\n const savingDirectory = {\r\n ...directories[directories.length - 1],\r\n isSaveLocationStructureSet: true,\r\n displayName: languageStrings.Properties,\r\n type: ComponentTypes.Saving\r\n }\r\n\r\n const newLocations = [\r\n ...directories,\r\n savingDirectory,\r\n ];\r\n\r\n setWorkingDirectories(newLocations);\r\n }\r\n }\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (onFolderSaveClicked)\");\r\n }\r\n\r\n setContextAwareLoading(false);\r\n }, [locations, user]);\r\n\r\n const renderFolders = (folders: IFolderLocation[], location: any) => {\r\n return (\r\n
\r\n {folders.map((folder, index) => (\r\n
\r\n {\r\n e.stopPropagation();\r\n setLocationItem(folder, undefined, undefined, true);\r\n setFolderOptionPanelInfo(await openTreeFolderOptions(locations, folder, user));\r\n setLocationItem(folder, undefined, undefined, false);\r\n }}\r\n onTreeExpand={async (isRefresh) => {\r\n // if (isRefresh || (!folder.expanded && (!folder.folders || folder.folders?.length === 0))) {\r\n if (isRefresh || (!folder.expanded && !folder.loaded)) {\r\n setLocationItem(folder, undefined, true);\r\n try {\r\n const newWorkingDirectories = findWorkingDirectories(locations, folder);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n const level = folder.level;\r\n let subFolders: IFolderLocation[] = [];\r\n\r\n const results = await getListAsStreamTree({\r\n siteUrl: folder.isOneDrive ? oneDriveRootDetails.sharePointSiteUrl : folder.webUrl,\r\n sharePointListId: folder.sharePointListId,\r\n accessToken: folder.isOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n nextPageUrl: \"\",\r\n serverRelativePath: folder.path\r\n });\r\n\r\n const foldersNextHref = results?.data?.ListData?.NextHref ? results?.data?.ListData?.NextHref : \"\";\r\n\r\n if (results?.data?.ListData?.Row && results?.data?.ListData?.Row.length > 0) {\r\n subFolders = results?.data?.ListData?.Row.map(row => {\r\n const folderChildCount = row.FolderChildCount ? +row.FolderChildCount : 0;\r\n\r\n const spItemUrlparts = row['.spItemUrl'].split('/');\r\n const itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n const driveId = spItemUrlparts[spItemUrlparts.length - 3];\r\n\r\n return {\r\n id: itemId,\r\n name: row.FileLeafRef,\r\n level: level + 1,\r\n driveId,\r\n sharePointUniqueId: row.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n contentTypeId: row.ContentTypeId,\r\n path: row.FileRef,\r\n canExpand: folderChildCount > 0,\r\n expanded: false,\r\n isLoading: false,\r\n webUrl: currDirectory.webUrl,\r\n sharePointListId: currDirectory.sharePointListId,\r\n treeType: DirectoryTreeType.folder,\r\n isOneDrive: folder.isOneDrive,\r\n randomId: generateRandomString(),\r\n canRefresh: true\r\n }\r\n })\r\n }\r\n\r\n setLocationsSiteSubsiteUpdate(folder, undefined, undefined, subFolders, foldersNextHref, false, isRefresh, undefined);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (renderFolders(getListAsStreamTree))\");\r\n setLocationItem(folder, undefined, false);\r\n }\r\n }\r\n else if ((!folder.expanded && folder.folders?.length > 0) || folder.expanded) {\r\n setLocationsToggleExpanded(folder);\r\n }\r\n }}\r\n />\r\n {index === folders.length - 1 && location.foldersNextHref &&
\r\n {!location.isLoading && {\r\n e.stopPropagation();\r\n setLocationItem(location, undefined, true);\r\n const newWorkingDirectories = findWorkingDirectories(locations, location);\r\n const { directories } = await buildWorkingDirectoryFromTree(newWorkingDirectories, user);\r\n const currDirectory = directories[directories.length - 1];\r\n\r\n try {\r\n const level = location.level ? location.level : 0;\r\n let folders: IFolderLocation[] = [];\r\n\r\n const inOneDrive = location.isOneDrive || location.type === ComponentTypes.OneDrive;\r\n const webUrl = inOneDrive ? oneDriveRootDetails.sharePointSiteUrl : currDirectory.webUrl;\r\n const sharePointListId = inOneDrive ? oneDriveRootDetails.sharePointListId : currDirectory.sharePointListId;\r\n\r\n const results = await getListAsStreamTree({\r\n siteUrl: webUrl,\r\n sharePointListId,\r\n accessToken: inOneDrive ? await authModule.getOneDriveAccessToken() : await authModule.getSharePointAccessToken(),\r\n nextPageUrl: location.foldersNextHref,\r\n serverRelativePath: currDirectory.serverRelativePath\r\n });\r\n\r\n const foldersNextHref = results?.data?.ListData?.NextHref ? results?.data?.ListData?.NextHref : \"\";\r\n\r\n if (results?.data?.ListData?.Row && results?.data?.ListData?.Row.length > 0) {\r\n folders = results?.data?.ListData?.Row.map(row => {\r\n const spItemUrlparts = row['.spItemUrl'].split('/');\r\n const itemId = spItemUrlparts[spItemUrlparts.length - 1].split('?')[0];\r\n const driveId = spItemUrlparts[spItemUrlparts.length - 3];\r\n\r\n return {\r\n id: itemId,\r\n name: row.FileLeafRef,\r\n level: level + 1,\r\n driveId,\r\n sharePointUniqueId: row.UniqueId.replace(\"{\", \"\").replace(\"}\", \"\"),\r\n contentTypeId: row.ContentTypeId,\r\n path: row.FileRef,\r\n canExpand: true,\r\n expanded: false,\r\n isLoading: false,\r\n webUrl,\r\n sharePointListId,\r\n isOneDrive: inOneDrive,\r\n treeType: DirectoryTreeType.folder,\r\n randomId: generateRandomString(),\r\n canRefresh: true\r\n }\r\n })\r\n }\r\n\r\n setLocationsSiteSubsiteUpdate(location, undefined, undefined, [...location.folders, ...folders], foldersNextHref, true, false, undefined);\r\n\r\n } catch (error) {\r\n logger(error, \"Locations.tsx (renderChannels(getListAsStreamTree))\");\r\n setLocationItem(location, undefined, false);\r\n }\r\n }}>\r\n {languageStrings.LoadMore}\r\n }\r\n\r\n
}\r\n {index === folders.length - 1 && location.foldersNextHref && location.isLoading &&
\r\n \r\n
}\r\n {folder.folders && folder.expanded && renderFolders(folder.folders, folder)}\r\n
\r\n ))}\r\n\r\n
)\r\n };\r\n\r\n const setLocationsToggleExpanded = (location: any) => {\r\n setLocations(prevLocations => {\r\n const recursiveMap = (sites) => {\r\n return sites?.map(site => {\r\n let updatedSite = site;\r\n if (site.id === location.id && site.randomId === location.randomId) {\r\n updatedSite = {\r\n ...site,\r\n expanded: !location.expanded,\r\n isLoading: false,\r\n isLoadingChannelInfo: false\r\n };\r\n }\r\n if (site.subSites) {\r\n updatedSite = {\r\n ...updatedSite,\r\n subSites: recursiveMap(site.subSites),\r\n };\r\n }\r\n if (site.documents) {\r\n updatedSite = {\r\n ...updatedSite,\r\n documents: recursiveMap(site.documents),\r\n };\r\n }\r\n if (site.channels) {\r\n updatedSite = {\r\n ...updatedSite,\r\n channels: recursiveMap(site.channels),\r\n };\r\n }\r\n if (site.folders) {\r\n updatedSite = {\r\n ...updatedSite,\r\n folders: recursiveMap(site.folders),\r\n };\r\n }\r\n\r\n return updatedSite;\r\n });\r\n }\r\n\r\n return prevLocations.map(prevLocation => {\r\n if (prevLocation.type === ComponentTypes.OneDrive && prevLocation.id == location.id) {\r\n return {\r\n ...prevLocation,\r\n expanded: !location.expanded,\r\n };\r\n }\r\n if (prevLocation.sites) {\r\n return {\r\n ...prevLocation,\r\n sites: recursiveMap(prevLocation.sites),\r\n };\r\n }\r\n if (prevLocation.folders) {\r\n return {\r\n ...prevLocation,\r\n folders: recursiveMap(prevLocation.folders),\r\n };\r\n }\r\n return prevLocation;\r\n });\r\n });\r\n }\r\n\r\n const setLocationsSiteSubsiteUpdate = (location: any, subsites: ISiteInfoLocation[], documents: ISharepointDocumentLocation[], folders: IFolderLocation[], foldersNextHref: string, isLoadmore: boolean = false, isRefresh: boolean = false, subSitesNextHref: string, channels?: ITeamChannelDto[]) => {\r\n setLocations(prevLocations => {\r\n const recursiveFolderUpdate = (items) => {\r\n return items.map(item => {\r\n let updatedItem = item;\r\n if (item.id === location.id && item.randomId === location.randomId) {\r\n updatedItem = {\r\n ...item,\r\n folders: [...folders],\r\n foldersNextHref: foldersNextHref ? foldersNextHref : \"\",\r\n expanded: (isLoadmore || isRefresh) ? item.expanded : !item.expanded,\r\n canExpand: folders.length > 0,\r\n isLoading: false,\r\n loaded: true,\r\n };\r\n }\r\n else if (item.folders) {\r\n updatedItem = {\r\n ...updatedItem,\r\n folders: recursiveFolderUpdate(item.folders),\r\n };\r\n }\r\n return updatedItem;\r\n });\r\n }\r\n\r\n const recursiveUpdate = (sites) => {\r\n return sites.map(site => {\r\n let updatedSite = site;\r\n if (site.id === location.id && site.randomId === location.randomId) {\r\n updatedSite = {\r\n ...site,\r\n subSites: subsites,\r\n subSitesNextHref: subSitesNextHref ? subSitesNextHref : \"\",\r\n channels: channels,\r\n documents: (isRefresh || isLoadmore) ? [...documents] : [...(site.documents || []), ...documents],\r\n expanded: (isRefresh || isLoadmore) ? site.expanded : !site.expanded,\r\n isLoading: false,\r\n loaded: true,\r\n };\r\n\r\n return updatedSite;\r\n }\r\n if (site.subSites) {\r\n updatedSite = {\r\n ...updatedSite,\r\n subSites: recursiveUpdate(site.subSites),\r\n };\r\n }\r\n if (site.channels) {\r\n updatedSite = {\r\n ...updatedSite,\r\n channels: recursiveFolderUpdate(site.channels),\r\n };\r\n }\r\n if (site.documents) {\r\n updatedSite = {\r\n ...updatedSite,\r\n documents: recursiveFolderUpdate(site.documents),\r\n };\r\n }\r\n return updatedSite;\r\n });\r\n }\r\n\r\n return prevLocations.map(prevLocation => {\r\n if (prevLocation.sites) {\r\n return {\r\n ...prevLocation,\r\n sites: recursiveUpdate(prevLocation.sites),\r\n };\r\n }\r\n if (prevLocation.folders && prevLocation.id === location.id && prevLocation.randomId === location.randomId && isLoadmore) {\r\n return {\r\n ...prevLocation,\r\n folders,\r\n foldersNextHref,\r\n isLoading: false,\r\n };\r\n }\r\n if (prevLocation.folders) {\r\n return {\r\n ...prevLocation,\r\n folders: recursiveFolderUpdate(prevLocation.folders),\r\n };\r\n }\r\n return prevLocation;\r\n });\r\n });\r\n }\r\n\r\n const setLocationItem = (location: any, isSelected?: boolean, isLoading?: boolean, isLoadingChannelInfo?: boolean) => {\r\n setLocations((prevLocations) => {\r\n if (isSelected !== undefined) {\r\n selectedItem.current = { id: location.id, randomId: location.randomId };\r\n }\r\n const recursiveMap = (sites) => {\r\n return sites.map((site: any) => {\r\n let updatedSite = site;\r\n let isCurrentItemSelected = selectedItem.current && site.id === selectedItem.current.id && site.randomId === selectedItem.current.randomId;\r\n\r\n if (site.id === location.id && site.randomId === location.randomId) {\r\n updatedSite = {\r\n ...site,\r\n isLoading: isLoading !== undefined ? isLoading : site.isLoading,\r\n isSelected: isSelected !== undefined ? isSelected : site.isSelected,\r\n isLoadingChannelInfo: isLoadingChannelInfo !== undefined ? isLoadingChannelInfo : site.isLoadingChannelInfo,\r\n };\r\n }\r\n else if (isCurrentItemSelected) {\r\n updatedSite = {\r\n ...site,\r\n isSelected: isSelected !== undefined ? isSelected : site.isSelected\r\n };\r\n }\r\n else {\r\n updatedSite = {\r\n ...site,\r\n isSelected: false\r\n };\r\n }\r\n if (site.subSites) {\r\n updatedSite = {\r\n ...updatedSite,\r\n subSites: recursiveMap(site.subSites),\r\n };\r\n }\r\n if (site.documents) {\r\n updatedSite = {\r\n ...updatedSite,\r\n documents: recursiveMap(site.documents),\r\n };\r\n }\r\n if (site.channels) {\r\n updatedSite = {\r\n ...updatedSite,\r\n channels: recursiveMap(site.channels),\r\n };\r\n }\r\n if (site.folders) {\r\n updatedSite = {\r\n ...updatedSite,\r\n folders: recursiveMap(site.folders),\r\n };\r\n }\r\n return updatedSite;\r\n });\r\n };\r\n\r\n return prevLocations.map((prevLocation) => {\r\n try {\r\n if (\r\n (prevLocation.type === ComponentTypes.SharePoint\r\n || prevLocation.type === ComponentTypes.Teams\r\n || prevLocation.type === ComponentTypes.OneDrive)\r\n && prevLocation.id == location.id\r\n ) {\r\n return {\r\n ...prevLocation,\r\n isLoading: isLoading !== undefined ? isLoading : prevLocation.isLoading\r\n };\r\n }\r\n if (prevLocation.sites) {\r\n return {\r\n ...prevLocation,\r\n sites: recursiveMap(prevLocation.sites),\r\n };\r\n }\r\n if (prevLocation.folders) {\r\n return {\r\n ...prevLocation,\r\n folders: recursiveMap(prevLocation.folders),\r\n };\r\n }\r\n return prevLocation;\r\n } catch (error) {\r\n return prevLocation;\r\n }\r\n });\r\n });\r\n };\r\n\r\n const dismissFileOptionPanel = React.useCallback(() => {\r\n setFileOptionPanelInfo(initialFileOptionPanelInfoSetting);\r\n }, []);\r\n\r\n const dismissFolderOptionPanel = React.useCallback(() => {\r\n setFolderOptionPanelInfo(initialFolderOptionPanelInfoSetting);\r\n }, []);\r\n\r\n const fileOptionPanel =\r\n \r\n\r\n const folderOptionPanel =\r\n \r\n\r\n const openFileOptions = (storeItem: IStoreItem, isRecentItem: boolean = false) => {\r\n const options = {\r\n driveId: storeItem.driveId,\r\n fileType: storeItem.extension,\r\n name: storeItem.name,\r\n lastModifiedDateTime: storeItem.lastModifiedDateTime,\r\n isOpen: true,\r\n itemId: storeItem.itemId,\r\n folderId: storeItem.folderId,\r\n isRecentItem: isRecentItem,\r\n filePath: storeItem.filePath,\r\n modifiedBy: storeItem.modifiedBy,\r\n isFromHomePage: true,\r\n isFromPinnedItems: !isRecentItem,\r\n cannotbeRemoved: storeItem?.cannotBeRemoved\r\n };\r\n\r\n setFileOptionPanelInfo(options);\r\n };\r\n\r\n const openFolderOptions = (storeItem: IStoreItem, isRecentItem: boolean = false, isSuggestedList: boolean = false) => {\r\n const isSharedTeamsChannel: boolean = Array.isArray(storeItem.locations)\r\n && storeItem.locations.length > 0\r\n && storeItem.locations[storeItem.locations.length - 1].isSharedTeamsChannel;\r\n\r\n const options = {\r\n isOpen: true,\r\n folder: {\r\n driveId: storeItem.driveId,\r\n id: !isSharedTeamsChannel ? storeItem.itemId : null,\r\n name: storeItem.name,\r\n sharePointListId: storeItem.sharePointListId,\r\n sharePointUniqueId: !isSharedTeamsChannel ? storeItem.sharePointUniqueId : null,\r\n isSharedTeam: storeItem.isSharedTeam\r\n },\r\n locations: storeItem.locations,\r\n webUrl: storeItem.webUrl,\r\n saveToOneDrive: saveToOneDrive,\r\n folderType: FolderTypeIconQuery.getFolderType(storeItem.folderTypeIcon),\r\n isARecentItem: isSuggestedList ? false : isRecentItem,\r\n isFromHomePage: true,\r\n isFromPinnedItems: isSuggestedList ? false : !isRecentItem,\r\n isTeamsSiteInsideSharepoint: storeItem.isTeamsSiteInsideSharepoint,\r\n isFromSuggestedItems: isSuggestedList,\r\n }\r\n setFolderOptionPanelInfo(options);\r\n };\r\n\r\n const licenseDialog = (\r\n \r\n );\r\n\r\n const folderDialogContentProps = {\r\n type: DialogType.largeHeader,\r\n title: languageStrings.FolderDeleted,\r\n closeButtonAriaLabel: \"Close\",\r\n subText: languageStrings.FolderRecentlyDeleted\r\n };\r\n\r\n const folderDeletedDialog = (\r\n