mirror of
https://github.com/certimate-go/certimate.git
synced 2026-10-29 17:58:19 +08:00
feat: plugin migration 1
This commit is contained in:
@@ -227,11 +227,6 @@ type AccessConfigForDNSMadeEasy struct {
|
||||
ApiSecret string `json:"apiSecret"`
|
||||
}
|
||||
|
||||
type AccessConfigForDogeCloud struct {
|
||||
AccessKey string `json:"accessKey"`
|
||||
SecretKey string `json:"secretKey"`
|
||||
}
|
||||
|
||||
type AccessConfigForDokploy struct {
|
||||
ServerUrl string `json:"serverUrl"`
|
||||
ApiKey string `json:"apiKey"`
|
||||
@@ -368,10 +363,6 @@ type AccessConfigForKong struct {
|
||||
AllowInsecureConnections bool `json:"allowInsecureConnections,omitempty"`
|
||||
}
|
||||
|
||||
type AccessConfigForKubernetes struct {
|
||||
KubeConfig string `json:"kubeConfig,omitempty"`
|
||||
}
|
||||
|
||||
type AccessConfigForKsyun struct {
|
||||
AccessKeyId string `json:"accessKeyId"`
|
||||
SecretAccessKey string `json:"secretAccessKey"`
|
||||
@@ -498,11 +489,6 @@ type AccessConfigForQingCloud struct {
|
||||
SecretAccessKey string `json:"secretAccessKey"`
|
||||
}
|
||||
|
||||
type AccessConfigForQiniu struct {
|
||||
AccessKey string `json:"accessKey"`
|
||||
SecretKey string `json:"secretKey"`
|
||||
}
|
||||
|
||||
type AccessConfigForRainYun struct {
|
||||
ApiKey string `json:"apiKey"`
|
||||
}
|
||||
|
||||
@@ -53,7 +53,6 @@ const (
|
||||
AccessProviderTypeDNSExit = AccessProviderType("dnsexit")
|
||||
AccessProviderTypeDNSLA = AccessProviderType("dnsla")
|
||||
AccessProviderTypeDNSMadeEasy = AccessProviderType("dnsmadeeasy")
|
||||
AccessProviderTypeDogeCloud = AccessProviderType("dogecloud")
|
||||
AccessProviderTypeDokploy = AccessProviderType("dokploy")
|
||||
AccessProviderTypeDuckDNS = AccessProviderType("duckdns")
|
||||
AccessProviderTypeDynadot = AccessProviderType("dynadot")
|
||||
@@ -81,7 +80,6 @@ const (
|
||||
AccessProviderTypeJDCloud = AccessProviderType("jdcloud")
|
||||
AccessProviderTypeKong = AccessProviderType("kong")
|
||||
AccessProviderTypeKsyun = AccessProviderType("ksyun")
|
||||
AccessProviderTypeKubernetes = AccessProviderType("k8s")
|
||||
AccessProviderTypeLarkBot = AccessProviderType("larkbot")
|
||||
AccessProviderTypeLeCDN = AccessProviderType("lecdn")
|
||||
AccessProviderTypeLetsEncrypt = AccessProviderType("letsencrypt")
|
||||
@@ -104,7 +102,6 @@ const (
|
||||
AccessProviderTypePorkbun = AccessProviderType("porkbun")
|
||||
AccessProviderTypePowerDNS = AccessProviderType("powerdns")
|
||||
AccessProviderTypeProxmoxVE = AccessProviderType("proxmoxve")
|
||||
AccessProviderTypeQiniu = AccessProviderType("qiniu")
|
||||
AccessProviderTypeQingCloud = AccessProviderType("qingcloud")
|
||||
AccessProviderTypeRainYun = AccessProviderType("rainyun")
|
||||
AccessProviderTypeRatPanel = AccessProviderType("ratpanel")
|
||||
@@ -373,7 +370,6 @@ const (
|
||||
DeploymentProviderTypeCTCCCloudICDN = DeploymentProviderType(AccessProviderTypeCTCCCloud + "-icdn")
|
||||
DeploymentProviderTypeCTCCCloudLVDN = DeploymentProviderType(AccessProviderTypeCTCCCloud + "-lvdn")
|
||||
DeploymentProviderTypeDigitalOceanCertificate = DeploymentProviderType(AccessProviderTypeDigitalOcean + "-certificate")
|
||||
DeploymentProviderTypeDogeCloudCDN = DeploymentProviderType(AccessProviderTypeDogeCloud + "-cdn")
|
||||
DeploymentProviderTypeDokploy = DeploymentProviderType(AccessProviderTypeDokploy)
|
||||
DeploymentProviderTypeFlexCDN = DeploymentProviderType(AccessProviderTypeFlexCDN)
|
||||
DeploymentProviderTypeFlyIO = DeploymentProviderType(AccessProviderTypeFlyIO)
|
||||
@@ -397,7 +393,6 @@ const (
|
||||
DeploymentProviderTypeJDCloudSSL = DeploymentProviderType(AccessProviderTypeJDCloud + "-ssl")
|
||||
DeploymentProviderTypeJDCloudWAF = DeploymentProviderType(AccessProviderTypeJDCloud + "-waf")
|
||||
DeploymentProviderTypeKong = DeploymentProviderType(AccessProviderTypeKong)
|
||||
DeploymentProviderTypeKubernetesSecret = DeploymentProviderType(AccessProviderTypeKubernetes + "-secret")
|
||||
DeploymentProviderTypeKsyunCDN = DeploymentProviderType(AccessProviderTypeKsyun + "-cdn")
|
||||
DeploymentProviderTypeKsyunKCM = DeploymentProviderType(AccessProviderTypeKsyun + "-kcm")
|
||||
DeploymentProviderTypeKsyunSLB = DeploymentProviderType(AccessProviderTypeKsyun + "-slb")
|
||||
@@ -410,9 +405,6 @@ const (
|
||||
DeploymentProviderTypeOracleCloudCertificatesMgmt = DeploymentProviderType(AccessProviderTypeOracleCloud + "-certificatesmgmt")
|
||||
DeploymentProviderTypeProxmoxVE = DeploymentProviderType(AccessProviderTypeProxmoxVE)
|
||||
DeploymentProviderTypeQingCloudLB = DeploymentProviderType(AccessProviderTypeQingCloud + "-lb")
|
||||
DeploymentProviderTypeQiniuCDN = DeploymentProviderType(AccessProviderTypeQiniu + "-cdn")
|
||||
DeploymentProviderTypeQiniuKodo = DeploymentProviderType(AccessProviderTypeQiniu + "-kodo")
|
||||
DeploymentProviderTypeQiniuPili = DeploymentProviderType(AccessProviderTypeQiniu + "-pili")
|
||||
DeploymentProviderTypeRainYunRCDN = DeploymentProviderType(AccessProviderTypeRainYun + "-rcdn")
|
||||
DeploymentProviderTypeRainYunSSLCenter = DeploymentProviderType(AccessProviderTypeRainYun + "-sslcenter")
|
||||
DeploymentProviderTypeRatPanel = DeploymentProviderType(AccessProviderTypeRatPanel)
|
||||
|
||||
@@ -42,7 +42,6 @@ import AccessConfigFieldsProviderDiscordBot from "./AccessConfigFieldsProviderDi
|
||||
import AccessConfigFieldsProviderDNSExit from "./AccessConfigFieldsProviderDNSExit";
|
||||
import AccessConfigFieldsProviderDNSLA from "./AccessConfigFieldsProviderDNSLA";
|
||||
import AccessConfigFieldsProviderDNSMadeEasy from "./AccessConfigFieldsProviderDNSMadeEasy";
|
||||
import AccessConfigFieldsProviderDogeCloud from "./AccessConfigFieldsProviderDogeCloud";
|
||||
import AccessConfigFieldsProviderDokploy from "./AccessConfigFieldsProviderDokploy";
|
||||
import AccessConfigFieldsProviderDuckDNS from "./AccessConfigFieldsProviderDuckDNS";
|
||||
import AccessConfigFieldsProviderDynadot from "./AccessConfigFieldsProviderDynadot";
|
||||
@@ -69,7 +68,6 @@ import AccessConfigFieldsProviderIONOS from "./AccessConfigFieldsProviderIONOS";
|
||||
import AccessConfigFieldsProviderJDCloud from "./AccessConfigFieldsProviderJDCloud";
|
||||
import AccessConfigFieldsProviderKong from "./AccessConfigFieldsProviderKong";
|
||||
import AccessConfigFieldsProviderKsyun from "./AccessConfigFieldsProviderKsyun";
|
||||
import AccessConfigFieldsProviderKubernetes from "./AccessConfigFieldsProviderKubernetes";
|
||||
import AccessConfigFieldsProviderLarkBot from "./AccessConfigFieldsProviderLarkBot";
|
||||
import AccessConfigFieldsProviderLeCDN from "./AccessConfigFieldsProviderLeCDN";
|
||||
import AccessConfigFieldsProviderLinode from "./AccessConfigFieldsProviderLinode";
|
||||
@@ -167,7 +165,6 @@ const providerComponentMap: Partial<Record<AccessProviderType, React.ComponentTy
|
||||
[ACCESS_PROVIDERS.DNSLA]: AccessConfigFieldsProviderDNSLA,
|
||||
[ACCESS_PROVIDERS.DNSMADEEASY]: AccessConfigFieldsProviderDNSMadeEasy,
|
||||
[ACCESS_PROVIDERS.DOKPLOY]: AccessConfigFieldsProviderDokploy,
|
||||
[ACCESS_PROVIDERS.DOGECLOUD]: AccessConfigFieldsProviderDogeCloud,
|
||||
[ACCESS_PROVIDERS.DUCKDNS]: AccessConfigFieldsProviderDuckDNS,
|
||||
[ACCESS_PROVIDERS.DYNADOT]: AccessConfigFieldsProviderDynadot,
|
||||
[ACCESS_PROVIDERS.DYNU]: AccessConfigFieldsProviderDynu,
|
||||
@@ -191,7 +188,6 @@ const providerComponentMap: Partial<Record<AccessProviderType, React.ComponentTy
|
||||
[ACCESS_PROVIDERS.IONOS]: AccessConfigFieldsProviderIONOS,
|
||||
[ACCESS_PROVIDERS.JDCLOUD]: AccessConfigFieldsProviderJDCloud,
|
||||
[ACCESS_PROVIDERS.KONG]: AccessConfigFieldsProviderKong,
|
||||
[ACCESS_PROVIDERS.KUBERNETES]: AccessConfigFieldsProviderKubernetes,
|
||||
[ACCESS_PROVIDERS.KSYUN]: AccessConfigFieldsProviderKsyun,
|
||||
[ACCESS_PROVIDERS.LARKBOT]: AccessConfigFieldsProviderLarkBot,
|
||||
[ACCESS_PROVIDERS.LECDN]: AccessConfigFieldsProviderLeCDN,
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
import { getI18n, useTranslation } from "react-i18next";
|
||||
import { Form, Input } from "antd";
|
||||
import { createSchemaFieldRule } from "antd-zod";
|
||||
import { z } from "zod";
|
||||
|
||||
import { useFormNestedFieldsContext } from "./_context";
|
||||
|
||||
const AccessConfigFormFieldsProviderDogeCloud = () => {
|
||||
const { i18n, t } = useTranslation();
|
||||
|
||||
const { parentNamePath } = useFormNestedFieldsContext();
|
||||
const formSchema = z.object({
|
||||
[parentNamePath]: getSchema({ i18n }),
|
||||
});
|
||||
const formRule = createSchemaFieldRule(formSchema);
|
||||
const initialValues = getInitialValues();
|
||||
|
||||
return (
|
||||
<>
|
||||
<Form.Item
|
||||
name={[parentNamePath, "accessKey"]}
|
||||
initialValue={initialValues.accessKey}
|
||||
label={t("access.form.dogecloud_access_key.label")}
|
||||
rules={[formRule]}
|
||||
tooltip={<span dangerouslySetInnerHTML={{ __html: t("access.form.dogecloud_access_key.tooltip") }}></span>}
|
||||
>
|
||||
<Input autoComplete="new-password" placeholder={t("access.form.dogecloud_access_key.placeholder")} />
|
||||
</Form.Item>
|
||||
|
||||
<Form.Item
|
||||
name={[parentNamePath, "secretKey"]}
|
||||
initialValue={initialValues.secretKey}
|
||||
label={t("access.form.dogecloud_secret_key.label")}
|
||||
rules={[formRule]}
|
||||
tooltip={<span dangerouslySetInnerHTML={{ __html: t("access.form.dogecloud_secret_key.tooltip") }}></span>}
|
||||
>
|
||||
<Input.Password autoComplete="new-password" placeholder={t("access.form.dogecloud_secret_key.placeholder")} />
|
||||
</Form.Item>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
const getInitialValues = (): Nullish<z.infer<ReturnType<typeof getSchema>>> => {
|
||||
return {
|
||||
accessKey: "",
|
||||
secretKey: "",
|
||||
};
|
||||
};
|
||||
|
||||
const getSchema = ({ i18n = getI18n() }: { i18n: ReturnType<typeof getI18n> }) => {
|
||||
const { t: _ } = i18n;
|
||||
|
||||
return z.object({
|
||||
accessKey: z.string().nonempty(),
|
||||
secretKey: z.string().nonempty(),
|
||||
});
|
||||
};
|
||||
|
||||
const _default = Object.assign(AccessConfigFormFieldsProviderDogeCloud, {
|
||||
getInitialValues,
|
||||
getSchema,
|
||||
});
|
||||
|
||||
export default _default;
|
||||
@@ -1,53 +0,0 @@
|
||||
import { getI18n, useTranslation } from "react-i18next";
|
||||
import { Form } from "antd";
|
||||
import { createSchemaFieldRule } from "antd-zod";
|
||||
import { z } from "zod";
|
||||
|
||||
import FileTextInput from "@/components/FileTextInput";
|
||||
|
||||
import { useFormNestedFieldsContext } from "./_context";
|
||||
|
||||
const AccessConfigFormFieldsProviderKubernetes = () => {
|
||||
const { i18n, t } = useTranslation();
|
||||
|
||||
const { parentNamePath } = useFormNestedFieldsContext();
|
||||
const formSchema = z.object({
|
||||
[parentNamePath]: getSchema({ i18n }),
|
||||
});
|
||||
const formRule = createSchemaFieldRule(formSchema);
|
||||
const initialValues = getInitialValues();
|
||||
|
||||
return (
|
||||
<>
|
||||
<Form.Item
|
||||
name={[parentNamePath, "kubeConfig"]}
|
||||
initialValue={initialValues.kubeConfig}
|
||||
label={t("access.form.k8s_kubeconfig.label")}
|
||||
extra={t("access.form.k8s_kubeconfig.help")}
|
||||
rules={[formRule]}
|
||||
tooltip={<span dangerouslySetInnerHTML={{ __html: t("access.form.k8s_kubeconfig.tooltip") }}></span>}
|
||||
>
|
||||
<FileTextInput allowClear autoSize={{ minRows: 3, maxRows: 10 }} placeholder={t("access.form.k8s_kubeconfig.placeholder")} />
|
||||
</Form.Item>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
||||
const getInitialValues = (): Nullish<z.infer<ReturnType<typeof getSchema>>> => {
|
||||
return {};
|
||||
};
|
||||
|
||||
const getSchema = ({ i18n = getI18n() }: { i18n: ReturnType<typeof getI18n> }) => {
|
||||
const { t: _ } = i18n;
|
||||
|
||||
return z.object({
|
||||
kubeConfig: z.string().max(20480).nullish(),
|
||||
});
|
||||
};
|
||||
|
||||
const _default = Object.assign(AccessConfigFormFieldsProviderKubernetes, {
|
||||
getInitialValues,
|
||||
getSchema,
|
||||
});
|
||||
|
||||
export default _default;
|
||||
@@ -57,7 +57,6 @@ export const ACCESS_PROVIDERS = Object.freeze({
|
||||
DNSEXIT: "dnsexit",
|
||||
DNSLA: "dnsla",
|
||||
DNSMADEEASY: "dnsmadeeasy",
|
||||
DOGECLOUD: "dogecloud",
|
||||
DOKPLOY: "dokploy",
|
||||
DUCKDNS: "duckdns",
|
||||
DYNADOT: "dynadot",
|
||||
@@ -83,7 +82,6 @@ export const ACCESS_PROVIDERS = Object.freeze({
|
||||
IONOS: "ionos",
|
||||
JDCLOUD: "jdcloud",
|
||||
KONG: "kong",
|
||||
KUBERNETES: "k8s",
|
||||
KSYUN: "ksyun",
|
||||
LARKBOT: "larkbot",
|
||||
LECDN: "lecdn",
|
||||
@@ -169,7 +167,6 @@ export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProv
|
||||
[ACCESS_PROVIDERS.SSH, "provider.ssh", "/imgs/providers/ssh.svg", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.FTP, "provider.ftp", "/imgs/providers/ftp.svg", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.WEBHOOK, "provider.webhook", "/imgs/providers/webhook.svg", [ACCESS_USAGES.HOSTING, ACCESS_USAGES.NOTIFICATION]],
|
||||
[ACCESS_PROVIDERS.KUBERNETES, "provider.kubernetes", "/imgs/providers/kubernetes.svg", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.S3, "provider.s3", "/imgs/providers/s3.svg", [ACCESS_USAGES.HOSTING]],
|
||||
|
||||
[ACCESS_PROVIDERS.ALIYUN, "provider.aliyun", "/imgs/providers/aliyun.svg", [ACCESS_USAGES.DNS, ACCESS_USAGES.HOSTING]],
|
||||
@@ -198,7 +195,6 @@ export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProv
|
||||
[ACCESS_PROVIDERS.CPANEL, "provider.cpanel", "/imgs/providers/cpanel.svg", [ACCESS_USAGES.DNS, ACCESS_USAGES.HOSTING]],
|
||||
|
||||
[ACCESS_PROVIDERS.BAISHAN, "provider.baishan", "/imgs/providers/baishan.png", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.DOGECLOUD, "provider.dogecloud", "/imgs/providers/dogecloud.png", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.KSYUN, "provider.ksyun", "/imgs/providers/ksyun.svg", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.UPYUN, "provider.upyun", "/imgs/providers/upyun.svg", [ACCESS_USAGES.HOSTING]],
|
||||
[ACCESS_PROVIDERS.WANGSU, "provider.wangsu", "/imgs/providers/wangsu.svg", [ACCESS_USAGES.HOSTING]],
|
||||
|
||||
@@ -141,7 +141,6 @@
|
||||
"dnsexit": "DNSExit",
|
||||
"dnsla": "DNS.LA",
|
||||
"dnsmadeeasy": "DNS Made Easy",
|
||||
"dogecloud": "Doge Cloud",
|
||||
"dokploy": "Dokploy",
|
||||
"duckdns": "Duck DNS",
|
||||
"dynadot": "Dynadot",
|
||||
@@ -188,7 +187,6 @@
|
||||
"jdcloud_ssl_upload": "JD Cloud - Upload to SSL Certificate",
|
||||
"jdcloud_waf": "JD Cloud - WAF (Web Application Firewall)",
|
||||
"kong": "Kong",
|
||||
"kubernetes": "Kubernetes",
|
||||
"ksyun": "Kingsoft Cloud",
|
||||
"ksyun_cdn": "Kingsoft Cloud - CDN (Content Delivery Network)",
|
||||
"ksyun_kcm_upload": "Kingsoft Cloud - Upload to KCM (SSL Certificate Manager)",
|
||||
|
||||
@@ -141,7 +141,6 @@
|
||||
"dnsexit": "DNSExit",
|
||||
"dnsla": "帝恩爱斯(DNS.LA)",
|
||||
"dnsmadeeasy": "DNS Made Easy",
|
||||
"dogecloud": "多吉云",
|
||||
"dokploy": "Dokploy",
|
||||
"duckdns": "Duck DNS",
|
||||
"dynadot": "Dynadot",
|
||||
@@ -188,7 +187,6 @@
|
||||
"jdcloud_ssl_upload": "京东云 - 上传到 SSL 数字证书",
|
||||
"jdcloud_waf": "京东云 - Web 应用防火墙 WAF",
|
||||
"kong": "Kong",
|
||||
"kubernetes": "Kubernetes",
|
||||
"ksyun": "金山云",
|
||||
"ksyun_cdn": "金山云 - 内容分发网络 CDN",
|
||||
"ksyun_kcm_upload": "金山云 - 上传到 SSL 证书管理",
|
||||
|
||||
Reference in New Issue
Block a user