refactor: clean code

This commit is contained in:
Fu Diwei 2025-04-01 20:44:45 +08:00
parent 55b1794004
commit 8cdb2afa69
10 changed files with 26 additions and 26 deletions

View File

@ -29,7 +29,6 @@ const CertificateDetailDrawer = ({ data, loading, trigger, ...props }: Certifica
<Drawer <Drawer
afterOpenChange={setOpen} afterOpenChange={setOpen}
closable
destroyOnClose destroyOnClose
open={open} open={open}
loading={loading} loading={loading}

View File

@ -4,14 +4,14 @@ import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
import { type ApplyCAProvider, applyCAProvidersMap } from "@/domain/provider"; import { type ApplyCAProvider, applyCAProvidersMap } from "@/domain/provider";
export type CAProviderSelectProps = Omit< export type ApplyCAProviderSelectProps = Omit<
SelectProps, SelectProps,
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender" "filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
> & { > & {
filter?: (record: ApplyCAProvider) => boolean; filter?: (record: ApplyCAProvider) => boolean;
}; };
const CAProviderSelect = ({ filter, ...props }: CAProviderSelectProps) => { const ApplyCAProviderSelect = ({ filter, ...props }: ApplyCAProviderSelectProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyCAProvider }>>([]); const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyCAProvider }>>([]);
@ -80,4 +80,4 @@ const CAProviderSelect = ({ filter, ...props }: CAProviderSelectProps) => {
); );
}; };
export default memo(CAProviderSelect); export default memo(ApplyCAProviderSelect);

View File

@ -5,7 +5,7 @@ import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Typography }
import Show from "@/components/Show"; import Show from "@/components/Show";
import { applyDNSProvidersMap } from "@/domain/provider"; import { applyDNSProvidersMap } from "@/domain/provider";
export type DNSProviderPickerProps = { export type ApplyDNSProviderPickerProps = {
className?: string; className?: string;
style?: React.CSSProperties; style?: React.CSSProperties;
autoFocus?: boolean; autoFocus?: boolean;
@ -13,7 +13,7 @@ export type DNSProviderPickerProps = {
onSelect?: (value: string) => void; onSelect?: (value: string) => void;
}; };
const DNSProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: DNSProviderPickerProps) => { const ApplyDNSProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: ApplyDNSProviderPickerProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const [keyword, setKeyword] = useState<string>(); const [keyword, setKeyword] = useState<string>();
@ -71,4 +71,4 @@ const DNSProviderPicker = ({ className, style, autoFocus, placeholder, onSelect
); );
}; };
export default memo(DNSProviderPicker); export default memo(ApplyDNSProviderPicker);

View File

@ -4,14 +4,14 @@ import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
import { type ApplyDNSProvider, applyDNSProvidersMap } from "@/domain/provider"; import { type ApplyDNSProvider, applyDNSProvidersMap } from "@/domain/provider";
export type DNSProviderSelectProps = Omit< export type ApplyDNSProviderSelectProps = Omit<
SelectProps, SelectProps,
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender" "filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
> & { > & {
filter?: (record: ApplyDNSProvider) => boolean; filter?: (record: ApplyDNSProvider) => boolean;
}; };
const DNSProviderSelect = ({ filter, ...props }: DNSProviderSelectProps) => { const ApplyDNSProviderSelect = ({ filter, ...props }: ApplyDNSProviderSelectProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyDNSProvider }>>([]); const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyDNSProvider }>>([]);
@ -64,4 +64,4 @@ const DNSProviderSelect = ({ filter, ...props }: DNSProviderSelectProps) => {
); );
}; };
export default memo(DNSProviderSelect); export default memo(ApplyDNSProviderSelect);

View File

@ -5,7 +5,7 @@ import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Tabs, Toolti
import Show from "@/components/Show"; import Show from "@/components/Show";
import { DEPLOY_CATEGORIES, deployProvidersMap } from "@/domain/provider"; import { DEPLOY_CATEGORIES, deployProvidersMap } from "@/domain/provider";
export type HostingProviderPickerProps = { export type DeployProviderPickerProps = {
className?: string; className?: string;
style?: React.CSSProperties; style?: React.CSSProperties;
autoFocus?: boolean; autoFocus?: boolean;
@ -13,7 +13,7 @@ export type HostingProviderPickerProps = {
onSelect?: (value: string) => void; onSelect?: (value: string) => void;
}; };
const HostingProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: HostingProviderPickerProps) => { const DeployProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: DeployProviderPickerProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const [keyword, setKeyword] = useState<string>(); const [keyword, setKeyword] = useState<string>();
@ -110,4 +110,4 @@ const HostingProviderPicker = ({ className, style, autoFocus, placeholder, onSel
); );
}; };
export default memo(HostingProviderPicker); export default memo(DeployProviderPicker);

View File

@ -4,14 +4,14 @@ import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
import { type DeployProvider, deployProvidersMap } from "@/domain/provider"; import { type DeployProvider, deployProvidersMap } from "@/domain/provider";
export type HostingProviderSelectProps = Omit< export type DeployProviderSelectProps = Omit<
SelectProps, SelectProps,
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender" "filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
> & { > & {
filter?: (record: DeployProvider) => boolean; filter?: (record: DeployProvider) => boolean;
}; };
const HostingProviderSelect = ({ filter, ...props }: HostingProviderSelectProps) => { const DeployProviderSelect = ({ filter, ...props }: DeployProviderSelectProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: DeployProvider }>>([]); const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: DeployProvider }>>([]);
@ -64,4 +64,4 @@ const HostingProviderSelect = ({ filter, ...props }: HostingProviderSelectProps)
); );
}; };
export default memo(HostingProviderSelect); export default memo(DeployProviderSelect);

View File

