koishi-plugin-mc-serverlist 1.1.1 → 1.1.2

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/index.d.ts CHANGED
@@ -17,5 +17,5 @@ export interface Config {
17
17
  debug: boolean;
18
18
  }
19
19
  export declare const Config: Schema<Config>;
20
- export declare const usage = "\n\u67E5\u8BE2Minecraft JAVA \u7248\u670D\u52A1\u5668\u72B6\u6001\u7684\u63D2\u4EF6, \u5E76\u751F\u6210\u56FE\u7247\u3002\u652F\u6301\u540C\u65F6\u67E5\u8BE2\u591A\u4E2A\u670D\u52A1\u5668\u3002 \n\n### \u7528\u6CD5: \nmcs [\u670D\u52A1\u5668\u5730\u5740] \n\u4F8B\u5982: \nmcs hypixel.net \n\u5982\u679C\u4E0D\u6307\u5B9A\u670D\u52A1\u5668\u5730\u5740, \u5219\u67E5\u8BE2\u914D\u7F6E\u6587\u4EF6\u4E2D\u7684\u6240\u6709\u670D\u52A1\u5668\u3002\n\n~~\u4F7F\u7528 mcsrvstat.us API~~ \nv1.1.0 : \u4F7F\u7528 TCP ping \u534F\u8BAE\u76F4\u63A5\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001\u3002\n";
20
+ export declare const usage = "\n\u67E5\u8BE2Minecraft JAVA \u7248\u670D\u52A1\u5668\u72B6\u6001\u7684\u63D2\u4EF6, \u5E76\u751F\u6210\u56FE\u7247\u3002\u652F\u6301\u540C\u65F6\u67E5\u8BE2\u591A\u4E2A\u670D\u52A1\u5668\u3002 \n\n### \u7528\u6CD5: \nmcs [\u670D\u52A1\u5668\u5730\u5740] \n\u4F8B\u5982: \nmcs hypixel.net \n\u5982\u679C\u4E0D\u6307\u5B9A\u670D\u52A1\u5668\u5730\u5740, \u5219\u67E5\u8BE2\u914D\u7F6E\u6587\u4EF6\u4E2D\u7684\u6240\u6709\u670D\u52A1\u5668\u3002\n\n~~\u4F7F\u7528 mcsrvstat.us API~~ \nv1.1.0 : \u4F7F\u7528 TCP ping \u534F\u8BAE\u76F4\u63A5\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001\u3002\nv1.1.2 : \u4F18\u5316\u67E5\u8BE2\u903B\u8F91\u3002\n";
21
21
  export declare function apply(ctx: Context, config: Config): void;
package/lib/index.js CHANGED
@@ -424,7 +424,6 @@ async function bodyHtml(icon, text, config) {
424
424
  }
425
425
  __name(bodyHtml, "bodyHtml");
426
426
  async function getStatus(serverName, serverIP, config) {
427
- let mcdata;
428
427
  try {
429
428
  const status = await queryServerStatus(serverIP);
430
429
  if (config.debug) {
@@ -490,13 +489,15 @@ async function mcs(ctx, config) {
490
489
  }
491
490
  return image;
492
491
  } else {
493
- let text = "";
494
- for (const server of config.servers) {
495
- const { result, icon } = await getStatus(server.name, server.ip, config);
496
- text += await bodyHtml(icon, result, config);
497
- }
492
+ const allQueryResults = await Promise.all(
493
+ config.servers.map(async (server, index) => {
494
+ const { result, icon } = await getStatus(server.name, server.ip, config);
495
+ return { index, html: await bodyHtml(icon, result, config) };
496
+ })
497
+ );
498
+ const orderedHtml = allQueryResults.sort((a, b) => a.index - b.index).map((b) => b.html).join("");
498
499
  const footer = config.footer.replace(/\n/g, "</br>");
499
- const html = await generateHtml(text, footer, config);
500
+ const html = await generateHtml(orderedHtml, footer, config);
500
501
  const image = await ctx.puppeteer.render(html);
501
502
  if (config.debug) {
502
503
  logger.info("生成的 HTML:", html);
@@ -546,6 +547,7 @@ mcs hypixel.net
546
547
 
547
548
  ~~使用 mcsrvstat.us API~~
548
549
  v1.1.0 : 使用 TCP ping 协议直接查询服务器状态。
550
+ v1.1.2 : 优化查询逻辑。
549
551
  `;
550
552
  function apply(ctx, config) {
551
553
  mcs(ctx, config);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-mc-serverlist",
3
3
  "description": "查询Minecraft JAVA 版服务器状态的插件, 并生成图片。支持同时查询多个服务器。",
4
- "version": "1.1.1",
4
+ "version": "1.1.2",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [