@fedify/vocab 2.4.0-dev.1618 → 2.4.0-dev.1634

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.
@@ -4,7 +4,7 @@ import "node:module";
4
4
  import { SpanStatusCode, trace } from "@opentelemetry/api";
5
5
  import jsonld from "@fedify/vocab-runtime/jsonld";
6
6
  import { getLogger } from "@logtape/logtape";
7
- import { LanguageString, decodeMultibase, encodeMultibase, exportMultibaseKey, exportSpki, formatIri, getDocumentLoader, importMultibaseKey, importPem, isDecimal, parseDecimal, parseIri, parseJsonLdId } from "@fedify/vocab-runtime";
7
+ import { LanguageString, decodeMultibase, encodeMultibase, exportMultibaseKey, exportSpki, formatIri, getDocumentLoader, importMultibaseKey, importPem, isDecimal, isGatewayUrl, parseDecimal, parseGatewayUrl, parseIri, parseJsonLdId } from "@fedify/vocab-runtime";
8
8
  import { compactJsonLdCache, isTrustedIriOrigin, normalizeJsonLdIris } from "@fedify/vocab-runtime/internal/jsonld-cache";
9
9
  import { isTemporalDuration, isTemporalInstant } from "@fedify/vocab-runtime/temporal";
10
10
  //#region \0rolldown/runtime.js
@@ -46,7 +46,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
46
46
  * When an `icon` or `image` property on a vocabulary object contains an
47
47
  * explicit ActivityStreams `Link` rather than an `Image`, this preprocessor
48
48
  * converts it into an `Image` by mapping `href` to `url`, copying
49
- * `mediaType`, `name`, `width`, and `height`, and discarding the rest.
49
+ * `mediaType`, `name`, `width`, `height`, and `digestMultibase`, and
50
+ * discarding the rest.
50
51
  *
51
52
  * If the value is not a Link, or the Link has no `href`, it returns
52
53
  * `undefined` so the normal range decoder continues.
@@ -67,7 +68,8 @@ const normalizeLinkToImage = async (value, context) => {
67
68
  mediaType: link.mediaType,
68
69
  names: link.names != null && link.names.length > 0 ? link.names : void 0,
69
70
  width: link.width,
70
- height: link.height
71
+ height: link.height,
72
+ digestMultibase: link.digestMultibase
71
73
  });
72
74
  };
73
75
  //#endregion
@@ -22080,6 +22082,7 @@ var Application = class Application extends Object$1 {
22080
22082
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
22081
22083
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
22082
22084
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
22085
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
22083
22086
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
22084
22087
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
22085
22088
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -22148,6 +22151,13 @@ var Application = class Application extends Object$1 {
22148
22151
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
22149
22152
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
22150
22153
  }
22154
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
22155
+ else throw new TypeError("The gateway must be of type URL.");
22156
+ if ("gateways" in values && values.gateways != null) {
22157
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
22158
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
22159
+ else throw new TypeError("The gateways must be an array of type URL.");
22160
+ }
22151
22161
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
22152
22162
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
22153
22163
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -22278,6 +22288,14 @@ var Application = class Application extends Object$1 {
22278
22288
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
22279
22289
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
22280
22290
  }
22291
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
22292
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
22293
+ else throw new TypeError("The gateway must be of type URL.");
22294
+ if ("gateways" in values && values.gateways != null) {
22295
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
22296
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
22297
+ else throw new TypeError("The gateways must be an array of type URL.");
22298
+ }
22281
22299
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
22282
22300
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
22283
22301
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -22751,6 +22769,24 @@ var Application = class Application extends Object$1 {
22751
22769
  yield v;
22752
22770
  }
22753
22771
  }
