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

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 (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":"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"}
@@ -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";