koishi-plugin-steam-info-check 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.js +16 -0
- package/dist/locales/zh-CN.d.ts +3 -0
- package/dist/locales/zh-CN.js +3 -0
- package/package.json +1 -1
- package/src/index.ts +16 -0
- package/src/locales/zh-CN.ts +3 -0
- package/src/locales/zh-CN.yml +2 -1
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -18,6 +18,7 @@ exports.Config = koishi_1.Schema.object({
|
|
|
18
18
|
steamBroadcastType: koishi_1.Schema.union(['all', 'part', 'none']).default('part').description('播报类型:all(全部图片列表)、part(仅开始游戏时图片)、none(仅文字)'),
|
|
19
19
|
steamDisableBroadcastOnStartup: koishi_1.Schema.boolean().default(false).description('启动时禁用首次播报(仅预热缓存)'),
|
|
20
20
|
logForwardTarget: koishi_1.Schema.string().description('将所有日志转发到的目标用户 QQ(可选)'),
|
|
21
|
+
adminId: koishi_1.Schema.string().description('插件管理员 QQ(拥有最高权限,空表示无)'),
|
|
21
22
|
fonts: koishi_1.Schema.object({
|
|
22
23
|
regular: koishi_1.Schema.string().default('fonts/MiSans-Regular.ttf'),
|
|
23
24
|
light: koishi_1.Schema.string().default('fonts/MiSans-Light.ttf'),
|
|
@@ -75,6 +76,21 @@ function apply(ctx, config) {
|
|
|
75
76
|
ld.error = wrap(ld.error?.bind(ld) || (() => { }), 'ERROR');
|
|
76
77
|
ld.fatal = wrap(ld.fatal?.bind(ld) || (() => { }), 'FATAL');
|
|
77
78
|
}
|
|
79
|
+
// 管理员权限豁免(可选):在所有会话中提升该 QQ 的权限为最高
|
|
80
|
+
if (config.adminId) {
|
|
81
|
+
ctx.middleware(async (session, next) => {
|
|
82
|
+
try {
|
|
83
|
+
if (session && session.userId && String(session.userId) === String(config.adminId)) {
|
|
84
|
+
;
|
|
85
|
+
session.authority = Number.MAX_SAFE_INTEGER;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// ignore
|
|
90
|
+
}
|
|
91
|
+
return next();
|
|
92
|
+
});
|
|
93
|
+
}
|
|
78
94
|
// Database
|
|
79
95
|
ctx.model.extend('steam_bind', {
|
|
80
96
|
id: 'unsigned',
|
package/dist/locales/zh-CN.d.ts
CHANGED
package/dist/locales/zh-CN.js
CHANGED
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -13,6 +13,7 @@ export interface Config {
|
|
|
13
13
|
steamRequestInterval: number
|
|
14
14
|
steamBroadcastType: 'all' | 'part' | 'none'
|
|
15
15
|
steamDisableBroadcastOnStartup: boolean
|
|
16
|
+
adminId?: string
|
|
16
17
|
logForwardTarget?: string
|
|
17
18
|
fonts: {
|
|
18
19
|
regular: string
|
|
@@ -38,6 +39,7 @@ export const Config: Schema<Config> = Schema.object({
|
|
|
38
39
|
steamBroadcastType: Schema.union(['all', 'part', 'none']).default('part').description('播报类型:all(全部图片列表)、part(仅开始游戏时图片)、none(仅文字)'),
|
|
39
40
|
steamDisableBroadcastOnStartup: Schema.boolean().default(false).description('启动时禁用首次播报(仅预热缓存)'),
|
|
40
41
|
logForwardTarget: Schema.string().description('将所有日志转发到的目标用户 QQ(可选)'),
|
|
42
|
+
adminId: Schema.string().description('插件管理员 QQ(拥有最高权限,空表示无)'),
|
|
41
43
|
fonts: Schema.object({
|
|
42
44
|
regular: Schema.string().default('fonts/MiSans-Regular.ttf'),
|
|
43
45
|
light: Schema.string().default('fonts/MiSans-Light.ttf'),
|
|
@@ -101,6 +103,20 @@ export function apply(ctx: Context, config: Config) {
|
|
|
101
103
|
;(ld as any).fatal = wrap((ld as any).fatal?.bind(ld) || (() => {}), 'FATAL')
|
|
102
104
|
}
|
|
103
105
|
|
|
106
|
+
// 管理员权限豁免(可选):在所有会话中提升该 QQ 的权限为最高
|
|
107
|
+
if (config.adminId) {
|
|
108
|
+
ctx.middleware(async (session, next) => {
|
|
109
|
+
try {
|
|
110
|
+
if (session && session.userId && String(session.userId) === String(config.adminId)) {
|
|
111
|
+
;(session as any).authority = Number.MAX_SAFE_INTEGER
|
|
112
|
+
}
|
|
113
|
+
} catch {
|
|
114
|
+
// ignore
|
|
115
|
+
}
|
|
116
|
+
return next()
|
|
117
|
+
})
|
|
118
|
+
}
|
|
119
|
+
|
|
104
120
|
// Database
|
|
105
121
|
ctx.model.extend('steam_bind', {
|
|
106
122
|
id: 'unsigned',
|
package/src/locales/zh-CN.ts
CHANGED
package/src/locales/zh-CN.yml
CHANGED