chore: 整理代码并修复部分交互细节

1. 移除configuration.ts中多余的空行
2. 调整dns-persist列表列宽至220px
3. 为icon-select新增selected-change事件并传递选中项信息
4. 优化apply-template的infoRequest逻辑,处理空id情况
5. 调整设置弹窗宽度至600px,更新绑定按钮文案
6. 为sslProvider新增mergeScript,切换时清空acme账号配置
7. 更新helper文案修正ZeroSSL翻墙说明
This commit is contained in:
xiaojunnuo
2026-06-04 00:41:51 +08:00
parent 2cbacb4338
commit 205a7d134e
6 changed files with 27 additions and 9 deletions
@@ -15,8 +15,13 @@ const props = defineProps<{
value: any;
}>();
const emit = defineEmits(["update:value"]);
const emit = defineEmits(["update:value", "selected-change"]);
function onChange(value: any) {
const item = props.options.find(item => item.value === value);
emit("update:value", value);
emit("selected-change", {
value,
...item,
});
}
</script>
@@ -322,7 +322,7 @@ export const useSettingStore = defineStore({
}
const modalRef: any = Modal.warning({
title: title,
width: 500,
width: 600,
keyboard: false,
closable,
content: () => {
@@ -334,7 +334,7 @@ export const useSettingStore = defineStore({
<a-tag color="green">{bindUrl || "未占用"}</a-tag>
</span>
<a-button type="primary" onClick={() => doBindRequest("url")}>
1
URL到地址1
</a-button>
</div>
<div class="helper">1URL显示</div>
@@ -344,7 +344,7 @@ export const useSettingStore = defineStore({
<a-tag color="green">{bindUrl2 || "未占用"}</a-tag>
</span>
<a-button type="primary" onClick={() => doBindRequest("url2")}>
2
URL到地址2
</a-button>
</div>
</div>
@@ -30,7 +30,10 @@ export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOpti
return await api.DelObj(row.id);
};
const infoRequest = async ({ row }: DelReq) => {
return await api.GetObj(row.id);
if (row?.id) {
return await api.GetObj(row.id);
}
return row;
};
async function setDefault(row: any) {
@@ -180,7 +180,7 @@ export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOpti
},
},
column: {
width: 180,
width: 220,
},
},
caType: {
@@ -134,6 +134,5 @@ export class MainConfiguration {
});
logger.info("当前环境:", this.app.getEnv()); // prod
}
}
@@ -160,9 +160,10 @@ export class CertApplyPlugin extends CertApplyBasePlugin {
onSelectedChange: ctx.compute(({form})=>{
return ($event)=>{
form.dnsProviderAccessType = $event.accessType
form.dnsProviderAccess = null
}
})
}
},
}
`,
required: true,
@@ -257,7 +258,17 @@ export class CertApplyPlugin extends CertApplyBasePlugin {
{ value: "letsencrypt_staging", label: "Let's Encrypt测试环境(仅供测试)", icon: "simple-icons:letsencrypt" },
],
},
helper: "Let's Encrypt:申请最简单\nGoogle:大厂光环,兼容性好,仅首次需要翻墙获取EAB授权\nZeroSSL:需要EAB授权,无需翻墙\nSSL.com:仅主域名和www免费,必须设置CAA记录",
mergeScript: `return {
component:{
onSelectedChange: ctx.compute(({form})=>{
return ($event)=>{
form.acmeAccountAccessId = null
}
})
}
}
`,
helper: "Let's Encrypt:申请最简单\nGoogle:大厂光环,兼容性好,仅首次需要翻墙获取EAB授权,无需翻墙\nSSL.com:仅主域名和www免费,必须设置CAA记录",
required: true,
})
sslProvider!: SSLProvider;