@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,260 +1,135 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
import { IssuerRegistry } from "./standards-sdk.es66.js";
|
|
11
|
-
import { HederaHieroIssuer } from "./standards-sdk.es67.js";
|
|
12
|
-
import { Client } from "@hashgraph/sdk";
|
|
13
|
-
import { HCS11Client } from "./standards-sdk.es27.js";
|
|
14
|
-
import { Logger } from "./standards-sdk.es116.js";
|
|
15
|
-
import { HederaMirrorNode } from "./standards-sdk.es137.js";
|
|
16
|
-
import "axios";
|
|
17
|
-
import "path";
|
|
18
|
-
import "buffer";
|
|
19
|
-
import "crypto";
|
|
20
|
-
import "@noble/curves/secp256k1.js";
|
|
21
|
-
import "./standards-sdk.es138.js";
|
|
22
|
-
import "./standards-sdk.es140.js";
|
|
23
|
-
import "zod";
|
|
24
|
-
import "@hashgraph/proto";
|
|
25
|
-
import "ethers";
|
|
26
|
-
import "./standards-sdk.es133.js";
|
|
27
|
-
import "./standards-sdk.es124.js";
|
|
28
|
-
import { createNodeOperatorContext } from "./standards-sdk.es151.js";
|
|
29
|
-
import { HCS10Client } from "./standards-sdk.es18.js";
|
|
30
|
-
class HCS14Client {
|
|
31
|
-
constructor(options) {
|
|
32
|
-
this.registry = options?.registry ?? new ResolverRegistry();
|
|
33
|
-
this.issuers = new IssuerRegistry();
|
|
34
|
-
this.registerHederaIssuer();
|
|
35
|
-
this.registerHederaResolver();
|
|
36
|
-
this.registerUaidDnsWebProfileResolver();
|
|
37
|
-
this.registerAidDnsWebProfileResolver();
|
|
38
|
-
this.registerUaidDidResolutionProfileResolver();
|
|
39
|
-
this.registerHcs11ProfileResolver();
|
|
40
|
-
this.logger = Logger.getInstance({ module: "HCS-14" });
|
|
41
|
-
this.client = options?.client;
|
|
42
|
-
this.network = options?.network;
|
|
43
|
-
this.operatorId = options?.operatorId;
|
|
44
|
-
if (!this.client && options?.network && options?.operatorId && options?.privateKey) {
|
|
45
|
-
this.configureHederaClient(
|
|
46
|
-
options.network,
|
|
47
|
-
options.operatorId,
|
|
48
|
-
options.privateKey
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
if (options?.privateKey) {
|
|
52
|
-
this.operatorPrivateKey = options.privateKey;
|
|
53
|
-
}
|
|
54
|
-
if (options?.hcs10Client) {
|
|
55
|
-
this.hcs10Client = options.hcs10Client;
|
|
56
|
-
}
|
|
1
|
+
import { multibaseB58btcDecode } from "./standards-sdk.es157.js";
|
|
2
|
+
const UAID_DID_RESOLUTION_PROFILE_ID = "hcs-14.profile.uaid-did-resolution";
|
|
3
|
+
function decodeSrcDid(src) {
|
|
4
|
+
try {
|
|
5
|
+
const bytes = multibaseB58btcDecode(src);
|
|
6
|
+
const decoded = Buffer.from(bytes).toString("utf8").trim();
|
|
7
|
+
return decoded || null;
|
|
8
|
+
} catch {
|
|
9
|
+
return null;
|
|
57
10
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
if (!this.operatorCtx) {
|
|
75
|
-
return;
|
|
11
|
+
}
|
|
12
|
+
function buildHintedService(uaid, params) {
|
|
13
|
+
const proto = params["proto"];
|
|
14
|
+
const nativeId = params["nativeId"];
|
|
15
|
+
const domain = params["domain"];
|
|
16
|
+
if (!proto && !nativeId && !domain) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
id: `${uaid}#hcs14-hinted-service-1`,
|
|
21
|
+
type: "HintedService",
|
|
22
|
+
serviceEndpoint: {
|
|
23
|
+
source: "uaid-parameters",
|
|
24
|
+
proto,
|
|
25
|
+
nativeId,
|
|
26
|
+
domain
|
|
76
27
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function buildErrorProfile(uaid, code, message, details) {
|
|
31
|
+
const error = {
|
|
32
|
+
code,
|
|
33
|
+
message,
|
|
34
|
+
details
|
|
35
|
+
};
|
|
36
|
+
return {
|
|
37
|
+
id: uaid,
|
|
38
|
+
error,
|
|
39
|
+
metadata: {
|
|
40
|
+
profile: UAID_DID_RESOLUTION_PROFILE_ID,
|
|
41
|
+
resolved: false
|
|
80
42
|
}
|
|
81
|
-
|
|
82
|
-
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function dedupeAlsoKnownAs(baseDid, existing = []) {
|
|
46
|
+
const values = /* @__PURE__ */ new Set([baseDid, ...existing]);
|
|
47
|
+
return [...values];
|
|
48
|
+
}
|
|
49
|
+
class UaidDidResolutionProfileResolver {
|
|
50
|
+
constructor() {
|
|
51
|
+
this.adapterKind = "uaid-profile-resolver";
|
|
52
|
+
this.profile = UAID_DID_RESOLUTION_PROFILE_ID;
|
|
53
|
+
this.meta = {
|
|
54
|
+
id: "hcs-14/uaid-did-resolution",
|
|
55
|
+
didMethods: ["*"],
|
|
56
|
+
displayName: "HCS-14 UAID DID Resolution Profile",
|
|
57
|
+
description: "Resolves uaid:did identifiers to DID Document-compatible output with profile metadata."
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
supports(_uaid, parsed) {
|
|
61
|
+
return parsed.method === "uaid";
|
|
62
|
+
}
|
|
63
|
+
async resolveProfile(uaid, context) {
|
|
64
|
+
const parsed = context.parsedUaid;
|
|
65
|
+
if (parsed.method !== "uaid") {
|
|
66
|
+
return buildErrorProfile(
|
|
67
|
+
uaid,
|
|
68
|
+
"ERR_INVALID_UAID",
|
|
69
|
+
"Identifier is not uaid:did and cannot be resolved by this profile.",
|
|
70
|
+
{ uaid }
|
|
71
|
+
);
|
|
83
72
|
}
|
|
84
|
-
|
|
85
|
-
|
|
73
|
+
const src = parsed.params["src"];
|
|
74
|
+
const srcDid = src ? decodeSrcDid(src) : null;
|
|
75
|
+
const baseDid = srcDid ?? context.did ?? null;
|
|
76
|
+
if (!baseDid) {
|
|
77
|
+
return buildErrorProfile(
|
|
78
|
+
uaid,
|
|
79
|
+
"ERR_BASE_DID_UNDETERMINED",
|
|
80
|
+
"Unable to determine base DID; provide src parameter or configure method inference.",
|
|
81
|
+
{ uaid }
|
|
82
|
+
);
|
|
86
83
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
listIssuers() {
|
|
96
|
-
return this.issuers.list();
|
|
97
|
-
}
|
|
98
|
-
/** Convenience: list registered resolvers with metadata. */
|
|
99
|
-
listResolvers() {
|
|
100
|
-
return this.registry.list();
|
|
101
|
-
}
|
|
102
|
-
listProfileResolvers() {
|
|
103
|
-
return this.registry.listProfileResolvers();
|
|
104
|
-
}
|
|
105
|
-
listUaidProfileResolvers() {
|
|
106
|
-
return this.registry.listUaidProfileResolvers();
|
|
107
|
-
}
|
|
108
|
-
/** Convenience: filter issuers by DID method. */
|
|
109
|
-
filterIssuersByMethod(method) {
|
|
110
|
-
return this.issuers.filterByDidMethod(method);
|
|
111
|
-
}
|
|
112
|
-
/** Convenience: filter resolvers by DID method. */
|
|
113
|
-
filterResolversByMethod(method) {
|
|
114
|
-
return this.registry.filterByDidMethod(method);
|
|
115
|
-
}
|
|
116
|
-
filterProfileResolversByMethod(method) {
|
|
117
|
-
return this.registry.filterProfileResolversByDidMethod(method);
|
|
118
|
-
}
|
|
119
|
-
filterUaidProfileResolversByMethod(method) {
|
|
120
|
-
return this.registry.filterUaidProfileResolversByDidMethod(method);
|
|
121
|
-
}
|
|
122
|
-
filterUaidProfileResolversByProfileId(profileId) {
|
|
123
|
-
return this.registry.filterUaidProfileResolversByProfileId(profileId);
|
|
124
|
-
}
|
|
125
|
-
registerHederaIssuer() {
|
|
126
|
-
this.issuers.register(new HederaHieroIssuer());
|
|
127
|
-
}
|
|
128
|
-
async createDid(request) {
|
|
129
|
-
return this.issuers.issue(request);
|
|
130
|
-
}
|
|
131
|
-
canonicalizeAgentData(input) {
|
|
132
|
-
return canonicalizeAgentData(input);
|
|
133
|
-
}
|
|
134
|
-
createUaid(input, params, options) {
|
|
135
|
-
if (typeof input === "string") {
|
|
136
|
-
return createUaid(input, params);
|
|
84
|
+
const didDocument = context.didDocument && context.didDocument.id === baseDid ? context.didDocument : await context.resolveDid(baseDid);
|
|
85
|
+
if (!didDocument) {
|
|
86
|
+
return buildErrorProfile(
|
|
87
|
+
uaid,
|
|
88
|
+
"ERR_DID_RESOLUTION_FAILED",
|
|
89
|
+
"Base DID resolution failed.",
|
|
90
|
+
{ uaid, baseDid }
|
|
91
|
+
);
|
|
137
92
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
return
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
this.registry.register(new HieroDidResolver());
|
|
172
|
-
}
|
|
173
|
-
registerHcs11ProfileResolver() {
|
|
174
|
-
this.registry.registerProfileResolver(new HCS11ProfileResolver());
|
|
175
|
-
}
|
|
176
|
-
registerUaidDidResolutionProfileResolver() {
|
|
177
|
-
this.registry.registerUaidProfileResolver(
|
|
178
|
-
new UaidDidResolutionProfileResolver()
|
|
179
|
-
);
|
|
180
|
-
}
|
|
181
|
-
registerAidDnsWebProfileResolver(options) {
|
|
182
|
-
this.registry.registerUaidProfileResolver(
|
|
183
|
-
new AidDnsWebProfileResolver(options)
|
|
184
|
-
);
|
|
185
|
-
}
|
|
186
|
-
registerUaidDnsWebProfileResolver(options) {
|
|
187
|
-
this.registry.registerUaidProfileResolver(
|
|
188
|
-
new UaidDnsWebProfileResolver(options)
|
|
189
|
-
);
|
|
190
|
-
}
|
|
191
|
-
async resolveDidProfile(did) {
|
|
192
|
-
return this.registry.resolveDidProfile(did);
|
|
193
|
-
}
|
|
194
|
-
async resolveUaidProfile(uaid, options) {
|
|
195
|
-
return this.registry.resolveUaidProfile(uaid, options);
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Issue a DID via adapters and immediately wrap as UAID with routing params.
|
|
199
|
-
* For Hedera + proto=hcs-10, nativeId and uid are derived when possible.
|
|
200
|
-
*/
|
|
201
|
-
async createDidWithUaid(options) {
|
|
202
|
-
const did = await this.createDid(options.issue);
|
|
203
|
-
let uid = options.uid;
|
|
204
|
-
const proto = options.proto;
|
|
205
|
-
let nativeId = options.nativeId;
|
|
206
|
-
const isHedera = options.issue.method === "hedera";
|
|
207
|
-
if (isHedera) {
|
|
208
|
-
await this.ensureInitializedHedera();
|
|
209
|
-
if (!nativeId) {
|
|
210
|
-
if (!this.network || !this.operatorId) {
|
|
211
|
-
throw new Error(
|
|
212
|
-
"nativeId not provided and network/operatorId are not configured"
|
|
213
|
-
);
|
|
214
|
-
}
|
|
215
|
-
nativeId = toHederaCaip10(this.network, this.operatorId);
|
|
216
|
-
}
|
|
217
|
-
if (!uid && proto === "hcs-10" && this.network && this.operatorId) {
|
|
218
|
-
try {
|
|
219
|
-
if (!this.hcs10Client && this.operatorPrivateKey) {
|
|
220
|
-
this.hcs10Client = new HCS10Client({
|
|
221
|
-
network: this.network,
|
|
222
|
-
operatorId: this.operatorId,
|
|
223
|
-
operatorPrivateKey: this.operatorPrivateKey,
|
|
224
|
-
silent: true
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
if (this.hcs10Client) {
|
|
228
|
-
uid = await this.hcs10Client.getOperatorId();
|
|
229
|
-
} else {
|
|
230
|
-
const h11 = new HCS11Client({
|
|
231
|
-
network: this.network,
|
|
232
|
-
auth: { operatorId: this.operatorId },
|
|
233
|
-
silent: true
|
|
234
|
-
});
|
|
235
|
-
const fetched = await h11.fetchProfileByAccountId(
|
|
236
|
-
this.operatorId,
|
|
237
|
-
this.network
|
|
238
|
-
);
|
|
239
|
-
const inbound = fetched?.topicInfo?.inboundTopic;
|
|
240
|
-
uid = inbound ? `${inbound}@${this.operatorId}` : this.operatorId;
|
|
241
|
-
}
|
|
242
|
-
} catch {
|
|
243
|
-
uid = this.operatorId;
|
|
93
|
+
if (!didDocument.id || typeof didDocument.id !== "string") {
|
|
94
|
+
return buildErrorProfile(
|
|
95
|
+
uaid,
|
|
96
|
+
"ERR_DID_DOCUMENT_INVALID",
|
|
97
|
+
"Resolved DID document is malformed.",
|
|
98
|
+
{ uaid, baseDid }
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
const baseServices = didDocument.service ?? [];
|
|
102
|
+
const hintedService = buildHintedService(uaid, parsed.params);
|
|
103
|
+
const includeHintedService = baseServices.length === 0 && hintedService !== null;
|
|
104
|
+
const service = includeHintedService ? [...baseServices, hintedService] : baseServices;
|
|
105
|
+
return {
|
|
106
|
+
id: uaid,
|
|
107
|
+
did: baseDid,
|
|
108
|
+
alsoKnownAs: dedupeAlsoKnownAs(baseDid, didDocument.alsoKnownAs),
|
|
109
|
+
verificationMethod: didDocument.verificationMethod,
|
|
110
|
+
authentication: didDocument.authentication,
|
|
111
|
+
assertionMethod: didDocument.assertionMethod,
|
|
112
|
+
service: service.length > 0 ? service : void 0,
|
|
113
|
+
metadata: {
|
|
114
|
+
profile: UAID_DID_RESOLUTION_PROFILE_ID,
|
|
115
|
+
resolved: true,
|
|
116
|
+
baseDid,
|
|
117
|
+
baseDidResolved: true,
|
|
118
|
+
verification: {
|
|
119
|
+
method: "did-resolution",
|
|
120
|
+
assurance: "base-method",
|
|
121
|
+
details: "Validated according to base DID method rules"
|
|
122
|
+
},
|
|
123
|
+
services: {
|
|
124
|
+
copiedFromBaseDidDocument: baseServices.length > 0,
|
|
125
|
+
derivedFromUaidParameters: includeHintedService
|
|
244
126
|
}
|
|
245
127
|
}
|
|
246
|
-
}
|
|
247
|
-
uid = uid ?? "0";
|
|
248
|
-
const uaid = this.createUaid(did, {
|
|
249
|
-
uid,
|
|
250
|
-
proto,
|
|
251
|
-
nativeId
|
|
252
|
-
});
|
|
253
|
-
const parsed = parseHcs14Did(uaid);
|
|
254
|
-
return { did, uaid, parsed };
|
|
128
|
+
};
|
|
255
129
|
}
|
|
256
130
|
}
|
|
257
131
|
export {
|
|
258
|
-
|
|
132
|
+
UAID_DID_RESOLUTION_PROFILE_ID,
|
|
133
|
+
UaidDidResolutionProfileResolver
|
|
259
134
|
};
|
|
260
135
|
//# sourceMappingURL=standards-sdk.es65.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es65.js","sources":["../../src/hcs-14/sdk.ts"],"sourcesContent":["import {\n CanonicalizationResult,\n CanonicalAgentData,\n DidRoutingParams,\n ParsedHcs14Did,\n} from './types';\nimport { canonicalizeAgentData } from './canonical';\nimport { createUaid as createUaidFn, parseHcs14Did } from './did';\nimport {\n isHederaNetwork,\n isHederaCaip10,\n toHederaCaip10,\n parseHederaCaip10,\n isEip155Caip10,\n toEip155Caip10,\n} from './caip';\nimport {\n ResolverRegistry,\n type ResolveUaidProfileOptions,\n} from './resolvers/registry';\nimport { HieroDidResolver } from './resolvers/hiero';\nimport { HCS11ProfileResolver } from './resolvers/hcs-11-profile';\nimport {\n AidDnsWebProfileResolver,\n type AidDnsWebResolverOptions,\n} from './resolvers/aid-dns-web-profile';\nimport {\n UaidDnsWebProfileResolver,\n type UaidDnsWebResolverOptions,\n} from './resolvers/uaid-dns-web-profile';\nimport { UaidDidResolutionProfileResolver } from './resolvers/uaid-did-resolution-profile';\nimport { IssuerRegistry } from './issuers/registry';\nimport { HederaHieroIssuer } from './issuers/hiero';\nimport type { DidIssueRequest } from './issuers/types';\nimport { Client } from '@hashgraph/sdk';\nimport { HCS11Client } from '../hcs-11/client';\nimport { NetworkType, Logger, type ILogger } from '../utils';\nimport { HederaMirrorNode } from '../services';\nimport {\n createNodeOperatorContext,\n type NodeOperatorContext,\n} from '../common/node-operator-resolver';\nimport { HCS10Client } from '../hcs-10/sdk';\n\n/**\n * HCS-14 SDK client - lightweight facade around AID/UAID helpers and resolver registry.\n */\nexport interface HCS14ClientOptions {\n client?: Client;\n network?: NetworkType;\n operatorId?: string;\n privateKey?: string;\n registry?: ResolverRegistry;\n hcs10Client?: HCS10Client;\n}\n\nexport class HCS14Client {\n private readonly registry: ResolverRegistry;\n private client?: Client;\n private network?: NetworkType;\n private operatorId?: string;\n private operatorPrivateKey?: string;\n private hcs10Client?: HCS10Client;\n private issuers: IssuerRegistry;\n private operatorCtx?: NodeOperatorContext;\n private logger: ILogger;\n\n constructor(options?: HCS14ClientOptions) {\n this.registry = options?.registry ?? new ResolverRegistry();\n this.issuers = new IssuerRegistry();\n this.registerHederaIssuer();\n this.registerHederaResolver();\n this.registerUaidDnsWebProfileResolver();\n this.registerAidDnsWebProfileResolver();\n this.registerUaidDidResolutionProfileResolver();\n this.registerHcs11ProfileResolver();\n this.logger = Logger.getInstance({ module: 'HCS-14' });\n this.client = options?.client;\n this.network = options?.network;\n this.operatorId = options?.operatorId;\n if (\n !this.client &&\n options?.network &&\n options?.operatorId &&\n options?.privateKey\n ) {\n this.configureHederaClient(\n options.network,\n options.operatorId,\n options.privateKey,\n );\n }\n if (options?.privateKey) {\n this.operatorPrivateKey = options.privateKey;\n }\n if (options?.hcs10Client) {\n this.hcs10Client = options.hcs10Client;\n }\n }\n\n configureHederaClient(\n network: NetworkType,\n operatorId: string,\n privateKey: string,\n ): void {\n const ctx = createNodeOperatorContext({\n network,\n operatorId,\n operatorKey: privateKey,\n mirrorNode: new HederaMirrorNode(network),\n logger: this.logger,\n client: Client.forName(network),\n });\n this.operatorCtx = ctx;\n this.client = ctx.client;\n this.network = network;\n this.operatorId = operatorId;\n this.operatorPrivateKey = privateKey;\n }\n\n private async ensureInitializedHedera(): Promise<void> {\n if (!this.operatorCtx) {\n return;\n }\n await this.operatorCtx.ensureInitialized();\n if (!this.operatorId) {\n this.operatorId = this.operatorCtx.operatorId.toString();\n }\n if (!this.operatorPrivateKey) {\n this.operatorPrivateKey = this.operatorCtx.operatorKey.toString();\n }\n if (!this.client) {\n this.client = this.operatorCtx.client;\n }\n }\n\n /**\n * DID issuance adapters\n */\n getIssuerRegistry(): IssuerRegistry {\n return this.issuers;\n }\n\n /** Convenience: list registered issuers with metadata. */\n listIssuers(): ReadonlyArray<import('./issuers/types').DidIssuer> {\n return this.issuers.list();\n }\n\n /** Convenience: list registered resolvers with metadata. */\n listResolvers(): ReadonlyArray<import('./resolvers/types').DidResolver> {\n return this.registry.list();\n }\n\n listProfileResolvers(): ReadonlyArray<\n import('./resolvers/types').DidProfileResolver\n > {\n return this.registry.listProfileResolvers();\n }\n\n listUaidProfileResolvers(): ReadonlyArray<\n import('./resolvers/types').UaidProfileResolver\n > {\n return this.registry.listUaidProfileResolvers();\n }\n\n /** Convenience: filter issuers by DID method. */\n filterIssuersByMethod(method: string) {\n return this.issuers.filterByDidMethod(method);\n }\n\n /** Convenience: filter resolvers by DID method. */\n filterResolversByMethod(method: string) {\n return this.registry.filterByDidMethod(method);\n }\n\n filterProfileResolversByMethod(method: string) {\n return this.registry.filterProfileResolversByDidMethod(method);\n }\n\n filterUaidProfileResolversByMethod(method: string) {\n return this.registry.filterUaidProfileResolversByDidMethod(method);\n }\n\n filterUaidProfileResolversByProfileId(profileId: string) {\n return this.registry.filterUaidProfileResolversByProfileId(profileId);\n }\n\n registerHederaIssuer(): void {\n this.issuers.register(new HederaHieroIssuer());\n }\n\n async createDid(request: DidIssueRequest): Promise<string> {\n return this.issuers.issue(request);\n }\n\n canonicalizeAgentData(input: unknown): CanonicalizationResult {\n return canonicalizeAgentData(input);\n }\n\n createUaid(existingDid: string, params?: DidRoutingParams): string;\n createUaid(\n input: CanonicalAgentData | string,\n params?: DidRoutingParams,\n options?: { includeParams?: boolean },\n ): Promise<string> | string {\n if (typeof input === 'string') {\n return createUaidFn(input, params);\n }\n return createUaidFn(input, params, options);\n }\n\n parseHcs14Did(did: string): ParsedHcs14Did {\n return parseHcs14Did(did);\n }\n\n isHederaNetwork(value: string): boolean {\n return isHederaNetwork(value);\n }\n isHederaCaip10(value: string): boolean {\n return isHederaCaip10(value);\n }\n toHederaCaip10(\n network: Parameters<typeof toHederaCaip10>[0],\n accountId: string,\n ): string {\n return toHederaCaip10(network, accountId);\n }\n parseHederaCaip10(value: string): {\n network: Parameters<typeof toHederaCaip10>[0];\n accountId: string;\n } {\n return parseHederaCaip10(value);\n }\n isEip155Caip10(value: string): boolean {\n return isEip155Caip10(value);\n }\n toEip155Caip10(chainId: number | string, address: string): string {\n return toEip155Caip10(chainId, address);\n }\n\n getResolverRegistry(): ResolverRegistry {\n return this.registry;\n }\n\n registerProfileResolver(\n resolver: import('./resolvers/types').DidProfileResolver,\n ): void {\n this.registry.registerProfileResolver(resolver);\n }\n\n registerUaidProfileResolver(\n resolver: import('./resolvers/types').UaidProfileResolver,\n ): void {\n this.registry.registerUaidProfileResolver(resolver);\n }\n\n registerHederaResolver(): void {\n this.registry.register(new HieroDidResolver());\n }\n\n registerHcs11ProfileResolver(): void {\n this.registry.registerProfileResolver(new HCS11ProfileResolver());\n }\n\n registerUaidDidResolutionProfileResolver(): void {\n this.registry.registerUaidProfileResolver(\n new UaidDidResolutionProfileResolver(),\n );\n }\n\n registerAidDnsWebProfileResolver(options?: AidDnsWebResolverOptions): void {\n this.registry.registerUaidProfileResolver(\n new AidDnsWebProfileResolver(options),\n );\n }\n\n registerUaidDnsWebProfileResolver(options?: UaidDnsWebResolverOptions): void {\n this.registry.registerUaidProfileResolver(\n new UaidDnsWebProfileResolver(options),\n );\n }\n\n async resolveDidProfile(\n did: string,\n ): Promise<import('./resolvers/types').DidResolutionProfile> {\n return this.registry.resolveDidProfile(did);\n }\n\n async resolveUaidProfile(\n uaid: string,\n options?: ResolveUaidProfileOptions,\n ): Promise<import('./resolvers/types').DidResolutionProfile | null> {\n return this.registry.resolveUaidProfile(uaid, options);\n }\n\n /**\n * Issue a DID via adapters and immediately wrap as UAID with routing params.\n * For Hedera + proto=hcs-10, nativeId and uid are derived when possible.\n */\n async createDidWithUaid(options: {\n issue: DidIssueRequest;\n uid?: string;\n proto?: string;\n nativeId?: string;\n }): Promise<{ did: string; uaid: string; parsed: ParsedHcs14Did }> {\n const did = await this.createDid(options.issue);\n let uid = options.uid;\n const proto = options.proto;\n let nativeId = options.nativeId;\n\n const isHedera = options.issue.method === 'hedera';\n if (isHedera) {\n await this.ensureInitializedHedera();\n if (!nativeId) {\n if (!this.network || !this.operatorId) {\n throw new Error(\n 'nativeId not provided and network/operatorId are not configured',\n );\n }\n nativeId = toHederaCaip10(this.network, this.operatorId);\n }\n if (!uid && proto === 'hcs-10' && this.network && this.operatorId) {\n try {\n if (!this.hcs10Client && this.operatorPrivateKey) {\n this.hcs10Client = new HCS10Client({\n network: this.network,\n operatorId: this.operatorId,\n operatorPrivateKey: this.operatorPrivateKey,\n silent: true,\n });\n }\n if (this.hcs10Client) {\n uid = await this.hcs10Client.getOperatorId();\n } else {\n const h11 = new HCS11Client({\n network: this.network,\n auth: { operatorId: this.operatorId },\n silent: true,\n });\n const fetched = await h11.fetchProfileByAccountId(\n this.operatorId,\n this.network,\n );\n const inbound = fetched?.topicInfo?.inboundTopic;\n uid = inbound ? `${inbound}@${this.operatorId}` : this.operatorId;\n }\n } catch {\n uid = this.operatorId;\n }\n }\n }\n\n uid = uid ?? '0';\n const uaid = this.createUaid(did, {\n uid,\n proto,\n nativeId,\n });\n const parsed = parseHcs14Did(uaid);\n return { did, uaid, parsed };\n }\n}\n\nexport type {\n CanonicalizationResult,\n CanonicalAgentData,\n DidRoutingParams,\n ParsedHcs14Did,\n};\n"],"names":["createUaidFn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es65.js","sources":["../../src/hcs-14/resolvers/uaid-did-resolution-profile.ts"],"sourcesContent":["import { multibaseB58btcDecode } from '../base58';\nimport type {\n DidResolutionProfile,\n HintedServiceEndpoint,\n ProfileResolutionError,\n UaidProfileResolver,\n UaidProfileResolverContext,\n} from './types';\nimport type { AdapterMeta } from '../adapters/types';\n\nexport const UAID_DID_RESOLUTION_PROFILE_ID =\n 'hcs-14.profile.uaid-did-resolution';\n\nfunction decodeSrcDid(src: string): string | null {\n try {\n const bytes = multibaseB58btcDecode(src);\n const decoded = Buffer.from(bytes).toString('utf8').trim();\n return decoded || null;\n } catch {\n return null;\n }\n}\n\nfunction buildHintedService(\n uaid: string,\n params: Record<string, string>,\n): {\n id: string;\n type: string;\n serviceEndpoint: HintedServiceEndpoint;\n} | null {\n const proto = params['proto'];\n const nativeId = params['nativeId'];\n const domain = params['domain'];\n if (!proto && !nativeId && !domain) {\n return null;\n }\n return {\n id: `${uaid}#hcs14-hinted-service-1`,\n type: 'HintedService',\n serviceEndpoint: {\n source: 'uaid-parameters',\n proto,\n nativeId,\n domain,\n },\n };\n}\n\nfunction buildErrorProfile(\n uaid: string,\n code: string,\n message: string,\n details?: Record<string, unknown>,\n): DidResolutionProfile {\n const error: ProfileResolutionError = {\n code,\n message,\n details,\n };\n\n return {\n id: uaid,\n error,\n metadata: {\n profile: UAID_DID_RESOLUTION_PROFILE_ID,\n resolved: false,\n },\n };\n}\n\nfunction dedupeAlsoKnownAs(baseDid: string, existing: string[] = []): string[] {\n const values = new Set<string>([baseDid, ...existing]);\n return [...values];\n}\n\nexport class UaidDidResolutionProfileResolver implements UaidProfileResolver {\n readonly adapterKind: 'uaid-profile-resolver' = 'uaid-profile-resolver';\n readonly profile = UAID_DID_RESOLUTION_PROFILE_ID;\n\n readonly meta: AdapterMeta = {\n id: 'hcs-14/uaid-did-resolution',\n didMethods: ['*'],\n displayName: 'HCS-14 UAID DID Resolution Profile',\n description:\n 'Resolves uaid:did identifiers to DID Document-compatible output with profile metadata.',\n };\n\n supports(\n _uaid: string,\n parsed: UaidProfileResolverContext['parsedUaid'],\n ): boolean {\n return parsed.method === 'uaid';\n }\n\n async resolveProfile(\n uaid: string,\n context: UaidProfileResolverContext,\n ): Promise<DidResolutionProfile | null> {\n const parsed = context.parsedUaid;\n if (parsed.method !== 'uaid') {\n return buildErrorProfile(\n uaid,\n 'ERR_INVALID_UAID',\n 'Identifier is not uaid:did and cannot be resolved by this profile.',\n { uaid },\n );\n }\n\n const src = parsed.params['src'];\n const srcDid = src ? decodeSrcDid(src) : null;\n const baseDid = srcDid ?? context.did ?? null;\n\n if (!baseDid) {\n return buildErrorProfile(\n uaid,\n 'ERR_BASE_DID_UNDETERMINED',\n 'Unable to determine base DID; provide src parameter or configure method inference.',\n { uaid },\n );\n }\n\n const didDocument =\n context.didDocument && context.didDocument.id === baseDid\n ? context.didDocument\n : await context.resolveDid(baseDid);\n\n if (!didDocument) {\n return buildErrorProfile(\n uaid,\n 'ERR_DID_RESOLUTION_FAILED',\n 'Base DID resolution failed.',\n { uaid, baseDid },\n );\n }\n\n if (!didDocument.id || typeof didDocument.id !== 'string') {\n return buildErrorProfile(\n uaid,\n 'ERR_DID_DOCUMENT_INVALID',\n 'Resolved DID document is malformed.',\n { uaid, baseDid },\n );\n }\n\n const baseServices = didDocument.service ?? [];\n const hintedService = buildHintedService(uaid, parsed.params);\n const includeHintedService =\n baseServices.length === 0 && hintedService !== null;\n const service = includeHintedService\n ? [...baseServices, hintedService]\n : baseServices;\n\n return {\n id: uaid,\n did: baseDid,\n alsoKnownAs: dedupeAlsoKnownAs(baseDid, didDocument.alsoKnownAs),\n verificationMethod: didDocument.verificationMethod,\n authentication: didDocument.authentication,\n assertionMethod: didDocument.assertionMethod,\n service: service.length > 0 ? service : undefined,\n metadata: {\n profile: UAID_DID_RESOLUTION_PROFILE_ID,\n resolved: true,\n baseDid,\n baseDidResolved: true,\n verification: {\n method: 'did-resolution',\n assurance: 'base-method',\n details: 'Validated according to base DID method rules',\n },\n services: {\n copiedFromBaseDidDocument: baseServices.length > 0,\n derivedFromUaidParameters: includeHintedService,\n },\n },\n };\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { optionalImport } from "./standards-sdk.es158.js";
|
|
2
|
+
let resolveTxtLoader = null;
|
|
3
|
+
function isNoRecordError(error) {
|
|
4
|
+
if (!error || typeof error !== "object") {
|
|
5
|
+
return false;
|
|
4
6
|
}
|
|
5
|
-
|
|
6
|
-
|
|
7
|
+
const code = Reflect.get(error, "code");
|
|
8
|
+
if (typeof code !== "string") {
|
|
9
|
+
return false;
|
|
7
10
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
return code === "ENOTFOUND" || code === "ENODATA" || code === "ENOENT" || code === "ENONAME" || code === "NXDOMAIN";
|
|
12
|
+
}
|
|
13
|
+
async function loadResolveTxt() {
|
|
14
|
+
if (!resolveTxtLoader) {
|
|
15
|
+
resolveTxtLoader = (async () => {
|
|
16
|
+
const nodeDnsModule = await optionalImport(
|
|
17
|
+
"node:dns/promises",
|
|
18
|
+
{ preferImport: true }
|
|
19
|
+
);
|
|
20
|
+
if (nodeDnsModule?.resolveTxt) {
|
|
21
|
+
return nodeDnsModule.resolveTxt;
|
|
22
|
+
}
|
|
23
|
+
const dnsModule = await optionalImport(
|
|
24
|
+
"dns/promises",
|
|
25
|
+
{ preferImport: true }
|
|
26
|
+
);
|
|
27
|
+
return dnsModule?.resolveTxt ?? null;
|
|
28
|
+
})();
|
|
18
29
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
30
|
+
return resolveTxtLoader;
|
|
31
|
+
}
|
|
32
|
+
const nodeDnsTxtLookup = async (hostname) => {
|
|
33
|
+
const resolveTxt = await loadResolveTxt();
|
|
34
|
+
if (!resolveTxt) {
|
|
35
|
+
return [];
|
|
22
36
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
37
|
+
try {
|
|
38
|
+
const response = await resolveTxt(hostname);
|
|
39
|
+
return response.map((chunks) => chunks.join(""));
|
|
40
|
+
} catch (error) {
|
|
41
|
+
if (isNoRecordError(error)) {
|
|
42
|
+
return [];
|
|
28
43
|
}
|
|
29
|
-
throw
|
|
44
|
+
throw error;
|
|
30
45
|
}
|
|
31
|
-
}
|
|
32
|
-
const defaultIssuerRegistry = new IssuerRegistry();
|
|
46
|
+
};
|
|
33
47
|
export {
|
|
34
|
-
|
|
35
|
-
defaultIssuerRegistry
|
|
48
|
+
nodeDnsTxtLookup
|
|
36
49
|
};
|
|
37
50
|
//# sourceMappingURL=standards-sdk.es66.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es66.js","sources":["../../src/hcs-14/
|
|
1
|
+
{"version":3,"file":"standards-sdk.es66.js","sources":["../../src/hcs-14/resolvers/dns.ts"],"sourcesContent":["import { optionalImport } from '../../utils/dynamic-import';\n\ntype DnsResolveTxt = (hostname: string) => Promise<string[][]>;\n\ntype DnsPromisesModule = {\n resolveTxt?: DnsResolveTxt;\n};\n\nexport type DnsTxtLookup = (hostname: string) => Promise<string[]>;\n\nlet resolveTxtLoader: Promise<DnsResolveTxt | null> | null = null;\n\nfunction isNoRecordError(error: unknown): boolean {\n if (!error || typeof error !== 'object') {\n return false;\n }\n const code = Reflect.get(error, 'code');\n if (typeof code !== 'string') {\n return false;\n }\n return (\n code === 'ENOTFOUND' ||\n code === 'ENODATA' ||\n code === 'ENOENT' ||\n code === 'ENONAME' ||\n code === 'NXDOMAIN'\n );\n}\n\nasync function loadResolveTxt(): Promise<DnsResolveTxt | null> {\n if (!resolveTxtLoader) {\n resolveTxtLoader = (async () => {\n const nodeDnsModule = await optionalImport<DnsPromisesModule>(\n 'node:dns/promises',\n { preferImport: true },\n );\n if (nodeDnsModule?.resolveTxt) {\n return nodeDnsModule.resolveTxt;\n }\n\n const dnsModule = await optionalImport<DnsPromisesModule>(\n 'dns/promises',\n { preferImport: true },\n );\n return dnsModule?.resolveTxt ?? null;\n })();\n }\n\n return resolveTxtLoader;\n}\n\nexport const nodeDnsTxtLookup: DnsTxtLookup = async hostname => {\n const resolveTxt = await loadResolveTxt();\n if (!resolveTxt) {\n return [];\n }\n\n try {\n const response = await resolveTxt(hostname);\n return response.map(chunks => chunks.join(''));\n } catch (error) {\n if (isNoRecordError(error)) {\n return [];\n }\n throw error as Error;\n }\n};\n"],"names":[],"mappings":";AAUA,IAAI,mBAAyD;AAE7D,SAAS,gBAAgB,OAAyB;AAChD,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACvC,WAAO;AAAA,EACT;AACA,QAAM,OAAO,QAAQ,IAAI,OAAO,MAAM;AACtC,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO;AAAA,EACT;AACA,SACE,SAAS,eACT,SAAS,aACT,SAAS,YACT,SAAS,aACT,SAAS;AAEb;AAEA,eAAe,iBAAgD;AAC7D,MAAI,CAAC,kBAAkB;AACrB,wBAAoB,YAAY;AAC9B,YAAM,gBAAgB,MAAM;AAAA,QAC1B;AAAA,QACA,EAAE,cAAc,KAAA;AAAA,MAAK;AAEvB,UAAI,eAAe,YAAY;AAC7B,eAAO,cAAc;AAAA,MACvB;AAEA,YAAM,YAAY,MAAM;AAAA,QACtB;AAAA,QACA,EAAE,cAAc,KAAA;AAAA,MAAK;AAEvB,aAAO,WAAW,cAAc;AAAA,IAClC,GAAA;AAAA,EACF;AAEA,SAAO;AACT;AAEO,MAAM,mBAAiC,OAAM,aAAY;AAC9D,QAAM,aAAa,MAAM,eAAA;AACzB,MAAI,CAAC,YAAY;AACf,WAAO,CAAA;AAAA,EACT;AAEA,MAAI;AACF,UAAM,WAAW,MAAM,WAAW,QAAQ;AAC1C,WAAO,SAAS,IAAI,CAAA,WAAU,OAAO,KAAK,EAAE,CAAC;AAAA,EAC/C,SAAS,OAAO;AACd,QAAI,gBAAgB,KAAK,GAAG;AAC1B,aAAO,CAAA;AAAA,IACT;AACA,UAAM;AAAA,EACR;AACF;"}
|