22772
+ /** Gateways where the latest version of this portable actor object can be
22773
+ * retrieved.
22774
+ *
22775
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
22776
+ */
22777
+ get gateway() {
22778
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
22779
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
22780
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
22781
+ }
22782
+ /** Gateways where the latest version of this portable actor object can be
22783
+ * retrieved.
22784
+ *
22785
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
22786
+ */
22787
+ get gateways() {
22788
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
22789
+ }
22754
22790
  /** When `true`, conveys that for this actor, follow requests are not usually
22755
22791
  * automatically approved, but instead are examined by a person who may accept
22756
22792
  * or reject the request, at some time in the future. Setting of `false`
@@ -24620,6 +24656,12 @@ var Application = class Application extends Object$1 {
24620
24656
  }
24621
24657
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
24622
24658
  compactItems = [];
24659
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
24660
+ const item = formatIri(v);
24661
+ compactItems.push(item);
24662
+ }
24663
+ if (compactItems.length > 0) result["gateways"] = compactItems;
24664
+ compactItems = [];
24623
24665
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
24624
24666
  const item = v;
24625
24667
  compactItems.push(item);
@@ -24835,6 +24877,7 @@ var Application = class Application extends Object$1 {
24835
24877
  if (this.id != null) result["id"] = formatIri(this.id);
24836
24878
  result["@context"] = [
24837
24879
  "https://www.w3.org/ns/activitystreams",
24880
+ "https://w3id.org/fep/ef61",
24838
24881
  "https://w3id.org/security/v1",
24839
24882
  "https://w3id.org/security/data-integrity/v1",
24840
24883
  "https://www.w3.org/ns/did/v1",
@@ -24907,6 +24950,12 @@ var Application = class Application extends Object$1 {
24907
24950
  }
24908
24951
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
24909
24952
  array = [];
24953
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
24954
+ const element = { "@id": formatIri(v) };
24955
+ array.push(element);
24956
+ }
24957
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
24958
+ array = [];
24910
24959
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
24911
24960
  const element = { "@value": v };
24912
24961
  array.push(element);
@@ -25031,6 +25080,7 @@ var Application = class Application extends Object$1 {
25031
25080
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
25032
25081
  const docContext = options.context ?? [
25033
25082
  "https://www.w3.org/ns/activitystreams",
25083
+ "https://w3id.org/fep/ef61",
25034
25084
  "https://w3id.org/security/v1",
25035
25085
  "https://w3id.org/security/data-integrity/v1",
25036
25086
  "https://www.w3.org/ns/did/v1",
@@ -25194,6 +25244,15 @@ var Application = class Application extends Object$1 {
25194
25244
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
25195
25245
  }
25196
25246
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
25247
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
25248
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
25249
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
25250
+ if (v == null) continue;
25251
+ const decoded = parseGatewayUrl(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
25252
+ if (typeof decoded === "undefined") continue;
25253
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
25254
+ }
25255
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
25197
25256
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
25198
25257
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
25199
25258
  for (const v of _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array == null ? [] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array.length === 1 && "@list" in _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0] ? _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0]["@list"] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array) {
@@ -25535,6 +25594,12 @@ var Application = class Application extends Object$1 {
25535
25594
  } : v);
25536
25595
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
25537
25596
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
25597
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
25598
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
25599
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
25600
+ } : v);
25601
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
25602
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
25538
25603
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
25539
25604
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
25540
25605
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -26625,6 +26690,7 @@ var Document = class Document extends Object$1 {
26625
26690
  }
26626
26691
  #_2e9AP7WdHBJYAgXG6GEyq7nSkNMe_width = [];
26627
26692
  #_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [];
26693
+ #_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
26628
26694
  /**
26629
26695
  * Constructs a new instance of Document with the given values.
26630
26696
  * @param values The values to initialize the instance with.
@@ -26636,6 +26702,8 @@ var Document = class Document extends Object$1 {
26636
26702
  else throw new TypeError("The width must be of type number.");
26637
26703
  if ("height" in values && values.height != null) if (typeof values.height === "number" && Number.isInteger(values.height) && values.height >= 0) this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [values.height];
26638
26704
  else throw new TypeError("The height must be of type number.");
26705
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
26706
+ else throw new TypeError("The digestMultibase must be of type string.");
26639
26707
  }
26640
26708
  /**
26641
26709
  * Clones this instance, optionally updating it with the given values.
@@ -26658,6 +26726,9 @@ var Document = class Document extends Object$1 {
26658
26726
  clone.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height;
26659
26727
  if ("height" in values && values.height != null) if (typeof values.height === "number" && Number.isInteger(values.height) && values.height >= 0) clone.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [values.height];
26660
26728
  else throw new TypeError("The height must be of type number.");
26729
+ clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
26730
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
26731
+ else throw new TypeError("The digestMultibase must be of type string.");
26661
26732
  return clone;
26662
26733
  }
26663
26734
  /** Specifies a hint as to the rendering width in
@@ -26676,6 +26747,16 @@ var Document = class Document extends Object$1 {
26676
26747
  if (this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.length < 1) return null;
26677
26748
  return this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height[0];
26678
26749
  }
26750
+ /** The multibase-encoded integrity digest of an external resource represented
26751
+ * by this document.
26752
+ *
26753
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
26754
+ */
26755
+ get digestMultibase() {
26756
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
26757
+ if (this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length < 1) return null;
26758
+ return this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
26759
+ }
26679
26760
  /**
26680
26761
  * Converts this object to a JSON-LD structure.
26681
26762
  * @param options The options to use.
@@ -26711,11 +26792,18 @@ var Document = class Document extends Object$1 {
26711
26792
  compactItems.push(item);
26712
26793
  }
26713
26794
  if (compactItems.length > 0) result["height"] = compactItems.length > 1 ? compactItems : compactItems[0];
26795
+ compactItems = [];
26796
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
26797
+ const item = v;
26798
+ compactItems.push(item);
26799
+ }
26800
+ if (compactItems.length > 0) result["digestMultibase"] = compactItems.length > 1 ? compactItems : compactItems[0];
26714
26801
  result["type"] = "Document";
26715
26802
  if (this.id != null) result["id"] = formatIri(this.id);
26716
26803
  result["@context"] = [
26717
26804
  "https://www.w3.org/ns/activitystreams",
26718
- "https://w3id.org/security/data-integrity/v1",
26805
+ "https://w3id.org/security/data-integrity/v2",
26806
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
26719
26807
  "https://gotosocial.org/ns"
26720
26808
  ];
26721
26809
  return result;
@@ -26744,12 +26832,19 @@ var Document = class Document extends Object$1 {
26744
26832
  array.push(element);
26745
26833
  }
26746
26834
  if (array.length > 0) values["https://www.w3.org/ns/activitystreams#height"] = array;
26835
+ array = [];
26836
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
26837
+ const element = { "@value": v };
26838
+ array.push(element);
26839
+ }
26840
+ if (array.length > 0) values["https://www.w3.org/ns/credentials/v2#digestMultibase"] = array;
26747
26841
  values["@type"] = ["https://www.w3.org/ns/activitystreams#Document"];
26748
26842
  if (this.id != null) values["@id"] = formatIri(this.id);
26749
26843
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
26750
26844
  const docContext = options.context ?? [
26751
26845
  "https://www.w3.org/ns/activitystreams",
26752
- "https://w3id.org/security/data-integrity/v1",
26846
+ "https://w3id.org/security/data-integrity/v2",
26847
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
26753
26848
  "https://gotosocial.org/ns"
26754
26849
  ];
26755
26850
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -26850,6 +26945,15 @@ var Document = class Document extends Object$1 {
26850
26945
  _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.push(decoded);
26851
26946
  }
26852
26947
  instance.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height;
26948
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
26949
+ let _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array = values["https://www.w3.org/ns/credentials/v2#digestMultibase"];
26950
+ for (const v of _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array == null ? [] : _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array.length === 1 && "@list" in _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array[0] ? _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array[0]["@list"] : _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array) {
26951
+ if (v == null) continue;
26952
+ const decoded = v["@value"];
26953
+ if (typeof decoded === "undefined") continue;
26954
+ _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.push(decoded);
26955
+ }
26956
+ instance.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
26853
26957
  if (!("_fromSubclass" in options) || !options._fromSubclass) try {
26854
26958
  if (cacheJsonLd != null && cacheJsonLd !== expanded) {
26855
26959
  const compactArray = Array.isArray(json) && json.length === 1;
@@ -26874,6 +26978,11 @@ var Document = class Document extends Object$1 {
26874
26978
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
26875
26979
  } : v);
26876
26980
  if (_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.length == 1) proxy.height = _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height[0];
26981
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.map((v) => v instanceof URL ? {
26982
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
26983
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
26984
+ } : v);
26985
+ if (_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length == 1) proxy.digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
26877
26986
  return proxy;
26878
26987
  }
26879
26988
  };
@@ -26943,7 +27052,8 @@ var Audio = class Audio extends Document {
26943
27052
  if (this.id != null) result["id"] = formatIri(this.id);
26944
27053
  result["@context"] = [
26945
27054
  "https://www.w3.org/ns/activitystreams",
26946
- "https://w3id.org/security/data-integrity/v1",
27055
+ "https://w3id.org/security/data-integrity/v2",
27056
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
26947
27057
  "https://gotosocial.org/ns"
26948
27058
  ];
26949
27059
  return result;
@@ -26958,7 +27068,8 @@ var Audio = class Audio extends Document {
26958
27068
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
26959
27069
  const docContext = options.context ?? [
26960
27070
  "https://www.w3.org/ns/activitystreams",
26961
- "https://w3id.org/security/data-integrity/v1",
27071
+ "https://w3id.org/security/data-integrity/v2",
27072
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
26962
27073
  "https://gotosocial.org/ns"
26963
27074
  ];
26964
27075
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -29709,6 +29820,7 @@ var Group = class Group extends Object$1 {
29709
29820
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
29710
29821
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
29711
29822
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
29823
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
29712
29824
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
29713
29825
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
29714
29826
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -29777,6 +29889,13 @@ var Group = class Group extends Object$1 {
29777
29889
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
29778
29890
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
29779
29891
  }
29892
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
29893
+ else throw new TypeError("The gateway must be of type URL.");
29894
+ if ("gateways" in values && values.gateways != null) {
29895
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
29896
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
29897
+ else throw new TypeError("The gateways must be an array of type URL.");
29898
+ }
29780
29899
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
29781
29900
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
29782
29901
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -29907,6 +30026,14 @@ var Group = class Group extends Object$1 {
29907
30026
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
29908
30027
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
29909
30028
  }
30029
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
30030
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
30031
+ else throw new TypeError("The gateway must be of type URL.");
30032
+ if ("gateways" in values && values.gateways != null) {
30033
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
30034
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
30035
+ else throw new TypeError("The gateways must be an array of type URL.");
30036
+ }
29910
30037
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
29911
30038
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
29912
30039
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -30380,6 +30507,24 @@ var Group = class Group extends Object$1 {
30380
30507
  yield v;
30381
30508
  }
30382
30509
  }
30510
+ /** Gateways where the latest version of this portable actor object can be
30511
+ * retrieved.
30512
+ *
30513
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
30514
+ */
30515
+ get gateway() {
30516
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
30517
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
30518
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
30519
+ }
30520
+ /** Gateways where the latest version of this portable actor object can be
30521
+ * retrieved.
30522
+ *
30523
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
30524
+ */
30525
+ get gateways() {
30526
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
30527
+ }
30383
30528
  /** When `true`, conveys that for this actor, follow requests are not usually
30384
30529
  * automatically approved, but instead are examined by a person who may accept
30385
30530
  * or reject the request, at some time in the future. Setting of `false`
@@ -32249,6 +32394,12 @@ var Group = class Group extends Object$1 {
32249
32394
  }
32250
32395
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
32251
32396
  compactItems = [];
32397
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
32398
+ const item = formatIri(v);
32399
+ compactItems.push(item);
32400
+ }
32401
+ if (compactItems.length > 0) result["gateways"] = compactItems;
32402
+ compactItems = [];
32252
32403
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
32253
32404
  const item = v;
32254
32405
  compactItems.push(item);
@@ -32464,6 +32615,7 @@ var Group = class Group extends Object$1 {
32464
32615
  if (this.id != null) result["id"] = formatIri(this.id);
32465
32616
  result["@context"] = [
32466
32617
  "https://www.w3.org/ns/activitystreams",
32618
+ "https://w3id.org/fep/ef61",
32467
32619
  "https://w3id.org/security/v1",
32468
32620
  "https://w3id.org/security/data-integrity/v1",
32469
32621
  "https://www.w3.org/ns/did/v1",
@@ -32536,6 +32688,12 @@ var Group = class Group extends Object$1 {
32536
32688
  }
32537
32689
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
32538
32690
  array = [];
32691
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
32692
+ const element = { "@id": formatIri(v) };
32693
+ array.push(element);
32694
+ }
32695
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
32696
+ array = [];
32539
32697
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
32540
32698
  const element = { "@value": v };
32541
32699
  array.push(element);
@@ -32660,6 +32818,7 @@ var Group = class Group extends Object$1 {
32660
32818
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
32661
32819
  const docContext = options.context ?? [
32662
32820
  "https://www.w3.org/ns/activitystreams",
32821
+ "https://w3id.org/fep/ef61",
32663
32822
  "https://w3id.org/security/v1",
32664
32823
  "https://w3id.org/security/data-integrity/v1",
32665
32824
  "https://www.w3.org/ns/did/v1",
@@ -32823,6 +32982,15 @@ var Group = class Group extends Object$1 {
32823
32982
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
32824
32983
  }
32825
32984
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
32985
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
32986
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
32987
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
32988
+ if (v == null) continue;
32989
+ const decoded = parseGatewayUrl(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
32990
+ if (typeof decoded === "undefined") continue;
32991
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
32992
+ }
32993
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
32826
32994
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
32827
32995
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
32828
32996
  for (const v of _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array == null ? [] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array.length === 1 && "@list" in _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0] ? _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0]["@list"] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array) {
@@ -33164,6 +33332,12 @@ var Group = class Group extends Object$1 {
33164
33332
  } : v);
33165
33333
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
33166
33334
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
33335
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
33336
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
33337
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
33338
+ } : v);
33339
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
33340
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
33167
33341
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
33168
33342
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
33169
33343
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -33322,6 +33496,7 @@ var Link = class Link {
33322
33496
  #_pVjLsybKQdmkjuU7MHjiVmNnuj7_href = [];
33323
33497
  #_2a1c5GkfkQsnyyLybF8UXBQfFuHZ_rel = [];
33324
33498
  #_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [];
33499
+ #_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
33325
33500
  #_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [];
33326
33501
  #_f57HKWCp1YRBbTJE8PF12RbDJGf_hreflang = [];
33327
33502
  #_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [];
@@ -33353,6 +33528,8 @@ var Link = class Link {
33353
33528
  }
33354
33529
  if ("mediaType" in values && values.mediaType != null) if (typeof values.mediaType === "string") this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [values.mediaType];
33355
33530
  else throw new TypeError("The mediaType must be of type string.");
33531
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
33532
+ else throw new TypeError("The digestMultibase must be of type string.");
33356
33533
  if ("name" in values && values.name != null) if (typeof values.name === "string" || values.name instanceof LanguageString) this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [values.name];
33357
33534
  else throw new TypeError("The name must be of type string | LanguageString.");
33358
33535
  if ("names" in values && values.names != null) {
@@ -33400,6 +33577,9 @@ var Link = class Link {
33400
33577
  clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType;
33401
33578
  if ("mediaType" in values && values.mediaType != null) if (typeof values.mediaType === "string") clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [values.mediaType];
33402
33579
  else throw new TypeError("The mediaType must be of type string.");
33580
+ clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
33581
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
33582
+ else throw new TypeError("The digestMultibase must be of type string.");
33403
33583
  clone.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name;
33404
33584
  if ("name" in values && values.name != null) if (typeof values.name === "string" || values.name instanceof LanguageString) clone.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [values.name];
33405
33585
  else throw new TypeError("The name must be of type string | LanguageString.");
@@ -33463,6 +33643,15 @@ var Link = class Link {
33463
33643
  if (this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.length < 1) return null;
33464
33644
  return this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType[0];
33465
33645
  }
33646
+ /** The multibase-encoded integrity digest of the linked resource.
33647
+ *
33648
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
33649
+ */
33650
+ get digestMultibase() {
33651
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
33652
+ if (this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length < 1) return null;
33653
+ return this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
33654
+ }
33466
33655
  /** A simple, human-readable, plain-text name for the object. HTML markup MUST
33467
33656
  * NOT be included. The name MAY be expressed using multiple language-tagged
33468
33657
  * values.
@@ -33675,6 +33864,12 @@ var Link = class Link {
33675
33864
  }
33676
33865
  if (compactItems.length > 0) result["mediaType"] = compactItems.length > 1 ? compactItems : compactItems[0];
33677
33866
  compactItems = [];
33867
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
33868
+ const item = v;
33869
+ compactItems.push(item);
33870
+ }
33871
+ if (compactItems.length > 0) result["digestMultibase"] = compactItems.length > 1 ? compactItems : compactItems[0];
33872
+ compactItems = [];
33678
33873
  for (const v of this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name) {
33679
33874
  const item = typeof v === "string" ? v : {
33680
33875
  "@value": v.toString(),
@@ -33717,7 +33912,7 @@ var Link = class Link {
33717
33912
  if (compactItems.length > 0) result["preview"] = compactItems.length > 1 ? compactItems : compactItems[0];
33718
33913
  result["type"] = "Link";
33719
33914
  if (this.id != null) result["id"] = formatIri(this.id);
33720
- result["@context"] = "https://www.w3.org/ns/activitystreams";
33915
+ result["@context"] = ["https://www.w3.org/ns/activitystreams", "https://w3id.org/fep/ef61"];
33721
33916
  return result;
33722
33917
  }
33723
33918
  let array;
@@ -33741,6 +33936,12 @@ var Link = class Link {
33741
33936
  }
33742
33937
  if (array.length > 0) values["https://www.w3.org/ns/activitystreams#mediaType"] = array;
33743
33938
  array = [];
33939
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
33940
+ const element = { "@value": v };
33941
+ array.push(element);
33942
+ }
33943
+ if (array.length > 0) values["https://www.w3.org/ns/credentials/v2#digestMultibase"] = array;
33944
+ array = [];
33744
33945
  for (const v of this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name) {
33745
33946
  const element = typeof v === "string" ? { "@value": v } : {
33746
33947
  "@value": v.toString(),
@@ -33782,7 +33983,7 @@ var Link = class Link {
33782
33983
  values["@type"] = ["https://www.w3.org/ns/activitystreams#Link"];
33783
33984
  if (this.id != null) values["@id"] = formatIri(this.id);
33784
33985
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
33785
- const docContext = options.context ?? "https://www.w3.org/ns/activitystreams";
33986
+ const docContext = options.context ?? ["https://www.w3.org/ns/activitystreams", "https://w3id.org/fep/ef61"];
33786
33987
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
33787
33988
  if (docContext != null) {}
33788
33989
  return compacted;
@@ -33881,6 +34082,15 @@ var Link = class Link {
33881
34082
  _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.push(decoded);
33882
34083
  }
33883
34084
  instance.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType;
34085
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
34086
+ let _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array = values["https://www.w3.org/ns/credentials/v2#digestMultibase"];
34087
+ for (const v of _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array == null ? [] : _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array.length === 1 && "@list" in _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array[0] ? _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array[0]["@list"] : _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array) {
34088
+ if (v == null) continue;
34089
+ const decoded = v["@value"];
34090
+ if (typeof decoded === "undefined") continue;
34091
+ _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.push(decoded);
34092
+ }
34093
+ instance.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
33884
34094
  const _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [];
33885
34095
  let _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array = values["https://www.w3.org/ns/activitystreams#name"];
33886
34096
  for (const v of _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array == null ? [] : _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array.length === 1 && "@list" in _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array[0] ? _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array[0]["@list"] : _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array) {
@@ -34045,6 +34255,11 @@ var Link = class Link {
34045
34255
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
34046
34256
  } : v);
34047
34257
  if (_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.length == 1) proxy.mediaType = _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType[0];
34258
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.map((v) => v instanceof URL ? {
34259
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
34260
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
34261
+ } : v);
34262
+ if (_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length == 1) proxy.digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
34048
34263
  const _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name.map((v) => v instanceof URL ? {
34049
34264
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
34050
34265
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -34307,7 +34522,8 @@ var Image = class Image extends Document {
34307
34522
  if (this.id != null) result["id"] = formatIri(this.id);
34308
34523
  result["@context"] = [
34309
34524
  "https://www.w3.org/ns/activitystreams",
34310
- "https://w3id.org/security/data-integrity/v1",
34525
+ "https://w3id.org/security/data-integrity/v2",
34526
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
34311
34527
  "https://gotosocial.org/ns"
34312
34528
  ];
34313
34529
  return result;
@@ -34322,7 +34538,8 @@ var Image = class Image extends Document {
34322
34538
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
34323
34539
  const docContext = options.context ?? [
34324
34540
  "https://www.w3.org/ns/activitystreams",
34325
- "https://w3id.org/security/data-integrity/v1",
34541
+ "https://w3id.org/security/data-integrity/v2",
34542
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
34326
34543
  "https://gotosocial.org/ns"
34327
34544
  ];
34328
34545
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -36933,6 +37150,7 @@ var Organization = class Organization extends Object$1 {
36933
37150
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
36934
37151
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
36935
37152
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
37153
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
36936
37154
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
36937
37155
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
36938
37156
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -37001,6 +37219,13 @@ var Organization = class Organization extends Object$1 {
37001
37219
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
37002
37220
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
37003
37221
  }
37222
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
37223
+ else throw new TypeError("The gateway must be of type URL.");
37224
+ if ("gateways" in values && values.gateways != null) {
37225
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
37226
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
37227
+ else throw new TypeError("The gateways must be an array of type URL.");
37228
+ }
37004
37229
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
37005
37230
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
37006
37231
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -37131,6 +37356,14 @@ var Organization = class Organization extends Object$1 {
37131
37356
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
37132
37357
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
37133
37358
  }
37359
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
37360
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
37361
+ else throw new TypeError("The gateway must be of type URL.");
37362
+ if ("gateways" in values && values.gateways != null) {
37363
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
37364
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
37365
+ else throw new TypeError("The gateways must be an array of type URL.");
37366
+ }
37134
37367
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
37135
37368
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
37136
37369
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -37604,6 +37837,24 @@ var Organization = class Organization extends Object$1 {
37604
37837
  yield v;
37605
37838
  }
37606
37839
  }
37840
+ /** Gateways where the latest version of this portable actor object can be
37841
+ * retrieved.
37842
+ *
37843
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
37844
+ */
37845
+ get gateway() {
37846
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
37847
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
37848
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
37849
+ }
37850
+ /** Gateways where the latest version of this portable actor object can be
37851
+ * retrieved.
37852
+ *
37853
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
37854
+ */
37855
+ get gateways() {
37856
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
37857
+ }
37607
37858
  /** When `true`, conveys that for this actor, follow requests are not usually
37608
37859
  * automatically approved, but instead are examined by a person who may accept
37609
37860
  * or reject the request, at some time in the future. Setting of `false`
@@ -39473,6 +39724,12 @@ var Organization = class Organization extends Object$1 {
39473
39724
  }
39474
39725
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
39475
39726
  compactItems = [];
39727
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
39728
+ const item = formatIri(v);
39729
+ compactItems.push(item);
39730
+ }
39731
+ if (compactItems.length > 0) result["gateways"] = compactItems;
39732
+ compactItems = [];
39476
39733
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
39477
39734
  const item = v;
39478
39735
  compactItems.push(item);
@@ -39688,6 +39945,7 @@ var Organization = class Organization extends Object$1 {
39688
39945
  if (this.id != null) result["id"] = formatIri(this.id);
39689
39946
  result["@context"] = [
39690
39947
  "https://www.w3.org/ns/activitystreams",
39948
+ "https://w3id.org/fep/ef61",
39691
39949
  "https://w3id.org/security/v1",
39692
39950
  "https://w3id.org/security/data-integrity/v1",
39693
39951
  "https://www.w3.org/ns/did/v1",
@@ -39760,6 +40018,12 @@ var Organization = class Organization extends Object$1 {
39760
40018
  }
39761
40019
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
39762
40020
  array = [];
40021
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
40022
+ const element = { "@id": formatIri(v) };
40023
+ array.push(element);
40024
+ }
40025
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
40026
+ array = [];
39763
40027
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
39764
40028
  const element = { "@value": v };
39765
40029
  array.push(element);
@@ -39884,6 +40148,7 @@ var Organization = class Organization extends Object$1 {
39884
40148
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
39885
40149
  const docContext = options.context ?? [
39886
40150
  "https://www.w3.org/ns/activitystreams",
40151
+ "https://w3id.org/fep/ef61",
39887
40152
  "https://w3id.org/security/v1",
39888
40153
  "https://w3id.org/security/data-integrity/v1",
39889
40154
  "https://www.w3.org/ns/did/v1",
@@ -40047,6 +40312,15 @@ var Organization = class Organization extends Object$1 {
40047
40312
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
40048
40313
  }
40049
40314
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
40315
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
40316
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
40317
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
40318
+ if (v == null) continue;
40319
+ const decoded = parseGatewayUrl(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
40320
+ if (typeof decoded === "undefined") continue;
40321
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
40322
+ }
40323
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
40050
40324
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
40051
40325
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
40052
40326
  for (const v of _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array == null ? [] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array.length === 1 && "@list" in _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0] ? _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0]["@list"] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array) {
@@ -40388,6 +40662,12 @@ var Organization = class Organization extends Object$1 {
40388
40662
  } : v);
40389
40663
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
40390
40664
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
40665
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
40666
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
40667
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
40668
+ } : v);
40669
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
40670
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
40391
40671
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
40392
40672
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
40393
40673
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -40559,7 +40839,8 @@ var Page = class Page extends Document {
40559
40839
  if (this.id != null) result["id"] = formatIri(this.id);
40560
40840
  result["@context"] = [
40561
40841
  "https://www.w3.org/ns/activitystreams",
40562
- "https://w3id.org/security/data-integrity/v1",
40842
+ "https://w3id.org/security/data-integrity/v2",
40843
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
40563
40844
  "https://gotosocial.org/ns"
40564
40845
  ];
40565
40846
  return result;
@@ -40574,7 +40855,8 @@ var Page = class Page extends Document {
40574
40855
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
40575
40856
  const docContext = options.context ?? [
40576
40857
  "https://www.w3.org/ns/activitystreams",
40577
- "https://w3id.org/security/data-integrity/v1",
40858
+ "https://w3id.org/security/data-integrity/v2",
40859
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
40578
40860
  "https://gotosocial.org/ns"
40579
40861
  ];
40580
40862
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -40689,6 +40971,7 @@ var Person = class Person extends Object$1 {
40689
40971
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
40690
40972
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
40691
40973
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
40974
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
40692
40975
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
40693
40976
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
40694
40977
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -40757,6 +41040,13 @@ var Person = class Person extends Object$1 {
40757
41040
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
40758
41041
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
40759
41042
  }
41043
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
41044
+ else throw new TypeError("The gateway must be of type URL.");
41045
+ if ("gateways" in values && values.gateways != null) {
41046
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
41047
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
41048
+ else throw new TypeError("The gateways must be an array of type URL.");
41049
+ }
40760
41050
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
40761
41051
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
40762
41052
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -40887,6 +41177,14 @@ var Person = class Person extends Object$1 {
40887
41177
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
40888
41178
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
40889
41179
  }
41180
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
41181
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
41182
+ else throw new TypeError("The gateway must be of type URL.");
41183
+ if ("gateways" in values && values.gateways != null) {
41184
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
41185
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
41186
+ else throw new TypeError("The gateways must be an array of type URL.");
41187
+ }
40890
41188
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
40891
41189
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
40892
41190
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -41360,6 +41658,24 @@ var Person = class Person extends Object$1 {
41360
41658
  yield v;
41361
41659
  }
41362
41660
  }
41661
+ /** Gateways where the latest version of this portable actor object can be
41662
+ * retrieved.
41663
+ *
41664
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
41665
+ */
41666
+ get gateway() {
41667
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
41668
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
41669
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
41670
+ }
41671
+ /** Gateways where the latest version of this portable actor object can be
41672
+ * retrieved.
41673
+ *
41674
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
41675
+ */
41676
+ get gateways() {
41677
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
41678
+ }
41363
41679
  /** When `true`, conveys that for this actor, follow requests are not usually
41364
41680
  * automatically approved, but instead are examined by a person who may accept
41365
41681
  * or reject the request, at some time in the future. Setting of `false`
@@ -43229,6 +43545,12 @@ var Person = class Person extends Object$1 {
43229
43545
  }
43230
43546
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
43231
43547
  compactItems = [];
43548
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
43549
+ const item = formatIri(v);
43550
+ compactItems.push(item);
43551
+ }
43552
+ if (compactItems.length > 0) result["gateways"] = compactItems;
43553
+ compactItems = [];
43232
43554
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
43233
43555
  const item = v;
43234
43556
  compactItems.push(item);
@@ -43444,6 +43766,7 @@ var Person = class Person extends Object$1 {
43444
43766
  if (this.id != null) result["id"] = formatIri(this.id);
43445
43767
  result["@context"] = [
43446
43768
  "https://www.w3.org/ns/activitystreams",
43769
+ "https://w3id.org/fep/ef61",
43447
43770
  "https://w3id.org/security/v1",
43448
43771
  "https://w3id.org/security/data-integrity/v1",
43449
43772
  "https://www.w3.org/ns/did/v1",
@@ -43516,6 +43839,12 @@ var Person = class Person extends Object$1 {
43516
43839
  }
43517
43840
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
43518
43841
  array = [];
43842
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
43843
+ const element = { "@id": formatIri(v) };
43844
+ array.push(element);
43845
+ }
43846
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
43847
+ array = [];
43519
43848
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
43520
43849
  const element = { "@value": v };
43521
43850
  array.push(element);
@@ -43640,6 +43969,7 @@ var Person = class Person extends Object$1 {
43640
43969
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
43641
43970
  const docContext = options.context ?? [
43642
43971
  "https://www.w3.org/ns/activitystreams",
43972
+ "https://w3id.org/fep/ef61",
43643
43973
  "https://w3id.org/security/v1",
43644
43974
  "https://w3id.org/security/data-integrity/v1",
43645
43975
  "https://www.w3.org/ns/did/v1",
@@ -43803,6 +44133,15 @@ var Person = class Person extends Object$1 {
43803
44133
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
43804
44134
  }
43805
44135
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
44136
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
44137
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
44138
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
44139
+ if (v == null) continue;
44140
+ const decoded = parseGatewayUrl(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
44141
+ if (typeof decoded === "undefined") continue;
44142
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
44143
+ }
44144
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
43806
44145
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
43807
44146
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
43808
44147
  for (const v of _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array == null ? [] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array.length === 1 && "@list" in _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0] ? _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0]["@list"] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array) {
@@ -44144,6 +44483,12 @@ var Person = class Person extends Object$1 {
44144
44483
  } : v);
44145
44484
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
44146
44485
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
44486
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
44487
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
44488
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
44489
+ } : v);
44490
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
44491
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
44147
44492
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
44148
44493
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
44149
44494
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -47378,6 +47723,7 @@ var Service = class Service extends Object$1 {
47378
47723
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
47379
47724
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
47380
47725
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
47726
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
47381
47727
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
47382
47728
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
47383
47729
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -47446,6 +47792,13 @@ var Service = class Service extends Object$1 {
47446
47792
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
47447
47793
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
47448
47794
  }
47795
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
47796
+ else throw new TypeError("The gateway must be of type URL.");
47797
+ if ("gateways" in values && values.gateways != null) {
47798
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
47799
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
47800
+ else throw new TypeError("The gateways must be an array of type URL.");
47801
+ }
47449
47802
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
47450
47803
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
47451
47804
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -47576,6 +47929,14 @@ var Service = class Service extends Object$1 {
47576
47929
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
47577
47930
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
47578
47931
  }
47932
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
47933
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && isGatewayUrl(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
47934
+ else throw new TypeError("The gateway must be of type URL.");
47935
+ if ("gateways" in values && values.gateways != null) {
47936
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
47937
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && isGatewayUrl(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
47938
+ else throw new TypeError("The gateways must be an array of type URL.");
47939
+ }
47579
47940
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
47580
47941
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
47581
47942
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -48049,6 +48410,24 @@ var Service = class Service extends Object$1 {
48049
48410
  yield v;
48050
48411
  }
48051
48412
  }
48413
+ /** Gateways where the latest version of this portable actor object can be
48414
+ * retrieved.
48415
+ *
48416
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
48417
+ */
48418
+ get gateway() {
48419
+ if (this._warning != null) getLogger(this._warning.category).warn(this._warning.message, this._warning.values);
48420
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
48421
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
48422
+ }
48423
+ /** Gateways where the latest version of this portable actor object can be
48424
+ * retrieved.
48425
+ *
48426
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
48427
+ */
48428
+ get gateways() {
48429
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
48430
+ }
48052
48431
  /** When `true`, conveys that for this actor, follow requests are not usually
48053
48432
  * automatically approved, but instead are examined by a person who may accept
48054
48433
  * or reject the request, at some time in the future. Setting of `false`
@@ -49918,6 +50297,12 @@ var Service = class Service extends Object$1 {
49918
50297
  }
49919
50298
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
49920
50299
  compactItems = [];
50300
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
50301
+ const item = formatIri(v);
50302
+ compactItems.push(item);
50303
+ }
50304
+ if (compactItems.length > 0) result["gateways"] = compactItems;
50305
+ compactItems = [];
49921
50306
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
49922
50307
  const item = v;
49923
50308
  compactItems.push(item);
@@ -50133,6 +50518,7 @@ var Service = class Service extends Object$1 {
50133
50518
  if (this.id != null) result["id"] = formatIri(this.id);
50134
50519
  result["@context"] = [
50135
50520
  "https://www.w3.org/ns/activitystreams",
50521
+ "https://w3id.org/fep/ef61",
50136
50522
  "https://w3id.org/security/v1",
50137
50523
  "https://w3id.org/security/data-integrity/v1",
50138
50524
  "https://www.w3.org/ns/did/v1",
@@ -50205,6 +50591,12 @@ var Service = class Service extends Object$1 {
50205
50591
  }
50206
50592
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
50207
50593
  array = [];
50594
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
50595
+ const element = { "@id": formatIri(v) };
50596
+ array.push(element);
50597
+ }
50598
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
50599
+ array = [];
50208
50600
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
50209
50601
  const element = { "@value": v };
50210
50602
  array.push(element);
@@ -50329,6 +50721,7 @@ var Service = class Service extends Object$1 {
50329
50721
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
50330
50722
  const docContext = options.context ?? [
50331
50723
  "https://www.w3.org/ns/activitystreams",
50724
+ "https://w3id.org/fep/ef61",
50332
50725
  "https://w3id.org/security/v1",
50333
50726
  "https://w3id.org/security/data-integrity/v1",
50334
50727
  "https://www.w3.org/ns/did/v1",
@@ -50492,6 +50885,15 @@ var Service = class Service extends Object$1 {
50492
50885
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
50493
50886
  }
50494
50887
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
50888
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
50889
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
50890
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
50891
+ if (v == null) continue;
50892
+ const decoded = parseGatewayUrl(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
50893
+ if (typeof decoded === "undefined") continue;
50894
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
50895
+ }
50896
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
50495
50897
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
50496
50898
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
50497
50899
  for (const v of _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array == null ? [] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array.length === 1 && "@list" in _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0] ? _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array[0]["@list"] : _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array) {
@@ -50833,6 +51235,12 @@ var Service = class Service extends Object$1 {
50833
51235
  } : v);
50834
51236
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
50835
51237
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
51238
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
51239
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
51240
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
51241
+ } : v);
51242
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
51243
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
50836
51244
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
50837
51245
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
50838
51246
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -52477,7 +52885,8 @@ var Video = class Video extends Document {
52477
52885
  if (this.id != null) result["id"] = formatIri(this.id);
52478
52886
  result["@context"] = [
52479
52887
  "https://www.w3.org/ns/activitystreams",
52480
- "https://w3id.org/security/data-integrity/v1",
52888
+ "https://w3id.org/security/data-integrity/v2",
52889
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
52481
52890
  "https://gotosocial.org/ns"
52482
52891
  ];
52483
52892
  return result;
@@ -52492,7 +52901,8 @@ var Video = class Video extends Document {
52492
52901
  if (options.format === "expand") return await jsonld.expand(values, { documentLoader: options.contextLoader });
52493
52902
  const docContext = options.context ?? [
52494
52903
  "https://www.w3.org/ns/activitystreams",
52495
- "https://w3id.org/security/data-integrity/v1",
52904
+ "https://w3id.org/security/data-integrity/v2",
52905
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
52496
52906
  "https://gotosocial.org/ns"
52497
52907
  ];
52498
52908
  const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -52920,4 +53330,4 @@ function getEntityTypeById(id) {
52920
53330
  return entityTypeIds.get(typeof id === "string" ? id : id?.href);
52921
53331
  }
52922
53332
  //#endregion
52923
- export { Organization as A, Tombstone as B, Link as C, Object$1 as D, Note as E, QuoteAuthorization as F, __exportAll as G, isEntityType as H, QuoteRequest as I, __toESM as K, Reject as L, Place as M, Proposal as N, Offer as O, Question as P, Service as R, InteractionRule as S, Multikey as T, vocab_exports as U, getEntityTypeById as V, __commonJSMin as W, Follow as _, Application as a, Intent as b, Create as c, Document as d, Endpoints as f, FeaturedItem as g, FeaturedCollection as h, Announce as i, Person as j, OrderedCollectionPage as k, CryptographicKey as l, FeatureRequest as m, Activity as n, Collection as o, FeatureAuthorization as p, Agreement as r, Commitment as s, Accept as t, Delete as u, Group as v, Measure as w, InteractionPolicy as x, Hashtag as y, Source as z };
53333
+ export { OrderedCollectionPage as A, Source as B, InteractionRule as C, Note as D, Multikey as E, Question as F, __commonJSMin as G, getEntityTypeById as H, QuoteAuthorization as I, __exportAll as K, QuoteRequest as L, Person as M, Place as N, Object$1 as O, Proposal as P, Reject as R, InteractionPolicy as S, Measure as T, isEntityType as U, Tombstone as V, vocab_exports as W, Follow as _, Application as a, Image as b, Create as c, Document as d, Endpoints as f, FeaturedItem as g, FeaturedCollection as h, Announce as i, Organization as j, Offer as k, CryptographicKey as l, FeatureRequest as m, Activity as n, Collection as o, FeatureAuthorization as p, __toESM as q, Agreement as r, Commitment as s, Accept as t, Delete as u, Group as v, Link as w, Intent as x, Hashtag as y, Service as z };