@fedify/fedify 1.1.26 → 1.1.27

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.
package/CHANGES.md CHANGED
@@ -3,6 +3,18 @@
3
3
  Fedify changelog
4
4
  ================
5
5
 
6
+ Version 1.1.27
7
+ --------------
8
+
9
+ Released on September 17, 2025.
10
+
11
+ - Improved the AT Protocol URI workaround to handle all DID methods and
12
+ edge cases. The fix now properly percent-encodes any authority component
13
+ in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
14
+ beyond just `did:plc`. Also handles URIs without path components
15
+ correctly. [[#436]]
16
+
17
+
6
18
  Version 1.1.26
7
19
  --------------
8
20
 
@@ -492,6 +504,18 @@ Released on October 20, 2024.
492
504
  [#150]: https://github.com/dahlia/fedify/issues/150
493
505
 
494
506
 
507
+ Version 1.0.30
508
+ --------------
509
+
510
+ Released on September 17, 2025.
511
+
512
+ - Improved the AT Protocol URI workaround to handle all DID methods and
513
+ edge cases. The fix now properly percent-encodes any authority component
514
+ in `at://` URIs, supporting `did:web`, `did:key`, and other DID methods
515
+ beyond just `did:plc`. Also handles URIs without path components
516
+ correctly. [[#436]]
517
+
518
+
495
519
  Version 1.0.29
496
520
  --------------
497
521
 
@@ -4830,8 +4830,14 @@ export class Object {
4830
4830
  const decoded = typeof v === "object" && "@id" in v &&
4831
4831
  typeof v["@id"] === "string" &&
4832
4832
  v["@id"] !== "" && v["@id"] !== "/"
4833
- ? v["@id"].startsWith("at://did:plc:")
4834
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
4833
+ ? v["@id"].startsWith("at://")
4834
+ ? new URL("at://" +
4835
+ encodeURIComponent(v["@id"].includes("/", 5)
4836
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
4837
+ : v["@id"].slice(5)) +
4838
+ (v["@id"].includes("/", 5)
4839
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
4840
+ : ""))
4835
4841
  : new URL(v["@id"])
4836
4842
  : typeof v === "object" && "@type" in v &&
4837
4843
  Array.isArray(v["@type"]) &&
@@ -8195,8 +8201,14 @@ export class DidService {
8195
8201
  : _2KM4fetG6FTJ1cphj76rzJ8Dyv7p_serviceEndpoint__array) {
8196
8202
  if (v == null)
8197
8203
  continue;
8198
- _2KM4fetG6FTJ1cphj76rzJ8Dyv7p_serviceEndpoint.push(v["@id"].startsWith("at://did:plc:")
8199
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
8204
+ _2KM4fetG6FTJ1cphj76rzJ8Dyv7p_serviceEndpoint.push(v["@id"].startsWith("at://")
8205
+ ? new URL("at://" +
8206
+ encodeURIComponent(v["@id"].includes("/", 5)
8207
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
8208
+ : v["@id"].slice(5)) +
8209
+ (v["@id"].includes("/", 5)
8210
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
8211
+ : ""))
8200
8212
  : new URL(v["@id"]));
8201
8213
  }
8202
8214
  instance.#_2KM4fetG6FTJ1cphj76rzJ8Dyv7p_serviceEndpoint =
@@ -17825,8 +17837,14 @@ export class Endpoints {
17825
17837
  : _2JCYDbSxEHCCLdBYed33cCETfGyR_proxyUrl__array) {
17826
17838
  if (v == null)
17827
17839
  continue;
17828
- _2JCYDbSxEHCCLdBYed33cCETfGyR_proxyUrl.push(v["@id"].startsWith("at://did:plc:")
17829
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17840
+ _2JCYDbSxEHCCLdBYed33cCETfGyR_proxyUrl.push(v["@id"].startsWith("at://")
17841
+ ? new URL("at://" +
17842
+ encodeURIComponent(v["@id"].includes("/", 5)
17843
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17844
+ : v["@id"].slice(5)) +
17845
+ (v["@id"].includes("/", 5)
17846
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17847
+ : ""))
17830
17848
  : new URL(v["@id"]));
17831
17849
  }
17832
17850
  instance.#_2JCYDbSxEHCCLdBYed33cCETfGyR_proxyUrl =
@@ -17844,8 +17862,14 @@ export class Endpoints {
17844
17862
  : _25S6UmgzDead8hxL5sQFezZTAusd_oauthAuthorizationEndpoint__array) {
17845
17863
  if (v == null)
17846
17864
  continue;
17847
- _25S6UmgzDead8hxL5sQFezZTAusd_oauthAuthorizationEndpoint.push(v["@id"].startsWith("at://did:plc:")
17848
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17865
+ _25S6UmgzDead8hxL5sQFezZTAusd_oauthAuthorizationEndpoint.push(v["@id"].startsWith("at://")
17866
+ ? new URL("at://" +
17867
+ encodeURIComponent(v["@id"].includes("/", 5)
17868
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17869
+ : v["@id"].slice(5)) +
17870
+ (v["@id"].includes("/", 5)
17871
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17872
+ : ""))
17849
17873
  : new URL(v["@id"]));
17850
17874
  }
17851
17875
  instance.#_25S6UmgzDead8hxL5sQFezZTAusd_oauthAuthorizationEndpoint =
@@ -17860,8 +17884,14 @@ export class Endpoints {
17860
17884
  : _iAMxqrSba7yBCRB1FZ5kEVdKEZ3_oauthTokenEndpoint__array) {
17861
17885
  if (v == null)
17862
17886
  continue;
17863
- _iAMxqrSba7yBCRB1FZ5kEVdKEZ3_oauthTokenEndpoint.push(v["@id"].startsWith("at://did:plc:")
17864
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17887
+ _iAMxqrSba7yBCRB1FZ5kEVdKEZ3_oauthTokenEndpoint.push(v["@id"].startsWith("at://")
17888
+ ? new URL("at://" +
17889
+ encodeURIComponent(v["@id"].includes("/", 5)
17890
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17891
+ : v["@id"].slice(5)) +
17892
+ (v["@id"].includes("/", 5)
17893
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17894
+ : ""))
17865
17895
  : new URL(v["@id"]));
17866
17896
  }
17867
17897
  instance.#_iAMxqrSba7yBCRB1FZ5kEVdKEZ3_oauthTokenEndpoint =
@@ -17876,8 +17906,14 @@ export class Endpoints {
17876
17906
  : _8Bx9qN8oU7Bpt2xi6khaxWp1gMr_provideClientKey__array) {
17877
17907
  if (v == null)
17878
17908
  continue;
17879
- _8Bx9qN8oU7Bpt2xi6khaxWp1gMr_provideClientKey.push(v["@id"].startsWith("at://did:plc:")
17880
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17909
+ _8Bx9qN8oU7Bpt2xi6khaxWp1gMr_provideClientKey.push(v["@id"].startsWith("at://")
17910
+ ? new URL("at://" +
17911
+ encodeURIComponent(v["@id"].includes("/", 5)
17912
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17913
+ : v["@id"].slice(5)) +
17914
+ (v["@id"].includes("/", 5)
17915
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17916
+ : ""))
17881
17917
  : new URL(v["@id"]));
17882
17918
  }
17883
17919
  instance.#_8Bx9qN8oU7Bpt2xi6khaxWp1gMr_provideClientKey =
@@ -17892,8 +17928,14 @@ export class Endpoints {
17892
17928
  : _3dU7PMVQZJpsCpo2F4RQXxBXdPmS_signClientKey__array) {
17893
17929
  if (v == null)
17894
17930
  continue;
17895
- _3dU7PMVQZJpsCpo2F4RQXxBXdPmS_signClientKey.push(v["@id"].startsWith("at://did:plc:")
17896
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17931
+ _3dU7PMVQZJpsCpo2F4RQXxBXdPmS_signClientKey.push(v["@id"].startsWith("at://")
17932
+ ? new URL("at://" +
17933
+ encodeURIComponent(v["@id"].includes("/", 5)
17934
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17935
+ : v["@id"].slice(5)) +
17936
+ (v["@id"].includes("/", 5)
17937
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17938
+ : ""))
17897
17939
  : new URL(v["@id"]));
17898
17940
  }
17899
17941
  instance.#_3dU7PMVQZJpsCpo2F4RQXxBXdPmS_signClientKey =
@@ -17908,8 +17950,14 @@ export class Endpoints {
17908
17950
  : _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox__array) {
17909
17951
  if (v == null)
17910
17952
  continue;
17911
- _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox.push(v["@id"].startsWith("at://did:plc:")
17912
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
17953
+ _3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox.push(v["@id"].startsWith("at://")
17954
+ ? new URL("at://" +
17955
+ encodeURIComponent(v["@id"].includes("/", 5)
17956
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
17957
+ : v["@id"].slice(5)) +
17958
+ (v["@id"].includes("/", 5)
17959
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
17960
+ : ""))
17913
17961
  : new URL(v["@id"]));
17914
17962
  }
17915
17963
  instance.#_3JprUSDLVqqX4dwHRi37qGZZCRCc_sharedInbox =
@@ -22580,8 +22628,14 @@ export class Link {
22580
22628
  : _pVjLsybKQdmkjuU7MHjiVmNnuj7_href__array) {
22581
22629
  if (v == null)
22582
22630
  continue;
22583
- _pVjLsybKQdmkjuU7MHjiVmNnuj7_href.push(v["@id"].startsWith("at://did:plc:")
22584
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
22631
+ _pVjLsybKQdmkjuU7MHjiVmNnuj7_href.push(v["@id"].startsWith("at://")
22632
+ ? new URL("at://" +
22633
+ encodeURIComponent(v["@id"].includes("/", 5)
22634
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
22635
+ : v["@id"].slice(5)) +
22636
+ (v["@id"].includes("/", 5)
22637
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
22638
+ : ""))
22585
22639
  : new URL(v["@id"]));
22586
22640
  }
22587
22641
  instance.#_pVjLsybKQdmkjuU7MHjiVmNnuj7_href =
@@ -33137,8 +33191,14 @@ export class Place extends Object {
33137
33191
  : typeof v === "object" && "@id" in v &&
33138
33192
  typeof v["@id"] === "string" &&
33139
33193
  v["@id"] !== "" && v["@id"] !== "/"
33140
- ? v["@id"].startsWith("at://did:plc:")
33141
- ? new URL("at://did%3Aplc%3A" + v["@id"].slice(13))
33194
+ ? v["@id"].startsWith("at://")
33195
+ ? new URL("at://" +
33196
+ encodeURIComponent(v["@id"].includes("/", 5)
33197
+ ? v["@id"].slice(5, v["@id"].indexOf("/", 5))
33198
+ : v["@id"].slice(5)) +
33199
+ (v["@id"].includes("/", 5)
33200
+ ? v["@id"].slice(v["@id"].indexOf("/", 5))
33201
+ : ""))
33142
33202
  : new URL(v["@id"])
33143
33203
  : undefined;
33144
33204
  if (typeof decoded === "undefined")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/fedify",
3
- "version": "1.1.26",
3
+ "version": "1.1.27",
4
4
  "description": "An ActivityPub server framework",
5
5
  "keywords": [
6
6
  "ActivityPub",