@xmanrui/dsh-im 4.34.0 → 4.34.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/lib/client.js CHANGED
@@ -595,7 +595,7 @@ var React38 = __toESM(require("react"), 1);
595
595
  // package.json
596
596
  var package_default = {
597
597
  name: "@xmanrui/dsh-im",
598
- version: "4.34.0",
598
+ version: "4.34.1",
599
599
  icon: "./assets/logo-plugin-message-link-gradient.webp",
600
600
  description: "\u628A\u5FAE\u4FE1\u3001\u98DE\u4E66\u3001\u4F01\u5FAE\u3001\u9489\u9489\u3001QQ\u3001Telegram\u3001WhatsApp\u3001Slack\u3001Discord\u3001Matrix\u63A5\u5165DSH\u3002 Connect Telegram, WhatsApp, Slack, Discord, Matrix, WeChat, Feishu, WeCom, DingTalk, and QQ to DSH.",
601
601
  keywords: [
@@ -1213,6 +1213,11 @@ var EN = Object.freeze({
1213
1213
  "\u5C1A\u672A\u6DFB\u52A0\u7528\u6237": "No users added",
1214
1214
  "\u5F53\u524D\u6E20\u9053\u4E0D\u652F\u6301\u7FA4\u804A": "Group chat is not supported by this channel",
1215
1215
  "\u539F\u6240\u6709\u8005\u6216\u626B\u7801\u63A5\u5165\u8005\u59CB\u7EC8\u53EF\u4EE5\u8BBF\u95EE\u5E76\u6267\u884C\u547D\u4EE4\uFF1B\u4EE5\u4E0B\u8BBE\u7F6E\u4EC5\u7EA6\u675F\u5176\u4ED6\u7528\u6237\u3002": "The original owner or QR-code operator can always access the bot and run commands; the settings below apply only to other users.",
1216
+ "\u5DF2\u7531\u63A5\u5165\u6D41\u7A0B\u786E\u8BA4\u7684\u6240\u6709\u8005\u53EF\u4EE5\u8BBF\u95EE\u5E76\u6267\u884C\u547D\u4EE4\uFF0C\u4E0D\u53D7\u672C\u9875\u9650\u5236\u3002\u672A\u8BC6\u522B\u5230\u6240\u6709\u8005\u8EAB\u4EFD\u65F6\uFF0C\u6309\u672C\u9875\u8BBF\u95EE\u8BBE\u7F6E\u6267\u884C\u3002": "Owners confirmed during connection setup can access the bot and run commands regardless of these settings. When no owner has been identified, these access settings apply.",
1217
+ "\u767D\u540D\u5355\u8BF7\u586B\u5199\u4F7F\u7528\u8005\u7684 Open ID\uFF0C\u4E0D\u662F\u673A\u5668\u4EBA\u7684 Open ID\u3002\u4EC5\u4FDD\u5B58\u901A\u914D\u7B26\u7684\u63A5\u5165\u914D\u7F6E\u4E0D\u5305\u542B\u6240\u6709\u8005\u8EAB\u4EFD\u3002": "Enter the user\u2019s Open ID in the allowlist, not the bot\u2019s Open ID. A connection configured with only a wildcard has no identified owner.",
1218
+ "\u626B\u7801\u83B7\u5F97\u7684\u662F\u79C1\u804A\u8EAB\u4EFD\uFF0C\u7FA4\u804A\u53EA\u6709\u5339\u914D\u5DF2\u786E\u8BA4\u7684\u6240\u6709\u8005\u8EAB\u4EFD\u65F6\u624D\u8C41\u514D\uFF1B\u5176\u4ED6\u6210\u5458\u6309\u7FA4\u804A\u767D\u540D\u5355\u8BBE\u7F6E\u6267\u884C\u3002": "QR setup identifies the owner for direct messages. In groups, only a matching confirmed owner identity is exempt; other members follow the group allowlist settings.",
1219
+ "\u586B\u5199\u4F7F\u7528\u8005\u7684 Open ID\uFF08ou_xxx\uFF09\uFF0C\u4E0D\u662F\u673A\u5668\u4EBA ID": "Enter the user\u2019s Open ID (ou_xxx), not the bot ID",
1220
+ "\u8FD9\u91CC\u9700\u8981\u586B\u5199\u7528\u6237\u7684 Open ID\uFF0C\u4E0D\u80FD\u586B\u5199\u673A\u5668\u4EBA\u81EA\u5DF1\u7684 Open ID\u3002": "Enter a user Open ID here, not the bot\u2019s own Open ID.",
1216
1221
  "\u6B64\u533A\u57DF\u65E0\u9700\u914D\u7F6E\uFF0C\u4FDD\u5B58\u79C1\u804A\u8BBE\u7F6E\u65F6\u4F1A\u4FDD\u7559\u73B0\u6709\u7FA4\u804A\u7B56\u7565\u3002": "No setup is needed here. Saving direct-message settings keeps the existing group policy.",
1217
1222
  "\u8BBF\u95EE\u8BBE\u7F6E\u5DF2\u4FDD\u5B58\u3002": "Access settings saved.",
1218
1223
  "\u8BBF\u95EE\u8BBE\u7F6E\u6682\u4E0D\u53EF\u7528\u3002": "Access settings are currently unavailable.",
@@ -16178,6 +16183,7 @@ var React33 = __toESM(require("react"), 1);
16178
16183
  // plugin-src/client/access-policy-settings.js
16179
16184
  var React28 = __toESM(require("react"), 1);
16180
16185
  var ACCESS_POLICY_ENDPOINT = "bot.access-policy.set";
16186
+ var CONFIRMED_OWNER_CHANNELS = /* @__PURE__ */ new Set(["weixin", "feishu", "qq", "whatsapp", "discord"]);
16181
16187
  var ACCESS_CHANNEL_DEFINITIONS = Object.freeze({
16182
16188
  weixin: Object.freeze({
16183
16189
  directUserLabel: "\u5FAE\u4FE1\u7528\u6237 ID",
@@ -16186,9 +16192,9 @@ var ACCESS_CHANNEL_DEFINITIONS = Object.freeze({
16186
16192
  }),
16187
16193
  feishu: Object.freeze({
16188
16194
  directUserLabel: "\u98DE\u4E66 Open ID",
16189
- directPlaceholder: "ou_xxx",
16195
+ directPlaceholder: "\u586B\u5199\u4F7F\u7528\u8005\u7684 Open ID\uFF08ou_xxx\uFF09\uFF0C\u4E0D\u662F\u673A\u5668\u4EBA ID",
16190
16196
  groupUserLabel: "\u7FA4\u6210\u5458 Open ID",
16191
- groupPlaceholder: "ou_xxx"
16197
+ groupPlaceholder: "\u586B\u5199\u4F7F\u7528\u8005\u7684 Open ID\uFF08ou_xxx\uFF09\uFF0C\u4E0D\u662F\u673A\u5668\u4EBA ID"
16192
16198
  }),
16193
16199
  dingtalk: Object.freeze({
16194
16200
  directUserLabel: "\u9489\u9489\u7528\u6237 ID",
@@ -16287,6 +16293,8 @@ function ScenePolicyEditor({
16287
16293
  placeholder,
16288
16294
  disabled = false,
16289
16295
  unsupported = false,
16296
+ ownerHelp,
16297
+ identityHelp,
16290
16298
  onChange
16291
16299
  }) {
16292
16300
  const ownerHelpId = React28.useId();
@@ -16332,7 +16340,7 @@ function ScenePolicyEditor({
16332
16340
  id: ownerHelpId,
16333
16341
  className: "dim-channelTooltip dim-accessHelpTooltip",
16334
16342
  role: "tooltip"
16335
- }, "\u539F\u6240\u6709\u8005\u6216\u626B\u7801\u63A5\u5165\u8005\u59CB\u7EC8\u53EF\u4EE5\u8BBF\u95EE\u5E76\u6267\u884C\u547D\u4EE4\uFF1B\u4EE5\u4E0B\u8BBE\u7F6E\u4EC5\u7EA6\u675F\u5176\u4ED6\u7528\u6237\u3002")
16343
+ }, ownerHelp, identityHelp ? h2("br") : null, identityHelp)
16336
16344
  )
16337
16345
  )
16338
16346
  ),
@@ -16481,6 +16489,8 @@ function ScenePolicyEditor({
16481
16489
  }
16482
16490
  function AccessPolicySettingsPage({ channel: channel7, account, rpcCall, onSaved }) {
16483
16491
  const definition = ACCESS_CHANNEL_DEFINITIONS[channel7];
16492
+ const ownerHelp = CONFIRMED_OWNER_CHANNELS.has(channel7) ? "\u5DF2\u7531\u63A5\u5165\u6D41\u7A0B\u786E\u8BA4\u7684\u6240\u6709\u8005\u53EF\u4EE5\u8BBF\u95EE\u5E76\u6267\u884C\u547D\u4EE4\uFF0C\u4E0D\u53D7\u672C\u9875\u9650\u5236\u3002\u672A\u8BC6\u522B\u5230\u6240\u6709\u8005\u8EAB\u4EFD\u65F6\uFF0C\u6309\u672C\u9875\u8BBF\u95EE\u8BBE\u7F6E\u6267\u884C\u3002" : "\u539F\u6240\u6709\u8005\u6216\u626B\u7801\u63A5\u5165\u8005\u59CB\u7EC8\u53EF\u4EE5\u8BBF\u95EE\u5E76\u6267\u884C\u547D\u4EE4\uFF1B\u4EE5\u4E0B\u8BBE\u7F6E\u4EC5\u7EA6\u675F\u5176\u4ED6\u7528\u6237\u3002";
16493
+ const identityHelp = channel7 === "feishu" ? "\u767D\u540D\u5355\u8BF7\u586B\u5199\u4F7F\u7528\u8005\u7684 Open ID\uFF0C\u4E0D\u662F\u673A\u5668\u4EBA\u7684 Open ID\u3002\u4EC5\u4FDD\u5B58\u901A\u914D\u7B26\u7684\u63A5\u5165\u914D\u7F6E\u4E0D\u5305\u542B\u6240\u6709\u8005\u8EAB\u4EFD\u3002" : null;
16484
16494
  const initialPolicy = normalizeAccessPolicy(account?.accessPolicy);
16485
16495
  const initialKey = JSON.stringify(initialPolicy);
16486
16496
  const [draft, setDraft] = React28.useState(() => clonePolicy(
@@ -16544,6 +16554,8 @@ function AccessPolicySettingsPage({ channel: channel7, account, rpcCall, onSaved
16544
16554
  policy: draft.direct,
16545
16555
  userLabel: definition.directUserLabel,
16546
16556
  placeholder: definition.directPlaceholder,
16557
+ ownerHelp,
16558
+ identityHelp,
16547
16559
  disabled: saving,
16548
16560
  onChange: (direct) => {
16549
16561
  setDraft((current) => ({ ...current, direct }));
@@ -16556,6 +16568,8 @@ function AccessPolicySettingsPage({ channel: channel7, account, rpcCall, onSaved
16556
16568
  policy: draft.group,
16557
16569
  userLabel: definition.groupUserLabel ?? definition.directUserLabel,
16558
16570
  placeholder: definition.groupPlaceholder ?? definition.directPlaceholder,
16571
+ ownerHelp,
16572
+ identityHelp: channel7 === "qq" ? "\u626B\u7801\u83B7\u5F97\u7684\u662F\u79C1\u804A\u8EAB\u4EFD\uFF0C\u7FA4\u804A\u53EA\u6709\u5339\u914D\u5DF2\u786E\u8BA4\u7684\u6240\u6709\u8005\u8EAB\u4EFD\u65F6\u624D\u8C41\u514D\uFF1B\u5176\u4ED6\u6210\u5458\u6309\u7FA4\u804A\u767D\u540D\u5355\u8BBE\u7F6E\u6267\u884C\u3002" : identityHelp,
16559
16573
  disabled: saving || definition.groupSupported === false,
16560
16574
  unsupported: definition.groupSupported === false,
16561
16575
  onChange: (group) => {