@fedify/fedify 2.0.0-pr.469.1873 → 2.0.0-pr.474.1879

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.
Files changed (122) hide show
  1. package/dist/{actor-Bo3uuvwH.js → actor-BYv3E3MI.js} +185 -185
  2. package/dist/{actor-DoaVs0vL.cjs → actor-CjcnBLTk.cjs} +185 -185
  3. package/dist/{actor-DhFfLv7K.js → actor-DM_mczcz.js} +1 -1
  4. package/dist/{builder-DFaO3_4-.js → builder-CpW45hts.js} +3 -3
  5. package/dist/compat/mod.d.cts +2 -3
  6. package/dist/compat/mod.d.ts +2 -3
  7. package/dist/compat/transformers.test.js +14 -14
  8. package/dist/{context-DG0huGW-.d.ts → context-DXV-2IZN.d.ts} +146 -3
  9. package/dist/{context-DJ8aSy2Q.d.cts → context-Nt2rAqjj.d.cts} +146 -3
  10. package/dist/{docloader-B1AZ1LMA.js → docloader-DPQnUMPZ.js} +2 -2
  11. package/dist/{esm-CbckHird.js → esm-CHBTY23R.js} +1 -1
  12. package/dist/federation/builder.test.js +4 -4
  13. package/dist/federation/collection.test.js +2 -2
  14. package/dist/federation/handler.test.js +15 -15
  15. package/dist/federation/handler_requirehttpsig.test.js +138 -0
  16. package/dist/federation/idempotency.test.js +15 -15
  17. package/dist/federation/inbox.test.js +3 -3
  18. package/dist/federation/keycache.test.js +3 -3
  19. package/dist/federation/kv.test.js +2 -2
  20. package/dist/federation/middleware.test.js +16 -16
  21. package/dist/federation/mod.cjs +7 -7
  22. package/dist/federation/mod.d.cts +2 -3
  23. package/dist/federation/mod.d.ts +2 -3
  24. package/dist/federation/mod.js +7 -7
  25. package/dist/federation/mq.test.js +6 -4
  26. package/dist/federation/negotiation.test.js +2 -2
  27. package/dist/federation/retry.test.js +2 -2
  28. package/dist/federation/router.test.js +2 -2
  29. package/dist/federation/send.test.js +9 -9
  30. package/dist/{http-D27ZccIJ.cjs → http-B1cyhAOR.cjs} +2 -2
  31. package/dist/{http-D8SvAGVC.js → http-CNbh6Bgj.js} +2 -2
  32. package/dist/{http-nnaaa9xj.js → http-Di-WAayg.js} +2 -2
  33. package/dist/{inbox-C5M1_a0k.js → inbox-CKpjNIIw.js} +1 -1
  34. package/dist/{key-bc3A8THw.js → key-Bm6xoWJ9.js} +2 -2
  35. package/dist/{keycache-CpTjHRpy.js → keycache-BoIUmk-X.js} +1 -1
  36. package/dist/{keys-D6W2Pnoh.js → keys-BJSEmAMh.js} +1 -1
  37. package/dist/{kv-cache-B_RVzls5.js → kv-cache-BCfbzWvV.js} +1 -1
  38. package/dist/{kv-cache-CZcZLaEo.cjs → kv-cache-ugHk-g8V.cjs} +1 -1
  39. package/dist/{ld-D5Vg307g.js → ld-CFrblqOy.js} +2 -2
  40. package/dist/{lookup-DO7ZeFb2.cjs → lookup-BKHMnItE.cjs} +2 -7
  41. package/dist/{lookup-BBrk-_5k.js → lookup-CjRKAy5i.js} +186 -191
  42. package/dist/{lookup-BXY5QJif.js → lookup-CovW5HO7.js} +2 -7
  43. package/dist/{middleware-CU0RJROn.js → middleware-BCCuNXoU.js} +17 -15
  44. package/dist/middleware-CaQFohcx.js +26 -0
  45. package/dist/middleware-CqJTYvui.cjs +15 -0
  46. package/dist/{middleware-RgDZByG7.js → middleware-DFP98BrZ.js} +13 -11
  47. package/dist/middleware-cA6uI21b.js +15 -0
  48. package/dist/{middleware-Dy7xPuu-.cjs → middleware-fxZRXc2R.cjs} +13 -11
  49. package/dist/{mod-DJcZDvjA.d.cts → mod-CKRSFzK_.d.cts} +1 -1
  50. package/dist/{mod-BoHnwOCs.d.ts → mod-C_6Uxusd.d.ts} +1 -1
  51. package/dist/mod.cjs +7 -7
  52. package/dist/mod.d.cts +5 -6
  53. package/dist/mod.d.ts +5 -6
  54. package/dist/mod.js +7 -7
  55. package/dist/nodeinfo/client.test.js +3 -3
  56. package/dist/nodeinfo/handler.test.js +14 -14
  57. package/dist/nodeinfo/mod.d.cts +1 -1
  58. package/dist/nodeinfo/mod.d.ts +1 -1
  59. package/dist/nodeinfo/types.test.js +2 -2
  60. package/dist/{owner-DSDpCSms.js → owner-8cgMngcR.js} +2 -2
  61. package/dist/{proof-Bvu8zaM1.js → proof-BbhNICOW.js} +2 -2
  62. package/dist/{proof-C1-VSUNW.cjs → proof-C3woq5fl.cjs} +3 -3
  63. package/dist/{proof-4L3D-iT4.js → proof-OnfETSbB.js} +3 -3
  64. package/dist/{send-Cr3PSs0N.js → send-zlaQ6fqY.js} +2 -2
  65. package/dist/sig/http.test.js +7 -7
  66. package/dist/sig/key.test.js +5 -5
  67. package/dist/sig/ld.test.js +6 -6
  68. package/dist/sig/mod.cjs +4 -4
  69. package/dist/sig/mod.d.cts +1 -1
  70. package/dist/sig/mod.d.ts +1 -1
  71. package/dist/sig/mod.js +4 -4
  72. package/dist/sig/owner.test.js +6 -6
  73. package/dist/sig/proof.test.js +6 -6
  74. package/dist/testing/docloader.test.js +2 -2
  75. package/dist/testing/mod.d.ts +6 -0
  76. package/dist/testing/mod.js +2 -2
  77. package/dist/{testing-Bw9AfLxQ.js → testing-DHsP4t6k.js} +1 -1
  78. package/dist/utils/docloader.test.js +8 -8
  79. package/dist/utils/kv-cache.test.js +2 -2
  80. package/dist/utils/mod.cjs +4 -4
  81. package/dist/utils/mod.d.cts +1 -1
  82. package/dist/utils/mod.d.ts +1 -1
  83. package/dist/utils/mod.js +4 -4
  84. package/dist/vocab/actor.test.js +4 -4
  85. package/dist/vocab/lookup.test.js +3 -3
  86. package/dist/vocab/mod.cjs +3 -3
  87. package/dist/vocab/mod.js +3 -3
  88. package/dist/vocab/type.test.js +2 -2
  89. package/dist/vocab/vocab.test.js +3 -3
  90. package/dist/{vocab-B74bq08l.js → vocab-DMGCHMXF.js} +2 -2
  91. package/dist/{vocab-HJLl6-1F.cjs → vocab-YXPM77QO.cjs} +2 -2
  92. package/dist/webfinger/handler.test.js +14 -14
  93. package/dist/webfinger/lookup.test.js +3 -3
  94. package/dist/webfinger/mod.cjs +1 -1
  95. package/dist/webfinger/mod.js +1 -1
  96. package/package.json +3 -34
  97. package/dist/denokv-CCssOzMJ.js +0 -57
  98. package/dist/middleware-BU2XnCCI.js +0 -15
  99. package/dist/middleware-D4qQ6MLq.cjs +0 -15
  100. package/dist/middleware-DEu9Xuza.js +0 -26
  101. package/dist/mq-CUKlBw08.d.ts +0 -143
  102. package/dist/mq-DcJPkXD5.d.cts +0 -140
  103. package/dist/x/cfworkers.cjs +0 -100
  104. package/dist/x/cfworkers.d.cts +0 -59
  105. package/dist/x/cfworkers.d.ts +0 -61
  106. package/dist/x/cfworkers.js +0 -98
  107. package/dist/x/cfworkers.test.js +0 -177
  108. package/dist/x/hono.cjs +0 -61
  109. package/dist/x/hono.d.cts +0 -53
  110. package/dist/x/hono.d.ts +0 -55
  111. package/dist/x/hono.js +0 -60
  112. package/dist/x/sveltekit.cjs +0 -69
  113. package/dist/x/sveltekit.d.cts +0 -45
  114. package/dist/x/sveltekit.d.ts +0 -47
  115. package/dist/x/sveltekit.js +0 -68
  116. /package/dist/{x/cfworkers.test.d.ts → federation/handler_requirehttpsig.test.d.ts} +0 -0
  117. /package/dist/{mod-C2tOeRkN.d.cts → mod-CcDPcLJW.d.cts} +0 -0
  118. /package/dist/{mod-B2iOw50L.d.ts → mod-D5Z2tISD.d.ts} +0 -0
  119. /package/dist/{mod-0noXw66R.d.cts → mod-DMpuiKXi.d.cts} +0 -0
  120. /package/dist/{mod-DgdBYYa0.d.cts → mod-DgxG-byT.d.cts} +0 -0
  121. /package/dist/{mod-B9M-8jm2.d.ts → mod-aAE2wOWV.d.ts} +0 -0
  122. /package/dist/{mod-xIj-IT58.d.ts → mod-bjzj5QIb.d.ts} +0 -0
@@ -8,7 +8,7 @@ import { UrlError, getUserAgent, validatePublicUrl } from "@fedify/vocab-runtime
8
8
 
9
9
  //#region deno.json
10
10
  var name = "@fedify/fedify";
11
- var version = "2.0.0-pr.469.1873+ebbd8642";
11
+ var version = "2.0.0-pr.474.1879+be9e2989";
12
12
  var license = "MIT";
13
13
  var exports = {
14
14
  ".": "./src/mod.ts",
@@ -19,12 +19,7 @@ var exports = {
19
19
  "./testing": "./src/testing/mod.ts",
20
20
  "./vocab": "./src/vocab/mod.ts",
21
21
  "./utils": "./src/utils/mod.ts",
22
- "./webfinger": "./src/webfinger/mod.ts",
23
- "./x/cfworkers": "./src/x/cfworkers.ts",
24
- "./x/denokv": "./src/x/denokv.ts",
25
- "./x/fresh": "./src/x/fresh.ts",
26
- "./x/hono": "./src/x/hono.ts",
27
- "./x/sveltekit": "./src/x/sveltekit.ts"
22
+ "./webfinger": "./src/webfinger/mod.ts"
28
23
  };
29
24
  var imports = {
30
25
  "@multiformats/base-x": "npm:@multiformats/base-x@^4.0.1",
@@ -3,23 +3,23 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, Collection, CollectionPage, CryptographicKey, Link, Multikey, Object as Object$1, OrderedCollection, OrderedCollectionPage, RouterError, deno_default, getTypeId, lookupObject, lookupWebFinger, traverseCollection } from "./lookup-BBrk-_5k.js";
6
+ import { Activity, Collection, CollectionPage, CryptographicKey, Link, Multikey, Object as Object$1, OrderedCollection, OrderedCollectionPage, RouterError, deno_default, getTypeId, lookupObject, lookupWebFinger, traverseCollection } from "./lookup-CjRKAy5i.js";
7
7
  import { getNodeInfo } from "./client-pY7-3icS.js";
8
8
  import { nodeInfoToJson } from "./types-C2XVl6gj.js";
9
- import { exportJwk, importJwk, validateCryptoKey } from "./key-bc3A8THw.js";
10
- import { verifyRequest } from "./http-D8SvAGVC.js";
11
- import { detachSignature, hasSignature, signJsonLd, verifyJsonLd } from "./ld-D5Vg307g.js";
12
- import { doesActorOwnKey, getKeyOwner } from "./owner-DSDpCSms.js";
13
- import { signObject, verifyObject } from "./proof-Bvu8zaM1.js";
14
- import { getAuthenticatedDocumentLoader } from "./docloader-B1AZ1LMA.js";
9
+ import { exportJwk, importJwk, validateCryptoKey } from "./key-Bm6xoWJ9.js";
10
+ import { verifyRequest } from "./http-CNbh6Bgj.js";
11
+ import { detachSignature, hasSignature, signJsonLd, verifyJsonLd } from "./ld-CFrblqOy.js";
12
+ import { doesActorOwnKey, getKeyOwner } from "./owner-8cgMngcR.js";
13
+ import { signObject, verifyObject } from "./proof-BbhNICOW.js";
14
+ import { getAuthenticatedDocumentLoader } from "./docloader-DPQnUMPZ.js";
15
15
  import { kvCache } from "./kv-cache-DN9pfMBe.js";
16
- import { routeActivity } from "./inbox-C5M1_a0k.js";
17
- import { FederationBuilderImpl } from "./builder-DFaO3_4-.js";
16
+ import { routeActivity } from "./inbox-CKpjNIIw.js";
17
+ import { FederationBuilderImpl } from "./builder-CpW45hts.js";
18
18
  import { buildCollectionSynchronizationHeader } from "./collection-BzWsN9pB.js";
19
- import { KvKeyCache } from "./keycache-CpTjHRpy.js";
19
+ import { KvKeyCache } from "./keycache-BoIUmk-X.js";
20
20
  import { acceptsJsonLd } from "./negotiation-C4nFufNk.js";
21
21
  import { createExponentialBackoffPolicy } from "./retry-CfF8Gn4d.js";
22
- import { extractInboxes, sendActivity } from "./send-Cr3PSs0N.js";
22
+ import { extractInboxes, sendActivity } from "./send-zlaQ6fqY.js";
23
23
  import { getDocumentLoader } from "@fedify/vocab-runtime";
24
24
  import { getLogger, withContext } from "@logtape/logtape";
25
25
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
@@ -606,7 +606,7 @@ async function handleInbox(request, options) {
606
606
  * @returns A promise that resolves to an HTTP response.
607
607
  */
608
608
  async function handleInboxInternal(request, parameters, span) {
609
- const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider } = parameters;
609
+ const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, requireHttpSignature, tracerProvider } = parameters;
610
610
  const logger$2 = getLogger([
611
611
  "fedify",
612
612
  "federation",
@@ -753,7 +753,8 @@ async function handleInboxInternal(request, parameters, span) {
753
753
  });
754
754
  }
755
755
  let httpSigKey = null;
756
- if (activity == null) {
756
+ const needsHttpSigVerification = activity == null || (requireHttpSignature ?? false);
757
+ if (needsHttpSigVerification) {
757
758
  if (!skipSignatureVerification) {
758
759
  const key = await verifyRequest(request, {
759
760
  contextLoader: ctx.contextLoader,
@@ -776,8 +777,8 @@ async function handleInboxInternal(request, parameters, span) {
776
777
  } else logger$2.debug("HTTP Signatures are verified.", { recipient });
777
778
  httpSigKey = key;
778
779
  }
779
- activity = await Activity.fromJsonLd(jsonWithoutSig, ctx);
780
780
  }
781
+ if (activity == null) activity = await Activity.fromJsonLd(jsonWithoutSig, ctx);
781
782
  if (activity.id != null) span.setAttribute("activitypub.activity.id", activity.id.href);
782
783
  span.setAttribute("activitypub.activity.type", getTypeId(activity).href);
783
784
  if (httpSigKey != null && !await doesActorOwnKey(activity, httpSigKey, ctx)) {
@@ -1959,7 +1960,7 @@ var FederationImpl = class extends FederationBuilderImpl {
1959
1960
  });
1960
1961
  });
1961
1962
  }
1962
- async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, span, tracer }) {
1963
+ async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, requireHttpSignature, span, tracer }) {
1963
1964
  onNotFound ??= notFound;
1964
1965
  onNotAcceptable ??= notAcceptable;
1965
1966
  onUnauthorized ??= unauthorized;
@@ -2056,6 +2057,7 @@ var FederationImpl = class extends FederationBuilderImpl {
2056
2057
  onNotFound,
2057
2058
  signatureTimeWindow: this.signatureTimeWindow,
2058
2059
  skipSignatureVerification: this.skipSignatureVerification,
2060
+ requireHttpSignature,
2059
2061
  tracerProvider: this.tracerProvider,
2060
2062
  idempotencyStrategy: this.idempotencyStrategy
2061
2063
  });
@@ -0,0 +1,26 @@
1
+
2
+ import { Temporal } from "@js-temporal/polyfill";
3
+ import { URLPattern } from "urlpattern-polyfill";
4
+ globalThis.addEventListener = () => {};
5
+
6
+ import "./lookup-CjRKAy5i.js";
7
+ import { ContextImpl, FederationImpl, InboxContextImpl, KvSpecDeterminer, createFederation } from "./middleware-BCCuNXoU.js";
8
+ import "./client-pY7-3icS.js";
9
+ import "./types-C2XVl6gj.js";
10
+ import "./actor-DM_mczcz.js";
11
+ import "./key-Bm6xoWJ9.js";
12
+ import "./http-CNbh6Bgj.js";
13
+ import "./ld-CFrblqOy.js";
14
+ import "./owner-8cgMngcR.js";
15
+ import "./proof-BbhNICOW.js";
16
+ import "./docloader-DPQnUMPZ.js";
17
+ import "./kv-cache-DN9pfMBe.js";
18
+ import "./inbox-CKpjNIIw.js";
19
+ import "./builder-CpW45hts.js";
20
+ import "./collection-BzWsN9pB.js";
21
+ import "./keycache-BoIUmk-X.js";
22
+ import "./negotiation-C4nFufNk.js";
23
+ import "./retry-CfF8Gn4d.js";
24
+ import "./send-zlaQ6fqY.js";
25
+
26
+ export { FederationImpl };
@@ -0,0 +1,15 @@
1
+
2
+ const { Temporal } = require("@js-temporal/polyfill");
3
+ const { URLPattern } = require("urlpattern-polyfill");
4
+
5
+ require('./transformers-CoBS-oFG.cjs');
6
+ require('./lookup-BKHMnItE.cjs');
7
+ require('./actor-CjcnBLTk.cjs');
8
+ const require_middleware = require('./middleware-fxZRXc2R.cjs');
9
+ require('./http-B1cyhAOR.cjs');
10
+ require('./proof-C3woq5fl.cjs');
11
+ require('./types-CWgzGaqk.cjs');
12
+ require('./kv-cache-ugHk-g8V.cjs');
13
+ require('./vocab-YXPM77QO.cjs');
14
+
15
+ exports.FederationImpl = require_middleware.FederationImpl;
@@ -3,13 +3,13 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
5
  import { getDefaultActivityTransformers } from "./transformers-BFT6d7J5.js";
