@fedify/fedify 2.0.0-pr.435.1673 → 2.0.0-pr.445.1694

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 (138) hide show
  1. package/dist/{actor-CNUje03O.cjs → actor-CwZ2m5rG.cjs} +7263 -2440
  2. package/dist/{actor-DMgu-ZjT.d.cts → actor-D6K058Tb.d.cts} +1 -1
  3. package/dist/{actor-BxAu0qet.js → actor-D8gCwLzv.js} +1 -1
  4. package/dist/{actor-m_ko-86v.js → actor-DoMcqXsW.js} +7263 -2440
  5. package/dist/{actor-C22bXuuC.d.ts → actor-T6RyhRgk.d.ts} +1 -1
  6. package/dist/{authdocloader-nRFL9luh.js → authdocloader-Cv_qEn1G.js} +3 -3
  7. package/dist/{authdocloader-Chl2nuOI.js → authdocloader-DYTNpaMA.js} +3 -3
  8. package/dist/{authdocloader-D_3mtAjX.cjs → authdocloader-bsmVF6eO.cjs} +3 -3
  9. package/dist/{builder-C8Of4dPy.js → builder-1_skw-d2.js} +10 -4
  10. package/dist/{client-yGBH5stP.js → client-D5CBsPrc.js} +1 -1
  11. package/dist/compat/mod.d.cts +7 -7
  12. package/dist/compat/mod.d.ts +7 -7
  13. package/dist/compat/transformers.test.js +16 -16
  14. package/dist/{context-CQsAT7xk.d.ts → context-DBKpNBnc.d.ts} +67 -12
  15. package/dist/{context-tVOQ76fi.d.cts → context-DiqjMRef.d.cts} +67 -12
  16. package/dist/{docloader-SZjTrl6Z.cjs → docloader-CYnQRIXv.cjs} +1 -1
  17. package/dist/{docloader-_WdHTWQR.js → docloader-Czl3xV10.js} +1 -1
  18. package/dist/{esm-e_G_xo95.js → esm-Dl5T1RNE.js} +1 -1
  19. package/dist/federation/builder.test.js +5 -5
  20. package/dist/federation/collection.test.js +3 -3
  21. package/dist/federation/handler.test.js +17 -17
  22. package/dist/federation/idempotency.test.d.ts +3 -0
  23. package/dist/federation/idempotency.test.js +202 -0
  24. package/dist/federation/inbox.test.js +4 -4
  25. package/dist/federation/keycache.test.js +4 -4
  26. package/dist/federation/kv.test.js +3 -3
  27. package/dist/federation/middleware.test.js +24 -47
  28. package/dist/federation/mod.cjs +10 -10
  29. package/dist/federation/mod.d.cts +7 -7
  30. package/dist/federation/mod.d.ts +7 -7
  31. package/dist/federation/mod.js +10 -10
  32. package/dist/federation/mq.test.js +3 -3
  33. package/dist/federation/negotiation.test.js +3 -3
  34. package/dist/federation/retry.test.js +3 -3
  35. package/dist/federation/router.test.js +3 -3
  36. package/dist/federation/send.test.js +10 -10
  37. package/dist/fixtures/media.example.com/avatars/test-avatar.jpg.json +6 -0
  38. package/dist/{http-DREvFalF.cjs → http-CAusBl_3.cjs} +3 -3
  39. package/dist/{http-BpoEurUR.js → http-C_Qc2neP.js} +3 -3
  40. package/dist/{http-BEo67UOx.js → http-CuS-d4U0.js} +2 -2
  41. package/dist/{http-BS6766zs.d.cts → http-D-e6AFwR.d.cts} +1 -1
  42. package/dist/{http-DqSNLFNY.d.ts → http-D6Uj2x2y.d.ts} +1 -1
  43. package/dist/{inbox-D-B5xFtJ.js → inbox-IETv_Qez.js} +24 -7
  44. package/dist/{key-Cf8KTg-A.js → key-BNJQQm3h.js} +2 -2
  45. package/dist/{key-DJpcumqB.js → key-C_ruQbbl.js} +4 -4
  46. package/dist/key-DIMJMxf4.cjs +10 -0
  47. package/dist/{key-Cps8Sv3N.js → key-DnqhSgAv.js} +2 -2
  48. package/dist/{key-DqrTz8Xq.js → key-DpFjiItf.js} +3 -3
  49. package/dist/{key-JqiQvcq1.cjs → key-DuXv64tg.cjs} +2 -2
  50. package/dist/{keycache-D_Q1fPV0.js → keycache-CSBkusP8.js} +1 -1
  51. package/dist/{keys-F0jh2GNR.js → keys-D3_MDK7n.js} +1 -1
  52. package/dist/{ld-CXygHn_m.js → ld-Isot0tiW.js} +2 -2
  53. package/dist/{lookup-DuqY2_In.js → lookup-CbtuFbtg.js} +21 -12
  54. package/dist/{lookup-C-Y0Ep1a.cjs → lookup-D6dro5Au.cjs} +1 -1
  55. package/dist/{lookup-C6WSLjPE.js → lookup-Dhm78GlK.js} +1 -1
  56. package/dist/middleware-BpR6186a.js +26 -0
  57. package/dist/{middleware-2qNNXYEE.js → middleware-BuHr2fzh.js} +52 -29
  58. package/dist/middleware-DDMxdtWM.cjs +17 -0
  59. package/dist/{middleware-CMiUxZ6O.js → middleware-DQYscW90.js} +26 -26
  60. package/dist/{middleware-BsFAFlnZ.cjs → middleware-Dgmdgrvb.cjs} +52 -29
  61. package/dist/middleware-T-knSMwl.js +17 -0
  62. package/dist/{mod-Drmz72EK.d.ts → mod-BhUKmBJD.d.ts} +2 -2
  63. package/dist/{mod-DBQAI4v9.d.cts → mod-Bpb5QLaZ.d.cts} +2 -2
  64. package/dist/{mod-TFoH2Ql8.d.ts → mod-CerN_Sza.d.ts} +1 -1
  65. package/dist/{mod-Dc_-mf8s.d.cts → mod-Cj1tHXBR.d.cts} +1 -1
  66. package/dist/{mod-evzlRVZq.d.cts → mod-CxkWO3Mg.d.cts} +19 -1
  67. package/dist/{mod-B26zRlH1.d.ts → mod-D_y2y32N.d.ts} +2 -2
  68. package/dist/{mod-BClfg3ej.d.cts → mod-Djzcw2ry.d.cts} +2 -2
  69. package/dist/{mod-Cxt4Kpf6.d.ts → mod-DlU8ISoa.d.ts} +19 -1
  70. package/dist/mod.cjs +10 -10
  71. package/dist/mod.d.cts +10 -10
  72. package/dist/mod.d.ts +10 -10
  73. package/dist/mod.js +10 -10
  74. package/dist/nodeinfo/client.test.js +5 -5
  75. package/dist/nodeinfo/handler.test.js +16 -16
  76. package/dist/nodeinfo/mod.cjs +2 -2
  77. package/dist/nodeinfo/mod.js +2 -2
  78. package/dist/nodeinfo/types.test.js +3 -3
  79. package/dist/{owner-B-7Ptt_m.d.cts → owner-BN_tO3cY.d.cts} +2 -2
  80. package/dist/{owner-D2fTlp_x.js → owner-ChSL4aJ7.js} +2 -2
  81. package/dist/{owner-CQPnQVtf.d.ts → owner-hd9lvQcP.d.ts} +2 -2
  82. package/dist/{proof-CHM9su4L.js → proof-BiSCuwyA.js} +3 -3
  83. package/dist/{proof-C4Y4gJcm.cjs → proof-ONNmhInb.cjs} +3 -3
  84. package/dist/{proof-kEUjWRNJ.js → proof-x3IBewan.js} +2 -2
  85. package/dist/runtime/authdocloader.test.js +9 -9
  86. package/dist/runtime/docloader.test.js +4 -4
  87. package/dist/runtime/key.test.js +5 -5
  88. package/dist/runtime/langstr.test.js +3 -3
  89. package/dist/runtime/link.test.js +3 -3
  90. package/dist/runtime/mod.cjs +6 -6
  91. package/dist/runtime/mod.d.cts +3 -3
  92. package/dist/runtime/mod.d.ts +3 -3
  93. package/dist/runtime/mod.js +6 -6
  94. package/dist/runtime/multibase/multibase.test.js +3 -3
  95. package/dist/runtime/url.test.js +3 -3
  96. package/dist/{send-Utq2Jm0I.js → send-D5fjmUEj.js} +2 -2
  97. package/dist/sig/http.test.js +8 -8
  98. package/dist/sig/key.test.js +6 -6
  99. package/dist/sig/ld.test.js +7 -7
  100. package/dist/sig/mod.cjs +6 -6
  101. package/dist/sig/mod.d.cts +5 -5
  102. package/dist/sig/mod.d.ts +5 -5
  103. package/dist/sig/mod.js +6 -6
  104. package/dist/sig/owner.test.js +7 -7
  105. package/dist/sig/proof.test.js +7 -7
  106. package/dist/testing/docloader.test.js +3 -3
  107. package/dist/testing/mod.d.ts +272 -0
  108. package/dist/testing/mod.js +3 -3
  109. package/dist/{testing-DUpTIvNE.js → testing-tWr1VQxx.js} +2 -2
  110. package/dist/{type-BYN6Ax2M.js → type-DaUr3Il7.js} +6943 -2120
  111. package/dist/{types-BBpQe860.cjs → types-D2Nyz0tR.cjs} +1 -1
  112. package/dist/{types-BXkh8ctL.js → types-DQuSDtDg.js} +1 -1
  113. package/dist/vocab/actor.test.js +5 -5
  114. package/dist/vocab/lookup.test.js +255 -5
  115. package/dist/vocab/mod.cjs +4 -4
  116. package/dist/vocab/mod.d.cts +3 -3
  117. package/dist/vocab/mod.d.ts +3 -3
  118. package/dist/vocab/mod.js +4 -4
  119. package/dist/vocab/type.test.js +3 -3
  120. package/dist/vocab/vocab.test.js +397 -8
  121. package/dist/{vocab-SOE1ifCr.d.ts → vocab-BI0Ak5lL.d.ts} +290 -0
  122. package/dist/{vocab-DWZQ7gVQ.cjs → vocab-Dd4VMrr0.cjs} +23 -14
  123. package/dist/{vocab-DJTYMqyU.d.cts → vocab-Dw1-yVGg.d.cts} +290 -0
  124. package/dist/{vocab-PKJB4DyY.js → vocab-w--qk7HF.js} +23 -14
  125. package/dist/webfinger/handler.test.js +16 -16
  126. package/dist/webfinger/lookup.test.js +4 -4
  127. package/dist/webfinger/mod.cjs +2 -2
  128. package/dist/webfinger/mod.js +2 -2
  129. package/dist/x/cfworkers.test.js +3 -3
  130. package/dist/x/hono.d.cts +6 -6
  131. package/dist/x/hono.d.ts +6 -6
  132. package/dist/x/sveltekit.d.cts +6 -6
  133. package/dist/x/sveltekit.d.ts +6 -6
  134. package/package.json +1 -1
  135. package/dist/key-BvvbahfP.cjs +0 -10
  136. package/dist/middleware-BD1IE5O5.js +0 -26
  137. package/dist/middleware-BuZrvrDv.js +0 -17
  138. package/dist/middleware-h_3nRr8m.cjs +0 -17
