@fedify/webfinger 2.2.0-dev.613 → 2.2.0-dev.628
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/deno.json +1 -1
- package/dist/lookup.test.cjs +84 -162
- package/dist/lookup.test.js +70 -149
- package/dist/mod.cjs +14 -71
- package/dist/mod.js +3 -38
- package/package.json +4 -4
- package/tsdown.config.ts +14 -2
package/dist/mod.cjs
CHANGED
|
@@ -1,67 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
10
|
-
key = keys[i];
|
|
11
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
12
|
-
get: ((k) => from[k]).bind(null, key),
|
|
13
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
19
|
-
value: mod,
|
|
20
|
-
enumerable: true
|
|
21
|
-
}) : target, mod));
|
|
22
|
-
|
|
23
|
-
//#endregion
|
|
24
|
-
const __fedify_vocab_runtime = __toESM(require("@fedify/vocab-runtime"));
|
|
25
|
-
const __logtape_logtape = __toESM(require("@logtape/logtape"));
|
|
26
|
-
const __opentelemetry_api = __toESM(require("@opentelemetry/api"));
|
|
27
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
let _fedify_vocab_runtime = require("@fedify/vocab-runtime");
|
|
3
|
+
let _logtape_logtape = require("@logtape/logtape");
|
|
4
|
+
let _opentelemetry_api = require("@opentelemetry/api");
|
|
28
5
|
//#region deno.json
|
|
29
6
|
var name = "@fedify/webfinger";
|
|
30
|
-
var version = "2.2.0-dev.
|
|
31
|
-
var license = "MIT";
|
|
32
|
-
var exports$1 = { ".": "./src/mod.ts" };
|
|
33
|
-
var description = "WebFinger client library for Fedify";
|
|
34
|
-
var author = {
|
|
35
|
-
"name": "Hong Minhee",
|
|
36
|
-
"email": "hong@minhee.org",
|
|
37
|
-
"url": "https://hongminhee.org/"
|
|
38
|
-
};
|
|
39
|
-
var imports = {
|
|
40
|
-
"es-toolkit": "npm:es-toolkit@^1.42.0",
|
|
41
|
-
"fetch-mock": "npm:fetch-mock@^12.5.4"
|
|
42
|
-
};
|
|
43
|
-
var exclude = ["dist", "node_modules"];
|
|
44
|
-
var publish = { "exclude": ["**/*.test.ts", "tsdown.config.ts"] };
|
|
45
|
-
var tasks = {
|
|
46
|
-
"check": "deno fmt --check && deno lint && deno check src/*.ts",
|
|
47
|
-
"test": "deno test"
|
|
48
|
-
};
|
|
49
|
-
var deno_default = {
|
|
50
|
-
name,
|
|
51
|
-
version,
|
|
52
|
-
license,
|
|
53
|
-
exports: exports$1,
|
|
54
|
-
description,
|
|
55
|
-
author,
|
|
56
|
-
imports,
|
|
57
|
-
exclude,
|
|
58
|
-
publish,
|
|
59
|
-
tasks
|
|
60
|
-
};
|
|
61
|
-
|
|
7
|
+
var version = "2.2.0-dev.628+7f7a1e9b";
|
|
62
8
|
//#endregion
|
|
63
9
|
//#region src/lookup.ts
|
|
64
|
-
const logger = (0,
|
|
10
|
+
const logger = (0, _logtape_logtape.getLogger)([
|
|
65
11
|
"fedify",
|
|
66
12
|
"webfinger",
|
|
67
13
|
"lookup"
|
|
@@ -75,10 +21,8 @@ const DEFAULT_MAX_REDIRECTION = 5;
|
|
|
75
21
|
* @since 0.2.0
|
|
76
22
|
*/
|
|
77
23
|
async function lookupWebFinger(resource, options = {}) {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
return await tracer.startActiveSpan("webfinger.lookup", {
|
|
81
|
-
kind: __opentelemetry_api.SpanKind.CLIENT,
|
|
24
|
+
return await (options.tracerProvider ?? _opentelemetry_api.trace.getTracerProvider()).getTracer(name, version).startActiveSpan("webfinger.lookup", {
|
|
25
|
+
kind: _opentelemetry_api.SpanKind.CLIENT,
|
|
82
26
|
attributes: {
|
|
83
27
|
"webfinger.resource": resource.toString(),
|
|
84
28
|
"webfinger.resource.scheme": typeof resource === "string" ? resource.replace(/:.*$/, "") : resource.protocol.replace(/:$/, "")
|
|
@@ -86,11 +30,11 @@ async function lookupWebFinger(resource, options = {}) {
|
|
|
86
30
|
}, async (span) => {
|
|
87
31
|
try {
|
|
88
32
|
const result = await lookupWebFingerInternal(resource, options);
|
|
89
|
-
span.setStatus({ code: result === null ?
|
|
33
|
+
span.setStatus({ code: result === null ? _opentelemetry_api.SpanStatusCode.ERROR : _opentelemetry_api.SpanStatusCode.OK });
|
|
90
34
|
return result;
|
|
91
35
|
} catch (error) {
|
|
92
36
|
span.setStatus({
|
|
93
|
-
code:
|
|
37
|
+
code: _opentelemetry_api.SpanStatusCode.ERROR,
|
|
94
38
|
message: String(error)
|
|
95
39
|
});
|
|
96
40
|
throw error;
|
|
@@ -119,9 +63,9 @@ async function lookupWebFingerInternal(resource, options = {}) {
|
|
|
119
63
|
logger.debug("Fetching WebFinger resource descriptor from {url}...", { url: url.href });
|
|
120
64
|
let response;
|
|
121
65
|
if (options.allowPrivateAddress !== true) try {
|
|
122
|
-
await (0,
|
|
66
|
+
await (0, _fedify_vocab_runtime.validatePublicUrl)(url.href);
|
|
123
67
|
} catch (e) {
|
|
124
|
-
if (e instanceof
|
|
68
|
+
if (e instanceof _fedify_vocab_runtime.UrlError) {
|
|
125
69
|
logger.error("Invalid URL for WebFinger resource descriptor: {error}", { error: e });
|
|
126
70
|
return null;
|
|
127
71
|
}
|
|
@@ -131,7 +75,7 @@ async function lookupWebFingerInternal(resource, options = {}) {
|
|
|
131
75
|
response = await fetch(url, {
|
|
132
76
|
headers: {
|
|
133
77
|
Accept: "application/jrd+json",
|
|
134
|
-
"User-Agent": typeof options.userAgent === "string" ? options.userAgent : (0,
|
|
78
|
+
"User-Agent": typeof options.userAgent === "string" ? options.userAgent : (0, _fedify_vocab_runtime.getUserAgent)(options.userAgent)
|
|
135
79
|
},
|
|
136
80
|
redirect: "manual",
|
|
137
81
|
signal: options.signal
|
|
@@ -180,6 +124,5 @@ async function lookupWebFingerInternal(resource, options = {}) {
|
|
|
180
124
|
}
|
|
181
125
|
}
|
|
182
126
|
}
|
|
183
|
-
|
|
184
127
|
//#endregion
|
|
185
|
-
exports.lookupWebFinger = lookupWebFinger;
|
|
128
|
+
exports.lookupWebFinger = lookupWebFinger;
|
package/dist/mod.js
CHANGED
|
@@ -1,41 +1,9 @@
|
|
|
1
1
|
import { UrlError, getUserAgent, validatePublicUrl } from "@fedify/vocab-runtime";
|
|
2
2
|
import { getLogger } from "@logtape/logtape";
|
|
3
3
|
import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
|
|
4
|
-
|
|
5
4
|
//#region deno.json
|
|
6
5
|
var name = "@fedify/webfinger";
|
|
7
|
-
var version = "2.2.0-dev.
|
|
8
|
-
var license = "MIT";
|
|
9
|
-
var exports = { ".": "./src/mod.ts" };
|
|
10
|
-
var description = "WebFinger client library for Fedify";
|
|
11
|
-
var author = {
|
|
12
|
-
"name": "Hong Minhee",
|
|
13
|
-
"email": "hong@minhee.org",
|
|
14
|
-
"url": "https://hongminhee.org/"
|
|
15
|
-
};
|
|
16
|
-
var imports = {
|
|
17
|
-
"es-toolkit": "npm:es-toolkit@^1.42.0",
|
|
18
|
-
"fetch-mock": "npm:fetch-mock@^12.5.4"
|
|
19
|
-
};
|
|
20
|
-
var exclude = ["dist", "node_modules"];
|
|
21
|
-
var publish = { "exclude": ["**/*.test.ts", "tsdown.config.ts"] };
|
|
22
|
-
var tasks = {
|
|
23
|
-
"check": "deno fmt --check && deno lint && deno check src/*.ts",
|
|
24
|
-
"test": "deno test"
|
|
25
|
-
};
|
|
26
|
-
var deno_default = {
|
|
27
|
-
name,
|
|
28
|
-
version,
|
|
29
|
-
license,
|
|
30
|
-
exports,
|
|
31
|
-
description,
|
|
32
|
-
author,
|
|
33
|
-
imports,
|
|
34
|
-
exclude,
|
|
35
|
-
publish,
|
|
36
|
-
tasks
|
|
37
|
-
};
|
|
38
|
-
|
|
6
|
+
var version = "2.2.0-dev.628+7f7a1e9b";
|
|
39
7
|
//#endregion
|
|
40
8
|
//#region src/lookup.ts
|
|
41
9
|
const logger = getLogger([
|
|
@@ -52,9 +20,7 @@ const DEFAULT_MAX_REDIRECTION = 5;
|
|
|
52
20
|
* @since 0.2.0
|
|
53
21
|
*/
|
|
54
22
|
async function lookupWebFinger(resource, options = {}) {
|
|
55
|
-
|
|
56
|
-
const tracer = tracerProvider.getTracer(deno_default.name, deno_default.version);
|
|
57
|
-
return await tracer.startActiveSpan("webfinger.lookup", {
|
|
23
|
+
return await (options.tracerProvider ?? trace.getTracerProvider()).getTracer(name, version).startActiveSpan("webfinger.lookup", {
|
|
58
24
|
kind: SpanKind.CLIENT,
|
|
59
25
|
attributes: {
|
|
60
26
|
"webfinger.resource": resource.toString(),
|
|
@@ -157,6 +123,5 @@ async function lookupWebFingerInternal(resource, options = {}) {
|
|
|
157
123
|
}
|
|
158
124
|
}
|
|
159
125
|
}
|
|
160
|
-
|
|
161
126
|
//#endregion
|
|
162
|
-
export { lookupWebFinger };
|
|
127
|
+
export { lookupWebFinger };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fedify/webfinger",
|
|
3
|
-
"version": "2.2.0-dev.
|
|
3
|
+
"version": "2.2.0-dev.628+7f7a1e9b",
|
|
4
4
|
"homepage": "https://fedify.dev/",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -52,15 +52,15 @@
|
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@types/node": "^24.2.1",
|
|
54
54
|
"fetch-mock": "^12.5.4",
|
|
55
|
-
"tsdown": "^0.
|
|
56
|
-
"typescript": "^5.9.
|
|
55
|
+
"tsdown": "^0.21.6",
|
|
56
|
+
"typescript": "^5.9.2",
|
|
57
57
|
"@fedify/fixture": "2.0.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
60
|
"@logtape/logtape": "^2.0.5",
|
|
61
61
|
"@opentelemetry/api": "^1.9.0",
|
|
62
62
|
"es-toolkit": "1.43.0",
|
|
63
|
-
"@fedify/vocab-runtime": "2.2.0-dev.
|
|
63
|
+
"@fedify/vocab-runtime": "2.2.0-dev.628+7f7a1e9b"
|
|
64
64
|
},
|
|
65
65
|
"scripts": {
|
|
66
66
|
"build:self": "tsdown",
|
package/tsdown.config.ts
CHANGED
|
@@ -8,13 +8,25 @@ export default [
|
|
|
8
8
|
dts: { compilerOptions: { isolatedDeclarations: true, declaration: true } },
|
|
9
9
|
format: ["esm", "cjs"],
|
|
10
10
|
platform: "node",
|
|
11
|
-
|
|
11
|
+
outExtensions({ format }) {
|
|
12
|
+
return {
|
|
13
|
+
js: format === "cjs" ? ".cjs" : ".js",
|
|
14
|
+
dts: format === "cjs" ? ".d.cts" : ".d.ts",
|
|
15
|
+
};
|
|
16
|
+
},
|
|
17
|
+
deps: { neverBundle: [/^node:/] },
|
|
12
18
|
}),
|
|
13
19
|
defineConfig({
|
|
14
20
|
entry: (await Array.fromAsync(glob(`src/**/*.test.ts`)))
|
|
15
21
|
.map((f) => f.replace(sep, "/")),
|
|
16
22
|
format: ["esm", "cjs"],
|
|
17
23
|
platform: "node",
|
|
18
|
-
|
|
24
|
+
outExtensions({ format }) {
|
|
25
|
+
return {
|
|
26
|
+
js: format === "cjs" ? ".cjs" : ".js",
|
|
27
|
+
dts: format === "cjs" ? ".d.cts" : ".d.ts",
|
|
28
|
+
};
|
|
29
|
+
},
|
|
30
|
+
deps: { neverBundle: [/^node:/, "@fedify/fixture"] },
|
|
19
31
|
}),
|
|
20
32
|
];
|