Commit 44aaaa85 authored by nanahira's avatar nanahira

catchup and possibly locale updates

parent d5c913de
......@@ -10,6 +10,7 @@ const app = new App({
port: 14514,
host: 'localhost',
prefix: '.',
locale: 'en',
});
// Console and sandbox
......
......@@ -9,7 +9,7 @@
"version": "8.5.1",
"license": "MIT",
"dependencies": {
"koishi-thirdeye": "^9.1.1",
"koishi-thirdeye": "^9.2.4",
"lodash": "^4.17.21",
"source-map-support": "^0.5.20"
},
......@@ -38,7 +38,7 @@
"ws": "^8.3.0"
},
"peerDependencies": {
"koishi": "^4.4.0"
"koishi": "^4.4.1"
}
},
"node_modules/@ampproject/remapping": {
......@@ -1059,9 +1059,9 @@
}
},
"node_modules/@koishijs/core": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/@koishijs/core/-/core-4.4.0.tgz",
"integrity": "sha512-MmKVlCx89M5icof92+U8U5QnywQ7dIjkGGUnzGlcBr59OrylHdRMKqZIIrtnqZo5EONehqh3k1Zbxr5V/6X5Eg==",
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/@koishijs/core/-/core-4.4.1.tgz",
"integrity": "sha512-nd/QAm9ejk4KQP8BjnyuDCxg4rpyq4fyYtTvFOuafj9G/vN6gHL11YLF5R7g2WimnN1S2sN1txB7WNx8dnGI1A==",
"peer": true,
"dependencies": {
"@koishijs/utils": "^5.2.0",
......@@ -1526,9 +1526,9 @@
"dev": true
},
"node_modules/@types/ws": {
"version": "8.2.2",
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.2.2.tgz",
"integrity": "sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg==",
"version": "8.5.2",
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.2.tgz",
"integrity": "sha512-VXI82ykONr5tacHEojnErTQk+KQSoYbW1NB6iz6wUwrNd+BqfkfggQNoNdCqhJSzbNumShPERbM+Pc5zpfhlbw==",
"peer": true,
"dependencies": {
"@types/node": "*"
......@@ -5189,17 +5189,17 @@
}
},
"node_modules/koishi": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/koishi/-/koishi-4.4.0.tgz",
"integrity": "sha512-ar4V0oBJ2by9gT0Hey3w/japL80ddtF2A48jP+UrPZ17Z3ha505lB79sQyPVyFdM78BY7wRkFw/qMc8eKZG3+g==",
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/koishi/-/koishi-4.4.1.tgz",
"integrity": "sha512-yTJlAwsbF7ecjqRGUX5l2LT8HROusAZj1UjzxEevXGWklRrzABWTifIXDEKd9H+oC5xq4hJQeXRCQCogiPe+SQ==",
"peer": true,
"dependencies": {
"@koa/router": "^10.1.1",
"@koishijs/core": "^4.4.0",
"@koishijs/core": "^4.4.1",
"@koishijs/utils": "^5.2.0",
"@types/koa": "*",
"@types/koa__router": "*",
"@types/ws": "^8.2.2",
"@types/ws": "^8.5.2",
"axios": "^0.24.0",
"file-type": "^16.5.3",
"koa": "^2.13.4",
......@@ -5207,16 +5207,16 @@
"parseurl": "^1.3.3",
"path-to-regexp": "^6.2.0",
"proxy-agent": "^5.0.0",
"ws": "^8.4.2"
"ws": "^8.5.0"
},
"engines": {
"node": ">=12.0.0"
}
},
"node_modules/koishi-decorators": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/koishi-decorators/-/koishi-decorators-1.1.1.tgz",
"integrity": "sha512-AaumjnVTT8N7jJ67w16blSez9z+Pi+duuJusheIq3Hmkvx+iRxkpp3w0IvlU69gHqdQRK3Z4qNNC+KrMPDORUg==",
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/koishi-decorators/-/koishi-decorators-1.2.5.tgz",
"integrity": "sha512-PYVXFNdSCbifr12L0JSiIZGQsax1cENyxzWg0LTRemgTp5iZgj/QPXqgh4p3IWZ8YIPYQ53vSS6lBG2PnhKOWA==",
"dependencies": {
"@types/koa": "^2.13.4",
"@types/koa__router": "^8.0.11",
......@@ -5225,24 +5225,24 @@
"typed-reflector": "^1.0.9"
},
"peerDependencies": {
"koishi": "^4.2.1"
"koishi": "^4.4.1"
}
},
"node_modules/koishi-thirdeye": {
"version": "9.1.1",
"resolved": "https://registry.npmjs.org/koishi-thirdeye/-/koishi-thirdeye-9.1.1.tgz",
"integrity": "sha512-Oy5Y36Jq9ZnJJLRKmbEx0yFP7lqazBXMxjBLdfl5+5Oyx1JdiYWlPLVQ8ggbmLTKmDXZ87s3c5nfxAN/4iBA8A==",
"version": "9.2.4",
"resolved": "https://registry.npmjs.org/koishi-thirdeye/-/koishi-thirdeye-9.2.4.tgz",
"integrity": "sha512-maJkIivNEjDZaTDeOa2GSDxUX4pjie0zzjk7VxPnt/RONS9UHGUJ2A6CkcqYdz4CY6OKoWyhX0wzDnJkk/rUOg==",
"dependencies": {
"@types/koa": "^2.13.4",
"@types/koa__router": "^8.0.11",
"koishi-decorators": "^1.1.1",
"koishi-decorators": "^1.2.5",
"lodash": "^4.17.21",
"reflect-metadata": "^0.1.13",
"schemastery-gen": "^3.1.2",
"typed-reflector": "^1.0.9"
},
"peerDependencies": {
"koishi": "^4.4.0",
"koishi": "^4.4.1",
"schemastery": "^3.1.0"
}
},
......@@ -7572,9 +7572,9 @@
}
},
"node_modules/ws": {
"version": "8.4.2",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.4.2.tgz",
"integrity": "sha512-Kbk4Nxyq7/ZWqr/tarI9yIt/+iNNFOjBXEWgTb4ydaNHBNGgvf2QHbS9fdfsndfjFlFwEd4Al+mw83YkaD10ZA==",
"version": "8.5.0",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz",
"integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==",
"engines": {
"node": ">=10.0.0"
},
......@@ -8481,9 +8481,9 @@
}
},
"@koishijs/core": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/@koishijs/core/-/core-4.4.0.tgz",
"integrity": "sha512-MmKVlCx89M5icof92+U8U5QnywQ7dIjkGGUnzGlcBr59OrylHdRMKqZIIrtnqZo5EONehqh3k1Zbxr5V/6X5Eg==",
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/@koishijs/core/-/core-4.4.1.tgz",
"integrity": "sha512-nd/QAm9ejk4KQP8BjnyuDCxg4rpyq4fyYtTvFOuafj9G/vN6gHL11YLF5R7g2WimnN1S2sN1txB7WNx8dnGI1A==",
"peer": true,
"requires": {
"@koishijs/utils": "^5.2.0",
......@@ -8912,9 +8912,9 @@
"dev": true
},
"@types/ws": {
"version": "8.2.2",
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.2.2.tgz",
"integrity": "sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg==",
"version": "8.5.2",
"resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.2.tgz",
"integrity": "sha512-VXI82ykONr5tacHEojnErTQk+KQSoYbW1NB6iz6wUwrNd+BqfkfggQNoNdCqhJSzbNumShPERbM+Pc5zpfhlbw==",
"peer": true,
"requires": {
"@types/node": "*"
......@@ -11684,17 +11684,17 @@
}
},
"koishi": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/koishi/-/koishi-4.4.0.tgz",
"integrity": "sha512-ar4V0oBJ2by9gT0Hey3w/japL80ddtF2A48jP+UrPZ17Z3ha505lB79sQyPVyFdM78BY7wRkFw/qMc8eKZG3+g==",
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/koishi/-/koishi-4.4.1.tgz",
"integrity": "sha512-yTJlAwsbF7ecjqRGUX5l2LT8HROusAZj1UjzxEevXGWklRrzABWTifIXDEKd9H+oC5xq4hJQeXRCQCogiPe+SQ==",
"peer": true,
"requires": {
"@koa/router": "^10.1.1",
"@koishijs/core": "^4.4.0",
"@koishijs/core": "^4.4.1",
"@koishijs/utils": "^5.2.0",
"@types/koa": "*",
"@types/koa__router": "*",
"@types/ws": "^8.2.2",
"@types/ws": "^8.5.2",
"axios": "^0.24.0",
"file-type": "^16.5.3",
"koa": "^2.13.4",
......@@ -11702,13 +11702,13 @@
"parseurl": "^1.3.3",
"path-to-regexp": "^6.2.0",
"proxy-agent": "^5.0.0",
"ws": "^8.4.2"
"ws": "^8.5.0"
}
},
"koishi-decorators": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/koishi-decorators/-/koishi-decorators-1.1.1.tgz",
"integrity": "sha512-AaumjnVTT8N7jJ67w16blSez9z+Pi+duuJusheIq3Hmkvx+iRxkpp3w0IvlU69gHqdQRK3Z4qNNC+KrMPDORUg==",
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/koishi-decorators/-/koishi-decorators-1.2.5.tgz",
"integrity": "sha512-PYVXFNdSCbifr12L0JSiIZGQsax1cENyxzWg0LTRemgTp5iZgj/QPXqgh4p3IWZ8YIPYQ53vSS6lBG2PnhKOWA==",
"requires": {
"@types/koa": "^2.13.4",
"@types/koa__router": "^8.0.11",
......@@ -11718,13 +11718,13 @@
}
},
"koishi-thirdeye": {
"version": "9.1.1",
"resolved": "https://registry.npmjs.org/koishi-thirdeye/-/koishi-thirdeye-9.1.1.tgz",
"integrity": "sha512-Oy5Y36Jq9ZnJJLRKmbEx0yFP7lqazBXMxjBLdfl5+5Oyx1JdiYWlPLVQ8ggbmLTKmDXZ87s3c5nfxAN/4iBA8A==",
"version": "9.2.4",
"resolved": "https://registry.npmjs.org/koishi-thirdeye/-/koishi-thirdeye-9.2.4.tgz",
"integrity": "sha512-maJkIivNEjDZaTDeOa2GSDxUX4pjie0zzjk7VxPnt/RONS9UHGUJ2A6CkcqYdz4CY6OKoWyhX0wzDnJkk/rUOg==",
"requires": {
"@types/koa": "^2.13.4",
"@types/koa__router": "^8.0.11",
"koishi-decorators": "^1.1.1",
"koishi-decorators": "^1.2.5",
"lodash": "^4.17.21",
"reflect-metadata": "^0.1.13",
"schemastery-gen": "^3.1.2",
......@@ -13419,9 +13419,9 @@
}
},
"ws": {
"version": "8.4.2",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.4.2.tgz",
"integrity": "sha512-Kbk4Nxyq7/ZWqr/tarI9yIt/+iNNFOjBXEWgTb4ydaNHBNGgvf2QHbS9fdfsndfjFlFwEd4Al+mw83YkaD10ZA==",
"version": "8.5.0",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz",
"integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==",
"requires": {}
},
"xml-name-validator": {
......
......@@ -29,7 +29,7 @@
},
"homepage": "https://github.com/koishijs/koishi-plugin-pics",
"dependencies": {
"koishi-thirdeye": "^9.1.1",
"koishi-thirdeye": "^9.2.4",
"lodash": "^4.17.21",
"source-map-support": "^0.5.20"
},
......@@ -58,7 +58,7 @@
"ws": "^8.3.0"
},
"peerDependencies": {
"koishi": "^4.4.0"
"koishi": "^4.4.1"
},
"jest": {
"moduleFileExtensions": [
......
......@@ -7,13 +7,6 @@ export class PicsPluginConfig {
@DefineSchema({ description: '命令名', default: 'pic', hidden: true })
commandName: string;
@DefineSchema({
description: '获取失败的提示信息',
default: '未找到任何图片。',
hidden: true,
})
failedMessage: string;
@DefineSchema({ description: '保留 URL 中的文件名。', default: false })
preseveFilename: boolean;
}
......
......@@ -177,6 +177,44 @@ export default class PicsContainer
async onApply() {
const ctx = this.ctx;
ctx.i18n.define('zh', `commands.${this.config.commandName}`, {
description: '获取随机图片',
options: {
source: `指定图源,逗号分隔。图源可以用 ${this.config.commandName}.sources 查询。`,
tag: '需要查询的图片标签,逗号分隔。',
},
messages: {
'not-found': '未找到任何图片。',
},
});
ctx.i18n.define('en', `commands.${this.config.commandName}`, {
description: 'Get random picture',
options: {
source: `Specify picture source. Sources can be queried by command ${this.config.commandName}.sources`,
tag: 'Tags to search for, separated by comma.',
},
messages: {
'not-found': 'No pictures found.',
},
});
ctx.i18n.define('zh', `commands.${this.config.commandName}.sources`, {
description: '查询图源列表',
options: {
source: '要查询的图源标签,逗号分隔。',
},
messages: {
list: '图源的列表如下:',
},
});
ctx.i18n.define('en', `commands.${this.config.commandName}.sources`, {
description: 'Query picture sources',
options: {
source: 'Tags to search for, separated by comma.',
},
messages: {
list: 'List of sources:',
},
});
ctx
.command(`${this.config.commandName}`, '获取随机图片')
.usage(
......@@ -197,7 +235,7 @@ export default class PicsContainer
const picTags = argv.options.tag ? argv.options.tag.split(',') : [];
const result = await this.randomPic(picTags, sourceTags);
if (!result) {
return this.config.failedMessage;
return argv.session.text('.not-found');
}
const picData: segment.Data = {
url: result.url,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment