import { Group, Text, Switch, Tooltip } from "@mantine/core"; import { useAtom } from "jotai"; import { workspaceAtom } from "@/features/user/atoms/current-user-atom.ts"; import React, { useState } from "react"; import { useTranslation } from "react-i18next"; import { updateWorkspace } from "@/features/workspace/services/workspace-service.ts"; import { notifications } from "@mantine/notifications"; import { useHasFeature } from "@/ee/hooks/use-feature"; import { Feature } from "@/ee/features"; import { useUpgradeLabel } from "@/ee/hooks/use-upgrade-label"; export default function EnableGenerativeAi() { const { t } = useTranslation(); const [workspace, setWorkspace] = useAtom(workspaceAtom); const [checked, setChecked] = useState(workspace?.settings?.ai?.generative); const hasAccess = useHasFeature(Feature.AI); const upgradeLabel = useUpgradeLabel(); const handleChange = async (event: React.ChangeEvent) => { const value = event.currentTarget.checked; try { const updatedWorkspace = await updateWorkspace({ generativeAi: value }); setChecked(value); setWorkspace(updatedWorkspace); } catch (err) { notifications.show({ message: err?.response?.data?.message, color: "red", }); } }; return (
{t("Generative AI (Ask AI)")} {t( "Enable AI-powered content generation in the editor. Allows users to generate, improve, translate and transform text.", )}
); }