6
- import { deno_default, lookupWebFinger } from "./lookup-BXY5QJif.js";
7
- import { Activity, Collection, CollectionPage, CryptographicKey, Link, Multikey, Object as Object$1, OrderedCollection, OrderedCollectionPage, getTypeId } from "./actor-Bo3uuvwH.js";
8
- import { doubleKnock, exportJwk, importJwk, validateCryptoKey, verifyRequest } from "./http-nnaaa9xj.js";
9
- import { detachSignature, doesActorOwnKey, getKeyOwner, hasSignature, signJsonLd, signObject, verifyJsonLd, verifyObject } from "./proof-4L3D-iT4.js";
6
+ import { deno_default, lookupWebFinger } from "./lookup-CovW5HO7.js";
7
+ import { Activity, Collection, CollectionPage, CryptographicKey, Link, Multikey, Object as Object$1, OrderedCollection, OrderedCollectionPage, getTypeId } from "./actor-BYv3E3MI.js";
8
+ import { doubleKnock, exportJwk, importJwk, validateCryptoKey, verifyRequest } from "./http-Di-WAayg.js";
9
+ import { detachSignature, doesActorOwnKey, getKeyOwner, hasSignature, signJsonLd, signObject, verifyJsonLd, verifyObject } from "./proof-OnfETSbB.js";
10
10
  import { getNodeInfo, nodeInfoToJson } from "./types-BtUjyi5y.js";
11
- import { getAuthenticatedDocumentLoader, kvCache } from "./kv-cache-B_RVzls5.js";
12
- import { lookupObject, traverseCollection } from "./vocab-B74bq08l.js";
11
+ import { getAuthenticatedDocumentLoader, kvCache } from "./kv-cache-BCfbzWvV.js";
12
+ import { lookupObject, traverseCollection } from "./vocab-DMGCHMXF.js";
13
13
  import { getLogger, withContext } from "@logtape/logtape";
14
14
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
15
15
  import { getDocumentLoader } from "@fedify/vocab-runtime";
@@ -338,7 +338,7 @@ var FederationBuilderImpl = class {
338
338
  this.collectionTypeIds = {};
339
339
  }
340
340
  async build(options) {
341
- const { FederationImpl: FederationImpl$1 } = await import("./middleware-BU2XnCCI.js");
341
+ const { FederationImpl: FederationImpl$1 } = await import("./middleware-cA6uI21b.js");
342
342
  const f = new FederationImpl$1(options);
343
343
  const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
344
344
  f.router = this.router.clone();
@@ -1316,7 +1316,7 @@ async function handleInbox(request, options) {
1316
1316
  * @returns A promise that resolves to an HTTP response.
1317
1317
  */
1318
1318
  async function handleInboxInternal(request, parameters, span) {
1319
- const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider } = parameters;
1319
+ const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, requireHttpSignature, tracerProvider } = parameters;
1320
1320
  const logger$1 = getLogger([
1321
1321
  "fedify",
1322
1322
  "federation",
@@ -1463,7 +1463,8 @@ async function handleInboxInternal(request, parameters, span) {
1463
1463
  });
1464
1464
  }
1465
1465
  let httpSigKey = null;
1466
- if (activity == null) {
1466
+ const needsHttpSigVerification = activity == null || (requireHttpSignature ?? false);
1467
+ if (needsHttpSigVerification) {
1467
1468
  if (!skipSignatureVerification) {
1468
1469
  const key = await verifyRequest(request, {
1469
1470
  contextLoader: ctx.contextLoader,
@@ -1486,8 +1487,8 @@ async function handleInboxInternal(request, parameters, span) {
1486
1487
  } else logger$1.debug("HTTP Signatures are verified.", { recipient });
1487
1488
  httpSigKey = key;
1488
1489
  }
1489
- activity = await Activity.fromJsonLd(jsonWithoutSig, ctx);
1490
1490
  }
1491
+ if (activity == null) activity = await Activity.fromJsonLd(jsonWithoutSig, ctx);
1491
1492
  if (activity.id != null) span.setAttribute("activitypub.activity.id", activity.id.href);
1492
1493
  span.setAttribute("activitypub.activity.type", getTypeId(activity).href);
1493
1494
  if (httpSigKey != null && !await doesActorOwnKey(activity, httpSigKey, ctx)) {
@@ -2988,7 +2989,7 @@ var FederationImpl = class extends FederationBuilderImpl {
2988
2989
  });
2989
2990
  });
2990
2991
  }
2991
- async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, span, tracer }) {
2992
+ async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, requireHttpSignature, span, tracer }) {
2992
2993
  onNotFound ??= notFound;
2993
2994
  onNotAcceptable ??= notAcceptable;
2994
2995
  onUnauthorized ??= unauthorized;
@@ -3085,6 +3086,7 @@ var FederationImpl = class extends FederationBuilderImpl {
3085
3086
  onNotFound,
3086
3087
  signatureTimeWindow: this.signatureTimeWindow,
3087
3088
  skipSignatureVerification: this.skipSignatureVerification,
3089
+ requireHttpSignature,
3088
3090
  tracerProvider: this.tracerProvider,
3089
3091
  idempotencyStrategy: this.idempotencyStrategy
3090
3092
  });
@@ -0,0 +1,15 @@
1
+
2
+ import { Temporal } from "@js-temporal/polyfill";
3
+ import { URLPattern } from "urlpattern-polyfill";
4
+
5
+ import "./transformers-BFT6d7J5.js";
6
+ import "./lookup-CovW5HO7.js";
7
+ import "./actor-BYv3E3MI.js";
8
+ import { ContextImpl, FederationImpl, InboxContextImpl, KvSpecDeterminer, createFederation } from "./middleware-DFP98BrZ.js";
9
+ import "./http-Di-WAayg.js";
10
+ import "./proof-OnfETSbB.js";
11
+ import "./types-BtUjyi5y.js";
12
+ import "./kv-cache-BCfbzWvV.js";
13
+ import "./vocab-DMGCHMXF.js";
14
+
15
+ export { FederationImpl };
@@ -4,13 +4,13 @@
4
4
 
5
5
  const require_chunk = require('./chunk-DqRYRqnO.cjs');
6
6
  const require_transformers = require('./transformers-CoBS-oFG.cjs');
