import Card, { CardContent, CardFooter, CardHeader } from "@/components/Card";
import Button from "@/components/Button";
import ControlsGroup from "@/pages/settings/controls/ControlsGroup";
import { spcApi } from "@/lib/api";
import { useSettingsStore } from "@/store/optionsStore";
import { useAppStore } from "@/store/store";
import { useState } from "@wordpress/element";
import { __ } from "@wordpress/i18n";
import { DownloadIcon, Eye, Trash } from "lucide-react";
import { toast } from "sonner";
const AdvancedLog = () => {
const { isToggleOn } = useSettingsStore();
const controls = [
{
id: 'log_enabled',
type: 'toggle',
label: __('Log mode', 'wp-cloudflare-page-cache'),
description: __('Enable this option if you want to log all activity of this plugin.', 'wp-cloudflare-page-cache'),
},
{
id: 'log_max_file_size',
type: 'number',
label: __('Max log file size in MB', 'wp-cloudflare-page-cache'),
description: __('Automatically reset the log file when it exceeded the max file size. Set 0 to never reset it.', 'wp-cloudflare-page-cache'),
hide: !isToggleOn('log_enabled'),
},
{
id: 'log_verbosity',
type: 'select',
label: __('Log verbosity', 'wp-cloudflare-page-cache'),
options: [
{ value: '1', label: __('Standard', 'wp-cloudflare-page-cache') },
{ value: '2', label: __('High', 'wp-cloudflare-page-cache') },
],
hide: !isToggleOn('log_enabled'),
}
]
return (
{__('Logs Settings', 'wp-cloudflare-page-cache')}
{isToggleOn('log_enabled') && (
)}
);
}
const LogActions = () => {
const { logDownloadURL, logViewURL } = window.SPCDash;
const { lockAsync, asyncLocked } = useAppStore();
const [clearingLog, setClearingLog] = useState(false)
const onLogClear = async () => {
lockAsync(true);
setClearingLog(true);
const response = await spcApi.clearLogs();
lockAsync(false);
setClearingLog(false);
if (response.success) {
toast.success(response.message);
return;
}
toast.error(response.message);
}
return (
<>
>
)
}
export default AdvancedLog;