karin-plugin-qgroup-file2openlist 0.0.20 → 0.0.22
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/README.md +2 -2
- package/lib/apps/groupFiles.js +5 -1
- package/lib/apps/groupSyncConfig.js +19 -1
- package/lib/apps/groupSyncScheduler.js +1 -1
- package/lib/apps/help.js +3 -2
- package/lib/chunk-AWSGUQPA.js +2282 -0
- package/lib/web.config.js +124 -196
- package/package.json +2 -3
- package/resources/template/help.html +158 -99
- package/lib/chunk-NKBW6TNF.js +0 -1129
package/README.md
CHANGED
|
@@ -55,7 +55,7 @@ TypeScript 插件开发流程现在更加简单,无需手动克隆模板仓库
|
|
|
55
55
|
|
|
56
56
|
群聊命令(简化):
|
|
57
57
|
|
|
58
|
-
-
|
|
58
|
+
- 默认不响应(所有指令请私聊触发,避免群内刷屏)
|
|
59
59
|
|
|
60
60
|
群同步配置命令(主人权限):
|
|
61
61
|
|
|
@@ -66,4 +66,4 @@ TypeScript 插件开发流程现在更加简单,无需手动克隆模板仓库
|
|
|
66
66
|
- `#群同步配置 <群号> 计划 <cron>`:设置定时同步(例:`0 0 3 * * *`)
|
|
67
67
|
- `#群同步配置 <群号> 时段 00:00-06:00,23:00-23:59`:限制定时同步时间段(空=不限制)
|
|
68
68
|
|
|
69
|
-
## 🚀 快速开始
|
|
69
|
+
## 🚀 快速开始
|
package/lib/apps/groupFiles.js
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
|
+
backupOpenListToOpenList,
|
|
2
3
|
exportGroupFiles,
|
|
4
|
+
groupFileUploadedAutoBackup,
|
|
3
5
|
syncGroupFilesToOpenList,
|
|
4
6
|
syncGroupFilesToOpenListCore
|
|
5
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-AWSGUQPA.js";
|
|
6
8
|
import "../chunk-5WVKHIPK.js";
|
|
7
9
|
import "../chunk-IZS467MR.js";
|
|
8
10
|
export {
|
|
11
|
+
backupOpenListToOpenList,
|
|
9
12
|
exportGroupFiles,
|
|
13
|
+
groupFileUploadedAutoBackup,
|
|
10
14
|
syncGroupFilesToOpenList,
|
|
11
15
|
syncGroupFilesToOpenListCore
|
|
12
16
|
};
|
|
@@ -58,7 +58,8 @@ var formatTargetLine = (t) => {
|
|
|
58
58
|
const enabled = t.enabled ?? true ? "\u542F\u7528" : "\u505C\u7528";
|
|
59
59
|
const cron = t.schedule?.enabled ? t.schedule?.cron || "(\u672A\u586Bcron)" : "\u5173\u95ED";
|
|
60
60
|
const targetDir = t.targetDir ? t.targetDir : "(\u9ED8\u8BA4)";
|
|
61
|
-
|
|
61
|
+
const uploadBackup = t.uploadBackup ?? false ? "on" : "off";
|
|
62
|
+
return `- ${t.groupId} | ${enabled} | ${mode} | uploadBackup:${uploadBackup} | \u8BA1\u5212:${cron} | \u76EE\u5F55:${targetDir}`;
|
|
62
63
|
};
|
|
63
64
|
var upsertTarget = (cfg, groupId, patch) => {
|
|
64
65
|
const list = getTargets(cfg);
|
|
@@ -114,6 +115,7 @@ var cfgHelp = [
|
|
|
114
115
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> \u6A21\u5F0F \u5168\u91CF|\u589E\u91CF",
|
|
115
116
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> \u76EE\u5F55 /\u6302\u8F7D/QQ\u7FA4\u6587\u4EF6/123456",
|
|
116
117
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> \u5E73\u94FA \u5F00|\u5173",
|
|
118
|
+
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> uploadBackup on|off\uFF08\u76D1\u542C\u7FA4\u6587\u4EF6\u4E0A\u4F20\u81EA\u52A8\u5907\u4EFD\uFF09",
|
|
117
119
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> \u5E76\u53D1 <n>\uFF08\u4E0B\u8F7D/\u4E0A\u4F20\u5E76\u53D1\uFF09",
|
|
118
120
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> url\u5E76\u53D1 <n>\uFF08\u89E3\u6790URL\u5E76\u53D1\uFF09",
|
|
119
121
|
"- #\u7FA4\u540C\u6B65\u914D\u7F6E <\u7FA4\u53F7> \u8D85\u65F6 <sec>\uFF08\u5355\u6587\u4EF6\u8D85\u65F6\uFF09",
|
|
@@ -174,6 +176,9 @@ var groupSyncConfig = karin.command(/^#?(群同步配置|同步群配置|群文
|
|
|
174
176
|
["to", "dir"],
|
|
175
177
|
["\u5E73\u94FA", "flat"],
|
|
176
178
|
["flat", "flat"],
|
|
179
|
+
["\u4E0A\u4F20\u5907\u4EFD", "uploadBackup"],
|
|
180
|
+
["uploadBackup", "uploadBackup"],
|
|
181
|
+
["uploadbackup", "uploadBackup"],
|
|
177
182
|
["\u5E76\u53D1", "concurrency"],
|
|
178
183
|
["\u7EBF\u7A0B", "concurrency"],
|
|
179
184
|
["concurrency", "concurrency"],
|
|
@@ -312,6 +317,19 @@ ${cfgHelp}`);
|
|
|
312
317
|
await e.reply(`\u7FA4 ${groupId} \u5E73\u94FA\u4E0A\u4F20\u5DF2\u8BBE\u7F6E\u4E3A\uFF1A${bool ? "\u5F00" : "\u5173"}`);
|
|
313
318
|
return true;
|
|
314
319
|
}
|
|
320
|
+
if (action === "uploadBackup") {
|
|
321
|
+
const bool = parseBoolean(rest[0]);
|
|
322
|
+
if (typeof bool === "undefined") {
|
|
323
|
+
await e.reply("uploadBackup \u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u4F7F\u7528\uFF1Aon/off \u6216 \u5F00/\u5173 \u6216 true/false");
|
|
324
|
+
return true;
|
|
325
|
+
}
|
|
326
|
+
updateConfigFile((next) => {
|
|
327
|
+
next.groupSyncTargets = upsertTarget(next, groupId, { uploadBackup: bool });
|
|
328
|
+
return next;
|
|
329
|
+
});
|
|
330
|
+
await e.reply(`\u7FA4 ${groupId} uploadBackup \u5DF2\u8BBE\u7F6E\u4E3A\uFF1A${bool ? "on" : "off"}`);
|
|
331
|
+
return true;
|
|
332
|
+
}
|
|
315
333
|
if (action === "concurrency" || action === "urlConcurrency") {
|
|
316
334
|
const value = parseIntSafe(rest[0]);
|
|
317
335
|
if (!value || value <= 0) {
|
package/lib/apps/help.js
CHANGED
|
@@ -38,8 +38,9 @@ var helpImage = karin.command(/^#?(群文件帮助|同步群文件帮助|openlis
|
|
|
38
38
|
generatedAt: formatDateTime(/* @__PURE__ */ new Date())
|
|
39
39
|
},
|
|
40
40
|
setViewport: {
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
/** 竖版输出 1080x1920(通过 2x DPR 达到更清晰的字体/边缘) */
|
|
42
|
+
width: 540,
|
|
43
|
+
height: 960,
|
|
43
44
|
deviceScaleFactor: 2
|
|
44
45
|
},
|
|
45
46
|
pageGotoParams: {
|