mirror of
https://github.com/usual2970/certimate.git
synced 2025-06-08 13:39:53 +00:00
refactor: drop access field usage
This commit is contained in:
parent
fe93334f86
commit
d21c027db8
@ -12,7 +12,6 @@ type Access struct {
|
|||||||
Name string `json:"name" db:"name"`
|
Name string `json:"name" db:"name"`
|
||||||
Provider string `json:"provider" db:"provider"`
|
Provider string `json:"provider" db:"provider"`
|
||||||
Config string `json:"config" db:"config"`
|
Config string `json:"config" db:"config"`
|
||||||
Usage string `json:"usage" db:"usage"`
|
|
||||||
DeletedAt *time.Time `json:"deleted" db:"deleted"`
|
DeletedAt *time.Time `json:"deleted" db:"deleted"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,7 +48,6 @@ func (r *AccessRepository) castRecordToModel(record *core.Record) (*domain.Acces
|
|||||||
Name: record.GetString("name"),
|
Name: record.GetString("name"),
|
||||||
Provider: record.GetString("provider"),
|
Provider: record.GetString("provider"),
|
||||||
Config: record.GetString("config"),
|
Config: record.GetString("config"),
|
||||||
Usage: record.GetString("usage"),
|
|
||||||
}
|
}
|
||||||
return access, nil
|
return access, nil
|
||||||
}
|
}
|
||||||
|
@ -29,22 +29,16 @@ const AccessProviderSelect = (props: AccessProviderSelectProps) => {
|
|||||||
</Typography.Text>
|
</Typography.Text>
|
||||||
</Space>
|
</Space>
|
||||||
<div>
|
<div>
|
||||||
{provider?.usage === ACCESS_USAGES.APPLY && (
|
{provider?.usages?.includes(ACCESS_USAGES.APPLY) && (
|
||||||
<>
|
<>
|
||||||
<Tag color="orange">{t("access.props.provider.usage.dns")}</Tag>
|
<Tag color="orange">{t("access.props.provider.usage.dns")}</Tag>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
{provider?.usage === ACCESS_USAGES.DEPLOY && (
|
{provider?.usages?.includes(ACCESS_USAGES.DEPLOY) && (
|
||||||
<>
|
<>
|
||||||
<Tag color="blue">{t("access.props.provider.usage.host")}</Tag>
|
<Tag color="blue">{t("access.props.provider.usage.host")}</Tag>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
{provider?.usage === ACCESS_USAGES.ALL && (
|
|
||||||
<>
|
|
||||||
<Tag color="orange">{t("access.props.provider.usage.dns")}</Tag>
|
|
||||||
<Tag color="blue">{t("access.props.provider.usage.host")}</Tag>
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
@ -279,7 +279,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
}
|
}
|
||||||
afterSubmit={(record) => {
|
afterSubmit={(record) => {
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
if (ACCESS_USAGES.ALL === provider?.usage || ACCESS_USAGES.APPLY === provider?.usage) {
|
if (provider?.usages?.includes(ACCESS_USAGES.APPLY)) {
|
||||||
formInst.setFieldValue("providerAccessId", record.id);
|
formInst.setFieldValue("providerAccessId", record.id);
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
@ -292,7 +292,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
placeholder={t("workflow_node.apply.form.provider_access.placeholder")}
|
placeholder={t("workflow_node.apply.form.provider_access.placeholder")}
|
||||||
filter={(record) => {
|
filter={(record) => {
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
return ACCESS_USAGES.ALL === provider?.usage || ACCESS_USAGES.APPLY === provider?.usage;
|
return !!provider?.usages?.includes(ACCESS_USAGES.APPLY);
|
||||||
}}
|
}}
|
||||||
onChange={handleProviderAccessSelect}
|
onChange={handleProviderAccessSelect}
|
||||||
/>
|
/>
|
||||||
|
@ -301,7 +301,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
}
|
}
|
||||||
afterSubmit={(record) => {
|
afterSubmit={(record) => {
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
if (ACCESS_USAGES.ALL === provider?.usage || ACCESS_USAGES.DEPLOY === provider?.usage) {
|
if (provider?.usages?.includes(ACCESS_USAGES.DEPLOY)) {
|
||||||
formInst.setFieldValue("providerAccessId", record.id);
|
formInst.setFieldValue("providerAccessId", record.id);
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
@ -318,7 +318,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
}
|
}
|
||||||
|
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
return ACCESS_USAGES.ALL === provider?.usage || ACCESS_USAGES.APPLY === provider?.usage;
|
return !!provider?.usages?.includes(ACCESS_USAGES.DEPLOY);
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
@ -37,7 +37,6 @@ export const ACCESS_PROVIDERS = Object.freeze({
|
|||||||
export type AccessProviderType = (typeof ACCESS_PROVIDERS)[keyof typeof ACCESS_PROVIDERS];
|
export type AccessProviderType = (typeof ACCESS_PROVIDERS)[keyof typeof ACCESS_PROVIDERS];
|
||||||
|
|
||||||
export const ACCESS_USAGES = Object.freeze({
|
export const ACCESS_USAGES = Object.freeze({
|
||||||
ALL: "all",
|
|
||||||
APPLY: "apply",
|
APPLY: "apply",
|
||||||
DEPLOY: "deploy",
|
DEPLOY: "deploy",
|
||||||
} as const);
|
} as const);
|
||||||
@ -48,7 +47,7 @@ export type AccessProvider = {
|
|||||||
type: AccessProviderType;
|
type: AccessProviderType;
|
||||||
name: string;
|
name: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
usage: AccessUsageType;
|
usages: AccessUsageType[];
|
||||||
};
|
};
|
||||||
|
|
||||||
export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProvider> = new Map(
|
export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProvider> = new Map(
|
||||||
@ -57,41 +56,41 @@ export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProv
|
|||||||
NOTICE: The following order determines the order displayed at the frontend.
|
NOTICE: The following order determines the order displayed at the frontend.
|
||||||
*/
|
*/
|
||||||
[
|
[
|
||||||
[ACCESS_PROVIDERS.LOCAL, "provider.local", "/imgs/providers/local.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.LOCAL, "provider.local", "/imgs/providers/local.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.SSH, "provider.ssh", "/imgs/providers/ssh.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.SSH, "provider.ssh", "/imgs/providers/ssh.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.WEBHOOK, "provider.webhook", "/imgs/providers/webhook.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.WEBHOOK, "provider.webhook", "/imgs/providers/webhook.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.KUBERNETES, "provider.kubernetes", "/imgs/providers/kubernetes.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.KUBERNETES, "provider.kubernetes", "/imgs/providers/kubernetes.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.ALIYUN, "provider.aliyun", "/imgs/providers/aliyun.svg", ACCESS_USAGES.ALL],
|
[ACCESS_PROVIDERS.ALIYUN, "provider.aliyun", "/imgs/providers/aliyun.svg", [ACCESS_USAGES.APPLY, ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.TENCENTCLOUD, "provider.tencentcloud", "/imgs/providers/tencentcloud.svg", ACCESS_USAGES.ALL],
|
[ACCESS_PROVIDERS.TENCENTCLOUD, "provider.tencentcloud", "/imgs/providers/tencentcloud.svg", [ACCESS_USAGES.APPLY, ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.HUAWEICLOUD, "provider.huaweicloud", "/imgs/providers/huaweicloud.svg", ACCESS_USAGES.ALL],
|
[ACCESS_PROVIDERS.HUAWEICLOUD, "provider.huaweicloud", "/imgs/providers/huaweicloud.svg", [ACCESS_USAGES.APPLY, ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.VOLCENGINE, "provider.volcengine", "/imgs/providers/volcengine.svg", ACCESS_USAGES.ALL],
|
[ACCESS_PROVIDERS.VOLCENGINE, "provider.volcengine", "/imgs/providers/volcengine.svg", [ACCESS_USAGES.APPLY, ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.AWS, "provider.aws", "/imgs/providers/aws.svg", ACCESS_USAGES.ALL],
|
[ACCESS_PROVIDERS.AWS, "provider.aws", "/imgs/providers/aws.svg", [ACCESS_USAGES.APPLY, ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.BAIDUCLOUD, "provider.baiducloud", "/imgs/providers/baiducloud.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.BAIDUCLOUD, "provider.baiducloud", "/imgs/providers/baiducloud.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.QINIU, "provider.qiniu", "/imgs/providers/qiniu.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.QINIU, "provider.qiniu", "/imgs/providers/qiniu.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.DOGECLOUD, "provider.dogecloud", "/imgs/providers/dogecloud.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.DOGECLOUD, "provider.dogecloud", "/imgs/providers/dogecloud.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.BYTEPLUS, "provider.byteplus", "/imgs/providers/byteplus.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.BYTEPLUS, "provider.byteplus", "/imgs/providers/byteplus.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.UCLOUD, "provider.ucloud", "/imgs/providers/ucloud.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.UCLOUD, "provider.ucloud", "/imgs/providers/ucloud.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.BAOTAPANEL, "provider.baotapanel", "/imgs/providers/baotapanel.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.BAOTAPANEL, "provider.baotapanel", "/imgs/providers/baotapanel.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.EDGIO, "provider.edgio", "/imgs/providers/edgio.svg", ACCESS_USAGES.DEPLOY],
|
[ACCESS_PROVIDERS.EDGIO, "provider.edgio", "/imgs/providers/edgio.svg", [ACCESS_USAGES.DEPLOY]],
|
||||||
[ACCESS_PROVIDERS.AZURE, "provider.azure", "/imgs/providers/azure.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.AZURE, "provider.azure", "/imgs/providers/azure.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.CLOUDFLARE, "provider.cloudflare", "/imgs/providers/cloudflare.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.CLOUDFLARE, "provider.cloudflare", "/imgs/providers/cloudflare.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.CLOUDNS, "provider.cloudns", "/imgs/providers/cloudns.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.CLOUDNS, "provider.cloudns", "/imgs/providers/cloudns.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.GNAME, "provider.gname", "/imgs/providers/gname.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.GNAME, "provider.gname", "/imgs/providers/gname.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.GODADDY, "provider.godaddy", "/imgs/providers/godaddy.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.GODADDY, "provider.godaddy", "/imgs/providers/godaddy.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.NAMEDOTCOM, "provider.namedotcom", "/imgs/providers/namedotcom.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.NAMEDOTCOM, "provider.namedotcom", "/imgs/providers/namedotcom.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.NAMESILO, "provider.namesilo", "/imgs/providers/namesilo.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.NAMESILO, "provider.namesilo", "/imgs/providers/namesilo.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.NS1, "provider.ns1", "/imgs/providers/ns1.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.NS1, "provider.ns1", "/imgs/providers/ns1.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.RAINYUN, "provider.rainyun", "/imgs/providers/rainyun.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.RAINYUN, "provider.rainyun", "/imgs/providers/rainyun.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.WESTCN, "provider.westcn", "/imgs/providers/westcn.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.WESTCN, "provider.westcn", "/imgs/providers/westcn.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.POWERDNS, "provider.powerdns", "/imgs/providers/powerdns.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.POWERDNS, "provider.powerdns", "/imgs/providers/powerdns.svg", [ACCESS_USAGES.APPLY]],
|
||||||
[ACCESS_PROVIDERS.ACMEHTTPREQ, "provider.acmehttpreq", "/imgs/providers/acmehttpreq.svg", ACCESS_USAGES.APPLY],
|
[ACCESS_PROVIDERS.ACMEHTTPREQ, "provider.acmehttpreq", "/imgs/providers/acmehttpreq.svg", [ACCESS_USAGES.APPLY]],
|
||||||
].map(([type, name, icon, usage]) => [
|
].map((e) => [
|
||||||
type,
|
e[0] as string,
|
||||||
{
|
{
|
||||||
type: type as AccessProviderType,
|
type: e[0] as AccessProviderType,
|
||||||
name: name,
|
name: e[1] as string,
|
||||||
icon: icon,
|
icon: e[2] as string,
|
||||||
usage: usage as AccessUsageType,
|
usages: e[3] as AccessUsageType[],
|
||||||
},
|
},
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user