@fedify/fedify 0.14.0-dev.334 → 0.14.0-dev.335

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/CHANGES.md +11 -0
  2. package/esm/federation/middleware.js +2 -2
  3. package/esm/vocab/object.yaml +13 -0
  4. package/esm/vocab/source.yaml +26 -0
  5. package/esm/vocab/vocab.js +453 -0
  6. package/package.json +1 -1
  7. package/types/federation/collection.d.ts +0 -1
  8. package/types/federation/collection.d.ts.map +1 -1
  9. package/types/federation/context.d.ts +0 -2
  10. package/types/federation/context.d.ts.map +1 -1
  11. package/types/federation/handler.d.ts +0 -2
  12. package/types/federation/handler.d.ts.map +1 -1
  13. package/types/federation/middleware.d.ts +0 -2
  14. package/types/federation/middleware.d.ts.map +1 -1
  15. package/types/federation/send.d.ts +0 -2
  16. package/types/federation/send.d.ts.map +1 -1
  17. package/types/nodeinfo/handler.d.ts +0 -1
  18. package/types/nodeinfo/handler.d.ts.map +1 -1
  19. package/types/nodeinfo/types.d.ts +0 -1
  20. package/types/nodeinfo/types.d.ts.map +1 -1
  21. package/types/runtime/docloader.d.ts +0 -1
  22. package/types/runtime/docloader.d.ts.map +1 -1
  23. package/types/sig/http.d.ts +0 -2
  24. package/types/sig/http.d.ts.map +1 -1
  25. package/types/sig/key.d.ts +0 -1
  26. package/types/sig/key.d.ts.map +1 -1
  27. package/types/sig/owner.d.ts +0 -1
  28. package/types/sig/owner.d.ts.map +1 -1
  29. package/types/sig/proof.d.ts +0 -1
  30. package/types/sig/proof.d.ts.map +1 -1
  31. package/types/vocab/actor.d.ts +0 -1
  32. package/types/vocab/actor.d.ts.map +1 -1
  33. package/types/vocab/constants.d.ts +0 -1
  34. package/types/vocab/constants.d.ts.map +1 -1
  35. package/types/vocab/lookup.d.ts +0 -1
  36. package/types/vocab/lookup.d.ts.map +1 -1
  37. package/types/vocab/vocab.d.ts +191 -1
  38. package/types/vocab/vocab.d.ts.map +1 -1
  39. package/types/webfinger/handler.d.ts +0 -1
  40. package/types/webfinger/handler.d.ts.map +1 -1
  41. package/types/webfinger/lookup.d.ts +0 -1
  42. package/types/webfinger/lookup.d.ts.map +1 -1
  43. package/types/x/hono.d.ts +0 -1
  44. package/types/x/hono.d.ts.map +1 -1
package/CHANGES.md CHANGED
@@ -8,6 +8,15 @@ Version 0.14.0
8
8
 
9
9
  To be released.
10
10
 
