@hashgraphonline/standards-sdk 0.1.161 → 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 +21 -0
- package/dist/cjs/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/cjs/hcs-14/resolvers/types.d.ts +40 -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 +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 +23 -1
- package/dist/cjs/hcs-14/sdk.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-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 +21 -0
- package/dist/es/hcs-14/resolvers/registry.d.ts.map +1 -1
- package/dist/es/hcs-14/resolvers/types.d.ts +40 -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 +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 +23 -1
- package/dist/es/hcs-14/sdk.d.ts.map +1 -1
- package/dist/es/standards-sdk.es.js +89 -86
- package/dist/es/standards-sdk.es.js.map +1 -1
- package/dist/es/standards-sdk.es100.js +136 -124
- package/dist/es/standards-sdk.es100.js.map +1 -1
- package/dist/es/standards-sdk.es101.js +138 -42
- package/dist/es/standards-sdk.es101.js.map +1 -1
- package/dist/es/standards-sdk.es102.js +43 -259
- package/dist/es/standards-sdk.es102.js.map +1 -1
- package/dist/es/standards-sdk.es103.js +245 -82
- package/dist/es/standards-sdk.es103.js.map +1 -1
- package/dist/es/standards-sdk.es104.js +50 -49
- package/dist/es/standards-sdk.es104.js.map +1 -1
- package/dist/es/standards-sdk.es105.js +100 -29
- package/dist/es/standards-sdk.es105.js.map +1 -1
- package/dist/es/standards-sdk.es106.js +27 -229
- package/dist/es/standards-sdk.es106.js.map +1 -1
- package/dist/es/standards-sdk.es107.js +228 -109
- package/dist/es/standards-sdk.es107.js.map +1 -1
- package/dist/es/standards-sdk.es108.js +94 -15
- package/dist/es/standards-sdk.es108.js.map +1 -1
- package/dist/es/standards-sdk.es109.js +30 -80
- 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 -27
- package/dist/es/standards-sdk.es110.js.map +1 -1
- package/dist/es/standards-sdk.es111.js +27 -248
- package/dist/es/standards-sdk.es111.js.map +1 -1
- package/dist/es/standards-sdk.es112.js +246 -472
- package/dist/es/standards-sdk.es112.js.map +1 -1
- package/dist/es/standards-sdk.es113.js +458 -85
- package/dist/es/standards-sdk.es113.js.map +1 -1
- package/dist/es/standards-sdk.es114.js +96 -151
- package/dist/es/standards-sdk.es114.js.map +1 -1
- package/dist/es/standards-sdk.es115.js +155 -29
- package/dist/es/standards-sdk.es115.js.map +1 -1
- package/dist/es/standards-sdk.es116.js +26 -4
- package/dist/es/standards-sdk.es116.js.map +1 -1
- package/dist/es/standards-sdk.es117.js +10 -140
- package/dist/es/standards-sdk.es117.js.map +1 -1
- package/dist/es/standards-sdk.es118.js +140 -27
- package/dist/es/standards-sdk.es118.js.map +1 -1
- package/dist/es/standards-sdk.es119.js +27 -20
- 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 +18 -156
- package/dist/es/standards-sdk.es120.js.map +1 -1
- package/dist/es/standards-sdk.es121.js +148 -191
- package/dist/es/standards-sdk.es121.js.map +1 -1
- package/dist/es/standards-sdk.es122.js +160 -747
- package/dist/es/standards-sdk.es122.js.map +1 -1
- package/dist/es/standards-sdk.es123.js +786 -9
- package/dist/es/standards-sdk.es123.js.map +1 -1
- package/dist/es/standards-sdk.es124.js +13 -567
- package/dist/es/standards-sdk.es124.js.map +1 -1
- package/dist/es/standards-sdk.es125.js +541 -576
- package/dist/es/standards-sdk.es125.js.map +1 -1
- package/dist/es/standards-sdk.es126.js +601 -12
- package/dist/es/standards-sdk.es126.js.map +1 -1
- package/dist/es/standards-sdk.es127.js +13 -2
- package/dist/es/standards-sdk.es127.js.map +1 -1
- package/dist/es/standards-sdk.es128.js +2 -87
- package/dist/es/standards-sdk.es128.js.map +1 -1
- package/dist/es/standards-sdk.es129.js +84 -37
- 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 +40 -2
- package/dist/es/standards-sdk.es130.js.map +1 -1
- package/dist/es/standards-sdk.es131.js +2 -235
- package/dist/es/standards-sdk.es131.js.map +1 -1
- package/dist/es/standards-sdk.es132.js +204 -1109
- package/dist/es/standards-sdk.es132.js.map +1 -1
- package/dist/es/standards-sdk.es133.js +1059 -225
- package/dist/es/standards-sdk.es133.js.map +1 -1
- package/dist/es/standards-sdk.es134.js +303 -419
- package/dist/es/standards-sdk.es134.js.map +1 -1
- package/dist/es/standards-sdk.es135.js +418 -351
- package/dist/es/standards-sdk.es135.js.map +1 -1
- package/dist/es/standards-sdk.es136.js +347 -1108
- package/dist/es/standards-sdk.es136.js.map +1 -1
- package/dist/es/standards-sdk.es137.js +1088 -180
- package/dist/es/standards-sdk.es137.js.map +1 -1
- package/dist/es/standards-sdk.es138.js +153 -1512
- package/dist/es/standards-sdk.es138.js.map +1 -1
- package/dist/es/standards-sdk.es139.js +1567 -1255
- 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 +1255 -17
- package/dist/es/standards-sdk.es140.js.map +1 -1
- package/dist/es/standards-sdk.es141.js +15 -85
- package/dist/es/standards-sdk.es141.js.map +1 -1
- package/dist/es/standards-sdk.es142.js +77 -71
- package/dist/es/standards-sdk.es142.js.map +1 -1
- package/dist/es/standards-sdk.es143.js +79 -891
- package/dist/es/standards-sdk.es143.js.map +1 -1
- package/dist/es/standards-sdk.es144.js +886 -53
- package/dist/es/standards-sdk.es144.js.map +1 -1
- package/dist/es/standards-sdk.es145.js +53 -152
- package/dist/es/standards-sdk.es145.js.map +1 -1
- package/dist/es/standards-sdk.es146.js +159 -7
- package/dist/es/standards-sdk.es146.js.map +1 -1
- package/dist/es/standards-sdk.es147.js +7 -86
- package/dist/es/standards-sdk.es147.js.map +1 -1
- package/dist/es/standards-sdk.es148.js +65 -44
- package/dist/es/standards-sdk.es148.js.map +1 -1
- package/dist/es/standards-sdk.es149.js +65 -30
- 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 -34
- package/dist/es/standards-sdk.es150.js.map +1 -1
- package/dist/es/standards-sdk.es151.js +34 -45
- package/dist/es/standards-sdk.es151.js.map +1 -1
- package/dist/es/standards-sdk.es152.js +48 -138
- package/dist/es/standards-sdk.es152.js.map +1 -1
- package/dist/es/standards-sdk.es153.js +133 -37
- package/dist/es/standards-sdk.es153.js.map +1 -1
- package/dist/es/standards-sdk.es154.js +34 -12474
- package/dist/es/standards-sdk.es154.js.map +1 -1
- package/dist/es/standards-sdk.es155.js +12477 -12
- package/dist/es/standards-sdk.es155.js.map +1 -1
- package/dist/es/standards-sdk.es156.js +15 -54
- package/dist/es/standards-sdk.es156.js.map +1 -1
- package/dist/es/standards-sdk.es157.js +48 -76
- package/dist/es/standards-sdk.es157.js.map +1 -1
- package/dist/es/standards-sdk.es158.js +69 -66
- package/dist/es/standards-sdk.es158.js.map +1 -1
- package/dist/es/standards-sdk.es159.js +71 -63
- 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 +188 -160
- package/dist/es/standards-sdk.es160.js.map +1 -1
- package/dist/es/standards-sdk.es161.js +65 -314
- package/dist/es/standards-sdk.es161.js.map +1 -1
- package/dist/es/standards-sdk.es162.js +232 -336
- package/dist/es/standards-sdk.es162.js.map +1 -1
- package/dist/es/standards-sdk.es163.js +129 -410
- package/dist/es/standards-sdk.es163.js.map +1 -1
- package/dist/es/standards-sdk.es164.js +200 -209
- package/dist/es/standards-sdk.es164.js.map +1 -1
- package/dist/es/standards-sdk.es165.js +334 -64
- package/dist/es/standards-sdk.es165.js.map +1 -1
- package/dist/es/standards-sdk.es166.js +442 -231
- package/dist/es/standards-sdk.es166.js.map +1 -1
- package/dist/es/standards-sdk.es167.js +317 -158
- package/dist/es/standards-sdk.es167.js.map +1 -1
- package/dist/es/standards-sdk.es168.js +61 -207
- package/dist/es/standards-sdk.es168.js.map +1 -1
- package/dist/es/standards-sdk.es169.js +155 -222
- package/dist/es/standards-sdk.es169.js.map +1 -1
- package/dist/es/standards-sdk.es170.js +178 -75
- package/dist/es/standards-sdk.es170.js.map +1 -1
- package/dist/es/standards-sdk.es171.js +226 -113
- package/dist/es/standards-sdk.es171.js.map +1 -1
- package/dist/es/standards-sdk.es172.js +77 -119
- package/dist/es/standards-sdk.es172.js.map +1 -1
- package/dist/es/standards-sdk.es173.js +103 -162
- package/dist/es/standards-sdk.es173.js.map +1 -1
- package/dist/es/standards-sdk.es174.js +141 -119
- package/dist/es/standards-sdk.es174.js.map +1 -1
- package/dist/es/standards-sdk.es175.js +152 -298
- package/dist/es/standards-sdk.es175.js.map +1 -1
- package/dist/es/standards-sdk.es176.js +120 -240
- package/dist/es/standards-sdk.es176.js.map +1 -1
- package/dist/es/standards-sdk.es177.js +298 -83
- package/dist/es/standards-sdk.es177.js.map +1 -1
- 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 +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 +37 -4
- package/dist/es/standards-sdk.es58.js.map +1 -1
- package/dist/es/standards-sdk.es59.js +17 -10
- 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 +2 -1
- package/dist/es/standards-sdk.es60.js.map +1 -1
- package/dist/es/standards-sdk.es61.js +1 -0
- package/dist/es/standards-sdk.es61.js.map +1 -1
- package/dist/es/standards-sdk.es62.js +19 -5
- package/dist/es/standards-sdk.es62.js.map +1 -1
- package/dist/es/standards-sdk.es63.js +214 -153
- package/dist/es/standards-sdk.es63.js.map +1 -1
- package/dist/es/standards-sdk.es64.js +205 -84
- package/dist/es/standards-sdk.es64.js.map +1 -1
- package/dist/es/standards-sdk.es65.js +125 -40
- package/dist/es/standards-sdk.es65.js.map +1 -1
- package/dist/es/standards-sdk.es66.js +41 -261
- package/dist/es/standards-sdk.es66.js.map +1 -1
- package/dist/es/standards-sdk.es67.js +262 -24
- package/dist/es/standards-sdk.es67.js.map +1 -1
- package/dist/es/standards-sdk.es68.js +25 -87
- package/dist/es/standards-sdk.es68.js.map +1 -1
- package/dist/es/standards-sdk.es69.js +95 -3
- 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 -100
- package/dist/es/standards-sdk.es70.js.map +1 -1
- package/dist/es/standards-sdk.es71.js +62 -61
- package/dist/es/standards-sdk.es71.js.map +1 -1
- package/dist/es/standards-sdk.es72.js +98 -17
- package/dist/es/standards-sdk.es72.js.map +1 -1
- package/dist/es/standards-sdk.es73.js +19 -77
- package/dist/es/standards-sdk.es73.js.map +1 -1
- package/dist/es/standards-sdk.es74.js +77 -458
- package/dist/es/standards-sdk.es74.js.map +1 -1
- package/dist/es/standards-sdk.es75.js +240 -106
- package/dist/es/standards-sdk.es75.js.map +1 -1
- package/dist/es/standards-sdk.es76.js +286 -170
- package/dist/es/standards-sdk.es76.js.map +1 -1
- package/dist/es/standards-sdk.es77.js +207 -71
- package/dist/es/standards-sdk.es77.js.map +1 -1
- package/dist/es/standards-sdk.es78.js +72 -71
- package/dist/es/standards-sdk.es78.js.map +1 -1
- package/dist/es/standards-sdk.es79.js +71 -143
- package/dist/es/standards-sdk.es79.js.map +1 -1
- package/dist/es/standards-sdk.es80.js +136 -62
- package/dist/es/standards-sdk.es80.js.map +1 -1
- package/dist/es/standards-sdk.es81.js +45 -380
- package/dist/es/standards-sdk.es81.js.map +1 -1
- package/dist/es/standards-sdk.es82.js +130 -222
- package/dist/es/standards-sdk.es82.js.map +1 -1
- package/dist/es/standards-sdk.es83.js +444 -313
- package/dist/es/standards-sdk.es83.js.map +1 -1
- package/dist/es/standards-sdk.es84.js +364 -88
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es85.js +89 -125
- package/dist/es/standards-sdk.es85.js.map +1 -1
- package/dist/es/standards-sdk.es86.js +125 -8
- package/dist/es/standards-sdk.es86.js.map +1 -1
- package/dist/es/standards-sdk.es87.js +6 -45
- package/dist/es/standards-sdk.es87.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +44 -98
- package/dist/es/standards-sdk.es88.js.map +1 -1
- package/dist/es/standards-sdk.es89.js +84 -331
- 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 +160 -93
- package/dist/es/standards-sdk.es90.js.map +1 -1
- package/dist/es/standards-sdk.es91.js +275 -55
- package/dist/es/standards-sdk.es91.js.map +1 -1
- package/dist/es/standards-sdk.es92.js +55 -43
- package/dist/es/standards-sdk.es92.js.map +1 -1
- package/dist/es/standards-sdk.es93.js +44 -145
- package/dist/es/standards-sdk.es93.js.map +1 -1
- package/dist/es/standards-sdk.es94.js +113 -30
- package/dist/es/standards-sdk.es94.js.map +1 -1
- package/dist/es/standards-sdk.es95.js +59 -22
- package/dist/es/standards-sdk.es95.js.map +1 -1
- package/dist/es/standards-sdk.es96.js +28 -23
- package/dist/es/standards-sdk.es96.js.map +1 -1
- package/dist/es/standards-sdk.es97.js +23 -238
- package/dist/es/standards-sdk.es97.js.map +1 -1
- package/dist/es/standards-sdk.es98.js +225 -267
- package/dist/es/standards-sdk.es98.js.map +1 -1
- package/dist/es/standards-sdk.es99.js +220 -95
- package/dist/es/standards-sdk.es99.js.map +1 -1
- package/package.json +5 -1
|
@@ -1,146 +1,74 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
class InsufficientBalanceError extends HCS20Error {
|
|
66
|
-
constructor(accountId, tick, required, available) {
|
|
67
|
-
super(
|
|
68
|
-
`Insufficient balance for ${tick}: required ${required}, available ${available}`
|
|
69
|
-
);
|
|
70
|
-
this.accountId = accountId;
|
|
71
|
-
this.tick = tick;
|
|
72
|
-
this.required = required;
|
|
73
|
-
this.available = available;
|
|
74
|
-
this.name = "InsufficientBalanceError";
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
class SupplyLimitExceededError extends HCS20Error {
|
|
78
|
-
constructor(tick, requested, maxSupply, currentSupply) {
|
|
79
|
-
super(
|
|
80
|
-
`Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`
|
|
81
|
-
);
|
|
82
|
-
this.tick = tick;
|
|
83
|
-
this.requested = requested;
|
|
84
|
-
this.maxSupply = maxSupply;
|
|
85
|
-
this.currentSupply = currentSupply;
|
|
86
|
-
this.name = "SupplyLimitExceededError";
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
class MintLimitExceededError extends HCS20Error {
|
|
90
|
-
constructor(tick, requested, limit) {
|
|
91
|
-
super(
|
|
92
|
-
`Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`
|
|
93
|
-
);
|
|
94
|
-
this.tick = tick;
|
|
95
|
-
this.requested = requested;
|
|
96
|
-
this.limit = limit;
|
|
97
|
-
this.name = "MintLimitExceededError";
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
class InvalidMessageFormatError extends HCS20Error {
|
|
101
|
-
constructor(message, messageData) {
|
|
102
|
-
super(message);
|
|
103
|
-
this.messageData = messageData;
|
|
104
|
-
this.name = "InvalidMessageFormatError";
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
class InvalidAccountFormatError extends HCS20Error {
|
|
108
|
-
constructor(account) {
|
|
109
|
-
super(`Invalid Hedera account format: ${account}`);
|
|
110
|
-
this.account = account;
|
|
111
|
-
this.name = "InvalidAccountFormatError";
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
class InvalidTickFormatError extends HCS20Error {
|
|
115
|
-
constructor(tick) {
|
|
116
|
-
super(`Invalid tick format: ${tick}`);
|
|
117
|
-
this.tick = tick;
|
|
118
|
-
this.name = "InvalidTickFormatError";
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
class InvalidNumberFormatError extends HCS20Error {
|
|
122
|
-
constructor(value, field) {
|
|
123
|
-
super(`Invalid number format for ${field}: ${value}`);
|
|
124
|
-
this.value = value;
|
|
125
|
-
this.field = field;
|
|
126
|
-
this.name = "InvalidNumberFormatError";
|
|
127
|
-
}
|
|
128
|
-
}
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
const HCS20_CONSTANTS = {
|
|
3
|
+
PROTOCOL: "hcs-20",
|
|
4
|
+
PUBLIC_TOPIC_ID: "0.0.4350190",
|
|
5
|
+
REGISTRY_TOPIC_ID: "0.0.4362300",
|
|
6
|
+
MAX_NUMBER_LENGTH: 18,
|
|
7
|
+
MAX_NAME_LENGTH: 100,
|
|
8
|
+
MAX_METADATA_LENGTH: 100,
|
|
9
|
+
HEDERA_ACCOUNT_REGEX: /^(0|(?:[1-9]\d*))\.(0|(?:[1-9]\d*))\.(0|(?:[1-9]\d*))$/
|
|
10
|
+
};
|
|
11
|
+
const HederaAccountIdSchema = z.string().regex(
|
|
12
|
+
HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX,
|
|
13
|
+
"Invalid Hedera account ID format"
|
|
14
|
+
);
|
|
15
|
+
const NumberStringSchema = z.string().regex(/^\d+$/, "Must be a valid number").max(
|
|
16
|
+
HCS20_CONSTANTS.MAX_NUMBER_LENGTH,
|
|
17
|
+
`Max ${HCS20_CONSTANTS.MAX_NUMBER_LENGTH} digits`
|
|
18
|
+
);
|
|
19
|
+
const TickSchema = z.string().min(1, "Tick cannot be empty").transform((val) => val.toLowerCase().trim());
|
|
20
|
+
const HCS20BaseMessageSchema = z.object({
|
|
21
|
+
p: z.literal("hcs-20"),
|
|
22
|
+
m: z.string().optional()
|
|
23
|
+
});
|
|
24
|
+
const HCS20DeployMessageSchema = HCS20BaseMessageSchema.extend({
|
|
25
|
+
op: z.literal("deploy"),
|
|
26
|
+
name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),
|
|
27
|
+
tick: TickSchema,
|
|
28
|
+
max: NumberStringSchema,
|
|
29
|
+
lim: NumberStringSchema.optional(),
|
|
30
|
+
metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional()
|
|
31
|
+
});
|
|
32
|
+
const HCS20MintMessageSchema = HCS20BaseMessageSchema.extend({
|
|
33
|
+
op: z.literal("mint"),
|
|
34
|
+
tick: TickSchema,
|
|
35
|
+
amt: NumberStringSchema,
|
|
36
|
+
to: HederaAccountIdSchema
|
|
37
|
+
});
|
|
38
|
+
const HCS20BurnMessageSchema = HCS20BaseMessageSchema.extend({
|
|
39
|
+
op: z.literal("burn"),
|
|
40
|
+
tick: TickSchema,
|
|
41
|
+
amt: NumberStringSchema,
|
|
42
|
+
from: HederaAccountIdSchema
|
|
43
|
+
});
|
|
44
|
+
const HCS20TransferMessageSchema = HCS20BaseMessageSchema.extend({
|
|
45
|
+
op: z.literal("transfer"),
|
|
46
|
+
tick: TickSchema,
|
|
47
|
+
amt: NumberStringSchema,
|
|
48
|
+
from: HederaAccountIdSchema,
|
|
49
|
+
to: HederaAccountIdSchema
|
|
50
|
+
});
|
|
51
|
+
const HCS20RegisterMessageSchema = HCS20BaseMessageSchema.extend({
|
|
52
|
+
op: z.literal("register"),
|
|
53
|
+
name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),
|
|
54
|
+
metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),
|
|
55
|
+
private: z.boolean(),
|
|
56
|
+
t_id: HederaAccountIdSchema
|
|
57
|
+
});
|
|
58
|
+
const HCS20MessageSchema = z.discriminatedUnion("op", [
|
|
59
|
+
HCS20DeployMessageSchema,
|
|
60
|
+
HCS20MintMessageSchema,
|
|
61
|
+
HCS20BurnMessageSchema,
|
|
62
|
+
HCS20TransferMessageSchema,
|
|
63
|
+
HCS20RegisterMessageSchema
|
|
64
|
+
]);
|
|
129
65
|
export {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
PointsBurnError,
|
|
138
|
-
PointsDeploymentError,
|
|
139
|
-
PointsMintError,
|
|
140
|
-
PointsNotFoundError,
|
|
141
|
-
PointsTransferError,
|
|
142
|
-
PointsValidationError,
|
|
143
|
-
SupplyLimitExceededError,
|
|
144
|
-
TopicRegistrationError
|
|
66
|
+
HCS20BurnMessageSchema,
|
|
67
|
+
HCS20DeployMessageSchema,
|
|
68
|
+
HCS20MessageSchema,
|
|
69
|
+
HCS20MintMessageSchema,
|
|
70
|
+
HCS20RegisterMessageSchema,
|
|
71
|
+
HCS20TransferMessageSchema,
|
|
72
|
+
HCS20_CONSTANTS
|
|
145
73
|
};
|
|
146
74
|
//# sourceMappingURL=standards-sdk.es79.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es79.js","sources":["../../src/hcs-20/errors.ts"],"sourcesContent":["/**\n * HCS-20 Specific Error Classes\n */\n\n/**\n * Base error class for HCS-20 operations\n */\nexport class HCS20Error extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'HCS20Error';\n }\n}\n\n/**\n * Error thrown when points deployment fails\n */\nexport class PointsDeploymentError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick?: string,\n ) {\n super(message);\n this.name = 'PointsDeploymentError';\n }\n}\n\n/**\n * Error thrown when points minting fails\n */\nexport class PointsMintError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly requestedAmount: string,\n public readonly availableSupply?: string,\n ) {\n super(message);\n this.name = 'PointsMintError';\n }\n}\n\n/**\n * Error thrown when points transfer fails\n */\nexport class PointsTransferError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly to: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsTransferError';\n }\n}\n\n/**\n * Error thrown when points burn fails\n */\nexport class PointsBurnError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsBurnError';\n }\n}\n\n/**\n * Error thrown when points validation fails\n */\nexport class PointsValidationError extends HCS20Error {\n constructor(\n message: string,\n public readonly validationErrors: string[],\n ) {\n super(message);\n this.name = 'PointsValidationError';\n }\n}\n\n/**\n * Error thrown when points are not found\n */\nexport class PointsNotFoundError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Points with tick \"${tick}\" not found`);\n this.name = 'PointsNotFoundError';\n }\n}\n\n/**\n * Error thrown when topic registration fails\n */\nexport class TopicRegistrationError extends HCS20Error {\n constructor(\n message: string,\n public readonly topicId: string,\n ) {\n super(message);\n this.name = 'TopicRegistrationError';\n }\n}\n\n/**\n * Error thrown when insufficient balance\n */\nexport class InsufficientBalanceError extends HCS20Error {\n constructor(\n public readonly accountId: string,\n public readonly tick: string,\n public readonly required: string,\n public readonly available: string,\n ) {\n super(\n `Insufficient balance for ${tick}: required ${required}, available ${available}`,\n );\n this.name = 'InsufficientBalanceError';\n }\n}\n\n/**\n * Error thrown when supply limit is exceeded\n */\nexport class SupplyLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly maxSupply: string,\n public readonly currentSupply: string,\n ) {\n super(\n `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`,\n );\n this.name = 'SupplyLimitExceededError';\n }\n}\n\n/**\n * Error thrown when mint limit is exceeded\n */\nexport class MintLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly limit: string,\n ) {\n super(\n `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`,\n );\n this.name = 'MintLimitExceededError';\n }\n}\n\n/**\n * Error thrown when HCS-20 message format is invalid\n */\nexport class InvalidMessageFormatError extends HCS20Error {\n constructor(\n message: string,\n public readonly messageData?: any,\n ) {\n super(message);\n this.name = 'InvalidMessageFormatError';\n }\n}\n\n/**\n * Error thrown when account format is invalid\n */\nexport class InvalidAccountFormatError extends HCS20Error {\n constructor(public readonly account: string) {\n super(`Invalid Hedera account format: ${account}`);\n this.name = 'InvalidAccountFormatError';\n }\n}\n\n/**\n * Error thrown when tick format is invalid\n */\nexport class InvalidTickFormatError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Invalid tick format: ${tick}`);\n this.name = 'InvalidTickFormatError';\n }\n}\n\n/**\n * Error thrown when number format is invalid\n */\nexport class InvalidNumberFormatError extends HCS20Error {\n constructor(\n public readonly value: string,\n public readonly field: string,\n ) {\n super(`Invalid number format for ${field}: ${value}`);\n this.name = 'InvalidNumberFormatError';\n }\n}\n"],"names":[],"mappings":"AAOO,MAAM,mBAAmB,MAAM;AAAA,EACpC,YAAY,SAAiB;AAC3B,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,8BAA8B,WAAW;AAAA,EACpD,YACE,SACgB,MAChB;AACA,UAAM,OAAO;AAFG,SAAA,OAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,wBAAwB,WAAW;AAAA,EAC9C,YACE,SACgB,MACA,iBACA,iBAChB;AACA,UAAM,OAAO;AAJG,SAAA,OAAA;AACA,SAAA,kBAAA;AACA,SAAA,kBAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,4BAA4B,WAAW;AAAA,EAClD,YACE,SACgB,MACA,MACA,IACA,QACA,kBAChB;AACA,UAAM,OAAO;AANG,SAAA,OAAA;AACA,SAAA,OAAA;AACA,SAAA,KAAA;AACA,SAAA,SAAA;AACA,SAAA,mBAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,wBAAwB,WAAW;AAAA,EAC9C,YACE,SACgB,MACA,MACA,QACA,kBAChB;AACA,UAAM,OAAO;AALG,SAAA,OAAA;AACA,SAAA,OAAA;AACA,SAAA,SAAA;AACA,SAAA,mBAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,8BAA8B,WAAW;AAAA,EACpD,YACE,SACgB,kBAChB;AACA,UAAM,OAAO;AAFG,SAAA,mBAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,4BAA4B,WAAW;AAAA,EAClD,YAA4B,MAAc;AACxC,UAAM,qBAAqB,IAAI,aAAa;AADlB,SAAA,OAAA;AAE1B,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,+BAA+B,WAAW;AAAA,EACrD,YACE,SACgB,SAChB;AACA,UAAM,OAAO;AAFG,SAAA,UAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,iCAAiC,WAAW;AAAA,EACvD,YACkB,WACA,MACA,UACA,WAChB;AACA;AAAA,MACE,4BAA4B,IAAI,cAAc,QAAQ,eAAe,SAAS;AAAA,IAAA;AANhE,SAAA,YAAA;AACA,SAAA,OAAA;AACA,SAAA,WAAA;AACA,SAAA,YAAA;AAKhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,iCAAiC,WAAW;AAAA,EACvD,YACkB,MACA,WACA,WACA,eAChB;AACA;AAAA,MACE,6BAA6B,IAAI,SAAS,SAAS,aAAa,aAAa,eAAe,SAAS;AAAA,IAAA;AANvF,SAAA,OAAA;AACA,SAAA,YAAA;AACA,SAAA,YAAA;AACA,SAAA,gBAAA;AAKhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,+BAA+B,WAAW;AAAA,EACrD,YACkB,MACA,WACA,OAChB;AACA;AAAA,MACE,2BAA2B,IAAI,eAAe,SAAS,WAAW,KAAK;AAAA,IAAA;AALzD,SAAA,OAAA;AACA,SAAA,YAAA;AACA,SAAA,QAAA;AAKhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,kCAAkC,WAAW;AAAA,EACxD,YACE,SACgB,aAChB;AACA,UAAM,OAAO;AAFG,SAAA,cAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,kCAAkC,WAAW;AAAA,EACxD,YAA4B,SAAiB;AAC3C,UAAM,kCAAkC,OAAO,EAAE;AADvB,SAAA,UAAA;AAE1B,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,+BAA+B,WAAW;AAAA,EACrD,YAA4B,MAAc;AACxC,UAAM,wBAAwB,IAAI,EAAE;AADV,SAAA,OAAA;AAE1B,SAAK,OAAO;AAAA,EACd;AACF;AAKO,MAAM,iCAAiC,WAAW;AAAA,EACvD,YACkB,OACA,OAChB;AACA,UAAM,6BAA6B,KAAK,KAAK,KAAK,EAAE;AAHpC,SAAA,QAAA;AACA,SAAA,QAAA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es79.js","sources":["../../src/hcs-20/types.ts"],"sourcesContent":["/**\n * HCS-20 Auditable Points Standard Types\n */\n\nimport { z } from 'zod';\nimport { AccountId, TopicId, PrivateKey } from '@hashgraph/sdk';\nimport type { ILogger } from '../utils/logger';\n\n/**\n * HCS-20 Constants\n */\nexport const HCS20_CONSTANTS = {\n PROTOCOL: 'hcs-20',\n PUBLIC_TOPIC_ID: '0.0.4350190',\n REGISTRY_TOPIC_ID: '0.0.4362300',\n MAX_NUMBER_LENGTH: 18,\n MAX_NAME_LENGTH: 100,\n MAX_METADATA_LENGTH: 100,\n HEDERA_ACCOUNT_REGEX:\n /^(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))\\.(0|(?:[1-9]\\d*))$/,\n} as const;\n\n/**\n * Hedera Account ID validator\n */\nconst HederaAccountIdSchema = z\n .string()\n .regex(\n HCS20_CONSTANTS.HEDERA_ACCOUNT_REGEX,\n 'Invalid Hedera account ID format',\n );\n\n/**\n * Number string validator\n */\nconst NumberStringSchema = z\n .string()\n .regex(/^\\d+$/, 'Must be a valid number')\n .max(\n HCS20_CONSTANTS.MAX_NUMBER_LENGTH,\n `Max ${HCS20_CONSTANTS.MAX_NUMBER_LENGTH} digits`,\n );\n\n/**\n * Tick validator\n */\nconst TickSchema = z\n .string()\n .min(1, 'Tick cannot be empty')\n .transform(val => val.toLowerCase().trim());\n\n/**\n * Base HCS-20 Message Schema\n */\nconst HCS20BaseMessageSchema = z.object({\n p: z.literal('hcs-20'),\n m: z.string().optional(),\n});\n\n/**\n * Deploy Points Operation Schema\n */\nexport const HCS20DeployMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('deploy'),\n name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),\n tick: TickSchema,\n max: NumberStringSchema,\n lim: NumberStringSchema.optional(),\n metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),\n});\n\n/**\n * Mint Points Operation Schema\n */\nexport const HCS20MintMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('mint'),\n tick: TickSchema,\n amt: NumberStringSchema,\n to: HederaAccountIdSchema,\n});\n\n/**\n * Burn Points Operation Schema\n */\nexport const HCS20BurnMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('burn'),\n tick: TickSchema,\n amt: NumberStringSchema,\n from: HederaAccountIdSchema,\n});\n\n/**\n * Transfer Points Operation Schema\n */\nexport const HCS20TransferMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('transfer'),\n tick: TickSchema,\n amt: NumberStringSchema,\n from: HederaAccountIdSchema,\n to: HederaAccountIdSchema,\n});\n\n/**\n * Register Topic Operation Schema\n */\nexport const HCS20RegisterMessageSchema = HCS20BaseMessageSchema.extend({\n op: z.literal('register'),\n name: z.string().min(1).max(HCS20_CONSTANTS.MAX_NAME_LENGTH),\n metadata: z.string().max(HCS20_CONSTANTS.MAX_METADATA_LENGTH).optional(),\n private: z.boolean(),\n t_id: HederaAccountIdSchema,\n});\n\n/**\n * Union schema for all HCS-20 messages\n */\nexport const HCS20MessageSchema = z.discriminatedUnion('op', [\n HCS20DeployMessageSchema,\n HCS20MintMessageSchema,\n HCS20BurnMessageSchema,\n HCS20TransferMessageSchema,\n HCS20RegisterMessageSchema,\n]);\n\n/**\n * Inferred types from schemas\n */\nexport type HCS20BaseMessage = z.infer<typeof HCS20BaseMessageSchema>;\nexport type HCS20DeployMessage = z.infer<typeof HCS20DeployMessageSchema>;\nexport type HCS20MintMessage = z.infer<typeof HCS20MintMessageSchema>;\nexport type HCS20BurnMessage = z.infer<typeof HCS20BurnMessageSchema>;\nexport type HCS20TransferMessage = z.infer<typeof HCS20TransferMessageSchema>;\nexport type HCS20RegisterMessage = z.infer<typeof HCS20RegisterMessageSchema>;\nexport type HCS20Message = z.infer<typeof HCS20MessageSchema>;\nexport type HCS20Operation = HCS20Message['op'];\n\n/**\n * Points Configuration\n */\nexport interface PointsConfig {\n name: string;\n tick: string;\n maxSupply: string;\n limitPerMint?: string;\n metadata?: string;\n}\n\n/**\n * Points Information\n */\nexport interface PointsInfo extends PointsConfig {\n topicId: string;\n deployerAccountId: string;\n currentSupply: string;\n deploymentTimestamp: string;\n isPrivate: boolean;\n}\n\n/**\n * Points Balance\n */\nexport interface PointsBalance {\n tick: string;\n accountId: string;\n balance: string;\n lastUpdated: string;\n}\n\n/**\n * Points Transaction\n */\nexport interface PointsTransaction {\n id: string;\n operation: HCS20Operation;\n tick: string;\n amount?: string;\n from?: string;\n to?: string;\n timestamp: string;\n sequenceNumber: number;\n topicId: string;\n transactionId: string;\n memo?: string;\n}\n\n/**\n * HCS-20 Client Configuration\n */\nexport interface HCS20ClientConfig {\n mirrorNodeUrl?: string;\n logger?: ILogger;\n network?: 'mainnet' | 'testnet';\n registryTopicId?: string;\n publicTopicId?: string;\n}\n\n/**\n * Browser-specific HCS-20 Client Configuration\n */\nexport interface BrowserHCS20ClientConfig extends HCS20ClientConfig {\n walletConnectProjectId?: string;\n hwcMetadata?: {\n name: string;\n description: string;\n icons: string[];\n url: string;\n };\n}\n\n/**\n * SDK-specific HCS-20 Client Configuration\n */\nexport interface SDKHCS20ClientConfig extends HCS20ClientConfig {\n operatorId: string | AccountId;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n}\n\n/**\n * Deploy Points Progress\n */\nexport interface DeployPointsProgress {\n stage: 'creating-topic' | 'submitting-deploy' | 'confirming' | 'complete';\n percentage: number;\n topicId?: string;\n deployTxId?: string;\n error?: string;\n}\n\n/**\n * Deploy Points Options\n */\nexport interface DeployPointsOptions extends PointsConfig {\n usePrivateTopic?: boolean;\n topicMemo?: string;\n progressCallback?: (data: DeployPointsProgress) => void;\n}\n\n/**\n * Mint Points Progress\n */\nexport interface MintPointsProgress {\n stage: 'validating' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n mintTxId?: string;\n error?: string;\n}\n\n/**\n * Mint Points Options\n */\nexport interface MintPointsOptions {\n tick: string;\n amount: string;\n to: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: MintPointsProgress) => void;\n disableMirrorCheck?: boolean;\n}\n\n/**\n * Transfer Points Progress\n */\nexport interface TransferPointsProgress {\n stage: 'validating-balance' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n transferTxId?: string;\n error?: string;\n}\n\n/**\n * Transfer Points Options\n */\nexport interface TransferPointsOptions {\n tick: string;\n amount: string;\n from: string | AccountId;\n to: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: TransferPointsProgress) => void;\n}\n\n/**\n * Burn Points Progress\n */\nexport interface BurnPointsProgress {\n stage: 'validating-balance' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n burnTxId?: string;\n error?: string;\n}\n\n/**\n * Burn Points Options\n */\nexport interface BurnPointsOptions {\n tick: string;\n amount: string;\n from: string | AccountId;\n memo?: string;\n topicId?: string | TopicId;\n progressCallback?: (data: BurnPointsProgress) => void;\n}\n\n/**\n * Register Topic Progress\n */\nexport interface RegisterTopicProgress {\n stage: 'validating' | 'submitting' | 'confirming' | 'complete';\n percentage: number;\n registerTxId?: string;\n error?: string;\n}\n\n/**\n * Register Topic Options\n */\nexport interface RegisterTopicOptions {\n topicId: string | TopicId;\n name: string;\n metadata?: string;\n isPrivate: boolean;\n memo?: string;\n progressCallback?: (data: RegisterTopicProgress) => void;\n}\n\n/**\n * Query Points Options\n */\nexport interface QueryPointsOptions {\n tick?: string;\n accountId?: string | AccountId;\n topicId?: string | TopicId;\n limit?: number;\n order?: 'asc' | 'desc';\n}\n\n/**\n * Points Query Result\n */\nexport interface PointsQueryResult {\n points: PointsInfo[];\n balances?: PointsBalance[];\n transactions?: PointsTransaction[];\n totalCount: number;\n hasMore: boolean;\n nextCursor?: string;\n}\n\n/**\n * Points State\n */\nexport interface PointsState {\n deployedPoints: Map<string, PointsInfo>;\n balances: Map<string, Map<string, PointsBalance>>;\n transactions: PointsTransaction[];\n lastProcessedSequence: number;\n lastProcessedTimestamp: string;\n}\n\n/**\n * HCS-20 Registry Entry\n */\nexport interface HCS20RegistryEntry {\n name: string;\n topicId: string;\n metadata?: string;\n isPrivate: boolean;\n registeredAt: string;\n registeredBy: string;\n}\n"],"names":[],"mappings":";AAWO,MAAM,kBAAkB;AAAA,EAC7B,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,qBAAqB;AAAA,EACrB,sBACE;AACJ;AAKA,MAAM,wBAAwB,EAC3B,OAAA,EACA;AAAA,EACC,gBAAgB;AAAA,EAChB;AACF;AAKF,MAAM,qBAAqB,EACxB,OAAA,EACA,MAAM,SAAS,wBAAwB,EACvC;AAAA,EACC,gBAAgB;AAAA,EAChB,OAAO,gBAAgB,iBAAiB;AAC1C;AAKF,MAAM,aAAa,EAChB,OAAA,EACA,IAAI,GAAG,sBAAsB,EAC7B,UAAU,CAAA,QAAO,IAAI,YAAA,EAAc,MAAM;AAK5C,MAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,GAAG,EAAE,QAAQ,QAAQ;AAAA,EACrB,GAAG,EAAE,OAAA,EAAS,SAAA;AAChB,CAAC;AAKM,MAAM,2BAA2B,uBAAuB,OAAO;AAAA,EACpE,IAAI,EAAE,QAAQ,QAAQ;AAAA,EACtB,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,IAAI,gBAAgB,eAAe;AAAA,EAC3D,MAAM;AAAA,EACN,KAAK;AAAA,EACL,KAAK,mBAAmB,SAAA;AAAA,EACxB,UAAU,EAAE,OAAA,EAAS,IAAI,gBAAgB,mBAAmB,EAAE,SAAA;AAChE,CAAC;AAKM,MAAM,yBAAyB,uBAAuB,OAAO;AAAA,EAClE,IAAI,EAAE,QAAQ,MAAM;AAAA,EACpB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,IAAI;AACN,CAAC;AAKM,MAAM,yBAAyB,uBAAuB,OAAO;AAAA,EAClE,IAAI,EAAE,QAAQ,MAAM;AAAA,EACpB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,MAAM;AACR,CAAC;AAKM,MAAM,6BAA6B,uBAAuB,OAAO;AAAA,EACtE,IAAI,EAAE,QAAQ,UAAU;AAAA,EACxB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,MAAM;AAAA,EACN,IAAI;AACN,CAAC;AAKM,MAAM,6BAA6B,uBAAuB,OAAO;AAAA,EACtE,IAAI,EAAE,QAAQ,UAAU;AAAA,EACxB,MAAM,EAAE,SAAS,IAAI,CAAC,EAAE,IAAI,gBAAgB,eAAe;AAAA,EAC3D,UAAU,EAAE,OAAA,EAAS,IAAI,gBAAgB,mBAAmB,EAAE,SAAA;AAAA,EAC9D,SAAS,EAAE,QAAA;AAAA,EACX,MAAM;AACR,CAAC;AAKM,MAAM,qBAAqB,EAAE,mBAAmB,MAAM;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;"}
|
|
@@ -1,72 +1,146 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
class HCS20Error extends Error {
|
|
2
|
+
constructor(message) {
|
|
3
|
+
super(message);
|
|
4
|
+
this.name = "HCS20Error";
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
class PointsDeploymentError extends HCS20Error {
|
|
8
|
+
constructor(message, tick) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.tick = tick;
|
|
11
|
+
this.name = "PointsDeploymentError";
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
class PointsMintError extends HCS20Error {
|
|
15
|
+
constructor(message, tick, requestedAmount, availableSupply) {
|
|
16
|
+
super(message);
|
|
17
|
+
this.tick = tick;
|
|
18
|
+
this.requestedAmount = requestedAmount;
|
|
19
|
+
this.availableSupply = availableSupply;
|
|
20
|
+
this.name = "PointsMintError";
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
class PointsTransferError extends HCS20Error {
|
|
24
|
+
constructor(message, tick, from, to, amount, availableBalance) {
|
|
25
|
+
super(message);
|
|
26
|
+
this.tick = tick;
|
|
27
|
+
this.from = from;
|
|
28
|
+
this.to = to;
|
|
29
|
+
this.amount = amount;
|
|
30
|
+
this.availableBalance = availableBalance;
|
|
31
|
+
this.name = "PointsTransferError";
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
class PointsBurnError extends HCS20Error {
|
|
35
|
+
constructor(message, tick, from, amount, availableBalance) {
|
|
36
|
+
super(message);
|
|
37
|
+
this.tick = tick;
|
|
38
|
+
this.from = from;
|
|
39
|
+
this.amount = amount;
|
|
40
|
+
this.availableBalance = availableBalance;
|
|
41
|
+
this.name = "PointsBurnError";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
class PointsValidationError extends HCS20Error {
|
|
45
|
+
constructor(message, validationErrors) {
|
|
46
|
+
super(message);
|
|
47
|
+
this.validationErrors = validationErrors;
|
|
48
|
+
this.name = "PointsValidationError";
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
class PointsNotFoundError extends HCS20Error {
|
|
52
|
+
constructor(tick) {
|
|
53
|
+
super(`Points with tick "${tick}" not found`);
|
|
54
|
+
this.tick = tick;
|
|
55
|
+
this.name = "PointsNotFoundError";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
class TopicRegistrationError extends HCS20Error {
|
|
59
|
+
constructor(message, topicId) {
|
|
60
|
+
super(message);
|
|
61
|
+
this.topicId = topicId;
|
|
62
|
+
this.name = "TopicRegistrationError";
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
class InsufficientBalanceError extends HCS20Error {
|
|
66
|
+
constructor(accountId, tick, required, available) {
|
|
67
|
+
super(
|
|
68
|
+
`Insufficient balance for ${tick}: required ${required}, available ${available}`
|
|
13
69
|
);
|
|
14
|
-
this.
|
|
15
|
-
this.
|
|
70
|
+
this.accountId = accountId;
|
|
71
|
+
this.tick = tick;
|
|
72
|
+
this.required = required;
|
|
73
|
+
this.available = available;
|
|
74
|
+
this.name = "InsufficientBalanceError";
|
|
16
75
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
);
|
|
29
|
-
return { valid: false, errors };
|
|
30
|
-
}
|
|
31
|
-
return { valid: false, errors: [error.message] };
|
|
32
|
-
}
|
|
76
|
+
}
|
|
77
|
+
class SupplyLimitExceededError extends HCS20Error {
|
|
78
|
+
constructor(tick, requested, maxSupply, currentSupply) {
|
|
79
|
+
super(
|
|
80
|
+
`Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`
|
|
81
|
+
);
|
|
82
|
+
this.tick = tick;
|
|
83
|
+
this.requested = requested;
|
|
84
|
+
this.maxSupply = maxSupply;
|
|
85
|
+
this.currentSupply = currentSupply;
|
|
86
|
+
this.name = "SupplyLimitExceededError";
|
|
33
87
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
88
|
+
}
|
|
89
|
+
class MintLimitExceededError extends HCS20Error {
|
|
90
|
+
constructor(tick, requested, limit) {
|
|
91
|
+
super(
|
|
92
|
+
`Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`
|
|
93
|
+
);
|
|
94
|
+
this.tick = tick;
|
|
95
|
+
this.requested = requested;
|
|
96
|
+
this.limit = limit;
|
|
97
|
+
this.name = "MintLimitExceededError";
|
|
39
98
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
99
|
+
}
|
|
100
|
+
class InvalidMessageFormatError extends HCS20Error {
|
|
101
|
+
constructor(message, messageData) {
|
|
102
|
+
super(message);
|
|
103
|
+
this.messageData = messageData;
|
|
104
|
+
this.name = "InvalidMessageFormatError";
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
class InvalidAccountFormatError extends HCS20Error {
|
|
108
|
+
constructor(account) {
|
|
109
|
+
super(`Invalid Hedera account format: ${account}`);
|
|
110
|
+
this.account = account;
|
|
111
|
+
this.name = "InvalidAccountFormatError";
|
|
51
112
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
113
|
+
}
|
|
114
|
+
class InvalidTickFormatError extends HCS20Error {
|
|
115
|
+
constructor(tick) {
|
|
116
|
+
super(`Invalid tick format: ${tick}`);
|
|
117
|
+
this.tick = tick;
|
|
118
|
+
this.name = "InvalidTickFormatError";
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
class InvalidNumberFormatError extends HCS20Error {
|
|
122
|
+
constructor(value, field) {
|
|
123
|
+
super(`Invalid number format for ${field}: ${value}`);
|
|
124
|
+
this.value = value;
|
|
125
|
+
this.field = field;
|
|
126
|
+
this.name = "InvalidNumberFormatError";
|
|
63
127
|
}
|
|
64
|
-
/**
|
|
65
|
-
* NOTE: State queries (getPointsInfo, getBalance, etc.) require an external indexing service.
|
|
66
|
-
* The HCS-20 clients only handle message submission. Use HCS20PointsIndexer for state management.
|
|
67
|
-
*/
|
|
68
128
|
}
|
|
69
129
|
export {
|
|
70
|
-
|
|
130
|
+
HCS20Error,
|
|
131
|
+
InsufficientBalanceError,
|
|
132
|
+
InvalidAccountFormatError,
|
|
133
|
+
InvalidMessageFormatError,
|
|
134
|
+
InvalidNumberFormatError,
|
|
135
|
+
InvalidTickFormatError,
|
|
136
|
+
MintLimitExceededError,
|
|
137
|
+
PointsBurnError,
|
|
138
|
+
PointsDeploymentError,
|
|
139
|
+
PointsMintError,
|
|
140
|
+
PointsNotFoundError,
|
|
141
|
+
PointsTransferError,
|
|
142
|
+
PointsValidationError,
|
|
143
|
+
SupplyLimitExceededError,
|
|
144
|
+
TopicRegistrationError
|
|
71
145
|
};
|
|
72
146
|
//# sourceMappingURL=standards-sdk.es80.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es80.js","sources":["../../src/hcs-20/
|
|
1
|
+
{"version":3,"file":"standards-sdk.es80.js","sources":["../../src/hcs-20/errors.ts"],"sourcesContent":["/**\n * HCS-20 Specific Error Classes\n */\n\n/**\n * Base error class for HCS-20 operations\n */\nexport class HCS20Error extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'HCS20Error';\n }\n}\n\n/**\n * Error thrown when points deployment fails\n */\nexport class PointsDeploymentError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick?: string,\n ) {\n super(message);\n this.name = 'PointsDeploymentError';\n }\n}\n\n/**\n * Error thrown when points minting fails\n */\nexport class PointsMintError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly requestedAmount: string,\n public readonly availableSupply?: string,\n ) {\n super(message);\n this.name = 'PointsMintError';\n }\n}\n\n/**\n * Error thrown when points transfer fails\n */\nexport class PointsTransferError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly to: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsTransferError';\n }\n}\n\n/**\n * Error thrown when points burn fails\n */\nexport class PointsBurnError extends HCS20Error {\n constructor(\n message: string,\n public readonly tick: string,\n public readonly from: string,\n public readonly amount: string,\n public readonly availableBalance?: string,\n ) {\n super(message);\n this.name = 'PointsBurnError';\n }\n}\n\n/**\n * Error thrown when points validation fails\n */\nexport class PointsValidationError extends HCS20Error {\n constructor(\n message: string,\n public readonly validationErrors: string[],\n ) {\n super(message);\n this.name = 'PointsValidationError';\n }\n}\n\n/**\n * Error thrown when points are not found\n */\nexport class PointsNotFoundError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Points with tick \"${tick}\" not found`);\n this.name = 'PointsNotFoundError';\n }\n}\n\n/**\n * Error thrown when topic registration fails\n */\nexport class TopicRegistrationError extends HCS20Error {\n constructor(\n message: string,\n public readonly topicId: string,\n ) {\n super(message);\n this.name = 'TopicRegistrationError';\n }\n}\n\n/**\n * Error thrown when insufficient balance\n */\nexport class InsufficientBalanceError extends HCS20Error {\n constructor(\n public readonly accountId: string,\n public readonly tick: string,\n public readonly required: string,\n public readonly available: string,\n ) {\n super(\n `Insufficient balance for ${tick}: required ${required}, available ${available}`,\n );\n this.name = 'InsufficientBalanceError';\n }\n}\n\n/**\n * Error thrown when supply limit is exceeded\n */\nexport class SupplyLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly maxSupply: string,\n public readonly currentSupply: string,\n ) {\n super(\n `Supply limit exceeded for ${tick}: max ${maxSupply}, current ${currentSupply}, requested ${requested}`,\n );\n this.name = 'SupplyLimitExceededError';\n }\n}\n\n/**\n * Error thrown when mint limit is exceeded\n */\nexport class MintLimitExceededError extends HCS20Error {\n constructor(\n public readonly tick: string,\n public readonly requested: string,\n public readonly limit: string,\n ) {\n super(\n `Mint limit exceeded for ${tick}: requested ${requested}, limit ${limit}`,\n );\n this.name = 'MintLimitExceededError';\n }\n}\n\n/**\n * Error thrown when HCS-20 message format is invalid\n */\nexport class InvalidMessageFormatError extends HCS20Error {\n constructor(\n message: string,\n public readonly messageData?: any,\n ) {\n super(message);\n this.name = 'InvalidMessageFormatError';\n }\n}\n\n/**\n * Error thrown when account format is invalid\n */\nexport class InvalidAccountFormatError extends HCS20Error {\n constructor(public readonly account: string) {\n super(`Invalid Hedera account format: ${account}`);\n this.name = 'InvalidAccountFormatError';\n }\n}\n\n/**\n * Error thrown when tick format is invalid\n */\nexport class InvalidTickFormatError extends HCS20Error {\n constructor(public readonly tick: string) {\n super(`Invalid tick format: ${tick}`);\n this.name = 'InvalidTickFormatError';\n }\n}\n\n/**\n * Error thrown when number format is invalid\n */\nexport class InvalidNumberFormatError extends HCS20Error {\n constructor(\n public readonly value: string,\n public readonly field: string,\n ) {\n super(`Invalid number format for ${field}: ${value}`);\n this.name = 'InvalidNumberFormatError';\n }\n}\n"],"names":[],"mappings":"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"}
|