import React, { useState } from 'react';
import {
  Button,
  Card, Descriptions, Grid, List, Popconfirm, Popover, Typography,
} from '@arco-design/web-react';
import { Link } from 'react-router-dom';
import { IconDelete, IconEdit } from '@arco-design/web-react/icon';
import { selectSiteConf } from '../globalConf/globalConfSlice';
import { useAppSelector } from '../../app/hooks';
import { Cookie, SiteConfig } from '../../utils/type';
import { useGetCookiesQuery, useDeleteCookieMutation } from './cookieConfigSlice';
import CookieModal from './CookieModal';
import './CookieManager.css';
interface CookieSite {
  site: SiteConfig;
  cookies: Cookie[];
}
export default function CookieManager() {
  const siteConf = useAppSelector(selectSiteConf);
  const { data: cookieDict } = useGetCookiesQuery();
  const cookiesList = cookieDict ? Object.values(cookieDict) : [];
  const cookieSite = Object.values(siteConf).filter((site) => site.enable_cookie);
  const cookieSiteList: CookieSite[] = cookieSite.map((site) => ({
    site,
    cookies: cookiesList.filter((cookie) => cookie.site_name === site.name),
  }));
  const [showModal, setShowModal] = useState(false);
  const [siteName, setSiteName] = useState('');
  const [deleteCookie] = useDeleteCookieMutation();
  const handleAddCookie = (newSiteName: string) => () => {
    console.log(newSiteName);
    setSiteName(newSiteName);
    setShowModal(true);
  };
  const handleDelCookie = (cookieId: string) => () => {
    console.log(cookieId);
    deleteCookie({
      cookieId,
    });
  };
  return (
    <>
      Cookie 管理
      
        {cookieSiteList && cookieSiteList.map(({ cookies, site }) => (
          
            
                  添加
                
              )}
            >
              {cookies.map((cookie) => (
                
                  
                    
                       ({
                              label: entry[0].toString(),
                              value: typeof (entry[1]) === 'object' ? JSON.stringify(entry[1]) : entry[1].toString(),
                            }))}
                          />
                        )}
                      >
                        {cookie.friendly_name}
                      
                      
                     
                  
                
              ))}
            
          
        ))}
      
      
    >
  );
}