@@ -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, deno_default, getDocumentLoader, getTypeId, kvCache, lookupWebFinger } from "./type-BYN6Ax2M.js";
7
- import { getNodeInfo } from "./client-yGBH5stP.js";
8
- import { RouterError, lookupObject, traverseCollection } from "./lookup-DuqY2_In.js";
6
+ import { Activity, Collection, CollectionPage, CryptographicKey, Link, Multikey, Object as Object$1, OrderedCollection, OrderedCollectionPage, deno_default, getDocumentLoader, getTypeId, kvCache, lookupWebFinger } from "./type-DaUr3Il7.js";
7
+ import { getNodeInfo } from "./client-D5CBsPrc.js";
8
+ import { RouterError, lookupObject, traverseCollection } from "./lookup-CbtuFbtg.js";
9
9
  import { nodeInfoToJson } from "./types-BSuWJsOm.js";
10
- import { exportJwk, importJwk, validateCryptoKey } from "./key-Cps8Sv3N.js";
11
- import { verifyRequest } from "./http-BEo67UOx.js";
12
- import { getAuthenticatedDocumentLoader } from "./authdocloader-Chl2nuOI.js";
13
- import { detachSignature, hasSignature, signJsonLd, verifyJsonLd } from "./ld-CXygHn_m.js";
14
- import { doesActorOwnKey, getKeyOwner } from "./owner-D2fTlp_x.js";
15
- import { signObject, verifyObject } from "./proof-kEUjWRNJ.js";
16
- import { routeActivity } from "./inbox-D-B5xFtJ.js";
17
- import { FederationBuilderImpl } from "./builder-C8Of4dPy.js";
10
+ import { exportJwk, importJwk, validateCryptoKey } from "./key-DnqhSgAv.js";
11
+ import { verifyRequest } from "./http-CuS-d4U0.js";
12
+ import { getAuthenticatedDocumentLoader } from "./authdocloader-DYTNpaMA.js";
13
+ import { detachSignature, hasSignature, signJsonLd, verifyJsonLd } from "./ld-Isot0tiW.js";
14
+ import { doesActorOwnKey, getKeyOwner } from "./owner-ChSL4aJ7.js";
15
+ import { signObject, verifyObject } from "./proof-x3IBewan.js";
16
+ import { routeActivity } from "./inbox-IETv_Qez.js";
17
+ import { FederationBuilderImpl } from "./builder-1_skw-d2.js";
18
18
  import { buildCollectionSynchronizationHeader } from "./collection-CcnIw1qY.js";