7
- const require_lookup = require('./lookup-DO7ZeFb2.cjs');
8
- const require_actor = require('./actor-DoaVs0vL.cjs');
9
- const require_http = require('./http-D27ZccIJ.cjs');
10
- const require_proof = require('./proof-C1-VSUNW.cjs');
7
+ const require_lookup = require('./lookup-BKHMnItE.cjs');
8
+ const require_actor = require('./actor-CjcnBLTk.cjs');
9
+ const require_http = require('./http-B1cyhAOR.cjs');
10
+ const require_proof = require('./proof-C3woq5fl.cjs');
11
11
  const require_types = require('./types-CWgzGaqk.cjs');
12
- const require_kv_cache = require('./kv-cache-CZcZLaEo.cjs');
13
- const require_vocab = require('./vocab-HJLl6-1F.cjs');
12
+ const require_kv_cache = require('./kv-cache-ugHk-g8V.cjs');
13
+ const require_vocab = require('./vocab-YXPM77QO.cjs');
14
14
  const __logtape_logtape = require_chunk.__toESM(require("@logtape/logtape"));
15
15
  const __opentelemetry_api = require_chunk.__toESM(require("@opentelemetry/api"));
16
16
  const __fedify_vocab_runtime = require_chunk.__toESM(require("@fedify/vocab-runtime"));
@@ -339,7 +339,7 @@ var FederationBuilderImpl = class {
339
339
  this.collectionTypeIds = {};
340
340
  }
341
341
  async build(options) {
342
- const { FederationImpl: FederationImpl$1 } = await Promise.resolve().then(() => require("./middleware-D4qQ6MLq.cjs"));
342
+ const { FederationImpl: FederationImpl$1 } = await Promise.resolve().then(() => require("./middleware-CqJTYvui.cjs"));
343
343
  const f = new FederationImpl$1(options);
344
344
  const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
345
345
  f.router = this.router.clone();
@@ -1317,7 +1317,7 @@ async function handleInbox(request, options) {
1317
1317
  * @returns A promise that resolves to an HTTP response.
1318
1318
  */
1319
1319
  async function handleInboxInternal(request, parameters, span) {
1320
- const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider } = parameters;
1320
+ const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, requireHttpSignature, tracerProvider } = parameters;
1321
1321
  const logger$1 = (0, __logtape_logtape.getLogger)([
1322
1322
  "fedify",
1323
1323
  "federation",
@@ -1464,7 +1464,8 @@ async function handleInboxInternal(request, parameters, span) {
1464
1464
  });
1465
1465
  }
1466
1466
  let httpSigKey = null;
1467
- if (activity == null) {
1467
+ const needsHttpSigVerification = activity == null || (requireHttpSignature ?? false);
1468
+ if (needsHttpSigVerification) {
1468
1469
  if (!skipSignatureVerification) {
1469
1470
  const key = await require_http.verifyRequest(request, {
1470
1471
  contextLoader: ctx.contextLoader,
@@ -1487,8 +1488,8 @@ async function handleInboxInternal(request, parameters, span) {
1487
1488
  } else logger$1.debug("HTTP Signatures are verified.", { recipient });
1488
1489
  httpSigKey = key;
1489
1490
  }
1490
- activity = await require_actor.Activity.fromJsonLd(jsonWithoutSig, ctx);
1491
1491
  }
1492
+ if (activity == null) activity = await require_actor.Activity.fromJsonLd(jsonWithoutSig, ctx);
1492
1493
  if (activity.id != null) span.setAttribute("activitypub.activity.id", activity.id.href);
1493
1494
  span.setAttribute("activitypub.activity.type", require_actor.getTypeId(activity).href);
1494
1495
  if (httpSigKey != null && !await require_proof.doesActorOwnKey(activity, httpSigKey, ctx)) {
@@ -2989,7 +2990,7 @@ var FederationImpl = class extends FederationBuilderImpl {
2989
2990
  });
2990
2991
  });
2991
2992
  }
2992
- async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, span, tracer }) {
2993
+ async #fetch(request, { onNotFound, onNotAcceptable, onUnauthorized, contextData, requireHttpSignature, span, tracer }) {
2993
2994
  onNotFound ??= notFound;
2994
2995
  onNotAcceptable ??= notAcceptable;
2995
2996
  onUnauthorized ??= unauthorized;
@@ -3086,6 +3087,7 @@ var FederationImpl = class extends FederationBuilderImpl {
3086
3087
  onNotFound,
3087
3088
  signatureTimeWindow: this.signatureTimeWindow,
3088
3089
  skipSignatureVerification: this.skipSignatureVerification,
3090
+ requireHttpSignature,
3089
3091
  tracerProvider: this.tracerProvider,
3090
3092
  idempotencyStrategy: this.idempotencyStrategy
3091
3093
  });
@@ -1,5 +1,5 @@
1
1
  import { Activity } from "./vocab-CeDBzu-f.cjs";
2
- import { ActivityTransformer, Context } from "./context-DJ8aSy2Q.cjs";
2
+ import { ActivityTransformer, Context } from "./context-Nt2rAqjj.cjs";
3
3
 
4
4
  //#region src/compat/transformers.d.ts
5
5
 
@@ -1,7 +1,7 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
3
  import { Activity } from "./vocab-BCWe1Ih5.js";
4
- import { ActivityTransformer, Context } from "./context-DG0huGW-.js";
4
+ import { ActivityTransformer, Context } from "./context-DXV-2IZN.js";
5
5
 
6
6
  //#region src/compat/transformers.d.ts
7
7
 
package/dist/mod.cjs CHANGED
@@ -4,15 +4,15 @@
4
4
 
5
5
  const require_transformers = require('./transformers-CoBS-oFG.cjs');
6
6
  require('./compat-DmDDELst.cjs');
7
- const require_lookup = require('./lookup-DO7ZeFb2.cjs');
8
- const require_actor = require('./actor-DoaVs0vL.cjs');
9
- const require_middleware = require('./middleware-Dy7xPuu-.cjs');
10
- const require_http = require('./http-D27ZccIJ.cjs');
11
- const require_proof = require('./proof-C1-VSUNW.cjs');
7
+ const require_lookup = require('./lookup-BKHMnItE.cjs');
8
+ const require_actor = require('./actor-CjcnBLTk.cjs');
9
+ const require_middleware = require('./middleware-fxZRXc2R.cjs');
10
+ const require_http = require('./http-B1cyhAOR.cjs');
11
+ const require_proof = require('./proof-C3woq5fl.cjs');
12
12
  const require_federation = require('./federation-CRpdnOMS.cjs');
