@hashgraphonline/standards-sdk 0.1.159 → 0.1.160
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-12/validation/schemas.d.ts +4 -4
- package/dist/cjs/hcs-14/index.d.ts +5 -0
- package/dist/cjs/hcs-14/index.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/aid-dns-web-profile.d.ts +37 -0
- package/dist/cjs/hcs-14/resolvers/aid-dns-web-profile.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/dns.d.ts +3 -0
- package/dist/cjs/hcs-14/resolvers/dns.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/hcs-11-profile.d.ts +8 -0
- package/dist/cjs/hcs-14/resolvers/hcs-11-profile.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/profile-utils.d.ts +9 -0
- package/dist/cjs/hcs-14/resolvers/profile-utils.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/registry.d.ts +21 -1
- package/dist/cjs/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/types.d.ts +106 -5
- package/dist/cjs/hcs-14/resolvers/types.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/uaid-did-resolution-profile.d.ts +10 -0
- package/dist/cjs/hcs-14/resolvers/uaid-did-resolution-profile.d.ts.map +1 -0
- package/dist/cjs/hcs-14/resolvers/uaid-dns-web-profile.d.ts +22 -0
- package/dist/cjs/hcs-14/resolvers/uaid-dns-web-profile.d.ts.map +1 -0
- package/dist/cjs/hcs-14/sdk.d.ts +16 -1
- package/dist/cjs/hcs-14/sdk.d.ts.map +1 -1
- package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/schemas.d.ts +1548 -0
- package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/cjs/standards-sdk.cjs +2 -2
- package/dist/cjs/standards-sdk.cjs.map +1 -1
- package/dist/es/hcs-12/validation/schemas.d.ts +4 -4
- package/dist/es/hcs-14/index.d.ts +5 -0
- package/dist/es/hcs-14/index.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/aid-dns-web-profile.d.ts +37 -0
- package/dist/es/hcs-14/resolvers/aid-dns-web-profile.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/dns.d.ts +3 -0
- package/dist/es/hcs-14/resolvers/dns.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/hcs-11-profile.d.ts +8 -0
- package/dist/es/hcs-14/resolvers/hcs-11-profile.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/profile-utils.d.ts +9 -0
- package/dist/es/hcs-14/resolvers/profile-utils.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/registry.d.ts +21 -1
- package/dist/es/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/types.d.ts +106 -5
- package/dist/es/hcs-14/resolvers/types.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/uaid-did-resolution-profile.d.ts +10 -0
- package/dist/es/hcs-14/resolvers/uaid-did-resolution-profile.d.ts.map +1 -0
- package/dist/es/hcs-14/resolvers/uaid-dns-web-profile.d.ts +22 -0
- package/dist/es/hcs-14/resolvers/uaid-dns-web-profile.d.ts.map +1 -0
- package/dist/es/hcs-14/sdk.d.ts +16 -1
- package/dist/es/hcs-14/sdk.d.ts.map +1 -1
- package/dist/es/inscribe/inscriber.d.ts.map +1 -1
- package/dist/es/services/registry-broker/schemas.d.ts +1548 -0
- package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/es/standards-sdk.es.js +96 -83
- package/dist/es/standards-sdk.es.js.map +1 -1
- package/dist/es/standards-sdk.es100.js +41 -224
- package/dist/es/standards-sdk.es100.js.map +1 -1
- package/dist/es/standards-sdk.es101.js +249 -97
- package/dist/es/standards-sdk.es101.js.map +1 -1
- package/dist/es/standards-sdk.es102.js +95 -27
- package/dist/es/standards-sdk.es102.js.map +1 -1
- package/dist/es/standards-sdk.es103.js +97 -80
- package/dist/es/standards-sdk.es103.js.map +1 -1
- package/dist/es/standards-sdk.es104.js +29 -30
- package/dist/es/standards-sdk.es104.js.map +1 -1
- package/dist/es/standards-sdk.es105.js +229 -249
- package/dist/es/standards-sdk.es105.js.map +1 -1
- package/dist/es/standards-sdk.es106.js +103 -468
- package/dist/es/standards-sdk.es106.js.map +1 -1
- package/dist/es/standards-sdk.es107.js +32 -103
- package/dist/es/standards-sdk.es107.js.map +1 -1
- package/dist/es/standards-sdk.es108.js +79 -155
- package/dist/es/standards-sdk.es108.js.map +1 -1
- package/dist/es/standards-sdk.es109.js +28 -31
- 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 +250 -10
- package/dist/es/standards-sdk.es110.js.map +1 -1
- package/dist/es/standards-sdk.es111.js +451 -115
- package/dist/es/standards-sdk.es111.js.map +1 -1
- package/dist/es/standards-sdk.es112.js +101 -25
- package/dist/es/standards-sdk.es112.js.map +1 -1
- package/dist/es/standards-sdk.es113.js +155 -17
- package/dist/es/standards-sdk.es113.js.map +1 -1
- package/dist/es/standards-sdk.es114.js +29 -155
- package/dist/es/standards-sdk.es114.js.map +1 -1
- package/dist/es/standards-sdk.es115.js +9 -200
- package/dist/es/standards-sdk.es115.js.map +1 -1
- package/dist/es/standards-sdk.es116.js +109 -757
- package/dist/es/standards-sdk.es116.js.map +1 -1
- package/dist/es/standards-sdk.es117.js +27 -11
- package/dist/es/standards-sdk.es117.js.map +1 -1
- package/dist/es/standards-sdk.es118.js +19 -564
- package/dist/es/standards-sdk.es118.js.map +1 -1
- package/dist/es/standards-sdk.es119.js +140 -582
- 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 +202 -12
- package/dist/es/standards-sdk.es120.js.map +1 -1
- package/dist/es/standards-sdk.es121.js +790 -2
- package/dist/es/standards-sdk.es121.js.map +1 -1
- package/dist/es/standards-sdk.es122.js +10 -84
- package/dist/es/standards-sdk.es122.js.map +1 -1
- package/dist/es/standards-sdk.es123.js +567 -40
- package/dist/es/standards-sdk.es123.js.map +1 -1
- package/dist/es/standards-sdk.es124.js +602 -2
- package/dist/es/standards-sdk.es124.js.map +1 -1
- package/dist/es/standards-sdk.es125.js +12 -234
- package/dist/es/standards-sdk.es125.js.map +1 -1
- package/dist/es/standards-sdk.es126.js +2 -1140
- package/dist/es/standards-sdk.es126.js.map +1 -1
- package/dist/es/standards-sdk.es127.js +73 -292
- package/dist/es/standards-sdk.es127.js.map +1 -1
- package/dist/es/standards-sdk.es128.js +36 -418
- package/dist/es/standards-sdk.es128.js.map +1 -1
- package/dist/es/standards-sdk.es129.js +2 -355
- 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 +198 -1079
- package/dist/es/standards-sdk.es130.js.map +1 -1
- package/dist/es/standards-sdk.es131.js +1107 -175
- package/dist/es/standards-sdk.es131.js.map +1 -1
- package/dist/es/standards-sdk.es132.js +218 -1479
- package/dist/es/standards-sdk.es132.js.map +1 -1
- package/dist/es/standards-sdk.es133.js +422 -1236
- package/dist/es/standards-sdk.es133.js.map +1 -1
- package/dist/es/standards-sdk.es134.js +351 -13
- package/dist/es/standards-sdk.es134.js.map +1 -1
- package/dist/es/standards-sdk.es135.js +1102 -73
- package/dist/es/standards-sdk.es135.js.map +1 -1
- package/dist/es/standards-sdk.es136.js +203 -76
- package/dist/es/standards-sdk.es136.js.map +1 -1
- package/dist/es/standards-sdk.es137.js +1459 -785
- package/dist/es/standards-sdk.es137.js.map +1 -1
- package/dist/es/standards-sdk.es138.js +1254 -59
- package/dist/es/standards-sdk.es138.js.map +1 -1
- package/dist/es/standards-sdk.es139.js +14 -156
- 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 +87 -7
- package/dist/es/standards-sdk.es140.js.map +1 -1
- package/dist/es/standards-sdk.es141.js +74 -79
- package/dist/es/standards-sdk.es141.js.map +1 -1
- package/dist/es/standards-sdk.es142.js +889 -61
- package/dist/es/standards-sdk.es142.js.map +1 -1
- package/dist/es/standards-sdk.es143.js +60 -30
- package/dist/es/standards-sdk.es143.js.map +1 -1
- package/dist/es/standards-sdk.es144.js +159 -34
- package/dist/es/standards-sdk.es144.js.map +1 -1
- package/dist/es/standards-sdk.es145.js +7 -28
- package/dist/es/standards-sdk.es145.js.map +1 -1
- package/dist/es/standards-sdk.es146.js +70 -122
- package/dist/es/standards-sdk.es146.js.map +1 -1
- package/dist/es/standards-sdk.es147.js +58 -35
- package/dist/es/standards-sdk.es147.js.map +1 -1
- package/dist/es/standards-sdk.es148.js +30 -12482
- package/dist/es/standards-sdk.es148.js.map +1 -1
- package/dist/es/standards-sdk.es149.js +34 -242
- 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 +41 -172
- package/dist/es/standards-sdk.es150.js.map +1 -1
- package/dist/es/standards-sdk.es151.js +115 -299
- package/dist/es/standards-sdk.es151.js.map +1 -1
- package/dist/es/standards-sdk.es152.js +36 -340
- package/dist/es/standards-sdk.es152.js.map +1 -1
- package/dist/es/standards-sdk.es153.js +12427 -398
- package/dist/es/standards-sdk.es153.js.map +1 -1
- package/dist/es/standards-sdk.es154.js +142 -301
- package/dist/es/standards-sdk.es154.js.map +1 -1
- package/dist/es/standards-sdk.es155.js +310 -64
- package/dist/es/standards-sdk.es155.js.map +1 -1
- package/dist/es/standards-sdk.es156.js +342 -13
- package/dist/es/standards-sdk.es156.js.map +1 -1
- package/dist/es/standards-sdk.es157.js +444 -64
- package/dist/es/standards-sdk.es157.js.map +1 -1
- package/dist/es/standards-sdk.es158.js +330 -55
- package/dist/es/standards-sdk.es158.js.map +1 -1
- package/dist/es/standards-sdk.es159.js +60 -68
- package/dist/es/standards-sdk.es159.js.map +1 -1
- package/dist/es/standards-sdk.es16.js +5 -5
- package/dist/es/standards-sdk.es160.js +14 -169
- package/dist/es/standards-sdk.es160.js.map +1 -1
- package/dist/es/standards-sdk.es161.js +179 -159
- package/dist/es/standards-sdk.es161.js.map +1 -1
- package/dist/es/standards-sdk.es162.js +49 -232
- package/dist/es/standards-sdk.es162.js.map +1 -1
- package/dist/es/standards-sdk.es163.js +71 -106
- package/dist/es/standards-sdk.es163.js.map +1 -1
- package/dist/es/standards-sdk.es164.js +70 -115
- package/dist/es/standards-sdk.es164.js.map +1 -1
- package/dist/es/standards-sdk.es165.js +60 -148
- package/dist/es/standards-sdk.es165.js.map +1 -1
- package/dist/es/standards-sdk.es166.js +149 -162
- package/dist/es/standards-sdk.es166.js.map +1 -1
- package/dist/es/standards-sdk.es167.js +195 -112
- package/dist/es/standards-sdk.es167.js.map +1 -1
- package/dist/es/standards-sdk.es168.js +208 -300
- package/dist/es/standards-sdk.es168.js.map +1 -1
- package/dist/es/standards-sdk.es169.js +106 -246
- package/dist/es/standards-sdk.es169.js.map +1 -1
- package/dist/es/standards-sdk.es170.js +107 -97
- package/dist/es/standards-sdk.es170.js.map +1 -1
- package/dist/es/standards-sdk.es171.js +164 -0
- package/dist/es/standards-sdk.es171.js.map +1 -0
- package/dist/es/standards-sdk.es172.js +188 -0
- package/dist/es/standards-sdk.es172.js.map +1 -0
- package/dist/es/standards-sdk.es173.js +142 -0
- package/dist/es/standards-sdk.es173.js.map +1 -0
- package/dist/es/standards-sdk.es174.js +334 -0
- package/dist/es/standards-sdk.es174.js.map +1 -0
- package/dist/es/standards-sdk.es175.js +262 -0
- package/dist/es/standards-sdk.es175.js.map +1 -0
- package/dist/es/standards-sdk.es176.js +119 -0
- package/dist/es/standards-sdk.es176.js.map +1 -0
- package/dist/es/standards-sdk.es18.js +12 -12
- package/dist/es/standards-sdk.es19.js +9 -9
- 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 +12 -12
- 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 +6 -6
- 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 +194 -13
- package/dist/es/standards-sdk.es58.js.map +1 -1
- package/dist/es/standards-sdk.es59.js +1 -1
- package/dist/es/standards-sdk.es6.js +2 -2
- package/dist/es/standards-sdk.es60.js +100 -192
- package/dist/es/standards-sdk.es60.js.map +1 -1
- package/dist/es/standards-sdk.es61.js +172 -24
- package/dist/es/standards-sdk.es61.js.map +1 -1
- package/dist/es/standards-sdk.es62.js +204 -77
- package/dist/es/standards-sdk.es62.js.map +1 -1
- package/dist/es/standards-sdk.es63.js +130 -3
- package/dist/es/standards-sdk.es63.js.map +1 -1
- package/dist/es/standards-sdk.es64.js +41 -95
- package/dist/es/standards-sdk.es64.js.map +1 -1
- package/dist/es/standards-sdk.es65.js +245 -88
- package/dist/es/standards-sdk.es65.js.map +1 -1
- package/dist/es/standards-sdk.es66.js +32 -17
- package/dist/es/standards-sdk.es66.js.map +1 -1
- package/dist/es/standards-sdk.es67.js +96 -77
- package/dist/es/standards-sdk.es67.js.map +1 -1
- package/dist/es/standards-sdk.es68.js +4 -458
- package/dist/es/standards-sdk.es68.js.map +1 -1
- package/dist/es/standards-sdk.es69.js +72 -295
- 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 +86 -194
- package/dist/es/standards-sdk.es70.js.map +1 -1
- package/dist/es/standards-sdk.es71.js +16 -69
- package/dist/es/standards-sdk.es71.js.map +1 -1
- package/dist/es/standards-sdk.es72.js +69 -63
- package/dist/es/standards-sdk.es72.js.map +1 -1
- package/dist/es/standards-sdk.es73.js +458 -143
- package/dist/es/standards-sdk.es73.js.map +1 -1
- package/dist/es/standards-sdk.es74.js +298 -43
- package/dist/es/standards-sdk.es74.js.map +1 -1
- package/dist/es/standards-sdk.es75.js +174 -370
- package/dist/es/standards-sdk.es75.js.map +1 -1
- package/dist/es/standards-sdk.es76.js +71 -495
- package/dist/es/standards-sdk.es76.js.map +1 -1
- package/dist/es/standards-sdk.es77.js +71 -365
- package/dist/es/standards-sdk.es77.js.map +1 -1
- package/dist/es/standards-sdk.es78.js +137 -83
- package/dist/es/standards-sdk.es78.js.map +1 -1
- package/dist/es/standards-sdk.es79.js +69 -125
- package/dist/es/standards-sdk.es79.js.map +1 -1
- package/dist/es/standards-sdk.es80.js +402 -6
- package/dist/es/standards-sdk.es80.js.map +1 -1
- package/dist/es/standards-sdk.es81.js +492 -43
- package/dist/es/standards-sdk.es81.js.map +1 -1
- package/dist/es/standards-sdk.es82.js +350 -86
- package/dist/es/standards-sdk.es82.js.map +1 -1
- package/dist/es/standards-sdk.es83.js +88 -347
- package/dist/es/standards-sdk.es83.js.map +1 -1
- package/dist/es/standards-sdk.es84.js +125 -281
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es85.js +6 -59
- package/dist/es/standards-sdk.es85.js.map +1 -1
- package/dist/es/standards-sdk.es86.js +43 -45
- package/dist/es/standards-sdk.es86.js.map +1 -1
- package/dist/es/standards-sdk.es87.js +86 -135
- package/dist/es/standards-sdk.es87.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +333 -52
- package/dist/es/standards-sdk.es88.js.map +1 -1
- package/dist/es/standards-sdk.es89.js +277 -26
- 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 +59 -23
- package/dist/es/standards-sdk.es90.js.map +1 -1
- package/dist/es/standards-sdk.es91.js +26 -217
- package/dist/es/standards-sdk.es91.js.map +1 -1
- package/dist/es/standards-sdk.es92.js +104 -236
- package/dist/es/standards-sdk.es92.js.map +1 -1
- package/dist/es/standards-sdk.es93.js +51 -141
- package/dist/es/standards-sdk.es93.js.map +1 -1
- package/dist/es/standards-sdk.es94.js +22 -137
- package/dist/es/standards-sdk.es94.js.map +1 -1
- package/dist/es/standards-sdk.es95.js +20 -44
- package/dist/es/standards-sdk.es95.js.map +1 -1
- package/dist/es/standards-sdk.es96.js +227 -252
- package/dist/es/standards-sdk.es96.js.map +1 -1
- package/dist/es/standards-sdk.es97.js +248 -68
- package/dist/es/standards-sdk.es97.js.map +1 -1
- package/dist/es/standards-sdk.es98.js +108 -52
- package/dist/es/standards-sdk.es98.js.map +1 -1
- package/dist/es/standards-sdk.es99.js +144 -29
- package/dist/es/standards-sdk.es99.js.map +1 -1
- package/package.json +13 -3
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Logger } from "./standards-sdk.
|
|
1
|
+
import { Logger } from "./standards-sdk.es116.js";
|
|
2
2
|
import { Registration } from "./standards-sdk.es20.js";
|
|
3
3
|
import { HCS11Client } from "./standards-sdk.es27.js";
|
|
4
4
|
import { PublicKey } from "@hashgraph/sdk";
|
|
5
|
-
import { HederaMirrorNode } from "./standards-sdk.
|
|
5
|
+
import { HederaMirrorNode } from "./standards-sdk.es137.js";
|
|
6
6
|
import "path";
|
|
7
7
|
import "buffer";
|
|
8
8
|
import "crypto";
|
|
9
9
|
import "@noble/curves/secp256k1.js";
|
|
10
|
-
import "./standards-sdk.
|
|
11
|
-
import "./standards-sdk.
|
|
10
|
+
import "./standards-sdk.es138.js";
|
|
11
|
+
import "./standards-sdk.es140.js";
|
|
12
12
|
import "zod";
|
|
13
13
|
import { buildHcs10SubmitConnectionRequestTx, buildHcs10OutboundConnectionRequestRecordTx, buildHcs10OutboundConnectionCreatedRecordTx } from "./standards-sdk.es22.js";
|
|
14
|
-
import { HRLResolver } from "./standards-sdk.
|
|
14
|
+
import { HRLResolver } from "./standards-sdk.es120.js";
|
|
15
15
|
var Hcs10MemoType = /* @__PURE__ */ ((Hcs10MemoType2) => {
|
|
16
16
|
Hcs10MemoType2["INBOUND"] = "inbound";
|
|
17
17
|
Hcs10MemoType2["OUTBOUND"] = "outbound";
|
|
@@ -1,175 +1,20 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
};
|
|
14
|
-
async function registerEncryptionKey(client, payload) {
|
|
15
|
-
const raw = await client.requestJson("/encryption/keys", {
|
|
16
|
-
method: "POST",
|
|
17
|
-
headers: { "content-type": "application/json" },
|
|
18
|
-
body: payload
|
|
19
|
-
});
|
|
20
|
-
return client.parseWithSchema(
|
|
21
|
-
raw,
|
|
22
|
-
registerEncryptionKeyResponseSchema,
|
|
23
|
-
"register encryption key response"
|
|
24
|
-
);
|
|
25
|
-
}
|
|
26
|
-
function normalizeAutoRegisterIdentity(config) {
|
|
27
|
-
const identity = {};
|
|
28
|
-
if (config.uaid) {
|
|
29
|
-
identity.uaid = config.uaid;
|
|
30
|
-
}
|
|
31
|
-
if (config.ledgerAccountId) {
|
|
32
|
-
identity.ledgerAccountId = config.ledgerAccountId;
|
|
33
|
-
if (config.ledgerNetwork) {
|
|
34
|
-
identity.ledgerNetwork = config.ledgerNetwork;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
if (config.email) {
|
|
38
|
-
identity.email = config.email;
|
|
39
|
-
}
|
|
40
|
-
if (identity.uaid || identity.ledgerAccountId || identity.email) {
|
|
41
|
-
return identity;
|
|
42
|
-
}
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
function derivePublicKeyFromPrivateKey(client, privateKey) {
|
|
46
|
-
const normalized = client.hexToBuffer(privateKey);
|
|
47
|
-
const publicKey = secp256k1.getPublicKey(normalized, true);
|
|
48
|
-
return Buffer.from(publicKey).toString("hex");
|
|
49
|
-
}
|
|
50
|
-
async function resolveAutoRegisterKeyMaterial(client, config) {
|
|
51
|
-
if (config.publicKey?.trim()) {
|
|
52
|
-
return { publicKey: config.publicKey.trim() };
|
|
53
|
-
}
|
|
54
|
-
let privateKey = config.privateKey?.trim();
|
|
55
|
-
const envVar = config.envVar ?? "RB_ENCRYPTION_PRIVATE_KEY";
|
|
56
|
-
if (!privateKey && envVar && process?.env?.[envVar]?.trim()) {
|
|
57
|
-
privateKey = process.env[envVar]?.trim();
|
|
58
|
-
}
|
|
59
|
-
if (!privateKey && config.generateIfMissing) {
|
|
60
|
-
const pair = await client.generateEncryptionKeyPair({
|
|
61
|
-
keyType: config.keyType ?? "secp256k1",
|
|
62
|
-
envVar,
|
|
63
|
-
envPath: config.envPath,
|
|
64
|
-
overwrite: config.overwriteEnv
|
|
1
|
+
import { Logger } from "./standards-sdk.es116.js";
|
|
2
|
+
import { HederaMirrorNode } from "./standards-sdk.es137.js";
|
|
3
|
+
class HCS5BaseClient {
|
|
4
|
+
/**
|
|
5
|
+
* Create a new HCS-5 base client
|
|
6
|
+
*/
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.network = config.network;
|
|
9
|
+
this.logger = config.logger || Logger.getInstance({
|
|
10
|
+
level: config.logLevel || "info",
|
|
11
|
+
module: "HCS5Client",
|
|
12
|
+
silent: config.silent
|
|
65
13
|
});
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
if (privateKey) {
|
|
69
|
-
const publicKey = derivePublicKeyFromPrivateKey(client, privateKey);
|
|
70
|
-
return { publicKey, privateKey };
|
|
71
|
-
}
|
|
72
|
-
return null;
|
|
73
|
-
}
|
|
74
|
-
async function autoRegisterEncryptionKey(client, config) {
|
|
75
|
-
const identity = normalizeAutoRegisterIdentity(config);
|
|
76
|
-
if (!identity) {
|
|
77
|
-
throw new Error(
|
|
78
|
-
"Auto-registration requires uaid, ledgerAccountId, or email"
|
|
79
|
-
);
|
|
80
|
-
}
|
|
81
|
-
const material = await resolveAutoRegisterKeyMaterial(client, config);
|
|
82
|
-
if (!material) {
|
|
83
|
-
throw new Error(
|
|
84
|
-
"Unable to resolve encryption public key for auto-registration"
|
|
85
|
-
);
|
|
86
|
-
}
|
|
87
|
-
await registerEncryptionKey(client, {
|
|
88
|
-
keyType: config.keyType ?? "secp256k1",
|
|
89
|
-
publicKey: material.publicKey,
|
|
90
|
-
...identity
|
|
91
|
-
});
|
|
92
|
-
return material;
|
|
93
|
-
}
|
|
94
|
-
async function ensureAgentEncryptionKey(client, options) {
|
|
95
|
-
return autoRegisterEncryptionKey(client, {
|
|
96
|
-
...options,
|
|
97
|
-
uaid: options.uaid
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
function createEncryptionApi(client) {
|
|
101
|
-
return {
|
|
102
|
-
registerKey: (payload) => registerEncryptionKey(client, payload),
|
|
103
|
-
generateEphemeralKeyPair: () => client.createEphemeralKeyPair(),
|
|
104
|
-
deriveSharedSecret: (options) => client.deriveSharedSecret(options),
|
|
105
|
-
encryptCipherEnvelope: (options) => client.buildCipherEnvelope(options),
|
|
106
|
-
decryptCipherEnvelope: (options) => client.openCipherEnvelope(options),
|
|
107
|
-
ensureAgentKey: (options) => ensureAgentEncryptionKey(client, options)
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
async function bootstrapEncryptionOptions(client, options) {
|
|
111
|
-
if (!options?.autoRegister || options.autoRegister.enabled === false) {
|
|
112
|
-
return null;
|
|
113
|
-
}
|
|
114
|
-
return autoRegisterEncryptionKey(client, options.autoRegister);
|
|
115
|
-
}
|
|
116
|
-
async function generateEncryptionKeyPair(client, options = {}) {
|
|
117
|
-
client.assertNodeRuntime("generateEncryptionKeyPair");
|
|
118
|
-
const keyType = options.keyType ?? "secp256k1";
|
|
119
|
-
if (keyType !== "secp256k1") {
|
|
120
|
-
throw new Error("Only secp256k1 key generation is supported currently");
|
|
121
|
-
}
|
|
122
|
-
const privateKeyBytes = randomBytes(32);
|
|
123
|
-
const privateKey = Buffer.from(privateKeyBytes).toString("hex");
|
|
124
|
-
const publicKeyBytes = secp256k1.getPublicKey(privateKeyBytes, true);
|
|
125
|
-
const publicKey = Buffer.from(publicKeyBytes).toString("hex");
|
|
126
|
-
const envVar = options.envVar ?? "RB_ENCRYPTION_PRIVATE_KEY";
|
|
127
|
-
const resolvedPath = options.envPath ? path.resolve(options.envPath) : void 0;
|
|
128
|
-
if (resolvedPath) {
|
|
129
|
-
const fsModule = await getFs();
|
|
130
|
-
if (!fsModule) {
|
|
131
|
-
throw new Error(
|
|
132
|
-
"File system module is not available; cannot write encryption key env file"
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
const envLine = `${envVar}=${privateKey}`;
|
|
136
|
-
if (fsModule.existsSync(resolvedPath)) {
|
|
137
|
-
const content = fsModule.readFileSync(resolvedPath, "utf-8");
|
|
138
|
-
const lineRegex = new RegExp(`^${envVar}=.*$`, "m");
|
|
139
|
-
if (lineRegex.test(content)) {
|
|
140
|
-
if (!options.overwrite) {
|
|
141
|
-
throw new Error(
|
|
142
|
-
`${envVar} already exists in ${resolvedPath}; set overwrite=true to replace it`
|
|
143
|
-
);
|
|
144
|
-
}
|
|
145
|
-
const updated = content.replace(lineRegex, envLine);
|
|
146
|
-
fsModule.writeFileSync(resolvedPath, updated);
|
|
147
|
-
} else {
|
|
148
|
-
const needsNewline = !content.endsWith("\n");
|
|
149
|
-
fsModule.appendFileSync(
|
|
150
|
-
resolvedPath,
|
|
151
|
-
`${needsNewline ? "\n" : ""}${envLine}
|
|
152
|
-
`
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
} else {
|
|
156
|
-
fsModule.writeFileSync(resolvedPath, `${envLine}
|
|
157
|
-
`);
|
|
158
|
-
}
|
|
14
|
+
this.mirrorNode = new HederaMirrorNode(this.network, this.logger);
|
|
159
15
|
}
|
|
160
|
-
return {
|
|
161
|
-
privateKey,
|
|
162
|
-
publicKey,
|
|
163
|
-
envPath: resolvedPath,
|
|
164
|
-
envVar
|
|
165
|
-
};
|
|
166
16
|
}
|
|
167
17
|
export {
|
|
168
|
-
|
|
169
|
-
bootstrapEncryptionOptions,
|
|
170
|
-
createEncryptionApi,
|
|
171
|
-
ensureAgentEncryptionKey,
|
|
172
|
-
generateEncryptionKeyPair,
|
|
173
|
-
registerEncryptionKey
|
|
18
|
+
HCS5BaseClient
|
|
174
19
|
};
|
|
175
20
|
//# sourceMappingURL=standards-sdk.es160.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es160.js","sources":["../../src/services/registry-broker/client/encryption.ts"],"sourcesContent":["import * as path from 'path';\nimport { Buffer } from 'buffer';\nimport { randomBytes } from 'crypto';\nimport { secp256k1 } from '@noble/curves/secp256k1.js';\nimport type {\n AutoRegisterEncryptionKeyOptions,\n CipherEnvelope,\n ClientEncryptionOptions,\n DecryptCipherEnvelopeOptions,\n DeriveSharedSecretOptions,\n EncryptCipherEnvelopeOptions,\n EphemeralKeyPair,\n EnsureAgentKeyOptions,\n RegisterEncryptionKeyPayload,\n RegisterEncryptionKeyResponse,\n SharedSecretInput,\n} from '../types';\nimport { registerEncryptionKeyResponseSchema } from '../schemas';\nimport { optionalImport } from '../../../utils/dynamic-import';\nimport type {\n RegistryBrokerClient,\n GenerateEncryptionKeyPairOptions,\n} from './base-client';\n\ntype FsModule = {\n existsSync: (path: string) => boolean;\n readFileSync: (path: string, encoding: BufferEncoding) => string;\n writeFileSync: (path: string, data: string) => void;\n appendFileSync: (path: string, data: string) => void;\n};\n\nconst getFs = async (): Promise<FsModule | null> => {\n const fsModule = await optionalImport<Partial<FsModule>>('node:fs');\n\n if (\n fsModule &&\n typeof fsModule.existsSync === 'function' &&\n typeof fsModule.readFileSync === 'function' &&\n typeof fsModule.writeFileSync === 'function' &&\n typeof fsModule.appendFileSync === 'function'\n ) {\n return fsModule as FsModule;\n }\n\n return null;\n};\n\nexport interface RegistryBrokerEncryptionApi {\n registerKey: (\n payload: RegisterEncryptionKeyPayload,\n ) => Promise<RegisterEncryptionKeyResponse>;\n generateEphemeralKeyPair: () => EphemeralKeyPair;\n deriveSharedSecret: (options: DeriveSharedSecretOptions) => Buffer;\n encryptCipherEnvelope: (\n options: EncryptCipherEnvelopeOptions,\n ) => CipherEnvelope;\n decryptCipherEnvelope: (options: DecryptCipherEnvelopeOptions) => string;\n ensureAgentKey: (\n options: EnsureAgentKeyOptions,\n ) => Promise<{ publicKey: string; privateKey?: string }>;\n}\n\nexport async function registerEncryptionKey(\n client: RegistryBrokerClient,\n payload: RegisterEncryptionKeyPayload,\n): Promise<RegisterEncryptionKeyResponse> {\n const raw = await client.requestJson('/encryption/keys', {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n registerEncryptionKeyResponseSchema,\n 'register encryption key response',\n );\n}\n\nfunction normalizeAutoRegisterIdentity(\n config: AutoRegisterEncryptionKeyOptions,\n): Pick<\n RegisterEncryptionKeyPayload,\n 'uaid' | 'ledgerAccountId' | 'ledgerNetwork' | 'email'\n> | null {\n const identity: Pick<\n RegisterEncryptionKeyPayload,\n 'uaid' | 'ledgerAccountId' | 'ledgerNetwork' | 'email'\n > = {};\n if (config.uaid) {\n identity.uaid = config.uaid;\n }\n if (config.ledgerAccountId) {\n identity.ledgerAccountId = config.ledgerAccountId;\n if (config.ledgerNetwork) {\n identity.ledgerNetwork = config.ledgerNetwork;\n }\n }\n if (config.email) {\n identity.email = config.email;\n }\n if (identity.uaid || identity.ledgerAccountId || identity.email) {\n return identity;\n }\n return null;\n}\n\nfunction derivePublicKeyFromPrivateKey(\n client: RegistryBrokerClient,\n privateKey: string,\n): string {\n const normalized = client.hexToBuffer(privateKey);\n const publicKey = secp256k1.getPublicKey(normalized, true);\n return Buffer.from(publicKey).toString('hex');\n}\n\nasync function resolveAutoRegisterKeyMaterial(\n client: RegistryBrokerClient,\n config: AutoRegisterEncryptionKeyOptions,\n): Promise<{ publicKey: string; privateKey?: string } | null> {\n if (config.publicKey?.trim()) {\n return { publicKey: config.publicKey.trim() };\n }\n let privateKey = config.privateKey?.trim();\n const envVar = config.envVar ?? 'RB_ENCRYPTION_PRIVATE_KEY';\n if (!privateKey && envVar && process?.env?.[envVar]?.trim()) {\n privateKey = process.env[envVar]?.trim();\n }\n if (!privateKey && config.generateIfMissing) {\n const pair = await client.generateEncryptionKeyPair({\n keyType: config.keyType ?? 'secp256k1',\n envVar,\n envPath: config.envPath,\n overwrite: config.overwriteEnv,\n });\n return { publicKey: pair.publicKey, privateKey: pair.privateKey };\n }\n if (privateKey) {\n const publicKey = derivePublicKeyFromPrivateKey(client, privateKey);\n return { publicKey, privateKey };\n }\n return null;\n}\n\nexport async function autoRegisterEncryptionKey(\n client: RegistryBrokerClient,\n config: AutoRegisterEncryptionKeyOptions,\n): Promise<{ publicKey: string; privateKey?: string }> {\n const identity = normalizeAutoRegisterIdentity(config);\n if (!identity) {\n throw new Error(\n 'Auto-registration requires uaid, ledgerAccountId, or email',\n );\n }\n const material = await resolveAutoRegisterKeyMaterial(client, config);\n if (!material) {\n throw new Error(\n 'Unable to resolve encryption public key for auto-registration',\n );\n }\n await registerEncryptionKey(client, {\n keyType: config.keyType ?? 'secp256k1',\n publicKey: material.publicKey,\n ...identity,\n });\n return material;\n}\n\nexport async function ensureAgentEncryptionKey(\n client: RegistryBrokerClient,\n options: EnsureAgentKeyOptions,\n): Promise<{ publicKey: string; privateKey?: string }> {\n return autoRegisterEncryptionKey(client, {\n ...options,\n uaid: options.uaid,\n enabled: true,\n });\n}\n\nexport function createEncryptionApi(\n client: RegistryBrokerClient,\n): RegistryBrokerEncryptionApi {\n return {\n registerKey: (payload: RegisterEncryptionKeyPayload) =>\n registerEncryptionKey(client, payload),\n generateEphemeralKeyPair: () => client.createEphemeralKeyPair(),\n deriveSharedSecret: (options: DeriveSharedSecretOptions) =>\n client.deriveSharedSecret(options),\n encryptCipherEnvelope: (options: EncryptCipherEnvelopeOptions) =>\n client.buildCipherEnvelope(options),\n decryptCipherEnvelope: (options: DecryptCipherEnvelopeOptions) =>\n client.openCipherEnvelope(options),\n ensureAgentKey: (options: EnsureAgentKeyOptions) =>\n ensureAgentEncryptionKey(client, options),\n };\n}\n\nexport async function bootstrapEncryptionOptions(\n client: RegistryBrokerClient,\n options?: ClientEncryptionOptions,\n): Promise<{ publicKey: string; privateKey?: string } | null> {\n if (!options?.autoRegister || options.autoRegister.enabled === false) {\n return null;\n }\n return autoRegisterEncryptionKey(client, options.autoRegister);\n}\n\nexport async function generateEncryptionKeyPair(\n client: RegistryBrokerClient,\n options: GenerateEncryptionKeyPairOptions = {},\n): Promise<{\n privateKey: string;\n publicKey: string;\n envPath?: string;\n envVar: string;\n}> {\n client.assertNodeRuntime('generateEncryptionKeyPair');\n\n const keyType = options.keyType ?? 'secp256k1';\n if (keyType !== 'secp256k1') {\n throw new Error('Only secp256k1 key generation is supported currently');\n }\n\n const privateKeyBytes = randomBytes(32);\n const privateKey = Buffer.from(privateKeyBytes).toString('hex');\n const publicKeyBytes = secp256k1.getPublicKey(privateKeyBytes, true);\n const publicKey = Buffer.from(publicKeyBytes).toString('hex');\n\n const envVar = options.envVar ?? 'RB_ENCRYPTION_PRIVATE_KEY';\n const resolvedPath = options.envPath\n ? path.resolve(options.envPath)\n : undefined;\n\n if (resolvedPath) {\n const fsModule = await getFs();\n\n if (!fsModule) {\n throw new Error(\n 'File system module is not available; cannot write encryption key env file',\n );\n }\n\n const envLine = `${envVar}=${privateKey}`;\n if (fsModule.existsSync(resolvedPath)) {\n const content = fsModule.readFileSync(resolvedPath, 'utf-8');\n const lineRegex = new RegExp(`^${envVar}=.*$`, 'm');\n if (lineRegex.test(content)) {\n if (!options.overwrite) {\n throw new Error(\n `${envVar} already exists in ${resolvedPath}; set overwrite=true to replace it`,\n );\n }\n const updated = content.replace(lineRegex, envLine);\n fsModule.writeFileSync(resolvedPath, updated);\n } else {\n const needsNewline = !content.endsWith('\\n');\n fsModule.appendFileSync(\n resolvedPath,\n `${needsNewline ? '\\n' : ''}${envLine}\\n`,\n );\n }\n } else {\n fsModule.writeFileSync(resolvedPath, `${envLine}\\n`);\n }\n }\n\n return {\n privateKey,\n publicKey,\n envPath: resolvedPath,\n envVar,\n };\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es160.js","sources":["../../src/hcs-5/base-client.ts"],"sourcesContent":["import { Logger, ILogger } from '../utils/logger';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS5ClientConfig } from './types';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Base client for HCS-5 operations\n */\nexport abstract class HCS5BaseClient {\n protected logger: ILogger;\n protected mirrorNode: HederaMirrorNode;\n protected network: NetworkType;\n\n /**\n * Create a new HCS-5 base client\n */\n constructor(config: HCS5ClientConfig) {\n this.network = config.network;\n this.logger =\n config.logger ||\n Logger.getInstance({\n level: config.logLevel || 'info',\n module: 'HCS5Client',\n silent: config.silent,\n });\n\n this.mirrorNode = new HederaMirrorNode(this.network, this.logger);\n }\n}\n"],"names":[],"mappings":";;AAQO,MAAe,eAAe;AAAA;AAAA;AAAA;AAAA,EAQnC,YAAY,QAA0B;AACpC,SAAK,UAAU,OAAO;AACtB,SAAK,SACH,OAAO,UACP,OAAO,YAAY;AAAA,MACjB,OAAO,OAAO,YAAY;AAAA,MAC1B,QAAQ;AAAA,MACR,QAAQ,OAAO;AAAA,IAAA,CAChB;AAEH,SAAK,aAAa,IAAI,iBAAiB,KAAK,SAAS,KAAK,MAAM;AAAA,EAClE;AACF;"}
|
|
@@ -1,225 +1,245 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
function buildVectorFallbackSearchParams(request) {
|
|
5
|
-
const params = {
|
|
6
|
-
q: request.query
|
|
7
|
-
};
|
|
8
|
-
let effectiveLimit;
|
|
9
|
-
if (typeof request.limit === "number" && Number.isFinite(request.limit)) {
|
|
10
|
-
effectiveLimit = request.limit;
|
|
11
|
-
params.limit = request.limit;
|
|
12
|
-
}
|
|
13
|
-
if (typeof request.offset === "number" && Number.isFinite(request.offset) && request.offset > 0) {
|
|
14
|
-
const limit = effectiveLimit && effectiveLimit > 0 ? effectiveLimit : 20;
|
|
15
|
-
params.limit = limit;
|
|
16
|
-
params.page = Math.floor(request.offset / limit) + 1;
|
|
17
|
-
}
|
|
18
|
-
if (request.filter?.registry) {
|
|
19
|
-
params.registry = request.filter.registry;
|
|
20
|
-
}
|
|
21
|
-
if (request.filter?.protocols?.length) {
|
|
22
|
-
params.protocols = [...request.filter.protocols];
|
|
23
|
-
}
|
|
24
|
-
if (request.filter?.adapter?.length) {
|
|
25
|
-
params.adapters = [...request.filter.adapter];
|
|
26
|
-
}
|
|
27
|
-
if (request.filter?.capabilities?.length) {
|
|
28
|
-
params.capabilities = request.filter.capabilities.map(
|
|
29
|
-
(value) => typeof value === "number" ? value.toString(10) : value
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
if (request.filter?.type) {
|
|
33
|
-
params.type = request.filter.type;
|
|
34
|
-
}
|
|
35
|
-
return params;
|
|
36
|
-
}
|
|
37
|
-
function convertSearchResultToVectorResponse(result) {
|
|
38
|
-
const hits = result.hits.map((agent) => ({
|
|
39
|
-
agent,
|
|
40
|
-
score: 0,
|
|
41
|
-
highlights: {}
|
|
42
|
-
}));
|
|
43
|
-
const total = result.total;
|
|
44
|
-
const limit = result.limit;
|
|
45
|
-
const page = result.page;
|
|
46
|
-
const totalVisible = page * limit;
|
|
47
|
-
const limited = total > totalVisible || page > 1;
|
|
48
|
-
return {
|
|
49
|
-
hits,
|
|
50
|
-
total,
|
|
51
|
-
took: 0,
|
|
52
|
-
totalAvailable: total,
|
|
53
|
-
visible: hits.length,
|
|
54
|
-
limited,
|
|
55
|
-
credits_used: 0
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
async function search(client, params = {}) {
|
|
59
|
-
const query = buildSearchQuery(params);
|
|
60
|
-
const raw = await client.requestJson(`/search${query}`, {
|
|
1
|
+
import { skillVerificationStatusResponseSchema, skillRegistryConfigResponseSchema, skillRegistryListResponseSchema, skillRegistryVersionsResponseSchema, skillRegistryMineResponseSchema, skillRegistryMyListResponseSchema, skillRegistryQuoteResponseSchema, skillRegistryPublishResponseSchema, skillRegistryJobStatusResponseSchema, skillRegistryOwnershipResponseSchema, skillRegistryVoteStatusResponseSchema, skillVerificationRequestCreateResponseSchema } from "./standards-sdk.es138.js";
|
|
2
|
+
async function skillsConfig(client) {
|
|
3
|
+
const raw = await client.requestJson("/skills/config", {
|
|
61
4
|
method: "GET"
|
|
62
5
|
});
|
|
63
|
-
return client.parseWithSchema(
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
6
|
+
return client.parseWithSchema(
|
|
7
|
+
raw,
|
|
8
|
+
skillRegistryConfigResponseSchema,
|
|
9
|
+
"skill registry config response"
|
|
10
|
+
);
|
|
68
11
|
}
|
|
69
|
-
async function
|
|
70
|
-
const
|
|
12
|
+
async function listSkills(client, params = {}) {
|
|
13
|
+
const query = new URLSearchParams();
|
|
14
|
+
if (params.name) {
|
|
15
|
+
query.set("name", params.name);
|
|
16
|
+
}
|
|
17
|
+
if (params.version) {
|
|
18
|
+
query.set("version", params.version);
|
|
19
|
+
}
|
|
20
|
+
if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
|
|
21
|
+
query.set("limit", String(Math.trunc(params.limit)));
|
|
22
|
+
}
|
|
23
|
+
if (params.cursor) {
|
|
24
|
+
query.set("cursor", params.cursor);
|
|
25
|
+
}
|
|
26
|
+
if (typeof params.includeFiles === "boolean") {
|
|
27
|
+
query.set("includeFiles", params.includeFiles ? "true" : "false");
|
|
28
|
+
}
|
|
29
|
+
if (params.accountId) {
|
|
30
|
+
query.set("accountId", params.accountId);
|
|
31
|
+
}
|
|
32
|
+
const suffix = query.size > 0 ? `?${query.toString()}` : "";
|
|
33
|
+
const raw = await client.requestJson(`/skills${suffix}`, {
|
|
71
34
|
method: "GET"
|
|
72
35
|
});
|
|
73
36
|
return client.parseWithSchema(
|
|
74
37
|
raw,
|
|
75
|
-
|
|
76
|
-
"
|
|
38
|
+
skillRegistryListResponseSchema,
|
|
39
|
+
"skill registry list response"
|
|
77
40
|
);
|
|
78
41
|
}
|
|
79
|
-
async function
|
|
42
|
+
async function listSkillVersions(client, params) {
|
|
43
|
+
const normalizedName = params.name.trim();
|
|
44
|
+
if (!normalizedName) {
|
|
45
|
+
throw new Error("name is required");
|
|
46
|
+
}
|
|
47
|
+
const query = new URLSearchParams();
|
|
48
|
+
query.set("name", normalizedName);
|
|
80
49
|
const raw = await client.requestJson(
|
|
81
|
-
|
|
82
|
-
{
|
|
83
|
-
method: "GET"
|
|
84
|
-
}
|
|
50
|
+
`/skills/versions?${query.toString()}`,
|
|
51
|
+
{ method: "GET" }
|
|
85
52
|
);
|
|
86
53
|
return client.parseWithSchema(
|
|
87
54
|
raw,
|
|
88
|
-
|
|
89
|
-
"
|
|
55
|
+
skillRegistryVersionsResponseSchema,
|
|
56
|
+
"skill registry versions response"
|
|
90
57
|
);
|
|
91
58
|
}
|
|
92
|
-
async function
|
|
93
|
-
const
|
|
59
|
+
async function listMySkills(client, params = {}) {
|
|
60
|
+
const query = new URLSearchParams();
|
|
61
|
+
if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
|
|
62
|
+
query.set("limit", String(Math.trunc(params.limit)));
|
|
63
|
+
}
|
|
64
|
+
const suffix = query.size > 0 ? `?${query.toString()}` : "";
|
|
65
|
+
const raw = await client.requestJson(`/skills/mine${suffix}`, {
|
|
94
66
|
method: "GET"
|
|
95
67
|
});
|
|
96
68
|
return client.parseWithSchema(
|
|
97
69
|
raw,
|
|
98
|
-
|
|
99
|
-
"
|
|
70
|
+
skillRegistryMineResponseSchema,
|
|
71
|
+
"skill registry mine response"
|
|
100
72
|
);
|
|
101
73
|
}
|
|
102
|
-
async function
|
|
103
|
-
const
|
|
74
|
+
async function getMySkillsList(client, params = {}) {
|
|
75
|
+
const query = new URLSearchParams();
|
|
76
|
+
if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
|
|
77
|
+
query.set("limit", String(Math.trunc(params.limit)));
|
|
78
|
+
}
|
|
79
|
+
if (params.cursor) {
|
|
80
|
+
query.set("cursor", params.cursor);
|
|
81
|
+
}
|
|
82
|
+
if (params.accountId) {
|
|
83
|
+
query.set("accountId", params.accountId);
|
|
84
|
+
}
|
|
85
|
+
const suffix = query.size > 0 ? `?${query.toString()}` : "";
|
|
86
|
+
const raw = await client.requestJson(`/skills/my-list${suffix}`, {
|
|
104
87
|
method: "GET"
|
|
105
88
|
});
|
|
106
89
|
return client.parseWithSchema(
|
|
107
90
|
raw,
|
|
108
|
-
|
|
109
|
-
"
|
|
91
|
+
skillRegistryMyListResponseSchema,
|
|
92
|
+
"skill registry my list response"
|
|
110
93
|
);
|
|
111
94
|
}
|
|
112
|
-
async function
|
|
113
|
-
const raw = await client.requestJson("/
|
|
95
|
+
async function quoteSkillPublish(client, payload) {
|
|
96
|
+
const raw = await client.requestJson("/skills/quote", {
|
|
114
97
|
method: "POST",
|
|
115
|
-
body:
|
|
98
|
+
body: payload,
|
|
116
99
|
headers: { "content-type": "application/json" }
|
|
117
100
|
});
|
|
118
101
|
return client.parseWithSchema(
|
|
119
102
|
raw,
|
|
120
|
-
|
|
121
|
-
"
|
|
103
|
+
skillRegistryQuoteResponseSchema,
|
|
104
|
+
"skill registry quote response"
|
|
122
105
|
);
|
|
123
106
|
}
|
|
124
|
-
async function
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
|
|
107
|
+
async function publishSkill(client, payload) {
|
|
108
|
+
const raw = await client.requestJson("/skills/publish", {
|
|
109
|
+
method: "POST",
|
|
110
|
+
body: payload,
|
|
111
|
+
headers: { "content-type": "application/json" }
|
|
112
|
+
});
|
|
113
|
+
return client.parseWithSchema(
|
|
114
|
+
raw,
|
|
115
|
+
skillRegistryPublishResponseSchema,
|
|
116
|
+
"skill registry publish response"
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
async function getSkillPublishJob(client, jobId, params = {}) {
|
|
120
|
+
const normalized = jobId.trim();
|
|
121
|
+
if (!normalized) {
|
|
122
|
+
throw new Error("jobId is required");
|
|
123
|
+
}
|
|
124
|
+
const query = new URLSearchParams();
|
|
125
|
+
if (params.accountId) {
|
|
126
|
+
query.set("accountId", params.accountId);
|
|
128
127
|
}
|
|
129
|
-
const suffix =
|
|
128
|
+
const suffix = query.size > 0 ? `?${query.toString()}` : "";
|
|
130
129
|
const raw = await client.requestJson(
|
|
131
|
-
`/
|
|
130
|
+
`/skills/jobs/${encodeURIComponent(normalized)}${suffix}`,
|
|
131
|
+
{ method: "GET" }
|
|
132
|
+
);
|
|
133
|
+
return client.parseWithSchema(
|
|
134
|
+
raw,
|
|
135
|
+
skillRegistryJobStatusResponseSchema,
|
|
136
|
+
"skill registry job status response"
|
|
137
|
+
);
|
|
138
|
+
}
|
|
139
|
+
async function getSkillOwnership(client, params) {
|
|
140
|
+
const normalizedName = params.name.trim();
|
|
141
|
+
if (!normalizedName) {
|
|
142
|
+
throw new Error("name is required");
|
|
143
|
+
}
|
|
144
|
+
const query = new URLSearchParams();
|
|
145
|
+
query.set("name", normalizedName);
|
|
146
|
+
if (params.accountId) {
|
|
147
|
+
query.set("accountId", params.accountId);
|
|
148
|
+
}
|
|
149
|
+
const raw = await client.requestJson(
|
|
150
|
+
`/skills/ownership?${query.toString()}`,
|
|
132
151
|
{
|
|
133
152
|
method: "GET"
|
|
134
153
|
}
|
|
135
154
|
);
|
|
136
155
|
return client.parseWithSchema(
|
|
137
156
|
raw,
|
|
138
|
-
|
|
139
|
-
"registry
|
|
157
|
+
skillRegistryOwnershipResponseSchema,
|
|
158
|
+
"skill registry ownership response"
|
|
140
159
|
);
|
|
141
160
|
}
|
|
142
|
-
async function
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
body: request,
|
|
147
|
-
headers: { "content-type": "application/json" }
|
|
148
|
-
});
|
|
149
|
-
return client.parseWithSchema(
|
|
150
|
-
raw,
|
|
151
|
-
vectorSearchResponseSchema,
|
|
152
|
-
"vector search response"
|
|
153
|
-
);
|
|
154
|
-
} catch (error) {
|
|
155
|
-
if (error instanceof RegistryBrokerError && error.status === 501) {
|
|
156
|
-
const fallback = await search(
|
|
157
|
-
client,
|
|
158
|
-
buildVectorFallbackSearchParams(request)
|
|
159
|
-
);
|
|
160
|
-
return convertSearchResultToVectorResponse(fallback);
|
|
161
|
-
}
|
|
162
|
-
throw error;
|
|
161
|
+
async function getSkillVoteStatus(client, params) {
|
|
162
|
+
const normalizedName = params.name.trim();
|
|
163
|
+
if (!normalizedName) {
|
|
164
|
+
throw new Error("name is required");
|
|
163
165
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
const raw = await client.requestJson(
|
|
167
|
-
|
|
168
|
-
|
|
166
|
+
const query = new URLSearchParams();
|
|
167
|
+
query.set("name", normalizedName);
|
|
168
|
+
const raw = await client.requestJson(
|
|
169
|
+
`/skills/vote?${query.toString()}`,
|
|
170
|
+
{ method: "GET" }
|
|
171
|
+
);
|
|
169
172
|
return client.parseWithSchema(
|
|
170
173
|
raw,
|
|
171
|
-
|
|
172
|
-
"
|
|
174
|
+
skillRegistryVoteStatusResponseSchema,
|
|
175
|
+
"skill registry vote status response"
|
|
173
176
|
);
|
|
174
177
|
}
|
|
175
|
-
async function
|
|
176
|
-
const
|
|
177
|
-
|
|
178
|
+
async function setSkillVote(client, payload) {
|
|
179
|
+
const normalizedName = payload.name.trim();
|
|
180
|
+
if (!normalizedName) {
|
|
181
|
+
throw new Error("name is required");
|
|
182
|
+
}
|
|
183
|
+
const raw = await client.requestJson("/skills/vote", {
|
|
184
|
+
method: "POST",
|
|
185
|
+
body: { name: normalizedName, upvoted: payload.upvoted },
|
|
186
|
+
headers: { "content-type": "application/json" }
|
|
178
187
|
});
|
|
179
188
|
return client.parseWithSchema(
|
|
180
189
|
raw,
|
|
181
|
-
|
|
182
|
-
"
|
|
190
|
+
skillRegistryVoteStatusResponseSchema,
|
|
191
|
+
"skill registry vote status response"
|
|
183
192
|
);
|
|
184
193
|
}
|
|
185
|
-
async function
|
|
186
|
-
const
|
|
187
|
-
|
|
188
|
-
|
|
194
|
+
async function requestSkillVerification(client, payload) {
|
|
195
|
+
const normalizedName = payload.name.trim();
|
|
196
|
+
if (!normalizedName) {
|
|
197
|
+
throw new Error("name is required");
|
|
198
|
+
}
|
|
199
|
+
const raw = await client.requestJson(
|
|
200
|
+
"/skills/verification/request",
|
|
201
|
+
{
|
|
202
|
+
method: "POST",
|
|
203
|
+
body: { name: normalizedName, tier: payload.tier },
|
|
204
|
+
headers: { "content-type": "application/json" }
|
|
205
|
+
}
|
|
206
|
+
);
|
|
189
207
|
return client.parseWithSchema(
|
|
190
208
|
raw,
|
|
191
|
-
|
|
192
|
-
"
|
|
209
|
+
skillVerificationRequestCreateResponseSchema,
|
|
210
|
+
"skill verification request create response"
|
|
193
211
|
);
|
|
194
212
|
}
|
|
195
|
-
async function
|
|
196
|
-
const
|
|
197
|
-
if (
|
|
198
|
-
|
|
213
|
+
async function getSkillVerificationStatus(client, params) {
|
|
214
|
+
const normalizedName = params.name.trim();
|
|
215
|
+
if (!normalizedName) {
|
|
216
|
+
throw new Error("name is required");
|
|
199
217
|
}
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
218
|
+
const query = new URLSearchParams();
|
|
219
|
+
query.set("name", normalizedName);
|
|
220
|
+
const raw = await client.requestJson(
|
|
221
|
+
`/skills/verification/status?${query.toString()}`,
|
|
222
|
+
{ method: "GET" }
|
|
223
|
+
);
|
|
204
224
|
return client.parseWithSchema(
|
|
205
225
|
raw,
|
|
206
|
-
|
|
207
|
-
"
|
|
226
|
+
skillVerificationStatusResponseSchema,
|
|
227
|
+
"skill verification status response"
|
|
208
228
|
);
|
|
209
229
|
}
|
|
210
230
|
export {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
231
|
+
getMySkillsList,
|
|
232
|
+
getSkillOwnership,
|
|
233
|
+
getSkillPublishJob,
|
|
234
|
+
getSkillVerificationStatus,
|
|
235
|
+
getSkillVoteStatus,
|
|
236
|
+
listMySkills,
|
|
237
|
+
listSkillVersions,
|
|
238
|
+
listSkills,
|
|
239
|
+
publishSkill,
|
|
240
|
+
quoteSkillPublish,
|
|
241
|
+
requestSkillVerification,
|
|
242
|
+
setSkillVote,
|
|
243
|
+
skillsConfig
|
|
224
244
|
};
|
|
225
245
|
//# sourceMappingURL=standards-sdk.es161.js.map
|