From 35c16ff8f7590b6612d9f8b8be215e9a739a4241 Mon Sep 17 00:00:00 2001 From: Shigma Date: Tue, 9 Jan 2024 15:34:01 +0800 Subject: [PATCH] feat(core): support image as arg type --- packages/core/src/command/parser.ts | 11 +++++++++++ packages/core/src/locales/en-US.yml | 1 + packages/core/src/locales/zh-CN.yml | 1 + 3 files changed, 13 insertions(+) diff --git a/packages/core/src/command/parser.ts b/packages/core/src/command/parser.ts index 8e5703afe9..9216986f84 100644 --- a/packages/core/src/command/parser.ts +++ b/packages/core/src/command/parser.ts @@ -183,6 +183,9 @@ export namespace Argv { posint: number natural: number date: Date + image: { + src?: string + } } type DomainType = keyof Domain @@ -319,6 +322,14 @@ export namespace Argv { throw new Error('internal.invalid-channel') }) + createDomain('image', (source, session) => { + const code = h.from(source) + if (code && code.type === 'img') { + return code.attrs + } + throw new Error('internal.invalid-image') + }) + const BRACKET_REGEXP = /<[^>]+>|\[[^\]]+\]/g interface DeclarationList extends Array { diff --git a/packages/core/src/locales/en-US.yml b/packages/core/src/locales/en-US.yml index ab0ffbec1a..7427a18775 100644 --- a/packages/core/src/locales/en-US.yml +++ b/packages/core/src/locales/en-US.yml @@ -28,6 +28,7 @@ internal: invalid-date: Expect a valid date. invalid-user: Expect a valid user. invalid-channel: Expect a valid channel. + invalid-image: Expect an image. suggest-hint: Do you mean {0}? suggest-command: Send a period to apply the suggestion. commands: diff --git a/packages/core/src/locales/zh-CN.yml b/packages/core/src/locales/zh-CN.yml index 06e928fca8..97d73efc09 100644 --- a/packages/core/src/locales/zh-CN.yml +++ b/packages/core/src/locales/zh-CN.yml @@ -29,6 +29,7 @@ internal: invalid-date: 请输入合法的时间。 invalid-user: 请指定正确的用户。 invalid-channel: 请指定正确的频道。 + invalid-image: 请输入图片。 suggest-hint: 您要找的是不是{0}? suggest-command: 回复句号以使用推测的指令。