@hashgraphonline/standards-sdk 0.1.160 → 0.1.162
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/dist/cjs/hcs-14/index.d.ts +1 -0
- package/dist/cjs/hcs-14/index.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/aid-dns-web-profile.d.ts +1 -0
- package/dist/cjs/hcs-14/resolvers/aid-dns-web-profile.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts +23 -0
- package/dist/cjs/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/ans-dns-web-profile.d.ts +32 -0
- package/dist/cjs/hcs-14/resolvers/ans-dns-web-profile.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/hcs-11-profile.d.ts +1 -0
- package/dist/cjs/hcs-14/resolvers/hcs-11-profile.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/hiero.d.ts +1 -0
- package/dist/cjs/hcs-14/resolvers/hiero.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/registry.d.ts +39 -1
- package/dist/cjs/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/types.d.ts +52 -0
- package/dist/cjs/hcs-14/resolvers/types.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/uaid-did-resolution-profile.d.ts +1 -0
- package/dist/cjs/hcs-14/resolvers/uaid-did-resolution-profile.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/uaid-dns-web-profile.d.ts +1 -0
- package/dist/cjs/hcs-14/resolvers/uaid-dns-web-profile.d.ts.map +1 -1
- package/dist/cjs/hcs-14/sdk.d.ts +46 -13
- package/dist/cjs/hcs-14/sdk.d.ts.map +1 -1
- package/dist/cjs/standards-sdk.cjs +3 -3
- package/dist/cjs/standards-sdk.cjs.map +1 -1
- package/dist/es/hcs-14/index.d.ts +1 -0
- package/dist/es/hcs-14/index.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/aid-dns-web-profile.d.ts +1 -0
- package/dist/es/hcs-14/resolvers/aid-dns-web-profile.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts +23 -0
- package/dist/es/hcs-14/resolvers/ans-dns-web-profile-utils.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/ans-dns-web-profile.d.ts +32 -0
- package/dist/es/hcs-14/resolvers/ans-dns-web-profile.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/hcs-11-profile.d.ts +1 -0
- package/dist/es/hcs-14/resolvers/hcs-11-profile.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/hiero.d.ts +1 -0
- package/dist/es/hcs-14/resolvers/hiero.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/registry.d.ts +39 -1
- package/dist/es/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/types.d.ts +52 -0
- package/dist/es/hcs-14/resolvers/types.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/uaid-did-resolution-profile.d.ts +1 -0
- package/dist/es/hcs-14/resolvers/uaid-did-resolution-profile.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/uaid-dns-web-profile.d.ts +1 -0
- package/dist/es/hcs-14/resolvers/uaid-dns-web-profile.d.ts.map +1 -1
- package/dist/es/hcs-14/sdk.d.ts +46 -13
- package/dist/es/hcs-14/sdk.d.ts.map +1 -1
- package/dist/es/standards-sdk.es.js +97 -90
- package/dist/es/standards-sdk.es.js.map +1 -1
- package/dist/es/standards-sdk.es100.js +151 -43
- package/dist/es/standards-sdk.es100.js.map +1 -1
- package/dist/es/standards-sdk.es101.js +114 -234
- package/dist/es/standards-sdk.es101.js.map +1 -1
- package/dist/es/standards-sdk.es102.js +43 -96
- package/dist/es/standards-sdk.es102.js.map +1 -1
- package/dist/es/standards-sdk.es103.js +244 -80
- package/dist/es/standards-sdk.es103.js.map +1 -1
- package/dist/es/standards-sdk.es104.js +101 -29
- package/dist/es/standards-sdk.es104.js.map +1 -1
- package/dist/es/standards-sdk.es105.js +94 -225
- package/dist/es/standards-sdk.es105.js.map +1 -1
- package/dist/es/standards-sdk.es106.js +29 -112
- package/dist/es/standards-sdk.es106.js.map +1 -1
- package/dist/es/standards-sdk.es107.js +224 -26
- package/dist/es/standards-sdk.es107.js.map +1 -1
- package/dist/es/standards-sdk.es108.js +109 -80
- package/dist/es/standards-sdk.es108.js.map +1 -1
- package/dist/es/standards-sdk.es109.js +29 -26
- package/dist/es/standards-sdk.es109.js.map +1 -1
- package/dist/es/standards-sdk.es11.js +1 -1
- package/dist/es/standards-sdk.es110.js +80 -248
- package/dist/es/standards-sdk.es110.js.map +1 -1
- package/dist/es/standards-sdk.es111.js +28 -475
- package/dist/es/standards-sdk.es111.js.map +1 -1
- package/dist/es/standards-sdk.es112.js +244 -97
- package/dist/es/standards-sdk.es112.js.map +1 -1
- package/dist/es/standards-sdk.es113.js +451 -133
- package/dist/es/standards-sdk.es113.js.map +1 -1
- package/dist/es/standards-sdk.es114.js +98 -27
- package/dist/es/standards-sdk.es114.js.map +1 -1
- package/dist/es/standards-sdk.es115.js +156 -8
- package/dist/es/standards-sdk.es115.js.map +1 -1
- package/dist/es/standards-sdk.es116.js +31 -139
- package/dist/es/standards-sdk.es116.js.map +1 -1
- package/dist/es/standards-sdk.es117.js +10 -27
- package/dist/es/standards-sdk.es117.js.map +1 -1
- package/dist/es/standards-sdk.es118.js +139 -19
- package/dist/es/standards-sdk.es118.js.map +1 -1
- package/dist/es/standards-sdk.es119.js +27 -158
- package/dist/es/standards-sdk.es119.js.map +1 -1
- package/dist/es/standards-sdk.es12.js +1 -1
- package/dist/es/standards-sdk.es120.js +16 -197
- package/dist/es/standards-sdk.es120.js.map +1 -1
- package/dist/es/standards-sdk.es121.js +133 -763
- package/dist/es/standards-sdk.es121.js.map +1 -1
- package/dist/es/standards-sdk.es122.js +200 -10
- package/dist/es/standards-sdk.es122.js.map +1 -1
- package/dist/es/standards-sdk.es123.js +762 -539
- package/dist/es/standards-sdk.es123.js.map +1 -1
- package/dist/es/standards-sdk.es124.js +10 -599
- package/dist/es/standards-sdk.es124.js.map +1 -1
- package/dist/es/standards-sdk.es125.js +567 -13
- package/dist/es/standards-sdk.es125.js.map +1 -1
- package/dist/es/standards-sdk.es126.js +602 -2
- package/dist/es/standards-sdk.es126.js.map +1 -1
- package/dist/es/standards-sdk.es127.js +12 -86
- package/dist/es/standards-sdk.es127.js.map +1 -1
- package/dist/es/standards-sdk.es128.js +2 -40
- package/dist/es/standards-sdk.es128.js.map +1 -1
- package/dist/es/standards-sdk.es129.js +87 -2
- package/dist/es/standards-sdk.es129.js.map +1 -1
- package/dist/es/standards-sdk.es13.js +1 -1
- package/dist/es/standards-sdk.es130.js +37 -232
- package/dist/es/standards-sdk.es130.js.map +1 -1
- package/dist/es/standards-sdk.es131.js +2 -1140
- package/dist/es/standards-sdk.es131.js.map +1 -1
- package/dist/es/standards-sdk.es132.js +213 -284
- package/dist/es/standards-sdk.es132.js.map +1 -1
- package/dist/es/standards-sdk.es133.js +1138 -420
- package/dist/es/standards-sdk.es133.js.map +1 -1
- package/dist/es/standards-sdk.es134.js +301 -350
- package/dist/es/standards-sdk.es134.js.map +1 -1
- package/dist/es/standards-sdk.es135.js +417 -1111
- package/dist/es/standards-sdk.es135.js.map +1 -1
- package/dist/es/standards-sdk.es136.js +348 -201
- package/dist/es/standards-sdk.es136.js.map +1 -1
- package/dist/es/standards-sdk.es137.js +1029 -1480
- package/dist/es/standards-sdk.es137.js.map +1 -1
- package/dist/es/standards-sdk.es138.js +207 -1254
- package/dist/es/standards-sdk.es138.js.map +1 -1
- package/dist/es/standards-sdk.es139.js +1564 -14
- package/dist/es/standards-sdk.es139.js.map +1 -1
- package/dist/es/standards-sdk.es14.js +1 -1
- package/dist/es/standards-sdk.es140.js +1253 -85
- package/dist/es/standards-sdk.es140.js.map +1 -1
- package/dist/es/standards-sdk.es141.js +15 -79
- package/dist/es/standards-sdk.es141.js.map +1 -1
- package/dist/es/standards-sdk.es142.js +83 -889
- package/dist/es/standards-sdk.es142.js.map +1 -1
- package/dist/es/standards-sdk.es143.js +73 -52
- package/dist/es/standards-sdk.es143.js.map +1 -1
- package/dist/es/standards-sdk.es144.js +877 -143
- package/dist/es/standards-sdk.es144.js.map +1 -1
- package/dist/es/standards-sdk.es145.js +60 -7
- package/dist/es/standards-sdk.es145.js.map +1 -1
- package/dist/es/standards-sdk.es146.js +138 -65
- package/dist/es/standards-sdk.es146.js.map +1 -1
- package/dist/es/standards-sdk.es147.js +7 -65
- package/dist/es/standards-sdk.es147.js.map +1 -1
- package/dist/es/standards-sdk.es148.js +86 -30
- package/dist/es/standards-sdk.es148.js.map +1 -1
- package/dist/es/standards-sdk.es149.js +65 -34
- package/dist/es/standards-sdk.es149.js.map +1 -1
- package/dist/es/standards-sdk.es15.js +1 -1
- package/dist/es/standards-sdk.es150.js +30 -41
- package/dist/es/standards-sdk.es150.js.map +1 -1
- package/dist/es/standards-sdk.es151.js +34 -138
- package/dist/es/standards-sdk.es151.js.map +1 -1
- package/dist/es/standards-sdk.es152.js +48 -42
- package/dist/es/standards-sdk.es152.js.map +1 -1
- package/dist/es/standards-sdk.es153.js +106 -12450
- package/dist/es/standards-sdk.es153.js.map +1 -1
- package/dist/es/standards-sdk.es154.js +38 -168
- package/dist/es/standards-sdk.es154.js.map +1 -1
- package/dist/es/standards-sdk.es155.js +12423 -263
- package/dist/es/standards-sdk.es155.js.map +1 -1
- package/dist/es/standards-sdk.es156.js +13 -342
- package/dist/es/standards-sdk.es156.js.map +1 -1
- package/dist/es/standards-sdk.es157.js +55 -452
- package/dist/es/standards-sdk.es157.js.map +1 -1
- package/dist/es/standards-sdk.es158.js +70 -317
- package/dist/es/standards-sdk.es158.js.map +1 -1
- package/dist/es/standards-sdk.es159.js +70 -65
- package/dist/es/standards-sdk.es159.js.map +1 -1
- package/dist/es/standards-sdk.es16.js +4 -4
- package/dist/es/standards-sdk.es160.js +197 -14
- package/dist/es/standards-sdk.es160.js.map +1 -1
- package/dist/es/standards-sdk.es161.js +60 -229
- package/dist/es/standards-sdk.es161.js.map +1 -1
- package/dist/es/standards-sdk.es162.js +237 -51
- package/dist/es/standards-sdk.es162.js.map +1 -1
- package/dist/es/standards-sdk.es163.js +160 -72
- package/dist/es/standards-sdk.es163.js.map +1 -1
- package/dist/es/standards-sdk.es164.js +312 -71
- package/dist/es/standards-sdk.es164.js.map +1 -1
- package/dist/es/standards-sdk.es165.js +337 -64
- package/dist/es/standards-sdk.es165.js.map +1 -1
- package/dist/es/standards-sdk.es166.js +436 -155
- package/dist/es/standards-sdk.es166.js.map +1 -1
- package/dist/es/standards-sdk.es167.js +319 -210
- package/dist/es/standards-sdk.es167.js.map +1 -1
- package/dist/es/standards-sdk.es168.js +68 -231
- package/dist/es/standards-sdk.es168.js.map +1 -1
- package/dist/es/standards-sdk.es169.js +154 -101
- package/dist/es/standards-sdk.es169.js.map +1 -1
- package/dist/es/standards-sdk.es170.js +200 -104
- package/dist/es/standards-sdk.es170.js.map +1 -1
- package/dist/es/standards-sdk.es171.js +225 -147
- package/dist/es/standards-sdk.es171.js.map +1 -1
- package/dist/es/standards-sdk.es172.js +100 -166
- package/dist/es/standards-sdk.es172.js.map +1 -1
- package/dist/es/standards-sdk.es173.js +110 -123
- package/dist/es/standards-sdk.es173.js.map +1 -1
- package/dist/es/standards-sdk.es174.js +122 -292
- package/dist/es/standards-sdk.es174.js.map +1 -1
- package/dist/es/standards-sdk.es175.js +166 -240
- package/dist/es/standards-sdk.es175.js.map +1 -1
- package/dist/es/standards-sdk.es176.js +125 -102
- package/dist/es/standards-sdk.es176.js.map +1 -1
- package/dist/es/standards-sdk.es177.js +334 -0
- package/dist/es/standards-sdk.es177.js.map +1 -0
- package/dist/es/standards-sdk.es178.js +262 -0
- package/dist/es/standards-sdk.es178.js.map +1 -0
- package/dist/es/standards-sdk.es179.js +119 -0
- package/dist/es/standards-sdk.es179.js.map +1 -0
- package/dist/es/standards-sdk.es18.js +11 -11
- package/dist/es/standards-sdk.es19.js +8 -8
- package/dist/es/standards-sdk.es2.js +2 -2
- package/dist/es/standards-sdk.es20.js +1 -1
- package/dist/es/standards-sdk.es21.js +1 -1
- package/dist/es/standards-sdk.es22.js +1 -1
- package/dist/es/standards-sdk.es23.js +1 -1
- package/dist/es/standards-sdk.es24.js +1 -1
- package/dist/es/standards-sdk.es25.js +1 -1
- package/dist/es/standards-sdk.es26.js +1 -1
- package/dist/es/standards-sdk.es27.js +11 -11
- package/dist/es/standards-sdk.es30.js +2 -2
- package/dist/es/standards-sdk.es31.js +4 -4
- package/dist/es/standards-sdk.es32.js +1 -1
- package/dist/es/standards-sdk.es35.js +5 -5
- package/dist/es/standards-sdk.es36.js +4 -4
- package/dist/es/standards-sdk.es37.js +2 -2
- package/dist/es/standards-sdk.es38.js +2 -2
- package/dist/es/standards-sdk.es39.js +1 -1
- package/dist/es/standards-sdk.es4.js +2 -2
- package/dist/es/standards-sdk.es40.js +1 -1
- package/dist/es/standards-sdk.es41.js +2 -2
- package/dist/es/standards-sdk.es46.js +1 -1
- package/dist/es/standards-sdk.es5.js +2 -2
- package/dist/es/standards-sdk.es51.js +1 -1
- package/dist/es/standards-sdk.es53.js +1 -1
- package/dist/es/standards-sdk.es56.js +2 -2
- package/dist/es/standards-sdk.es58.js +39 -231
- package/dist/es/standards-sdk.es58.js.map +1 -1
- package/dist/es/standards-sdk.es59.js +328 -35
- package/dist/es/standards-sdk.es59.js.map +1 -1
- package/dist/es/standards-sdk.es6.js +2 -2
- package/dist/es/standards-sdk.es60.js +33 -101
- package/dist/es/standards-sdk.es60.js.map +1 -1
- package/dist/es/standards-sdk.es61.js +87 -156
- package/dist/es/standards-sdk.es61.js.map +1 -1
- package/dist/es/standards-sdk.es62.js +126 -153
- package/dist/es/standards-sdk.es62.js.map +1 -1
- package/dist/es/standards-sdk.es63.js +234 -81
- package/dist/es/standards-sdk.es63.js.map +1 -1
- package/dist/es/standards-sdk.es64.js +244 -39
- package/dist/es/standards-sdk.es64.js.map +1 -1
- package/dist/es/standards-sdk.es65.js +122 -247
- package/dist/es/standards-sdk.es65.js.map +1 -1
- package/dist/es/standards-sdk.es66.js +41 -28
- package/dist/es/standards-sdk.es66.js.map +1 -1
- package/dist/es/standards-sdk.es67.js +266 -90
- package/dist/es/standards-sdk.es67.js.map +1 -1
- package/dist/es/standards-sdk.es68.js +33 -3
- package/dist/es/standards-sdk.es68.js.map +1 -1
- package/dist/es/standards-sdk.es69.js +84 -89
- package/dist/es/standards-sdk.es69.js.map +1 -1
- package/dist/es/standards-sdk.es7.js +1 -1
- package/dist/es/standards-sdk.es70.js +3 -99
- package/dist/es/standards-sdk.es70.js.map +1 -1
- package/dist/es/standards-sdk.es71.js +99 -17
- package/dist/es/standards-sdk.es71.js.map +1 -1
- package/dist/es/standards-sdk.es72.js +100 -77
- package/dist/es/standards-sdk.es72.js.map +1 -1
- package/dist/es/standards-sdk.es73.js +19 -458
- package/dist/es/standards-sdk.es73.js.map +1 -1
- package/dist/es/standards-sdk.es74.js +77 -324
- package/dist/es/standards-sdk.es74.js.map +1 -1
- package/dist/es/standards-sdk.es75.js +420 -170
- package/dist/es/standards-sdk.es75.js.map +1 -1
- package/dist/es/standards-sdk.es76.js +323 -71
- package/dist/es/standards-sdk.es76.js.map +1 -1
- package/dist/es/standards-sdk.es77.js +208 -71
- package/dist/es/standards-sdk.es77.js.map +1 -1
- package/dist/es/standards-sdk.es78.js +67 -138
- package/dist/es/standards-sdk.es78.js.map +1 -1
- package/dist/es/standards-sdk.es79.js +71 -69
- package/dist/es/standards-sdk.es79.js.map +1 -1
- package/dist/es/standards-sdk.es80.js +132 -393
- package/dist/es/standards-sdk.es80.js.map +1 -1
- package/dist/es/standards-sdk.es81.js +44 -471
- package/dist/es/standards-sdk.es81.js.map +1 -1
- package/dist/es/standards-sdk.es82.js +361 -322
- package/dist/es/standards-sdk.es82.js.map +1 -1
- package/dist/es/standards-sdk.es83.js +495 -88
- package/dist/es/standards-sdk.es83.js.map +1 -1
- package/dist/es/standards-sdk.es84.js +365 -125
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es85.js +88 -7
- package/dist/es/standards-sdk.es85.js.map +1 -1
- package/dist/es/standards-sdk.es86.js +125 -47
- package/dist/es/standards-sdk.es86.js.map +1 -1
- package/dist/es/standards-sdk.es87.js +6 -99
- package/dist/es/standards-sdk.es87.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +43 -344
- package/dist/es/standards-sdk.es88.js.map +1 -1
- package/dist/es/standards-sdk.es89.js +73 -253
- package/dist/es/standards-sdk.es89.js.map +1 -1
- package/dist/es/standards-sdk.es9.js +2 -2
- package/dist/es/standards-sdk.es90.js +340 -53
- package/dist/es/standards-sdk.es90.js.map +1 -1
- package/dist/es/standards-sdk.es91.js +280 -48
- package/dist/es/standards-sdk.es91.js.map +1 -1
- package/dist/es/standards-sdk.es92.js +54 -143
- package/dist/es/standards-sdk.es92.js.map +1 -1
- package/dist/es/standards-sdk.es93.js +44 -62
- package/dist/es/standards-sdk.es93.js.map +1 -1
- package/dist/es/standards-sdk.es94.js +140 -20
- package/dist/es/standards-sdk.es94.js.map +1 -1
- package/dist/es/standards-sdk.es95.js +65 -23
- package/dist/es/standards-sdk.es95.js.map +1 -1
- package/dist/es/standards-sdk.es96.js +26 -236
- package/dist/es/standards-sdk.es96.js.map +1 -1
- package/dist/es/standards-sdk.es97.js +23 -280
- package/dist/es/standards-sdk.es97.js.map +1 -1
- package/dist/es/standards-sdk.es98.js +229 -146
- package/dist/es/standards-sdk.es98.js.map +1 -1
- package/dist/es/standards-sdk.es99.js +254 -117
- package/dist/es/standards-sdk.es99.js.map +1 -1
- package/package.json +8 -1
|
@@ -1,46 +1,339 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
resolverPromise = optionalImport(
|
|
7
|
-
hieroResolverModuleId
|
|
8
|
-
).then((mod) => mod?.resolveDID ?? null);
|
|
9
|
-
}
|
|
10
|
-
return resolverPromise;
|
|
11
|
-
}
|
|
12
|
-
class HieroDidResolver {
|
|
1
|
+
import { isUaidProfileResolverAdapter, isDidProfileResolverAdapter, isDidResolverAdapter } from "./standards-sdk.es58.js";
|
|
2
|
+
import { HieroDidResolver } from "./standards-sdk.es60.js";
|
|
3
|
+
import { parseHcs14Did } from "./standards-sdk.es56.js";
|
|
4
|
+
import { multibaseB58btcDecode } from "./standards-sdk.es157.js";
|
|
5
|
+
class ResolverRegistry {
|
|
13
6
|
constructor() {
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
};
|
|
7
|
+
this.resolvers = [];
|
|
8
|
+
this.profileResolvers = [];
|
|
9
|
+
this.uaidProfileResolvers = [];
|
|
10
|
+
this.adapters = [];
|
|
11
|
+
}
|
|
12
|
+
supportsDidMethod(didMethods, method) {
|
|
13
|
+
return !!didMethods && (didMethods.includes(method) || didMethods.includes("*"));
|
|
14
|
+
}
|
|
15
|
+
addDidResolver(adapter) {
|
|
16
|
+
this.resolvers.push(adapter);
|
|
17
|
+
this.adapters.push({
|
|
18
|
+
capability: "did-resolver",
|
|
19
|
+
adapter
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
addDidProfileResolver(adapter) {
|
|
23
|
+
this.profileResolvers.push(adapter);
|
|
24
|
+
this.adapters.push({
|
|
25
|
+
capability: "did-profile-resolver",
|
|
26
|
+
adapter
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
addUaidProfileResolver(adapter) {
|
|
30
|
+
this.uaidProfileResolvers.push(adapter);
|
|
31
|
+
this.adapters.push({
|
|
32
|
+
capability: "uaid-profile-resolver",
|
|
33
|
+
adapter
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
registerAdapter(adapter) {
|
|
37
|
+
const isUaidProfile = isUaidProfileResolverAdapter(adapter);
|
|
38
|
+
const isDidProfile = isDidProfileResolverAdapter(adapter);
|
|
39
|
+
const isDid = isDidResolverAdapter(adapter);
|
|
40
|
+
const capabilityMatchCount = [isUaidProfile, isDidProfile, isDid].filter(
|
|
41
|
+
Boolean
|
|
42
|
+
).length;
|
|
43
|
+
if (capabilityMatchCount > 1) {
|
|
44
|
+
throw new Error(
|
|
45
|
+
"Adapter matches multiple resolver capabilities. Split it into single-capability adapters, or use register/registerProfileResolver/registerUaidProfileResolver to explicitly select one capability."
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
if (isUaidProfile) {
|
|
49
|
+
this.addUaidProfileResolver(adapter);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
if (isDidProfile) {
|
|
53
|
+
this.addDidProfileResolver(adapter);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (isDid) {
|
|
57
|
+
this.addDidResolver(adapter);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
throw new Error("Adapter does not match a supported resolver capability.");
|
|
28
61
|
}
|
|
29
|
-
|
|
30
|
-
return
|
|
62
|
+
listAdapters() {
|
|
63
|
+
return [...this.adapters];
|
|
31
64
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
if (!resolveDID) {
|
|
65
|
+
filterAdapters(options = {}) {
|
|
66
|
+
if (options.profileId !== void 0 && options.capability !== void 0 && options.capability !== "uaid-profile-resolver") {
|
|
35
67
|
throw new Error(
|
|
36
|
-
|
|
68
|
+
'profileId filter requires capability "uaid-profile-resolver".'
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
const effectiveCapability = options.capability ?? (options.profileId !== void 0 ? "uaid-profile-resolver" : void 0);
|
|
72
|
+
return this.adapters.filter((record) => {
|
|
73
|
+
if (effectiveCapability !== void 0 && record.capability !== effectiveCapability) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
if (options.didMethod !== void 0 && !this.supportsDidMethod(
|
|
77
|
+
record.adapter.meta?.didMethods,
|
|
78
|
+
options.didMethod
|
|
79
|
+
)) {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
if (options.profileId !== void 0) {
|
|
83
|
+
if (record.capability !== "uaid-profile-resolver") {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
if (record.adapter.profile !== options.profileId) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return true;
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
/** @deprecated Use registerAdapter() instead. */
|
|
94
|
+
register(resolver) {
|
|
95
|
+
this.addDidResolver(resolver);
|
|
96
|
+
}
|
|
97
|
+
/** @deprecated Use registerAdapter() instead. */
|
|
98
|
+
registerProfileResolver(resolver) {
|
|
99
|
+
this.addDidProfileResolver(resolver);
|
|
100
|
+
}
|
|
101
|
+
/** @deprecated Use registerAdapter() instead. */
|
|
102
|
+
registerUaidProfileResolver(resolver) {
|
|
103
|
+
this.addUaidProfileResolver(resolver);
|
|
104
|
+
}
|
|
105
|
+
/** @deprecated Use filterAdapters({ capability: 'did-resolver' }) instead. */
|
|
106
|
+
list() {
|
|
107
|
+
return [...this.resolvers];
|
|
108
|
+
}
|
|
109
|
+
/** @deprecated Use filterAdapters({ capability: 'did-profile-resolver' }) instead. */
|
|
110
|
+
listProfileResolvers() {
|
|
111
|
+
return [...this.profileResolvers];
|
|
112
|
+
}
|
|
113
|
+
/** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver' }) instead. */
|
|
114
|
+
listUaidProfileResolvers() {
|
|
115
|
+
return [...this.uaidProfileResolvers];
|
|
116
|
+
}
|
|
117
|
+
/** @deprecated Use filterAdapters({ capability: 'did-resolver', didMethod }) instead. */
|
|
118
|
+
filterByDidMethod(method) {
|
|
119
|
+
return this.resolvers.filter((resolver) => {
|
|
120
|
+
return this.supportsDidMethod(resolver.meta?.didMethods, method);
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
/** @deprecated Use filterAdapters({ capability: 'did-profile-resolver', didMethod }) instead. */
|
|
124
|
+
filterProfileResolversByDidMethod(method) {
|
|
125
|
+
return this.profileResolvers.filter((resolver) => {
|
|
126
|
+
return this.supportsDidMethod(resolver.meta?.didMethods, method);
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
/** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', didMethod }) instead. */
|
|
130
|
+
filterUaidProfileResolversByDidMethod(method) {
|
|
131
|
+
return this.uaidProfileResolvers.filter((resolver) => {
|
|
132
|
+
return this.supportsDidMethod(resolver.meta?.didMethods, method);
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
/** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', profileId }) instead. */
|
|
136
|
+
filterUaidProfileResolversByProfileId(profileId) {
|
|
137
|
+
return this.uaidProfileResolvers.filter((resolver) => {
|
|
138
|
+
return resolver.profile === profileId;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
async resolveDid(did) {
|
|
142
|
+
for (const resolver of this.resolvers) {
|
|
143
|
+
if (resolver.supports(did)) {
|
|
144
|
+
return resolver.resolve(did);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
deriveDidFromParsedUaid(parsed) {
|
|
150
|
+
if (parsed.method === "aid") {
|
|
151
|
+
const proto2 = parsed.params["proto"];
|
|
152
|
+
const nativeId2 = parsed.params["nativeId"];
|
|
153
|
+
if (proto2 === "hcs-10" && nativeId2) {
|
|
154
|
+
const match = nativeId2.match(
|
|
155
|
+
/^hedera:(mainnet|testnet|previewnet|devnet):(.+)$/
|
|
156
|
+
);
|
|
157
|
+
if (match) {
|
|
158
|
+
const network = match[1];
|
|
159
|
+
const accountId = match[2];
|
|
160
|
+
return `did:hedera:${network}:${accountId}`;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return null;
|
|
164
|
+
}
|
|
165
|
+
const src = parsed.params["src"];
|
|
166
|
+
if (src) {
|
|
167
|
+
try {
|
|
168
|
+
return Buffer.from(multibaseB58btcDecode(src)).toString("utf8");
|
|
169
|
+
} catch {
|
|
170
|
+
return null;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
const id = parsed.id;
|
|
174
|
+
if (id.startsWith("testnet:") || id.startsWith("mainnet:") || id.startsWith("previewnet:") || id.startsWith("devnet:")) {
|
|
175
|
+
return `did:hedera:${id}`;
|
|
176
|
+
}
|
|
177
|
+
const proto = parsed.params["proto"];
|
|
178
|
+
const nativeId = parsed.params["nativeId"];
|
|
179
|
+
if (proto === "hcs-10" && nativeId) {
|
|
180
|
+
const match = nativeId.match(
|
|
181
|
+
/^hedera:(mainnet|testnet|previewnet|devnet):/
|
|
37
182
|
);
|
|
183
|
+
if (match) {
|
|
184
|
+
const network = match[1];
|
|
185
|
+
return `did:hedera:${network}:${id}`;
|
|
186
|
+
}
|
|
38
187
|
}
|
|
39
|
-
|
|
40
|
-
return res && typeof res.id === "string" ? { id: res.id } : null;
|
|
188
|
+
return null;
|
|
41
189
|
}
|
|
190
|
+
buildFallbackProfile(did, context = {}) {
|
|
191
|
+
const subjectId = context.uaid ?? did;
|
|
192
|
+
const didDocument = context.didDocument ?? null;
|
|
193
|
+
const alsoKnownAs = /* @__PURE__ */ new Set();
|
|
194
|
+
if (subjectId !== did) {
|
|
195
|
+
alsoKnownAs.add(did);
|
|
196
|
+
}
|
|
197
|
+
for (const value of didDocument?.alsoKnownAs ?? []) {
|
|
198
|
+
alsoKnownAs.add(value);
|
|
199
|
+
}
|
|
200
|
+
return {
|
|
201
|
+
id: subjectId,
|
|
202
|
+
did,
|
|
203
|
+
verificationMethod: didDocument?.verificationMethod,
|
|
204
|
+
authentication: didDocument?.authentication,
|
|
205
|
+
assertionMethod: didDocument?.assertionMethod,
|
|
206
|
+
service: didDocument?.service,
|
|
207
|
+
alsoKnownAs: alsoKnownAs.size > 0 ? [...alsoKnownAs] : void 0
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
mergeResolvedProfile(fallback, resolved) {
|
|
211
|
+
const alsoKnownAs = /* @__PURE__ */ new Set([
|
|
212
|
+
...fallback.alsoKnownAs ?? [],
|
|
213
|
+
...resolved.alsoKnownAs ?? []
|
|
214
|
+
]);
|
|
215
|
+
return {
|
|
216
|
+
...fallback,
|
|
217
|
+
...resolved,
|
|
218
|
+
id: resolved.id || fallback.id,
|
|
219
|
+
did: resolved.did ?? fallback.did,
|
|
220
|
+
verificationMethod: resolved.verificationMethod ?? fallback.verificationMethod,
|
|
221
|
+
authentication: resolved.authentication ?? fallback.authentication,
|
|
222
|
+
assertionMethod: resolved.assertionMethod ?? fallback.assertionMethod,
|
|
223
|
+
service: resolved.service ?? fallback.service,
|
|
224
|
+
profiles: resolved.profiles ?? fallback.profiles,
|
|
225
|
+
metadata: resolved.metadata ?? fallback.metadata,
|
|
226
|
+
error: resolved.error ?? fallback.error,
|
|
227
|
+
alsoKnownAs: alsoKnownAs.size > 0 ? [...alsoKnownAs] : void 0
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
async resolveDidProfile(did, context = {}) {
|
|
231
|
+
const didDocument = context.didDocument ?? await this.resolveDid(did);
|
|
232
|
+
const resolverContext = {
|
|
233
|
+
...context,
|
|
234
|
+
didDocument
|
|
235
|
+
};
|
|
236
|
+
const fallback = this.buildFallbackProfile(did, resolverContext);
|
|
237
|
+
for (const resolver of this.profileResolvers) {
|
|
238
|
+
if (!resolver.supports(did)) {
|
|
239
|
+
continue;
|
|
240
|
+
}
|
|
241
|
+
const resolved = await resolver.resolveProfile(did, resolverContext);
|
|
242
|
+
if (resolved) {
|
|
243
|
+
return this.mergeResolvedProfile(fallback, resolved);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
return fallback;
|
|
247
|
+
}
|
|
248
|
+
async resolveUaidProfileByIdInternal(profileId, uaid, options) {
|
|
249
|
+
const parsed = parseHcs14Did(uaid);
|
|
250
|
+
return this.resolveUaidProfileInternal(uaid, parsed, {
|
|
251
|
+
profileId,
|
|
252
|
+
excludeProfileId: options.excludeProfileId
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
async resolveUaidProfileInternal(uaid, parsed, options = {}) {
|
|
256
|
+
const did = this.deriveDidFromParsedUaid(parsed);
|
|
257
|
+
const didDocument = did ? await this.resolveDid(did) : null;
|
|
258
|
+
const fallback = did ? this.buildFallbackProfile(did, {
|
|
259
|
+
uaid,
|
|
260
|
+
parsedUaid: parsed,
|
|
261
|
+
didDocument
|
|
262
|
+
}) : { id: uaid };
|
|
263
|
+
const resolvers = options.profileId !== void 0 ? this.uaidProfileResolvers.filter(
|
|
264
|
+
(resolver) => resolver.profile === options.profileId
|
|
265
|
+
) : this.uaidProfileResolvers;
|
|
266
|
+
for (const resolver of resolvers) {
|
|
267
|
+
if (options.excludeProfileId !== void 0 && resolver.profile === options.excludeProfileId) {
|
|
268
|
+
continue;
|
|
269
|
+
}
|
|
270
|
+
const isSupported = resolver.supports(uaid, parsed);
|
|
271
|
+
if (options.profileId === void 0 && !isSupported) {
|
|
272
|
+
continue;
|
|
273
|
+
}
|
|
274
|
+
const context = {
|
|
275
|
+
parsedUaid: parsed,
|
|
276
|
+
did,
|
|
277
|
+
didDocument,
|
|
278
|
+
resolveDid: async (targetDid) => this.resolveDid(targetDid),
|
|
279
|
+
resolveDidProfile: async (targetDid, targetContext) => this.resolveDidProfile(targetDid, targetContext),
|
|
280
|
+
resolveUaidProfileById: async (profileId, targetUaid) => this.resolveUaidProfileByIdInternal(profileId, targetUaid, {
|
|
281
|
+
excludeProfileId: resolver.profile
|
|
282
|
+
})
|
|
283
|
+
};
|
|
284
|
+
const resolved = await resolver.resolveProfile(uaid, context);
|
|
285
|
+
if (!resolved) {
|
|
286
|
+
continue;
|
|
287
|
+
}
|
|
288
|
+
const isErrorProfile = resolved.error !== void 0 || resolved.metadata?.resolved === false;
|
|
289
|
+
if (isErrorProfile) {
|
|
290
|
+
if (options.profileId === void 0) {
|
|
291
|
+
continue;
|
|
292
|
+
}
|
|
293
|
+
return resolved;
|
|
294
|
+
}
|
|
295
|
+
return this.mergeResolvedProfile(fallback, resolved);
|
|
296
|
+
}
|
|
297
|
+
return null;
|
|
298
|
+
}
|
|
299
|
+
async resolveUaid(uaid) {
|
|
300
|
+
const parsed = parseHcs14Did(uaid);
|
|
301
|
+
const did = this.deriveDidFromParsedUaid(parsed);
|
|
302
|
+
if (!did) {
|
|
303
|
+
return null;
|
|
304
|
+
}
|
|
305
|
+
return this.resolveDid(did);
|
|
306
|
+
}
|
|
307
|
+
async resolveUaidProfile(uaid, options = {}) {
|
|
308
|
+
const parsed = parseHcs14Did(uaid);
|
|
309
|
+
const uaidProfile = await this.resolveUaidProfileInternal(uaid, parsed, {
|
|
310
|
+
profileId: options.profileId
|
|
311
|
+
});
|
|
312
|
+
if (uaidProfile) {
|
|
313
|
+
return uaidProfile;
|
|
314
|
+
}
|
|
315
|
+
if (options.profileId !== void 0) {
|
|
316
|
+
return null;
|
|
317
|
+
}
|
|
318
|
+
const did = this.deriveDidFromParsedUaid(parsed);
|
|
319
|
+
if (!did) {
|
|
320
|
+
return parsed.method === "aid" ? { id: uaid } : null;
|
|
321
|
+
}
|
|
322
|
+
const didDocument = await this.resolveDid(did);
|
|
323
|
+
return this.resolveDidProfile(did, {
|
|
324
|
+
uaid,
|
|
325
|
+
parsedUaid: parsed,
|
|
326
|
+
didDocument
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
const defaultResolverRegistry = new ResolverRegistry();
|
|
331
|
+
function registerDefaultResolvers() {
|
|
332
|
+
defaultResolverRegistry.registerAdapter(new HieroDidResolver());
|
|
42
333
|
}
|
|
43
334
|
export {
|
|
44
|
-
|
|
335
|
+
ResolverRegistry,
|
|
336
|
+
defaultResolverRegistry,
|
|
337
|
+
registerDefaultResolvers
|
|
45
338
|
};
|
|
46
339
|
//# sourceMappingURL=standards-sdk.es59.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es59.js","sources":["../../src/hcs-14/resolvers/hiero.ts"],"sourcesContent":["import { DidDocumentMinimal, DidResolver } from './types';\nimport type { AdapterMeta } from '../adapters/types';\nimport { optionalImport } from '../../utils/dynamic-import';\n\ntype ResolveDID = typeof import('@hiero-did-sdk/resolver').resolveDID;\ntype HieroResolverModule = typeof import('@hiero-did-sdk/resolver');\n\nconst hieroResolverModuleId = ['@hiero-did-sdk', 'resolver'].join('/');\n\nlet resolverPromise: Promise<ResolveDID | null> | null = null;\n\nasync function loadResolveDID(): Promise<ResolveDID | null> {\n if (!resolverPromise) {\n resolverPromise = optionalImport<HieroResolverModule>(\n hieroResolverModuleId,\n ).then(mod => mod?.resolveDID ?? null);\n }\n return resolverPromise;\n}\n\nexport class HieroDidResolver implements DidResolver {\n readonly meta: AdapterMeta = {\n id: 'hedera/hiero-resolver',\n didMethods: ['hedera'],\n caip2Networks: [\n 'hedera:mainnet',\n 'hedera:testnet',\n 'hedera:previewnet',\n 'hedera:devnet',\n ],\n caip10Namespaces: ['hedera'],\n displayName: 'Hedera (Hiero Resolver)',\n description: 'Resolves did:hedera identifiers via Hiero DID resolver.',\n homepage: 'https://github.com/hiero-ledger/hiero-did-sdk-js',\n };\n supports(did: string): boolean {\n return did.startsWith('did:hedera:');\n }\n\n async resolve(did: string): Promise<DidDocumentMinimal | null> {\n const resolveDID = await loadResolveDID();\n if (!resolveDID) {\n throw new Error(\n 'Hiero resolver unavailable. Ensure @hiero-did-sdk/resolver is installed.',\n );\n }\n const res = await resolveDID(did as Parameters<ResolveDID>[0]);\n return res && typeof res.id === 'string' ? { id: res.id } : null;\n }\n}\n"],"names":[],"mappings":";AAOA,MAAM,wBAAwB,CAAC,kBAAkB,UAAU,EAAE,KAAK,GAAG;AAErE,IAAI,kBAAqD;AAEzD,eAAe,iBAA6C;AAC1D,MAAI,CAAC,iBAAiB;AACpB,sBAAkB;AAAA,MAChB;AAAA,IAAA,EACA,KAAK,CAAA,QAAO,KAAK,cAAc,IAAI;AAAA,EACvC;AACA,SAAO;AACT;AAEO,MAAM,iBAAwC;AAAA,EAA9C,cAAA;AACL,SAAS,OAAoB;AAAA,MAC3B,IAAI;AAAA,MACJ,YAAY,CAAC,QAAQ;AAAA,MACrB,eAAe;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAEF,kBAAkB,CAAC,QAAQ;AAAA,MAC3B,aAAa;AAAA,MACb,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EACA,SAAS,KAAsB;AAC7B,WAAO,IAAI,WAAW,aAAa;AAAA,EACrC;AAAA,EAEA,MAAM,QAAQ,KAAiD;AAC7D,UAAM,aAAa,MAAM,eAAA;AACzB,QAAI,CAAC,YAAY;AACf,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AACA,UAAM,MAAM,MAAM,WAAW,GAAgC;AAC7D,WAAO,OAAO,OAAO,IAAI,OAAO,WAAW,EAAE,IAAI,IAAI,GAAA,IAAO;AAAA,EAC9D;AACF;"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es59.js","sources":["../../src/hcs-14/resolvers/registry.ts"],"sourcesContent":["/**\n * Resolver registry for HCS-14.\n */\n\nimport {\n DidDocumentMinimal,\n DidProfileResolver,\n DidProfileResolverContext,\n DidResolutionProfile,\n DidResolver,\n ResolverAdapter,\n ResolverAdapterFilterOptions,\n ResolverAdapterRecord,\n UaidProfileResolver,\n UaidProfileResolverContext,\n isDidProfileResolverAdapter,\n isDidResolverAdapter,\n isUaidProfileResolverAdapter,\n} from './types';\nimport { HieroDidResolver } from './hiero';\nimport { parseHcs14Did } from '../did';\nimport { multibaseB58btcDecode } from '../base58';\nimport type { ParsedHcs14Did } from '../types';\n\ninterface ResolveUaidProfileInternalOptions {\n profileId?: string;\n excludeProfileId?: string;\n}\n\nexport interface ResolveUaidProfileOptions {\n profileId?: string;\n}\n\nexport class ResolverRegistry {\n private resolvers: DidResolver[] = [];\n private profileResolvers: DidProfileResolver[] = [];\n private uaidProfileResolvers: UaidProfileResolver[] = [];\n private adapters: ResolverAdapterRecord[] = [];\n\n private supportsDidMethod(\n didMethods: string[] | undefined,\n method: string,\n ): boolean {\n return (\n !!didMethods && (didMethods.includes(method) || didMethods.includes('*'))\n );\n }\n\n private addDidResolver(adapter: DidResolver): void {\n this.resolvers.push(adapter);\n this.adapters.push({\n capability: 'did-resolver',\n adapter,\n });\n }\n\n private addDidProfileResolver(adapter: DidProfileResolver): void {\n this.profileResolvers.push(adapter);\n this.adapters.push({\n capability: 'did-profile-resolver',\n adapter,\n });\n }\n\n private addUaidProfileResolver(adapter: UaidProfileResolver): void {\n this.uaidProfileResolvers.push(adapter);\n this.adapters.push({\n capability: 'uaid-profile-resolver',\n adapter,\n });\n }\n\n registerAdapter(adapter: ResolverAdapter): void {\n const isUaidProfile = isUaidProfileResolverAdapter(adapter);\n const isDidProfile = isDidProfileResolverAdapter(adapter);\n const isDid = isDidResolverAdapter(adapter);\n const capabilityMatchCount = [isUaidProfile, isDidProfile, isDid].filter(\n Boolean,\n ).length;\n\n if (capabilityMatchCount > 1) {\n throw new Error(\n 'Adapter matches multiple resolver capabilities. Split it into single-capability adapters, or use register/registerProfileResolver/registerUaidProfileResolver to explicitly select one capability.',\n );\n }\n\n if (isUaidProfile) {\n this.addUaidProfileResolver(adapter);\n return;\n }\n if (isDidProfile) {\n this.addDidProfileResolver(adapter);\n return;\n }\n if (isDid) {\n this.addDidResolver(adapter);\n return;\n }\n throw new Error('Adapter does not match a supported resolver capability.');\n }\n\n listAdapters(): ResolverAdapterRecord[] {\n return [...this.adapters];\n }\n\n filterAdapters(\n options: ResolverAdapterFilterOptions & { capability: 'did-resolver' },\n ): Extract<ResolverAdapterRecord, { capability: 'did-resolver' }>[];\n filterAdapters(\n options: ResolverAdapterFilterOptions & {\n capability: 'did-profile-resolver';\n },\n ): Extract<ResolverAdapterRecord, { capability: 'did-profile-resolver' }>[];\n filterAdapters(\n options: ResolverAdapterFilterOptions & {\n capability: 'uaid-profile-resolver';\n },\n ): Extract<ResolverAdapterRecord, { capability: 'uaid-profile-resolver' }>[];\n filterAdapters(\n options: ResolverAdapterFilterOptions & {\n profileId: string;\n capability?: undefined;\n },\n ): Extract<ResolverAdapterRecord, { capability: 'uaid-profile-resolver' }>[];\n filterAdapters(\n options?: ResolverAdapterFilterOptions,\n ): ResolverAdapterRecord[];\n filterAdapters(\n options: ResolverAdapterFilterOptions = {},\n ): ResolverAdapterRecord[] {\n if (\n options.profileId !== undefined &&\n options.capability !== undefined &&\n options.capability !== 'uaid-profile-resolver'\n ) {\n throw new Error(\n 'profileId filter requires capability \"uaid-profile-resolver\".',\n );\n }\n\n const effectiveCapability =\n options.capability ??\n (options.profileId !== undefined ? 'uaid-profile-resolver' : undefined);\n\n return this.adapters.filter(record => {\n if (\n effectiveCapability !== undefined &&\n record.capability !== effectiveCapability\n ) {\n return false;\n }\n if (\n options.didMethod !== undefined &&\n !this.supportsDidMethod(\n record.adapter.meta?.didMethods,\n options.didMethod,\n )\n ) {\n return false;\n }\n if (options.profileId !== undefined) {\n if (record.capability !== 'uaid-profile-resolver') {\n return false;\n }\n if (record.adapter.profile !== options.profileId) {\n return false;\n }\n }\n return true;\n });\n }\n\n /** @deprecated Use registerAdapter() instead. */\n register(resolver: DidResolver): void {\n this.addDidResolver(resolver);\n }\n\n /** @deprecated Use registerAdapter() instead. */\n registerProfileResolver(resolver: DidProfileResolver): void {\n this.addDidProfileResolver(resolver);\n }\n\n /** @deprecated Use registerAdapter() instead. */\n registerUaidProfileResolver(resolver: UaidProfileResolver): void {\n this.addUaidProfileResolver(resolver);\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-resolver' }) instead. */\n list(): DidResolver[] {\n return [...this.resolvers];\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-profile-resolver' }) instead. */\n listProfileResolvers(): DidProfileResolver[] {\n return [...this.profileResolvers];\n }\n\n /** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver' }) instead. */\n listUaidProfileResolvers(): UaidProfileResolver[] {\n return [...this.uaidProfileResolvers];\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-resolver', didMethod }) instead. */\n filterByDidMethod(method: string): DidResolver[] {\n return this.resolvers.filter(resolver => {\n return this.supportsDidMethod(resolver.meta?.didMethods, method);\n });\n }\n\n /** @deprecated Use filterAdapters({ capability: 'did-profile-resolver', didMethod }) instead. */\n filterProfileResolversByDidMethod(method: string): DidProfileResolver[] {\n return this.profileResolvers.filter(resolver => {\n return this.supportsDidMethod(resolver.meta?.didMethods, method);\n });\n }\n\n /** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', didMethod }) instead. */\n filterUaidProfileResolversByDidMethod(method: string): UaidProfileResolver[] {\n return this.uaidProfileResolvers.filter(resolver => {\n return this.supportsDidMethod(resolver.meta?.didMethods, method);\n });\n }\n\n /** @deprecated Use filterAdapters({ capability: 'uaid-profile-resolver', profileId }) instead. */\n filterUaidProfileResolversByProfileId(\n profileId: string,\n ): UaidProfileResolver[] {\n return this.uaidProfileResolvers.filter(resolver => {\n return resolver.profile === profileId;\n });\n }\n\n async resolveDid(did: string): Promise<DidDocumentMinimal | null> {\n for (const resolver of this.resolvers) {\n if (resolver.supports(did)) {\n return resolver.resolve(did);\n }\n }\n return null;\n }\n\n private deriveDidFromParsedUaid(parsed: ParsedHcs14Did): string | null {\n if (parsed.method === 'aid') {\n const proto = parsed.params['proto'];\n const nativeId = parsed.params['nativeId'];\n if (proto === 'hcs-10' && nativeId) {\n const match = nativeId.match(\n /^hedera:(mainnet|testnet|previewnet|devnet):(.+)$/,\n );\n if (match) {\n const network = match[1];\n const accountId = match[2];\n return `did:hedera:${network}:${accountId}`;\n }\n }\n return null;\n }\n\n const src = parsed.params['src'];\n if (src) {\n try {\n return Buffer.from(multibaseB58btcDecode(src)).toString('utf8');\n } catch {\n return null;\n }\n }\n\n const id = parsed.id;\n if (\n id.startsWith('testnet:') ||\n id.startsWith('mainnet:') ||\n id.startsWith('previewnet:') ||\n id.startsWith('devnet:')\n ) {\n return `did:hedera:${id}`;\n }\n\n const proto = parsed.params['proto'];\n const nativeId = parsed.params['nativeId'];\n if (proto === 'hcs-10' && nativeId) {\n const match = nativeId.match(\n /^hedera:(mainnet|testnet|previewnet|devnet):/,\n );\n if (match) {\n const network = match[1];\n return `did:hedera:${network}:${id}`;\n }\n }\n\n return null;\n }\n\n private buildFallbackProfile(\n did: string,\n context: DidProfileResolverContext = {},\n ): DidResolutionProfile {\n const subjectId = context.uaid ?? did;\n const didDocument = context.didDocument ?? null;\n const alsoKnownAs = new Set<string>();\n\n if (subjectId !== did) {\n alsoKnownAs.add(did);\n }\n for (const value of didDocument?.alsoKnownAs ?? []) {\n alsoKnownAs.add(value);\n }\n\n return {\n id: subjectId,\n did,\n verificationMethod: didDocument?.verificationMethod,\n authentication: didDocument?.authentication,\n assertionMethod: didDocument?.assertionMethod,\n service: didDocument?.service,\n alsoKnownAs: alsoKnownAs.size > 0 ? [...alsoKnownAs] : undefined,\n };\n }\n\n private mergeResolvedProfile(\n fallback: DidResolutionProfile,\n resolved: DidResolutionProfile,\n ): DidResolutionProfile {\n const alsoKnownAs = new Set<string>([\n ...(fallback.alsoKnownAs ?? []),\n ...(resolved.alsoKnownAs ?? []),\n ]);\n\n return {\n ...fallback,\n ...resolved,\n id: resolved.id || fallback.id,\n did: resolved.did ?? fallback.did,\n verificationMethod:\n resolved.verificationMethod ?? fallback.verificationMethod,\n authentication: resolved.authentication ?? fallback.authentication,\n assertionMethod: resolved.assertionMethod ?? fallback.assertionMethod,\n service: resolved.service ?? fallback.service,\n profiles: resolved.profiles ?? fallback.profiles,\n metadata: resolved.metadata ?? fallback.metadata,\n error: resolved.error ?? fallback.error,\n alsoKnownAs: alsoKnownAs.size > 0 ? [...alsoKnownAs] : undefined,\n };\n }\n\n async resolveDidProfile(\n did: string,\n context: DidProfileResolverContext = {},\n ): Promise<DidResolutionProfile> {\n const didDocument = context.didDocument ?? (await this.resolveDid(did));\n const resolverContext: DidProfileResolverContext = {\n ...context,\n didDocument,\n };\n const fallback = this.buildFallbackProfile(did, resolverContext);\n\n for (const resolver of this.profileResolvers) {\n if (!resolver.supports(did)) {\n continue;\n }\n const resolved = await resolver.resolveProfile(did, resolverContext);\n if (resolved) {\n return this.mergeResolvedProfile(fallback, resolved);\n }\n }\n\n return fallback;\n }\n\n private async resolveUaidProfileByIdInternal(\n profileId: string,\n uaid: string,\n options: ResolveUaidProfileInternalOptions,\n ): Promise<DidResolutionProfile | null> {\n const parsed = parseHcs14Did(uaid);\n return this.resolveUaidProfileInternal(uaid, parsed, {\n profileId,\n excludeProfileId: options.excludeProfileId,\n });\n }\n\n private async resolveUaidProfileInternal(\n uaid: string,\n parsed: ParsedHcs14Did,\n options: ResolveUaidProfileInternalOptions = {},\n ): Promise<DidResolutionProfile | null> {\n const did = this.deriveDidFromParsedUaid(parsed);\n const didDocument = did ? await this.resolveDid(did) : null;\n const fallback: DidResolutionProfile = did\n ? this.buildFallbackProfile(did, {\n uaid,\n parsedUaid: parsed,\n didDocument,\n })\n : { id: uaid };\n\n const resolvers =\n options.profileId !== undefined\n ? this.uaidProfileResolvers.filter(\n resolver => resolver.profile === options.profileId,\n )\n : this.uaidProfileResolvers;\n\n for (const resolver of resolvers) {\n if (\n options.excludeProfileId !== undefined &&\n resolver.profile === options.excludeProfileId\n ) {\n continue;\n }\n const isSupported = resolver.supports(uaid, parsed);\n if (options.profileId === undefined && !isSupported) {\n continue;\n }\n\n const context: UaidProfileResolverContext = {\n parsedUaid: parsed,\n did,\n didDocument,\n resolveDid: async targetDid => this.resolveDid(targetDid),\n resolveDidProfile: async (targetDid, targetContext) =>\n this.resolveDidProfile(targetDid, targetContext),\n resolveUaidProfileById: async (profileId, targetUaid) =>\n this.resolveUaidProfileByIdInternal(profileId, targetUaid, {\n excludeProfileId: resolver.profile,\n }),\n };\n\n const resolved = await resolver.resolveProfile(uaid, context);\n if (!resolved) {\n continue;\n }\n\n const isErrorProfile =\n resolved.error !== undefined || resolved.metadata?.resolved === false;\n if (isErrorProfile) {\n if (options.profileId === undefined) {\n continue;\n }\n return resolved;\n }\n\n return this.mergeResolvedProfile(fallback, resolved);\n }\n\n return null;\n }\n\n async resolveUaid(uaid: string): Promise<DidDocumentMinimal | null> {\n const parsed = parseHcs14Did(uaid);\n const did = this.deriveDidFromParsedUaid(parsed);\n if (!did) {\n return null;\n }\n return this.resolveDid(did);\n }\n\n async resolveUaidProfile(\n uaid: string,\n options: ResolveUaidProfileOptions = {},\n ): Promise<DidResolutionProfile | null> {\n const parsed = parseHcs14Did(uaid);\n const uaidProfile = await this.resolveUaidProfileInternal(uaid, parsed, {\n profileId: options.profileId,\n });\n if (uaidProfile) {\n return uaidProfile;\n }\n if (options.profileId !== undefined) {\n return null;\n }\n\n const did = this.deriveDidFromParsedUaid(parsed);\n if (!did) {\n return parsed.method === 'aid' ? { id: uaid } : null;\n }\n\n const didDocument = await this.resolveDid(did);\n return this.resolveDidProfile(did, {\n uaid,\n parsedUaid: parsed,\n didDocument,\n });\n }\n}\n\nexport const defaultResolverRegistry = new ResolverRegistry();\n\nexport function registerDefaultResolvers(): void {\n defaultResolverRegistry.registerAdapter(new HieroDidResolver());\n}\n"],"names":["proto","nativeId"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Logger } from "./standards-sdk.
|
|
2
|
-
import { HederaMirrorNode } from "./standards-sdk.
|
|
1
|
+
import { Logger } from "./standards-sdk.es118.js";
|
|
2
|
+
import { HederaMirrorNode } from "./standards-sdk.es139.js";
|
|
3
3
|
import { HCS6RegistryType, validateHCS6TTL, generateHCS6RegistryMemo, hcs6MessageSchema, HCS6Operation } from "./standards-sdk.es3.js";
|
|
4
4
|
import { ZodError } from "zod";
|
|
5
5
|
class HCS6BaseClient {
|
|
@@ -1,115 +1,47 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const parsed = parseHederaCaip10(nativeId);
|
|
12
|
-
const network = toHcs11Network(parsed.network);
|
|
13
|
-
if (!network) {
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
return { network, accountId: parsed.accountId };
|
|
17
|
-
} catch (_error) {
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
1
|
+
import { optionalImport } from "./standards-sdk.es158.js";
|
|
2
|
+
const hieroResolverModuleId = ["@hiero-did-sdk", "resolver"].join("/");
|
|
3
|
+
let resolverPromise = null;
|
|
4
|
+
async function loadResolveDID() {
|
|
5
|
+
if (!resolverPromise) {
|
|
6
|
+
resolverPromise = optionalImport(
|
|
7
|
+
hieroResolverModuleId
|
|
8
|
+
).then((mod) => mod?.resolveDID ?? null);
|
|
9
|
+
}
|
|
10
|
+
return resolverPromise;
|
|
20
11
|
}
|
|
21
|
-
|
|
22
|
-
const nativeId = context?.parsedUaid?.params["nativeId"];
|
|
23
|
-
if (nativeId) {
|
|
24
|
-
const resolvedNativeId = parseNativeIdNetworkAndAccount(nativeId);
|
|
25
|
-
if (resolvedNativeId) {
|
|
26
|
-
return resolvedNativeId;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
const didMatch = did.match(/^did:hedera:(mainnet|testnet):(.+)$/);
|
|
30
|
-
if (!didMatch) {
|
|
31
|
-
return null;
|
|
32
|
-
}
|
|
33
|
-
const network = toHcs11Network(didMatch[1]);
|
|
34
|
-
if (!network) {
|
|
35
|
-
return null;
|
|
36
|
-
}
|
|
37
|
-
return {
|
|
38
|
-
network,
|
|
39
|
-
accountId: didMatch[2]
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
function buildHcs10Service(id, network, accountId, topicInfo) {
|
|
43
|
-
if (!topicInfo) {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
id: `${id}#hcs10`,
|
|
48
|
-
type: "HCS10Service",
|
|
49
|
-
serviceEndpoint: {
|
|
50
|
-
network,
|
|
51
|
-
accountId,
|
|
52
|
-
inboundTopicId: topicInfo.inboundTopic || void 0,
|
|
53
|
-
outboundTopicId: topicInfo.outboundTopic || void 0,
|
|
54
|
-
profileTopicId: topicInfo.profileTopicId || void 0
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
class HCS11ProfileResolver {
|
|
12
|
+
class HieroDidResolver {
|
|
59
13
|
constructor() {
|
|
14
|
+
this.adapterKind = "did-resolver";
|
|
60
15
|
this.meta = {
|
|
61
|
-
id: "hedera/
|
|
16
|
+
id: "hedera/hiero-resolver",
|
|
62
17
|
didMethods: ["hedera"],
|
|
63
|
-
caip2Networks: [
|
|
18
|
+
caip2Networks: [
|
|
19
|
+
"hedera:mainnet",
|
|
20
|
+
"hedera:testnet",
|
|
21
|
+
"hedera:previewnet",
|
|
22
|
+
"hedera:devnet"
|
|
23
|
+
],
|
|
64
24
|
caip10Namespaces: ["hedera"],
|
|
65
|
-
displayName: "Hedera (
|
|
66
|
-
description: "Resolves
|
|
25
|
+
displayName: "Hedera (Hiero Resolver)",
|
|
26
|
+
description: "Resolves did:hedera identifiers via Hiero DID resolver.",
|
|
27
|
+
homepage: "https://github.com/hiero-ledger/hiero-did-sdk-js"
|
|
67
28
|
};
|
|
68
29
|
}
|
|
69
30
|
supports(did) {
|
|
70
|
-
return
|
|
71
|
-
}
|
|
72
|
-
async
|
|
73
|
-
const
|
|
74
|
-
if (!
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
const client = new HCS11Client({
|
|
79
|
-
network,
|
|
80
|
-
auth: { operatorId: accountId },
|
|
81
|
-
silent: true
|
|
82
|
-
});
|
|
83
|
-
const fetched = await client.fetchProfileByAccountId(accountId, network);
|
|
84
|
-
if (!fetched.success || !fetched.profile) {
|
|
85
|
-
return null;
|
|
31
|
+
return did.startsWith("did:hedera:");
|
|
32
|
+
}
|
|
33
|
+
async resolve(did) {
|
|
34
|
+
const resolveDID = await loadResolveDID();
|
|
35
|
+
if (!resolveDID) {
|
|
36
|
+
throw new Error(
|
|
37
|
+
"Hiero resolver unavailable. Ensure @hiero-did-sdk/resolver is installed."
|
|
38
|
+
);
|
|
86
39
|
}
|
|
87
|
-
const
|
|
88
|
-
|
|
89
|
-
const hcs10Service = buildHcs10Service(
|
|
90
|
-
subjectId,
|
|
91
|
-
network,
|
|
92
|
-
accountId,
|
|
93
|
-
fetched.topicInfo
|
|
94
|
-
);
|
|
95
|
-
const service = hcs10Service ? [...existingServices, hcs10Service] : existingServices;
|
|
96
|
-
return {
|
|
97
|
-
id: subjectId,
|
|
98
|
-
did,
|
|
99
|
-
service: service.length > 0 ? service : void 0,
|
|
100
|
-
profiles: {
|
|
101
|
-
hcs11: {
|
|
102
|
-
protocol: "hcs-11",
|
|
103
|
-
network,
|
|
104
|
-
accountId,
|
|
105
|
-
profile: fetched.profile,
|
|
106
|
-
topicInfo: fetched.topicInfo
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
};
|
|
40
|
+
const res = await resolveDID(did);
|
|
41
|
+
return res && typeof res.id === "string" ? { id: res.id } : null;
|
|
110
42
|
}
|
|
111
43
|
}
|
|
112
44
|
export {
|
|
113
|
-
|
|
45
|
+
HieroDidResolver
|
|
114
46
|
};
|
|
115
47
|
//# sourceMappingURL=standards-sdk.es60.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es60.js","sources":["../../src/hcs-14/resolvers/
|
|
1
|
+
{"version":3,"file":"standards-sdk.es60.js","sources":["../../src/hcs-14/resolvers/hiero.ts"],"sourcesContent":["import { DidDocumentMinimal, DidResolver } from './types';\nimport type { AdapterMeta } from '../adapters/types';\nimport { optionalImport } from '../../utils/dynamic-import';\n\ntype ResolveDID = typeof import('@hiero-did-sdk/resolver').resolveDID;\ntype HieroResolverModule = typeof import('@hiero-did-sdk/resolver');\n\nconst hieroResolverModuleId = ['@hiero-did-sdk', 'resolver'].join('/');\n\nlet resolverPromise: Promise<ResolveDID | null> | null = null;\n\nasync function loadResolveDID(): Promise<ResolveDID | null> {\n if (!resolverPromise) {\n resolverPromise = optionalImport<HieroResolverModule>(\n hieroResolverModuleId,\n ).then(mod => mod?.resolveDID ?? null);\n }\n return resolverPromise;\n}\n\nexport class HieroDidResolver implements DidResolver {\n readonly adapterKind: 'did-resolver' = 'did-resolver';\n readonly meta: AdapterMeta = {\n id: 'hedera/hiero-resolver',\n didMethods: ['hedera'],\n caip2Networks: [\n 'hedera:mainnet',\n 'hedera:testnet',\n 'hedera:previewnet',\n 'hedera:devnet',\n ],\n caip10Namespaces: ['hedera'],\n displayName: 'Hedera (Hiero Resolver)',\n description: 'Resolves did:hedera identifiers via Hiero DID resolver.',\n homepage: 'https://github.com/hiero-ledger/hiero-did-sdk-js',\n };\n supports(did: string): boolean {\n return did.startsWith('did:hedera:');\n }\n\n async resolve(did: string): Promise<DidDocumentMinimal | null> {\n const resolveDID = await loadResolveDID();\n if (!resolveDID) {\n throw new Error(\n 'Hiero resolver unavailable. Ensure @hiero-did-sdk/resolver is installed.',\n );\n }\n const res = await resolveDID(did as Parameters<ResolveDID>[0]);\n return res && typeof res.id === 'string' ? { id: res.id } : null;\n }\n}\n"],"names":[],"mappings":";AAOA,MAAM,wBAAwB,CAAC,kBAAkB,UAAU,EAAE,KAAK,GAAG;AAErE,IAAI,kBAAqD;AAEzD,eAAe,iBAA6C;AAC1D,MAAI,CAAC,iBAAiB;AACpB,sBAAkB;AAAA,MAChB;AAAA,IAAA,EACA,KAAK,CAAA,QAAO,KAAK,cAAc,IAAI;AAAA,EACvC;AACA,SAAO;AACT;AAEO,MAAM,iBAAwC;AAAA,EAA9C,cAAA;AACL,SAAS,cAA8B;AACvC,SAAS,OAAoB;AAAA,MAC3B,IAAI;AAAA,MACJ,YAAY,CAAC,QAAQ;AAAA,MACrB,eAAe;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAEF,kBAAkB,CAAC,QAAQ;AAAA,MAC3B,aAAa;AAAA,MACb,aAAa;AAAA,MACb,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EACA,SAAS,KAAsB;AAC7B,WAAO,IAAI,WAAW,aAAa;AAAA,EACrC;AAAA,EAEA,MAAM,QAAQ,KAAiD;AAC7D,UAAM,aAAa,MAAM,eAAA;AACzB,QAAI,CAAC,YAAY;AACf,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AACA,UAAM,MAAM,MAAM,WAAW,GAAgC;AAC7D,WAAO,OAAO,OAAO,IAAI,OAAO,WAAW,EAAE,IAAI,IAAI,GAAA,IAAO;AAAA,EAC9D;AACF;"}
|