瀏覽代碼

Fix: proper always real ip

SukkaW 1 年之前
父節點
當前提交
08a686beac
共有 1 個文件被更改,包括 10 次插入1 次删除
  1. 10 1
      Build/build-sgmodule-always-realip.ts

+ 10 - 1
Build/build-sgmodule-always-realip.ts

@@ -41,7 +41,16 @@ const HOSTNAMES = [
 export const buildAlwaysRealIPModule = task(require.main === module, __filename)(async (span) => {
   // Intranet, Router Setup, and mant more
   const dataset = [Object.entries(DIRECTS), Object.entries(LANS)];
-  const surge = dataset.flatMap(data => data.flatMap(([, { domains }]) => domains.flatMap((domain) => [`*.${domain}`, domain])));
+  const surge = dataset.flatMap(data => data.flatMap(([, { domains }]) => domains.flatMap((domain) => {
+    switch (domain[0]) {
+      case '+':
+        return [`*.${domain.slice(1)}`];
+      case '$':
+        return [domain.slice(1)];
+      default:
+        return [domain, `*.${domain}`];
+    }
+  })));
 
   return Promise.all([
     compareAndWriteFile(