genius-intents 0.1.4
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/CHANGELOG.md +45 -0
- package/LICENSE +21 -0
- package/README.md +376 -0
- package/dist/src/index.d.ts +27 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +62 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/intents-protocols.d.ts +69 -0
- package/dist/src/intents-protocols.d.ts.map +1 -0
- package/dist/src/intents-protocols.js +371 -0
- package/dist/src/intents-protocols.js.map +1 -0
- package/dist/src/interfaces/intent-protocol.d.ts +21 -0
- package/dist/src/interfaces/intent-protocol.d.ts.map +1 -0
- package/dist/src/interfaces/intent-protocol.js +3 -0
- package/dist/src/interfaces/intent-protocol.js.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.service.d.ts +28 -0
- package/dist/src/protocols/aftermath/aftermath.service.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.service.js +162 -0
- package/dist/src/protocols/aftermath/aftermath.service.js.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.types.d.ts +100 -0
- package/dist/src/protocols/aftermath/aftermath.types.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.types.js +3 -0
- package/dist/src/protocols/aftermath/aftermath.types.js.map +1 -0
- package/dist/src/protocols/aftermath/index.d.ts +3 -0
- package/dist/src/protocols/aftermath/index.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/index.js +7 -0
- package/dist/src/protocols/aftermath/index.js.map +1 -0
- package/dist/src/protocols/debridge/debridge.service.d.ts +157 -0
- package/dist/src/protocols/debridge/debridge.service.d.ts.map +1 -0
- package/dist/src/protocols/debridge/debridge.service.js +462 -0
- package/dist/src/protocols/debridge/debridge.service.js.map +1 -0
- package/dist/src/protocols/debridge/debridge.types.d.ts +82 -0
- package/dist/src/protocols/debridge/debridge.types.d.ts.map +1 -0
- package/dist/src/protocols/debridge/debridge.types.js +3 -0
- package/dist/src/protocols/debridge/debridge.types.js.map +1 -0
- package/dist/src/protocols/debridge/index.d.ts +3 -0
- package/dist/src/protocols/debridge/index.d.ts.map +1 -0
- package/dist/src/protocols/debridge/index.js +7 -0
- package/dist/src/protocols/debridge/index.js.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts +36 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.js +312 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.js.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts +100 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.js +3 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.js.map +1 -0
- package/dist/src/protocols/genius-bridge/index.d.ts +3 -0
- package/dist/src/protocols/genius-bridge/index.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/index.js +7 -0
- package/dist/src/protocols/genius-bridge/index.js.map +1 -0
- package/dist/src/protocols/jupiter/index.d.ts +3 -0
- package/dist/src/protocols/jupiter/index.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/index.js +7 -0
- package/dist/src/protocols/jupiter/index.js.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.service.d.ts +37 -0
- package/dist/src/protocols/jupiter/jupiter.service.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.service.js +188 -0
- package/dist/src/protocols/jupiter/jupiter.service.js.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.types.d.ts +272 -0
- package/dist/src/protocols/jupiter/jupiter.types.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.types.js +3 -0
- package/dist/src/protocols/jupiter/jupiter.types.js.map +1 -0
- package/dist/src/protocols/kyberswap/index.d.ts +3 -0
- package/dist/src/protocols/kyberswap/index.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/index.js +7 -0
- package/dist/src/protocols/kyberswap/index.js.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.d.ts +34 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.js +218 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.js.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.d.ts +114 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.js +3 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.js.map +1 -0
- package/dist/src/protocols/odos/index.d.ts +3 -0
- package/dist/src/protocols/odos/index.d.ts.map +1 -0
- package/dist/src/protocols/odos/index.js +7 -0
- package/dist/src/protocols/odos/index.js.map +1 -0
- package/dist/src/protocols/odos/odos.service.d.ts +39 -0
- package/dist/src/protocols/odos/odos.service.d.ts.map +1 -0
- package/dist/src/protocols/odos/odos.service.js +207 -0
- package/dist/src/protocols/odos/odos.service.js.map +1 -0
- package/dist/src/protocols/odos/odos.types.d.ts +114 -0
- package/dist/src/protocols/odos/odos.types.d.ts.map +1 -0
- package/dist/src/protocols/odos/odos.types.js +3 -0
- package/dist/src/protocols/odos/odos.types.js.map +1 -0
- package/dist/src/protocols/okx/index.d.ts +3 -0
- package/dist/src/protocols/okx/index.d.ts.map +1 -0
- package/dist/src/protocols/okx/index.js +7 -0
- package/dist/src/protocols/okx/index.js.map +1 -0
- package/dist/src/protocols/okx/okx.service.d.ts +36 -0
- package/dist/src/protocols/okx/okx.service.d.ts.map +1 -0
- package/dist/src/protocols/okx/okx.service.js +281 -0
- package/dist/src/protocols/okx/okx.service.js.map +1 -0
- package/dist/src/protocols/okx/okx.types.d.ts +119 -0
- package/dist/src/protocols/okx/okx.types.d.ts.map +1 -0
- package/dist/src/protocols/okx/okx.types.js +4 -0
- package/dist/src/protocols/okx/okx.types.js.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.js +2 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.js.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.js +2 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.js.map +1 -0
- package/dist/src/protocols/openocean/index.d.ts +3 -0
- package/dist/src/protocols/openocean/index.d.ts.map +1 -0
- package/dist/src/protocols/openocean/index.js +7 -0
- package/dist/src/protocols/openocean/index.js.map +1 -0
- package/dist/src/protocols/openocean/openocean.service.d.ts +29 -0
- package/dist/src/protocols/openocean/openocean.service.d.ts.map +1 -0
- package/dist/src/protocols/openocean/openocean.service.js +181 -0
- package/dist/src/protocols/openocean/openocean.service.js.map +1 -0
- package/dist/src/protocols/openocean/openocean.types.d.ts +68 -0
- package/dist/src/protocols/openocean/openocean.types.d.ts.map +1 -0
- package/dist/src/protocols/openocean/openocean.types.js +3 -0
- package/dist/src/protocols/openocean/openocean.types.js.map +1 -0
- package/dist/src/protocols/pumpfun/index.d.ts +3 -0
- package/dist/src/protocols/pumpfun/index.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/index.js +7 -0
- package/dist/src/protocols/pumpfun/index.js.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.d.ts +45 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.js +217 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.js.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.d.ts +14 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.js +3 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.js.map +1 -0
- package/dist/src/protocols/raydium/index.d.ts +3 -0
- package/dist/src/protocols/raydium/index.d.ts.map +1 -0
- package/dist/src/protocols/raydium/index.js +7 -0
- package/dist/src/protocols/raydium/index.js.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.service.d.ts +35 -0
- package/dist/src/protocols/raydium/raydium-v2.service.d.ts.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.service.js +301 -0
- package/dist/src/protocols/raydium/raydium-v2.service.js.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.types.d.ts +96 -0
- package/dist/src/protocols/raydium/raydium-v2.types.d.ts.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.types.js +3 -0
- package/dist/src/protocols/raydium/raydium-v2.types.js.map +1 -0
- package/dist/src/protocols/zeroX/index.d.ts +3 -0
- package/dist/src/protocols/zeroX/index.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/index.js +7 -0
- package/dist/src/protocols/zeroX/index.js.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.service.d.ts +37 -0
- package/dist/src/protocols/zeroX/zeroX.service.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.service.js +209 -0
- package/dist/src/protocols/zeroX/zeroX.service.js.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.types.d.ts +120 -0
- package/dist/src/protocols/zeroX/zeroX.types.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.types.js +3 -0
- package/dist/src/protocols/zeroX/zeroX.types.js.map +1 -0
- package/dist/src/types/enums.d.ts +42 -0
- package/dist/src/types/enums.d.ts.map +1 -0
- package/dist/src/types/enums.js +49 -0
- package/dist/src/types/enums.js.map +1 -0
- package/dist/src/types/intents-protocols.d.ts +89 -0
- package/dist/src/types/intents-protocols.d.ts.map +1 -0
- package/dist/src/types/intents-protocols.js +3 -0
- package/dist/src/types/intents-protocols.js.map +1 -0
- package/dist/src/types/price-response.d.ts +26 -0
- package/dist/src/types/price-response.d.ts.map +1 -0
- package/dist/src/types/price-response.js +3 -0
- package/dist/src/types/price-response.js.map +1 -0
- package/dist/src/types/quote-response.d.ts +31 -0
- package/dist/src/types/quote-response.d.ts.map +1 -0
- package/dist/src/types/quote-response.js +3 -0
- package/dist/src/types/quote-response.js.map +1 -0
- package/dist/src/utils/address-validation.d.ts +9 -0
- package/dist/src/utils/address-validation.d.ts.map +1 -0
- package/dist/src/utils/address-validation.js +42 -0
- package/dist/src/utils/address-validation.js.map +1 -0
- package/dist/src/utils/address.d.ts +9 -0
- package/dist/src/utils/address.d.ts.map +1 -0
- package/dist/src/utils/address.js +74 -0
- package/dist/src/utils/address.js.map +1 -0
- package/dist/src/utils/base64-to-base58.d.ts +2 -0
- package/dist/src/utils/base64-to-base58.d.ts.map +1 -0
- package/dist/src/utils/base64-to-base58.js +22 -0
- package/dist/src/utils/base64-to-base58.js.map +1 -0
- package/dist/src/utils/chain-id-name.d.ts +3 -0
- package/dist/src/utils/chain-id-name.d.ts.map +1 -0
- package/dist/src/utils/chain-id-name.js +23 -0
- package/dist/src/utils/chain-id-name.js.map +1 -0
- package/dist/src/utils/check-vm.d.ts +8 -0
- package/dist/src/utils/check-vm.d.ts.map +1 -0
- package/dist/src/utils/check-vm.js +39 -0
- package/dist/src/utils/check-vm.js.map +1 -0
- package/dist/src/utils/constants.d.ts +7 -0
- package/dist/src/utils/constants.d.ts.map +1 -0
- package/dist/src/utils/constants.js +10 -0
- package/dist/src/utils/constants.js.map +1 -0
- package/dist/src/utils/create-error-message.d.ts +5 -0
- package/dist/src/utils/create-error-message.d.ts.map +1 -0
- package/dist/src/utils/create-error-message.js +42 -0
- package/dist/src/utils/create-error-message.js.map +1 -0
- package/dist/src/utils/fetch-spl-metadata.d.ts +4 -0
- package/dist/src/utils/fetch-spl-metadata.d.ts.map +1 -0
- package/dist/src/utils/fetch-spl-metadata.js +108 -0
- package/dist/src/utils/fetch-spl-metadata.js.map +1 -0
- package/dist/src/utils/is-native.d.ts +2 -0
- package/dist/src/utils/is-native.d.ts.map +1 -0
- package/dist/src/utils/is-native.js +23 -0
- package/dist/src/utils/is-native.js.map +1 -0
- package/dist/src/utils/logger.d.ts +56 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/logger.js +108 -0
- package/dist/src/utils/logger.js.map +1 -0
- package/dist/src/utils/throw-error.d.ts +3 -0
- package/dist/src/utils/throw-error.d.ts.map +1 -0
- package/dist/src/utils/throw-error.js +8 -0
- package/dist/src/utils/throw-error.js.map +1 -0
- package/dist/tests/core/intent-protocol-suite.test.d.ts +2 -0
- package/dist/tests/core/intent-protocol-suite.test.d.ts.map +1 -0
- package/dist/tests/core/intent-protocol-suite.test.js +485 -0
- package/dist/tests/core/intent-protocol-suite.test.js.map +1 -0
- package/dist/tests/core/intents-protocols.test.d.ts +2 -0
- package/dist/tests/core/intents-protocols.test.d.ts.map +1 -0
- package/dist/tests/core/intents-protocols.test.js +307 -0
- package/dist/tests/core/intents-protocols.test.js.map +1 -0
- package/dist/tests/core/protocol-test-runner.d.ts +62 -0
- package/dist/tests/core/protocol-test-runner.d.ts.map +1 -0
- package/dist/tests/core/protocol-test-runner.js +260 -0
- package/dist/tests/core/protocol-test-runner.js.map +1 -0
- package/dist/tests/core/setup.test.d.ts +1 -0
- package/dist/tests/core/setup.test.d.ts.map +1 -0
- package/dist/tests/core/setup.test.js +13 -0
- package/dist/tests/core/setup.test.js.map +1 -0
- package/dist/tests/fixtures/test-data.d.ts +84 -0
- package/dist/tests/fixtures/test-data.d.ts.map +1 -0
- package/dist/tests/fixtures/test-data.js +142 -0
- package/dist/tests/fixtures/test-data.js.map +1 -0
- package/dist/tests/integration/cross-chain.test.d.ts +2 -0
- package/dist/tests/integration/cross-chain.test.d.ts.map +1 -0
- package/dist/tests/integration/cross-chain.test.js +44 -0
- package/dist/tests/integration/cross-chain.test.js.map +1 -0
- package/dist/tests/protocols/simple-protocol.test.d.ts +2 -0
- package/dist/tests/protocols/simple-protocol.test.d.ts.map +1 -0
- package/dist/tests/protocols/simple-protocol.test.js +77 -0
- package/dist/tests/protocols/simple-protocol.test.js.map +1 -0
- package/dist/tests/setup.d.ts +24 -0
- package/dist/tests/setup.d.ts.map +1 -0
- package/dist/tests/setup.js +48 -0
- package/dist/tests/setup.js.map +1 -0
- package/dist/tests/utils/test-generator.d.ts +30 -0
- package/dist/tests/utils/test-generator.d.ts.map +1 -0
- package/dist/tests/utils/test-generator.js +153 -0
- package/dist/tests/utils/test-generator.js.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quote-response.js","sourceRoot":"","sources":["../../../src/types/quote-response.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const SUI_REGEX: {
|
|
2
|
+
readonly coin: RegExp;
|
|
3
|
+
readonly wallet: RegExp;
|
|
4
|
+
};
|
|
5
|
+
export declare const validateAddress: (address: string) => void;
|
|
6
|
+
export declare const validateSolanaAddress: (address: string) => void;
|
|
7
|
+
export declare const validateAndChecksumEvmAddress: (address: string) => string;
|
|
8
|
+
export declare const validateSuiAddress: (address: string) => void;
|
|
9
|
+
//# sourceMappingURL=address-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address-validation.d.ts","sourceRoot":"","sources":["../../../src/utils/address-validation.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,IAIjD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM,KAAG,IAMvD,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,SAAS,MAAM,KAAG,MAI/D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,IAQpD,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateSuiAddress = exports.validateAndChecksumEvmAddress = exports.validateSolanaAddress = exports.validateAddress = exports.SUI_REGEX = void 0;
|
|
4
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
5
|
+
const ethers_1 = require("ethers");
|
|
6
|
+
exports.SUI_REGEX = {
|
|
7
|
+
coin: /^0x[a-fA-F0-9]{64}::[a-zA-Z_][a-zA-Z0-9_]*::[A-Z][A-Z0-9_]*$/,
|
|
8
|
+
wallet: /^0x[a-fA-F0-9]{64}$/,
|
|
9
|
+
};
|
|
10
|
+
const validateAddress = (address) => {
|
|
11
|
+
(0, exports.validateSolanaAddress)(address);
|
|
12
|
+
(0, exports.validateAndChecksumEvmAddress)(address);
|
|
13
|
+
(0, exports.validateSuiAddress)(address);
|
|
14
|
+
};
|
|
15
|
+
exports.validateAddress = validateAddress;
|
|
16
|
+
const validateSolanaAddress = (address) => {
|
|
17
|
+
try {
|
|
18
|
+
web3_js_1.PublicKey.isOnCurve(new web3_js_1.PublicKey(address));
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
throw new Error(`${address} is not a valid SOLANA address.`);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.validateSolanaAddress = validateSolanaAddress;
|
|
25
|
+
const validateAndChecksumEvmAddress = (address) => {
|
|
26
|
+
const result = ethers_1.ethers.getAddress(address.toLowerCase());
|
|
27
|
+
if (!result)
|
|
28
|
+
throw new Error(`${address} is not a valid EVM address.`);
|
|
29
|
+
else
|
|
30
|
+
return result;
|
|
31
|
+
};
|
|
32
|
+
exports.validateAndChecksumEvmAddress = validateAndChecksumEvmAddress;
|
|
33
|
+
const validateSuiAddress = (address) => {
|
|
34
|
+
const isValidCoinAddress = exports.SUI_REGEX.coin.test(address);
|
|
35
|
+
const isValidWalletAddress = exports.SUI_REGEX.wallet.test(address);
|
|
36
|
+
const isShortenedNative = address === '0x2::sui::SUI';
|
|
37
|
+
if (!isValidCoinAddress && !isValidWalletAddress && !isShortenedNative) {
|
|
38
|
+
throw new Error(`Invalid SUI address: ${address}`);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
exports.validateSuiAddress = validateSuiAddress;
|
|
42
|
+
//# sourceMappingURL=address-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address-validation.js","sourceRoot":"","sources":["../../../src/utils/address-validation.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,mCAAgC;AAEnB,QAAA,SAAS,GAAG;IACvB,IAAI,EAAE,8DAA8D;IACpE,MAAM,EAAE,qBAAqB;CACrB,CAAC;AAEJ,MAAM,eAAe,GAAG,CAAC,OAAe,EAAQ,EAAE;IACvD,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;IAC/B,IAAA,qCAA6B,EAAC,OAAO,CAAC,CAAC;IACvC,IAAA,0BAAkB,EAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC;AAJW,QAAA,eAAe,mBAI1B;AAEK,MAAM,qBAAqB,GAAG,CAAC,OAAe,EAAQ,EAAE;IAC7D,IAAI,CAAC;QACH,mBAAS,CAAC,SAAS,CAAC,IAAI,mBAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,iCAAiC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC,CAAC;AANW,QAAA,qBAAqB,yBAMhC;AAEK,MAAM,6BAA6B,GAAG,CAAC,OAAe,EAAU,EAAE;IACvE,MAAM,MAAM,GAAG,eAAM,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,8BAA8B,CAAC,CAAC;;QAClE,OAAO,MAAM,CAAC;AACrB,CAAC,CAAC;AAJW,QAAA,6BAA6B,iCAIxC;AAEK,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAQ,EAAE;IAC1D,MAAM,kBAAkB,GAAG,iBAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,oBAAoB,GAAG,iBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,OAAO,KAAK,eAAe,CAAC;IAEtD,IAAI,CAAC,kBAAkB,IAAI,CAAC,oBAAoB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC;AARW,QAAA,kBAAkB,sBAQ7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ChainVmTypeEnum } from '../types/enums';
|
|
2
|
+
export declare const identifyAddress: (address: string) => false | ChainVmTypeEnum;
|
|
3
|
+
export declare const isSolanaAddress: (address: string) => boolean;
|
|
4
|
+
export declare const validateSolanaAddress: (address: string) => void;
|
|
5
|
+
export declare const isEthAddress: (address: string) => boolean;
|
|
6
|
+
export declare const validateEthAddress: (address: string) => void;
|
|
7
|
+
export declare function validateSuiAddress(address: string): boolean;
|
|
8
|
+
export declare const formatAddress: (address: string) => string;
|
|
9
|
+
//# sourceMappingURL=address.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,KAAK,GAAG,eASzD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,OAIjD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM,KAAG,IAIvD,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,KAAG,OAI9C,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,IAIpD,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAuB3D;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,KAAG,MAK/C,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatAddress = exports.validateEthAddress = exports.isEthAddress = exports.validateSolanaAddress = exports.isSolanaAddress = exports.identifyAddress = void 0;
|
|
4
|
+
exports.validateSuiAddress = validateSuiAddress;
|
|
5
|
+
const ethers_1 = require("ethers");
|
|
6
|
+
const enums_1 = require("../types/enums");
|
|
7
|
+
const identifyAddress = (address) => {
|
|
8
|
+
// Check if the input is a string
|
|
9
|
+
if (typeof address !== 'string') {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
if ((0, exports.isEthAddress)(address))
|
|
13
|
+
return enums_1.ChainVmTypeEnum.EVM;
|
|
14
|
+
else if ((0, exports.isSolanaAddress)(address))
|
|
15
|
+
return enums_1.ChainVmTypeEnum.SOLANA;
|
|
16
|
+
else
|
|
17
|
+
return false;
|
|
18
|
+
};
|
|
19
|
+
exports.identifyAddress = identifyAddress;
|
|
20
|
+
const isSolanaAddress = (address) => {
|
|
21
|
+
// Regular expression for Solana addresses (base58 encoding, 32-44 characters)
|
|
22
|
+
const solanaRegex = /^[a-zA-Z0-9]{32,44}$/;
|
|
23
|
+
return solanaRegex.test(address);
|
|
24
|
+
};
|
|
25
|
+
exports.isSolanaAddress = isSolanaAddress;
|
|
26
|
+
const validateSolanaAddress = (address) => {
|
|
27
|
+
if (!(0, exports.isSolanaAddress)(address)) {
|
|
28
|
+
throw new Error('Invalid Solana address');
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
exports.validateSolanaAddress = validateSolanaAddress;
|
|
32
|
+
const isEthAddress = (address) => {
|
|
33
|
+
// Regular expression for Ethereum addresses
|
|
34
|
+
const ethRegex = /^0x[a-fA-F0-9]{40}$/;
|
|
35
|
+
return ethRegex.test(address);
|
|
36
|
+
};
|
|
37
|
+
exports.isEthAddress = isEthAddress;
|
|
38
|
+
const validateEthAddress = (address) => {
|
|
39
|
+
if (!(0, exports.isEthAddress)(address)) {
|
|
40
|
+
throw new Error('Invalid Ethereum address');
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
exports.validateEthAddress = validateEthAddress;
|
|
44
|
+
function validateSuiAddress(address) {
|
|
45
|
+
// Check if address is null or empty
|
|
46
|
+
if (!address) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
// Check if address starts with '0x'
|
|
50
|
+
if (!address.startsWith('0x')) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
// Check if address has correct length (32 bytes = 64 chars + '0x')
|
|
54
|
+
if (address.length !== 66) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
// Check if address contains only valid hexadecimal characters
|
|
58
|
+
const hexRegex = /^0x[0-9a-fA-F]+$/;
|
|
59
|
+
if (!hexRegex.test(address)) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
const formatAddress = (address) => {
|
|
65
|
+
const addressType = (0, exports.identifyAddress)(address);
|
|
66
|
+
if (!addressType)
|
|
67
|
+
throw new Error(`Invalid address ${address}`);
|
|
68
|
+
else if (addressType === enums_1.ChainVmTypeEnum.EVM)
|
|
69
|
+
return (0, ethers_1.getAddress)(address.toLowerCase());
|
|
70
|
+
else
|
|
71
|
+
return address;
|
|
72
|
+
};
|
|
73
|
+
exports.formatAddress = formatAddress;
|
|
74
|
+
//# sourceMappingURL=address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":";;;AAsCA,gDAuBC;AA7DD,mCAAoC;AACpC,0CAAiD;AAE1C,MAAM,eAAe,GAAG,CAAC,OAAe,EAA2B,EAAE;IAC1E,iCAAiC;IACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,IAAA,oBAAY,EAAC,OAAO,CAAC;QAAE,OAAO,uBAAe,CAAC,GAAG,CAAC;SACjD,IAAI,IAAA,uBAAe,EAAC,OAAO,CAAC;QAAE,OAAO,uBAAe,CAAC,MAAM,CAAC;;QAC5D,OAAO,KAAK,CAAC;AACpB,CAAC,CAAC;AATW,QAAA,eAAe,mBAS1B;AAEK,MAAM,eAAe,GAAG,CAAC,OAAe,EAAW,EAAE;IAC1D,8EAA8E;IAC9E,MAAM,WAAW,GAAG,sBAAsB,CAAC;IAC3C,OAAO,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC;AAJW,QAAA,eAAe,mBAI1B;AAEK,MAAM,qBAAqB,GAAG,CAAC,OAAe,EAAQ,EAAE;IAC7D,IAAI,CAAC,IAAA,uBAAe,EAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,qBAAqB,yBAIhC;AAEK,MAAM,YAAY,GAAG,CAAC,OAAe,EAAW,EAAE;IACvD,4CAA4C;IAC5C,MAAM,QAAQ,GAAG,qBAAqB,CAAC;IACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC,CAAC;AAJW,QAAA,YAAY,gBAIvB;AAEK,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAQ,EAAE;IAC1D,IAAI,CAAC,IAAA,oBAAY,EAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC;AAJW,QAAA,kBAAkB,sBAI7B;AAEF,SAAgB,kBAAkB,CAAC,OAAe;IAChD,oCAAoC;IACpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oCAAoC;IACpC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,mEAAmE;IACnE,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC;IACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,MAAM,aAAa,GAAG,CAAC,OAAe,EAAU,EAAE;IACvD,MAAM,WAAW,GAAG,IAAA,uBAAe,EAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC;SAC3D,IAAI,WAAW,KAAK,uBAAe,CAAC,GAAG;QAAE,OAAO,IAAA,mBAAU,EAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;;QAClF,OAAO,OAAO,CAAC;AACtB,CAAC,CAAC;AALW,QAAA,aAAa,iBAKxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base64-to-base58.d.ts","sourceRoot":"","sources":["../../../src/utils/base64-to-base58.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,GAAI,cAAc,MAAM,KAAG,MAa5D,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.convertBase64ToBase58 = void 0;
|
|
7
|
+
const bs58_1 = __importDefault(require("bs58"));
|
|
8
|
+
const convertBase64ToBase58 = (base64String) => {
|
|
9
|
+
try {
|
|
10
|
+
// First, decode the Base64 string to a Buffer/Uint8Array
|
|
11
|
+
const binaryData = Buffer.from(base64String, 'base64');
|
|
12
|
+
// Then encode the binary data to Base58
|
|
13
|
+
const base58String = bs58_1.default.encode(binaryData);
|
|
14
|
+
return base58String;
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
throw new Error(`Failed to convert Base64 to Base58: ${error.message}`);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.convertBase64ToBase58 = convertBase64ToBase58;
|
|
22
|
+
//# sourceMappingURL=base64-to-base58.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base64-to-base58.js","sourceRoot":"","sources":["../../../src/utils/base64-to-base58.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAEjB,MAAM,qBAAqB,GAAG,CAAC,YAAoB,EAAU,EAAE;IACpE,IAAI,CAAC;QACH,yDAAyD;QACzD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAEvD,wCAAwC;QACxC,MAAM,YAAY,GAAG,cAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE7C,OAAO,YAAY,CAAC;QACpB,8DAA8D;IAChE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,qBAAqB,yBAahC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-id-name.d.ts","sourceRoot":"","sources":["../../../src/utils/chain-id-name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,eAAO,MAAM,aAAa,GAAI,SAAS,WAAW,KAAG,MAiBpD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.chainIdToName = void 0;
|
|
4
|
+
const enums_1 = require("../types/enums");
|
|
5
|
+
const chainIdToName = (chainId) => {
|
|
6
|
+
const chainMap = {
|
|
7
|
+
[enums_1.ChainIdEnum.ETHEREUM]: 'ethereum',
|
|
8
|
+
[enums_1.ChainIdEnum.BSC]: 'bsc',
|
|
9
|
+
[enums_1.ChainIdEnum.POLYGON]: 'polygon',
|
|
10
|
+
[enums_1.ChainIdEnum.AVALANCHE]: 'avalanche',
|
|
11
|
+
[enums_1.ChainIdEnum.ARBITRUM]: 'arbitrum',
|
|
12
|
+
[enums_1.ChainIdEnum.OPTIMISM]: 'optimism',
|
|
13
|
+
[enums_1.ChainIdEnum.BASE]: 'base',
|
|
14
|
+
[enums_1.ChainIdEnum.SONIC]: 'sonic',
|
|
15
|
+
};
|
|
16
|
+
const name = chainMap[chainId];
|
|
17
|
+
if (!name) {
|
|
18
|
+
throw new Error(`Unsupported network: ${chainId}`);
|
|
19
|
+
}
|
|
20
|
+
return name;
|
|
21
|
+
};
|
|
22
|
+
exports.chainIdToName = chainIdToName;
|
|
23
|
+
//# sourceMappingURL=chain-id-name.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-id-name.js","sourceRoot":"","sources":["../../../src/utils/chain-id-name.ts"],"names":[],"mappings":";;;AAAA,0CAA6C;AAEtC,MAAM,aAAa,GAAG,CAAC,OAAoB,EAAU,EAAE;IAC5D,MAAM,QAAQ,GAA2B;QACvC,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE,UAAU;QAClC,CAAC,mBAAW,CAAC,GAAG,CAAC,EAAE,KAAK;QACxB,CAAC,mBAAW,CAAC,OAAO,CAAC,EAAE,SAAS;QAChC,CAAC,mBAAW,CAAC,SAAS,CAAC,EAAE,WAAW;QACpC,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE,UAAU;QAClC,CAAC,mBAAW,CAAC,QAAQ,CAAC,EAAE,UAAU;QAClC,CAAC,mBAAW,CAAC,IAAI,CAAC,EAAE,MAAM;QAC1B,CAAC,mBAAW,CAAC,KAAK,CAAC,EAAE,OAAO;KAC7B,CAAC;IAEF,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAjBW,QAAA,aAAa,iBAiBxB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ChainIdEnum } from '../types/enums';
|
|
2
|
+
export declare function isEVMNetwork(network: ChainIdEnum): boolean;
|
|
3
|
+
export declare function isL2Network(network: ChainIdEnum): boolean;
|
|
4
|
+
export declare function isMoveNetwork(network: ChainIdEnum): boolean;
|
|
5
|
+
export declare function isSuiNetwork(network: ChainIdEnum): boolean;
|
|
6
|
+
export declare function isAptosNetwork(network: ChainIdEnum): boolean;
|
|
7
|
+
export declare function isSolanaNetwork(network: ChainIdEnum): boolean;
|
|
8
|
+
//# sourceMappingURL=check-vm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-vm.d.ts","sourceRoot":"","sources":["../../../src/utils/check-vm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAY1D;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAOzD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAE3D;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAE1D;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAE5D;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAE7D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isEVMNetwork = isEVMNetwork;
|
|
4
|
+
exports.isL2Network = isL2Network;
|
|
5
|
+
exports.isMoveNetwork = isMoveNetwork;
|
|
6
|
+
exports.isSuiNetwork = isSuiNetwork;
|
|
7
|
+
exports.isAptosNetwork = isAptosNetwork;
|
|
8
|
+
exports.isSolanaNetwork = isSolanaNetwork;
|
|
9
|
+
const enums_1 = require("../types/enums");
|
|
10
|
+
function isEVMNetwork(network) {
|
|
11
|
+
return (network === enums_1.ChainIdEnum.ETHEREUM ||
|
|
12
|
+
network === enums_1.ChainIdEnum.ARBITRUM ||
|
|
13
|
+
network === enums_1.ChainIdEnum.OPTIMISM ||
|
|
14
|
+
network === enums_1.ChainIdEnum.POLYGON ||
|
|
15
|
+
network === enums_1.ChainIdEnum.BSC ||
|
|
16
|
+
network === enums_1.ChainIdEnum.AVALANCHE ||
|
|
17
|
+
network === enums_1.ChainIdEnum.BASE ||
|
|
18
|
+
network == enums_1.ChainIdEnum.SONIC ||
|
|
19
|
+
network == enums_1.ChainIdEnum.BLAST);
|
|
20
|
+
}
|
|
21
|
+
function isL2Network(network) {
|
|
22
|
+
return (network === enums_1.ChainIdEnum.ARBITRUM ||
|
|
23
|
+
network === enums_1.ChainIdEnum.OPTIMISM ||
|
|
24
|
+
network === enums_1.ChainIdEnum.BASE ||
|
|
25
|
+
network === enums_1.ChainIdEnum.BLAST);
|
|
26
|
+
}
|
|
27
|
+
function isMoveNetwork(network) {
|
|
28
|
+
return network === enums_1.ChainIdEnum.SUI || network === enums_1.ChainIdEnum.APTOS;
|
|
29
|
+
}
|
|
30
|
+
function isSuiNetwork(network) {
|
|
31
|
+
return network === enums_1.ChainIdEnum.SUI;
|
|
32
|
+
}
|
|
33
|
+
function isAptosNetwork(network) {
|
|
34
|
+
return network === enums_1.ChainIdEnum.APTOS;
|
|
35
|
+
}
|
|
36
|
+
function isSolanaNetwork(network) {
|
|
37
|
+
return network === enums_1.ChainIdEnum.SOLANA;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=check-vm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-vm.js","sourceRoot":"","sources":["../../../src/utils/check-vm.ts"],"names":[],"mappings":";;AAEA,oCAYC;AAED,kCAOC;AAED,sCAEC;AAED,oCAEC;AAED,wCAEC;AAED,0CAEC;AAvCD,0CAA6C;AAE7C,SAAgB,YAAY,CAAC,OAAoB;IAC/C,OAAO,CACL,OAAO,KAAK,mBAAW,CAAC,QAAQ;QAChC,OAAO,KAAK,mBAAW,CAAC,QAAQ;QAChC,OAAO,KAAK,mBAAW,CAAC,QAAQ;QAChC,OAAO,KAAK,mBAAW,CAAC,OAAO;QAC/B,OAAO,KAAK,mBAAW,CAAC,GAAG;QAC3B,OAAO,KAAK,mBAAW,CAAC,SAAS;QACjC,OAAO,KAAK,mBAAW,CAAC,IAAI;QAC5B,OAAO,IAAI,mBAAW,CAAC,KAAK;QAC5B,OAAO,IAAI,mBAAW,CAAC,KAAK,CAC7B,CAAC;AACJ,CAAC;AAED,SAAgB,WAAW,CAAC,OAAoB;IAC9C,OAAO,CACL,OAAO,KAAK,mBAAW,CAAC,QAAQ;QAChC,OAAO,KAAK,mBAAW,CAAC,QAAQ;QAChC,OAAO,KAAK,mBAAW,CAAC,IAAI;QAC5B,OAAO,KAAK,mBAAW,CAAC,KAAK,CAC9B,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAAC,OAAoB;IAChD,OAAO,OAAO,KAAK,mBAAW,CAAC,GAAG,IAAI,OAAO,KAAK,mBAAW,CAAC,KAAK,CAAC;AACtE,CAAC;AAED,SAAgB,YAAY,CAAC,OAAoB;IAC/C,OAAO,OAAO,KAAK,mBAAW,CAAC,GAAG,CAAC;AACrC,CAAC;AAED,SAAgB,cAAc,CAAC,OAAoB;IACjD,OAAO,OAAO,KAAK,mBAAW,CAAC,KAAK,CAAC;AACvC,CAAC;AAED,SAAgB,eAAe,CAAC,OAAoB;IAClD,OAAO,OAAO,KAAK,mBAAW,CAAC,MAAM,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
2
|
+
export declare const NATIVE_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
|
|
3
|
+
export declare const NATIVE_SOL = "11111111111111111111111111111111";
|
|
4
|
+
export declare const WRAPPED_SOL = "So11111111111111111111111111111111111111112";
|
|
5
|
+
export declare const SOL_NATIVE_ADDRESS = "So11111111111111111111111111111111111111112";
|
|
6
|
+
export declare const NATIVE_SUI = "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI";
|
|
7
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,+CAA+C,CAAC;AACzE,eAAO,MAAM,cAAc,+CAA+C,CAAC;AAC3E,eAAO,MAAM,UAAU,qCAAqC,CAAC;AAC7D,eAAO,MAAM,WAAW,gDAAgD,CAAC;AACzE,eAAO,MAAM,kBAAkB,gDAAgD,CAAC;AAChF,eAAO,MAAM,UAAU,iFACyD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NATIVE_SUI = exports.SOL_NATIVE_ADDRESS = exports.WRAPPED_SOL = exports.NATIVE_SOL = exports.NATIVE_ADDRESS = exports.ZERO_ADDRESS = void 0;
|
|
4
|
+
exports.ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
|
|
5
|
+
exports.NATIVE_ADDRESS = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
|
|
6
|
+
exports.NATIVE_SOL = '11111111111111111111111111111111';
|
|
7
|
+
exports.WRAPPED_SOL = 'So11111111111111111111111111111111111111112';
|
|
8
|
+
exports.SOL_NATIVE_ADDRESS = 'So11111111111111111111111111111111111111112';
|
|
9
|
+
exports.NATIVE_SUI = '0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI';
|
|
10
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,4CAA4C,CAAC;AAC5D,QAAA,cAAc,GAAG,4CAA4C,CAAC;AAC9D,QAAA,UAAU,GAAG,kCAAkC,CAAC;AAChD,QAAA,WAAW,GAAG,6CAA6C,CAAC;AAC5D,QAAA,kBAAkB,GAAG,6CAA6C,CAAC;AACnE,QAAA,UAAU,GACrB,8EAA8E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-error-message.d.ts","sourceRoot":"","sources":["../../../src/utils/create-error-message.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,KAAK,CAAC;CAC1B,CAiCA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createErrorMessage = createErrorMessage;
|
|
4
|
+
const axios_1 = require("axios");
|
|
5
|
+
function createErrorMessage(error) {
|
|
6
|
+
let errorMessage = '';
|
|
7
|
+
if (error instanceof axios_1.AxiosError) {
|
|
8
|
+
const response = error?.response;
|
|
9
|
+
const data = response?.data;
|
|
10
|
+
if (response?.statusText) {
|
|
11
|
+
errorMessage += `Status Text: ${response?.statusText}\n`;
|
|
12
|
+
}
|
|
13
|
+
if (data) {
|
|
14
|
+
errorMessage += `Data: ${JSON.stringify(data, null, 2)}\n`;
|
|
15
|
+
}
|
|
16
|
+
//add url
|
|
17
|
+
if (response?.config?.url) {
|
|
18
|
+
errorMessage += `Url: ${response.config.url}`;
|
|
19
|
+
}
|
|
20
|
+
//add cause
|
|
21
|
+
if (error?.code) {
|
|
22
|
+
errorMessage += `Code: ${error.code}`;
|
|
23
|
+
}
|
|
24
|
+
if (error?.message) {
|
|
25
|
+
errorMessage += `Message: ${error.message}`;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
else if (error instanceof Error) {
|
|
29
|
+
errorMessage += `Error: ${error.message.slice(0, 500)}...`;
|
|
30
|
+
}
|
|
31
|
+
else if (typeof error === 'string') {
|
|
32
|
+
errorMessage += `Error: ${error}`;
|
|
33
|
+
}
|
|
34
|
+
else if (typeof error === 'object') {
|
|
35
|
+
errorMessage += `Error: ${JSON.stringify(error, null, 2).slice(0, 500)}...`;
|
|
36
|
+
}
|
|
37
|
+
return {
|
|
38
|
+
errorMessage,
|
|
39
|
+
errorMessageError: new Error(errorMessage),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=create-error-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-error-message.js","sourceRoot":"","sources":["../../../src/utils/create-error-message.ts"],"names":[],"mappings":";;AAEA,gDAoCC;AAtCD,iCAAmC;AAEnC,SAAgB,kBAAkB,CAAC,KAAc;IAI/C,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,IAAI,KAAK,YAAY,kBAAU,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAC;QACjC,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAC;QAC5B,IAAI,QAAQ,EAAE,UAAU,EAAE,CAAC;YACzB,YAAY,IAAI,gBAAgB,QAAQ,EAAE,UAAU,IAAI,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,YAAY,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;QAC7D,CAAC;QACD,SAAS;QACT,IAAI,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;YAC1B,YAAY,IAAI,QAAQ,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChD,CAAC;QACD,WAAW;QACX,IAAI,KAAK,EAAE,IAAI,EAAE,CAAC;YAChB,YAAY,IAAI,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;YACnB,YAAY,IAAI,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAClC,YAAY,IAAI,UAAU,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;IAC7D,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,YAAY,IAAI,UAAU,KAAK,EAAE,CAAC;IACpC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,YAAY,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;IAC9E,CAAC;IACD,OAAO;QACL,YAAY;QACZ,iBAAiB,EAAE,IAAI,KAAK,CAAC,YAAY,CAAC;KAC3C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-spl-metadata.d.ts","sourceRoot":"","sources":["../../../src/utils/fetch-spl-metadata.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAa,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAqBpD,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA8F7B"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.fetchSPLMetadata = fetchSPLMetadata;
|
|
7
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
8
|
+
const mpl_token_metadata_1 = require("@metaplex-foundation/mpl-token-metadata");
|
|
9
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
10
|
+
const js_1 = require("@metaplex-foundation/js");
|
|
11
|
+
const axios_1 = __importDefault(require("axios"));
|
|
12
|
+
/**
|
|
13
|
+
* Fetches comprehensive SPL metadata for a given token address.
|
|
14
|
+
* @param tokenAddress The address of the token.
|
|
15
|
+
* @returns The fetched SPL metadata including extended token information.
|
|
16
|
+
* @throws If there is an error fetching the SPL metadata.
|
|
17
|
+
*/
|
|
18
|
+
const getMetadataPDA = (mint) => {
|
|
19
|
+
const [pda] = web3_js_1.PublicKey.findProgramAddressSync([
|
|
20
|
+
Buffer.from('metadata'),
|
|
21
|
+
new web3_js_1.PublicKey('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s').toBuffer(),
|
|
22
|
+
mint.toBuffer(),
|
|
23
|
+
], new web3_js_1.PublicKey('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s'));
|
|
24
|
+
return pda;
|
|
25
|
+
};
|
|
26
|
+
async function fetchSPLMetadata(tokenAddress, connection) {
|
|
27
|
+
const mintKey = new web3_js_1.PublicKey(tokenAddress);
|
|
28
|
+
try {
|
|
29
|
+
const metaplex = js_1.Metaplex.make(connection);
|
|
30
|
+
// Get basic token info and metadata
|
|
31
|
+
const [token, nftMetadata] = await Promise.all([
|
|
32
|
+
metaplex.tokens().findMintByAddress({ address: mintKey }),
|
|
33
|
+
metaplex.nfts().findByMint({ mintAddress: mintKey }),
|
|
34
|
+
]);
|
|
35
|
+
let metadata = {
|
|
36
|
+
mint: tokenAddress,
|
|
37
|
+
name: nftMetadata?.name || '',
|
|
38
|
+
symbol: nftMetadata?.symbol || '',
|
|
39
|
+
decimals: token.decimals,
|
|
40
|
+
supply: Number(token.supply.basisPoints),
|
|
41
|
+
uri: nftMetadata?.uri || '',
|
|
42
|
+
isNFT: token.decimals === 0,
|
|
43
|
+
};
|
|
44
|
+
// If there's a URI, fetch additional metadata
|
|
45
|
+
if (metadata.uri) {
|
|
46
|
+
try {
|
|
47
|
+
const response = await axios_1.default.get(metadata.uri);
|
|
48
|
+
metadata = {
|
|
49
|
+
...metadata,
|
|
50
|
+
image: response.data.image,
|
|
51
|
+
attributes: response.data.attributes,
|
|
52
|
+
};
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
// Continue without extended metadata
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return metadata;
|
|
60
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
try {
|
|
64
|
+
try {
|
|
65
|
+
const mintData = await (0, spl_token_1.getMint)(connection, mintKey, undefined, spl_token_1.TOKEN_PROGRAM_ID);
|
|
66
|
+
// Try to fetch metadata from Token Metadata Program
|
|
67
|
+
let name = '';
|
|
68
|
+
let symbol = '';
|
|
69
|
+
try {
|
|
70
|
+
const metadataPDA = getMetadataPDA(mintKey);
|
|
71
|
+
const metadataAccount = await mpl_token_metadata_1.Metadata.fromAccountAddress(connection, metadataPDA);
|
|
72
|
+
name = metadataAccount.data.name.replace(/\0/g, '');
|
|
73
|
+
symbol = metadataAccount.data.symbol.replace(/\0/g, '');
|
|
74
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
75
|
+
}
|
|
76
|
+
catch (metadataError) {
|
|
77
|
+
// console.log('No metadata found in Token Metadata Program');
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
mint: tokenAddress,
|
|
81
|
+
name,
|
|
82
|
+
symbol,
|
|
83
|
+
decimals: mintData.decimals,
|
|
84
|
+
supply: Number(mintData.supply),
|
|
85
|
+
};
|
|
86
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
87
|
+
}
|
|
88
|
+
catch (standardSplError) {
|
|
89
|
+
// If standard SPL fails, try Token-2022
|
|
90
|
+
const mintData = await (0, spl_token_1.getMint)(connection, mintKey, undefined, spl_token_1.TOKEN_2022_PROGRAM_ID);
|
|
91
|
+
// Only try to get metadata if mint fetch succeeds
|
|
92
|
+
const tokenMetadata = await (0, spl_token_1.getTokenMetadata)(connection, mintKey, undefined, spl_token_1.TOKEN_2022_PROGRAM_ID);
|
|
93
|
+
return {
|
|
94
|
+
mint: tokenAddress,
|
|
95
|
+
name: tokenMetadata?.name || '',
|
|
96
|
+
symbol: tokenMetadata?.symbol || '',
|
|
97
|
+
decimals: mintData.decimals,
|
|
98
|
+
supply: Number(mintData.supply),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=fetch-spl-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-spl-metadata.js","sourceRoot":"","sources":["../../../src/utils/fetch-spl-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-native.d.ts","sourceRoot":"","sources":["../../../src/utils/is-native.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,GAAI,UAAU,MAAM,KAAG,OAgB3C,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isNative = void 0;
|
|
4
|
+
const constants_1 = require("./constants");
|
|
5
|
+
const isNative = (address) => {
|
|
6
|
+
if (!address)
|
|
7
|
+
return false;
|
|
8
|
+
if (address.toLowerCase() === constants_1.SOL_NATIVE_ADDRESS.toLowerCase())
|
|
9
|
+
return true;
|
|
10
|
+
if (address.toLowerCase() === constants_1.NATIVE_ADDRESS.toLowerCase())
|
|
11
|
+
return true;
|
|
12
|
+
if (address.toLowerCase() === constants_1.ZERO_ADDRESS.toLowerCase())
|
|
13
|
+
return true;
|
|
14
|
+
if (address.toLowerCase() === constants_1.NATIVE_SOL.toLowerCase())
|
|
15
|
+
return true;
|
|
16
|
+
if (address.toLowerCase().includes('native'))
|
|
17
|
+
return true;
|
|
18
|
+
if (['sol', 'solana', 'ethereum', 'eth', 'bsc', 'binance', 'avax', 'avalanche'].includes(address.toLowerCase()))
|
|
19
|
+
return true;
|
|
20
|
+
return false;
|
|
21
|
+
};
|
|
22
|
+
exports.isNative = isNative;
|
|
23
|
+
//# sourceMappingURL=is-native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-native.js","sourceRoot":"","sources":["../../../src/utils/is-native.ts"],"names":[],"mappings":";;;AAAA,2CAA2F;AAEpF,MAAM,QAAQ,GAAG,CAAC,OAAgB,EAAW,EAAE;IACpD,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3B,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,8BAAkB,CAAC,WAAW,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5E,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,0BAAc,CAAC,WAAW,EAAE;QAAE,OAAO,IAAI,CAAC;IACxE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,wBAAY,CAAC,WAAW,EAAE;QAAE,OAAO,IAAI,CAAC;IACtE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,sBAAU,CAAC,WAAW,EAAE;QAAE,OAAO,IAAI,CAAC;IAEpE,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,IACE,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAClF,OAAO,CAAC,WAAW,EAAE,CACtB;QAED,OAAO,IAAI,CAAC;IAEd,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,QAAQ,YAgBnB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export declare enum LogLevelEnum {
|
|
2
|
+
NONE = 0,
|
|
3
|
+
ERROR = 1,
|
|
4
|
+
WARN = 2,
|
|
5
|
+
INFO = 3,
|
|
6
|
+
DEBUG = 4
|
|
7
|
+
}
|
|
8
|
+
export interface ILoggerOptions {
|
|
9
|
+
level?: LogLevelEnum;
|
|
10
|
+
}
|
|
11
|
+
export interface ILogger {
|
|
12
|
+
debug(message: string, meta?: Record<string, unknown>): void;
|
|
13
|
+
info(message: string, meta?: Record<string, unknown>): void;
|
|
14
|
+
warn(message: string, meta?: Record<string, unknown>): void;
|
|
15
|
+
error(message: string, error?: Error, meta?: Record<string, unknown>): void;
|
|
16
|
+
}
|
|
17
|
+
export declare class NoOpLogger implements ILogger {
|
|
18
|
+
debug(): void;
|
|
19
|
+
info(): void;
|
|
20
|
+
warn(): void;
|
|
21
|
+
error(): void;
|
|
22
|
+
}
|
|
23
|
+
export declare class ConsoleLogger implements ILogger {
|
|
24
|
+
private _level;
|
|
25
|
+
constructor(options?: ILoggerOptions);
|
|
26
|
+
debug(message: string, meta?: Record<string, unknown>): void;
|
|
27
|
+
info(message: string, meta?: Record<string, unknown>): void;
|
|
28
|
+
warn(message: string, meta?: Record<string, unknown>): void;
|
|
29
|
+
error(message: string, error?: Error, meta?: Record<string, unknown>): void;
|
|
30
|
+
}
|
|
31
|
+
export declare class WinstonLogger implements ILogger {
|
|
32
|
+
private _logger;
|
|
33
|
+
constructor(winstonInstance: any);
|
|
34
|
+
debug(message: string, meta?: Record<string, unknown>): void;
|
|
35
|
+
info(message: string, meta?: Record<string, unknown>): void;
|
|
36
|
+
warn(message: string, meta?: Record<string, unknown>): void;
|
|
37
|
+
error(message: string, error?: Error, meta?: Record<string, unknown>): void;
|
|
38
|
+
}
|
|
39
|
+
export declare class PinoLogger implements ILogger {
|
|
40
|
+
private _logger;
|
|
41
|
+
constructor(pinoInstance: any);
|
|
42
|
+
debug(message: string, meta?: Record<string, unknown>): void;
|
|
43
|
+
info(message: string, meta?: Record<string, unknown>): void;
|
|
44
|
+
warn(message: string, meta?: Record<string, unknown>): void;
|
|
45
|
+
error(message: string, error?: Error, meta?: Record<string, unknown>): void;
|
|
46
|
+
}
|
|
47
|
+
export declare class LoggerFactory {
|
|
48
|
+
private static _instance;
|
|
49
|
+
static getLogger(): ILogger;
|
|
50
|
+
static configure(logger: ILogger): void;
|
|
51
|
+
static createConsoleLogger(options?: ILoggerOptions): ILogger;
|
|
52
|
+
static createWinstonLogger(winston: any): ILogger;
|
|
53
|
+
static createPinoLogger(pino: any): ILogger;
|
|
54
|
+
}
|
|
55
|
+
export declare const logger: ILogger;
|
|
56
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|