/** * Copyright (c) 2023-present Plane Software, Inc. and contributors * SPDX-License-Identifier: AGPL-3.0-only * See the LICENSE file for details. */ import { observer } from "mobx-react"; import Link from "next/link"; // icons import { SettingsOutline } from "@makeplane/propel/icons"; // plane internal packages import { AnchorButton } from "@makeplane/propel/components/anchor-button"; import { Button } from "@makeplane/propel/components/button"; import { Switch } from "@makeplane/propel/components/switch"; import type { TInstanceAuthenticationMethodKeys } from "@plane/types"; // hooks import { useInstance } from "@/hooks/store"; type Props = { disabled: boolean; updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void; }; export const GoogleConfiguration = observer(function GoogleConfiguration(props: Props) { const { disabled, updateConfig } = props; // store const { formattedConfig } = useInstance(); // derived values const enableGoogleConfig = formattedConfig?.IS_GOOGLE_ENABLED ?? ""; const isGoogleConfigured = !!formattedConfig?.GOOGLE_CLIENT_ID && !!formattedConfig?.GOOGLE_CLIENT_SECRET; return ( <> {isGoogleConfigured ? (
} label="Edit" /> { const newEnableGoogleConfig = Boolean(parseInt(enableGoogleConfig)) === true ? "0" : "1"; updateConfig("IS_GOOGLE_ENABLED", newEnableGoogleConfig); }} size="sm" disabled={disabled} />
) : (