@zhin.js/plugin-short-url 3.0.4 → 3.0.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"short-url-lib.d.ts","sourceRoot":"","sources":["../src/short-url-lib.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOjD;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO7D;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAM5D"}
1
+ {"version":3,"file":"short-url-lib.d.ts","sourceRoot":"","sources":["../src/short-url-lib.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOjD;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO7D;AAED,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO5D"}
@@ -18,10 +18,11 @@ export async function shortenUrl(url) {
18
18
  return data.shorturl;
19
19
  }
20
20
  export async function expandUrl(url) {
21
- const res = await fetch(url, { redirect: 'manual' });
22
- const location = res.headers.get('location');
23
- if (location)
24
- return location;
21
+ // 不能用 redirect:'manual':undici 下返回 opaqueredirect(status 0、headers 空),
22
+ // 拿不到 location。改为跟随重定向后比较最终 URL。
23
+ const res = await fetch(url, { redirect: 'follow' });
24
+ if (res.url && res.url !== url)
25
+ return res.url;
25
26
  if (res.ok)
26
27
  return url;
27
28
  throw new Error(`无法展开链接 (${res.status})`);
@@ -1 +1 @@
1
- {"version":3,"file":"short-url-lib.js","sourceRoot":"","sources":["../src/short-url-lib.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW;IAC1C,MAAM,GAAG,GAAG,4CAA4C,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAqE,CAAC;IACpG,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,QAAQ,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC;IACvB,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"short-url-lib.js","sourceRoot":"","sources":["../src/short-url-lib.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAW;IAC1C,MAAM,GAAG,GAAG,4CAA4C,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAqE,CAAC;IACpG,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,QAAQ,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,uEAAuE;IACvE,iCAAiC;IACjC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrD,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC;IAC/C,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC;IACvB,MAAM,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAC5C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/plugin-short-url",
3
- "version": "3.0.4",
3
+ "version": "3.0.5",
4
4
  "description": "URL shortener plugin for Zhin.js — shorten & expand URLs (Plugin Runtime)",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -37,18 +37,18 @@
37
37
  },
38
38
  "license": "MIT",
39
39
  "dependencies": {
40
- "@zhin.js/plugin-runtime": "1.1.0",
41
- "@zhin.js/command": "1.0.2"
40
+ "@zhin.js/command": "1.0.3",
41
+ "@zhin.js/plugin-runtime": "1.1.1"
42
42
  },
43
43
  "devDependencies": {
44
44
  "typescript": "^6.0.3",
45
45
  "vitest": "^4.1.10",
46
46
  "zod": "^4.4.3",
47
- "@zhin.js/agent": "1.0.5"
47
+ "@zhin.js/agent": "1.0.6"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "zod": "^4.0.0",
51
- "@zhin.js/agent": "1.0.5"
51
+ "@zhin.js/agent": "1.0.6"
52
52
  },
53
53
  "peerDependenciesMeta": {
54
54
  "@zhin.js/agent": {
@@ -17,9 +17,10 @@ export async function shortenUrl(url: string): Promise<string> {
17
17
  }
18
18
 
19
19
  export async function expandUrl(url: string): Promise<string> {
20
- const res = await fetch(url, { redirect: 'manual' });
21
- const location = res.headers.get('location');
22
- if (location) return location;
20
+ // 不能用 redirect:'manual':undici 下返回 opaqueredirect(status 0、headers 空),
21
+ // 拿不到 location。改为跟随重定向后比较最终 URL。
22
+ const res = await fetch(url, { redirect: 'follow' });
23
+ if (res.url && res.url !== url) return res.url;
23
24
  if (res.ok) return url;
24
25
  throw new Error(`无法展开链接 (${res.status})`);
25
26
  }