@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.
- package/LICENSE +21 -0
- package/README.md +13 -0
- package/dist/abi/launch.d.ts +389 -0
- package/dist/abi/launch.d.ts.map +1 -0
- package/dist/abi/launch.js +211 -0
- package/dist/abi/launch.js.map +1 -0
- package/dist/errors/abi.d.ts +272 -0
- package/dist/errors/abi.d.ts.map +1 -0
- package/dist/errors/abi.js +51 -0
- package/dist/errors/abi.js.map +1 -0
- package/dist/errors/codes.d.ts +64 -0
- package/dist/errors/codes.d.ts.map +1 -0
- package/dist/errors/codes.js +84 -0
- package/dist/errors/codes.js.map +1 -0
- package/dist/errors/decode.d.ts +5 -0
- package/dist/errors/decode.d.ts.map +1 -0
- package/dist/errors/decode.js +53 -0
- package/dist/errors/decode.js.map +1 -0
- package/dist/errors/messages.d.ts +162 -0
- package/dist/errors/messages.d.ts.map +1 -0
- package/dist/errors/messages.js +163 -0
- package/dist/errors/messages.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/oft/peers.d.ts +21 -0
- package/dist/oft/peers.d.ts.map +1 -0
- package/dist/oft/peers.js +39 -0
- package/dist/oft/peers.js.map +1 -0
- package/dist/validation/launch.d.ts +16 -0
- package/dist/validation/launch.d.ts.map +1 -0
- package/dist/validation/launch.js +37 -0
- package/dist/validation/launch.js.map +1 -0
- package/dist/validation/liquidity.d.ts +6 -0
- package/dist/validation/liquidity.d.ts.map +1 -0
- package/dist/validation/liquidity.js +29 -0
- package/dist/validation/liquidity.js.map +1 -0
- package/dist/validation/native.d.ts +10 -0
- package/dist/validation/native.d.ts.map +1 -0
- package/dist/validation/native.js +53 -0
- package/dist/validation/native.js.map +1 -0
- package/dist/validation/token.d.ts +17 -0
- package/dist/validation/token.d.ts.map +1 -0
- package/dist/validation/token.js +73 -0
- package/dist/validation/token.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ErrorCode } from "../errors/codes.js";
|
|
2
|
+
import { err } from "../errors/decode.js";
|
|
3
|
+
const NEAR_ACCOUNT = /^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/;
|
|
4
|
+
export function isNearAccountId(id) {
|
|
5
|
+
return id.length > 1 && id.length <= 64 && NEAR_ACCOUNT.test(id);
|
|
6
|
+
}
|
|
7
|
+
export function isCardanoAddress(addr) {
|
|
8
|
+
return /^(addr1|addr_test1|stake1|stake_test1)[0-9a-z]+$/.test(addr) || /^[0-9a-f]{16,}$/i.test(addr);
|
|
9
|
+
}
|
|
10
|
+
const B58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
|
|
11
|
+
/** Solana pubkey: base58 of 32 bytes. */
|
|
12
|
+
export function isSolanaAddress(addr) {
|
|
13
|
+
if (addr.length < 32 || addr.length > 44)
|
|
14
|
+
return false;
|
|
15
|
+
const bytes = [];
|
|
16
|
+
for (const ch of addr) {
|
|
17
|
+
const val = B58.indexOf(ch);
|
|
18
|
+
if (val < 0)
|
|
19
|
+
return false;
|
|
20
|
+
let carry = val;
|
|
21
|
+
for (let i = 0; i < bytes.length; i++) {
|
|
22
|
+
const x = bytes[i] * 58 + carry;
|
|
23
|
+
bytes[i] = x & 0xff;
|
|
24
|
+
carry = x >> 8;
|
|
25
|
+
}
|
|
26
|
+
while (carry > 0) {
|
|
27
|
+
bytes.push(carry & 0xff);
|
|
28
|
+
carry >>= 8;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
for (const ch of addr) {
|
|
32
|
+
if (ch !== "1")
|
|
33
|
+
break;
|
|
34
|
+
bytes.push(0);
|
|
35
|
+
}
|
|
36
|
+
return bytes.length === 32;
|
|
37
|
+
}
|
|
38
|
+
export function validateNearAccount(id, locale = "en") {
|
|
39
|
+
if (!isNearAccountId(id))
|
|
40
|
+
return [err(ErrorCode.RecipientZero, [], locale)];
|
|
41
|
+
return [];
|
|
42
|
+
}
|
|
43
|
+
export function validateCardanoAddress(addr, locale = "en") {
|
|
44
|
+
if (!isCardanoAddress(addr))
|
|
45
|
+
return [err(ErrorCode.RecipientZero, [], locale)];
|
|
46
|
+
return [];
|
|
47
|
+
}
|
|
48
|
+
export function validateSolanaAddress(addr, locale = "en") {
|
|
49
|
+
if (!isSolanaAddress(addr))
|
|
50
|
+
return [err(ErrorCode.RecipientZero, [], locale)];
|
|
51
|
+
return [];
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native.js","sourceRoot":"","sources":["../../src/validation/native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAG1C,MAAM,YAAY,GAChB,uDAAuD,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,EAAU;IACxC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,kDAAkD,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxG,CAAC;AAED,MAAM,GAAG,GAAG,4DAA4D,CAAC;AAEzE,yCAAyC;AACzC,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,KAAK,CAAC;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1B,IAAI,KAAK,GAAG,GAAG,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,GAAG,EAAE,GAAG,KAAK,CAAC;YACjC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACpB,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACzB,KAAK,KAAK,CAAC,CAAC;QACd,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM;QACtB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAU,EAAE,SAAiB,IAAI;IACnE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5E,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,SAAiB,IAAI;IACxE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/E,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,SAAiB,IAAI;IACvE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9E,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type LaunchError } from "../errors/codes.js";
|
|
2
|
+
import type { Locale } from "../errors/messages.js";
|
|
3
|
+
export declare function utf8Bytes(value: string): number;
|
|
4
|
+
export declare function validateName(name: string, locale?: Locale): LaunchError[];
|
|
5
|
+
export declare function validateSymbol(symbol: string, locale?: Locale): LaunchError[];
|
|
6
|
+
export declare function validateDecimals(decimals: number, locale?: Locale): LaunchError[];
|
|
7
|
+
export declare function validateSupply(supply: bigint, locale?: Locale): LaunchError[];
|
|
8
|
+
export declare function validateSupplyMode(mode: number, locale?: Locale): LaunchError[];
|
|
9
|
+
export declare function validateModuleFlags(flags: number, locale?: Locale): LaunchError[];
|
|
10
|
+
export declare function validateTax(buyBps: number, sellBps: number, recipient: `0x${string}` | string, locale?: Locale): LaunchError[];
|
|
11
|
+
export declare function validateBasics(input: {
|
|
12
|
+
name: string;
|
|
13
|
+
symbol: string;
|
|
14
|
+
decimals: number;
|
|
15
|
+
totalSupply: bigint;
|
|
16
|
+
}, locale?: Locale): LaunchError[];
|
|
17
|
+
//# sourceMappingURL=token.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/validation/token.ts"],"names":[],"mappings":"AAaA,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CAM/E;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CASnF;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CAKvF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CAInF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CAKrF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,WAAW,EAAE,CAGvF;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,KAAK,MAAM,EAAE,GAAG,MAAM,EACjC,MAAM,GAAE,MAAa,GACpB,WAAW,EAAE,CASf;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAC9E,MAAM,GAAE,MAAa,GACpB,WAAW,EAAE,CAOf"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { DECIMALS_MAX, DECIMALS_MIN, MODULE_ALL_MASK, NAME_MAX_BYTES, NAME_MIN_BYTES, SYMBOL_MAX_BYTES, SYMBOL_MIN_BYTES, MAX_SUPPLY, SupplyMode, TAX_MAX_BPS_ONE_SIDE, TAX_MAX_BPS_SUM, } from "@ysk-mint/config";
|
|
2
|
+
import { ErrorCode } from "../errors/codes.js";
|
|
3
|
+
import { err } from "../errors/decode.js";
|
|
4
|
+
const encoder = new TextEncoder();
|
|
5
|
+
export function utf8Bytes(value) {
|
|
6
|
+
return encoder.encode(value).length;
|
|
7
|
+
}
|
|
8
|
+
export function validateName(name, locale = "en") {
|
|
9
|
+
const errors = [];
|
|
10
|
+
const bytes = utf8Bytes(name);
|
|
11
|
+
if (bytes < NAME_MIN_BYTES || bytes > NAME_MAX_BYTES)
|
|
12
|
+
errors.push(err(ErrorCode.InvalidName, [], locale));
|
|
13
|
+
else if (name.trim().length === 0)
|
|
14
|
+
errors.push(err(ErrorCode.InvalidName, [], locale));
|
|
15
|
+
return errors;
|
|
16
|
+
}
|
|
17
|
+
export function validateSymbol(symbol, locale = "en") {
|
|
18
|
+
const errors = [];
|
|
19
|
+
const bytes = utf8Bytes(symbol);
|
|
20
|
+
if (bytes < SYMBOL_MIN_BYTES || bytes > SYMBOL_MAX_BYTES) {
|
|
21
|
+
errors.push(err(ErrorCode.InvalidSymbol, [], locale));
|
|
22
|
+
return errors;
|
|
23
|
+
}
|
|
24
|
+
if (!/^[A-Za-z0-9]+$/.test(symbol))
|
|
25
|
+
errors.push(err(ErrorCode.InvalidSymbol, [], locale));
|
|
26
|
+
return errors;
|
|
27
|
+
}
|
|
28
|
+
export function validateDecimals(decimals, locale = "en") {
|
|
29
|
+
if (!Number.isInteger(decimals) || decimals < DECIMALS_MIN || decimals > DECIMALS_MAX) {
|
|
30
|
+
return [err(ErrorCode.DecimalsOutOfRange, [decimals], locale)];
|
|
31
|
+
}
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
export function validateSupply(supply, locale = "en") {
|
|
35
|
+
if (supply === 0n)
|
|
36
|
+
return [err(ErrorCode.SupplyZero, [], locale)];
|
|
37
|
+
if (supply > MAX_SUPPLY)
|
|
38
|
+
return [err(ErrorCode.SupplyOverflow, [supply], locale)];
|
|
39
|
+
return [];
|
|
40
|
+
}
|
|
41
|
+
export function validateSupplyMode(mode, locale = "en") {
|
|
42
|
+
if (mode !== SupplyMode.Fixed && mode !== SupplyMode.Mintable) {
|
|
43
|
+
return [err(ErrorCode.InvalidSupplyMode, [mode], locale)];
|
|
44
|
+
}
|
|
45
|
+
return [];
|
|
46
|
+
}
|
|
47
|
+
export function validateModuleFlags(flags, locale = "en") {
|
|
48
|
+
if ((flags & ~MODULE_ALL_MASK) !== 0)
|
|
49
|
+
return [err(ErrorCode.UnknownModule, [flags], locale)];
|
|
50
|
+
return [];
|
|
51
|
+
}
|
|
52
|
+
export function validateTax(buyBps, sellBps, recipient, locale = "en") {
|
|
53
|
+
const errors = [];
|
|
54
|
+
if (buyBps > TAX_MAX_BPS_ONE_SIDE)
|
|
55
|
+
errors.push(err(ErrorCode.TaxTooHigh, [buyBps], locale));
|
|
56
|
+
if (sellBps > TAX_MAX_BPS_ONE_SIDE)
|
|
57
|
+
errors.push(err(ErrorCode.TaxTooHigh, [sellBps], locale));
|
|
58
|
+
if (buyBps + sellBps > TAX_MAX_BPS_SUM)
|
|
59
|
+
errors.push(err(ErrorCode.TaxTooHigh, [buyBps + sellBps], locale));
|
|
60
|
+
if ((buyBps > 0 || sellBps > 0) && (!recipient || recipient === "0x0000000000000000000000000000000000000000")) {
|
|
61
|
+
errors.push(err(ErrorCode.RecipientZero, [], locale));
|
|
62
|
+
}
|
|
63
|
+
return errors;
|
|
64
|
+
}
|
|
65
|
+
export function validateBasics(input, locale = "en") {
|
|
66
|
+
return [
|
|
67
|
+
...validateName(input.name, locale),
|
|
68
|
+
...validateSymbol(input.symbol, locale),
|
|
69
|
+
...validateDecimals(input.decimals, locale),
|
|
70
|
+
...validateSupply(input.totalSupply, locale),
|
|
71
|
+
];
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/validation/token.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@ysk-mint/sdk",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Enums, error codes, validation, and OFT helpers for YSK Mint.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"LICENSE",
|
|
18
|
+
"README.md"
|
|
19
|
+
],
|
|
20
|
+
"publishConfig": {
|
|
21
|
+
"access": "public"
|
|
22
|
+
},
|
|
23
|
+
"repository": {
|
|
24
|
+
"type": "git",
|
|
25
|
+
"url": "git+https://github.com/yanshekki/ysk-mint.git",
|
|
26
|
+
"directory": "packages/sdk"
|
|
27
|
+
},
|
|
28
|
+
"homepage": "https://mint.ysk.hk",
|
|
29
|
+
"bugs": {
|
|
30
|
+
"url": "https://github.com/yanshekki/ysk-mint/issues"
|
|
31
|
+
},
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=22"
|
|
34
|
+
},
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"viem": "^2.28.0",
|
|
37
|
+
"@ysk-mint/config": "1.0.0"
|
|
38
|
+
},
|
|
39
|
+
"devDependencies": {
|
|
40
|
+
"@types/node": "^22.13.10",
|
|
41
|
+
"typescript": "^5.8.2",
|
|
42
|
+
"vitest": "^3.0.9"
|
|
43
|
+
},
|
|
44
|
+
"scripts": {
|
|
45
|
+
"build": "tsc -p tsconfig.build.json",
|
|
46
|
+
"test": "vitest run",
|
|
47
|
+
"typecheck": "tsc --noEmit"
|
|
48
|
+
}
|
|
49
|
+
}
|