"use client" import { useEffect, useState } from "react" import { OrgSettingsSection } from "@/components/admin/settings/org-settings-form" import { SettingsCard, SettingsField, SettingsGrid, SettingsHint, SettingsToggleRow, } from "@/components/settings/settings-kit" import { AutomationTabMasonry } from "@/components/gmail/settings/automation/automation-tab-masonry" import { useOrgSettingsStore } from "@/lib/admin-settings/org-settings-store" import { Input } from "@/components/ui/input" import { InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, } from "@/components/ui/input-group" import { Textarea } from "@/components/ui/textarea" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select" import { DriveOrgFoldersSection } from "@/components/admin/settings/sections/drive-org-section" import { DriveOrgWebDAVSection } from "@/components/admin/settings/sections/drive-org-webdav-section" import { DriveMountOAuthSection } from "@/components/admin/settings/sections/drive-mount-oauth-section" export function FilePoliciesSection() { const filePolicies = useOrgSettingsStore((s) => s.filePolicies) const setFilePolicies = useOrgSettingsStore((s) => s.setFilePolicies) const [mountOAuthDraft, setMountOAuthDraft] = useState(filePolicies.mount_oauth) const vtKeyConfigured = useOrgSettingsStore( (s) => s.meta?.secrets?.virustotal_api_key?.configured ?? false ) const vtKeyMissing = filePolicies.virus_scan_enabled && !vtKeyConfigured && !(filePolicies.virustotal_api_key ?? "").trim() useEffect(() => { setMountOAuthDraft(filePolicies.mount_oauth) }, [filePolicies.mount_oauth]) return ( setFilePolicies({ mount_oauth: mountOAuthDraft })} > setFilePolicies({ max_upload_mib: Number(e.target.value) || 1 }) } /> Mo setFilePolicies({ default_link_expiry_days: Number(e.target.value) || 1, }) } /> jours setFilePolicies({ retention_trash_days: Number(e.target.value) || 1 }) } /> jours