@fedify/fedify 1.8.1-pr.328.1165 → 1.8.1-pr.329.1209
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/README.md +1 -4
- package/dist/{actor-6WfgEEM7.js → actor-CiCVXwx3.js} +4 -1
- package/dist/{actor-BvUN9QgD.js → actor-DOUbHIhg.js} +179 -179
- package/dist/{assert_rejects-AjlKk-Vo.js → assert_rejects-DceVjUlD.js} +1 -1
- package/dist/{assert_throws-CqMKbTh_.js → assert_throws-DTDC_gwN.js} +1 -1
- package/dist/{authdocloader-BxpW2l0x.js → authdocloader-CMmTK9S5.js} +3 -3
- package/dist/{authdocloader-DlQKiAuj.js → authdocloader-CrpSsLr1.js} +4 -3
- package/dist/{builder-Bql0U6IX.js → builder-DFk9FOJ6.js} +5 -4
- package/dist/chunk-HsBuZ-b2.js +41 -0
- package/dist/{client-CI4TcEtW.js → client-CYFhpq6p.js} +2 -2
- package/dist/compat/transformers.test.js +27 -20
- package/dist/context-B4-Ypxls.js +108 -0
- package/dist/docloader-09nVWLAZ.js +68 -0
- package/dist/{docloader-B6dtEu0e.js → docloader-B8jv3Z2V.js} +1 -2
- package/dist/docloader-xLomwjk3.js +4526 -0
- package/dist/{esm-80CEOYyg.js → esm-d-9EVGaP.js} +1 -1
- package/dist/federation/builder.test.js +16 -11
- package/dist/federation/collection.test.js +7 -9
- package/dist/federation/handler.test.js +35 -26
- package/dist/federation/inbox.test.js +10 -6
- package/dist/federation/keycache.test.js +7 -4
- package/dist/federation/kv.test.js +6 -8
- package/dist/federation/middleware.test.js +35 -27
- package/dist/federation/mod.js +10 -10
- package/dist/federation/mq.test.js +8 -10
- package/dist/federation/retry.test.js +3 -5
- package/dist/federation/router.test.js +7 -8
- package/dist/federation/send.test.js +21 -15
- package/dist/{http-Cdm4poZb.js → http-6MXyLsoh.js} +3 -2
- package/dist/{http-epXQkoos.js → http-DLoFeou5.js} +3 -3
- package/dist/{inbox-ClBcgVPg.js → inbox-K6Jqy_1j.js} +3 -1
- package/dist/{key-B2Vg4tVB.js → key-B56jBz9U.js} +4 -4
- package/dist/{key-Cl_Xlkrv.js → key-BAIJJ5gY.js} +2 -2
- package/dist/key-Be2GEH6h.js +16 -0
- package/dist/{key-D2T-GDYd.js → key-DbuLgndY.js} +3 -2
- package/dist/{keycache-M-zWLLCU.js → keycache-D2ce3zUW.js} +1 -1
- package/dist/{keys-qx88le-G.js → keys-Cl8uuXBD.js} +1 -1
- package/dist/langstr-DbWheeIS.js +33 -0
- package/dist/{ld-ZkyR7ab4.js → ld-WpKwgDtk.js} +4 -2
- package/dist/lookup-BhK5FmDe.js +132 -0
- package/dist/{lookup-BlMMBOS2.js → lookup-ByMEYudm.js} +1 -1
- package/dist/{lookup-BH2SgpoS.js → lookup-DMKWAbKW.js} +6 -113
- package/dist/middleware-B-tW_fwo.js +17 -0
- package/dist/middleware-Ba5IuZoK.js +33 -0
- package/dist/{middleware-0TQ_tx1T.js → middleware-Dbj6Ns6x.js} +21 -17
- package/dist/{middleware-Cye6GERQ.js → middleware-vpRI19Dq.js} +11 -11
- package/dist/mod.js +10 -10
- package/dist/multibase-DeCHcK8L.js +316 -0
- package/dist/nodeinfo/client.test.js +11 -11
- package/dist/nodeinfo/handler.test.js +34 -25
- package/dist/nodeinfo/mod.js +2 -2
- package/dist/nodeinfo/semver.test.js +7 -9
- package/dist/nodeinfo/types.test.js +8 -10
- package/dist/{owner-C_vL0hRG.js → owner-jodbuyfr.js} +3 -2
- package/dist/{proof-CiYpiavN.js → proof-BSG6S-sj.js} +3 -3
- package/dist/{proof-Dz3Yq7kI.js → proof-DZrqpsSm.js} +4 -2
- package/dist/router-D3UybECj.js +118 -0
- package/dist/runtime/authdocloader.test.js +20 -14
- package/dist/runtime/docloader.test.js +10 -9
- package/dist/runtime/key.test.js +15 -10
- package/dist/runtime/langstr.test.js +7 -8
- package/dist/runtime/mod.js +6 -6
- package/dist/runtime/multibase/multibase.test.js +7 -8
- package/dist/runtime/url.test.js +4 -5
- package/dist/{send-CDQXxlmm.js → send-CNN4e6xr.js} +2 -2
- package/dist/sig/http.test.js +19 -13
- package/dist/sig/key.test.js +17 -11
- package/dist/sig/ld.test.js +16 -10
- package/dist/sig/mod.js +6 -6
- package/dist/sig/owner.test.js +19 -12
- package/dist/sig/proof.test.js +18 -12
- package/dist/testing/docloader.test.js +7 -8
- package/dist/testing/mod.d.ts +1 -8387
- package/dist/testing/mod.js +2 -4
- package/dist/testing-BZ0dJ4qn.js +143 -0
- package/dist/type-D2s5lmbZ.js +14 -0
- package/dist/{types-E0EOd3en.js → types-9rwT068o.js} +1 -1
- package/dist/{types-n7HI7VFr.js → types-C7C_l-jz.js} +1 -1
- package/dist/url-kTAI6_KP.js +68 -0
- package/dist/vocab/actor.test.js +16 -10
- package/dist/vocab/lookup.test.js +16 -9
- package/dist/vocab/mod.js +4 -4
- package/dist/vocab/type.test.js +7 -3
- package/dist/vocab/vocab.test.js +13 -9
- package/dist/{type-BvQGw6hv.js → vocab-Db0G5VQ2.js} +183 -5255
- package/dist/{vocab-fVvi4e5m.js → vocab-iY_A93sn.js} +3 -3
- package/dist/webfinger/handler.test.js +34 -25
- package/dist/webfinger/lookup.test.js +10 -9
- package/dist/webfinger/mod.js +2 -2
- package/dist/x/cfworkers.test.js +6 -8
- package/package.json +1 -1
- package/dist/key-CE5RdobB.js +0 -10
- package/dist/middleware-DPQqiqLu.js +0 -26
- package/dist/middleware-Dh8xaPyd.js +0 -17
- package/dist/testing-COl4JbdC.js +0 -301
- /package/dist/{assert_is_error-CeVBLPsZ.js → assert_is_error-DQdKoRgb.js} +0 -0
- /package/dist/{assert_not_equals-D2R2nl5h.js → assert_not_equals-7pyUM3Ib.js} +0 -0
- /package/dist/{collection-D5V3UzU3.js → collection-Dfb0TPno.js} +0 -0
- /package/dist/{denokv-DK9P5Jq7.js → denokv-QWKsIqML.js} +0 -0
- /package/dist/{retry-BnpVRGFC.js → retry-BiIhZWgD.js} +0 -0
- /package/dist/{semver-DCqorrj5.js → semver-DWClQt_5.js} +0 -0
- /package/dist/{std__assert-BQdmxyzF.js → std__assert-B3iAixc-.js} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
6
|
import { AssertionError } from "./assert_equals-C5gKCm6A.js";
|
|
7
|
-
import { assertIsError } from "./assert_is_error-
|
|
7
|
+
import { assertIsError } from "./assert_is_error-DQdKoRgb.js";
|
|
8
8
|
|
|
9
9
|
//#region ../node_modules/.pnpm/@jsr+std__assert@0.226.0/node_modules/@jsr/std__assert/assert_false.js
|
|
10
10
|
/**
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
6
|
import { AssertionError } from "./assert_equals-C5gKCm6A.js";
|
|
7
|
-
import { assertIsError } from "./assert_is_error-
|
|
7
|
+
import { assertIsError } from "./assert_is_error-DQdKoRgb.js";
|
|
8
8
|
|
|
9
9
|
//#region ../node_modules/.pnpm/@jsr+std__assert@0.226.0/node_modules/@jsr/std__assert/assert_throws.js
|
|
10
10
|
function assertThrows(fn, errorClassOrMsg, msgIncludesOrMsg, msg) {
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
import { Temporal } from "@js-temporal/polyfill";
|
|
3
3
|
import { URLPattern } from "urlpattern-polyfill";
|
|
4
4
|
|
|
5
|
-
import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./docloader-
|
|
6
|
-
import { validateCryptoKey } from "./key-
|
|
7
|
-
import { doubleKnock } from "./http-
|
|
5
|
+
import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./docloader-B8jv3Z2V.js";
|
|
6
|
+
import { validateCryptoKey } from "./key-BAIJJ5gY.js";
|
|
7
|
+
import { doubleKnock } from "./http-DLoFeou5.js";
|
|
8
8
|
import { getLogger } from "@logtape/logtape";
|
|
9
9
|
|
|
10
10
|
//#region runtime/authdocloader.ts
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
import { URLPattern } from "urlpattern-polyfill";
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
6
|
+
import { createRequest, getRemoteDocument, logRequest } from "./docloader-xLomwjk3.js";
|
|
7
|
+
import { UrlError, validatePublicUrl } from "./url-kTAI6_KP.js";
|
|
8
|
+
import { validateCryptoKey } from "./key-DbuLgndY.js";
|
|
9
|
+
import { doubleKnock } from "./http-6MXyLsoh.js";
|
|
9
10
|
import { getLogger } from "@logtape/logtape";
|
|
10
11
|
|
|
11
12
|
//#region runtime/authdocloader.ts
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
import { URLPattern } from "urlpattern-polyfill";
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
|
-
import { deno_default
|
|
7
|
-
import { Router, RouterError } from "./
|
|
8
|
-
import {
|
|
6
|
+
import { deno_default } from "./docloader-xLomwjk3.js";
|
|
7
|
+
import { Router, RouterError } from "./router-D3UybECj.js";
|
|
8
|
+
import { getTypeId } from "./type-D2s5lmbZ.js";
|
|
9
|
+
import { InboxListenerSet } from "./inbox-K6Jqy_1j.js";
|
|
9
10
|
import { getLogger } from "@logtape/logtape";
|
|
10
11
|
import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
|
|
11
12
|
|
|
@@ -33,7 +34,7 @@ var FederationBuilderImpl = class {
|
|
|
33
34
|
this.objectTypeIds = {};
|
|
34
35
|
}
|
|
35
36
|
async build(options) {
|
|
36
|
-
const { FederationImpl } = await import("./middleware-
|
|
37
|
+
const { FederationImpl } = await import("./middleware-Ba5IuZoK.js");
|
|
37
38
|
const f = new FederationImpl(options);
|
|
38
39
|
const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
|
|
39
40
|
f.router = this.router.clone();
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
|
|
2
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
3
|
+
import { URLPattern } from "urlpattern-polyfill";
|
|
4
|
+
globalThis.addEventListener = () => {};
|
|
5
|
+
|
|
6
|
+
import { createRequire } from "node:module";
|
|
7
|
+
|
|
8
|
+
//#region rolldown:runtime
|
|
9
|
+
var __create = Object.create;
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
14
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
15
|
+
var __commonJS = (cb, mod) => function() {
|
|
16
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
17
|
+
};
|
|
18
|
+
var __export = (target, all) => {
|
|
19
|
+
for (var name in all) __defProp(target, name, {
|
|
20
|
+
get: all[name],
|
|
21
|
+
enumerable: true
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
var __copyProps = (to, from, except, desc) => {
|
|
25
|
+
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
26
|
+
key = keys[i];
|
|
27
|
+
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
28
|
+
get: ((k) => from[k]).bind(null, key),
|
|
29
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
return to;
|
|
33
|
+
};
|
|
34
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
35
|
+
value: mod,
|
|
36
|
+
enumerable: true
|
|
37
|
+
}) : target, mod));
|
|
38
|
+
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
39
|
+
|
|
40
|
+
//#endregion
|
|
41
|
+
export { __commonJS, __export, __require, __toESM };
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
import { URLPattern } from "urlpattern-polyfill";
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
|
-
import { getUserAgent } from "./
|
|
7
|
-
import { parseSemVer } from "./semver-
|
|
6
|
+
import { getUserAgent } from "./docloader-xLomwjk3.js";
|
|
7
|
+
import { parseSemVer } from "./semver-DWClQt_5.js";
|
|
8
8
|
import { getLogger } from "@logtape/logtape";
|
|
9
9
|
|
|
10
10
|
//#region nodeinfo/client.ts
|
|
@@ -3,30 +3,37 @@
|
|
|
3
3
|
import { URLPattern } from "urlpattern-polyfill";
|
|
4
4
|
globalThis.addEventListener = () => {};
|
|
5
5
|
|
|
6
|
-
import { Follow, Person } from "../type-BvQGw6hv.js";
|
|
7
6
|
import { assertEquals } from "../assert_equals-C5gKCm6A.js";
|
|
8
7
|
import { assert } from "../assert-DwEa6glZ.js";
|
|
9
8
|
import { assertInstanceOf } from "../assert_instance_of-C9QtN-X9.js";
|
|
10
9
|
import { MemoryKvStore } from "../kv-D7Yt6pnB.js";
|
|
11
|
-
import { FederationImpl, actorDehydrator, autoIdAssigner } from "../middleware-
|
|
12
|
-
import "../
|
|
13
|
-
import "../
|
|
14
|
-
import "../
|
|
15
|
-
import "../
|
|
16
|
-
import "../
|
|
17
|
-
import "../
|
|
18
|
-
import "../
|
|
19
|
-
import "../
|
|
20
|
-
import "../
|
|
21
|
-
import "../
|
|
22
|
-
import "../
|
|
23
|
-
import "../
|
|
24
|
-
import "../
|
|
25
|
-
import "../
|
|
26
|
-
import "../
|
|
27
|
-
import "../
|
|
28
|
-
import "../
|
|
29
|
-
import
|
|
10
|
+
import { FederationImpl, actorDehydrator, autoIdAssigner } from "../middleware-Dbj6Ns6x.js";
|
|
11
|
+
import "../docloader-xLomwjk3.js";
|
|
12
|
+
import "../url-kTAI6_KP.js";
|
|
13
|
+
import "../semver-DWClQt_5.js";
|
|
14
|
+
import "../client-CYFhpq6p.js";
|
|
15
|
+
import "../router-D3UybECj.js";
|
|
16
|
+
import "../types-C7C_l-jz.js";
|
|
17
|
+
import "../multibase-DeCHcK8L.js";
|
|
18
|
+
import { Follow, Person } from "../vocab-Db0G5VQ2.js";
|
|
19
|
+
import "../langstr-DbWheeIS.js";
|
|
20
|
+
import "../lookup-BhK5FmDe.js";
|
|
21
|
+
import "../type-D2s5lmbZ.js";
|
|
22
|
+
import "../actor-CiCVXwx3.js";
|
|
23
|
+
import "../key-DbuLgndY.js";
|
|
24
|
+
import "../http-6MXyLsoh.js";
|
|
25
|
+
import "../authdocloader-CrpSsLr1.js";
|
|
26
|
+
import "../ld-WpKwgDtk.js";
|
|
27
|
+
import "../owner-jodbuyfr.js";
|
|
28
|
+
import "../proof-DZrqpsSm.js";
|
|
29
|
+
import "../lookup-DMKWAbKW.js";
|
|
30
|
+
import "../inbox-K6Jqy_1j.js";
|
|
31
|
+
import "../builder-DFk9FOJ6.js";
|
|
32
|
+
import "../collection-Dfb0TPno.js";
|
|
33
|
+
import "../keycache-D2ce3zUW.js";
|
|
34
|
+
import "../retry-BiIhZWgD.js";
|
|
35
|
+
import "../send-CNN4e6xr.js";
|
|
36
|
+
import { test } from "../testing-BZ0dJ4qn.js";
|
|
30
37
|
|
|
31
38
|
//#region compat/transformers.test.ts
|
|
32
39
|
const federation = new FederationImpl({ kv: new MemoryKvStore() });
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
|
|
2
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
3
|
+
import { URLPattern } from "urlpattern-polyfill";
|
|
4
|
+
globalThis.addEventListener = () => {};
|
|
5
|
+
|
|
6
|
+
import { RouterError } from "./router-D3UybECj.js";
|
|
7
|
+
import { lookupWebFinger } from "./lookup-BhK5FmDe.js";
|
|
8
|
+
import { lookupObject, traverseCollection } from "./lookup-DMKWAbKW.js";
|
|
9
|
+
import { mockDocumentLoader } from "./docloader-09nVWLAZ.js";
|
|
10
|
+
import { trace } from "@opentelemetry/api";
|
|
11
|
+
|
|
12
|
+
//#region testing/context.ts
|
|
13
|
+
function createContext(values) {
|
|
14
|
+
const { federation, url = new URL("http://example.com/"), canonicalOrigin, data, documentLoader, contextLoader, tracerProvider, clone, getNodeInfoUri, getActorUri, getObjectUri, getOutboxUri, getInboxUri, getFollowingUri, getFollowersUri, getLikedUri, getFeaturedUri, getFeaturedTagsUri, parseUri, getActorKeyPairs, getDocumentLoader, lookupObject: lookupObject$1, traverseCollection: traverseCollection$1, lookupNodeInfo, lookupWebFinger: lookupWebFinger$1, sendActivity, routeActivity } = values;
|
|
15
|
+
function throwRouteError() {
|
|
16
|
+
throw new RouterError("Not implemented");
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
federation,
|
|
20
|
+
data,
|
|
21
|
+
origin: url.origin,
|
|
22
|
+
canonicalOrigin: canonicalOrigin ?? url.origin,
|
|
23
|
+
host: url.host,
|
|
24
|
+
hostname: url.hostname,
|
|
25
|
+
documentLoader: documentLoader ?? mockDocumentLoader,
|
|
26
|
+
contextLoader: contextLoader ?? mockDocumentLoader,
|
|
27
|
+
tracerProvider: tracerProvider ?? trace.getTracerProvider(),
|
|
28
|
+
clone: clone ?? ((data$1) => createContext({
|
|
29
|
+
...values,
|
|
30
|
+
data: data$1
|
|
31
|
+
})),
|
|
32
|
+
getNodeInfoUri: getNodeInfoUri ?? throwRouteError,
|
|
33
|
+
getActorUri: getActorUri ?? throwRouteError,
|
|
34
|
+
getObjectUri: getObjectUri ?? throwRouteError,
|
|
35
|
+
getOutboxUri: getOutboxUri ?? throwRouteError,
|
|
36
|
+
getInboxUri: getInboxUri ?? throwRouteError,
|
|
37
|
+
getFollowingUri: getFollowingUri ?? throwRouteError,
|
|
38
|
+
getFollowersUri: getFollowersUri ?? throwRouteError,
|
|
39
|
+
getLikedUri: getLikedUri ?? throwRouteError,
|
|
40
|
+
getFeaturedUri: getFeaturedUri ?? throwRouteError,
|
|
41
|
+
getFeaturedTagsUri: getFeaturedTagsUri ?? throwRouteError,
|
|
42
|
+
parseUri: parseUri ?? ((_uri) => {
|
|
43
|
+
throw new Error("Not implemented");
|
|
44
|
+
}),
|
|
45
|
+
getDocumentLoader: getDocumentLoader ?? ((_params) => {
|
|
46
|
+
throw new Error("Not implemented");
|
|
47
|
+
}),
|
|
48
|
+
getActorKeyPairs: getActorKeyPairs ?? ((_handle) => Promise.resolve([])),
|
|
49
|
+
lookupObject: lookupObject$1 ?? ((uri, options = {}) => {
|
|
50
|
+
return lookupObject(uri, {
|
|
51
|
+
documentLoader: options.documentLoader ?? documentLoader ?? mockDocumentLoader,
|
|
52
|
+
contextLoader: options.contextLoader ?? contextLoader ?? mockDocumentLoader
|
|
53
|
+
});
|
|
54
|
+
}),
|
|
55
|
+
traverseCollection: traverseCollection$1 ?? ((collection, options = {}) => {
|
|
56
|
+
return traverseCollection(collection, {
|
|
57
|
+
documentLoader: options.documentLoader ?? documentLoader ?? mockDocumentLoader,
|
|
58
|
+
contextLoader: options.contextLoader ?? contextLoader ?? mockDocumentLoader
|
|
59
|
+
});
|
|
60
|
+
}),
|
|
61
|
+
lookupNodeInfo: lookupNodeInfo ?? ((_params) => {
|
|
62
|
+
throw new Error("Not implemented");
|
|
63
|
+
}),
|
|
64
|
+
lookupWebFinger: lookupWebFinger$1 ?? ((resource, options = {}) => {
|
|
65
|
+
return lookupWebFinger(resource, options);
|
|
66
|
+
}),
|
|
67
|
+
sendActivity: sendActivity ?? ((_params) => {
|
|
68
|
+
throw new Error("Not implemented");
|
|
69
|
+
}),
|
|
70
|
+
routeActivity: routeActivity ?? ((_params) => {
|
|
71
|
+
throw new Error("Not implemented");
|
|
72
|
+
})
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function createRequestContext(args) {
|
|
76
|
+
return {
|
|
77
|
+
...createContext(args),
|
|
78
|
+
clone: args.clone ?? ((data) => createRequestContext({
|
|
79
|
+
...args,
|
|
80
|
+
data
|
|
81
|
+
})),
|
|
82
|
+
request: args.request ?? new Request(args.url),
|
|
83
|
+
url: args.url,
|
|
84
|
+
getActor: args.getActor ?? (() => Promise.resolve(null)),
|
|
85
|
+
getObject: args.getObject ?? (() => Promise.resolve(null)),
|
|
86
|
+
getSignedKey: args.getSignedKey ?? (() => Promise.resolve(null)),
|
|
87
|
+
getSignedKeyOwner: args.getSignedKeyOwner ?? (() => Promise.resolve(null)),
|
|
88
|
+
sendActivity: args.sendActivity ?? ((_params) => {
|
|
89
|
+
throw new Error("Not implemented");
|
|
90
|
+
})
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function createInboxContext(args) {
|
|
94
|
+
return {
|
|
95
|
+
...createContext(args),
|
|
96
|
+
clone: args.clone ?? ((data) => createInboxContext({
|
|
97
|
+
...args,
|
|
98
|
+
data
|
|
99
|
+
})),
|
|
100
|
+
recipient: args.recipient ?? null,
|
|
101
|
+
forwardActivity: args.forwardActivity ?? ((_params) => {
|
|
102
|
+
throw new Error("Not implemented");
|
|
103
|
+
})
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
//#endregion
|
|
108
|
+
export { createInboxContext, createRequestContext };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
|
|
2
|
+
import { Temporal } from "@js-temporal/polyfill";
|
|
3
|
+
import { URLPattern } from "urlpattern-polyfill";
|
|
4
|
+
globalThis.addEventListener = () => {};
|
|
5
|
+
|
|
6
|
+
import { getLogger } from "@logtape/logtape";
|
|
7
|
+
|
|
8
|
+
//#region testing/docloader.ts
|
|
9
|
+
const logger = getLogger([
|
|
10
|
+
"fedify",
|
|
11
|
+
"testing",
|
|
12
|
+
"docloader"
|
|
13
|
+
]);
|
|
14
|
+
/**
|
|
15
|
+
* A mock of the document loader. This does not make any actual HTTP requests
|
|
16
|
+
* towards the remote server, but looks up the local fixture files instead.
|
|
17
|
+
*
|
|
18
|
+
* For instance, `mockDocumentLoader("http://example.com/foo/bar")` will look up
|
|
19
|
+
* the file `testing/fixtures/http/example.com/foo/bar` (no suffix) and return
|
|
20
|
+
* its content as the response.
|
|
21
|
+
*/
|
|
22
|
+
async function mockDocumentLoader(resource) {
|
|
23
|
+
const url = new URL(resource);
|
|
24
|
+
if ("navigator" in globalThis && navigator.userAgent === "Cloudflare-Workers") {
|
|
25
|
+
const testUrl = new URL(url);
|
|
26
|
+
testUrl.hostname += ".test";
|
|
27
|
+
const resp = await fetch(testUrl);
|
|
28
|
+
if (resp.ok) {
|
|
29
|
+
const document$1 = await resp.json();
|
|
30
|
+
logger.debug("Successfully fetched fixture {resource}: {status} {statusText}\n{body}", {
|
|
31
|
+
resource,
|
|
32
|
+
status: resp.status,
|
|
33
|
+
statusText: resp.statusText,
|
|
34
|
+
body: document$1
|
|
35
|
+
});
|
|
36
|
+
return {
|
|
37
|
+
contextUrl: null,
|
|
38
|
+
document: document$1,
|
|
39
|
+
documentUrl: resource
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
const error = await resp.text();
|
|
43
|
+
logger.error("Failed to fetch fixture {resource}: {error}", {
|
|
44
|
+
resource,
|
|
45
|
+
error
|
|
46
|
+
});
|
|
47
|
+
throw new Error(error);
|
|
48
|
+
}
|
|
49
|
+
const path = `./fixtures/${url.host}${url.pathname}.json`;
|
|
50
|
+
let document;
|
|
51
|
+
try {
|
|
52
|
+
document = (await import(path, { with: { type: "json" } })).default;
|
|
53
|
+
} catch (error) {
|
|
54
|
+
logger.error("Failed to read fixture file {path}: {error}", {
|
|
55
|
+
path,
|
|
56
|
+
error
|
|
57
|
+
});
|
|
58
|
+
throw error;
|
|
59
|
+
}
|
|
60
|
+
return {
|
|
61
|
+
contextUrl: null,
|
|
62
|
+
document,
|
|
63
|
+
documentUrl: resource
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
//#endregion
|
|
68
|
+
export { mockDocumentLoader };
|
|
@@ -10,7 +10,7 @@ import { isIP } from "node:net";
|
|
|
10
10
|
|
|
11
11
|
//#region deno.json
|
|
12
12
|
var name = "@fedify/fedify";
|
|
13
|
-
var version = "1.8.1-pr.
|
|
13
|
+
var version = "1.8.1-pr.329.1209+851f9e22";
|
|
14
14
|
var license = "MIT";
|
|
15
15
|
var exports = {
|
|
16
16
|
".": "./mod.ts",
|
|
@@ -19,7 +19,6 @@ var exports = {
|
|
|
19
19
|
"./nodeinfo": "./nodeinfo/mod.ts",
|
|
20
20
|
"./runtime": "./runtime/mod.ts",
|
|
21
21
|
"./sig": "./sig/mod.ts",
|
|
22
|
-
"./testing": "./testing/mod.ts",
|
|
23
22
|
"./vocab": "./vocab/mod.ts",
|
|
24
23
|
"./webfinger": "./webfinger/mod.ts",
|
|
25
24
|
"./x/cfworkers": "./x/cfworkers.ts",
|