"use client"; import React from "react"; import { observer } from "mobx-react-lite"; import Link from "next/link"; // icons import { Settings2 } from "lucide-react"; // types import { TInstanceAuthenticationMethodKeys } from "@plane/types"; // ui import { ToggleSwitch, getButtonStyling } from "@plane/ui"; // helpers import { cn } from "@/helpers/common.helper"; // hooks import { useInstance } from "@/hooks/store"; type Props = { disabled: boolean; updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void; }; export const GithubConfiguration: React.FC = observer((props) => { const { disabled, updateConfig } = props; // store const { formattedConfig } = useInstance(); // derived values const enableGithubConfig = formattedConfig?.IS_GITHUB_ENABLED ?? ""; const isGithubConfigured = !!formattedConfig?.GITHUB_CLIENT_ID && !!formattedConfig?.GITHUB_CLIENT_SECRET; return ( <> {isGithubConfigured ? (
Edit { Boolean(parseInt(enableGithubConfig)) === true ? updateConfig("IS_GITHUB_ENABLED", "0") : updateConfig("IS_GITHUB_ENABLED", "1"); }} size="sm" disabled={disabled} />
) : ( Configure )} ); });