@openclaw-china/qqbot 0.1.7 → 0.1.9

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.js CHANGED
@@ -6792,6 +6792,81 @@ function registerChinaSetupCli(api, opts) {
6792
6792
  );
6793
6793
  }
6794
6794
 
6795
+ // ../../packages/shared/src/cli/install-hint.ts
6796
+ var PROJECT_REPO2 = "https://github.com/BytePioneer-AI/moltbot-china";
6797
+ var INSTALL_SETUP_COMMAND = "openclaw china setup";
6798
+ var START_GATEWAY_COMMAND = "openclaw gateway --port 18789 --verbose";
6799
+ var ANSI_RESET2 = "\x1B[0m";
6800
+ var ANSI_BOLD = "\x1B[1m";
6801
+ var ANSI_LINK2 = "\x1B[1;4;96m";
6802
+ var ANSI_BORDER2 = "\x1B[92m";
6803
+ var SUPPORTED_CHANNELS = [
6804
+ "dingtalk",
6805
+ "feishu-china",
6806
+ "wecom",
6807
+ "wecom-app",
6808
+ "qqbot"
6809
+ ];
6810
+ var CHINA_INSTALL_HINT_SHOWN_KEY = /* @__PURE__ */ Symbol.for("@openclaw-china/china-install-hint-shown");
6811
+ function isRecord2(value) {
6812
+ return typeof value === "object" && value !== null && !Array.isArray(value);
6813
+ }
6814
+ function hasAnyEnabledChinaChannel(config) {
6815
+ if (!isRecord2(config)) {
6816
+ return false;
6817
+ }
6818
+ const channels = config.channels;
6819
+ if (!isRecord2(channels)) {
6820
+ return false;
6821
+ }
6822
+ return SUPPORTED_CHANNELS.some((channelId) => {
6823
+ const channelConfig = channels[channelId];
6824
+ return isRecord2(channelConfig) && channelConfig.enabled === true;
6825
+ });
6826
+ }
6827
+ function hasShownInstallHint() {
6828
+ const root = globalThis;
6829
+ return root[CHINA_INSTALL_HINT_SHOWN_KEY] === true;
6830
+ }
6831
+ function markInstallHintShown() {
6832
+ const root = globalThis;
6833
+ root[CHINA_INSTALL_HINT_SHOWN_KEY] = true;
6834
+ }
6835
+ function showChinaInstallHint(api) {
6836
+ if (hasShownInstallHint() || hasAnyEnabledChinaChannel(api.config)) {
6837
+ return;
6838
+ }
6839
+ markInstallHintShown();
6840
+ const lines = [
6841
+ `${ANSI_BORDER2}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501${ANSI_RESET2}`,
6842
+ " OpenClaw China Channels \u5DF2\u5C31\u7EEA!",
6843
+ `${ANSI_BORDER2}\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501${ANSI_RESET2}`,
6844
+ "",
6845
+ "\u9879\u76EE\u4ED3\u5E93:",
6846
+ ` ${ANSI_LINK2}${PROJECT_REPO2}${ANSI_RESET2}`,
6847
+ "",
6848
+ "\u2B50 \u5982\u679C\u8FD9\u4E2A\u9879\u76EE\u5BF9\u4F60\u6709\u5E2E\u52A9\uFF0C\u8BF7\u7ED9\u6211\u4EEC\u4E00\u4E2A Star\uFF01\u2B50",
6849
+ "",
6850
+ "\u4E0B\u4E00\u6B65\uFF08\u914D\u7F6E\u5F15\u5BFC\uFF09:",
6851
+ " 1. \u8FD0\u884C\u4EA4\u4E92\u5F0F\u914D\u7F6E\u5411\u5BFC",
6852
+ ` ${ANSI_BOLD}${INSTALL_SETUP_COMMAND}${ANSI_RESET2}`,
6853
+ " 2. \u6309\u63D0\u793A\u586B\u5199\u6E20\u9053\u51ED\u636E\u5E76\u4FDD\u5B58\u914D\u7F6E",
6854
+ " 3. \u542F\u52A8\u7F51\u5173\u5E76\u89C2\u5BDF\u65E5\u5FD7",
6855
+ ` ${START_GATEWAY_COMMAND}`
6856
+ ];
6857
+ if (api.logger?.info) {
6858
+ for (const line of lines) {
6859
+ api.logger.info(line);
6860
+ }
6861
+ return;
6862
+ }
6863
+ if (api.logger?.warn) {
6864
+ for (const line of lines) {
6865
+ api.logger.warn(line);
6866
+ }
6867
+ }
6868
+ }
6869
+
6795
6870
  // src/client.ts
6796
6871
  var API_BASE = "https://api.sgroup.qq.com";
6797
6872
  var TOKEN_URL = "https://bots.qq.com/app/getAppAccessToken";
@@ -8584,6 +8659,7 @@ var plugin = {
8584
8659
  },
8585
8660
  register(api) {
8586
8661
  registerChinaSetupCli(api, { channels: ["qqbot"] });
8662
+ showChinaInstallHint(api);
8587
8663
  if (api.runtime) {
8588
8664
  setQQBotRuntime(api.runtime);
8589
8665
  }