@ -30,7 +30,6 @@ const WorkflowRunDetailDrawer = ({ data, loading, trigger, ...props }: WorkflowR
<Drawer <Drawer
afterOpenChange={setOpen} afterOpenChange={setOpen}
closable
destroyOnClose destroyOnClose
open={open} open={open}
loading={loading} loading={loading}

View File

@ -31,8 +31,8 @@ import AccessEditModal from "@/components/access/AccessEditModal";
import AccessSelect from "@/components/access/AccessSelect"; import AccessSelect from "@/components/access/AccessSelect";
import ModalForm from "@/components/ModalForm"; import ModalForm from "@/components/ModalForm";
import MultipleInput from "@/components/MultipleInput"; import MultipleInput from "@/components/MultipleInput";
import CAProviderSelect from "@/components/provider/CAProviderSelect"; import ApplyCAProviderSelect from "@/components/provider/ApplyCAProviderSelect";
import DNSProviderSelect from "@/components/provider/DNSProviderSelect"; import ApplyDNSProviderSelect from "@/components/provider/ApplyDNSProviderSelect";
import { ACCESS_USAGES, APPLY_DNS_PROVIDERS, accessProvidersMap, applyCAProvidersMap, applyDNSProvidersMap } from "@/domain/provider"; import { ACCESS_USAGES, APPLY_DNS_PROVIDERS, accessProvidersMap, applyCAProvidersMap, applyDNSProvidersMap } from "@/domain/provider";
import { type WorkflowNodeConfigForApply } from "@/domain/workflow"; import { type WorkflowNodeConfigForApply } from "@/domain/workflow";
import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks"; import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks";
@ -324,7 +324,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
</Form.Item> </Form.Item>
<Form.Item name="provider" label={t("workflow_node.apply.form.provider.label")} hidden={!showProvider} rules={[formRule]}> <Form.Item name="provider" label={t("workflow_node.apply.form.provider.label")} hidden={!showProvider} rules={[formRule]}>
<DNSProviderSelect <ApplyDNSProviderSelect
disabled={!showProvider} disabled={!showProvider}
filter={(record) => { filter={(record) => {
if (fieldProviderAccessId) { if (fieldProviderAccessId) {
@ -407,7 +407,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
</div> </div>
</label> </label>
<Form.Item name="caProvider" rules={[formRule]}> <Form.Item name="caProvider" rules={[formRule]}>
<CAProviderSelect <ApplyCAProviderSelect
allowClear allowClear
placeholder={t("workflow_node.apply.form.ca_provider.placeholder")} placeholder={t("workflow_node.apply.form.ca_provider.placeholder")}
showSearch showSearch

View File

@ -7,8 +7,8 @@ import { z } from "zod";
import AccessEditModal from "@/components/access/AccessEditModal"; import AccessEditModal from "@/components/access/AccessEditModal";
import AccessSelect from "@/components/access/AccessSelect"; import AccessSelect from "@/components/access/AccessSelect";
import HostingProviderPicker from "@/components/provider/HostingProviderPicker.tsx"; import DeployProviderPicker from "@/components/provider/DeployProviderPicker.tsx";
import HostingProviderSelect from "@/components/provider/HostingProviderSelect.tsx"; import DeployProviderSelect from "@/components/provider/DeployProviderSelect.tsx";
import Show from "@/components/Show"; import Show from "@/components/Show";
import { ACCESS_USAGES, DEPLOY_PROVIDERS, accessProvidersMap, deployProvidersMap } from "@/domain/provider"; import { ACCESS_USAGES, DEPLOY_PROVIDERS, accessProvidersMap, deployProvidersMap } from "@/domain/provider";
import { type WorkflowNode, type WorkflowNodeConfigForDeploy } from "@/domain/workflow"; import { type WorkflowNode, type WorkflowNodeConfigForDeploy } from "@/domain/workflow";
@ -372,10 +372,10 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
<Form className={className} style={style} {...formProps} disabled={disabled} layout="vertical" scrollToFirstError onValuesChange={handleFormChange}> <Form className={className} style={style} {...formProps} disabled={disabled} layout="vertical" scrollToFirstError onValuesChange={handleFormChange}>
<Show <Show
when={!!fieldProvider} when={!!fieldProvider}
fallback={<HostingProviderPicker autoFocus placeholder={t("workflow_node.deploy.search.provider.placeholder")} onSelect={handleProviderPick} />} fallback={<DeployProviderPicker autoFocus placeholder={t("workflow_node.deploy.search.provider.placeholder")} onSelect={handleProviderPick} />}
> >
<Form.Item name="provider" label={t("workflow_node.deploy.form.provider.label")} rules={[formRule]}> <Form.Item name="provider" label={t("workflow_node.deploy.form.provider.label")} rules={[formRule]}>
<HostingProviderSelect <DeployProviderSelect
allowClear allowClear
disabled={!!initialValues?.provider} disabled={!!initialValues?.provider}
placeholder={t("workflow_node.deploy.form.provider.placeholder")} placeholder={t("workflow_node.deploy.form.provider.placeholder")}

View File

@ -283,7 +283,8 @@ const SharedNodeConfigDrawer = ({
{ModelContextHolder} {ModelContextHolder}
<Drawer <Drawer
afterOpenChange={(open) => setOpen(open)} afterOpenChange={setOpen}
closable={!pending}
destroyOnClose destroyOnClose
extra={ extra={
<SharedNodeMenu <SharedNodeMenu
@ -306,6 +307,7 @@ const SharedNodeConfigDrawer = ({
) )
} }
loading={loading} loading={loading}
maskClosable={!pending}
open={open} open={open}
title={<div className="max-w-[480px] truncate">{node.name}</div>} title={<div className="max-w-[480px] truncate">{node.name}</div>}
width={720} width={720}