@fedify/fedify 1.10.11 → 1.10.12

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 (103) hide show
  1. package/dist/{actor-B7XRaa54.js → actor-BojFQubG.js} +187 -187
  2. package/dist/{actor-CTpwJ1pI.mjs → actor-C9uF9rDY.mjs} +1 -1
  3. package/dist/{actor--xTQfY8h.cjs → actor-U7L0GWq5.cjs} +187 -187
  4. package/dist/{authdocloader-DJ-h-WMy.mjs → authdocloader-Bzj36aN0.mjs} +3 -3
  5. package/dist/{authdocloader-_h7VKnUP.js → authdocloader-CHdPmjrz.js} +3 -3
  6. package/dist/{authdocloader-DMkkNwRc.cjs → authdocloader-hnKNsDdH.cjs} +3 -3
  7. package/dist/{builder-Dx_LGmTI.mjs → builder-Bdf32cY2.mjs} +4 -4
  8. package/dist/{client-DDy3-85E.mjs → client-DACpcUfJ.mjs} +63 -5
  9. package/dist/compat/mod.cjs +1 -1
  10. package/dist/compat/transformers.test.mjs +3 -3
  11. package/dist/{docloader-Ca6-eCr_.js → docloader-C7Hk8BRD.js} +1 -1
  12. package/dist/{docloader-CvMstYam.cjs → docloader-VJ0pkUIi.cjs} +1 -1
  13. package/dist/{esm-CzaH6D4W.mjs → esm-D-9VAGKG.mjs} +1 -1
  14. package/dist/federation/builder.test.mjs +3 -3
  15. package/dist/federation/collection.test.mjs +1 -1
  16. package/dist/federation/handler.test.mjs +7 -7
  17. package/dist/federation/idempotency.test.mjs +5 -5
  18. package/dist/federation/inbox.test.mjs +3 -3
  19. package/dist/federation/keycache.test.mjs +3 -3
  20. package/dist/federation/kv.test.mjs +1 -1
  21. package/dist/federation/middleware.test.mjs +11 -11
  22. package/dist/federation/mod.cjs +2 -2
  23. package/dist/federation/mod.js +1 -1
  24. package/dist/federation/mq.test.mjs +1 -1
  25. package/dist/federation/retry.test.mjs +1 -1
  26. package/dist/federation/router.test.mjs +2 -2
  27. package/dist/federation/send.test.mjs +7 -7
  28. package/dist/federation/temporal.test.mjs +2 -2
  29. package/dist/{http-CiqAQGRx.mjs → http-B7ppDy7F.mjs} +2 -2
  30. package/dist/{http-B3o3SOXX.cjs → http-BvdC0WpM.cjs} +3 -3
  31. package/dist/{http-Bku28NB8.js → http-DOLmvrYy.js} +3 -3
  32. package/dist/{inbox-D3RCgSiJ.mjs → inbox-BtX2yRj2.mjs} +1 -1
  33. package/dist/{key-CJU1QxP2.js → key-BHH7odYU.js} +2 -2
  34. package/dist/{key-C15RK-kf.mjs → key-CHBIITWw.mjs} +1 -1
  35. package/dist/{key-BbdUjmdf.cjs → key-CiP-0NDL.cjs} +2 -2
  36. package/dist/{key-LJoRzwG2.mjs → key-CvS3OKm_.mjs} +2 -2
  37. package/dist/{key-ClgfrNJf.cjs → key-LHWWSWcX.cjs} +1 -1
  38. package/dist/{keycache-BCuiTm4y.mjs → keycache-Bgm-3VZ1.mjs} +1 -1
  39. package/dist/{keys-wZip1i2J.mjs → keys-BkXWqCAE.mjs} +1 -1
  40. package/dist/{ld-BO_vEkla.mjs → ld-BJtgkkBN.mjs} +2 -2
  41. package/dist/{lookup-DRzvxZ-l.js → lookup-BRKVwJc1.js} +1 -1
  42. package/dist/{lookup-FvsTNqW8.mjs → lookup-D1kdVIs5.mjs} +1 -1
  43. package/dist/{lookup-Cs7LHObN.cjs → lookup-PjDK1BMX.cjs} +1 -1
  44. package/dist/{middleware-DoM0y4tG.js → middleware-BPwhaRyh.js} +8 -8
  45. package/dist/{middleware-Cdb7LDeG.mjs → middleware-BmYq8xCJ.mjs} +1 -1
  46. package/dist/{middleware-CzjJsU2k.mjs → middleware-C26Vj2UM.mjs} +15 -15
  47. package/dist/{middleware-SfuiAsBu.cjs → middleware-DhHhj1FR.cjs} +1 -1
  48. package/dist/{middleware-Dn5HfxXi.cjs → middleware-Fq0SOUBc.cjs} +10 -10
  49. package/dist/mod.cjs +10 -10
  50. package/dist/mod.js +9 -9
  51. package/dist/nodeinfo/client.test.mjs +63 -3
  52. package/dist/nodeinfo/handler.test.mjs +2 -2
  53. package/dist/nodeinfo/mod.cjs +1 -1
  54. package/dist/nodeinfo/mod.js +1 -1
  55. package/dist/nodeinfo/semver.test.mjs +1 -1
  56. package/dist/nodeinfo/types.test.mjs +1 -1
  57. package/dist/otel/exporter.test.mjs +1 -1
  58. package/dist/otel/mod.cjs +1 -1
  59. package/dist/{owner-BRgVUFTA.mjs → owner-LW_PkCQl.mjs} +3 -3
  60. package/dist/{proof-BL5RXXp2.js → proof-AdZX_HYz.js} +3 -3
  61. package/dist/{proof-De_2gCxi.mjs → proof-B5uyl0iN.mjs} +2 -2
  62. package/dist/{proof-BPEkbKl1.cjs → proof-BuZbhU4B.cjs} +3 -3
  63. package/dist/runtime/authdocloader.test.mjs +6 -6
  64. package/dist/runtime/docloader.test.mjs +3 -3
  65. package/dist/runtime/key.test.mjs +3 -3
  66. package/dist/runtime/langstr.test.mjs +2 -2
  67. package/dist/runtime/link.test.mjs +2 -2
  68. package/dist/runtime/mod.cjs +3 -3
  69. package/dist/runtime/mod.js +3 -3
  70. package/dist/runtime/multibase/multibase.test.mjs +2 -2
  71. package/dist/runtime/url.test.mjs +2 -2
  72. package/dist/{send-C7irF8CJ.mjs → send-bU0ThH5V.mjs} +2 -2
  73. package/dist/sig/http.test.mjs +6 -6
  74. package/dist/sig/key.test.mjs +4 -4
  75. package/dist/sig/ld.test.mjs +5 -5
  76. package/dist/sig/mod.cjs +3 -3
  77. package/dist/sig/mod.js +3 -3
  78. package/dist/sig/owner.test.mjs +5 -5
  79. package/dist/sig/proof.test.mjs +4 -4
  80. package/dist/{temporal-CtvhWksK.mjs → temporal-DURtbYTr.mjs} +1 -1
  81. package/dist/testing/docloader.test.mjs +1 -1
  82. package/dist/testing/mod.mjs +1 -1
  83. package/dist/{testing-DskvUSfh.mjs → testing-BQeTO4ss.mjs} +2 -2
  84. package/dist/{transformers-BbJsnOaL.cjs → transformers-C1GEQMFT.cjs} +1 -1
  85. package/dist/{types-B-GUdtNR.js → types--FAljwt0.js} +63 -5
  86. package/dist/{types-BWNGBD9D.cjs → types-DU73__Ms.cjs} +63 -5
  87. package/dist/vocab/actor.test.mjs +4 -4
  88. package/dist/vocab/cjs.test.mjs +1 -1
  89. package/dist/vocab/lookup.test.mjs +4 -4
  90. package/dist/vocab/mod.cjs +3 -3
  91. package/dist/vocab/mod.js +3 -3
  92. package/dist/vocab/type.test.mjs +2 -2
  93. package/dist/vocab/vocab.test.mjs +3 -3
  94. package/dist/{vocab-C0yDmtpE.mjs → vocab-C5EUmVTj.mjs} +186 -186
  95. package/dist/webfinger/handler.test.mjs +3 -3
  96. package/dist/webfinger/lookup.test.mjs +3 -3
  97. package/dist/webfinger/mod.cjs +1 -1
  98. package/dist/webfinger/mod.js +1 -1
  99. package/dist/x/cfworkers.cjs +1 -1
  100. package/dist/x/cfworkers.test.mjs +1 -1
  101. package/dist/x/hono.cjs +1 -1
  102. package/dist/x/sveltekit.cjs +1 -1
  103. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