13
13
  const require_types = require('./types-CWgzGaqk.cjs');
14
- const require_kv_cache = require('./kv-cache-CZcZLaEo.cjs');
15
- const require_vocab = require('./vocab-HJLl6-1F.cjs');
14
+ const require_kv_cache = require('./kv-cache-ugHk-g8V.cjs');
15
+ const require_vocab = require('./vocab-YXPM77QO.cjs');
16
16
  require('./nodeinfo-CdN0rEnZ.cjs');
17
17
  require('./sig-YYj5tCnr.cjs');
18
18
  require('./utils-DyRU1gdZ.cjs');
package/dist/mod.d.cts CHANGED
@@ -5,12 +5,11 @@ import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessage
5
5
  import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-B4HbyP8s.cjs";
6
6
  import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-BxRCHTz-.cjs";
7
7
  import { ResourceDescriptor, lookupWebFinger } from "./mod-C58MZ7Wx.cjs";
8
- import { ActivityTransformer, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, AuthorizePredicate, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, ConstructorWithTypeId, Context, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, ForwardActivityOptions, GetSignedKeyOptions, IdempotencyKeyCallback, IdempotencyStrategy, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-DJ8aSy2Q.cjs";
8
+ import { ActivityTransformer, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, AuthorizePredicate, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, ConstructorWithTypeId, Context, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, ForwardActivityOptions, GetSignedKeyOptions, IdempotencyKeyCallback, IdempotencyStrategy, InProcessMessageQueue, InProcessMessageQueueOptions, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParallelMessageQueue, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-Nt2rAqjj.cjs";
9
9
  import { KvKey, KvStore, KvStoreSetOptions, MemoryKvStore } from "./kv-Bxr0Q87_.cjs";
10
- import { InProcessMessageQueue, InProcessMessageQueueOptions, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, ParallelMessageQueue } from "./mq-DcJPkXD5.cjs";
11
- import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-DJcZDvjA.cjs";
10
+ import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-CKRSFzK_.cjs";
11
+ import "./mod-CcDPcLJW.cjs";
12
12
  import "./mod-B-hUPT2N.cjs";
13
- import "./mod-C2tOeRkN.cjs";
14
- import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-DgdBYYa0.cjs";
15
- import { getAuthenticatedDocumentLoader, kvCache } from "./mod-0noXw66R.cjs";
13
+ import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-DgxG-byT.cjs";
14
+ import { getAuthenticatedDocumentLoader, kvCache } from "./mod-DMpuiKXi.cjs";
16
15
  export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthorizePredicate, Block, ChatMessage, Collection, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, CollectionPage, ConstructorWithTypeId, Context, Create, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CreateProofOptions, CreateSignatureOptions, CryptographicKey, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, DataIntegrityProof, Delete, DidService, Dislike, Document, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, IdempotencyKeyCallback, IdempotencyStrategy, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvKey, KvStore, KvStoreSetOptions, Leave, Like, Link, Listen, LookupObjectOptions, MemoryKvStore, Mention, Message, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, Move, Multikey, NodeInfo, NodeInfoDispatcher, NormalizeActorHandleOptions, Note, Object$1 as Object, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, Offer, OrderedCollection, OrderedCollectionPage, Organization, OutboundService, OutboxErrorHandler, PUBLIC_COLLECTION, Page, PageItems, ParallelMessageQueue, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, Service, Services, SharedInboxKeyDispatcher, SignJsonLdOptions, SignObjectOptions, SignRequestOptions, Software, Source, TentativeAccept, TentativeReject, Tombstone, Travel, TraverseCollectionOptions, Undo, Update, Usage, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifyRequestOptions, VerifySignatureOptions, Video, View, WebFingerLinksDispatcher, actorDehydrator, attachSignature, autoIdAssigner, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, createProof, createSignature, detachSignature, digest, doesActorOwnKey, exportJwk, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getKeyOwner, getNodeInfo, getTypeId, importJwk, isActor, isFediverseHandle, kvCache, lookupObject, lookupWebFinger, nodeInfoToJson, normalizeActorHandle, parseFediverseHandle, parseNodeInfo, respondWithObject, respondWithObjectIfAcceptable, signJsonLd, signObject, signRequest, toAcctUrl, traverseCollection, verifyJsonLd, verifyObject, verifyProof, verifyRequest, verifySignature };
package/dist/mod.d.ts CHANGED
@@ -7,12 +7,11 @@ import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessage
7
7
  import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-kQRGVXG1.js";
8
8
  import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-BlVovdcy.js";
9
9
  import { ResourceDescriptor, lookupWebFinger } from "./mod-Ds0mpFZU.js";
10
- import { ActivityTransformer, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, AuthorizePredicate, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, ConstructorWithTypeId, Context, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, ForwardActivityOptions, GetSignedKeyOptions, IdempotencyKeyCallback, IdempotencyStrategy, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-DG0huGW-.js";
10
+ import { ActivityTransformer, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, AuthorizePredicate, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, ConstructorWithTypeId, Context, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, ForwardActivityOptions, GetSignedKeyOptions, IdempotencyKeyCallback, IdempotencyStrategy, InProcessMessageQueue, InProcessMessageQueueOptions, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParallelMessageQueue, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-DXV-2IZN.js";
11
11
  import { KvKey, KvStore, KvStoreSetOptions, MemoryKvStore } from "./kv-BKNZ-Tb-.js";
12
- import { InProcessMessageQueue, InProcessMessageQueueOptions, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, ParallelMessageQueue } from "./mq-CUKlBw08.js";
13
- import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-BoHnwOCs.js";
12
+ import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-C_6Uxusd.js";
13
+ import "./mod-bjzj5QIb.js";
14
14
  import "./mod-CVgZgliM.js";
15
- import "./mod-xIj-IT58.js";
16
- import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-B2iOw50L.js";
17
- import { getAuthenticatedDocumentLoader, kvCache } from "./mod-B9M-8jm2.js";
15
+ import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-D5Z2tISD.js";
16
+ import { getAuthenticatedDocumentLoader, kvCache } from "./mod-aAE2wOWV.js";
18
17
  export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthorizePredicate, Block, ChatMessage, Collection, CollectionCallbackSetters, CollectionCounter, CollectionCursor, CollectionDispatcher, CollectionPage, ConstructorWithTypeId, Context, Create, CreateExponentialBackoffPolicyOptions, CreateFederationOptions, CreateProofOptions, CreateSignatureOptions, CryptographicKey, CustomCollectionCallbackSetters, CustomCollectionCounter, CustomCollectionCursor, CustomCollectionDispatcher, DataIntegrityProof, Delete, DidService, Dislike, Document, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, IdempotencyKeyCallback, IdempotencyStrategy, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvKey, KvStore, KvStoreSetOptions, Leave, Like, Link, Listen, LookupObjectOptions, MemoryKvStore, Mention, Message, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, Move, Multikey, NodeInfo, NodeInfoDispatcher, NormalizeActorHandleOptions, Note, Object$1 as Object, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, Offer, OrderedCollection, OrderedCollectionPage, Organization, OutboundService, OutboxErrorHandler, PUBLIC_COLLECTION, Page, PageItems, ParallelMessageQueue, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, Rfc6570Expression, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, Service, Services, SharedInboxKeyDispatcher, SignJsonLdOptions, SignObjectOptions, SignRequestOptions, Software, Source, TentativeAccept, TentativeReject, Tombstone, Travel, TraverseCollectionOptions, Undo, Update, Usage, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifyRequestOptions, VerifySignatureOptions, Video, View, WebFingerLinksDispatcher, actorDehydrator, attachSignature, autoIdAssigner, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, createProof, createSignature, detachSignature, digest, doesActorOwnKey, exportJwk, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getKeyOwner, getNodeInfo, getTypeId, importJwk, isActor, isFediverseHandle, kvCache, lookupObject, lookupWebFinger, nodeInfoToJson, normalizeActorHandle, parseFediverseHandle, parseNodeInfo, respondWithObject, respondWithObjectIfAcceptable, signJsonLd, signObject, signRequest, toAcctUrl, traverseCollection, verifyJsonLd, verifyObject, verifyProof, verifyRequest, verifySignature };
package/dist/mod.js CHANGED
@@ -4,15 +4,15 @@
4
4
 
5
5
  import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./transformers-BFT6d7J5.js";
6
6
  import "./compat-nxUqe4Z-.js";
7
- import { lookupWebFinger } from "./lookup-BXY5QJif.js";
8
- import { Accept, Activity, Add, Announce, Application, Arrive, Article, Audio, Block, ChatMessage, Collection, CollectionPage, Create, CryptographicKey, DataIntegrityProof, Delete, DidService, Dislike, Document, Emoji, EmojiReact, Endpoints, Event, Export, Flag, Follow, Group, Hashtag, Ignore, Image, IntransitiveActivity, Invite, Join, Leave, Like, Link, Listen, Mention, Move, Multikey, Note, Object as Object$1, Offer, OrderedCollection, OrderedCollectionPage, Organization, Page, Person, Place, Profile, PropertyValue, Question, Read, Reject, Relationship, Remove, Service, Source, TentativeAccept, TentativeReject, Tombstone, Travel, Undo, Update, Video, View, getActorClassByTypeName, getActorHandle, getActorTypeName, getTypeId, isActor, normalizeActorHandle } from "./actor-Bo3uuvwH.js";
9
- import { Router, RouterError, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./middleware-RgDZByG7.js";
10
- import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-nnaaa9xj.js";
11
- import { attachSignature, createProof, createSignature, detachSignature, doesActorOwnKey, getKeyOwner, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./proof-4L3D-iT4.js";
7
+ import { lookupWebFinger } from "./lookup-CovW5HO7.js";
8
+ import { Accept, Activity, Add, Announce, Application, Arrive, Article, Audio, Block, ChatMessage, Collection, CollectionPage, Create, CryptographicKey, DataIntegrityProof, Delete, DidService, Dislike, Document, Emoji, EmojiReact, Endpoints, Event, Export, Flag, Follow, Group, Hashtag, Ignore, Image, IntransitiveActivity, Invite, Join, Leave, Like, Link, Listen, Mention, Move, Multikey, Note, Object as Object$1, Offer, OrderedCollection, OrderedCollectionPage, Organization, Page, Person, Place, Profile, PropertyValue, Question, Read, Reject, Relationship, Remove, Service, Source, TentativeAccept, TentativeReject, Tombstone, Travel, Undo, Update, Video, View, getActorClassByTypeName, getActorHandle, getActorTypeName, getTypeId, isActor, normalizeActorHandle } from "./actor-BYv3E3MI.js";
9
+ import { Router, RouterError, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./middleware-DFP98BrZ.js";
10
+ import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-Di-WAayg.js";
11
+ import { attachSignature, createProof, createSignature, detachSignature, doesActorOwnKey, getKeyOwner, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./proof-OnfETSbB.js";
12
12
  import { InProcessMessageQueue, MemoryKvStore, ParallelMessageQueue } from "./federation-jcR8-ZxP.js";
13
13
  import { getNodeInfo, nodeInfoToJson, parseNodeInfo } from "./types-BtUjyi5y.js";
14
- import { getAuthenticatedDocumentLoader, kvCache } from "./kv-cache-B_RVzls5.js";
15
- import { PUBLIC_COLLECTION, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./vocab-B74bq08l.js";
14
+ import { getAuthenticatedDocumentLoader, kvCache } from "./kv-cache-BCfbzWvV.js";
15
+ import { PUBLIC_COLLECTION, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./vocab-DMGCHMXF.js";
16
16
  import "./nodeinfo-BnthBobC.js";
17
17
  import "./sig-C34-oHBl.js";
18
18
  import "./utils-D-Va7aXC.js";
@@ -3,17 +3,17 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../lookup-BBrk-_5k.js";
6
+ import "../lookup-CjRKAy5i.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { getNodeInfo, parseInboundService, parseNodeInfo, parseOutboundService, parseProtocol, parseServices, parseSoftware, parseUsage } from "../client-pY7-3icS.js";
11
- import { test } from "../testing-Bw9AfLxQ.js";
11
+ import { test } from "../testing-DHsP4t6k.js";
12
12
  import "../std__assert-DWivtrGR.js";
13
13
  import "../assert_rejects-Ce45JcFg.js";
14
14
  import "../assert_throws-BNXdRGWP.js";
15
15
  import "../assert_not_equals-C80BG-_5.js";
16
- import { esm_default } from "../esm-CbckHird.js";
16
+ import { esm_default } from "../esm-CHBTY23R.js";
17
17
 
18
18
  //#region src/nodeinfo/client.test.ts
19
19
  test("getNodeInfo()", async (t) => {
@@ -3,30 +3,30 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../lookup-BBrk-_5k.js";
6
+ import "../lookup-CjRKAy5i.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import { createFederation, handleNodeInfo, handleNodeInfoJrd } from "../middleware-CU0RJROn.js";
11
+ import { createFederation, handleNodeInfo, handleNodeInfoJrd } from "../middleware-BCCuNXoU.js";
12
12
  import "../client-pY7-3icS.js";
13
13
  import "../types-C2XVl6gj.js";
14
- import "../actor-DhFfLv7K.js";
15
- import "../key-bc3A8THw.js";
16
- import "../http-D8SvAGVC.js";
17
- import "../ld-D5Vg307g.js";
18
- import "../owner-DSDpCSms.js";
19
- import "../proof-Bvu8zaM1.js";
20
- import "../docloader-B1AZ1LMA.js";
14
+ import "../actor-DM_mczcz.js";
15
+ import "../key-Bm6xoWJ9.js";
16
+ import "../http-CNbh6Bgj.js";
17
+ import "../ld-CFrblqOy.js";
18
+ import "../owner-8cgMngcR.js";
19
+ import "../proof-BbhNICOW.js";
20
+ import "../docloader-DPQnUMPZ.js";
21
21
  import "../kv-cache-DN9pfMBe.js";
22
- import "../inbox-C5M1_a0k.js";
23
- import "../builder-DFaO3_4-.js";
22
+ import "../inbox-CKpjNIIw.js";
23
+ import "../builder-CpW45hts.js";
24
24
  import "../collection-BzWsN9pB.js";
25
- import "../keycache-CpTjHRpy.js";
25
+ import "../keycache-BoIUmk-X.js";
26
26
  import "../negotiation-C4nFufNk.js";
27
27
  import "../retry-CfF8Gn4d.js";
28
- import "../send-Cr3PSs0N.js";
29
- import { createRequestContext, test } from "../testing-Bw9AfLxQ.js";
28
+ import "../send-zlaQ6fqY.js";
29
+ import { createRequestContext, test } from "../testing-DHsP4t6k.js";
30
30
  import "../std__assert-DWivtrGR.js";
31
31
  import "../assert_rejects-Ce45JcFg.js";
32
32
  import "../assert_throws-BNXdRGWP.js";
@@ -1,3 +1,3 @@
1
1
  import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "../client-94iWEfQa.cjs";
2
- import "../mod-C2tOeRkN.cjs";
2
+ import "../mod-B-hUPT2N.cjs";
3
3
  export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo };
@@ -1,5 +1,5 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
3
  import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "../client-BsGzbnV-.js";
4
- import "../mod-xIj-IT58.js";
4
+ import "../mod-CVgZgliM.js";
5
5
  export { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo };
@@ -3,12 +3,12 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../lookup-BBrk-_5k.js";
6
+ import "../lookup-CjRKAy5i.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { nodeInfoToJson } from "../types-C2XVl6gj.js";
11
- import { test } from "../testing-Bw9AfLxQ.js";
11
+ import { test } from "../testing-DHsP4t6k.js";
12
12
  import "../std__assert-DWivtrGR.js";
13
13
  import "../assert_rejects-Ce45JcFg.js";
14
14
  import { assertThrows } from "../assert_throws-BNXdRGWP.js";
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, Object as Object$1 } from "./lookup-BBrk-_5k.js";
7
- import { isActor } from "./actor-DhFfLv7K.js";
6
+ import { CryptographicKey, Object as Object$1 } from "./lookup-CjRKAy5i.js";
7
+ import { isActor } from "./actor-DM_mczcz.js";
8
8
  import { getDocumentLoader } from "@fedify/vocab-runtime";
9
9
  import { trace } from "@opentelemetry/api";
10
10
 
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, DataIntegrityProof, Multikey, deno_default, getTypeId } from "./lookup-BBrk-_5k.js";
7
- import { fetchKey, validateCryptoKey } from "./key-bc3A8THw.js";
6
+ import { Activity, DataIntegrityProof, Multikey, deno_default, getTypeId } from "./lookup-CjRKAy5i.js";
7
+ import { fetchKey, validateCryptoKey } from "./key-Bm6xoWJ9.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanStatusCode, trace } from "@opentelemetry/api";
10
10
  import { encodeHex } from "byte-encodings/hex";
@@ -3,9 +3,9 @@
3
3
  const { URLPattern } = require("urlpattern-polyfill");
4
4
 
5
5
  const require_chunk = require('./chunk-DqRYRqnO.cjs');
6
- const require_lookup = require('./lookup-DO7ZeFb2.cjs');
7
- const require_actor = require('./actor-DoaVs0vL.cjs');
8
- const require_http = require('./http-D27ZccIJ.cjs');
6
+ const require_lookup = require('./lookup-BKHMnItE.cjs');
7
+ const require_actor = require('./actor-CjcnBLTk.cjs');
8
+ const require_http = require('./http-B1cyhAOR.cjs');
9
9
  const __logtape_logtape = require_chunk.__toESM(require("@logtape/logtape"));
10
10
  const __opentelemetry_api = require_chunk.__toESM(require("@opentelemetry/api"));
11
11
  const jsonld = require_chunk.__toESM(require("jsonld"));
@@ -2,9 +2,9 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import { deno_default } from "./lookup-BXY5QJif.js";
6
- import { Activity, CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1, getTypeId, isActor } from "./actor-Bo3uuvwH.js";
7
- import { fetchKey, validateCryptoKey } from "./http-nnaaa9xj.js";
5
+ import { deno_default } from "./lookup-CovW5HO7.js";
6
+ import { Activity, CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1, getTypeId, isActor } from "./actor-BYv3E3MI.js";
7
+ import { fetchKey, validateCryptoKey } from "./http-Di-WAayg.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanStatusCode, trace } from "@opentelemetry/api";
10
10
  import jsonld from "jsonld";
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { deno_default } from "./lookup-BBrk-_5k.js";
7
- import { doubleKnock } from "./http-D8SvAGVC.js";
6
+ import { deno_default } from "./lookup-CjRKAy5i.js";
7
+ import { doubleKnock } from "./http-CNbh6Bgj.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
10
10