19
- import { KvKeyCache } from "./keycache-D_Q1fPV0.js";
19
+ import { KvKeyCache } from "./keycache-CSBkusP8.js";
20
20
  import { acceptsJsonLd } from "./negotiation-5NPJL6zp.js";
21
21
  import { createExponentialBackoffPolicy } from "./retry-D4GJ670a.js";
22
- import { extractInboxes, sendActivity } from "./send-Utq2Jm0I.js";
22
+ import { extractInboxes, sendActivity } from "./send-D5fjmUEj.js";
23
23
  import { getLogger, withContext } from "@logtape/logtape";
24
24
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
25
25
  import { ATTR_HTTP_REQUEST_HEADER, ATTR_HTTP_REQUEST_METHOD, ATTR_HTTP_RESPONSE_HEADER, ATTR_HTTP_RESPONSE_STATUS_CODE, ATTR_URL_FULL } from "@opentelemetry/semantic-conventions";
@@ -604,7 +604,8 @@ async function handleInbox(request, options) {
604
604
  * @param span The OpenTelemetry span for tracing.
605
605
  * @returns A promise that resolves to an HTTP response.
606
606
  */
607
- async function handleInboxInternal(request, { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider }, span) {
607
+ async function handleInboxInternal(request, parameters, span) {
608
+ const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider } = parameters;
608
609
  const logger$2 = getLogger([
609
610
  "fedify",
610
611
  "federation",
@@ -806,7 +807,8 @@ async function handleInboxInternal(request, { recipient, context: ctx, inboxCont
806
807
  kvPrefixes,
807
808
  queue,
808
809
  span,
809
- tracerProvider
810
+ tracerProvider,
811
+ idempotencyStrategy: parameters.idempotencyStrategy
810
812
  });
811
813
  if (routeResult === "alreadyProcessed") return new Response(`Activity <${activity.id}> has already been processed.`, {
812
814
  status: 202,
@@ -1317,7 +1319,6 @@ var FederationImpl = class extends FederationBuilderImpl {
1317
1319
  firstKnock;
1318
1320
  constructor(options) {
1319
1321
  super();
1320
- const logger$2 = getLogger(["fedify", "federation"]);
1321
1322
  this.kv = options.kv;
1322
1323
  this.kvPrefixes = {
1323
1324
  activityIdempotence: ["_fedify", "activityIdempotence"],
@@ -1365,8 +1366,9 @@ var FederationImpl = class extends FederationBuilderImpl {
1365
1366
  this.router.trailingSlashInsensitive = options.trailingSlashInsensitive ?? false;
1366
1367
  this._initializeRouter();
1367
1368
  if (options.allowPrivateAddress || options.userAgent != null) {
1368
- if (options.contextLoader != null) throw new TypeError("Cannot set contextLoader with allowPrivateAddress or userAgent options.");
1369
- else if (options.authenticatedDocumentLoaderFactory != null) throw new TypeError("Cannot set authenticatedDocumentLoaderFactory with allowPrivateAddress or userAgent options.");
1369
+ if (options.documentLoaderFactory != null) throw new TypeError("Cannot set documentLoaderFactory with allowPrivateAddress or userAgent options.");
1370
+ if (options.contextLoaderFactory != null) throw new TypeError("Cannot set contextLoaderFactory with allowPrivateAddress or userAgent options.");
1371
+ if (options.authenticatedDocumentLoaderFactory != null) throw new TypeError("Cannot set authenticatedDocumentLoaderFactory with allowPrivateAddress or userAgent options.");
1370
1372
  }
1371
1373
  const { allowPrivateAddress, userAgent } = options;
1372
1374
  this.allowPrivateAddress = allowPrivateAddress ?? false;
@@ -1380,11 +1382,7 @@ var FederationImpl = class extends FederationBuilderImpl {
1380
1382
  prefix: this.kvPrefixes.remoteDocument
1381
1383
  });
1382
1384
  });
1383
- if (options.contextLoader != null) {
1384
- if (options.contextLoaderFactory != null) throw new TypeError("Cannot set both contextLoader and contextLoaderFactory options at a time; use contextLoaderFactory only.");
1385
- this.contextLoaderFactory = () => options.contextLoader;
1386
- logger$2.warn("The contextLoader option is deprecated; use contextLoaderFactory option instead.");
1387
- } else this.contextLoaderFactory = options.contextLoaderFactory ?? this.documentLoaderFactory;
1385
+ this.contextLoaderFactory = options.contextLoaderFactory ?? this.documentLoaderFactory;
1388
1386
  this.authenticatedDocumentLoaderFactory = options.authenticatedDocumentLoaderFactory ?? ((identity) => getAuthenticatedDocumentLoader(identity, {
1389
1387
  allowPrivateAddress,
1390
1388
  userAgent,
@@ -1988,7 +1986,7 @@ var FederationImpl = class extends FederationBuilderImpl {
1988
1986
  nodeInfoDispatcher: this.nodeInfoDispatcher
1989
1987
  });
1990
1988
  }
1991
- if (!acceptsJsonLd(request)) return await onNotAcceptable(request);
1989
+ if (request.method !== "POST" && !acceptsJsonLd(request)) return await onNotAcceptable(request);
1992
1990
  switch (routeName) {
1993
1991
  case "actor":
1994
1992
  context$1 = this.#createContext(request, contextData, { invokedFromActorDispatcher: { identifier: route.values.identifier ?? route.values.handle } });
@@ -2058,7 +2056,8 @@ var FederationImpl = class extends FederationBuilderImpl {
2058
2056
  onNotFound,
2059
2057
  signatureTimeWindow: this.signatureTimeWindow,
2060
2058
  skipSignatureVerification: this.skipSignatureVerification,
2061
- tracerProvider: this.tracerProvider
2059
+ tracerProvider: this.tracerProvider,
2060
+ idempotencyStrategy: this.idempotencyStrategy
2062
2061
  });
2063
2062
  case "following": return await handleCollection(request, {
2064
2063
  name: "following",
@@ -2801,7 +2800,8 @@ var ContextImpl = class ContextImpl {
2801
2800
  kvPrefixes: this.federation.kvPrefixes,
2802
2801
  queue: this.federation.inboxQueue,
2803
2802
  span,
2804
- tracerProvider: options.tracerProvider ?? this.tracerProvider
2803
+ tracerProvider: options.tracerProvider ?? this.tracerProvider,
2804
+ idempotencyStrategy: this.federation.idempotencyStrategy
2805
2805
  });
2806
2806
  return routeResult === "alreadyProcessed" || routeResult === "enqueued" || routeResult === "unsupportedActivity" || routeResult === "success";
2807
2807
  }
@@ -4,15 +4,15 @@
4
4
 
5
5
  const require_chunk = require('./chunk-DqRYRqnO.cjs');
6
6
  const require_transformers = require('./transformers-CoBS-oFG.cjs');
7
- const require_docloader = require('./docloader-SZjTrl6Z.cjs');
8
- const require_actor = require('./actor-CNUje03O.cjs');
9
- const require_lookup = require('./lookup-C-Y0Ep1a.cjs');
10
- const require_key = require('./key-JqiQvcq1.cjs');
11
- const require_http = require('./http-DREvFalF.cjs');
12
- const require_proof = require('./proof-C4Y4gJcm.cjs');
13
- const require_types = require('./types-BBpQe860.cjs');
14
- const require_authdocloader = require('./authdocloader-D_3mtAjX.cjs');
15
- const require_vocab = require('./vocab-DWZQ7gVQ.cjs');
7
+ const require_docloader = require('./docloader-CYnQRIXv.cjs');
8
+ const require_actor = require('./actor-CwZ2m5rG.cjs');
9
+ const require_lookup = require('./lookup-D6dro5Au.cjs');
10
+ const require_key = require('./key-DuXv64tg.cjs');
11
+ const require_http = require('./http-CAusBl_3.cjs');
12
+ const require_proof = require('./proof-ONNmhInb.cjs');
13
+ const require_types = require('./types-D2Nyz0tR.cjs');
14
+ const require_authdocloader = require('./authdocloader-bsmVF6eO.cjs');
15
+ const require_vocab = require('./vocab-Dd4VMrr0.cjs');
16
16
  const __logtape_logtape = require_chunk.__toESM(require("@logtape/logtape"));
17
17
  const __opentelemetry_api = require_chunk.__toESM(require("@opentelemetry/api"));
18
18
  const byte_encodings_hex = require_chunk.__toESM(require("byte-encodings/hex"));
@@ -56,17 +56,34 @@ var InboxListenerSet = class InboxListenerSet {
56
56
  return this.dispatchWithClass(activity)?.listener ?? null;
57
57
  }
58
58
  };
59
- async function routeActivity({ context: ctx, json, activity, recipient, inboxListeners, inboxContextFactory, inboxErrorHandler, kv, kvPrefixes, queue, span, tracerProvider }) {
59
+ async function routeActivity({ context: ctx, json, activity, recipient, inboxListeners, inboxContextFactory, inboxErrorHandler, kv, kvPrefixes, queue, span, tracerProvider, idempotencyStrategy }) {
60
60
  const logger$1 = (0, __logtape_logtape.getLogger)([
61
61
  "fedify",
62
62
  "federation",
63
63
  "inbox"
64
64
  ]);
65
- const cacheKey = activity.id == null ? null : [
66
- ...kvPrefixes.activityIdempotence,
67
- ctx.origin,
68
- activity.id.href
69
- ];
65
+ let cacheKey = null;
66
+ if (activity.id != null) {
67
+ const inboxContext = inboxContextFactory(recipient, json, activity.id?.href, require_actor.getTypeId(activity).href);
68
+ const strategy = idempotencyStrategy ?? "per-inbox";
69
+ let keyString;
70
+ if (typeof strategy === "function") {
71
+ const result = await strategy(inboxContext, activity);
72
+ keyString = result;
73
+ } else switch (strategy) {
74
+ case "global":
75
+ keyString = activity.id.href;
76
+ break;
77
+ case "per-origin":
78
+ keyString = `${ctx.origin}\n${activity.id.href}`;
79
+ break;
80
+ case "per-inbox":
81
+ keyString = `${ctx.origin}\n${activity.id.href}\n${recipient == null ? "sharedInbox" : `inbox\n${recipient}`}`;
82
+ break;
83
+ default: keyString = `${ctx.origin}\n${activity.id.href}`;
84
+ }
85
+ if (keyString != null) cacheKey = [...kvPrefixes.activityIdempotence, keyString];
86
+ }
70
87
  if (cacheKey != null) {
71
88
  const cached = await kv.get(cacheKey);
72
89
  if (cached === true) {
@@ -308,6 +325,7 @@ var FederationBuilderImpl = class {
308
325
  inboxListeners;
309
326
  inboxErrorHandler;
310
327
  sharedInboxKeyDispatcher;
328
+ idempotencyStrategy;
311
329
  collectionTypeIds;
312
330
  collectionCallbacks;
313
331
  /**
@@ -322,7 +340,7 @@ var FederationBuilderImpl = class {
322
340
  this.collectionTypeIds = {};
323
341
  }
324
342
  async build(options) {
325
- const { FederationImpl: FederationImpl$1 } = await Promise.resolve().then(() => require("./middleware-h_3nRr8m.cjs"));
343
+ const { FederationImpl: FederationImpl$1 } = await Promise.resolve().then(() => require("./middleware-DDMxdtWM.cjs"));
326
344
  const f = new FederationImpl$1(options);
327
345
  const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
328
346
  f.router = this.router.clone();
@@ -344,6 +362,7 @@ var FederationBuilderImpl = class {
344
362
  f.inboxListeners = this.inboxListeners?.clone();
345
363
  f.inboxErrorHandler = this.inboxErrorHandler;
346
364
  f.sharedInboxKeyDispatcher = this.sharedInboxKeyDispatcher;
365
+ f.idempotencyStrategy = this.idempotencyStrategy;
347
366
  return f;
348
367
  }
349
368
  _getTracer() {
@@ -766,6 +785,10 @@ var FederationBuilderImpl = class {
766
785
  setSharedKeyDispatcher: (dispatcher) => {
767
786
  this.sharedInboxKeyDispatcher = dispatcher;
768
787
  return setters;
788
+ },
789
+ withIdempotency: (strategy) => {
790
+ this.idempotencyStrategy = strategy;
791
+ return setters;
769
792
  }
770
793
  };
771
794
  return setters;
@@ -1294,7 +1317,8 @@ async function handleInbox(request, options) {
1294
1317
  * @param span The OpenTelemetry span for tracing.
1295
1318
  * @returns A promise that resolves to an HTTP response.
1296
1319
  */
1297
- async function handleInboxInternal(request, { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider }, span) {
1320
+ async function handleInboxInternal(request, parameters, span) {
1321
+ const { recipient, context: ctx, inboxContextFactory, kv, kvPrefixes, queue, actorDispatcher, inboxListeners, inboxErrorHandler, onNotFound, signatureTimeWindow, skipSignatureVerification, tracerProvider } = parameters;
1298
1322
  const logger$1 = (0, __logtape_logtape.getLogger)([
1299
1323
  "fedify",
1300
1324
  "federation",
@@ -1496,7 +1520,8 @@ async function handleInboxInternal(request, { recipient, context: ctx, inboxCont
1496
1520
  kvPrefixes,
1497
1521
  queue,
1498
1522
  span,
1499
- tracerProvider
1523
+ tracerProvider,
1524
+ idempotencyStrategy: parameters.idempotencyStrategy
1500
1525
  });
1501
1526
  if (routeResult === "alreadyProcessed") return new Response(`Activity <${activity.id}> has already been processed.`, {
1502
1527
  status: 202,
@@ -2326,7 +2351,6 @@ var FederationImpl = class extends FederationBuilderImpl {
2326
2351
  firstKnock;
2327
2352
  constructor(options) {
2328
2353
  super();
2329
- const logger$1 = (0, __logtape_logtape.getLogger)(["fedify", "federation"]);
2330
2354
  this.kv = options.kv;
2331
2355
  this.kvPrefixes = {
2332
2356
  activityIdempotence: ["_fedify", "activityIdempotence"],
@@ -2374,8 +2398,9 @@ var FederationImpl = class extends FederationBuilderImpl {
2374
2398
  this.router.trailingSlashInsensitive = options.trailingSlashInsensitive ?? false;
2375
2399
  this._initializeRouter();
2376
2400
  if (options.allowPrivateAddress || options.userAgent != null) {
2377
- if (options.contextLoader != null) throw new TypeError("Cannot set contextLoader with allowPrivateAddress or userAgent options.");
2378
- else if (options.authenticatedDocumentLoaderFactory != null) throw new TypeError("Cannot set authenticatedDocumentLoaderFactory with allowPrivateAddress or userAgent options.");
2401
+ if (options.documentLoaderFactory != null) throw new TypeError("Cannot set documentLoaderFactory with allowPrivateAddress or userAgent options.");
2402
+ if (options.contextLoaderFactory != null) throw new TypeError("Cannot set contextLoaderFactory with allowPrivateAddress or userAgent options.");
2403
+ if (options.authenticatedDocumentLoaderFactory != null) throw new TypeError("Cannot set authenticatedDocumentLoaderFactory with allowPrivateAddress or userAgent options.");
2379
2404
  }
2380
2405
  const { allowPrivateAddress, userAgent } = options;
2381
2406
  this.allowPrivateAddress = allowPrivateAddress ?? false;
@@ -2389,11 +2414,7 @@ var FederationImpl = class extends FederationBuilderImpl {
2389
2414
  prefix: this.kvPrefixes.remoteDocument
2390
2415
  });
2391
2416
  });
2392
- if (options.contextLoader != null) {
2393
- if (options.contextLoaderFactory != null) throw new TypeError("Cannot set both contextLoader and contextLoaderFactory options at a time; use contextLoaderFactory only.");
2394
- this.contextLoaderFactory = () => options.contextLoader;
2395
- logger$1.warn("The contextLoader option is deprecated; use contextLoaderFactory option instead.");
2396
- } else this.contextLoaderFactory = options.contextLoaderFactory ?? this.documentLoaderFactory;
2417
+ this.contextLoaderFactory = options.contextLoaderFactory ?? this.documentLoaderFactory;
2397
2418
  this.authenticatedDocumentLoaderFactory = options.authenticatedDocumentLoaderFactory ?? ((identity) => require_authdocloader.getAuthenticatedDocumentLoader(identity, {
2398
2419
  allowPrivateAddress,
2399
2420
  userAgent,
@@ -2997,7 +3018,7 @@ var FederationImpl = class extends FederationBuilderImpl {
2997
3018
  nodeInfoDispatcher: this.nodeInfoDispatcher
2998
3019
  });
2999
3020
  }
3000
- if (!acceptsJsonLd(request)) return await onNotAcceptable(request);
3021
+ if (request.method !== "POST" && !acceptsJsonLd(request)) return await onNotAcceptable(request);
3001
3022
  switch (routeName) {
3002
3023
  case "actor":
3003
3024
  context$2 = this.#createContext(request, contextData, { invokedFromActorDispatcher: { identifier: route.values.identifier ?? route.values.handle } });
@@ -3067,7 +3088,8 @@ var FederationImpl = class extends FederationBuilderImpl {
3067
3088
  onNotFound,
3068
3089
  signatureTimeWindow: this.signatureTimeWindow,
3069
3090
  skipSignatureVerification: this.skipSignatureVerification,
3070
- tracerProvider: this.tracerProvider
3091
+ tracerProvider: this.tracerProvider,
3092
+ idempotencyStrategy: this.idempotencyStrategy
3071
3093
  });
3072
3094
  case "following": return await handleCollection(request, {
3073
3095
  name: "following",
@@ -3810,7 +3832,8 @@ var ContextImpl = class ContextImpl {
3810
3832
  kvPrefixes: this.federation.kvPrefixes,
3811
3833
  queue: this.federation.inboxQueue,
3812
3834
  span,
3813
- tracerProvider: options.tracerProvider ?? this.tracerProvider
3835
+ tracerProvider: options.tracerProvider ?? this.tracerProvider,
3836
+ idempotencyStrategy: this.federation.idempotencyStrategy
3814
3837
  });
3815
3838
  return routeResult === "alreadyProcessed" || routeResult === "enqueued" || routeResult === "unsupportedActivity" || routeResult === "success";
3816
3839
  }
@@ -0,0 +1,17 @@
1
+
2
+ import { Temporal } from "@js-temporal/polyfill";
3
+ import { URLPattern } from "urlpattern-polyfill";
4
+
5
+ import "./transformers-BFT6d7J5.js";
6
+ import "./docloader-Czl3xV10.js";
7
+ import "./actor-DoMcqXsW.js";
8
+ import { ContextImpl, FederationImpl, InboxContextImpl, KvSpecDeterminer, createFederation } from "./middleware-BuHr2fzh.js";
9
+ import "./lookup-Dhm78GlK.js";
10
+ import "./key-BNJQQm3h.js";
11
+ import "./http-C_Qc2neP.js";
12
+ import "./proof-BiSCuwyA.js";
13
+ import "./types-DQuSDtDg.js";
14
+ import "./authdocloader-Cv_qEn1G.js";
15
+ import "./vocab-w--qk7HF.js";
16
+
17
+ export { FederationImpl };
@@ -1,8 +1,8 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
3
  import { DocumentLoader } from "./docloader-CxWcuWqQ.js";
4
- import { CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1 } from "./vocab-SOE1ifCr.js";
5
- import { KeyCache } from "./http-DqSNLFNY.js";
4
+ import { CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1 } from "./vocab-BI0Ak5lL.js";
5
+ import { KeyCache } from "./http-D6Uj2x2y.js";
6
6
  import { TracerProvider } from "@opentelemetry/api";
7
7
 
8
8
  //#region src/sig/ld.d.ts
@@ -1,5 +1,5 @@
1
- import { Activity } from "./vocab-DJTYMqyU.cjs";
2
- import { ActivityTransformer, Context } from "./context-tVOQ76fi.cjs";
1
+ import { Activity } from "./vocab-Dw1-yVGg.cjs";
2
+ import { ActivityTransformer, Context } from "./context-DiqjMRef.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 { DocumentLoader, DocumentLoaderFactoryOptions } from "./docloader-CxWcuWqQ.js";
4
- import { HttpMessageSignaturesSpecDeterminer } from "./http-DqSNLFNY.js";
4
+ import { HttpMessageSignaturesSpecDeterminer } from "./http-D6Uj2x2y.js";
5
5
  import { TracerProvider } from "@opentelemetry/api";
6
6
 
7
7
  //#region src/runtime/authdocloader.d.ts
@@ -1,5 +1,5 @@
1
1
  import { DocumentLoader, DocumentLoaderFactoryOptions } from "./docloader-D-MrRyHl.cjs";
2
- import { HttpMessageSignaturesSpecDeterminer } from "./http-BS6766zs.cjs";
2
+ import { HttpMessageSignaturesSpecDeterminer } from "./http-D-e6AFwR.cjs";
3
3
  import { TracerProvider } from "@opentelemetry/api";
4
4
 
5
5
  //#region src/runtime/authdocloader.d.ts
@@ -1,5 +1,5 @@
1
1
  import { DocumentLoader, GetUserAgentOptions } from "./docloader-D-MrRyHl.cjs";
2
- import { Collection, Link, Object as Object$1 } from "./vocab-DJTYMqyU.cjs";
2
+ import { Collection, Link, Object as Object$1 } from "./vocab-Dw1-yVGg.cjs";
3
3
  import { TracerProvider } from "@opentelemetry/api";
4
4
 
5
5
  //#region src/vocab/lookup.d.ts
@@ -18,6 +18,24 @@ interface LookupObjectOptions {
18
18
  * @since 0.8.0
19
19
  */
20
20
  contextLoader?: DocumentLoader;
21
+ /**
22
+ * Whether to allow fetching an object with an `@id` having a different
23
+ * origin than the object's URL. This is not recommended, as it may
24
+ * lead to security issues. Only use this option if you know what you
25
+ * are doing.
26
+ *
27
+ * How to handle the case when an object's `@id` has a different origin
28
+ * than the object's URL:
29
+ *
30
+ * - `"ignore"` (default): Do not return the object, and log a warning.
31
+ * - `"throw"`: Throw an error.
32
+ * - `"trust"`: Bypass the check and return the object anyway. This
33
+ * is not recommended, as it may lead to security issues. Only use
34
+ * this option if you know what you are doing.
35
+ *
36
+ * @since 1.9.0
37
+ */
38
+ crossOrigin?: "ignore" | "throw" | "trust";
21
39
  /**
22
40
  * The options for making `User-Agent` header.
23
41
  * If a string is given, it is used as the `User-Agent` header value.
@@ -1,7 +1,7 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
- import { Activity } from "./vocab-SOE1ifCr.js";
4
- import { ActivityTransformer, Context } from "./context-CQsAT7xk.js";
3
+ import { Activity } from "./vocab-BI0Ak5lL.js";
4
+ import { ActivityTransformer, Context } from "./context-DBKpNBnc.js";
5
5
 
6
6
  //#region src/compat/transformers.d.ts
7
7
 
@@ -1,6 +1,6 @@
1
1
  import { DocumentLoader } from "./docloader-D-MrRyHl.cjs";
2
- import { CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1 } from "./vocab-DJTYMqyU.cjs";
3
- import { KeyCache } from "./http-BS6766zs.cjs";
2
+ import { CryptographicKey, DataIntegrityProof, Multikey, Object as Object$1 } from "./vocab-Dw1-yVGg.cjs";
3
+ import { KeyCache } from "./http-D-e6AFwR.cjs";
4
4
  import { TracerProvider } from "@opentelemetry/api";
5
5
 
6
6
  //#region src/sig/ld.d.ts
@@ -1,7 +1,7 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
3
  import { DocumentLoader, GetUserAgentOptions } from "./docloader-CxWcuWqQ.js";
4
- import { Collection, Link, Object as Object$1 } from "./vocab-SOE1ifCr.js";
4
+ import { Collection, Link, Object as Object$1 } from "./vocab-BI0Ak5lL.js";
5
5
  import { TracerProvider } from "@opentelemetry/api";
6
6
 
7
7
  //#region src/vocab/lookup.d.ts
@@ -20,6 +20,24 @@ interface LookupObjectOptions {
20
20
  * @since 0.8.0
21
21
  */
22
22
  contextLoader?: DocumentLoader;
23
+ /**
24
+ * Whether to allow fetching an object with an `@id` having a different
25
+ * origin than the object's URL. This is not recommended, as it may
26
+ * lead to security issues. Only use this option if you know what you
27
+ * are doing.
28
+ *
29
+ * How to handle the case when an object's `@id` has a different origin
30
+ * than the object's URL:
31
+ *
32
+ * - `"ignore"` (default): Do not return the object, and log a warning.
33
+ * - `"throw"`: Throw an error.
34
+ * - `"trust"`: Bypass the check and return the object anyway. This
35
+ * is not recommended, as it may lead to security issues. Only use
36
+ * this option if you know what you are doing.
37
+ *
38
+ * @since 1.9.0
39
+ */
40
+ crossOrigin?: "ignore" | "throw" | "trust";
23
41
  /**
24
42
  * The options for making `User-Agent` header.
25
43
  * If a string is given, it is used as the `User-Agent` header value.
package/dist/mod.cjs CHANGED
@@ -4,17 +4,17 @@
4
4
 
5
5
  const require_transformers = require('./transformers-CoBS-oFG.cjs');
6
6
  require('./compat-DmDDELst.cjs');
7
- const require_docloader = require('./docloader-SZjTrl6Z.cjs');
8
- const require_actor = require('./actor-CNUje03O.cjs');
9
- const require_middleware = require('./middleware-BsFAFlnZ.cjs');
10
- const require_lookup = require('./lookup-C-Y0Ep1a.cjs');
11
- const require_key = require('./key-JqiQvcq1.cjs');
12
- const require_http = require('./http-DREvFalF.cjs');
13
- const require_proof = require('./proof-C4Y4gJcm.cjs');
7
+ const require_docloader = require('./docloader-CYnQRIXv.cjs');
8
+ const require_actor = require('./actor-CwZ2m5rG.cjs');
9
+ const require_middleware = require('./middleware-Dgmdgrvb.cjs');
10
+ const require_lookup = require('./lookup-D6dro5Au.cjs');
11
+ const require_key = require('./key-DuXv64tg.cjs');
12
+ const require_http = require('./http-CAusBl_3.cjs');
13
+ const require_proof = require('./proof-ONNmhInb.cjs');
14
14
  const require_federation = require('./federation-H2_En3j5.cjs');
15
- const require_types = require('./types-BBpQe860.cjs');
16
- const require_authdocloader = require('./authdocloader-D_3mtAjX.cjs');
17
- const require_vocab = require('./vocab-DWZQ7gVQ.cjs');
15
+ const require_types = require('./types-D2Nyz0tR.cjs');
16
+ const require_authdocloader = require('./authdocloader-bsmVF6eO.cjs');
17
+ const require_vocab = require('./vocab-Dd4VMrr0.cjs');
18
18
  require('./nodeinfo-Co9lJrWl.cjs');
19
19
  require('./runtime-C58AJWSv.cjs');
20
20
  require('./sig-ByHXzqUi.cjs');
package/dist/mod.d.cts CHANGED
@@ -1,17 +1,17 @@
1
1
  import { KvKey, KvStore, KvStoreSetOptions, MemoryKvStore } from "./kv-63Cil1MD.cjs";
2
2
  import { AuthenticatedDocumentLoaderFactory, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, FetchError, GetDocumentLoaderOptions, GetUserAgentOptions, KvCacheParameters, RemoteDocument, fetchDocumentLoader, getDocumentLoader, getUserAgent, kvCache } from "./docloader-D-MrRyHl.cjs";
3
3
  import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "./client-CegPX0Rn.cjs";
4
- 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, LanguageString, 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 } from "./vocab-DJTYMqyU.cjs";
5
- import { Actor, ActorTypeName, GetActorHandleOptions, NormalizeActorHandleOptions, Recipient, getActorClassByTypeName, getActorHandle, getActorTypeName, isActor, normalizeActorHandle } from "./actor-DMgu-ZjT.cjs";
6
- import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, KeyCache, SignRequestOptions, VerifyRequestOptions, exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-BS6766zs.cjs";
7
- import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-B-7Ptt_m.cjs";
8
- import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-evzlRVZq.cjs";
4
+ 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, LanguageString, 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 } from "./vocab-Dw1-yVGg.cjs";
5
+ import { Actor, ActorTypeName, GetActorHandleOptions, NormalizeActorHandleOptions, Recipient, getActorClassByTypeName, getActorHandle, getActorTypeName, isActor, normalizeActorHandle } from "./actor-D6K058Tb.cjs";
6
+ import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, KeyCache, SignRequestOptions, VerifyRequestOptions, exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-D-e6AFwR.cjs";
7
+ import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-BN_tO3cY.cjs";
8
+ import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-CxkWO3Mg.cjs";
9
9
  import { ResourceDescriptor, lookupWebFinger } from "./mod-jQ4OODsl.cjs";
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, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParamsKeyPath, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-tVOQ76fi.cjs";
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, ParamsKeyPath, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-DiqjMRef.cjs";
11
11
  import { InProcessMessageQueue, InProcessMessageQueueOptions, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, ParallelMessageQueue } from "./mq-B7R1Q-M5.cjs";
12
- import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-DBQAI4v9.cjs";
12
+ import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-Bpb5QLaZ.cjs";
13
13
  import "./mod-C2tOeRkN.cjs";
14
14
  import "./mod-FZd39qVq.cjs";
15
- import { GetAuthenticatedDocumentLoaderOptions, exportMultibaseKey, exportSpki, getAuthenticatedDocumentLoader, importMultibaseKey, importPem, importPkcs1, importSpki } from "./mod-Dc_-mf8s.cjs";
16
- import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-BClfg3ej.cjs";
17
- export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthenticatedDocumentLoaderFactory, 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, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchError, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetAuthenticatedDocumentLoaderOptions, GetDocumentLoaderOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, GetUserAgentOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvCacheParameters, KvKey, KvStore, KvStoreSetOptions, LanguageString, 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, ParamsKeyPath, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, RemoteDocument, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, 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, exportMultibaseKey, exportSpki, fetchDocumentLoader, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getDocumentLoader, getKeyOwner, getNodeInfo, getTypeId, getUserAgent, importJwk, importMultibaseKey, importPem, importPkcs1, importSpki, isActor, isFediverseHandle, kvCache, lookupObject, lookupWebFinger, nodeInfoToJson, normalizeActorHandle, parseFediverseHandle, parseNodeInfo, respondWithObject, respondWithObjectIfAcceptable, signJsonLd, signObject, signRequest, toAcctUrl, traverseCollection, verifyJsonLd, verifyObject, verifyProof, verifyRequest, verifySignature };
15
+ import { GetAuthenticatedDocumentLoaderOptions, exportMultibaseKey, exportSpki, getAuthenticatedDocumentLoader, importMultibaseKey, importPem, importPkcs1, importSpki } from "./mod-Cj1tHXBR.cjs";
16
+ import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-Djzcw2ry.cjs";
17
+ export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthenticatedDocumentLoaderFactory, 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, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchError, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetAuthenticatedDocumentLoaderOptions, GetDocumentLoaderOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, GetUserAgentOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, IdempotencyKeyCallback, IdempotencyStrategy, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvCacheParameters, KvKey, KvStore, KvStoreSetOptions, LanguageString, 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, ParamsKeyPath, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, RemoteDocument, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, 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, exportMultibaseKey, exportSpki, fetchDocumentLoader, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getDocumentLoader, getKeyOwner, getNodeInfo, getTypeId, getUserAgent, importJwk, importMultibaseKey, importPem, importPkcs1, importSpki, 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
@@ -3,17 +3,17 @@ import { URLPattern } from "urlpattern-polyfill";
3
3
  import { KvKey, KvStore, KvStoreSetOptions, MemoryKvStore } from "./kv-C7sopW2E.js";
4
4
  import { AuthenticatedDocumentLoaderFactory, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, FetchError, GetDocumentLoaderOptions, GetUserAgentOptions, KvCacheParameters, RemoteDocument, fetchDocumentLoader, getDocumentLoader, getUserAgent, kvCache } from "./docloader-CxWcuWqQ.js";
5
5
  import { GetNodeInfoOptions, InboundService, JsonValue, NodeInfo, OutboundService, ParseNodeInfoOptions, Protocol, Services, Software, Usage, getNodeInfo, nodeInfoToJson, parseNodeInfo } from "./client-bgSdkFa2.js";
6
- 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, LanguageString, 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 } from "./vocab-SOE1ifCr.js";
7
- import { Actor, ActorTypeName, GetActorHandleOptions, NormalizeActorHandleOptions, Recipient, getActorClassByTypeName, getActorHandle, getActorTypeName, isActor, normalizeActorHandle } from "./actor-C22bXuuC.js";
8
- import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, KeyCache, SignRequestOptions, VerifyRequestOptions, exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-DqSNLFNY.js";
9
- import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-CQPnQVtf.js";
10
- import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-Cxt4Kpf6.js";
6
+ 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, LanguageString, 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 } from "./vocab-BI0Ak5lL.js";
7
+ import { Actor, ActorTypeName, GetActorHandleOptions, NormalizeActorHandleOptions, Recipient, getActorClassByTypeName, getActorHandle, getActorTypeName, isActor, normalizeActorHandle } from "./actor-T6RyhRgk.js";
8
+ import { FetchKeyOptions, FetchKeyResult, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, KeyCache, SignRequestOptions, VerifyRequestOptions, exportJwk, fetchKey, generateCryptoKeyPair, importJwk, signRequest, verifyRequest } from "./http-D6Uj2x2y.js";
9
+ import { DoesActorOwnKeyOptions, GetKeyOwnerOptions, doesActorOwnKey, getKeyOwner } from "./owner-hd9lvQcP.js";
10
+ import { FediverseHandle, LookupObjectOptions, PUBLIC_COLLECTION, TraverseCollectionOptions, getTypeId, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./mod-DlU8ISoa.js";
11
11
  import { ResourceDescriptor, lookupWebFinger } from "./mod-DBzN0aCM.js";
12
- 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, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, Message, NodeInfoDispatcher, ObjectAuthorizePredicate, ObjectCallbackSetters, ObjectDispatcher, OutboxErrorHandler, PageItems, ParamsKeyPath, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-CQsAT7xk.js";
12
+ 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, ParamsKeyPath, ParseUriResult, RequestContext, RespondWithObjectOptions, RetryContext, RetryPolicy, RouteActivityOptions, Router, RouterError, RouterOptions, RouterRouteResult, SendActivityOptions, SendActivityOptionsForCollection, SenderKeyPair, SharedInboxKeyDispatcher, WebFingerLinksDispatcher, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "./context-DBKpNBnc.js";
13
13
  import { InProcessMessageQueue, InProcessMessageQueueOptions, MessageQueue, MessageQueueEnqueueOptions, MessageQueueListenOptions, ParallelMessageQueue } from "./mq-CRGm1e_F.js";
14
- import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-B26zRlH1.js";
14
+ import { actorDehydrator, autoIdAssigner, getDefaultActivityTransformers } from "./mod-D_y2y32N.js";
15
15
  import "./mod-g0xFzAP9.js";
16
16
  import "./mod-1pDWKvUL.js";
17
- import { GetAuthenticatedDocumentLoaderOptions, exportMultibaseKey, exportSpki, getAuthenticatedDocumentLoader, importMultibaseKey, importPem, importPkcs1, importSpki } from "./mod-TFoH2Ql8.js";
18
- import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-Drmz72EK.js";
19
- export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthenticatedDocumentLoaderFactory, 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, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchError, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetAuthenticatedDocumentLoaderOptions, GetDocumentLoaderOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, GetUserAgentOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvCacheParameters, KvKey, KvStore, KvStoreSetOptions, LanguageString, 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, ParamsKeyPath, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, RemoteDocument, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, 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, exportMultibaseKey, exportSpki, fetchDocumentLoader, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getDocumentLoader, getKeyOwner, getNodeInfo, getTypeId, getUserAgent, importJwk, importMultibaseKey, importPem, importPkcs1, importSpki, isActor, isFediverseHandle, kvCache, lookupObject, lookupWebFinger, nodeInfoToJson, normalizeActorHandle, parseFediverseHandle, parseNodeInfo, respondWithObject, respondWithObjectIfAcceptable, signJsonLd, signObject, signRequest, toAcctUrl, traverseCollection, verifyJsonLd, verifyObject, verifyProof, verifyRequest, verifySignature };
17
+ import { GetAuthenticatedDocumentLoaderOptions, exportMultibaseKey, exportSpki, getAuthenticatedDocumentLoader, importMultibaseKey, importPem, importPkcs1, importSpki } from "./mod-CerN_Sza.js";
18
+ import { CreateProofOptions, CreateSignatureOptions, SignJsonLdOptions, SignObjectOptions, VerifyJsonLdOptions, VerifyObjectOptions, VerifyProofOptions, VerifySignatureOptions, attachSignature, createProof, createSignature, detachSignature, signJsonLd, signObject, verifyJsonLd, verifyObject, verifyProof, verifySignature } from "./mod-BhUKmBJD.js";
19
+ export { Accept, Activity, ActivityTransformer, Actor, ActorAliasMapper, ActorCallbackSetters, ActorDispatcher, ActorHandleMapper, ActorKeyPair, ActorKeyPairsDispatcher, ActorTypeName, Add, Announce, Application, Arrive, Article, Audio, AuthenticatedDocumentLoaderFactory, 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, DocumentLoader, DocumentLoaderFactory, DocumentLoaderFactoryOptions, DoesActorOwnKeyOptions, Emoji, EmojiReact, Endpoints, Event, Export, Federatable, Federation, FederationBuilder, FederationFetchOptions, FederationKvPrefixes, FederationOptions, FederationOrigin, FederationQueueOptions, FederationStartQueueOptions, FediverseHandle, FetchError, FetchKeyOptions, FetchKeyResult, Flag, Follow, ForwardActivityOptions, GetActorHandleOptions, GetAuthenticatedDocumentLoaderOptions, GetDocumentLoaderOptions, GetKeyOwnerOptions, GetNodeInfoOptions, GetSignedKeyOptions, GetUserAgentOptions, Group, Hashtag, HttpMessageSignaturesSpec, HttpMessageSignaturesSpecDeterminer, IdempotencyKeyCallback, IdempotencyStrategy, Ignore, Image, InProcessMessageQueue, InProcessMessageQueueOptions, InboundService, InboxContext, InboxErrorHandler, InboxListener, InboxListenerSetters, IntransitiveActivity, Invite, Join, JsonValue, KeyCache, KvCacheParameters, KvKey, KvStore, KvStoreSetOptions, LanguageString, 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, ParamsKeyPath, ParseNodeInfoOptions, ParseUriResult, Person, Place, Profile, PropertyValue, Protocol, Question, Read, Recipient, Reject, Relationship, RemoteDocument, Remove, RequestContext, ResourceDescriptor, RespondWithObjectOptions, RetryContext, RetryPolicy, 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, exportMultibaseKey, exportSpki, fetchDocumentLoader, fetchKey, generateCryptoKeyPair, getActorClassByTypeName, getActorHandle, getActorTypeName, getAuthenticatedDocumentLoader, getDefaultActivityTransformers, getDocumentLoader, getKeyOwner, getNodeInfo, getTypeId, getUserAgent, importJwk, importMultibaseKey, importPem, importPkcs1, importSpki, isActor, isFediverseHandle, kvCache, lookupObject, lookupWebFinger, nodeInfoToJson, normalizeActorHandle, parseFediverseHandle, parseNodeInfo, respondWithObject, respondWithObjectIfAcceptable, signJsonLd, signObject, signRequest, toAcctUrl, traverseCollection, verifyJsonLd, verifyObject, verifyProof, verifyRequest, verifySignature };