- import { d as name, f as version, l as UrlError, o as getUserAgent, u as validatePublicUrl } from "./docloader-Ca6-eCr_.js";
3
+ import { d as name, f as version, l as UrlError, o as getUserAgent, u as validatePublicUrl } from "./docloader-C7Hk8BRD.js";
4
4
  import { getLogger } from "@logtape/logtape";
5
5
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
6
6
  //#region src/webfinger/lookup.ts
@@ -1,7 +1,7 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { J as getDocumentLoader, U as getTypeId, W as lookupWebFinger, ot as name, st as version, v as Object$1 } from "./vocab-C0yDmtpE.mjs";
4
+ import { J as getDocumentLoader, U as getTypeId, W as lookupWebFinger, ot as name, st as version, v as Object$1 } from "./vocab-C5EUmVTj.mjs";
5
5
  import { getLogger } from "@logtape/logtape";
6
6
  import { SpanStatusCode, trace } from "@opentelemetry/api";
7
7
  import { cloneDeep, delay } from "es-toolkit";
@@ -1,6 +1,6 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
- const require_docloader = require("./docloader-CvMstYam.cjs");
3
+ const require_docloader = require("./docloader-VJ0pkUIi.cjs");
4
4
  let _logtape_logtape = require("@logtape/logtape");
5
5
  let _opentelemetry_api = require("@opentelemetry/api");
6
6
  //#region src/webfinger/lookup.ts
@@ -2,14 +2,14 @@ import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  import { t as __exportAll } from "./rolldown-runtime-C7fyD9f2.js";
4
4
  import { r as getDefaultActivityTransformers } from "./transformers-BV4OeK9o.js";
5
- import { d as name, f as version, i as getDocumentLoader, s as kvCache } from "./docloader-Ca6-eCr_.js";
6
- import { G as Multikey, Tt as getTypeId, V as Link, X as OrderedCollectionPage, Y as OrderedCollection, _ as CollectionPage, g as Collection, q as Object$1, s as Activity, y as CryptographicKey } from "./actor-B7XRaa54.js";
7
- import { t as lookupWebFinger } from "./lookup-DRzvxZ-l.js";
8
- import { i as importJwk, o as validateCryptoKey, t as exportJwk } from "./key-CJU1QxP2.js";
9
- import { r as verifyRequest, t as doubleKnock } from "./http-Bku28NB8.js";
10
- import { _ as signJsonLd, a as doesActorOwnKey, c as assertSafeJsonLd, f as detachSignature, g as isInvalidUrlTypeError, h as isClearlyMalformedContextReference, m as hasSignature, n as signObject, o as getKeyOwner, p as getNormalizationContextLoader, r as verifyObject, s as InvalidContextReferenceError, u as compactJsonLd, v as verifyCompactJsonLd, x as wrapContextLoaderForJsonLd } from "./proof-BL5RXXp2.js";
11
- import { n as getNodeInfo, t as nodeInfoToJson } from "./types-B-GUdtNR.js";
12
- import { t as getAuthenticatedDocumentLoader } from "./authdocloader-_h7VKnUP.js";
5
+ import { d as name, f as version, i as getDocumentLoader, s as kvCache } from "./docloader-C7Hk8BRD.js";
6
+ import { G as Multikey, Tt as getTypeId, V as Link, X as OrderedCollectionPage, Y as OrderedCollection, _ as CollectionPage, g as Collection, q as Object$1, s as Activity, y as CryptographicKey } from "./actor-BojFQubG.js";
7
+ import { t as lookupWebFinger } from "./lookup-BRKVwJc1.js";
8
+ import { i as importJwk, o as validateCryptoKey, t as exportJwk } from "./key-BHH7odYU.js";
9
+ import { r as verifyRequest, t as doubleKnock } from "./http-DOLmvrYy.js";
10
+ import { _ as signJsonLd, a as doesActorOwnKey, c as assertSafeJsonLd, f as detachSignature, g as isInvalidUrlTypeError, h as isClearlyMalformedContextReference, m as hasSignature, n as signObject, o as getKeyOwner, p as getNormalizationContextLoader, r as verifyObject, s as InvalidContextReferenceError, u as compactJsonLd, v as verifyCompactJsonLd, x as wrapContextLoaderForJsonLd } from "./proof-AdZX_HYz.js";
11
+ import { n as getNodeInfo, t as nodeInfoToJson } from "./types--FAljwt0.js";
12
+ import { t as getAuthenticatedDocumentLoader } from "./authdocloader-CHdPmjrz.js";
13
13
  import { lookupObject, traverseCollection } from "./vocab/mod.js";
