@fedify/vocab 2.4.0-dev.1599 → 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.
Files changed (41) hide show
  1. package/deno.json +1 -1
  2. package/dist/mod.cjs +472 -16
  3. package/dist/mod.d.cts +119 -1
  4. package/dist/mod.d.ts +119 -1
  5. package/dist/mod.js +473 -17
  6. package/dist-tests/{actor-NhcklZK0.mjs → actor-BQd8S953.mjs} +2 -2
  7. package/dist-tests/actor.test.mjs +2 -2
  8. package/dist-tests/application.yaml +15 -0
  9. package/dist-tests/audio.yaml +2 -1
  10. package/dist-tests/document.yaml +14 -1
  11. package/dist-tests/endpoints.yaml +14 -0
  12. package/dist-tests/group.yaml +15 -0
  13. package/dist-tests/image.yaml +2 -1
  14. package/dist-tests/link.yaml +14 -1
  15. package/dist-tests/lookup.test.mjs +71 -4
  16. package/dist-tests/organization.yaml +15 -0
  17. package/dist-tests/page.yaml +2 -1
  18. package/dist-tests/person.yaml +15 -0
  19. package/dist-tests/service.yaml +15 -0
  20. package/dist-tests/type.test.mjs +1 -1
  21. package/dist-tests/video.yaml +2 -1
  22. package/dist-tests/{vocab-BQ8y6QS7.mjs → vocab-Bjwctrxn.mjs} +472 -16
  23. package/dist-tests/vocab.test.mjs +232 -2
  24. package/package.json +4 -4
  25. package/src/__snapshots__/vocab.test.ts.snap +60 -18
  26. package/src/application.yaml +15 -0
  27. package/src/audio.yaml +2 -1
  28. package/src/document.yaml +14 -1
  29. package/src/endpoints.yaml +14 -0
  30. package/src/group.yaml +15 -0
  31. package/src/image.yaml +2 -1
  32. package/src/link.yaml +14 -1
  33. package/src/lookup.test.ts +121 -0
  34. package/src/lookup.ts +3 -1
  35. package/src/organization.yaml +15 -0
  36. package/src/page.yaml +2 -1
  37. package/src/person.yaml +15 -0
  38. package/src/preprocessors.ts +3 -1
  39. package/src/service.yaml +15 -0
  40. package/src/video.yaml +2 -1
  41. package/src/vocab.test.ts +372 -0
package/dist/mod.cjs CHANGED
@@ -34,7 +34,7 @@ let _fedify_vocab_runtime_temporal = require("@fedify/vocab-runtime/temporal");
34
34
  let es_toolkit = require("es-toolkit");
35
35
  //#region deno.json
36
36
  var name = "@fedify/vocab";
37
- var version = "2.4.0-dev.1599+7b19967f";
37
+ var version = "2.4.0-dev.1634+3b4bfbb6";
38
38
  //#endregion
39
39
  //#region src/type.ts
40
40
  function getTypeId(object) {
@@ -3607,7 +3607,8 @@ NativeTemporal && Date.prototype.toTemporalInstant;
3607
3607
  * When an `icon` or `image` property on a vocabulary object contains an
3608
3608
  * explicit ActivityStreams `Link` rather than an `Image`, this preprocessor
3609
3609
  * converts it into an `Image` by mapping `href` to `url`, copying
3610
- * `mediaType`, `name`, `width`, and `height`, and discarding the rest.
3610
+ * `mediaType`, `name`, `width`, `height`, and `digestMultibase`, and
3611
+ * discarding the rest.
3611
3612
  *
3612
3613
  * If the value is not a Link, or the Link has no `href`, it returns
3613
3614
  * `undefined` so the normal range decoder continues.
@@ -3628,7 +3629,8 @@ const normalizeLinkToImage = async (value, context) => {
3628
3629
  mediaType: link.mediaType,
3629
3630
  names: link.names != null && link.names.length > 0 ? link.names : void 0,
3630
3631
  width: link.width,
3631
- height: link.height
3632
+ height: link.height,
3633
+ digestMultibase: link.digestMultibase
3632
3634
  });
3633
3635
  };
3634
3636
  //#endregion