11
+ - Added `source` property to `Object` class in Activity Vocabulary API.
12
+ [[#114]]
13
+
14
+ - Added `Object.source` property.
15
+ - `new Object()` constructor now accepts `source` option.
16
+ - `Object.clone()` method now accepts `source` option.
17
+
18
+ - Added `Source` class to Activity Vocabulary API. [[#114]]
19
+
11
20
  - Improved the performance of `Object.toJsonLd()` method.
12
21
 
13
22
  - `Object.toJsonLd()` method no longer guarantees that the returned
@@ -24,6 +33,8 @@ To be released.
24
33
  Bun, and fills the *deno.json* file with the default `compilerOptions` on
25
34
  Deno.
26
35
 
36
+ [#114]: https://github.com/dahlia/fedify/issues/114
37
+
27
38
 
28
39
  Version 0.13.0
29
40
  --------------
@@ -56,11 +56,11 @@ class FederationImpl {
56
56
  constructor(options) {
57
57
  this.kv = options.kv;
58
58
  this.kvPrefixes = {
59
- ...({
59
+ ...{
60
60
  activityIdempotence: ["_fedify", "activityIdempotence"],
61
61
  remoteDocument: ["_fedify", "remoteDocument"],
62
62
  publicKey: ["_fedify", "publicKey"],
63
- }),
63
+ },
64
64
  ...(options.kvPrefixes ?? {}),
65
65
  };
66
66
  this.queue = options.queue;
@@ -330,6 +330,19 @@ properties:
330
330
  range:
331
331
  - "http://www.w3.org/2001/XMLSchema#boolean"
332
332
 
333
+ - singularName: source
334
+ functional: true
335
+ compactName: source
336
+ uri: "https://www.w3.org/ns/activitystreams#source"
337
+ description: |
338
+ The `source` property is intended to convey some sort of source from which
339
+ the `content` markup was derived, as a form of provenance, or to support
340
+ future editing by clients. In general, clients do the conversion from
341
+ `source` to `content`, not the other way around.
342
+ untyped: true
343
+ range:
344
+ - "https://www.w3.org/ns/activitystreams#Source"
345
+
333
346
  - singularName: proof
334
347
  pluralName: proofs
335
348
  singularAccessor: true
@@ -0,0 +1,26 @@
1
+ $schema: ../codegen/schema.yaml
2
+ name: Source
3
+ compactName: as:Source
4
+ uri: "https://www.w3.org/ns/activitystreams#Source"
5
+ entity: false
6
+ description: Contents of {@link Object}'s `source`.
7
+ defaultContext: "https://www.w3.org/ns/activitystreams"
8
+
9
+ properties:
10
+ - pluralName: contents
11
+ singularName: content
12
+ singularAccessor: true
13
+ compactName: content
14
+ uri: "https://www.w3.org/ns/activitystreams#content"
15
+ description: The source content.
16
+ range:
17
+ - "http://www.w3.org/2001/XMLSchema#string"
18
+ - "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"
19
+
20
+ - singularName: mediaType
21
+ functional: true
22
+ compactName: mediaType
23
+ uri: "https://www.w3.org/ns/activitystreams#mediaType"
24
+ description: The MIME media type of the source content.
25
+ range:
26
+ - "http://www.w3.org/2001/XMLSchema#string"
@@ -59,6 +59,7 @@ export class Object {
59
59
  #_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = [];
60
60
  #_3bNvLMBN1bCJETiTihM3wvi1B2JX = [];
61
61
  #_u8gdcDTtChQ4tbSQMXc4cYWyum7 = [];
62
+ #_2ZwCFoS787v8y8bXKjMoE6MAbrEB = [];
62
63
  #_42rPnotok1ivQ2RNCKNbeFJgx8b8 = [];
63
64
  /**
64
65
  * Constructs a new instance of Object with the given values.
@@ -601,6 +602,16 @@ export class Object {
601
602
  "boolean" + ".");
602
603
  }
603
604
  }
605
+ if ("source" in values && values.source != null) {
606
+ if (values.source instanceof Source) {
607
+ // @ts-ignore: type is checked above.
608
+ this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB = [values.source];
609
+ }
610
+ else {
611
+ throw new TypeError("The source must be of type " +
612
+ "Source" + ".");
613
+ }
614
+ }
604
615
  if ("proof" in values && values.proof != null) {
605
616
  if (values.proof instanceof DataIntegrityProof ||
606
617
  values.proof instanceof URL) {
@@ -1192,6 +1203,17 @@ export class Object {
1192
1203
  "boolean" + ".");
1193
1204
  }
1194
1205
  }
1206
+ clone.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB = this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB;
1207
+ if ("source" in values && values.source != null) {
1208
+ if (values.source instanceof Source) {
1209
+ // @ts-ignore: type is checked above.
1210
+ clone.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB = [values.source];
1211
+ }
1212
+ else {
1213
+ throw new TypeError("The source must be of type " +
1214
+ "Source" + ".");
1215
+ }
1216
+ }
1195
1217
  clone.#_42rPnotok1ivQ2RNCKNbeFJgx8b8 = this.#_42rPnotok1ivQ2RNCKNbeFJgx8b8;
1196
1218
  if ("proof" in values && values.proof != null) {
1197
1219
  if (values.proof instanceof DataIntegrityProof ||
@@ -2638,6 +2660,16 @@ export class Object {
2638
2660
  return null;
2639
2661
  return this.#_u8gdcDTtChQ4tbSQMXc4cYWyum7[0];
2640
2662
  }
2663
+ /** The `source` property is intended to convey some sort of source from which
2664
+ * the `content` markup was derived, as a form of provenance, or to support
2665
+ * future editing by clients. In general, clients do the conversion from
2666
+ * `source` to `content`, not the other way around.
2667
+ */
2668
+ get source() {
2669
+ if (this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB.length < 1)
2670
+ return null;
2671
+ return this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB[0];
2672
+ }
2641
2673
  async #fetchProof(url, options = {}) {
2642
2674
  const documentLoader = options.documentLoader ?? this._documentLoader ??
2643
2675
  fetchDocumentLoader;
@@ -3223,6 +3255,21 @@ export class Object {
3223
3255
  result["sensitive"] = compactItems[0];
3224
3256
  }
3225
3257
  compactItems = [];
3258
+ for (const v of this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB) {
3259
+ const item = await v.toJsonLd({
3260
+ ...options,
3261
+ format: undefined,
3262
+ context: undefined,
3263
+ });
3264
+ compactItems.push(item);
3265
+ }
3266
+ if (compactItems.length > 1) {
3267
+ result["source"] = compactItems;
3268
+ }
3269
+ else if (compactItems.length === 1) {
3270
+ result["source"] = compactItems[0];
3271
+ }
3272
+ compactItems = [];
3226
3273
  for (const v of this.#_42rPnotok1ivQ2RNCKNbeFJgx8b8) {
3227
3274
  const item = v instanceof URL ? v.href : await v.toJsonLd({
3228
3275
  ...options,
@@ -3549,6 +3596,14 @@ export class Object {
3549
3596
  values["https://www.w3.org/ns/activitystreams#sensitive"] = array;
3550
3597
  }
3551
3598
  array = [];
3599
+ for (const v of this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB) {
3600
+ const element = await v.toJsonLd(options);
3601
+ array.push(element);
3602
+ }
3603
+ if (array.length > 0) {
3604
+ values["https://www.w3.org/ns/activitystreams#source"] = array;
3605
+ }
3606
+ array = [];
3552
3607
  for (const v of this.#_42rPnotok1ivQ2RNCKNbeFJgx8b8) {
3553
3608
  const element = v instanceof URL
3554
3609
  ? { "@id": v.href }
@@ -4775,6 +4830,19 @@ export class Object {
4775
4830
  _u8gdcDTtChQ4tbSQMXc4cYWyum7.push(v["@value"]);
4776
4831
  }
4777
4832
  instance.#_u8gdcDTtChQ4tbSQMXc4cYWyum7 = _u8gdcDTtChQ4tbSQMXc4cYWyum7;
4833
+ const _2ZwCFoS787v8y8bXKjMoE6MAbrEB = [];
4834
+ const _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array = values["https://www.w3.org/ns/activitystreams#source"];
4835
+ for (const v of _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array == null
4836
+ ? []
4837
+ : _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array.length === 1 &&
4838
+ "@list" in _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array[0]
4839
+ ? _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array[0]["@list"]
4840
+ : _2ZwCFoS787v8y8bXKjMoE6MAbrEB__array) {
4841
+ if (v == null)
4842
+ continue;
4843
+ _2ZwCFoS787v8y8bXKjMoE6MAbrEB.push(await Source.fromJsonLd(v, options));
4844
+ }
4845
+ instance.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB = _2ZwCFoS787v8y8bXKjMoE6MAbrEB;
4778
4846
  const _42rPnotok1ivQ2RNCKNbeFJgx8b8 = [];
4779
4847
  const _42rPnotok1ivQ2RNCKNbeFJgx8b8__array = values["https://w3id.org/security#proof"];
4780
4848
  for (const v of _42rPnotok1ivQ2RNCKNbeFJgx8b8__array == null
@@ -5191,6 +5259,17 @@ export class Object {
5191
5259
  if (_u8gdcDTtChQ4tbSQMXc4cYWyum7.length == 1) {
5192
5260
  proxy.sensitive = _u8gdcDTtChQ4tbSQMXc4cYWyum7[0];
5193
5261
  }
5262
+ const _2ZwCFoS787v8y8bXKjMoE6MAbrEB = this.#_2ZwCFoS787v8y8bXKjMoE6MAbrEB
5263
+ // deno-lint-ignore no-explicit-any
5264
+ .map((v) => v instanceof URL
5265
+ ? {
5266
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
5267
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options),
5268
+ }
5269
+ : v);
5270
+ if (_2ZwCFoS787v8y8bXKjMoE6MAbrEB.length == 1) {
5271
+ proxy.source = _2ZwCFoS787v8y8bXKjMoE6MAbrEB[0];
5272
+ }
5194
5273
  const _42rPnotok1ivQ2RNCKNbeFJgx8b8 = this.#_42rPnotok1ivQ2RNCKNbeFJgx8b8
5195
5274
  // deno-lint-ignore no-explicit-any
5196
5275
  .map((v) => v instanceof URL
@@ -32678,6 +32757,380 @@ export class Service extends Object {
32678
32757
  return "Service " + inspect(proxy, options);
32679
32758
  }
32680
32759
  }
32760
+ /** Contents of {@link Object}'s `source`.
32761
+ */
32762
+ export class Source {
32763
+ #documentLoader;
32764
+ #contextLoader;
32765
+ id;
32766
+ get _documentLoader() {
32767
+ return this.#documentLoader;
32768
+ }
32769
+ get _contextLoader() {
32770
+ return this.#contextLoader;
32771
+ }
32772
+ #cachedJsonLd;
32773
+ /**
32774
+ * The type URI of {@link Source}: `https://www.w3.org/ns/activitystreams#Source`.
32775
+ */
32776
+ static get typeId() {
32777
+ return new URL("https://www.w3.org/ns/activitystreams#Source");
32778
+ }
32779
+ #_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = [];
32780
+ #_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = [];
32781
+ /**
32782
+ * Constructs a new instance of Source with the given values.
32783
+ * @param values The values to initialize the instance with.
32784
+ * @param options The options to use for initialization.
32785
+ */
32786
+ constructor(values, { documentLoader, contextLoader, } = {}) {
32787
+ this.#documentLoader = documentLoader;
32788
+ this.#contextLoader = contextLoader;
32789
+ if (values.id == null || values.id instanceof URL) {
32790
+ this.id = values.id ?? null;
32791
+ }
32792
+ else {
32793
+ throw new TypeError("The id must be a URL.");
32794
+ }
32795
+ if ("content" in values && values.content != null) {
32796
+ if (typeof values.content === "string" ||
32797
+ values.content instanceof LanguageString) {
32798
+ // @ts-ignore: type is checked above.
32799
+ this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = [values.content];
32800
+ }
32801
+ else {
32802
+ throw new TypeError("The content must be of type " +
32803
+ "string | LanguageString" + ".");
32804
+ }
32805
+ }
32806
+ if ("contents" in values && values.contents != null) {
32807
+ if ("content" in values &&
32808
+ values.content != null) {
32809
+ throw new TypeError("Cannot initialize both content and " +
32810
+ "contents at the same time.");
32811
+ }
32812
+ if (Array.isArray(values.contents) &&
32813
+ values.contents.every((v) => typeof v === "string" || v instanceof LanguageString)) {
32814
+ // @ts-ignore: type is checked above.
32815
+ this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = values.contents;
32816
+ }
32817
+ else {
32818
+ throw new TypeError("The contents must be an array of type " +
32819
+ "string | LanguageString" + ".");
32820
+ }
32821
+ }
32822
+ if ("mediaType" in values && values.mediaType != null) {
32823
+ if (typeof values.mediaType === "string") {
32824
+ // @ts-ignore: type is checked above.
32825
+ this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = [values.mediaType];
32826
+ }
32827
+ else {
32828
+ throw new TypeError("The mediaType must be of type " +
32829
+ "string" + ".");
32830
+ }
32831
+ }
32832
+ }
32833
+ /**
32834
+ * Clones this instance, optionally updating it with the given values.
32835
+ * @param values The values to update the clone with.
32836
+ * @options The options to use for cloning.
32837
+ * @returns The cloned instance.
32838
+ */
32839
+ clone(values = {}, options = {}) {
32840
+ // @ts-ignore: this.constructor is not recognized as a constructor, but it is.
32841
+ const clone = new this.constructor({ id: values.id ?? this.id }, options);
32842
+ clone.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz;
32843
+ if ("content" in values && values.content != null) {
32844
+ if (typeof values.content === "string" ||
32845
+ values.content instanceof LanguageString) {
32846
+ // @ts-ignore: type is checked above.
32847
+ clone.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = [values.content];
32848
+ }
32849
+ else {
32850
+ throw new TypeError("The content must be of type " +
32851
+ "string | LanguageString" + ".");
32852
+ }
32853
+ }
32854
+ if ("contents" in values && values.contents != null) {
32855
+ if ("content" in values &&
32856
+ values.content != null) {
32857
+ throw new TypeError("Cannot update both content and " +
32858
+ "contents at the same time.");
32859
+ }
32860
+ if (Array.isArray(values.contents) &&
32861
+ values.contents.every((v) => typeof v === "string" || v instanceof LanguageString)) {
32862
+ // @ts-ignore: type is checked above.
32863
+ clone.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = values.contents;
32864
+ }
32865
+ else {
32866
+ throw new TypeError("The contents must be an array of type " +
32867
+ "string | LanguageString" + ".");
32868
+ }
32869
+ }
32870
+ clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8;
32871
+ if ("mediaType" in values && values.mediaType != null) {
32872
+ if (typeof values.mediaType === "string") {
32873
+ // @ts-ignore: type is checked above.
32874
+ clone.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = [values.mediaType];
32875
+ }
32876
+ else {
32877
+ throw new TypeError("The mediaType must be of type " +
32878
+ "string" + ".");
32879
+ }
32880
+ }
32881
+ return clone;
32882
+ }
32883
+ /** The source content.
32884
+ */
32885
+ get content() {
32886
+ if (this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.length < 1)
32887
+ return null;
32888
+ return this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz[0];
32889
+ }
32890
+ /** The source content.
32891
+ */
32892
+ get contents() {
32893
+ return this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz;
32894
+ }
32895
+ /** The MIME media type of the source content.
32896
+ */
32897
+ get mediaType() {
32898
+ if (this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8.length < 1)
32899
+ return null;
32900
+ return this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8[0];
32901
+ }
32902
+ /**
32903
+ * Converts this object to a JSON-LD structure.
32904
+ * @param options The options to use.
32905
+ * - `format`: The format of the output: `compact` or
32906
+ `expand`.
32907
+ * - `contextLoader`: The loader for remote JSON-LD contexts.
32908
+ * - `context`: The JSON-LD context to use. Not applicable
32909
+ when `format` is set to `'expand'`.
32910
+ * @returns The JSON-LD representation of this object.
32911
+ */
32912
+ async toJsonLd(options = {}) {
32913
+ if (options.expand != null) {
32914
+ if (options.format != null) {
32915
+ throw new TypeError("The expand option, which is deprecated, cannot be used together " +
32916
+ "with the format option.");
32917
+ }
32918
+ getLogger(["fedify", "vocab"]).warn("The expand option is deprecated; use format: 'expand' instead.");
32919
+ options = { ...options, format: "expand", expand: undefined };
32920
+ }
32921
+ if (options.format == null && this.#cachedJsonLd != null) {
32922
+ return this.#cachedJsonLd;
32923
+ }
32924
+ if (options.format !== "compact" && options.context != null) {
32925
+ throw new TypeError("The context option can only be used when the format option is set " +
32926
+ "to 'compact'.");
32927
+ }
32928
+ options = {
32929
+ ...options,
32930
+ contextLoader: options.contextLoader ?? fetchDocumentLoader,
32931
+ };
32932
+ if (options.format == null &&
32933
+ (this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz == null ||
32934
+ this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.length < 1)) {
32935
+ const result = {};
32936
+ // deno-lint-ignore no-unused-vars
32937
+ let compactItems;
32938
+ compactItems = [];
32939
+ for (const v of this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz) {
32940
+ const item = typeof v === "string" ? v : {
32941
+ "@value": v.toString(),
32942
+ "@language": v.language.compact(),
32943
+ };
32944
+ compactItems.push(item);
32945
+ }
32946
+ if (compactItems.length > 1) {
32947
+ result["content"] = compactItems;
32948
+ }
32949
+ else if (compactItems.length === 1) {
32950
+ result["content"] = compactItems[0];
32951
+ }
32952
+ compactItems = [];
32953
+ for (const v of this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8) {
32954
+ const item = v;
32955
+ compactItems.push(item);
32956
+ }
32957
+ if (compactItems.length > 1) {
32958
+ result["mediaType"] = compactItems;
32959
+ }
32960
+ else if (compactItems.length === 1) {
32961
+ result["mediaType"] = compactItems[0];
32962
+ }
32963
+ result["type"] = "as:Source";
32964
+ if (this.id != null)
32965
+ result["id"] = this.id.href;
32966
+ result["@context"] = "https://www.w3.org/ns/activitystreams";
32967
+ return result;
32968
+ }
32969
+ // deno-lint-ignore no-unused-vars prefer-const
32970
+ let array;
32971
+ const values = {};
32972
+ array = [];
32973
+ for (const v of this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz) {
32974
+ const element = typeof v === "string" ? { "@value": v } : {
32975
+ "@value": v.toString(),
32976
+ "@language": v.language.compact(),
32977
+ };
32978
+ array.push(element);
32979
+ }
32980
+ if (array.length > 0) {
32981
+ values["https://www.w3.org/ns/activitystreams#content"] = array;
32982
+ }
32983
+ array = [];
32984
+ for (const v of this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8) {
32985
+ const element = { "@value": v };
32986
+ array.push(element);
32987
+ }
32988
+ if (array.length > 0) {
32989
+ values["https://www.w3.org/ns/activitystreams#mediaType"] = array;
32990
+ }
32991
+ values["@type"] = ["https://www.w3.org/ns/activitystreams#Source"];
32992
+ if (this.id != null)
32993
+ values["@id"] = this.id.href;
32994
+ if (options.format === "expand") {
32995
+ return await jsonld.expand(values, { documentLoader: options.contextLoader });
32996
+ }
32997
+ const docContext = options.context ??
32998
+ "https://www.w3.org/ns/activitystreams";
32999
+ const compacted = await jsonld.compact(values, docContext, { documentLoader: options.contextLoader });
33000
+ if (docContext != null) {
33001
+ // Embed context
33002
+ }
33003
+ return compacted;
33004
+ }
33005
+ /**
33006
+ * Converts a JSON-LD structure to an object of this type.
33007
+ * @param json The JSON-LD structure to convert.
33008
+ * @returns The object of this type.
33009
+ * @throws {TypeError} If the given `json` is invalid.
33010
+ */
33011
+ static async fromJsonLd(json, options = {}) {
33012
+ if (typeof json === "undefined") {
33013
+ throw new TypeError("Invalid JSON-LD: undefined.");
33014
+ }
33015
+ else if (json === null)
33016
+ throw new TypeError("Invalid JSON-LD: null.");
33017
+ options = {
33018
+ ...options,
33019
+ documentLoader: options.documentLoader ?? fetchDocumentLoader,
33020
+ contextLoader: options.contextLoader ?? fetchDocumentLoader,
33021
+ };
33022
+ // deno-lint-ignore no-explicit-any
33023
+ let values;
33024
+ if (globalThis.Object.keys(json).length == 0) {
33025
+ values = {};
33026
+ }
33027
+ else {
33028
+ const expanded = await jsonld.expand(json, {
33029
+ documentLoader: options.contextLoader,
33030
+ keepFreeFloatingNodes: true,
33031
+ });
33032
+ values =
33033
+ // deno-lint-ignore no-explicit-any
33034
+ (expanded[0] ?? {});
33035
+ }
33036
+ if ("@type" in values) {
33037
+ if (!values["@type"].includes("https://www.w3.org/ns/activitystreams#Source")) {
33038
+ throw new TypeError("Invalid type: " + values["@type"]);
33039
+ }
33040
+ }
33041
+ const instance = new this({ id: "@id" in values ? new URL(values["@id"]) : undefined }, options);
33042
+ const _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = [];
33043
+ const _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array = values["https://www.w3.org/ns/activitystreams#content"];
33044
+ for (const v of _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array == null
33045
+ ? []
33046
+ : _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array.length === 1 &&
33047
+ "@list" in _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array[0]
33048
+ ? _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array[0]["@list"]
33049
+ : _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz__array) {
33050
+ if (v == null)
33051
+ continue;
33052
+ const decoded = typeof v === "object" && "@value" in v &&
33053
+ typeof v["@value"] === "string" && !("@language" in v)
33054
+ ? v["@value"]
33055
+ : typeof v === "object" && "@language" in v && "@value" in v &&
33056
+ typeof v["@language"] === "string" &&
33057
+ typeof v["@value"] === "string"
33058
+ ? new LanguageString(v["@value"], v["@language"])
33059
+ : undefined;
33060
+ if (typeof decoded === "undefined")
33061
+ continue;
33062
+ _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.push(decoded);
33063
+ }
33064
+ instance.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz;
33065
+ const _3BLrzmscsjHCw8TF5BHRW9WkPnX8 = [];
33066
+ const _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array = values["https://www.w3.org/ns/activitystreams#mediaType"];
33067
+ for (const v of _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array == null
33068
+ ? []
33069
+ : _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array.length === 1 &&
33070
+ "@list" in _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array[0]
33071
+ ? _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array[0]["@list"]
33072
+ : _3BLrzmscsjHCw8TF5BHRW9WkPnX8__array) {
33073
+ if (v == null)
33074
+ continue;
33075
+ _3BLrzmscsjHCw8TF5BHRW9WkPnX8.push(v["@value"]);
33076
+ }
33077
+ instance.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8 = _3BLrzmscsjHCw8TF5BHRW9WkPnX8;
33078
+ if (!("_fromSubclass" in options) || !options._fromSubclass) {
33079
+ try {
33080
+ instance.#cachedJsonLd = structuredClone(json);
33081
+ }
33082
+ catch {
33083
+ getLogger(["fedify", "vocab"]).warn("Failed to cache JSON-LD: {json}", { json });
33084
+ }
33085
+ }
33086
+ return instance;
33087
+ }
33088
+ _getCustomInspectProxy() {
33089
+ const proxy = {};
33090
+ if (this.id != null) {
33091
+ proxy.id = {
33092
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(this.id.href, options),
33093
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(this.id.href, options),
33094
+ };
33095
+ }
33096
+ const _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz = this.#_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz
33097
+ // deno-lint-ignore no-explicit-any
33098
+ .map((v) => v instanceof URL
33099
+ ? {
33100
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
33101
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options),
33102
+ }
33103
+ : v);
33104
+ if (_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.length == 1) {
33105
+ proxy.content = _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz[0];
33106
+ }
33107
+ if (_4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.length > 1 ||
33108
+ !("content" in proxy) &&
33109
+ _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz.length > 0) {
33110
+ proxy.contents = _4HuuRSdSrXq8Jj2J9gcdYfoCzeuz;
33111
+ }
33112
+ const _3BLrzmscsjHCw8TF5BHRW9WkPnX8 = this.#_3BLrzmscsjHCw8TF5BHRW9WkPnX8
33113
+ // deno-lint-ignore no-explicit-any
33114
+ .map((v) => v instanceof URL
33115
+ ? {
33116
+ [Symbol.for("Deno.customInspect")]: (inspect, options) => "URL " + inspect(v.href, options),
33117
+ [Symbol.for("nodejs.util.inspect.custom")]: (_depth, options, inspect) => "URL " + inspect(v.href, options),
33118
+ }
33119
+ : v);
33120
+ if (_3BLrzmscsjHCw8TF5BHRW9WkPnX8.length == 1) {
33121
+ proxy.mediaType = _3BLrzmscsjHCw8TF5BHRW9WkPnX8[0];
33122
+ }
33123
+ return proxy;
33124
+ }
33125
+ [Symbol.for("Deno.customInspect")](inspect, options) {
33126
+ const proxy = this._getCustomInspectProxy();
33127
+ return "Source " + inspect(proxy, options);
33128
+ }
33129
+ [Symbol.for("nodejs.util.inspect.custom")](_depth, options, inspect) {
33130
+ const proxy = this._getCustomInspectProxy();
33131
+ return "Source " + inspect(proxy, options);
33132
+ }
33133
+ }
32681
33134
  /** A specialization of {@link Accept} indicating that
32682
33135
  * the acceptance is tentative.
32683
33136
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/fedify",
3
- "version": "0.14.0-dev.334+d1b1171c",
3
+ "version": "0.14.0-dev.335+caa05f81",
4
4
  "description": "An ActivityPub server framework",
5
5
  "keywords": [
6
6
  "ActivityPub",
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  /**
3
2
  * A page of items.
4
3
  */
@@ -1 +1 @@
1
- {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../src/federation/collection.ts"],"names":[],"mappings":";AAGA;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,KAAK;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,KAAK,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,GAC3B,OAAO,CAAC,UAAU,CAAC,CAiBrB;AAED;;;;;;;;GAQG;AACH,wBAAsB,oCAAoC,CACxD,YAAY,EAAE,MAAM,GAAG,GAAG,EAC1B,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,CAOjB"}
1
+ {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../src/federation/collection.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,KAAK;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,KAAK,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,GAC3B,OAAO,CAAC,UAAU,CAAC,CAiBrB;AAED;;;;;;;;GAQG;AACH,wBAAsB,oCAAoC,CACxD,YAAY,EAAE,MAAM,GAAG,GAAG,EAC1B,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,CAOjB"}
@@ -1,5 +1,3 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import * as dntShim from "../_dnt.shims.js";
4
2
  import type { DocumentLoader } from "../runtime/docloader.js";
5
3
  import type { Actor, Recipient } from "../vocab/actor.js";
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/federation/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/federation/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,MAAM,EACP,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,YAAY;IACnC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;IAEvC;;;;;OAKG;IACH,cAAc,IAAI,GAAG,CAAC;IAEtB;;;;;OAKG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEjC;;;;;;;;OAQG;IACH,YAAY,CAAC,OAAO,SAAS,MAAM,EAEjC,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG;QAAE,MAAM,EAAE,GAAG,CAAA;KAAE,EACxD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,GAAG,CAAC;IAEP;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAElC;;;;OAIG;IACH,WAAW,IAAI,GAAG,CAAC;IAEnB;;;;;OAKG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEjC;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAErC;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAErC;;;;;;OAMG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEjC;;;;;;OAMG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEpC;;;;;;;OAOG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAExC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,cAAc,GAAG,IAAI,CAAC;IAE1C;;;;;OAKG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAE1D;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzE;;;;;;;;;OASG;IACH,iBAAiB,CACf,QAAQ,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAA;KAAE,GACtD,cAAc,CAAC;IAElB;;;;;;OAMG;IACH,YAAY,CACV,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC5D,UAAU,EAAE,SAAS,GAAG,SAAS,EAAE,EACnC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,YAAY,CAAE,SAAQ,OAAO,CAAC,YAAY,CAAC;IACzE;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAElB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAEhD;;;;;;;;;OASG;IACH,SAAS,CAAC,OAAO,SAAS,MAAM,EAE9B,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG;QAAE,MAAM,EAAE,GAAG,CAAA;KAAE,EACxD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE3B;;;;;;;;;;;OAWG;IACH,YAAY,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAEjD;;;;;;;;;;;;OAYG;IACH,iBAAiB,IAAI,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAE3C;;;;;;OAMG;IACH,YAAY,CACV,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC5D,UAAU,EAAE,SAAS,GAAG,SAAS,EAAE,EACnC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;;OAQG;IACH,YAAY,CACV,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC1B,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc;AACxB;;GAEG;AACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACnC;;GAEG;GACD;IACA,IAAI,EAAE,QAAQ,CAAC;IAEf,KAAK,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG;QAAE,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC;IAC1D,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AACD;;;GAGG;GACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AACpC;;GAEG;GACD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACpC;;GAEG;GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACvC;;GAEG;GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACvC;;;GAGG;GACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACnC;;;GAGG;GACD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACtC;;;GAGG;GACD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7C;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,OAAO,CAAC,aAAa;IACzD;;OAEG;IACH,KAAK,EAAE,GAAG,CAAC;IAEX;;OAEG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;IAEnC;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC;CACpB"}
@@ -1,5 +1,3 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import * as dntShim from "../_dnt.shims.js";
4
2
  import type { DocumentLoader } from "../runtime/docloader.js";
5
3
  import type { Recipient } from "../vocab/actor.js";