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 CHANGED
@@ -55,7 +55,7 @@ TypeScript 插件开发流程现在更加简单,无需手动克隆模板仓库
55
55
 
56
56
  群聊命令(简化):
57
57
 
58
- - `#同步群文件`:默认同步本群(建议先在 WebUI 配置 `groupSyncTargets`)
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
+ ## 🚀 快速开始
@@ -1,12 +1,16 @@
1
1
  import {
2
+ backupOpenListToOpenList,
2
3
  exportGroupFiles,
4
+ groupFileUploadedAutoBackup,
3
5
  syncGroupFilesToOpenList,
4
6
  syncGroupFilesToOpenListCore
5
- } from "../chunk-NKBW6TNF.js";
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
- return `- ${t.groupId} | ${enabled} | ${mode} | \u8BA1\u5212:${cron} | \u76EE\u5F55:${targetDir}`;
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) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  syncGroupFilesToOpenListCore
3
- } from "../chunk-NKBW6TNF.js";
3
+ } from "../chunk-AWSGUQPA.js";
4
4
  import {
5
5
  config
6
6
  } from "../chunk-5WVKHIPK.js";
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
- width: 900,
42
- height: 720,
41
+ /** 竖版输出 1080x1920(通过 2x DPR 达到更清晰的字体/边缘) */
42
+ width: 540,
43
+ height: 960,
43
44
  deviceScaleFactor: 2
44
45
  },
45
46
  pageGotoParams: {