@gala-chain/launchpad-mcp-server 1.23.0 → 1.24.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/CHANGELOG.md +11 -0
- package/DRY_REFACTORING_GUIDE.md +272 -0
- package/README.md +34 -6
- package/dist/constants/mcpToolNames.d.ts +6 -2
- package/dist/constants/mcpToolNames.d.ts.map +1 -1
- package/dist/constants/mcpToolNames.js +4 -2
- package/dist/constants/mcpToolNames.js.map +1 -1
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/prompts/analysis.d.ts.map +1 -1
- package/dist/prompts/analysis.js +14 -63
- package/dist/prompts/analysis.js.map +1 -1
- package/dist/prompts/balances.d.ts.map +1 -1
- package/dist/prompts/balances.js +46 -70
- package/dist/prompts/balances.js.map +1 -1
- package/dist/prompts/creation-utils.d.ts.map +1 -1
- package/dist/prompts/creation-utils.js +27 -50
- package/dist/prompts/creation-utils.js.map +1 -1
- package/dist/prompts/explore-dex-pools.d.ts +20 -0
- package/dist/prompts/explore-dex-pools.d.ts.map +1 -0
- package/dist/prompts/explore-dex-pools.js +132 -0
- package/dist/prompts/explore-dex-pools.js.map +1 -0
- package/dist/prompts/index.d.ts +3 -2
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +6 -3
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/liquidity-positions.d.ts.map +1 -1
- package/dist/prompts/liquidity-positions.js +9 -44
- package/dist/prompts/liquidity-positions.js.map +1 -1
- package/dist/prompts/pools.d.ts.map +1 -1
- package/dist/prompts/pools.js +125 -228
- package/dist/prompts/pools.js.map +1 -1
- package/dist/prompts/portfolio.d.ts.map +1 -1
- package/dist/prompts/portfolio.js +13 -48
- package/dist/prompts/portfolio.js.map +1 -1
- package/dist/prompts/social.d.ts.map +1 -1
- package/dist/prompts/social.js +21 -31
- package/dist/prompts/social.js.map +1 -1
- package/dist/prompts/trading-calculations.d.ts.map +1 -1
- package/dist/prompts/trading-calculations.js +37 -126
- package/dist/prompts/trading-calculations.js.map +1 -1
- package/dist/prompts/trading.d.ts.map +1 -1
- package/dist/prompts/trading.js +23 -60
- package/dist/prompts/trading.js.map +1 -1
- package/dist/prompts/transfers.d.ts.map +1 -1
- package/dist/prompts/transfers.js +21 -31
- package/dist/prompts/transfers.js.map +1 -1
- package/dist/prompts/utility-tools.d.ts.map +1 -1
- package/dist/prompts/utility-tools.js +83 -202
- package/dist/prompts/utility-tools.js.map +1 -1
- package/dist/prompts/utility.d.ts.map +1 -1
- package/dist/prompts/utility.js +5 -20
- package/dist/prompts/utility.js.map +1 -1
- package/dist/prompts/utils/handlerHelpers.d.ts +35 -0
- package/dist/prompts/utils/handlerHelpers.d.ts.map +1 -0
- package/dist/prompts/utils/handlerHelpers.js +53 -0
- package/dist/prompts/utils/handlerHelpers.js.map +1 -0
- package/dist/prompts/utils/textTemplates.d.ts +42 -0
- package/dist/prompts/utils/textTemplates.d.ts.map +1 -0
- package/dist/prompts/utils/textTemplates.js +51 -0
- package/dist/prompts/utils/textTemplates.js.map +1 -0
- package/dist/tools/dex/fetchAllDexPools.d.ts +9 -0
- package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -0
- package/dist/tools/dex/fetchAllDexPools.js +45 -0
- package/dist/tools/dex/fetchAllDexPools.js.map +1 -0
- package/dist/tools/dex/fetchDexPools.d.ts +9 -0
- package/dist/tools/dex/fetchDexPools.d.ts.map +1 -0
- package/dist/tools/dex/fetchDexPools.js +58 -0
- package/dist/tools/dex/fetchDexPools.js.map +1 -0
- package/dist/tools/dex/index.d.ts +4 -3
- package/dist/tools/dex/index.d.ts.map +1 -1
- package/dist/tools/dex/index.js +9 -4
- package/dist/tools/dex/index.js.map +1 -1
- package/dist/utils/validation.d.ts +38 -0
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +52 -0
- package/dist/utils/validation.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/server.test.ts +1 -2
- package/src/constants/mcpToolNames.ts +4 -2
- package/src/prompts/__tests__/promptStructure.test.ts +50 -0
- package/src/prompts/__tests__/registry.test.ts +23 -33
- package/src/prompts/analysis.ts +15 -64
- package/src/prompts/balances.ts +57 -73
- package/src/prompts/creation-utils.ts +34 -49
- package/src/prompts/explore-dex-pools.ts +138 -0
- package/src/prompts/index.ts +5 -2
- package/src/prompts/liquidity-positions.ts +11 -44
- package/src/prompts/pools.ts +156 -231
- package/src/prompts/portfolio.ts +13 -47
- package/src/prompts/social.ts +25 -31
- package/src/prompts/trading-calculations.ts +42 -127
- package/src/prompts/trading.ts +30 -61
- package/src/prompts/transfers.ts +25 -31
- package/src/prompts/utility-tools.ts +116 -199
- package/src/prompts/utility.ts +5 -20
- package/src/prompts/utils/handlerHelpers.ts +55 -0
- package/src/prompts/utils/textTemplates.ts +73 -0
- package/src/tools/dex/fetchAllDexPools.ts +45 -0
- package/src/tools/dex/fetchDexPools.ts +58 -0
- package/src/tools/dex/index.ts +9 -4
- package/src/utils/validation.ts +58 -0
package/dist/prompts/utility.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.utilityPrompts = exports.switchEnvironmentPrompt = exports.getVersionPrompt = void 0;
|
|
9
|
+
const handlerHelpers_js_1 = require("./utils/handlerHelpers.js");
|
|
9
10
|
/**
|
|
10
11
|
* Get Version - Display SDK and MCP server version information
|
|
11
12
|
*
|
|
@@ -16,12 +17,7 @@ exports.getVersionPrompt = {
|
|
|
16
17
|
name: 'galachain-launchpad:version',
|
|
17
18
|
description: 'Get SDK and MCP server version information',
|
|
18
19
|
handler: () => {
|
|
19
|
-
return
|
|
20
|
-
{
|
|
21
|
-
role: 'user',
|
|
22
|
-
content: {
|
|
23
|
-
type: 'text',
|
|
24
|
-
text: `Get version information for the Gala Launchpad SDK and MCP server.
|
|
20
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Get version information for the Gala Launchpad SDK and MCP server.
|
|
25
21
|
|
|
26
22
|
Use the gala_launchpad_get_version tool to fetch the version details.
|
|
27
23
|
|
|
@@ -30,10 +26,7 @@ Display the results in a clear, formatted response showing:
|
|
|
30
26
|
2. MCP Server Version
|
|
31
27
|
3. Timestamp
|
|
32
28
|
|
|
33
|
-
This is helpful for debugging version compatibility issues or confirming installed versions
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
];
|
|
29
|
+
This is helpful for debugging version compatibility issues or confirming installed versions.`);
|
|
37
30
|
},
|
|
38
31
|
};
|
|
39
32
|
/**
|
|
@@ -57,12 +50,7 @@ exports.switchEnvironmentPrompt = {
|
|
|
57
50
|
const targetEnv = args.environment?.toLowerCase() || '';
|
|
58
51
|
const validEnvs = ['production', 'development', 'testing'];
|
|
59
52
|
const isValidEnv = validEnvs.includes(targetEnv);
|
|
60
|
-
return
|
|
61
|
-
{
|
|
62
|
-
role: 'user',
|
|
63
|
-
content: {
|
|
64
|
-
type: 'text',
|
|
65
|
-
text: `Switch the Gala Launchpad MCP server to a different environment.
|
|
53
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Switch the Gala Launchpad MCP server to a different environment.
|
|
66
54
|
|
|
67
55
|
Current task: Switch to the ${isValidEnv ? targetEnv : 'specified'} environment
|
|
68
56
|
|
|
@@ -77,10 +65,7 @@ Available environments:
|
|
|
77
65
|
- development: Development environment for testing features
|
|
78
66
|
- testing: Testing environment for local/staging tests
|
|
79
67
|
|
|
80
|
-
Wallet Preservation: The wallet configuration will be preserved during the switch, maintaining your current signing capabilities if configured
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
];
|
|
68
|
+
Wallet Preservation: The wallet configuration will be preserved during the switch, maintaining your current signing capabilities if configured.`);
|
|
84
69
|
},
|
|
85
70
|
};
|
|
86
71
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/prompts/utility.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/prompts/utility.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,iEAAiE;AAEjE;;;;;GAKG;AACU,QAAA,gBAAgB,GAAc;IACzC,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,4CAA4C;IACzD,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO,IAAA,wCAAoB,EAAC;;;;;;;;;6FAS6D,CAAC,CAAC;IAC7F,CAAC;CACF,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,uBAAuB,GAAc;IAChD,IAAI,EAAE,wCAAwC;IAC9C,WAAW,EAAE,wFAAwF;IACrG,SAAS,EAAE;QACT;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACxD,MAAM,SAAS,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEjD,OAAO,IAAA,wCAAoB,EAAC;;8BAEF,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;;;;8FAI4B,SAAS,IAAI,YAAY;;;;;;;;;gJASyB,CAAC,CAAC;IAChJ,CAAC;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,cAAc,GAAgB,CAAC,wBAAgB,EAAE,+BAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Handler Helper Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides reusable utilities for creating MCP prompt handlers with
|
|
5
|
+
* standardized response formatting and validation patterns.
|
|
6
|
+
*/
|
|
7
|
+
import type { PromptMessage } from '../../types/mcp.js';
|
|
8
|
+
/**
|
|
9
|
+
* Create a standard MCP prompt response with user role
|
|
10
|
+
*
|
|
11
|
+
* @param text - The prompt text to send to the user
|
|
12
|
+
* @returns Array containing formatted MCP message
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* handler: (args) => {
|
|
16
|
+
* validateTokenName(args.tokenName);
|
|
17
|
+
* return createPromptResponse(`Fetch token ${args.tokenName}...`);
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
export declare function createPromptResponse(text: string): PromptMessage[];
|
|
21
|
+
/**
|
|
22
|
+
* Create a handler function that validates arguments and returns a prompt response
|
|
23
|
+
*
|
|
24
|
+
* @param validator - Function to validate the arguments
|
|
25
|
+
* @param textGenerator - Function that generates the prompt text from arguments
|
|
26
|
+
* @returns A handler function ready to use in a prompt definition
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* handler: createValidatedHandler(
|
|
30
|
+
* (args) => validateTokenName(args.tokenName),
|
|
31
|
+
* (args) => `Fetch token ${args.tokenName}...`
|
|
32
|
+
* )
|
|
33
|
+
*/
|
|
34
|
+
export declare function createValidatedHandler<T>(validator: (args: T) => void, textGenerator: (args: T) => string): (args: T) => PromptMessage[];
|
|
35
|
+
//# sourceMappingURL=handlerHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlerHelpers.d.ts","sourceRoot":"","sources":["../../../src/prompts/utils/handlerHelpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAUlE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAC5B,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GACjC,CAAC,IAAI,EAAE,CAAC,KAAK,aAAa,EAAE,CAK9B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Handler Helper Utilities
|
|
4
|
+
*
|
|
5
|
+
* Provides reusable utilities for creating MCP prompt handlers with
|
|
6
|
+
* standardized response formatting and validation patterns.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.createPromptResponse = createPromptResponse;
|
|
10
|
+
exports.createValidatedHandler = createValidatedHandler;
|
|
11
|
+
/**
|
|
12
|
+
* Create a standard MCP prompt response with user role
|
|
13
|
+
*
|
|
14
|
+
* @param text - The prompt text to send to the user
|
|
15
|
+
* @returns Array containing formatted MCP message
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* handler: (args) => {
|
|
19
|
+
* validateTokenName(args.tokenName);
|
|
20
|
+
* return createPromptResponse(`Fetch token ${args.tokenName}...`);
|
|
21
|
+
* }
|
|
22
|
+
*/
|
|
23
|
+
function createPromptResponse(text) {
|
|
24
|
+
return [
|
|
25
|
+
{
|
|
26
|
+
role: 'user',
|
|
27
|
+
content: {
|
|
28
|
+
type: 'text',
|
|
29
|
+
text,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Create a handler function that validates arguments and returns a prompt response
|
|
36
|
+
*
|
|
37
|
+
* @param validator - Function to validate the arguments
|
|
38
|
+
* @param textGenerator - Function that generates the prompt text from arguments
|
|
39
|
+
* @returns A handler function ready to use in a prompt definition
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* handler: createValidatedHandler(
|
|
43
|
+
* (args) => validateTokenName(args.tokenName),
|
|
44
|
+
* (args) => `Fetch token ${args.tokenName}...`
|
|
45
|
+
* )
|
|
46
|
+
*/
|
|
47
|
+
function createValidatedHandler(validator, textGenerator) {
|
|
48
|
+
return (args) => {
|
|
49
|
+
validator(args);
|
|
50
|
+
return createPromptResponse(textGenerator(args));
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=handlerHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlerHelpers.js","sourceRoot":"","sources":["../../../src/prompts/utils/handlerHelpers.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAgBH,oDAUC;AAeD,wDAQC;AA7CD;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO;QACL;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI;aACL;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,sBAAsB,CACpC,SAA4B,EAC5B,aAAkC;IAElC,OAAO,CAAC,IAAO,EAAE,EAAE;QACjB,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO,oBAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prompt Text Templates
|
|
3
|
+
*
|
|
4
|
+
* Provides reusable template generators for common MCP prompt patterns.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Configuration for simple operation prompts
|
|
8
|
+
*/
|
|
9
|
+
export interface SimpleOperationConfig {
|
|
10
|
+
/** Operation description (e.g., "Fetch GALA balance for wallet.") */
|
|
11
|
+
operation: string;
|
|
12
|
+
/** Parameter descriptions as key-value pairs (optional) */
|
|
13
|
+
parameters?: Record<string, string | undefined>;
|
|
14
|
+
/** MCP tool name (e.g., MCP_TOOLS.FETCH_GALA_BALANCE) */
|
|
15
|
+
toolName: string;
|
|
16
|
+
/** Description of what the tool does (e.g., "retrieve the GALA balance") */
|
|
17
|
+
actionDescription: string;
|
|
18
|
+
/** Optional display format instructions */
|
|
19
|
+
displayFormat?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Generate text for simple operation prompts
|
|
23
|
+
*
|
|
24
|
+
* Creates a standardized prompt text with operation, parameters, tool usage,
|
|
25
|
+
* and optional display format instructions.
|
|
26
|
+
*
|
|
27
|
+
* @param config - Configuration for the operation
|
|
28
|
+
* @returns Formatted prompt text
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* text: createSimpleOperationText({
|
|
32
|
+
* operation: 'Get GALA balance for wallet.',
|
|
33
|
+
* parameters: {
|
|
34
|
+
* address: args.address ? `Address: ${args.address}` : 'Using default wallet'
|
|
35
|
+
* },
|
|
36
|
+
* toolName: MCP_TOOLS.FETCH_GALA_BALANCE,
|
|
37
|
+
* actionDescription: 'retrieve the GALA balance',
|
|
38
|
+
* displayFormat: 'Display the balance in a clear format.'
|
|
39
|
+
* })
|
|
40
|
+
*/
|
|
41
|
+
export declare function createSimpleOperationText(config: SimpleOperationConfig): string;
|
|
42
|
+
//# sourceMappingURL=textTemplates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textTemplates.d.ts","sourceRoot":"","sources":["../../../src/prompts/utils/textTemplates.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,qEAAqE;IACrE,SAAS,EAAE,MAAM,CAAC;IAElB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAEhD,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IAEjB,4EAA4E;IAC5E,iBAAiB,EAAE,MAAM,CAAC;IAE1B,2CAA2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CA0B/E"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Prompt Text Templates
|
|
4
|
+
*
|
|
5
|
+
* Provides reusable template generators for common MCP prompt patterns.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.createSimpleOperationText = createSimpleOperationText;
|
|
9
|
+
/**
|
|
10
|
+
* Generate text for simple operation prompts
|
|
11
|
+
*
|
|
12
|
+
* Creates a standardized prompt text with operation, parameters, tool usage,
|
|
13
|
+
* and optional display format instructions.
|
|
14
|
+
*
|
|
15
|
+
* @param config - Configuration for the operation
|
|
16
|
+
* @returns Formatted prompt text
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* text: createSimpleOperationText({
|
|
20
|
+
* operation: 'Get GALA balance for wallet.',
|
|
21
|
+
* parameters: {
|
|
22
|
+
* address: args.address ? `Address: ${args.address}` : 'Using default wallet'
|
|
23
|
+
* },
|
|
24
|
+
* toolName: MCP_TOOLS.FETCH_GALA_BALANCE,
|
|
25
|
+
* actionDescription: 'retrieve the GALA balance',
|
|
26
|
+
* displayFormat: 'Display the balance in a clear format.'
|
|
27
|
+
* })
|
|
28
|
+
*/
|
|
29
|
+
function createSimpleOperationText(config) {
|
|
30
|
+
const { operation, parameters, toolName, actionDescription, displayFormat } = config;
|
|
31
|
+
const parts = [operation];
|
|
32
|
+
// Add parameters section
|
|
33
|
+
if (parameters && Object.values(parameters).some((v) => v !== undefined)) {
|
|
34
|
+
parts.push('');
|
|
35
|
+
Object.entries(parameters).forEach(([, value]) => {
|
|
36
|
+
if (value !== undefined && value !== null && value !== '') {
|
|
37
|
+
parts.push(value);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
// Add tool usage instruction
|
|
42
|
+
parts.push('');
|
|
43
|
+
parts.push(`Use ${toolName} to ${actionDescription}.`);
|
|
44
|
+
// Add display format if provided
|
|
45
|
+
if (displayFormat) {
|
|
46
|
+
parts.push('');
|
|
47
|
+
parts.push(displayFormat);
|
|
48
|
+
}
|
|
49
|
+
return parts.join('\n');
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=textTemplates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textTemplates.js","sourceRoot":"","sources":["../../../src/prompts/utils/textTemplates.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA0CH,8DA0BC;AA9CD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,yBAAyB,CAAC,MAA6B;IACrE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAErF,MAAM,KAAK,GAAa,CAAC,SAAS,CAAC,CAAC;IAEpC,yBAAyB;IACzB,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;QACzE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;YAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBAC1D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6BAA6B;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,OAAO,iBAAiB,GAAG,CAAC,CAAC;IAEvD,iCAAiC;IACjC,IAAI,aAAa,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetch All DEX Pools Tool
|
|
3
|
+
*
|
|
4
|
+
* Convenience tool that fetches all available DEX pools with automatic pagination.
|
|
5
|
+
* No page/limit parameters needed - returns ALL pools matching filters.
|
|
6
|
+
*/
|
|
7
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
8
|
+
export declare const fetchAllDexPoolsTool: MCPTool;
|
|
9
|
+
//# sourceMappingURL=fetchAllDexPools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchAllDexPools.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/fetchAllDexPools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIlD,eAAO,MAAM,oBAAoB,EAAE,OAiClC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Fetch All DEX Pools Tool
|
|
4
|
+
*
|
|
5
|
+
* Convenience tool that fetches all available DEX pools with automatic pagination.
|
|
6
|
+
* No page/limit parameters needed - returns ALL pools matching filters.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.fetchAllDexPoolsTool = void 0;
|
|
10
|
+
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
11
|
+
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
12
|
+
exports.fetchAllDexPoolsTool = {
|
|
13
|
+
name: 'gala_launchpad_fetch_all_dex_pools',
|
|
14
|
+
description: 'Fetch all DEX pools with automatic pagination. No page/limit parameters needed - returns ALL pools matching filters.',
|
|
15
|
+
inputSchema: {
|
|
16
|
+
type: 'object',
|
|
17
|
+
properties: {
|
|
18
|
+
search: {
|
|
19
|
+
type: 'string',
|
|
20
|
+
minLength: 1,
|
|
21
|
+
maxLength: 100,
|
|
22
|
+
description: 'Search filter for token symbols in pool pair (e.g., "GALA", "GUSDC")',
|
|
23
|
+
},
|
|
24
|
+
sortBy: {
|
|
25
|
+
type: 'string',
|
|
26
|
+
enum: ['tvl', 'volume30d', 'volume1d'],
|
|
27
|
+
description: 'Field to sort results by (default: tvl)',
|
|
28
|
+
},
|
|
29
|
+
sortOrder: {
|
|
30
|
+
type: 'string',
|
|
31
|
+
enum: ['asc', 'desc'],
|
|
32
|
+
description: 'Sort order direction (default: desc)',
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
37
|
+
const result = await sdk.fetchAllDexPools({
|
|
38
|
+
...(args.search && { search: args.search }),
|
|
39
|
+
...(args.sortBy && { sortBy: args.sortBy }),
|
|
40
|
+
...(args.sortOrder && { sortOrder: args.sortOrder }),
|
|
41
|
+
});
|
|
42
|
+
return (0, response_formatter_js_1.formatSuccess)(result);
|
|
43
|
+
}),
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=fetchAllDexPools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchAllDexPools.js","sourceRoot":"","sources":["../../../src/tools/dex/fetchAllDexPools.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AAEpD,QAAA,oBAAoB,GAAY;IAC3C,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EAAE,sHAAsH;IACnI,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;gBACd,WAAW,EAAE,sEAAsE;aACpF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;gBACtC,WAAW,EAAE,yCAAyC;aACvD;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,sCAAsC;aACpD;SACF;KACF;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC;YACxC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;SACrD,CAAC,CAAC;QAEH,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetch DEX Pools Tool
|
|
3
|
+
*
|
|
4
|
+
* Queries the GalaSwap DEX backend for available liquidity pools with pagination,
|
|
5
|
+
* sorting, and search filtering capabilities.
|
|
6
|
+
*/
|
|
7
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
8
|
+
export declare const fetchDexPoolsTool: MCPTool;
|
|
9
|
+
//# sourceMappingURL=fetchDexPools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchDexPools.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/fetchDexPools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIlD,eAAO,MAAM,iBAAiB,EAAE,OA8C/B,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Fetch DEX Pools Tool
|
|
4
|
+
*
|
|
5
|
+
* Queries the GalaSwap DEX backend for available liquidity pools with pagination,
|
|
6
|
+
* sorting, and search filtering capabilities.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.fetchDexPoolsTool = void 0;
|
|
10
|
+
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
11
|
+
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
12
|
+
exports.fetchDexPoolsTool = {
|
|
13
|
+
name: 'gala_launchpad_fetch_dex_pools',
|
|
14
|
+
description: 'Fetch DEX pools with pagination and filtering - query available liquidity pools on GalaSwap',
|
|
15
|
+
inputSchema: {
|
|
16
|
+
type: 'object',
|
|
17
|
+
properties: {
|
|
18
|
+
search: {
|
|
19
|
+
type: 'string',
|
|
20
|
+
minLength: 1,
|
|
21
|
+
maxLength: 100,
|
|
22
|
+
description: 'Search filter for token symbols in pool pair (e.g., "GALA", "GUSDC", "GALA/GUSDC")',
|
|
23
|
+
},
|
|
24
|
+
sortBy: {
|
|
25
|
+
type: 'string',
|
|
26
|
+
enum: ['tvl', 'volume30d', 'volume1d'],
|
|
27
|
+
description: 'Field to sort results by (default: tvl)',
|
|
28
|
+
},
|
|
29
|
+
sortOrder: {
|
|
30
|
+
type: 'string',
|
|
31
|
+
enum: ['asc', 'desc'],
|
|
32
|
+
description: 'Sort order direction (default: desc)',
|
|
33
|
+
},
|
|
34
|
+
page: {
|
|
35
|
+
type: 'number',
|
|
36
|
+
minimum: 1,
|
|
37
|
+
description: 'Page number (1-based pagination, default: 1)',
|
|
38
|
+
},
|
|
39
|
+
limit: {
|
|
40
|
+
type: 'number',
|
|
41
|
+
minimum: 1,
|
|
42
|
+
maximum: 20,
|
|
43
|
+
description: 'Number of results per page (default: 10, maximum: 20)',
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
48
|
+
const result = await sdk.fetchDexPools({
|
|
49
|
+
search: args.search,
|
|
50
|
+
sortBy: args.sortBy || 'tvl',
|
|
51
|
+
sortOrder: args.sortOrder || 'desc',
|
|
52
|
+
page: args.page || 1,
|
|
53
|
+
limit: args.limit || 10,
|
|
54
|
+
});
|
|
55
|
+
return (0, response_formatter_js_1.formatSuccess)(result);
|
|
56
|
+
}),
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=fetchDexPools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchDexPools.js","sourceRoot":"","sources":["../../../src/tools/dex/fetchDexPools.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AAEpD,QAAA,iBAAiB,GAAY;IACxC,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE,6FAA6F;IAC1G,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,CAAC;gBACZ,SAAS,EAAE,GAAG;gBACd,WAAW,EAAE,oFAAoF;aAClG;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;gBACtC,WAAW,EAAE,yCAAyC;aACvD;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,sCAAsC;aACpD;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,8CAA8C;aAC5D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,uDAAuD;aACrE;SACF;KACF;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;YAC5B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM;YACnC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;YACpB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;SACxB,CAAC,CAAC;QAEH,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* DEX/GalaSwap Trading Operations Tools
|
|
2
|
+
* DEX/GalaSwap Trading Operations Tools & Pool Discovery
|
|
3
3
|
*
|
|
4
|
-
* Tools for trading on GalaSwap DEX after tokens graduate from bonding curves
|
|
5
|
-
*
|
|
4
|
+
* Tools for trading on GalaSwap DEX after tokens graduate from bonding curves,
|
|
5
|
+
* discovering liquidity pools, and managing positions.
|
|
6
|
+
* Provides quote generation, swap execution, liquidity management, asset management, and pool exploration.
|
|
6
7
|
*/
|
|
7
8
|
import type { MCPTool } from '../../types/mcp.js';
|
|
8
9
|
export declare const getSwapQuoteExactInputTool: MCPTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAmClD,eAAO,MAAM,0BAA0B,EAAE,OA6BxC,CAAC;AAGF,eAAO,MAAM,2BAA2B,EAAE,OA6BzC,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,OAuD7B,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,OA0BnC,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,OAwBjC,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,OAAO,EAS7B,CAAC"}
|
package/dist/tools/dex/index.js
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* DEX/GalaSwap Trading Operations Tools
|
|
3
|
+
* DEX/GalaSwap Trading Operations Tools & Pool Discovery
|
|
4
4
|
*
|
|
5
|
-
* Tools for trading on GalaSwap DEX after tokens graduate from bonding curves
|
|
6
|
-
*
|
|
5
|
+
* Tools for trading on GalaSwap DEX after tokens graduate from bonding curves,
|
|
6
|
+
* discovering liquidity pools, and managing positions.
|
|
7
|
+
* Provides quote generation, swap execution, liquidity management, asset management, and pool exploration.
|
|
7
8
|
*/
|
|
8
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
10
|
exports.dexTools = exports.getSwapPoolInfoTool = exports.getSwapUserAssetsTool = exports.executeSwapTool = exports.getSwapQuoteExactOutputTool = exports.getSwapQuoteExactInputTool = void 0;
|
|
10
11
|
const liquidity_positions_js_1 = require("./liquidity-positions.js");
|
|
12
|
+
const fetchDexPools_js_1 = require("./fetchDexPools.js");
|
|
13
|
+
const fetchAllDexPools_js_1 = require("./fetchAllDexPools.js");
|
|
11
14
|
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
12
15
|
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
13
16
|
const common_schemas_js_1 = require("../../schemas/common-schemas.js");
|
|
@@ -192,8 +195,10 @@ exports.getSwapPoolInfoTool = {
|
|
|
192
195
|
});
|
|
193
196
|
}),
|
|
194
197
|
};
|
|
195
|
-
// Export all DEX tools (5 swap tools + 8 liquidity position tools =
|
|
198
|
+
// Export all DEX tools (2 pool discovery + 5 swap tools + 8 liquidity position tools = 15 tools)
|
|
196
199
|
exports.dexTools = [
|
|
200
|
+
fetchDexPools_js_1.fetchDexPoolsTool,
|
|
201
|
+
fetchAllDexPools_js_1.fetchAllDexPoolsTool,
|
|
197
202
|
exports.getSwapQuoteExactInputTool,
|
|
198
203
|
exports.getSwapQuoteExactOutputTool,
|
|
199
204
|
exports.executeSwapTool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/dex/index.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/dex/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAGH,qEAAkE;AAClE,yDAAuD;AACvD,+DAA6D;AAC7D,6EAAkE;AAClE,mEAAiE;AACjE,uEAGyC;AAEzC,+BAA+B;AAC/B,MAAM,mBAAmB,GAAG;IAC1B,IAAI,EAAE,QAAQ;IACd,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,EAAE;IACb,WAAW,EAAE,sCAAsC;CACpD,CAAC;AAEF,0CAA0C;AAC1C,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;IACxB,WAAW,EAAE,oEAAoE;CAClF,CAAC;AAEF,qBAAqB;AACrB,MAAM,yBAAyB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,WAAW,EAAE,mDAAmD;CACjE,CAAC;AAEF,kCAAkC;AACrB,QAAA,0BAA0B,GAAY;IACjD,IAAI,EAAE,2CAA2C;IACjD,WAAW,EACT,4EAA4E;IAC9E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,mBAAmB;YAC9B,OAAO,EAAE,mBAAmB;YAC5B,MAAM,EAAE;gBACN,GAAG,yCAAqB;gBACxB,WAAW,EAAE,iCAAiC;aAC/C;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC;KAC7C;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1F,OAAO,IAAA,qCAAa,EAAC;YACnB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,OAAO,EAAE,YAAY,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,SAAS,gBAAgB,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE;SAClH,CAAC,CAAC;IACL,CAAC,CAAC;CACH,CAAC;AAEF,mCAAmC;AACtB,QAAA,2BAA2B,GAAY;IAClD,IAAI,EAAE,4CAA4C;IAClD,WAAW,EACT,+EAA+E;IACjF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,mBAAmB;YAC9B,OAAO,EAAE,mBAAmB;YAC5B,MAAM,EAAE;gBACN,GAAG,yCAAqB;gBACxB,WAAW,EAAE,gDAAgD;aAC9D;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC;KAC7C;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3F,OAAO,IAAA,qCAAa,EAAC;YACnB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,OAAO,EAAE,aAAa,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,SAAS,eAAe,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE;SAClH,CAAC,CAAC;IACL,CAAC,CAAC;CACH,CAAC;AAEF,kBAAkB;AACL,QAAA,eAAe,GAAY;IACtC,IAAI,EAAE,6BAA6B;IACnC,WAAW,EACT,4GAA4G;IAC9G,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,mBAAmB;YAC9B,OAAO,EAAE,mBAAmB;YAC5B,WAAW,EAAE;gBACX,GAAG,yCAAqB;gBACxB,WAAW,EAAE,iCAAiC;aAC/C;YACD,eAAe,EAAE;gBACf,GAAG,yCAAqB;gBACxB,WAAW,EAAE,8DAA8D;aAC5E;YACD,OAAO,EAAE,eAAe;YACxB,iBAAiB,EAAE;gBACjB,GAAG,yBAAyB;gBAC5B,OAAO,EAAE,IAAI;aACd;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAChF;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,4DAA4D;QAC5D,IAAI,CAAC;YACH,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,WAAW,CAClC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAC/B,CAAC;QAEF,OAAO,IAAA,qCAAa,EAAC;YACnB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;YACzC,OAAO,EAAE,wBAAwB,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,SAAS,cAAc,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,OAAO,EAAE;SAC7H,CAAC,CAAC;IACL,CAAC,CAAC;CACH,CAAC;AAEF,qBAAqB;AACR,QAAA,qBAAqB,GAAY;IAC5C,IAAI,EAAE,qCAAqC;IAC3C,WAAW,EAAE,wDAAwD;IACrE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,aAAa,EAAE;gBACb,GAAG,kCAAc;gBACjB,WAAW,EAAE,8DAA8D;aAC5E;SACF;QACD,QAAQ,EAAE,CAAC,eAAe,CAAC;KAC5B;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/D,OAAO,IAAA,qCAAa,EAAC;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC7B,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,4BAA4B,IAAI,CAAC,aAAa,EAAE;SAC1E,CAAC,CAAC;IACL,CAAC,CAAC;CACH,CAAC;AAEF,mBAAmB;AACN,QAAA,mBAAmB,GAAY;IAC1C,IAAI,EAAE,mCAAmC;IACzC,WAAW,EACT,yEAAyE;IAC3E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE,mBAAmB;YAC3B,MAAM,EAAE,mBAAmB;SAC5B;QACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;KAC/B;IACD,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO,IAAA,qCAAa,EAAC;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC;YACpE,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,OAAO,EAAE,QAAQ,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,QAAQ,QAAQ,CAAC,SAAS,mBAAmB,QAAQ,CAAC,QAAQ,CAAC,MAAM,YAAY;SAC7H,CAAC,CAAC;IACL,CAAC,CAAC;CACH,CAAC;AAEF,iGAAiG;AACpF,QAAA,QAAQ,GAAc;IACjC,oCAAiB;IACjB,0CAAoB;IACpB,kCAA0B;IAC1B,mCAA2B;IAC3B,uBAAe;IACf,6BAAqB;IACrB,2BAAmB;IACnB,GAAG,+CAAsB;CAC1B,CAAC"}
|
|
@@ -177,4 +177,42 @@ export declare function safeValidate(validationFn: () => void): {
|
|
|
177
177
|
success: boolean;
|
|
178
178
|
error?: string;
|
|
179
179
|
};
|
|
180
|
+
/**
|
|
181
|
+
* Validate optional field if present
|
|
182
|
+
*
|
|
183
|
+
* Convenience wrapper for validating optional fields. Only runs validation
|
|
184
|
+
* if the value is defined and not null.
|
|
185
|
+
*
|
|
186
|
+
* @param value - Value to validate (can be undefined)
|
|
187
|
+
* @param validator - Validation function to run if value is present
|
|
188
|
+
* @throws {ValidationError} If validation fails
|
|
189
|
+
*
|
|
190
|
+
* @example
|
|
191
|
+
* ```typescript
|
|
192
|
+
* validateOptional(args.slippage, (val) => validateSlippage(val));
|
|
193
|
+
* ```
|
|
194
|
+
*/
|
|
195
|
+
export declare function validateOptional<T>(value: T | undefined | null, validator: (val: T) => void): void;
|
|
196
|
+
/**
|
|
197
|
+
* Validate optional slippage field
|
|
198
|
+
*
|
|
199
|
+
* @param slippage - Slippage value to validate (optional)
|
|
200
|
+
* @throws {ValidationError} If slippage is invalid
|
|
201
|
+
*/
|
|
202
|
+
export declare function validateOptionalSlippage(slippage?: string | number): void;
|
|
203
|
+
/**
|
|
204
|
+
* Validate optional pagination limit field
|
|
205
|
+
*
|
|
206
|
+
* @param limit - Limit value to validate (optional)
|
|
207
|
+
* @param max - Maximum allowed limit (default: 100)
|
|
208
|
+
* @throws {ValidationError} If limit is invalid
|
|
209
|
+
*/
|
|
210
|
+
export declare function validateOptionalLimit(limit?: string | number, max?: number): void;
|
|
211
|
+
/**
|
|
212
|
+
* Validate optional address field
|
|
213
|
+
*
|
|
214
|
+
* @param address - Address value to validate (optional)
|
|
215
|
+
* @throws {ValidationError} If address is invalid
|
|
216
|
+
*/
|
|
217
|
+
export declare function validateOptionalAddress(address?: string): void;
|
|
180
218
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAE/B,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;CAKlB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAc,GAAG,IAAI,CAmB7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,SAAS,SAAa,GACrB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,IAAI,CAgB5E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,IAAI,CAmB9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,GAAG,SAAM,EACT,SAAS,SAAU,GAClB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,MAAM,EAAE,CA2BhF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,IAAI,CAgBhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,YAAY,EAAE,MAAM,IAAI,GACvB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAUtC"}
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAE/B,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;CAKlB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAc,GAAG,IAAI,CAmB7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,SAAS,SAAa,GACrB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,IAAI,CAgB5E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,IAAI,CAmB9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,GAAG,SAAM,EACT,SAAS,SAAU,GAClB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,MAAM,EAAE,CA2BhF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,IAAI,CAgBhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,YAAY,EAAE,MAAM,IAAI,GACvB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAUtC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,KAAK,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,EAC3B,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,GAC1B,IAAI,CAIN;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEzE;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EACvB,GAAG,GAAE,MAAY,GAChB,IAAI,CAEN;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAE9D"}
|
package/dist/utils/validation.js
CHANGED
|
@@ -16,6 +16,10 @@ exports.validatePaginationLimit = validatePaginationLimit;
|
|
|
16
16
|
exports.validateTokenList = validateTokenList;
|
|
17
17
|
exports.validateUrl = validateUrl;
|
|
18
18
|
exports.safeValidate = safeValidate;
|
|
19
|
+
exports.validateOptional = validateOptional;
|
|
20
|
+
exports.validateOptionalSlippage = validateOptionalSlippage;
|
|
21
|
+
exports.validateOptionalLimit = validateOptionalLimit;
|
|
22
|
+
exports.validateOptionalAddress = validateOptionalAddress;
|
|
19
23
|
/**
|
|
20
24
|
* Validation error class for better error handling
|
|
21
25
|
*/
|
|
@@ -308,4 +312,52 @@ function safeValidate(validationFn) {
|
|
|
308
312
|
return { success: false, error: String(error) };
|
|
309
313
|
}
|
|
310
314
|
}
|
|
315
|
+
/**
|
|
316
|
+
* Validate optional field if present
|
|
317
|
+
*
|
|
318
|
+
* Convenience wrapper for validating optional fields. Only runs validation
|
|
319
|
+
* if the value is defined and not null.
|
|
320
|
+
*
|
|
321
|
+
* @param value - Value to validate (can be undefined)
|
|
322
|
+
* @param validator - Validation function to run if value is present
|
|
323
|
+
* @throws {ValidationError} If validation fails
|
|
324
|
+
*
|
|
325
|
+
* @example
|
|
326
|
+
* ```typescript
|
|
327
|
+
* validateOptional(args.slippage, (val) => validateSlippage(val));
|
|
328
|
+
* ```
|
|
329
|
+
*/
|
|
330
|
+
function validateOptional(value, validator) {
|
|
331
|
+
if (value !== undefined && value !== null && value !== '') {
|
|
332
|
+
validator(value);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* Validate optional slippage field
|
|
337
|
+
*
|
|
338
|
+
* @param slippage - Slippage value to validate (optional)
|
|
339
|
+
* @throws {ValidationError} If slippage is invalid
|
|
340
|
+
*/
|
|
341
|
+
function validateOptionalSlippage(slippage) {
|
|
342
|
+
validateOptional(slippage, (val) => validateSlippage(val));
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Validate optional pagination limit field
|
|
346
|
+
*
|
|
347
|
+
* @param limit - Limit value to validate (optional)
|
|
348
|
+
* @param max - Maximum allowed limit (default: 100)
|
|
349
|
+
* @throws {ValidationError} If limit is invalid
|
|
350
|
+
*/
|
|
351
|
+
function validateOptionalLimit(limit, max = 100) {
|
|
352
|
+
validateOptional(limit, (val) => validatePaginationLimit(val, max));
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Validate optional address field
|
|
356
|
+
*
|
|
357
|
+
* @param address - Address value to validate (optional)
|
|
358
|
+
* @throws {ValidationError} If address is invalid
|
|
359
|
+
*/
|
|
360
|
+
function validateOptionalAddress(address) {
|
|
361
|
+
validateOptional(address, (val) => validateAddress(val));
|
|
362
|
+
}
|
|
311
363
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAiCH,8CAmBC;AAmBD,sDAwBC;AAoBD,4CAuBC;AAkBD,0CAgBC;AAmBD,kDAmBC;AAoBD,0DAwBC;AAmBD,8CA2BC;AAmBD,kCAgBC;AAkBD,oCAYC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
|