14
14
  import { getLogger, withContext } from "@logtape/logtape";
15
15
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
@@ -1,5 +1,5 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { n as FederationImpl } from "./middleware-CzjJsU2k.mjs";
4
+ import { n as FederationImpl } from "./middleware-C26Vj2UM.mjs";
5
5
  export { FederationImpl };
@@ -1,24 +1,24 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { J as getDocumentLoader, U as getTypeId, W as lookupWebFinger, Z as kvCache, a as CollectionPage, b as OrderedCollection, g as Multikey, h as Link, i as Collection, ot as name, s as CryptographicKey, st as version, t as Activity, v as Object$1, x as OrderedCollectionPage } from "./vocab-C0yDmtpE.mjs";
5
- import { i as RouterError, n as traverseCollection, t as lookupObject } from "./lookup-FvsTNqW8.mjs";
6
- import { t as getNodeInfo } from "./client-DDy3-85E.mjs";
4
+ import { J as getDocumentLoader, U as getTypeId, W as lookupWebFinger, Z as kvCache, a as CollectionPage, b as OrderedCollection, g as Multikey, h as Link, i as Collection, ot as name, s as CryptographicKey, st as version, t as Activity, v as Object$1, x as OrderedCollectionPage } from "./vocab-C5EUmVTj.mjs";
5
+ import { i as RouterError, n as traverseCollection, t as lookupObject } from "./lookup-D1kdVIs5.mjs";
6
+ import { t as getNodeInfo } from "./client-DACpcUfJ.mjs";
7
7
  import { t as nodeInfoToJson } from "./types-CAnkAQGM.mjs";
8
- import "./actor-CTpwJ1pI.mjs";
9
- import { a as validateCryptoKey, i as importJwk, t as exportJwk } from "./key-LJoRzwG2.mjs";
10
- import { l as verifyRequest } from "./http-CiqAQGRx.mjs";
11
- import { t as getAuthenticatedDocumentLoader } from "./authdocloader-DJ-h-WMy.mjs";
12
- import { a as compactJsonLd, c as getNormalizationContextLoader, d as isInvalidUrlTypeError, f as signJsonLd, g as wrapContextLoaderForJsonLd, l as hasSignature, p as verifyCompactJsonLd, r as assertSafeJsonLd, s as detachSignature, t as InvalidContextReferenceError, u as isClearlyMalformedContextReference } from "./ld-BO_vEkla.mjs";
13
- import { n as getKeyOwner, t as doesActorOwnKey } from "./owner-BRgVUFTA.mjs";
14
- import { n as signObject, r as verifyObject } from "./proof-De_2gCxi.mjs";
15
- import { n as routeActivity } from "./inbox-D3RCgSiJ.mjs";
16
- import { t as FederationBuilderImpl } from "./builder-Dx_LGmTI.mjs";
8
+ import "./actor-C9uF9rDY.mjs";
9
+ import { a as validateCryptoKey, i as importJwk, t as exportJwk } from "./key-CvS3OKm_.mjs";
10
+ import { l as verifyRequest } from "./http-B7ppDy7F.mjs";
11
+ import { t as getAuthenticatedDocumentLoader } from "./authdocloader-Bzj36aN0.mjs";
12
+ import { a as compactJsonLd, c as getNormalizationContextLoader, d as isInvalidUrlTypeError, f as signJsonLd, g as wrapContextLoaderForJsonLd, l as hasSignature, p as verifyCompactJsonLd, r as assertSafeJsonLd, s as detachSignature, t as InvalidContextReferenceError, u as isClearlyMalformedContextReference } from "./ld-BJtgkkBN.mjs";
13
+ import { n as getKeyOwner, t as doesActorOwnKey } from "./owner-LW_PkCQl.mjs";
14
+ import { n as signObject, r as verifyObject } from "./proof-B5uyl0iN.mjs";
15
+ import { n as routeActivity } from "./inbox-BtX2yRj2.mjs";
16
+ import { t as FederationBuilderImpl } from "./builder-Bdf32cY2.mjs";
17
17
  import { t as buildCollectionSynchronizationHeader } from "./collection-BD6-SZ6O.mjs";
18
- import { t as KvKeyCache } from "./keycache-BCuiTm4y.mjs";
19
- import { t as hasMalformedKnownTemporalLiteral } from "./temporal-CtvhWksK.mjs";
18
+ import { t as KvKeyCache } from "./keycache-Bgm-3VZ1.mjs";
19
+ import { t as hasMalformedKnownTemporalLiteral } from "./temporal-DURtbYTr.mjs";
20
20
  import { t as createExponentialBackoffPolicy } from "./retry-B_E3V_Dx.mjs";
21
- import { n as sendActivity, t as extractInboxes } from "./send-C7irF8CJ.mjs";
21
+ import { n as sendActivity, t as extractInboxes } from "./send-bU0ThH5V.mjs";
22
22
  import { getLogger, withContext } from "@logtape/logtape";
23
23
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
24
24
  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";
@@ -1,4 +1,4 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
- const require_middleware = require("./middleware-Dn5HfxXi.cjs");
3
+ const require_middleware = require("./middleware-Fq0SOUBc.cjs");
4
4
  exports.FederationImpl = require_middleware.FederationImpl;
@@ -1,14 +1,14 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
- const require_docloader = require("./docloader-CvMstYam.cjs");
4
- const require_transformers = require("./transformers-BbJsnOaL.cjs");
5
- const require_actor = require("./actor--xTQfY8h.cjs");
6
- const require_lookup = require("./lookup-Cs7LHObN.cjs");
7
- const require_key = require("./key-BbdUjmdf.cjs");
8
- const require_http = require("./http-B3o3SOXX.cjs");
9
- const require_proof = require("./proof-BPEkbKl1.cjs");
10
- const require_types = require("./types-BWNGBD9D.cjs");
11
- const require_authdocloader = require("./authdocloader-DMkkNwRc.cjs");
3
+ const require_docloader = require("./docloader-VJ0pkUIi.cjs");
4
+ const require_transformers = require("./transformers-C1GEQMFT.cjs");
5
+ const require_actor = require("./actor-U7L0GWq5.cjs");
6
+ const require_lookup = require("./lookup-PjDK1BMX.cjs");
7
+ const require_key = require("./key-CiP-0NDL.cjs");
8
+ const require_http = require("./http-BvdC0WpM.cjs");
9
+ const require_proof = require("./proof-BuZbhU4B.cjs");
10
+ const require_types = require("./types-DU73__Ms.cjs");
11
+ const require_authdocloader = require("./authdocloader-hnKNsDdH.cjs");
12
12
  const require_vocab_mod = require("./vocab/mod.cjs");
