From b7bd5847549ab9511d271fb4e1b517909756d9ac Mon Sep 17 00:00:00 2001 From: gopienkonikita Date: Wed, 28 Aug 2024 11:10:20 +0300 Subject: [PATCH 1/4] Fix Bug 69876 - Files:Copy. Added truncate --- packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx b/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx index 776a895509..36fbffe044 100644 --- a/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx +++ b/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx @@ -115,7 +115,9 @@ const ConflictResolve = (props: ConflictResolveProps) => { > {headerLabel} - {messageText} + + {messageText} + {selectActionText} Date: Wed, 28 Aug 2024 11:22:05 +0300 Subject: [PATCH 2/4] Web: Files: ConflictResolve: fix styles --- .../components/dialogs/ConflictResolveDialog/index.tsx | 3 ++- .../dialogs/conflict-resolve/ConflictResolve.styled.ts | 10 ++++++++++ .../dialogs/conflict-resolve/ConflictResolve.tsx | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/client/src/components/dialogs/ConflictResolveDialog/index.tsx b/packages/client/src/components/dialogs/ConflictResolveDialog/index.tsx index 2014f089d1..100b58461e 100644 --- a/packages/client/src/components/dialogs/ConflictResolveDialog/index.tsx +++ b/packages/client/src/components/dialogs/ConflictResolveDialog/index.tsx @@ -37,6 +37,7 @@ import { ConflictResolveDialogProps, TActiveItem, } from "./ConflictResolveDialog.types"; +import { Text } from "@docspace/shared/components/text"; const ConflictResolveDialog = (props: ConflictResolveDialogProps) => { const { @@ -217,7 +218,7 @@ const ConflictResolveDialog = (props: ConflictResolveDialogProps) => { ns="Common" i18nKey="FileActionRequired" values={{ fileName: items[0].title }} - components={{ 1: }} + components={{ 1: }} /> ); diff --git a/packages/shared/dialogs/conflict-resolve/ConflictResolve.styled.ts b/packages/shared/dialogs/conflict-resolve/ConflictResolve.styled.ts index 91500886ac..85ac10f832 100644 --- a/packages/shared/dialogs/conflict-resolve/ConflictResolve.styled.ts +++ b/packages/shared/dialogs/conflict-resolve/ConflictResolve.styled.ts @@ -39,6 +39,12 @@ const StyledModalDialog = styled(ModalDialog)` .bold { font-weight: 600; } + + .truncate { + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + } } .select-action { @@ -76,6 +82,10 @@ const StyledModalDialog = styled(ModalDialog)` color: #a3a9ae; } } + + .conflict-resolve_file-name { + display: flex; + } `; export default StyledModalDialog; diff --git a/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx b/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx index 36fbffe044..6eec9233fb 100644 --- a/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx +++ b/packages/shared/dialogs/conflict-resolve/ConflictResolve.tsx @@ -115,7 +115,7 @@ const ConflictResolve = (props: ConflictResolveProps) => { > {headerLabel} - + {messageText} {selectActionText} From dec78c077f7a0b4cd089fb394dccc5570d313cb1 Mon Sep 17 00:00:00 2001 From: Viktor Fomin Date: Wed, 28 Aug 2024 12:26:34 +0300 Subject: [PATCH 3/4] Fix Bug 69883 Expired certificate is not highlighted --- .../styled-containers/StyledCertificatesTable.js | 9 +++++++++ .../SingleSignOn/sub-components/CertificatesTable.js | 8 +++++--- packages/shared/themes/base.ts | 2 ++ packages/shared/themes/dark.ts | 2 ++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/styled-containers/StyledCertificatesTable.js b/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/styled-containers/StyledCertificatesTable.js index cb47992bf0..b5393cf5c2 100644 --- a/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/styled-containers/StyledCertificatesTable.js +++ b/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/styled-containers/StyledCertificatesTable.js @@ -67,6 +67,15 @@ const StyledCertificatesTable = styled.div` .column-row { display: flex; + + .description { + color: ${(props) => + props.theme.client.settings.integration.sso.textColor}; + } + .error-description { + color: ${(props) => + props.theme.client.settings.integration.sso.errorColor}; + } } } diff --git a/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/sub-components/CertificatesTable.js b/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/sub-components/CertificatesTable.js index 16b1ed9f8b..712a0faf3d 100644 --- a/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/sub-components/CertificatesTable.js +++ b/packages/client/src/pages/PortalSettings/categories/integration/SingleSignOn/sub-components/CertificatesTable.js @@ -30,12 +30,13 @@ import FileSvgUrl from "PUBLIC_DIR/images/icons/32/file.svg?url"; import React from "react"; import { inject, observer } from "mobx-react"; import { useTranslation } from "react-i18next"; +import moment from "moment-timezone"; +import { ReactSVG } from "react-svg"; import { Text } from "@docspace/shared/components/text"; import { ContextMenuButton } from "@docspace/shared/components/context-menu-button"; import StyledCertificatesTable from "../styled-containers/StyledCertificatesTable"; -import { ReactSVG } from "react-svg"; const CertificatesTable = (props) => { const { t } = useTranslation(["SingleSignOn", "Common"]); @@ -50,7 +51,6 @@ const CertificatesTable = (props) => { } = props; const renderRow = (certificate, index) => { - console.log(prefix, index); const onEdit = () => { prefix === "sp" ? setSpCertificate(certificate, index, true) @@ -86,6 +86,8 @@ const CertificatesTable = (props) => { return `${new Date(date).toLocaleDateString()}`; }; + const isExpired = moment().isAfter(moment(certificate.expiredDate)); + return (
@@ -97,7 +99,7 @@ const CertificatesTable = (props) => {
{ linkColor: link, sso: { + textColor: gray, + errorColor: lightErrorStatus, toggleContentBackground: grayLight, iconButton: black, iconButtonDisabled: gray, diff --git a/packages/shared/themes/dark.ts b/packages/shared/themes/dark.ts index 5deec3296f..13b426ded2 100644 --- a/packages/shared/themes/dark.ts +++ b/packages/shared/themes/dark.ts @@ -3043,6 +3043,8 @@ const Dark: TTheme = { linkColor: "#E06A1B", sso: { + textColor: grayDark, + errorColor: darkErrorStatus, toggleContentBackground: "#474747", iconButton: white, iconButtonDisabled: "#333", From 720422c65de5e1fa4c222acef78a5e0bbecfa25d Mon Sep 17 00:00:00 2001 From: Ilya Oleshko Date: Wed, 28 Aug 2024 13:33:25 +0300 Subject: [PATCH 4/4] Fixed Bug 67513: Client: Added authorized flag for download operation page --- packages/client/src/pages/Confirm/sub-components/auth.js | 6 +++++- .../operation-container/OperationContainer.types.ts | 1 + packages/shared/components/operation-container/index.tsx | 6 +++--- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/client/src/pages/Confirm/sub-components/auth.js b/packages/client/src/pages/Confirm/sub-components/auth.js index 8c50e80aff..4a97cae98b 100644 --- a/packages/client/src/pages/Confirm/sub-components/auth.js +++ b/packages/client/src/pages/Confirm/sub-components/auth.js @@ -24,7 +24,7 @@ // content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0 // International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode -import React, { useEffect } from "react"; +import React, { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; import { Loader } from "@docspace/shared/components/loader"; import Section from "@docspace/shared/components/section"; @@ -42,6 +42,8 @@ const Auth = (props) => { let [searchParams, setSearchParams] = useSearchParams(); const { t } = useTranslation(["Common"]); + const [authorized, setAuthorized] = useState(false); + const referenceUrl = searchParams.get("referenceUrl"); const isFileHandler = referenceUrl && referenceUrl.indexOf("filehandler.ashx") !== -1; @@ -63,6 +65,7 @@ const Auth = (props) => { try { new URL(referenceUrl); if (isFileHandler && isExternalDownloading) { + setAuthorized(true); return; } else { return window.location.replace(referenceUrl); @@ -86,6 +89,7 @@ const Auth = (props) => { return isFileHandler && isExternalDownloading ? ( diff --git a/packages/shared/components/operation-container/OperationContainer.types.ts b/packages/shared/components/operation-container/OperationContainer.types.ts index 47e1dba80a..a1d87d74ed 100644 --- a/packages/shared/components/operation-container/OperationContainer.types.ts +++ b/packages/shared/components/operation-container/OperationContainer.types.ts @@ -26,6 +26,7 @@ export interface IOperationContainer { url?: string; + authorized: boolean; title: string; description: string; } diff --git a/packages/shared/components/operation-container/index.tsx b/packages/shared/components/operation-container/index.tsx index a91bace8ef..81312ab86f 100644 --- a/packages/shared/components/operation-container/index.tsx +++ b/packages/shared/components/operation-container/index.tsx @@ -35,7 +35,7 @@ import { Text } from "../text"; import PortalLogo from "../portal-logo/PortalLogo"; const OperationContainer = (props: IOperationContainer) => { - const { url, title, description } = props; + const { url, authorized, title, description } = props; const theme = useTheme(); @@ -46,8 +46,8 @@ const OperationContainer = (props: IOperationContainer) => { ); useEffect(() => { - if (url) window.location.replace(url); - }, [url]); + if (url && authorized) window.location.replace(url); + }, [url, authorized]); return (