@@ -3755,6 +3757,7 @@ const PORTABLE_IRI_KEYS = new Set([
3755
3757
  "https://www.w3.org/ns/activitystreams#target",
3756
3758
  "https://www.w3.org/ns/activitystreams#to",
3757
3759
  "https://www.w3.org/ns/activitystreams#units",
3760
+ "https://www.w3.org/ns/activitystreams#uploadMedia",
3758
3761
  "https://www.w3.org/ns/activitystreams#url",
3759
3762
  "https://www.w3.org/ns/did#service",
3760
3763
  "https://www.w3.org/ns/did#serviceEndpoint",
@@ -3816,6 +3819,7 @@ const PORTABLE_IRI_KEYS = new Set([
3816
3819
  "target",
3817
3820
  "to",
3818
3821
  "units",
3822
+ "uploadMedia",
3819
3823
  "url"
3820
3824
  ]);
3821
3825
  /** Describes an object of any kind. The Object type serves as the base type for
@@ -25551,6 +25555,7 @@ var Application = class Application extends Object$1 {
25551
25555
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
25552
25556
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
25553
25557
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
25558
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
25554
25559
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
25555
25560
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
25556
25561
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -25619,6 +25624,13 @@ var Application = class Application extends Object$1 {
25619
25624
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
25620
25625
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
25621
25626
  }
25627
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
25628
+ else throw new TypeError("The gateway must be of type URL.");
25629
+ if ("gateways" in values && values.gateways != null) {
25630
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
25631
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
25632
+ else throw new TypeError("The gateways must be an array of type URL.");
25633
+ }
25622
25634
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
25623
25635
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
25624
25636
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -25749,6 +25761,14 @@ var Application = class Application extends Object$1 {
25749
25761
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
25750
25762
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
25751
25763
  }
25764
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
25765
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
25766
+ else throw new TypeError("The gateway must be of type URL.");
25767
+ if ("gateways" in values && values.gateways != null) {
25768
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
25769
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
25770
+ else throw new TypeError("The gateways must be an array of type URL.");
25771
+ }
25752
25772
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
25753
25773
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
25754
25774
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -26222,6 +26242,24 @@ var Application = class Application extends Object$1 {
26222
26242
  yield v;
26223
26243
  }
26224
26244
  }
26245
+ /** Gateways where the latest version of this portable actor object can be
26246
+ * retrieved.
26247
+ *
26248
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
26249
+ */
26250
+ get gateway() {
26251
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
26252
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
26253
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
26254
+ }
26255
+ /** Gateways where the latest version of this portable actor object can be
26256
+ * retrieved.
26257
+ *
26258
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
26259
+ */
26260
+ get gateways() {
26261
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
26262
+ }
26225
26263
  /** When `true`, conveys that for this actor, follow requests are not usually
26226
26264
  * automatically approved, but instead are examined by a person who may accept
26227
26265
  * or reject the request, at some time in the future. Setting of `false`
@@ -28091,6 +28129,12 @@ var Application = class Application extends Object$1 {
28091
28129
  }
28092
28130
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
28093
28131
  compactItems = [];
28132
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
28133
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
28134
+ compactItems.push(item);
28135
+ }
28136
+ if (compactItems.length > 0) result["gateways"] = compactItems;
28137
+ compactItems = [];
28094
28138
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
28095
28139
  const item = v;
28096
28140
  compactItems.push(item);
@@ -28306,6 +28350,7 @@ var Application = class Application extends Object$1 {
28306
28350
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
28307
28351
  result["@context"] = [
28308
28352
  "https://www.w3.org/ns/activitystreams",
28353
+ "https://w3id.org/fep/ef61",
28309
28354
  "https://w3id.org/security/v1",
28310
28355
  "https://w3id.org/security/data-integrity/v1",
28311
28356
  "https://www.w3.org/ns/did/v1",
@@ -28378,6 +28423,12 @@ var Application = class Application extends Object$1 {
28378
28423
  }
28379
28424
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
28380
28425
  array = [];
28426
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
28427
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
28428
+ array.push(element);
28429
+ }
28430
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
28431
+ array = [];
28381
28432
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
28382
28433
  const element = { "@value": v };
28383
28434
  array.push(element);
@@ -28502,6 +28553,7 @@ var Application = class Application extends Object$1 {
28502
28553
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
28503
28554
  const docContext = options.context ?? [
28504
28555
  "https://www.w3.org/ns/activitystreams",
28556
+ "https://w3id.org/fep/ef61",
28505
28557
  "https://w3id.org/security/v1",
28506
28558
  "https://w3id.org/security/data-integrity/v1",
28507
28559
  "https://www.w3.org/ns/did/v1",
@@ -28665,6 +28717,15 @@ var Application = class Application extends Object$1 {
28665
28717
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
28666
28718
  }
28667
28719
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
28720
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
28721
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
28722
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
28723
+ if (v == null) continue;
28724
+ const decoded = (0, _fedify_vocab_runtime.parseGatewayUrl)(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
28725
+ if (typeof decoded === "undefined") continue;
28726
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
28727
+ }
28728
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
28668
28729
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
28669
28730
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
28670
28731
  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) {
@@ -29006,6 +29067,12 @@ var Application = class Application extends Object$1 {
29006
29067
  } : v);
29007
29068
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
29008
29069
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
29070
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
29071
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
29072
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
29073
+ } : v);
29074
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
29075
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
29009
29076
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
29010
29077
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
29011
29078
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -30096,6 +30163,7 @@ var Document = class Document extends Object$1 {
30096
30163
  }
30097
30164
  #_2e9AP7WdHBJYAgXG6GEyq7nSkNMe_width = [];
30098
30165
  #_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [];
30166
+ #_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
30099
30167
  /**
30100
30168
  * Constructs a new instance of Document with the given values.
30101
30169
  * @param values The values to initialize the instance with.
@@ -30107,6 +30175,8 @@ var Document = class Document extends Object$1 {
30107
30175
  else throw new TypeError("The width must be of type number.");
30108
30176
  if ("height" in values && values.height != null) if (typeof values.height === "number" && Number.isInteger(values.height) && values.height >= 0) this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [values.height];
30109
30177
  else throw new TypeError("The height must be of type number.");
30178
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
30179
+ else throw new TypeError("The digestMultibase must be of type string.");
30110
30180
  }
30111
30181
  /**
30112
30182
  * Clones this instance, optionally updating it with the given values.
@@ -30129,6 +30199,9 @@ var Document = class Document extends Object$1 {
30129
30199
  clone.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height;
30130
30200
  if ("height" in values && values.height != null) if (typeof values.height === "number" && Number.isInteger(values.height) && values.height >= 0) clone.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [values.height];
30131
30201
  else throw new TypeError("The height must be of type number.");
30202
+ clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
30203
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
30204
+ else throw new TypeError("The digestMultibase must be of type string.");
30132
30205
  return clone;
30133
30206
  }
30134
30207
  /** Specifies a hint as to the rendering width in
@@ -30147,6 +30220,16 @@ var Document = class Document extends Object$1 {
30147
30220
  if (this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.length < 1) return null;
30148
30221
  return this.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height[0];
30149
30222
  }
30223
+ /** The multibase-encoded integrity digest of an external resource represented
30224
+ * by this document.
30225
+ *
30226
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
30227
+ */
30228
+ get digestMultibase() {
30229
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
30230
+ if (this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length < 1) return null;
30231
+ return this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
30232
+ }
30150
30233
  /**
30151
30234
  * Converts this object to a JSON-LD structure.
30152
30235
  * @param options The options to use.
@@ -30182,11 +30265,18 @@ var Document = class Document extends Object$1 {
30182
30265
  compactItems.push(item);
30183
30266
  }
30184
30267
  if (compactItems.length > 0) result["height"] = compactItems.length > 1 ? compactItems : compactItems[0];
30268
+ compactItems = [];
30269
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
30270
+ const item = v;
30271
+ compactItems.push(item);
30272
+ }
30273
+ if (compactItems.length > 0) result["digestMultibase"] = compactItems.length > 1 ? compactItems : compactItems[0];
30185
30274
  result["type"] = "Document";
30186
30275
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
30187
30276
  result["@context"] = [
30188
30277
  "https://www.w3.org/ns/activitystreams",
30189
- "https://w3id.org/security/data-integrity/v1",
30278
+ "https://w3id.org/security/data-integrity/v2",
30279
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
30190
30280
  "https://gotosocial.org/ns"
30191
30281
  ];
30192
30282
  return result;
@@ -30215,12 +30305,19 @@ var Document = class Document extends Object$1 {
30215
30305
  array.push(element);
30216
30306
  }
30217
30307
  if (array.length > 0) values["https://www.w3.org/ns/activitystreams#height"] = array;
30308
+ array = [];
30309
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
30310
+ const element = { "@value": v };
30311
+ array.push(element);
30312
+ }
30313
+ if (array.length > 0) values["https://www.w3.org/ns/credentials/v2#digestMultibase"] = array;
30218
30314
  values["@type"] = ["https://www.w3.org/ns/activitystreams#Document"];
30219
30315
  if (this.id != null) values["@id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
30220
30316
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
30221
30317
  const docContext = options.context ?? [
30222
30318
  "https://www.w3.org/ns/activitystreams",
30223
- "https://w3id.org/security/data-integrity/v1",
30319
+ "https://w3id.org/security/data-integrity/v2",
30320
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
30224
30321
  "https://gotosocial.org/ns"
30225
30322
  ];
30226
30323
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -30321,6 +30418,15 @@ var Document = class Document extends Object$1 {
30321
30418
  _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.push(decoded);
30322
30419
  }
30323
30420
  instance.#_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height;
30421
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
30422
+ let _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array = values["https://www.w3.org/ns/credentials/v2#digestMultibase"];
30423
+ 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) {
30424
+ if (v == null) continue;
30425
+ const decoded = v["@value"];
30426
+ if (typeof decoded === "undefined") continue;
30427
+ _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.push(decoded);
30428
+ }
30429
+ instance.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
30324
30430
  if (!("_fromSubclass" in options) || !options._fromSubclass) try {
30325
30431
  if (cacheJsonLd != null && cacheJsonLd !== expanded) {
30326
30432
  const compactArray = Array.isArray(json) && json.length === 1;
@@ -30345,6 +30451,11 @@ var Document = class Document extends Object$1 {
30345
30451
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
30346
30452
  } : v);
30347
30453
  if (_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height.length == 1) proxy.height = _2cGKFeFJMmiNpGZFEF75mCwFQsKb_height[0];
30454
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.map((v) => v instanceof URL ? {
30455
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
30456
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
30457
+ } : v);
30458
+ if (_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length == 1) proxy.digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
30348
30459
  return proxy;
30349
30460
  }
30350
30461
  };
@@ -30414,7 +30525,8 @@ var Audio = class Audio extends Document {
30414
30525
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
30415
30526
  result["@context"] = [
30416
30527
  "https://www.w3.org/ns/activitystreams",
30417
- "https://w3id.org/security/data-integrity/v1",
30528
+ "https://w3id.org/security/data-integrity/v2",
30529
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
30418
30530
  "https://gotosocial.org/ns"
30419
30531
  ];
30420
30532
  return result;
@@ -30429,7 +30541,8 @@ var Audio = class Audio extends Document {
30429
30541
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
30430
30542
  const docContext = options.context ?? [
30431
30543
  "https://www.w3.org/ns/activitystreams",
30432
- "https://w3id.org/security/data-integrity/v1",
30544
+ "https://w3id.org/security/data-integrity/v2",
30545
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
30433
30546
  "https://gotosocial.org/ns"
30434
30547
  ];
30435
30548
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -32208,6 +32321,7 @@ var Endpoints = class {
32208
32321
  #_8Bx9qN8oU7Bpt2xi6khaxWp1gMr_provideClientKey = [];
32209
32322
  #_3dU7PMVQZJpsCpo2F4RQXxBXdPmS_signClientKey = [];
32210
32323
  #_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox = [];
32324
+ #_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = [];
32211
32325
  /**
32212
32326
  * Constructs a new instance of Endpoints with the given values.
32213
32327
  * @param values The values to initialize the instance with.
@@ -32234,6 +32348,8 @@ var Endpoints = class {
32234
32348
  else throw new TypeError("The signClientKey must be of type URL.");
32235
32349
  if ("sharedInbox" in values && values.sharedInbox != null) if (values.sharedInbox instanceof URL) this.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox = [values.sharedInbox];
32236
32350
  else throw new TypeError("The sharedInbox must be of type URL.");
32351
+ if ("uploadMedia" in values && values.uploadMedia != null) if (values.uploadMedia instanceof URL) this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = [values.uploadMedia];
32352
+ else throw new TypeError("The uploadMedia must be of type URL.");
32237
32353
  }
32238
32354
  /**
32239
32355
  * Clones this instance, optionally updating it with the given values.
@@ -32268,6 +32384,9 @@ var Endpoints = class {
32268
32384
  clone.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox = this.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox;
32269
32385
  if ("sharedInbox" in values && values.sharedInbox != null) if (values.sharedInbox instanceof URL) clone.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox = [values.sharedInbox];
32270
32386
  else throw new TypeError("The sharedInbox must be of type URL.");
32387
+ clone.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia;
32388
+ if ("uploadMedia" in values && values.uploadMedia != null) if (values.uploadMedia instanceof URL) clone.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = [values.uploadMedia];
32389
+ else throw new TypeError("The uploadMedia must be of type URL.");
32271
32390
  return clone;
32272
32391
  }
32273
32392
  /** Endpoint URI so this actor's clients may access remote ActivityStreams
@@ -32335,6 +32454,18 @@ var Endpoints = class {
32335
32454
  if (this.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox.length < 1) return null;
32336
32455
  return this.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox[0];
32337
32456
  }
32457
+ /** Upload endpoint URI for this user for binary data, such as an image or
32458
+ * video, as described in the [ActivityPub Media
32459
+ * Upload](https://www.w3.org/wiki/SocialCG/ActivityPub/MediaUpload) extension.
32460
+ * Clients `POST` a `multipart/form-data` request containing a `file` part
32461
+ * (the binary payload) and an `object` part (an ActivityStreams object shell)
32462
+ * to this endpoint.
32463
+ */
32464
+ get uploadMedia() {
32465
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
32466
+ if (this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia.length < 1) return null;
32467
+ return this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia[0];
32468
+ }
32338
32469
  /**
32339
32470
  * Converts this object to a JSON-LD structure.
32340
32471
  * @param options The options to use.
@@ -32390,6 +32521,12 @@ var Endpoints = class {
32390
32521
  compactItems.push(item);
32391
32522
  }
32392
32523
  if (compactItems.length > 0) result["sharedInbox"] = compactItems.length > 1 ? compactItems : compactItems[0];
32524
+ compactItems = [];
32525
+ for (const v of this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia) {
32526
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
32527
+ compactItems.push(item);
32528
+ }
32529
+ if (compactItems.length > 0) result["uploadMedia"] = compactItems.length > 1 ? compactItems : compactItems[0];
32393
32530
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
32394
32531
  result["@context"] = "https://www.w3.org/ns/activitystreams";
32395
32532
  return result;
@@ -32432,6 +32569,12 @@ var Endpoints = class {
32432
32569
  array.push(element);
32433
32570
  }
32434
32571
  if (array.length > 0) values["https://www.w3.org/ns/activitystreams#sharedInbox"] = array;
32572
+ array = [];
32573
+ for (const v of this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia) {
32574
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
32575
+ array.push(element);
32576
+ }
32577
+ if (array.length > 0) values["https://www.w3.org/ns/activitystreams#uploadMedia"] = array;
32435
32578
  if (this.id != null) values["@id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
32436
32579
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
32437
32580
  const docContext = options.context ?? "https://www.w3.org/ns/activitystreams";
@@ -32557,6 +32700,15 @@ var Endpoints = class {
32557
32700
  _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox.push(decoded);
32558
32701
  }
32559
32702
  instance.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox = _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox;
32703
+ const _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = [];
32704
+ let _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array = values["https://www.w3.org/ns/activitystreams#uploadMedia"];
32705
+ for (const v of _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array == null ? [] : _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array.length === 1 && "@list" in _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array[0] ? _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array[0]["@list"] : _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia__array) {
32706
+ if (v == null) continue;
32707
+ const decoded = (0, _fedify_vocab_runtime.parseIri)(v["@id"], options.baseUrl);
32708
+ if (typeof decoded === "undefined") continue;
32709
+ _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia.push(decoded);
32710
+ }
32711
+ instance.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia;
32560
32712
  if (!("_fromSubclass" in options) || !options._fromSubclass) try {
32561
32713
  if (cacheJsonLd != null && cacheJsonLd !== expanded) {
32562
32714
  const compactArray = Array.isArray(json) && json.length === 1;
@@ -32605,6 +32757,11 @@ var Endpoints = class {
32605
32757
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
32606
32758
  } : v);
32607
32759
  if (_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox.length == 1) proxy.sharedInbox = _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox[0];
32760
+ const _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia = this.#_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia.map((v) => v instanceof URL ? {
32761
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
32762
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
32763
+ } : v);
32764
+ if (_KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia.length == 1) proxy.uploadMedia = _KukVKGqFRETxAxXA15YCYAA7XAT_uploadMedia[0];
32608
32765
  return proxy;
32609
32766
  }
32610
32767
  };
@@ -33136,6 +33293,7 @@ var Group = class Group extends Object$1 {
33136
33293
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
33137
33294
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
33138
33295
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
33296
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
33139
33297
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
33140
33298
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
33141
33299
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -33204,6 +33362,13 @@ var Group = class Group extends Object$1 {
33204
33362
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
33205
33363
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
33206
33364
  }
33365
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
33366
+ else throw new TypeError("The gateway must be of type URL.");
33367
+ if ("gateways" in values && values.gateways != null) {
33368
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
33369
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
33370
+ else throw new TypeError("The gateways must be an array of type URL.");
33371
+ }
33207
33372
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
33208
33373
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
33209
33374
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -33334,6 +33499,14 @@ var Group = class Group extends Object$1 {
33334
33499
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
33335
33500
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
33336
33501
  }
33502
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
33503
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
33504
+ else throw new TypeError("The gateway must be of type URL.");
33505
+ if ("gateways" in values && values.gateways != null) {
33506
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
33507
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
33508
+ else throw new TypeError("The gateways must be an array of type URL.");
33509
+ }
33337
33510
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
33338
33511
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
33339
33512
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -33807,6 +33980,24 @@ var Group = class Group extends Object$1 {
33807
33980
  yield v;
33808
33981
  }
33809
33982
  }
33983
+ /** Gateways where the latest version of this portable actor object can be
33984
+ * retrieved.
33985
+ *
33986
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
33987
+ */
33988
+ get gateway() {
33989
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
33990
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
33991
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
33992
+ }
33993
+ /** Gateways where the latest version of this portable actor object can be
33994
+ * retrieved.
33995
+ *
33996
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
33997
+ */
33998
+ get gateways() {
33999
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
34000
+ }
33810
34001
  /** When `true`, conveys that for this actor, follow requests are not usually
33811
34002
  * automatically approved, but instead are examined by a person who may accept
33812
34003
  * or reject the request, at some time in the future. Setting of `false`
@@ -35676,6 +35867,12 @@ var Group = class Group extends Object$1 {
35676
35867
  }
35677
35868
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
35678
35869
  compactItems = [];
35870
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
35871
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
35872
+ compactItems.push(item);
35873
+ }
35874
+ if (compactItems.length > 0) result["gateways"] = compactItems;
35875
+ compactItems = [];
35679
35876
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
35680
35877
  const item = v;
35681
35878
  compactItems.push(item);
@@ -35891,6 +36088,7 @@ var Group = class Group extends Object$1 {
35891
36088
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
35892
36089
  result["@context"] = [
35893
36090
  "https://www.w3.org/ns/activitystreams",
36091
+ "https://w3id.org/fep/ef61",
35894
36092
  "https://w3id.org/security/v1",
35895
36093
  "https://w3id.org/security/data-integrity/v1",
35896
36094
  "https://www.w3.org/ns/did/v1",
@@ -35963,6 +36161,12 @@ var Group = class Group extends Object$1 {
35963
36161
  }
35964
36162
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
35965
36163
  array = [];
36164
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
36165
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
36166
+ array.push(element);
36167
+ }
36168
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
36169
+ array = [];
35966
36170
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
35967
36171
  const element = { "@value": v };
35968
36172
  array.push(element);
@@ -36087,6 +36291,7 @@ var Group = class Group extends Object$1 {
36087
36291
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
36088
36292
  const docContext = options.context ?? [
36089
36293
  "https://www.w3.org/ns/activitystreams",
36294
+ "https://w3id.org/fep/ef61",
36090
36295
  "https://w3id.org/security/v1",
36091
36296
  "https://w3id.org/security/data-integrity/v1",
36092
36297
  "https://www.w3.org/ns/did/v1",
@@ -36250,6 +36455,15 @@ var Group = class Group extends Object$1 {
36250
36455
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
36251
36456
  }
36252
36457
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
36458
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
36459
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
36460
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
36461
+ if (v == null) continue;
36462
+ const decoded = (0, _fedify_vocab_runtime.parseGatewayUrl)(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
36463
+ if (typeof decoded === "undefined") continue;
36464
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
36465
+ }
36466
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
36253
36467
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
36254
36468
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
36255
36469
  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) {
@@ -36591,6 +36805,12 @@ var Group = class Group extends Object$1 {
36591
36805
  } : v);
36592
36806
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
36593
36807
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
36808
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
36809
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
36810
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
36811
+ } : v);
36812
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
36813
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
36594
36814
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
36595
36815
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
36596
36816
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -36749,6 +36969,7 @@ var Link = class Link {
36749
36969
  #_pVjLsybKQdmkjuU7MHjiVmNnuj7_href = [];
36750
36970
  #_2a1c5GkfkQsnyyLybF8UXBQfFuHZ_rel = [];
36751
36971
  #_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [];
36972
+ #_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
36752
36973
  #_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [];
36753
36974
  #_f57HKWCp1YRBbTJE8PF12RbDJGf_hreflang = [];
36754
36975
  #_2cGKFeFJMmiNpGZFEF75mCwFQsKb_height = [];
@@ -36780,6 +37001,8 @@ var Link = class Link {
36780
37001
  }
36781
37002
  if ("mediaType" in values && values.mediaType != null) if (typeof values.mediaType === "string") this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [values.mediaType];
36782
37003
  else throw new TypeError("The mediaType must be of type string.");
37004
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
37005
+ else throw new TypeError("The digestMultibase must be of type string.");
36783
37006
  if ("name" in values && values.name != null) if (typeof values.name === "string" || values.name instanceof _fedify_vocab_runtime.LanguageString) this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [values.name];
36784
37007
  else throw new TypeError("The name must be of type string | LanguageString.");
36785
37008
  if ("names" in values && values.names != null) {
@@ -36827,6 +37050,9 @@ var Link = class Link {
36827
37050
  clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType;
36828
37051
  if ("mediaType" in values && values.mediaType != null) if (typeof values.mediaType === "string") clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = [values.mediaType];
36829
37052
  else throw new TypeError("The mediaType must be of type string.");
37053
+ clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
37054
+ if ("digestMultibase" in values && values.digestMultibase != null) if (typeof values.digestMultibase === "string") clone.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [values.digestMultibase];
37055
+ else throw new TypeError("The digestMultibase must be of type string.");
36830
37056
  clone.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name;
36831
37057
  if ("name" in values && values.name != null) if (typeof values.name === "string" || values.name instanceof _fedify_vocab_runtime.LanguageString) clone.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [values.name];
36832
37058
  else throw new TypeError("The name must be of type string | LanguageString.");
@@ -36890,6 +37116,15 @@ var Link = class Link {
36890
37116
  if (this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.length < 1) return null;
36891
37117
  return this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType[0];
36892
37118
  }
37119
+ /** The multibase-encoded integrity digest of the linked resource.
37120
+ *
37121
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
37122
+ */
37123
+ get digestMultibase() {
37124
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
37125
+ if (this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length < 1) return null;
37126
+ return this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
37127
+ }
36893
37128
  /** A simple, human-readable, plain-text name for the object. HTML markup MUST
36894
37129
  * NOT be included. The name MAY be expressed using multiple language-tagged
36895
37130
  * values.
@@ -37102,6 +37337,12 @@ var Link = class Link {
37102
37337
  }
37103
37338
  if (compactItems.length > 0) result["mediaType"] = compactItems.length > 1 ? compactItems : compactItems[0];
37104
37339
  compactItems = [];
37340
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
37341
+ const item = v;
37342
+ compactItems.push(item);
37343
+ }
37344
+ if (compactItems.length > 0) result["digestMultibase"] = compactItems.length > 1 ? compactItems : compactItems[0];
37345
+ compactItems = [];
37105
37346
  for (const v of this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name) {
37106
37347
  const item = typeof v === "string" ? v : {
37107
37348
  "@value": v.toString(),
@@ -37144,7 +37385,7 @@ var Link = class Link {
37144
37385
  if (compactItems.length > 0) result["preview"] = compactItems.length > 1 ? compactItems : compactItems[0];
37145
37386
  result["type"] = "Link";
37146
37387
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
37147
- result["@context"] = "https://www.w3.org/ns/activitystreams";
37388
+ result["@context"] = ["https://www.w3.org/ns/activitystreams", "https://w3id.org/fep/ef61"];
37148
37389
  return result;
37149
37390
  }
37150
37391
  let array;
@@ -37168,6 +37409,12 @@ var Link = class Link {
37168
37409
  }
37169
37410
  if (array.length > 0) values["https://www.w3.org/ns/activitystreams#mediaType"] = array;
37170
37411
  array = [];
37412
+ for (const v of this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase) {
37413
+ const element = { "@value": v };
37414
+ array.push(element);
37415
+ }
37416
+ if (array.length > 0) values["https://www.w3.org/ns/credentials/v2#digestMultibase"] = array;
37417
+ array = [];
37171
37418
  for (const v of this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name) {
37172
37419
  const element = typeof v === "string" ? { "@value": v } : {
37173
37420
  "@value": v.toString(),
@@ -37209,7 +37456,7 @@ var Link = class Link {
37209
37456
  values["@type"] = ["https://www.w3.org/ns/activitystreams#Link"];
37210
37457
  if (this.id != null) values["@id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
37211
37458
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
37212
- const docContext = options.context ?? "https://www.w3.org/ns/activitystreams";
37459
+ const docContext = options.context ?? ["https://www.w3.org/ns/activitystreams", "https://w3id.org/fep/ef61"];
37213
37460
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
37214
37461
  if (docContext != null) {}
37215
37462
  return compacted;
@@ -37308,6 +37555,15 @@ var Link = class Link {
37308
37555
  _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.push(decoded);
37309
37556
  }
37310
37557
  instance.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType = _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType;
37558
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = [];
37559
+ let _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase__array = values["https://www.w3.org/ns/credentials/v2#digestMultibase"];
37560
+ 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) {
37561
+ if (v == null) continue;
37562
+ const decoded = v["@value"];
37563
+ if (typeof decoded === "undefined") continue;
37564
+ _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.push(decoded);
37565
+ }
37566
+ instance.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase;
37311
37567
  const _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = [];
37312
37568
  let _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name__array = values["https://www.w3.org/ns/activitystreams#name"];
37313
37569
  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) {
@@ -37472,6 +37728,11 @@ var Link = class Link {
37472
37728
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
37473
37729
  } : v);
37474
37730
  if (_3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType.length == 1) proxy.mediaType = _3BLrzmscsjHCw8TF5BHRW9WkPnX8_mediaType[0];
37731
+ const _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase = this.#_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.map((v) => v instanceof URL ? {
37732
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
37733
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
37734
+ } : v);
37735
+ if (_2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase.length == 1) proxy.digestMultibase = _2ydcBe182LRq82jFGE6Rxw6VfvEM_digestMultibase[0];
37475
37736
  const _4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name = this.#_4ZHbBuK7PrsvGgrjM8wgc6KMWjav_name.map((v) => v instanceof URL ? {
37476
37737
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
37477
37738
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -37734,7 +37995,8 @@ var Image = class Image extends Document {
37734
37995
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
37735
37996
  result["@context"] = [
37736
37997
  "https://www.w3.org/ns/activitystreams",
37737
- "https://w3id.org/security/data-integrity/v1",
37998
+ "https://w3id.org/security/data-integrity/v2",
37999
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
37738
38000
  "https://gotosocial.org/ns"
37739
38001
  ];
37740
38002
  return result;
@@ -37749,7 +38011,8 @@ var Image = class Image extends Document {
37749
38011
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
37750
38012
  const docContext = options.context ?? [
37751
38013
  "https://www.w3.org/ns/activitystreams",
37752
- "https://w3id.org/security/data-integrity/v1",
38014
+ "https://w3id.org/security/data-integrity/v2",
38015
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
37753
38016
  "https://gotosocial.org/ns"
37754
38017
  ];
37755
38018
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -40360,6 +40623,7 @@ var Organization = class Organization extends Object$1 {
40360
40623
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
40361
40624
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
40362
40625
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
40626
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
40363
40627
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
40364
40628
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
40365
40629
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -40428,6 +40692,13 @@ var Organization = class Organization extends Object$1 {
40428
40692
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
40429
40693
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
40430
40694
  }
40695
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
40696
+ else throw new TypeError("The gateway must be of type URL.");
40697
+ if ("gateways" in values && values.gateways != null) {
40698
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
40699
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
40700
+ else throw new TypeError("The gateways must be an array of type URL.");
40701
+ }
40431
40702
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
40432
40703
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
40433
40704
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -40558,6 +40829,14 @@ var Organization = class Organization extends Object$1 {
40558
40829
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
40559
40830
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
40560
40831
  }
40832
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
40833
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
40834
+ else throw new TypeError("The gateway must be of type URL.");
40835
+ if ("gateways" in values && values.gateways != null) {
40836
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
40837
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
40838
+ else throw new TypeError("The gateways must be an array of type URL.");
40839
+ }
40561
40840
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
40562
40841
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
40563
40842
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -41031,6 +41310,24 @@ var Organization = class Organization extends Object$1 {
41031
41310
  yield v;
41032
41311
  }
41033
41312
  }
41313
+ /** Gateways where the latest version of this portable actor object can be
41314
+ * retrieved.
41315
+ *
41316
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
41317
+ */
41318
+ get gateway() {
41319
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
41320
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
41321
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
41322
+ }
41323
+ /** Gateways where the latest version of this portable actor object can be
41324
+ * retrieved.
41325
+ *
41326
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
41327
+ */
41328
+ get gateways() {
41329
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
41330
+ }
41034
41331
  /** When `true`, conveys that for this actor, follow requests are not usually
41035
41332
  * automatically approved, but instead are examined by a person who may accept
41036
41333
  * or reject the request, at some time in the future. Setting of `false`
@@ -42900,6 +43197,12 @@ var Organization = class Organization extends Object$1 {
42900
43197
  }
42901
43198
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
42902
43199
  compactItems = [];
43200
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
43201
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
43202
+ compactItems.push(item);
43203
+ }
43204
+ if (compactItems.length > 0) result["gateways"] = compactItems;
43205
+ compactItems = [];
42903
43206
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
42904
43207
  const item = v;
42905
43208
  compactItems.push(item);
@@ -43115,6 +43418,7 @@ var Organization = class Organization extends Object$1 {
43115
43418
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
43116
43419
  result["@context"] = [
43117
43420
  "https://www.w3.org/ns/activitystreams",
43421
+ "https://w3id.org/fep/ef61",
43118
43422
  "https://w3id.org/security/v1",
43119
43423
  "https://w3id.org/security/data-integrity/v1",
43120
43424
  "https://www.w3.org/ns/did/v1",
@@ -43187,6 +43491,12 @@ var Organization = class Organization extends Object$1 {
43187
43491
  }
43188
43492
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
43189
43493
  array = [];
43494
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
43495
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
43496
+ array.push(element);
43497
+ }
43498
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
43499
+ array = [];
43190
43500
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
43191
43501
  const element = { "@value": v };
43192
43502
  array.push(element);
@@ -43311,6 +43621,7 @@ var Organization = class Organization extends Object$1 {
43311
43621
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
43312
43622
  const docContext = options.context ?? [
43313
43623
  "https://www.w3.org/ns/activitystreams",
43624
+ "https://w3id.org/fep/ef61",
43314
43625
  "https://w3id.org/security/v1",
43315
43626
  "https://w3id.org/security/data-integrity/v1",
43316
43627
  "https://www.w3.org/ns/did/v1",
@@ -43474,6 +43785,15 @@ var Organization = class Organization extends Object$1 {
43474
43785
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
43475
43786
  }
43476
43787
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
43788
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
43789
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
43790
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
43791
+ if (v == null) continue;
43792
+ const decoded = (0, _fedify_vocab_runtime.parseGatewayUrl)(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
43793
+ if (typeof decoded === "undefined") continue;
43794
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
43795
+ }
43796
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
43477
43797
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
43478
43798
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
43479
43799
  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) {
@@ -43815,6 +44135,12 @@ var Organization = class Organization extends Object$1 {
43815
44135
  } : v);
43816
44136
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
43817
44137
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
44138
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
44139
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
44140
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
44141
+ } : v);
44142
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
44143
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
43818
44144
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
43819
44145
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
43820
44146
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -43986,7 +44312,8 @@ var Page = class Page extends Document {
43986
44312
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
43987
44313
  result["@context"] = [
43988
44314
  "https://www.w3.org/ns/activitystreams",
43989
- "https://w3id.org/security/data-integrity/v1",
44315
+ "https://w3id.org/security/data-integrity/v2",
44316
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
43990
44317
  "https://gotosocial.org/ns"
43991
44318
  ];
43992
44319
  return result;
@@ -44001,7 +44328,8 @@ var Page = class Page extends Document {
44001
44328
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
44002
44329
  const docContext = options.context ?? [
44003
44330
  "https://www.w3.org/ns/activitystreams",
44004
- "https://w3id.org/security/data-integrity/v1",
44331
+ "https://w3id.org/security/data-integrity/v2",
44332
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
44005
44333
  "https://gotosocial.org/ns"
44006
44334
  ];
44007
44335
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -44116,6 +44444,7 @@ var Person = class Person extends Object$1 {
44116
44444
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
44117
44445
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
44118
44446
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
44447
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
44119
44448
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
44120
44449
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
44121
44450
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -44184,6 +44513,13 @@ var Person = class Person extends Object$1 {
44184
44513
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
44185
44514
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
44186
44515
  }
44516
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
44517
+ else throw new TypeError("The gateway must be of type URL.");
44518
+ if ("gateways" in values && values.gateways != null) {
44519
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
44520
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
44521
+ else throw new TypeError("The gateways must be an array of type URL.");
44522
+ }
44187
44523
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
44188
44524
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
44189
44525
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -44314,6 +44650,14 @@ var Person = class Person extends Object$1 {
44314
44650
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
44315
44651
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
44316
44652
  }
44653
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
44654
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
44655
+ else throw new TypeError("The gateway must be of type URL.");
44656
+ if ("gateways" in values && values.gateways != null) {
44657
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
44658
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
44659
+ else throw new TypeError("The gateways must be an array of type URL.");
44660
+ }
44317
44661
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
44318
44662
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
44319
44663
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -44787,6 +45131,24 @@ var Person = class Person extends Object$1 {
44787
45131
  yield v;
44788
45132
  }
44789
45133
  }
45134
+ /** Gateways where the latest version of this portable actor object can be
45135
+ * retrieved.
45136
+ *
45137
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
45138
+ */
45139
+ get gateway() {
45140
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
45141
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
45142
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
45143
+ }
45144
+ /** Gateways where the latest version of this portable actor object can be
45145
+ * retrieved.
45146
+ *
45147
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
45148
+ */
45149
+ get gateways() {
45150
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
45151
+ }
44790
45152
  /** When `true`, conveys that for this actor, follow requests are not usually
44791
45153
  * automatically approved, but instead are examined by a person who may accept
44792
45154
  * or reject the request, at some time in the future. Setting of `false`
@@ -46656,6 +47018,12 @@ var Person = class Person extends Object$1 {
46656
47018
  }
46657
47019
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
46658
47020
  compactItems = [];
47021
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
47022
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
47023
+ compactItems.push(item);
47024
+ }
47025
+ if (compactItems.length > 0) result["gateways"] = compactItems;
47026
+ compactItems = [];
46659
47027
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
46660
47028
  const item = v;
46661
47029
  compactItems.push(item);
@@ -46871,6 +47239,7 @@ var Person = class Person extends Object$1 {
46871
47239
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
46872
47240
  result["@context"] = [
46873
47241
  "https://www.w3.org/ns/activitystreams",
47242
+ "https://w3id.org/fep/ef61",
46874
47243
  "https://w3id.org/security/v1",
46875
47244
  "https://w3id.org/security/data-integrity/v1",
46876
47245
  "https://www.w3.org/ns/did/v1",
@@ -46943,6 +47312,12 @@ var Person = class Person extends Object$1 {
46943
47312
  }
46944
47313
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
46945
47314
  array = [];
47315
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
47316
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
47317
+ array.push(element);
47318
+ }
47319
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
47320
+ array = [];
46946
47321
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
46947
47322
  const element = { "@value": v };
46948
47323
  array.push(element);
@@ -47067,6 +47442,7 @@ var Person = class Person extends Object$1 {
47067
47442
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
47068
47443
  const docContext = options.context ?? [
47069
47444
  "https://www.w3.org/ns/activitystreams",
47445
+ "https://w3id.org/fep/ef61",
47070
47446
  "https://w3id.org/security/v1",
47071
47447
  "https://w3id.org/security/data-integrity/v1",
47072
47448
  "https://www.w3.org/ns/did/v1",
@@ -47230,6 +47606,15 @@ var Person = class Person extends Object$1 {
47230
47606
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
47231
47607
  }
47232
47608
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
47609
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
47610
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
47611
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
47612
+ if (v == null) continue;
47613
+ const decoded = (0, _fedify_vocab_runtime.parseGatewayUrl)(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
47614
+ if (typeof decoded === "undefined") continue;
47615
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
47616
+ }
47617
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
47233
47618
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
47234
47619
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
47235
47620
  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) {
@@ -47571,6 +47956,12 @@ var Person = class Person extends Object$1 {
47571
47956
  } : v);
47572
47957
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
47573
47958
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
47959
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
47960
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
47961
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
47962
+ } : v);
47963
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
47964
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
47574
47965
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
47575
47966
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
47576
47967
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -50805,6 +51196,7 @@ var Service = class Service extends Object$1 {
50805
51196
  #_trust_axq166E2eZADq34V4MYUc8KMZdC_publicKey = /* @__PURE__ */ new Set();
50806
51197
  #_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = [];
50807
51198
  #_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = /* @__PURE__ */ new Set();
51199
+ #_hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
50808
51200
  #_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
50809
51201
  #_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = [];
50810
51202
  #_trust_3ghX3VfZXXbLvhCRH7QJqpzLrXjB_inbox = /* @__PURE__ */ new Set();
@@ -50873,6 +51265,13 @@ var Service = class Service extends Object$1 {
50873
51265
  for (let i = 0; i < values.assertionMethods.length; i++) this.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
50874
51266
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
50875
51267
  }
51268
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
51269
+ else throw new TypeError("The gateway must be of type URL.");
51270
+ if ("gateways" in values && values.gateways != null) {
51271
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot initialize both gateway and gateways at the same time.");
51272
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) this.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
51273
+ else throw new TypeError("The gateways must be an array of type URL.");
51274
+ }
50876
51275
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
50877
51276
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
50878
51277
  if ("inbox" in values && values.inbox != null) if (values.inbox instanceof OrderedCollection || values.inbox instanceof OrderedCollectionPage || values.inbox instanceof URL) {
@@ -51003,6 +51402,14 @@ var Service = class Service extends Object$1 {
51003
51402
  for (let i = 0; i < values.assertionMethods.length; i++) clone.#_trust_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.add(i);
51004
51403
  } else throw new TypeError("The assertionMethods must be an array of type Multikey | URL.");
51005
51404
  }
51405
+ clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
51406
+ if ("gateway" in values && values.gateway != null) if (values.gateway instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(values.gateway)) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = [values.gateway];
51407
+ else throw new TypeError("The gateway must be of type URL.");
51408
+ if ("gateways" in values && values.gateways != null) {
51409
+ if ("gateway" in values && values.gateway != null) throw new TypeError("Cannot update both gateway and gateways at the same time.");
51410
+ if (Array.isArray(values.gateways) && values.gateways.every((v) => v instanceof URL && (0, _fedify_vocab_runtime.isGatewayUrl)(v))) clone.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = values.gateways;
51411
+ else throw new TypeError("The gateways must be an array of type URL.");
51412
+ }
51006
51413
  clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers;
51007
51414
  if ("manuallyApprovesFollowers" in values && values.manuallyApprovesFollowers != null) if (typeof values.manuallyApprovesFollowers === "boolean") clone.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [values.manuallyApprovesFollowers];
51008
51415
  else throw new TypeError("The manuallyApprovesFollowers must be of type boolean.");
@@ -51476,6 +51883,24 @@ var Service = class Service extends Object$1 {
51476
51883
  yield v;
51477
51884
  }
51478
51885
  }
