/** * 配置交互卡片模板 */ class ConfigCard { static create(configData) { const bucketsText = Object.entries(configData.buckets || {}) .map(([name, bucket]) => { return `**🪣 [${name}]**\n` + `• 存储桶:${bucket.bucket}\n` + `• 区域:${bucket.region}\n` + `• 域名:${bucket.domain}\n` + `• AccessKey: ${bucket.accessKey}`; }) .join('\n\n'); return { "config": { "wide_screen_mode": true }, "header": { "template": "grey", "title": { "content": "⚙️ 七牛云配置", "tag": "plain_text" } }, "elements": [ { "tag": "div", "text": { "content": bucketsText || '暂无配置,请先添加存储桶配置。', "tag": "lark_md" } }, { "tag": "hr" }, { "tag": "div", "text": { "content": "**💡 修改配置**\n\n使用命令:`/config set `\n\n示例:\n`/config set default.domain https://new-cdn.com`", "tag": "lark_md" } }, { "tag": "action", "actions": [ { "tag": "button", "text": { "content": "📤 上传文件", "tag": "plain_text" }, "type": "primary", "value": { "action": "upload_file", "type": "upload" } }, { "tag": "button", "text": { "content": "❓ 帮助", "tag": "plain_text" }, "type": "default", "value": { "action": "help", "type": "help" } } ] } ] }; } static createEditForm(bucketName) { return { "config": { "wide_screen_mode": true }, "header": { "template": "blue", "title": { "content": `✏️ 编辑配置 - ${bucketName}`, "tag": "plain_text" } }, "elements": [ { "tag": "input", "label": { "content": "AccessKey", "tag": "plain_text" }, "placeholder": { "content": "请输入七牛云 AccessKey", "tag": "plain_text" }, "name": "access_key" }, { "tag": "input", "label": { "content": "SecretKey", "tag": "plain_text" }, "placeholder": { "content": "请输入七牛云 SecretKey", "tag": "plain_text" }, "name": "secret_key" }, { "tag": "input", "label": { "content": "存储桶名称", "tag": "plain_text" }, "placeholder": { "content": "例如:my-bucket", "tag": "plain_text" }, "name": "bucket_name" }, { "tag": "input", "label": { "content": "区域", "tag": "plain_text" }, "placeholder": { "content": "z0/z1/z2/na0/as0", "tag": "plain_text" }, "name": "region" }, { "tag": "input", "label": { "content": "CDN 域名", "tag": "plain_text" }, "placeholder": { "content": "https://cdn.example.com", "tag": "plain_text" }, "name": "domain" }, { "tag": "action", "actions": [ { "tag": "button", "text": { "content": "💾 保存", "tag": "plain_text" }, "type": "primary", "value": { "action": "save_config", "bucket": bucketName } }, { "tag": "button", "text": { "content": "❌ 取消", "tag": "plain_text" }, "type": "default", "value": { "action": "cancel" } } ] } ] }; } } module.exports = { ConfigCard };