13
13
  let _logtape_logtape = require("@logtape/logtape");
14
14
  let _opentelemetry_api = require("@opentelemetry/api");
@@ -340,7 +340,7 @@ var FederationBuilderImpl = class {
340
340
  this.collectionTypeIds = {};
341
341
  }
342
342
  async build(options) {
343
- const { FederationImpl } = await Promise.resolve().then(() => require("./middleware-SfuiAsBu.cjs"));
343
+ const { FederationImpl } = await Promise.resolve().then(() => require("./middleware-DhHhj1FR.cjs"));
344
344
  const f = new FederationImpl(options);
345
345
  const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
346
346
  f.router = this.router.clone();
package/dist/mod.cjs CHANGED
@@ -1,17 +1,17 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const require_docloader = require("./docloader-CvMstYam.cjs");
5
- const require_transformers = require("./transformers-BbJsnOaL.cjs");
4
+ const require_docloader = require("./docloader-VJ0pkUIi.cjs");
5
+ const require_transformers = require("./transformers-C1GEQMFT.cjs");
6
6
  require("./compat/mod.cjs");
7
- const require_actor = require("./actor--xTQfY8h.cjs");
8
- const require_middleware = require("./middleware-Dn5HfxXi.cjs");
9
- const require_lookup = require("./lookup-Cs7LHObN.cjs");
10
- const require_key = require("./key-BbdUjmdf.cjs");
11
- const require_http = require("./http-B3o3SOXX.cjs");
12
- const require_proof = require("./proof-BPEkbKl1.cjs");
13
- const require_types = require("./types-BWNGBD9D.cjs");
14
- const require_authdocloader = require("./authdocloader-DMkkNwRc.cjs");
7
+ const require_actor = require("./actor-U7L0GWq5.cjs");
8
+ const require_middleware = require("./middleware-Fq0SOUBc.cjs");
9
+ const require_lookup = require("./lookup-PjDK1BMX.cjs");
10
+ const require_key = require("./key-CiP-0NDL.cjs");
11
+ const require_http = require("./http-BvdC0WpM.cjs");
12
+ const require_proof = require("./proof-BuZbhU4B.cjs");
13
+ const require_types = require("./types-DU73__Ms.cjs");
14
+ const require_authdocloader = require("./authdocloader-hnKNsDdH.cjs");
15
15
  const require_vocab_mod = require("./vocab/mod.cjs");
16
16
  const require_federation_mod = require("./federation/mod.cjs");
17
17
  require("./nodeinfo/mod.cjs");
package/dist/mod.js CHANGED
@@ -2,15 +2,15 @@ import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  import { n as autoIdAssigner, r as getDefaultActivityTransformers, t as actorDehydrator } from "./transformers-BV4OeK9o.js";
4
4
  import "./compat/mod.js";
5
- import { i as getDocumentLoader, o as getUserAgent, r as fetchDocumentLoader, s as kvCache, t as FetchError } from "./docloader-Ca6-eCr_.js";
6
- import { $ as Person, A as Flag, B as Like, C as Dislike, Ct as importPkcs1, D as Endpoints, E as EmojiReact, F as Image, G as Multikey, H as Listen, I as IntransitiveActivity, J as Offer, K as Note, L as Invite, M as Group, N as Hashtag, O as Event, P as Ignore, Q as Page, R as Join, S as DidService, St as importPem, T as Emoji, Tt as getTypeId, U as Mention, V as Link, W as Move, X as OrderedCollectionPage, Y as OrderedCollection, Z as Organization, _ as CollectionPage, _t as View, a as normalizeActorHandle, at as Reject, b as DataIntegrityProof, bt as exportSpki, c as Add, ct as Service, d as Arrive, dt as TentativeReject, et as Place, f as Article, ft as Tombstone, g as Collection, gt as Video, h as ChatMessage, ht as Update, i as isActor, it as Read, j as Follow, k as Export, l as Announce, lt as Source, m as Block, mt as Undo, n as getActorHandle, nt as PropertyValue, o as Accept, ot as Relationship, p as Audio, pt as Travel, q as Object$1, r as getActorTypeName, rt as Question, s as Activity, st as Remove, t as getActorClassByTypeName, tt as Profile, u as Application, ut as TentativeAccept, v as Create, vt as LanguageString, w as Document, wt as importSpki, x as Delete, xt as importMultibaseKey, y as CryptographicKey, yt as exportMultibaseKey, z as Leave } from "./actor-B7XRaa54.js";
7
- import { a as respondWithObjectIfAcceptable, c as createFederationBuilder, i as respondWithObject, l as Router, o as buildCollectionSynchronizationHeader, r as createExponentialBackoffPolicy, s as digest, t as createFederation, u as RouterError } from "./middleware-DoM0y4tG.js";
8
- import { t as lookupWebFinger } from "./lookup-DRzvxZ-l.js";
9
- import { i as importJwk, n as fetchKey, r as generateCryptoKeyPair, t as exportJwk } from "./key-CJU1QxP2.js";
10
- import { n as signRequest, r as verifyRequest } from "./http-Bku28NB8.js";
11
- import { _ as signJsonLd, a as doesActorOwnKey, b as verifySignature, d as createSignature, f as detachSignature, i as verifyProof, l as attachSignature, n as signObject, o as getKeyOwner, r as verifyObject, t as createProof, y as verifyJsonLd } from "./proof-BL5RXXp2.js";
12
- import { a as parseSemVer, i as formatSemVer, n as getNodeInfo, r as parseNodeInfo, t as nodeInfoToJson } from "./types-B-GUdtNR.js";
13
- import { t as getAuthenticatedDocumentLoader } from "./authdocloader-_h7VKnUP.js";
5
+ import { i as getDocumentLoader, o as getUserAgent, r as fetchDocumentLoader, s as kvCache, t as FetchError } from "./docloader-C7Hk8BRD.js";
6
+ import { $ as Person, A as Flag, B as Like, C as Dislike, Ct as importPkcs1, D as Endpoints, E as EmojiReact, F as Image, G as Multikey, H as Listen, I as IntransitiveActivity, J as Offer, K as Note, L as Invite, M as Group, N as Hashtag, O as Event, P as Ignore, Q as Page, R as Join, S as DidService, St as importPem, T as Emoji, Tt as getTypeId, U as Mention, V as Link, W as Move, X as OrderedCollectionPage, Y as OrderedCollection, Z as Organization, _ as CollectionPage, _t as View, a as normalizeActorHandle, at as Reject, b as DataIntegrityProof, bt as exportSpki, c as Add, ct as Service, d as Arrive, dt as TentativeReject, et as Place, f as Article, ft as Tombstone, g as Collection, gt as Video, h as ChatMessage, ht as Update, i as isActor, it as Read, j as Follow, k as Export, l as Announce, lt as Source, m as Block, mt as Undo, n as getActorHandle, nt as PropertyValue, o as Accept, ot as Relationship, p as Audio, pt as Travel, q as Object$1, r as getActorTypeName, rt as Question, s as Activity, st as Remove, t as getActorClassByTypeName, tt as Profile, u as Application, ut as TentativeAccept, v as Create, vt as LanguageString, w as Document, wt as importSpki, x as Delete, xt as importMultibaseKey, y as CryptographicKey, yt as exportMultibaseKey, z as Leave } from "./actor-BojFQubG.js";
7
+ import { a as respondWithObjectIfAcceptable, c as createFederationBuilder, i as respondWithObject, l as Router, o as buildCollectionSynchronizationHeader, r as createExponentialBackoffPolicy, s as digest, t as createFederation, u as RouterError } from "./middleware-BPwhaRyh.js";
8
+ import { t as lookupWebFinger } from "./lookup-BRKVwJc1.js";
9
+ import { i as importJwk, n as fetchKey, r as generateCryptoKeyPair, t as exportJwk } from "./key-BHH7odYU.js";
10
+ import { n as signRequest, r as verifyRequest } from "./http-DOLmvrYy.js";
11
+ import { _ as signJsonLd, a as doesActorOwnKey, b as verifySignature, d as createSignature, f as detachSignature, i as verifyProof, l as attachSignature, n as signObject, o as getKeyOwner, r as verifyObject, t as createProof, y as verifyJsonLd } from "./proof-AdZX_HYz.js";
12
+ import { a as parseSemVer, i as formatSemVer, n as getNodeInfo, r as parseNodeInfo, t as nodeInfoToJson } from "./types--FAljwt0.js";
13
+ import { t as getAuthenticatedDocumentLoader } from "./authdocloader-CHdPmjrz.js";
14
14
  import { PUBLIC_COLLECTION, isFediverseHandle, lookupObject, parseFediverseHandle, toAcctUrl, traverseCollection } from "./vocab/mod.js";
15
15
  import { InProcessMessageQueue, MemoryKvStore, ParallelMessageQueue } from "./federation/mod.js";
16
16
  import "./nodeinfo/mod.js";
@@ -1,11 +1,11 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { t as test } from "../testing-BQeTO4ss.mjs";
5
5
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
6
6
  import "../std__assert-2v7gYiZp.mjs";
7
- import { a as parseProtocol, c as parseUsage, i as parseOutboundService, n as parseInboundService, o as parseServices, r as parseNodeInfo, s as parseSoftware, t as getNodeInfo } from "../client-DDy3-85E.mjs";
8
- import { t as esm_default } from "../esm-CzaH6D4W.mjs";
7
+ import { a as parseProtocol, c as parseUsage, i as parseOutboundService, n as parseInboundService, o as parseServices, r as parseNodeInfo, s as parseSoftware, t as getNodeInfo } from "../client-DACpcUfJ.mjs";
8
+ import { t as esm_default } from "../esm-D-9VAGKG.mjs";
9
9
  //#region src/nodeinfo/client.test.ts
10
10
  test("getNodeInfo()", async (t) => {
11
11
  esm_default.spyGlobal();
@@ -68,6 +68,66 @@ test("getNodeInfo()", async (t) => {
68
68
  });
69
69
  esm_default.hardReset();
70
70
  });
71
+ test("getNodeInfo() blocks SSRF", async (t) => {
72
+ esm_default.spyGlobal();
73
+ await t.step("link href pointing to a loopback address", async () => {
74
+ esm_default.removeRoutes();
75
+ esm_default.get("https://example.com/.well-known/nodeinfo", { body: { links: [{
76
+ rel: "http://nodeinfo.diaspora.software/ns/schema/2.1",
77
+ href: "http://127.0.0.1:8080/internal"
78
+ }] } });
79
+ let internalFetched = false;
80
+ esm_default.get("http://127.0.0.1:8080/internal", () => {
81
+ internalFetched = true;
82
+ return { body: { secret: "INTERNAL_DATA_LEAKED" } };
83
+ });
84
+ assertEquals(await getNodeInfo("https://example.com/", { parse: "none" }), void 0);
85
+ assertEquals(internalFetched, false);
86
+ });
87
+ await t.step("link href using a data: URL", async () => {
88
+ esm_default.removeRoutes();
89
+ esm_default.get("https://example.com/.well-known/nodeinfo", { body: { links: [{
90
+ rel: "http://nodeinfo.diaspora.software/ns/schema/2.0",
91
+ href: "data:application/json,{\"software\":{\"name\":\"x\"}}"
92
+ }] } });
93
+ assertEquals(await getNodeInfo("https://example.com/", { parse: "none" }), void 0);
94
+ });
95
+ await t.step("redirect to a private address", async () => {
96
+ esm_default.removeRoutes();
97
+ esm_default.get("https://example.com/.well-known/nodeinfo", { body: { links: [{
98
+ rel: "http://nodeinfo.diaspora.software/ns/schema/2.1",
99
+ href: "https://example.com/nodeinfo/2.1"
100
+ }] } });
101
+ esm_default.get("https://example.com/nodeinfo/2.1", {
102
+ status: 302,
103
+ headers: { Location: "https://127.0.0.1:8080/internal" }
104
+ });
105
+ let internalFetched = false;
106
+ esm_default.get("https://127.0.0.1:8080/internal", () => {
107
+ internalFetched = true;
108
+ return { body: { secret: "INTERNAL_DATA_LEAKED" } };
109
+ });
110
+ assertEquals(await getNodeInfo("https://example.com/", { parse: "none" }), void 0);
111
+ assertEquals(internalFetched, false);
112
+ });
113
+ await t.step("direct fetch of a private address", async () => {
114
+ esm_default.removeRoutes();
115
+ let internalFetched = false;
116
+ esm_default.get("http://127.0.0.1:8080/nodeinfo", () => {
117
+ internalFetched = true;
118
+ return { body: { software: {
119
+ name: "x",
120
+ version: "1.0.0"
121
+ } } };
122
+ });
123
+ assertEquals(await getNodeInfo("http://127.0.0.1:8080/nodeinfo", {
124
+ direct: true,
125
+ parse: "none"
126
+ }), void 0);
127
+ assertEquals(internalFetched, false);
128
+ });
129
+ esm_default.hardReset();
130
+ });
71
131
  test("parseNodeInfo()", () => {
72
132
  const input = {
73
133
  software: {
@@ -1,11 +1,11 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { i as createRequestContext, t as test } from "../testing-DskvUSfh.mjs";
4
+ import { i as createRequestContext, t as test } from "../testing-BQeTO4ss.mjs";
5
5
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
6
6
  import "../std__assert-2v7gYiZp.mjs";
7
7
  import { t as MemoryKvStore } from "../kv-OuT2IU64.mjs";
8
- import { a as createFederation, g as handleNodeInfoJrd, h as handleNodeInfo } from "../middleware-CzjJsU2k.mjs";
8
+ import { a as createFederation, g as handleNodeInfoJrd, h as handleNodeInfo } from "../middleware-C26Vj2UM.mjs";
9
9
  import { n as parseSemVer } from "../semver-CgD82xxg.mjs";
10
10
  //#region src/nodeinfo/handler.test.ts
11
11
  test("handleNodeInfo()", async () => {
@@ -1,7 +1,7 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const require_types = require("../types-BWNGBD9D.cjs");
4
+ const require_types = require("../types-DU73__Ms.cjs");
5
5
  exports.formatSemVer = require_types.formatSemVer;
6
6
  exports.getNodeInfo = require_types.getNodeInfo;
7
7
  exports.nodeInfoToJson = require_types.nodeInfoToJson;
@@ -1,4 +1,4 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
- import { a as parseSemVer, i as formatSemVer, n as getNodeInfo, r as parseNodeInfo, t as nodeInfoToJson } from "../types-B-GUdtNR.js";
3
+ import { a as parseSemVer, i as formatSemVer, n as getNodeInfo, r as parseNodeInfo, t as nodeInfoToJson } from "../types--FAljwt0.js";
4
4
  export { formatSemVer, getNodeInfo, nodeInfoToJson, parseNodeInfo, parseSemVer };
@@ -1,7 +1,7 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { t as test } from "../testing-BQeTO4ss.mjs";
5
5
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
6
6
  import "../std__assert-2v7gYiZp.mjs";
7
7
  import { t as assertThrows } from "../assert_throws-BIL7gChy.mjs";
@@ -1,7 +1,7 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { t as test } from "../testing-BQeTO4ss.mjs";
5
5
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
6
6
  import "../std__assert-2v7gYiZp.mjs";
7
7
  import { t as assertThrows } from "../assert_throws-BIL7gChy.mjs";
@@ -1,7 +1,7 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { t as test } from "../testing-BQeTO4ss.mjs";
5
5
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
6
6
  import "../std__assert-2v7gYiZp.mjs";
7
7
  import { t as assertThrows } from "../assert_throws-BIL7gChy.mjs";
package/dist/otel/mod.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- require("../docloader-CvMstYam.cjs");
4
+ require("../docloader-VJ0pkUIi.cjs");
5
5
  let _logtape_logtape = require("@logtape/logtape");
6
6
  let _opentelemetry_core = require("@opentelemetry/core");
7
7
  //#region src/otel/exporter.ts
@@ -1,9 +1,9 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { J as getDocumentLoader, ot as name, s as CryptographicKey, st as version, v as Object$1 } from "./vocab-C0yDmtpE.mjs";
5
- import { i as isActor } from "./actor-CTpwJ1pI.mjs";
6
- import "./key-LJoRzwG2.mjs";
4
+ import { J as getDocumentLoader, ot as name, s as CryptographicKey, st as version, v as Object$1 } from "./vocab-C5EUmVTj.mjs";
5
+ import { i as isActor } from "./actor-C9uF9rDY.mjs";
6
+ import "./key-CvS3OKm_.mjs";
7
7
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
8
8
  //#region src/sig/owner.ts
9
9
  /**
@@ -1,8 +1,8 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
- import { d as name, f as version, i as getDocumentLoader } from "./docloader-Ca6-eCr_.js";
4
- import { G as Multikey, Tt as getTypeId, b as DataIntegrityProof, i as isActor, q as Object$1, s as Activity, y as CryptographicKey } from "./actor-B7XRaa54.js";
5
- import { n as fetchKey, o as validateCryptoKey } from "./key-CJU1QxP2.js";
3
+ import { d as name, f as version, i as getDocumentLoader } from "./docloader-C7Hk8BRD.js";
4
+ import { G as Multikey, Tt as getTypeId, b as DataIntegrityProof, i as isActor, q as Object$1, s as Activity, y as CryptographicKey } from "./actor-BojFQubG.js";
5
+ import { n as fetchKey, o as validateCryptoKey } from "./key-BHH7odYU.js";
6
6
  import { getLogger } from "@logtape/logtape";
7
7
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
8
8
  import jsonld from "jsonld";
@@ -1,8 +1,8 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { U as getTypeId, c as DataIntegrityProof, g as Multikey, ot as name, st as version, t as Activity } from "./vocab-C0yDmtpE.mjs";
5
- import { a as validateCryptoKey, n as fetchKey } from "./key-LJoRzwG2.mjs";
4
+ import { U as getTypeId, c as DataIntegrityProof, g as Multikey, ot as name, st as version, t as Activity } from "./vocab-C5EUmVTj.mjs";
5
+ import { a as validateCryptoKey, n as fetchKey } from "./key-CvS3OKm_.mjs";
6
6
  import { getLogger } from "@logtape/logtape";
7
7
  import { SpanStatusCode, trace } from "@opentelemetry/api";
8
8
  import { encodeHex } from "byte-encodings/hex";
@@ -1,8 +1,8 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
- const require_docloader = require("./docloader-CvMstYam.cjs");
4
- const require_actor = require("./actor--xTQfY8h.cjs");
5
- const require_key = require("./key-BbdUjmdf.cjs");
3
+ const require_docloader = require("./docloader-VJ0pkUIi.cjs");
4
+ const require_actor = require("./actor-U7L0GWq5.cjs");
5
+ const require_key = require("./key-CiP-0NDL.cjs");
6
6
  let _logtape_logtape = require("@logtape/logtape");
7
7
  let _opentelemetry_api = require("@opentelemetry/api");
8
8
  let jsonld = require("jsonld");
@@ -1,15 +1,15 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { $ as UrlError } from "../vocab-C0yDmtpE.mjs";
5
- import { a as mockDocumentLoader, t as test } from "../testing-DskvUSfh.mjs";
4
+ import { $ as UrlError } from "../vocab-C5EUmVTj.mjs";
5
+ import { a as mockDocumentLoader, t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import "../std__assert-2v7gYiZp.mjs";
8
8
  import { t as assertRejects } from "../assert_rejects-CJC9ThS-.mjs";
9
- import { l as verifyRequest } from "../http-CiqAQGRx.mjs";
10
- import { t as getAuthenticatedDocumentLoader } from "../authdocloader-DJ-h-WMy.mjs";
11
- import { t as esm_default } from "../esm-CzaH6D4W.mjs";
12
- import { i as rsaPrivateKey2 } from "../keys-wZip1i2J.mjs";
9
+ import { l as verifyRequest } from "../http-B7ppDy7F.mjs";
10
+ import { t as getAuthenticatedDocumentLoader } from "../authdocloader-Bzj36aN0.mjs";
11
+ import { t as esm_default } from "../esm-D-9VAGKG.mjs";
12
+ import { i as rsaPrivateKey2 } from "../keys-BkXWqCAE.mjs";
13
13
  //#region src/runtime/authdocloader.test.ts
14
14
  test("getAuthenticatedDocumentLoader()", async (t) => {
15
15
  esm_default.spyGlobal();
@@ -1,15 +1,15 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import { URLPattern } from "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { $ as UrlError, G as FetchError, J as getDocumentLoader, X as getUserAgent, Z as kvCache, at as preloadedContexts, st as version } from "../vocab-C0yDmtpE.mjs";
5
- import { a as mockDocumentLoader, t as test } from "../testing-DskvUSfh.mjs";
4
+ import { $ as UrlError, G as FetchError, J as getDocumentLoader, X as getUserAgent, Z as kvCache, at as preloadedContexts, st as version } from "../vocab-C5EUmVTj.mjs";
5
+ import { a as mockDocumentLoader, t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import "../std__assert-2v7gYiZp.mjs";
8
8
  import { t as assertRejects } from "../assert_rejects-CJC9ThS-.mjs";
9
9
  import { t as assertThrows } from "../assert_throws-BIL7gChy.mjs";
10
10
  import { t as assert } from "../assert-DikXweDx.mjs";
11
11
  import { t as MemoryKvStore } from "../kv-OuT2IU64.mjs";
12
- import { t as esm_default } from "../esm-CzaH6D4W.mjs";
12
+ import { t as esm_default } from "../esm-D-9VAGKG.mjs";
13
13
  import { t as createTestTracerProvider } from "../otel-D00WjYJ1.mjs";
14
14
  import process from "node:process";
15
15
  //#region src/runtime/docloader.test.ts
@@ -1,11 +1,11 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { F as importPkcs1, I as importSpki, M as exportSpki, N as importMultibaseKey, P as importPem, j as exportMultibaseKey } from "../vocab-C0yDmtpE.mjs";
5
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { F as importPkcs1, I as importSpki, M as exportSpki, N as importMultibaseKey, P as importPem, j as exportMultibaseKey } from "../vocab-C5EUmVTj.mjs";
5
+ import { t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import "../std__assert-2v7gYiZp.mjs";
8
- import { i as importJwk, t as exportJwk } from "../key-LJoRzwG2.mjs";
8
+ import { i as importJwk, t as exportJwk } from "../key-CvS3OKm_.mjs";
9
9
  //#region src/runtime/key.test.ts
10
10
  const rsaSpki = "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxsRuvCkgJtflBTl4OVsm\nnt/J1mQfZasfJtN33dcZ3d1lJroxmgmMu69zjGEAwkNbMQaWNLqC4eogkJaeJ4RR\n5MHYXkL9nNilVoTkjX5BVit3puzs7XJ7WQnKQgQMI+ezn24GHsZ/v1JIo77lerX5\nk4HNwTNVt+yaZVQWaOMR3+6FwziQR6kd0VuG9/a9dgAnz2cEoORRC1i4W7IZaB1s\nZnh1WbHbevlGd72HSXll5rocPIHn8gq6xpBgpHwRphlRsgn4KHaJ6brXDIJjrnQh\nIe/YUBOGj/ImSEXhRwlFerKsoAVnZ0Hwbfa46qk44TAt8CyoPMWmpK6pt0ng4pQ2\nuwIDAQAB\n-----END PUBLIC KEY-----\n";
11
11
  const rsaPkcs1 = "-----BEGIN RSA PUBLIC KEY-----\nMIIBCgKCAQEAxsRuvCkgJtflBTl4OVsmnt/J1mQfZasfJtN33dcZ3d1lJroxmgmM\nu69zjGEAwkNbMQaWNLqC4eogkJaeJ4RR5MHYXkL9nNilVoTkjX5BVit3puzs7XJ7\nWQnKQgQMI+ezn24GHsZ/v1JIo77lerX5k4HNwTNVt+yaZVQWaOMR3+6FwziQR6kd\n0VuG9/a9dgAnz2cEoORRC1i4W7IZaB1sZnh1WbHbevlGd72HSXll5rocPIHn8gq6\nxpBgpHwRphlRsgn4KHaJ6brXDIJjrnQhIe/YUBOGj/ImSEXhRwlFerKsoAVnZ0Hw\nbfa46qk44TAt8CyoPMWmpK6pt0ng4pQ2uwIDAQAB\n-----END RSA PUBLIC KEY-----\n";
@@ -1,8 +1,8 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { A as LanguageString } from "../vocab-C0yDmtpE.mjs";
5
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { A as LanguageString } from "../vocab-C5EUmVTj.mjs";
5
+ import { t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import "../std__assert-2v7gYiZp.mjs";
8
8
  import { parseLanguageTag } from "@phensley/language-tag";
@@ -1,8 +1,8 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { it as HttpHeaderLink } from "../vocab-C0yDmtpE.mjs";
5
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { it as HttpHeaderLink } from "../vocab-C5EUmVTj.mjs";
5
+ import { t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { deepStrictEqual, throws } from "node:assert";
7
7
  //#region src/runtime/link.test.ts
8
8
  test("String Good 1", () => {
@@ -1,9 +1,9 @@
1
1
  const { Temporal } = require("@js-temporal/polyfill");
2
2
  const { URLPattern } = require("urlpattern-polyfill");
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
4
- const require_docloader = require("../docloader-CvMstYam.cjs");
5
- const require_actor = require("../actor--xTQfY8h.cjs");
6
- const require_authdocloader = require("../authdocloader-DMkkNwRc.cjs");
4
+ const require_docloader = require("../docloader-VJ0pkUIi.cjs");
5
+ const require_actor = require("../actor-U7L0GWq5.cjs");
6
+ const require_authdocloader = require("../authdocloader-hnKNsDdH.cjs");
7
7
  exports.FetchError = require_docloader.FetchError;
8
8
  exports.LanguageString = require_actor.LanguageString;
9
9
  exports.exportMultibaseKey = require_actor.exportMultibaseKey;
@@ -1,6 +1,6 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
- import { i as getDocumentLoader, o as getUserAgent, r as fetchDocumentLoader, s as kvCache, t as FetchError } from "../docloader-Ca6-eCr_.js";
4
- import { Ct as importPkcs1, St as importPem, bt as exportSpki, vt as LanguageString, wt as importSpki, xt as importMultibaseKey, yt as exportMultibaseKey } from "../actor-B7XRaa54.js";
5
- import { t as getAuthenticatedDocumentLoader } from "../authdocloader-_h7VKnUP.js";
3
+ import { i as getDocumentLoader, o as getUserAgent, r as fetchDocumentLoader, s as kvCache, t as FetchError } from "../docloader-C7Hk8BRD.js";
4
+ import { Ct as importPkcs1, St as importPem, bt as exportSpki, vt as LanguageString, wt as importSpki, xt as importMultibaseKey, yt as exportMultibaseKey } from "../actor-BojFQubG.js";
5
+ import { t as getAuthenticatedDocumentLoader } from "../authdocloader-CHdPmjrz.js";
6
6
  export { FetchError, LanguageString, exportMultibaseKey, exportSpki, fetchDocumentLoader, getAuthenticatedDocumentLoader, getDocumentLoader, getUserAgent, importMultibaseKey, importPem, importPkcs1, importSpki, kvCache };
@@ -1,8 +1,8 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { B as names, H as encodeText, L as decode, R as encode, V as decodeText, z as codes } from "../../vocab-C0yDmtpE.mjs";
5
- import { t as test } from "../../testing-DskvUSfh.mjs";
4
+ import { B as names, H as encodeText, L as decode, R as encode, V as decodeText, z as codes } from "../../vocab-C5EUmVTj.mjs";
5
+ import { t as test } from "../../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../../assert_equals-Ew3jOFa3.mjs";
7
7
  import "../../std__assert-2v7gYiZp.mjs";
8
8
  //#region src/runtime/multibase/multibase.test.ts
@@ -1,8 +1,8 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { $ as UrlError, et as expandIPv6Address, nt as isValidPublicIPv6Address, rt as validatePublicUrl, tt as isValidPublicIPv4Address } from "../vocab-C0yDmtpE.mjs";
5
- import { t as test } from "../testing-DskvUSfh.mjs";
4
+ import { $ as UrlError, et as expandIPv6Address, nt as isValidPublicIPv6Address, rt as validatePublicUrl, tt as isValidPublicIPv4Address } from "../vocab-C5EUmVTj.mjs";
5
+ import { t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import { n as assertFalse, t as assertRejects } from "../assert_rejects-CJC9ThS-.mjs";
8
8
  import { t as assert } from "../assert-DikXweDx.mjs";
@@ -1,8 +1,8 @@
1
1
  import "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { ot as name, st as version } from "./vocab-C0yDmtpE.mjs";
5
- import { n as doubleKnock } from "./http-CiqAQGRx.mjs";
4
+ import { ot as name, st as version } from "./vocab-C5EUmVTj.mjs";
5
+ import { n as doubleKnock } from "./http-B7ppDy7F.mjs";
6
6
  import { getLogger } from "@logtape/logtape";
7
7
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
8
8
  //#region src/federation/send.ts
@@ -1,17 +1,17 @@
1
1
  import { Temporal } from "@js-temporal/polyfill";
2
2
  import "urlpattern-polyfill";
3
3
  globalThis.addEventListener = () => {};
4
- import { M as exportSpki } from "../vocab-C0yDmtpE.mjs";
5
- import { a as mockDocumentLoader, t as test } from "../testing-DskvUSfh.mjs";
4
+ import { M as exportSpki } from "../vocab-C5EUmVTj.mjs";
5
+ import { a as mockDocumentLoader, t as test } from "../testing-BQeTO4ss.mjs";
6
6
  import { t as assertEquals } from "../assert_equals-Ew3jOFa3.mjs";
7
7
  import { a as assertExists, t as assertStringIncludes } from "../std__assert-2v7gYiZp.mjs";
8
8
  import { n as assertFalse, t as assertRejects } from "../assert_rejects-CJC9ThS-.mjs";
9
9
  import { t as assertThrows } from "../assert_throws-BIL7gChy.mjs";
10
10
  import { t as assert } from "../assert-DikXweDx.mjs";
11
- import { t as exportJwk } from "../key-LJoRzwG2.mjs";
12
- import { a as parseRfc9421Signature, c as timingSafeEqual, i as formatRfc9421SignatureParameters, l as verifyRequest, n as doubleKnock, o as parseRfc9421SignatureInput, r as formatRfc9421Signature, s as signRequest, t as createRfc9421SignatureBase } from "../http-CiqAQGRx.mjs";
13
- import { t as esm_default } from "../esm-CzaH6D4W.mjs";
14
- import { i as rsaPrivateKey2, l as rsaPublicKey5, o as rsaPublicKey1, s as rsaPublicKey2 } from "../keys-wZip1i2J.mjs";
11
+ import { t as exportJwk } from "../key-CvS3OKm_.mjs";
12
+ import { a as parseRfc9421Signature, c as timingSafeEqual, i as formatRfc9421SignatureParameters, l as verifyRequest, n as doubleKnock, o as parseRfc9421SignatureInput, r as formatRfc9421Signature, s as signRequest, t as createRfc9421SignatureBase } from "../http-B7ppDy7F.mjs";
13
+ import { t as esm_default } from "../esm-D-9VAGKG.mjs";
14
+ import { i as rsaPrivateKey2, l as rsaPublicKey5, o as rsaPublicKey1, s as rsaPublicKey2 } from "../keys-BkXWqCAE.mjs";
15
15
  import { encodeBase64 } from "byte-encodings/base64";
16
16
  //#region src/sig/http.test.ts
17
17
  test("signRequest() [draft-cavage]", async () => {