51886
+ /** Gateways where the latest version of this portable actor object can be
51887
+ * retrieved.
51888
+ *
51889
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
51890
+ */
51891
+ get gateway() {
51892
+ if (this._warning != null) (0, _logtape_logtape.getLogger)(this._warning.category).warn(this._warning.message, this._warning.values);
51893
+ if (this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.length < 1) return null;
51894
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3[0];
51895
+ }
51896
+ /** Gateways where the latest version of this portable actor object can be
51897
+ * retrieved.
51898
+ *
51899
+ * See [FEP-ef61](https://w3id.org/fep/ef61) for details.
51900
+ */
51901
+ get gateways() {
51902
+ return this.#_hQiaHhZP8hqxckxTBrpsGNs57E3;
51903
+ }
51479
51904
  /** When `true`, conveys that for this actor, follow requests are not usually
51480
51905
  * automatically approved, but instead are examined by a person who may accept
51481
51906
  * or reject the request, at some time in the future. Setting of `false`
@@ -53345,6 +53770,12 @@ var Service = class Service extends Object$1 {
53345
53770
  }
53346
53771
  if (compactItems.length > 0) result["assertionMethod"] = compactItems.length > 1 ? compactItems : compactItems[0];
53347
53772
  compactItems = [];
53773
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
53774
+ const item = (0, _fedify_vocab_runtime.formatIri)(v);
53775
+ compactItems.push(item);
53776
+ }
53777
+ if (compactItems.length > 0) result["gateways"] = compactItems;
53778
+ compactItems = [];
53348
53779
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
53349
53780
  const item = v;
53350
53781
  compactItems.push(item);
@@ -53560,6 +53991,7 @@ var Service = class Service extends Object$1 {
53560
53991
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
53561
53992
  result["@context"] = [
53562
53993
  "https://www.w3.org/ns/activitystreams",
53994
+ "https://w3id.org/fep/ef61",
53563
53995
  "https://w3id.org/security/v1",
53564
53996
  "https://w3id.org/security/data-integrity/v1",
53565
53997
  "https://www.w3.org/ns/did/v1",
@@ -53632,6 +54064,12 @@ var Service = class Service extends Object$1 {
53632
54064
  }
53633
54065
  if (array.length > 0) values["https://w3id.org/security#assertionMethod"] = array;
53634
54066
  array = [];
54067
+ for (const v of this.#_hQiaHhZP8hqxckxTBrpsGNs57E3) {
54068
+ const element = { "@id": (0, _fedify_vocab_runtime.formatIri)(v) };
54069
+ array.push(element);
54070
+ }
54071
+ if (array.length > 0) values["https://w3id.org/fep/ef61/gateways"] = { "@list": array };
54072
+ array = [];
53635
54073
  for (const v of this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers) {
53636
54074
  const element = { "@value": v };
53637
54075
  array.push(element);
@@ -53756,6 +54194,7 @@ var Service = class Service extends Object$1 {
53756
54194
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
53757
54195
  const docContext = options.context ?? [
53758
54196
  "https://www.w3.org/ns/activitystreams",
54197
+ "https://w3id.org/fep/ef61",
53759
54198
  "https://w3id.org/security/v1",
53760
54199
  "https://w3id.org/security/data-integrity/v1",
53761
54200
  "https://www.w3.org/ns/did/v1",
@@ -53919,6 +54358,15 @@ var Service = class Service extends Object$1 {
53919
54358
  _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.push(decoded);
53920
54359
  }
53921
54360
  instance.#_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
54361
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = [];
54362
+ let _hQiaHhZP8hqxckxTBrpsGNs57E3__array = values["https://w3id.org/fep/ef61/gateways"];
54363
+ for (const v of _hQiaHhZP8hqxckxTBrpsGNs57E3__array == null ? [] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array.length === 1 && "@list" in _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0] ? _hQiaHhZP8hqxckxTBrpsGNs57E3__array[0]["@list"] : _hQiaHhZP8hqxckxTBrpsGNs57E3__array) {
54364
+ if (v == null) continue;
54365
+ const decoded = (0, _fedify_vocab_runtime.parseGatewayUrl)(typeof v["@id"] === "string" ? v["@id"] : v["@value"]);
54366
+ if (typeof decoded === "undefined") continue;
54367
+ _hQiaHhZP8hqxckxTBrpsGNs57E3.push(decoded);
54368
+ }
54369
+ instance.#_hQiaHhZP8hqxckxTBrpsGNs57E3 = _hQiaHhZP8hqxckxTBrpsGNs57E3;
53922
54370
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = [];
53923
54371
  let _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers__array = values["https://www.w3.org/ns/activitystreams#manuallyApprovesFollowers"];
53924
54372
  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) {
@@ -54260,6 +54708,12 @@ var Service = class Service extends Object$1 {
54260
54708
  } : v);
54261
54709
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length == 1) proxy.assertionMethod = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod[0];
54262
54710
  if (_4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 1 || !("assertionMethod" in proxy) && _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod.length > 0) proxy.assertionMethods = _4EHQFWZSz1k1d4LmPrQiMba2GbP3_assertionMethod;
54711
+ const _hQiaHhZP8hqxckxTBrpsGNs57E3 = this.#_hQiaHhZP8hqxckxTBrpsGNs57E3.map((v) => v instanceof URL ? {
54712
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
54713
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
54714
+ } : v);
54715
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length == 1) proxy.gateway = _hQiaHhZP8hqxckxTBrpsGNs57E3[0];
54716
+ if (_hQiaHhZP8hqxckxTBrpsGNs57E3.length > 1 || !("gateway" in proxy) && _hQiaHhZP8hqxckxTBrpsGNs57E3.length > 0) proxy.gateways = _hQiaHhZP8hqxckxTBrpsGNs57E3;
54263
54717
  const _36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers = this.#_36QNc9MxfkKf6h8sEUQSHnV9NZA_manuallyApprovesFollowers.map((v) => v instanceof URL ? {
54264
54718
  [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
54265
54719
  [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options)
@@ -55904,7 +56358,8 @@ var Video = class Video extends Document {
55904
56358
  if (this.id != null) result["id"] = (0, _fedify_vocab_runtime.formatIri)(this.id);
55905
56359
  result["@context"] = [
55906
56360
  "https://www.w3.org/ns/activitystreams",
55907
- "https://w3id.org/security/data-integrity/v1",
56361
+ "https://w3id.org/security/data-integrity/v2",
56362
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
55908
56363
  "https://gotosocial.org/ns"
55909
56364
  ];
55910
56365
  return result;
@@ -55919,7 +56374,8 @@ var Video = class Video extends Document {
55919
56374
  if (options.format === "expand") return await _fedify_vocab_runtime_jsonld.default.expand(values, { documentLoader: options.contextLoader });
55920
56375
  const docContext = options.context ?? [
55921
56376
  "https://www.w3.org/ns/activitystreams",
55922
- "https://w3id.org/security/data-integrity/v1",
56377
+ "https://w3id.org/security/data-integrity/v2",
56378
+ { "digestMultibase": "https://www.w3.org/ns/credentials/v2#digestMultibase" },
55923
56379
  "https://gotosocial.org/ns"
55924
56380
  ];
55925
56381
  const compacted = await _fedify_vocab_runtime_jsonld.default.compact(values, docContext, { documentLoader: options.contextLoader });
@@ -56787,7 +57243,7 @@ async function lookupObjectInternal(identifier, options = {}) {
56787
57243
  }
56788
57244
  throw error;
56789
57245
  }
56790
- if (options.crossOrigin !== "trust" && object.id != null && !(0, _fedify_vocab_runtime.haveSameIriOrigin)(object.id, documentUrl)) {
57246
+ if (options.crossOrigin !== "trust" && object.id != null && !(0, _fedify_vocab_runtime.haveSameIriOrigin)(object.id, documentUrl) && !(0, _fedify_vocab_runtime.haveSameFe34Origin)(object.id, documentUrl)) {
56791
57247
  if (options.crossOrigin === "throw") throw new Error(`The object's @id (${object.id.href}) has a different origin than the document URL (${remoteDoc.documentUrl}); refusing to return the object. If you want to bypass this check and are aware of the security implications, set the crossOrigin option to "trust".`);
56792
57248
  logger.warn("The object's @id ({objectId}) has a different origin than the document URL ({documentUrl}); refusing to return the object. If you want to bypass this check and are aware of the security implications, set the crossOrigin option to \"trust\".", {
56793
57249
  ...remoteDoc,