@ysk-mint/sdk 1.0.0

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.
Files changed (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/dist/abi/launch.d.ts +389 -0
  4. package/dist/abi/launch.d.ts.map +1 -0
  5. package/dist/abi/launch.js +211 -0
  6. package/dist/abi/launch.js.map +1 -0
  7. package/dist/errors/abi.d.ts +272 -0
  8. package/dist/errors/abi.d.ts.map +1 -0
  9. package/dist/errors/abi.js +51 -0
  10. package/dist/errors/abi.js.map +1 -0
  11. package/dist/errors/codes.d.ts +64 -0
  12. package/dist/errors/codes.d.ts.map +1 -0
  13. package/dist/errors/codes.js +84 -0
  14. package/dist/errors/codes.js.map +1 -0
  15. package/dist/errors/decode.d.ts +5 -0
  16. package/dist/errors/decode.d.ts.map +1 -0
  17. package/dist/errors/decode.js +53 -0
  18. package/dist/errors/decode.js.map +1 -0
  19. package/dist/errors/messages.d.ts +162 -0
  20. package/dist/errors/messages.d.ts.map +1 -0
  21. package/dist/errors/messages.js +163 -0
  22. package/dist/errors/messages.js.map +1 -0
  23. package/dist/index.d.ts +12 -0
  24. package/dist/index.d.ts.map +1 -0
  25. package/dist/index.js +12 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/oft/peers.d.ts +21 -0
  28. package/dist/oft/peers.d.ts.map +1 -0
  29. package/dist/oft/peers.js +39 -0
  30. package/dist/oft/peers.js.map +1 -0
  31. package/dist/validation/launch.d.ts +16 -0
  32. package/dist/validation/launch.d.ts.map +1 -0
  33. package/dist/validation/launch.js +37 -0
  34. package/dist/validation/launch.js.map +1 -0
  35. package/dist/validation/liquidity.d.ts +6 -0
  36. package/dist/validation/liquidity.d.ts.map +1 -0
  37. package/dist/validation/liquidity.js +29 -0
  38. package/dist/validation/liquidity.js.map +1 -0
  39. package/dist/validation/native.d.ts +10 -0
  40. package/dist/validation/native.d.ts.map +1 -0
  41. package/dist/validation/native.js +53 -0
  42. package/dist/validation/native.js.map +1 -0
  43. package/dist/validation/token.d.ts +17 -0
  44. package/dist/validation/token.d.ts.map +1 -0
  45. package/dist/validation/token.js +73 -0
  46. package/dist/validation/token.js.map +1 -0
  47. package/package.json +49 -0
@@ -0,0 +1,272 @@
1
+ export declare const launchErrorAbi: readonly [{
2
+ readonly type: "error";
3
+ readonly name: "InvalidName";
4
+ readonly inputs: readonly [];
5
+ }, {
6
+ readonly type: "error";
7
+ readonly name: "InvalidSymbol";
8
+ readonly inputs: readonly [];
9
+ }, {
10
+ readonly type: "error";
11
+ readonly name: "DecimalsOutOfRange";
12
+ readonly inputs: readonly [{
13
+ readonly name: "got";
14
+ readonly type: "uint8";
15
+ }];
16
+ }, {
17
+ readonly type: "error";
18
+ readonly name: "SupplyZero";
19
+ readonly inputs: readonly [];
20
+ }, {
21
+ readonly type: "error";
22
+ readonly name: "SupplyOverflow";
23
+ readonly inputs: readonly [];
24
+ }, {
25
+ readonly type: "error";
26
+ readonly name: "TaxTooHigh";
27
+ readonly inputs: readonly [{
28
+ readonly name: "bps";
29
+ readonly type: "uint16";
30
+ }];
31
+ }, {
32
+ readonly type: "error";
33
+ readonly name: "RecipientZero";
34
+ readonly inputs: readonly [];
35
+ }, {
36
+ readonly type: "error";
37
+ readonly name: "LockDurationInvalid";
38
+ readonly inputs: readonly [{
39
+ readonly name: "seconds_";
40
+ readonly type: "uint64";
41
+ }];
42
+ }, {
43
+ readonly type: "error";
44
+ readonly name: "DexUnsupported";
45
+ readonly inputs: readonly [{
46
+ readonly name: "dex";
47
+ readonly type: "uint8";
48
+ }];
49
+ }, {
50
+ readonly type: "error";
51
+ readonly name: "ChainDisabled";
52
+ readonly inputs: readonly [{
53
+ readonly name: "chain";
54
+ readonly type: "uint8";
55
+ }];
56
+ }, {
57
+ readonly type: "error";
58
+ readonly name: "InsufficientNative";
59
+ readonly inputs: readonly [{
60
+ readonly name: "have";
61
+ readonly type: "uint256";
62
+ }, {
63
+ readonly name: "need";
64
+ readonly type: "uint256";
65
+ }];
66
+ }, {
67
+ readonly type: "error";
68
+ readonly name: "LockNotMature";
69
+ readonly inputs: readonly [{
70
+ readonly name: "unlockAt";
71
+ readonly type: "uint256";
72
+ }];
73
+ }, {
74
+ readonly type: "error";
75
+ readonly name: "NotLockOwner";
76
+ readonly inputs: readonly [];
77
+ }, {
78
+ readonly type: "error";
79
+ readonly name: "PeerAlreadySet";
80
+ readonly inputs: readonly [{
81
+ readonly name: "eid";
82
+ readonly type: "uint32";
83
+ }];
84
+ }, {
85
+ readonly type: "error";
86
+ readonly name: "PeerNotSet";
87
+ readonly inputs: readonly [{
88
+ readonly name: "eid";
89
+ readonly type: "uint32";
90
+ }];
91
+ }, {
92
+ readonly type: "error";
93
+ readonly name: "ModuleDisabled";
94
+ readonly inputs: readonly [{
95
+ readonly name: "flag";
96
+ readonly type: "uint8";
97
+ }];
98
+ }, {
99
+ readonly type: "error";
100
+ readonly name: "OFTPathMustBeFeeFree";
101
+ readonly inputs: readonly [];
102
+ }, {
103
+ readonly type: "error";
104
+ readonly name: "AlreadyInitialized";
105
+ readonly inputs: readonly [];
106
+ }, {
107
+ readonly type: "error";
108
+ readonly name: "NotOwner";
109
+ readonly inputs: readonly [];
110
+ }, {
111
+ readonly type: "error";
112
+ readonly name: "UnknownModule";
113
+ readonly inputs: readonly [{
114
+ readonly name: "flags";
115
+ readonly type: "uint16";
116
+ }];
117
+ }, {
118
+ readonly type: "error";
119
+ readonly name: "InvalidSupplyMode";
120
+ readonly inputs: readonly [{
121
+ readonly name: "mode";
122
+ readonly type: "uint8";
123
+ }];
124
+ }, {
125
+ readonly type: "error";
126
+ readonly name: "InvalidLockMode";
127
+ readonly inputs: readonly [{
128
+ readonly name: "mode";
129
+ readonly type: "uint8";
130
+ }];
131
+ }, {
132
+ readonly type: "error";
133
+ readonly name: "InvalidOwnershipAction";
134
+ readonly inputs: readonly [{
135
+ readonly name: "action";
136
+ readonly type: "uint8";
137
+ }];
138
+ }, {
139
+ readonly type: "error";
140
+ readonly name: "MintNotAllowed";
141
+ readonly inputs: readonly [];
142
+ }, {
143
+ readonly type: "error";
144
+ readonly name: "InvalidPeer";
145
+ readonly inputs: readonly [];
146
+ }, {
147
+ readonly type: "error";
148
+ readonly name: "InsufficientBalance";
149
+ readonly inputs: readonly [{
150
+ readonly name: "have";
151
+ readonly type: "uint256";
152
+ }, {
153
+ readonly name: "need";
154
+ readonly type: "uint256";
155
+ }];
156
+ }, {
157
+ readonly type: "error";
158
+ readonly name: "ZeroAmount";
159
+ readonly inputs: readonly [];
160
+ }, {
161
+ readonly type: "error";
162
+ readonly name: "CloneFailed";
163
+ readonly inputs: readonly [];
164
+ }, {
165
+ readonly type: "error";
166
+ readonly name: "InvalidChainKey";
167
+ readonly inputs: readonly [{
168
+ readonly name: "chain";
169
+ readonly type: "uint8";
170
+ }];
171
+ }, {
172
+ readonly type: "error";
173
+ readonly name: "InvalidDexKind";
174
+ readonly inputs: readonly [{
175
+ readonly name: "dex";
176
+ readonly type: "uint8";
177
+ }];
178
+ }, {
179
+ readonly type: "error";
180
+ readonly name: "InvalidLaunchStep";
181
+ readonly inputs: readonly [{
182
+ readonly name: "step";
183
+ readonly type: "uint8";
184
+ }];
185
+ }, {
186
+ readonly type: "error";
187
+ readonly name: "InvalidLaunchStatus";
188
+ readonly inputs: readonly [{
189
+ readonly name: "status";
190
+ readonly type: "uint8";
191
+ }];
192
+ }, {
193
+ readonly type: "error";
194
+ readonly name: "NotInitialized";
195
+ readonly inputs: readonly [];
196
+ }, {
197
+ readonly type: "error";
198
+ readonly name: "EndpointZero";
199
+ readonly inputs: readonly [];
200
+ }, {
201
+ readonly type: "error";
202
+ readonly name: "LengthMismatch";
203
+ readonly inputs: readonly [];
204
+ }, {
205
+ readonly type: "error";
206
+ readonly name: "LockNotFound";
207
+ readonly inputs: readonly [];
208
+ }, {
209
+ readonly type: "error";
210
+ readonly name: "AlreadyWithdrawn";
211
+ readonly inputs: readonly [];
212
+ }, {
213
+ readonly type: "error";
214
+ readonly name: "NativeTransferFailed";
215
+ readonly inputs: readonly [];
216
+ }, {
217
+ readonly type: "error";
218
+ readonly name: "Paused";
219
+ readonly inputs: readonly [];
220
+ }, {
221
+ readonly type: "error";
222
+ readonly name: "MaxTxExceeded";
223
+ readonly inputs: readonly [{
224
+ readonly name: "amount";
225
+ readonly type: "uint256";
226
+ }, {
227
+ readonly name: "maxTx";
228
+ readonly type: "uint256";
229
+ }];
230
+ }, {
231
+ readonly type: "error";
232
+ readonly name: "MaxWalletExceeded";
233
+ readonly inputs: readonly [{
234
+ readonly name: "balance";
235
+ readonly type: "uint256";
236
+ }, {
237
+ readonly name: "maxWallet";
238
+ readonly type: "uint256";
239
+ }];
240
+ }, {
241
+ readonly type: "error";
242
+ readonly name: "Blacklisted";
243
+ readonly inputs: readonly [];
244
+ }, {
245
+ readonly type: "error";
246
+ readonly name: "BondingDisabled";
247
+ readonly inputs: readonly [];
248
+ }, {
249
+ readonly type: "error";
250
+ readonly name: "SaleNotActive";
251
+ readonly inputs: readonly [];
252
+ }, {
253
+ readonly type: "error";
254
+ readonly name: "SaleCapExceeded";
255
+ readonly inputs: readonly [];
256
+ }, {
257
+ readonly type: "error";
258
+ readonly name: "SaleNotFailed";
259
+ readonly inputs: readonly [];
260
+ }, {
261
+ readonly type: "error";
262
+ readonly name: "SaleNotFinalizable";
263
+ readonly inputs: readonly [];
264
+ }, {
265
+ readonly type: "error";
266
+ readonly name: "PlatformFeeTooHigh";
267
+ readonly inputs: readonly [{
268
+ readonly name: "bps";
269
+ readonly type: "uint16";
270
+ }];
271
+ }];
272
+ //# sourceMappingURL=abi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/errors/abi.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDjB,CAAC"}
@@ -0,0 +1,51 @@
1
+ export const launchErrorAbi = [
2
+ { type: "error", name: "InvalidName", inputs: [] },
3
+ { type: "error", name: "InvalidSymbol", inputs: [] },
4
+ { type: "error", name: "DecimalsOutOfRange", inputs: [{ name: "got", type: "uint8" }] },
5
+ { type: "error", name: "SupplyZero", inputs: [] },
6
+ { type: "error", name: "SupplyOverflow", inputs: [] },
7
+ { type: "error", name: "TaxTooHigh", inputs: [{ name: "bps", type: "uint16" }] },
8
+ { type: "error", name: "RecipientZero", inputs: [] },
9
+ { type: "error", name: "LockDurationInvalid", inputs: [{ name: "seconds_", type: "uint64" }] },
10
+ { type: "error", name: "DexUnsupported", inputs: [{ name: "dex", type: "uint8" }] },
11
+ { type: "error", name: "ChainDisabled", inputs: [{ name: "chain", type: "uint8" }] },
12
+ { type: "error", name: "InsufficientNative", inputs: [{ name: "have", type: "uint256" }, { name: "need", type: "uint256" }] },
13
+ { type: "error", name: "LockNotMature", inputs: [{ name: "unlockAt", type: "uint256" }] },
14
+ { type: "error", name: "NotLockOwner", inputs: [] },
15
+ { type: "error", name: "PeerAlreadySet", inputs: [{ name: "eid", type: "uint32" }] },
16
+ { type: "error", name: "PeerNotSet", inputs: [{ name: "eid", type: "uint32" }] },
17
+ { type: "error", name: "ModuleDisabled", inputs: [{ name: "flag", type: "uint8" }] },
18
+ { type: "error", name: "OFTPathMustBeFeeFree", inputs: [] },
19
+ { type: "error", name: "AlreadyInitialized", inputs: [] },
20
+ { type: "error", name: "NotOwner", inputs: [] },
21
+ { type: "error", name: "UnknownModule", inputs: [{ name: "flags", type: "uint16" }] },
22
+ { type: "error", name: "InvalidSupplyMode", inputs: [{ name: "mode", type: "uint8" }] },
23
+ { type: "error", name: "InvalidLockMode", inputs: [{ name: "mode", type: "uint8" }] },
24
+ { type: "error", name: "InvalidOwnershipAction", inputs: [{ name: "action", type: "uint8" }] },
25
+ { type: "error", name: "MintNotAllowed", inputs: [] },
26
+ { type: "error", name: "InvalidPeer", inputs: [] },
27
+ { type: "error", name: "InsufficientBalance", inputs: [{ name: "have", type: "uint256" }, { name: "need", type: "uint256" }] },
28
+ { type: "error", name: "ZeroAmount", inputs: [] },
29
+ { type: "error", name: "CloneFailed", inputs: [] },
30
+ { type: "error", name: "InvalidChainKey", inputs: [{ name: "chain", type: "uint8" }] },
31
+ { type: "error", name: "InvalidDexKind", inputs: [{ name: "dex", type: "uint8" }] },
32
+ { type: "error", name: "InvalidLaunchStep", inputs: [{ name: "step", type: "uint8" }] },
33
+ { type: "error", name: "InvalidLaunchStatus", inputs: [{ name: "status", type: "uint8" }] },
34
+ { type: "error", name: "NotInitialized", inputs: [] },
35
+ { type: "error", name: "EndpointZero", inputs: [] },
36
+ { type: "error", name: "LengthMismatch", inputs: [] },
37
+ { type: "error", name: "LockNotFound", inputs: [] },
38
+ { type: "error", name: "AlreadyWithdrawn", inputs: [] },
39
+ { type: "error", name: "NativeTransferFailed", inputs: [] },
40
+ { type: "error", name: "Paused", inputs: [] },
41
+ { type: "error", name: "MaxTxExceeded", inputs: [{ name: "amount", type: "uint256" }, { name: "maxTx", type: "uint256" }] },
42
+ { type: "error", name: "MaxWalletExceeded", inputs: [{ name: "balance", type: "uint256" }, { name: "maxWallet", type: "uint256" }] },
43
+ { type: "error", name: "Blacklisted", inputs: [] },
44
+ { type: "error", name: "BondingDisabled", inputs: [] },
45
+ { type: "error", name: "SaleNotActive", inputs: [] },
46
+ { type: "error", name: "SaleCapExceeded", inputs: [] },
47
+ { type: "error", name: "SaleNotFailed", inputs: [] },
48
+ { type: "error", name: "SaleNotFinalizable", inputs: [] },
49
+ { type: "error", name: "PlatformFeeTooHigh", inputs: [{ name: "bps", type: "uint16" }] },
50
+ ];
51
+ //# sourceMappingURL=abi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abi.js","sourceRoot":"","sources":["../../src/errors/abi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ export declare const ErrorCode: {
2
+ readonly InvalidName: "InvalidName";
3
+ readonly InvalidSymbol: "InvalidSymbol";
4
+ readonly DecimalsOutOfRange: "DecimalsOutOfRange";
5
+ readonly SupplyZero: "SupplyZero";
6
+ readonly SupplyOverflow: "SupplyOverflow";
7
+ readonly TaxTooHigh: "TaxTooHigh";
8
+ readonly RecipientZero: "RecipientZero";
9
+ readonly LockDurationInvalid: "LockDurationInvalid";
10
+ readonly DexUnsupported: "DexUnsupported";
11
+ readonly ChainDisabled: "ChainDisabled";
12
+ readonly InsufficientNative: "InsufficientNative";
13
+ readonly LockNotMature: "LockNotMature";
14
+ readonly NotLockOwner: "NotLockOwner";
15
+ readonly PeerAlreadySet: "PeerAlreadySet";
16
+ readonly PeerNotSet: "PeerNotSet";
17
+ readonly ModuleDisabled: "ModuleDisabled";
18
+ readonly OFTPathMustBeFeeFree: "OFTPathMustBeFeeFree";
19
+ readonly AlreadyInitialized: "AlreadyInitialized";
20
+ readonly NotOwner: "NotOwner";
21
+ readonly UnknownModule: "UnknownModule";
22
+ readonly InvalidSupplyMode: "InvalidSupplyMode";
23
+ readonly InvalidLockMode: "InvalidLockMode";
24
+ readonly InvalidOwnershipAction: "InvalidOwnershipAction";
25
+ readonly MintNotAllowed: "MintNotAllowed";
26
+ readonly InvalidPeer: "InvalidPeer";
27
+ readonly InsufficientBalance: "InsufficientBalance";
28
+ readonly ZeroAmount: "ZeroAmount";
29
+ readonly CloneFailed: "CloneFailed";
30
+ readonly InvalidChainKey: "InvalidChainKey";
31
+ readonly InvalidDexKind: "InvalidDexKind";
32
+ readonly InvalidLaunchStep: "InvalidLaunchStep";
33
+ readonly InvalidLaunchStatus: "InvalidLaunchStatus";
34
+ readonly NotInitialized: "NotInitialized";
35
+ readonly EndpointZero: "EndpointZero";
36
+ readonly LengthMismatch: "LengthMismatch";
37
+ readonly LockNotFound: "LockNotFound";
38
+ readonly AlreadyWithdrawn: "AlreadyWithdrawn";
39
+ readonly NativeTransferFailed: "NativeTransferFailed";
40
+ readonly Paused: "Paused";
41
+ readonly MaxTxExceeded: "MaxTxExceeded";
42
+ readonly MaxWalletExceeded: "MaxWalletExceeded";
43
+ readonly Blacklisted: "Blacklisted";
44
+ readonly BondingDisabled: "BondingDisabled";
45
+ readonly SaleNotActive: "SaleNotActive";
46
+ readonly SaleCapExceeded: "SaleCapExceeded";
47
+ readonly SaleNotFailed: "SaleNotFailed";
48
+ readonly SaleNotFinalizable: "SaleNotFinalizable";
49
+ readonly PlatformFeeTooHigh: "PlatformFeeTooHigh";
50
+ readonly Unknown: "Unknown";
51
+ readonly SimulationFailed: "SimulationFailed";
52
+ };
53
+ export type ErrorCodeName = (typeof ErrorCode)[keyof typeof ErrorCode];
54
+ export type LaunchErrorSeverity = "user" | "chain" | "fatal";
55
+ export type LaunchError = {
56
+ code: ErrorCodeName;
57
+ args: unknown[];
58
+ severity: LaunchErrorSeverity;
59
+ retryable: boolean;
60
+ message?: string;
61
+ };
62
+ export declare const USER_CODES: ReadonlySet<string>;
63
+ export declare const RETRYABLE_CODES: ReadonlySet<string>;
64
+ //# sourceMappingURL=codes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/errors/codes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDZ,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEvE,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE7D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,WAAW,CAAC,MAAM,CAyBzC,CAAC;AAEH,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,MAAM,CAI9C,CAAC"}
@@ -0,0 +1,84 @@
1
+ export const ErrorCode = {
2
+ InvalidName: "InvalidName",
3
+ InvalidSymbol: "InvalidSymbol",
4
+ DecimalsOutOfRange: "DecimalsOutOfRange",
5
+ SupplyZero: "SupplyZero",
6
+ SupplyOverflow: "SupplyOverflow",
7
+ TaxTooHigh: "TaxTooHigh",
8
+ RecipientZero: "RecipientZero",
9
+ LockDurationInvalid: "LockDurationInvalid",
10
+ DexUnsupported: "DexUnsupported",
11
+ ChainDisabled: "ChainDisabled",
12
+ InsufficientNative: "InsufficientNative",
13
+ LockNotMature: "LockNotMature",
14
+ NotLockOwner: "NotLockOwner",
15
+ PeerAlreadySet: "PeerAlreadySet",
16
+ PeerNotSet: "PeerNotSet",
17
+ ModuleDisabled: "ModuleDisabled",
18
+ OFTPathMustBeFeeFree: "OFTPathMustBeFeeFree",
19
+ AlreadyInitialized: "AlreadyInitialized",
20
+ NotOwner: "NotOwner",
21
+ UnknownModule: "UnknownModule",
22
+ InvalidSupplyMode: "InvalidSupplyMode",
23
+ InvalidLockMode: "InvalidLockMode",
24
+ InvalidOwnershipAction: "InvalidOwnershipAction",
25
+ MintNotAllowed: "MintNotAllowed",
26
+ InvalidPeer: "InvalidPeer",
27
+ InsufficientBalance: "InsufficientBalance",
28
+ ZeroAmount: "ZeroAmount",
29
+ CloneFailed: "CloneFailed",
30
+ InvalidChainKey: "InvalidChainKey",
31
+ InvalidDexKind: "InvalidDexKind",
32
+ InvalidLaunchStep: "InvalidLaunchStep",
33
+ InvalidLaunchStatus: "InvalidLaunchStatus",
34
+ NotInitialized: "NotInitialized",
35
+ EndpointZero: "EndpointZero",
36
+ LengthMismatch: "LengthMismatch",
37
+ LockNotFound: "LockNotFound",
38
+ AlreadyWithdrawn: "AlreadyWithdrawn",
39
+ NativeTransferFailed: "NativeTransferFailed",
40
+ Paused: "Paused",
41
+ MaxTxExceeded: "MaxTxExceeded",
42
+ MaxWalletExceeded: "MaxWalletExceeded",
43
+ Blacklisted: "Blacklisted",
44
+ BondingDisabled: "BondingDisabled",
45
+ SaleNotActive: "SaleNotActive",
46
+ SaleCapExceeded: "SaleCapExceeded",
47
+ SaleNotFailed: "SaleNotFailed",
48
+ SaleNotFinalizable: "SaleNotFinalizable",
49
+ PlatformFeeTooHigh: "PlatformFeeTooHigh",
50
+ Unknown: "Unknown",
51
+ SimulationFailed: "SimulationFailed",
52
+ };
53
+ export const USER_CODES = new Set([
54
+ ErrorCode.InvalidName,
55
+ ErrorCode.InvalidSymbol,
56
+ ErrorCode.DecimalsOutOfRange,
57
+ ErrorCode.SupplyZero,
58
+ ErrorCode.SupplyOverflow,
59
+ ErrorCode.TaxTooHigh,
60
+ ErrorCode.RecipientZero,
61
+ ErrorCode.LockDurationInvalid,
62
+ ErrorCode.DexUnsupported,
63
+ ErrorCode.ChainDisabled,
64
+ ErrorCode.UnknownModule,
65
+ ErrorCode.InvalidSupplyMode,
66
+ ErrorCode.InvalidLockMode,
67
+ ErrorCode.InvalidOwnershipAction,
68
+ ErrorCode.InvalidChainKey,
69
+ ErrorCode.InvalidDexKind,
70
+ ErrorCode.ZeroAmount,
71
+ ErrorCode.LengthMismatch,
72
+ ErrorCode.LockNotFound,
73
+ ErrorCode.AlreadyWithdrawn,
74
+ ErrorCode.Paused,
75
+ ErrorCode.MaxTxExceeded,
76
+ ErrorCode.MaxWalletExceeded,
77
+ ErrorCode.Blacklisted,
78
+ ]);
79
+ export const RETRYABLE_CODES = new Set([
80
+ ErrorCode.InsufficientNative,
81
+ ErrorCode.InsufficientBalance,
82
+ ErrorCode.SimulationFailed,
83
+ ]);
84
+ //# sourceMappingURL=codes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../src/errors/codes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,WAAW,EAAE,aAAa;IAC1B,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,aAAa,EAAE,eAAe;IAC9B,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;IAC5C,kBAAkB,EAAE,oBAAoB;IACxC,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,sBAAsB,EAAE,wBAAwB;IAChD,cAAc,EAAE,gBAAgB;IAChC,WAAW,EAAE,aAAa;IAC1B,mBAAmB,EAAE,qBAAqB;IAC1C,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;IACpC,oBAAoB,EAAE,sBAAsB;IAC5C,MAAM,EAAE,QAAQ;IAChB,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,mBAAmB;IACtC,WAAW,EAAE,aAAa;IAC1B,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,OAAO,EAAE,SAAS;IAClB,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;AAcX,MAAM,CAAC,MAAM,UAAU,GAAwB,IAAI,GAAG,CAAC;IACrD,SAAS,CAAC,WAAW;IACrB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,kBAAkB;IAC5B,SAAS,CAAC,UAAU;IACpB,SAAS,CAAC,cAAc;IACxB,SAAS,CAAC,UAAU;IACpB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,mBAAmB;IAC7B,SAAS,CAAC,cAAc;IACxB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,iBAAiB;IAC3B,SAAS,CAAC,eAAe;IACzB,SAAS,CAAC,sBAAsB;IAChC,SAAS,CAAC,eAAe;IACzB,SAAS,CAAC,cAAc;IACxB,SAAS,CAAC,UAAU;IACpB,SAAS,CAAC,cAAc;IACxB,SAAS,CAAC,YAAY;IACtB,SAAS,CAAC,gBAAgB;IAC1B,SAAS,CAAC,MAAM;IAChB,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,iBAAiB;IAC3B,SAAS,CAAC,WAAW;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAC;IAC1D,SAAS,CAAC,kBAAkB;IAC5B,SAAS,CAAC,mBAAmB;IAC7B,SAAS,CAAC,gBAAgB;CAC3B,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type ErrorCodeName, type LaunchError } from "./codes.js";
2
+ import { type Locale } from "./messages.js";
3
+ export declare function decodeLaunchError(data: `0x${string}` | undefined, locale?: Locale): LaunchError;
4
+ export declare function err(code: ErrorCodeName, args?: unknown[], locale?: Locale): LaunchError;
5
+ //# sourceMappingURL=decode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/errors/decode.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,WAAW,EAEjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAQxD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,SAAS,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,CA8BrG;AAED,wBAAgB,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,GAAE,OAAO,EAAO,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,CAQjG"}
@@ -0,0 +1,53 @@
1
+ import { decodeErrorResult } from "viem";
2
+ import { launchErrorAbi } from "./abi.js";
3
+ import { ErrorCode, RETRYABLE_CODES, USER_CODES, } from "./codes.js";
4
+ import { messageFor } from "./messages.js";
5
+ function severityOf(code) {
6
+ if (USER_CODES.has(code))
7
+ return "user";
8
+ if (code === ErrorCode.Unknown || code === ErrorCode.CloneFailed)
9
+ return "fatal";
10
+ return "chain";
11
+ }
12
+ export function decodeLaunchError(data, locale = "en") {
13
+ if (!data || data === "0x") {
14
+ return {
15
+ code: ErrorCode.Unknown,
16
+ args: [],
17
+ severity: "fatal",
18
+ retryable: false,
19
+ message: messageFor(ErrorCode.Unknown, locale),
20
+ };
21
+ }
22
+ try {
23
+ const decoded = decodeErrorResult({ abi: launchErrorAbi, data });
24
+ const code = (ErrorCode[decoded.errorName] ??
25
+ ErrorCode.Unknown);
26
+ return {
27
+ code,
28
+ args: decoded.args ? [...decoded.args] : [],
29
+ severity: severityOf(code),
30
+ retryable: RETRYABLE_CODES.has(code),
31
+ message: messageFor(code, locale),
32
+ };
33
+ }
34
+ catch {
35
+ return {
36
+ code: ErrorCode.Unknown,
37
+ args: [data],
38
+ severity: "fatal",
39
+ retryable: false,
40
+ message: messageFor(ErrorCode.Unknown, locale),
41
+ };
42
+ }
43
+ }
44
+ export function err(code, args = [], locale = "en") {
45
+ return {
46
+ code,
47
+ args,
48
+ severity: severityOf(code),
49
+ retryable: RETRYABLE_CODES.has(code),
50
+ message: messageFor(code, locale),
51
+ };
52
+ }
53
+ //# sourceMappingURL=decode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decode.js","sourceRoot":"","sources":["../../src/errors/decode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EACL,SAAS,EACT,eAAe,EACf,UAAU,GAIX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAe,MAAM,eAAe,CAAC;AAExD,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IACxC,IAAI,IAAI,KAAK,SAAS,CAAC,OAAO,IAAI,IAAI,KAAK,SAAS,CAAC,WAAW;QAAE,OAAO,OAAO,CAAC;IACjF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAA+B,EAAE,SAAiB,IAAI;IACtF,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,OAAO;YACvB,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;SAC/C,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,SAAmC,CAAC;YAClE,SAAS,CAAC,OAAO,CAAkB,CAAC;QACtC,OAAO;YACL,IAAI;YACJ,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YAC3C,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC;YAC1B,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YACpC,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;SAClC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,OAAO;YACvB,IAAI,EAAE,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;SAC/C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,IAAmB,EAAE,OAAkB,EAAE,EAAE,SAAiB,IAAI;IAClF,OAAO;QACL,IAAI;QACJ,IAAI;QACJ,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC;QAC1B,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;QACpC,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC"}