@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.
Files changed (102) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/DRY_REFACTORING_GUIDE.md +272 -0
  3. package/README.md +34 -6
  4. package/dist/constants/mcpToolNames.d.ts +6 -2
  5. package/dist/constants/mcpToolNames.d.ts.map +1 -1
  6. package/dist/constants/mcpToolNames.js +4 -2
  7. package/dist/constants/mcpToolNames.js.map +1 -1
  8. package/dist/generated/version.d.ts +1 -1
  9. package/dist/generated/version.js +1 -1
  10. package/dist/prompts/analysis.d.ts.map +1 -1
  11. package/dist/prompts/analysis.js +14 -63
  12. package/dist/prompts/analysis.js.map +1 -1
  13. package/dist/prompts/balances.d.ts.map +1 -1
  14. package/dist/prompts/balances.js +46 -70
  15. package/dist/prompts/balances.js.map +1 -1
  16. package/dist/prompts/creation-utils.d.ts.map +1 -1
  17. package/dist/prompts/creation-utils.js +27 -50
  18. package/dist/prompts/creation-utils.js.map +1 -1
  19. package/dist/prompts/explore-dex-pools.d.ts +20 -0
  20. package/dist/prompts/explore-dex-pools.d.ts.map +1 -0
  21. package/dist/prompts/explore-dex-pools.js +132 -0
  22. package/dist/prompts/explore-dex-pools.js.map +1 -0
  23. package/dist/prompts/index.d.ts +3 -2
  24. package/dist/prompts/index.d.ts.map +1 -1
  25. package/dist/prompts/index.js +6 -3
  26. package/dist/prompts/index.js.map +1 -1
  27. package/dist/prompts/liquidity-positions.d.ts.map +1 -1
  28. package/dist/prompts/liquidity-positions.js +9 -44
  29. package/dist/prompts/liquidity-positions.js.map +1 -1
  30. package/dist/prompts/pools.d.ts.map +1 -1
  31. package/dist/prompts/pools.js +125 -228
  32. package/dist/prompts/pools.js.map +1 -1
  33. package/dist/prompts/portfolio.d.ts.map +1 -1
  34. package/dist/prompts/portfolio.js +13 -48
  35. package/dist/prompts/portfolio.js.map +1 -1
  36. package/dist/prompts/social.d.ts.map +1 -1
  37. package/dist/prompts/social.js +21 -31
  38. package/dist/prompts/social.js.map +1 -1
  39. package/dist/prompts/trading-calculations.d.ts.map +1 -1
  40. package/dist/prompts/trading-calculations.js +37 -126
  41. package/dist/prompts/trading-calculations.js.map +1 -1
  42. package/dist/prompts/trading.d.ts.map +1 -1
  43. package/dist/prompts/trading.js +23 -60
  44. package/dist/prompts/trading.js.map +1 -1
  45. package/dist/prompts/transfers.d.ts.map +1 -1
  46. package/dist/prompts/transfers.js +21 -31
  47. package/dist/prompts/transfers.js.map +1 -1
  48. package/dist/prompts/utility-tools.d.ts.map +1 -1
  49. package/dist/prompts/utility-tools.js +83 -202
  50. package/dist/prompts/utility-tools.js.map +1 -1
  51. package/dist/prompts/utility.d.ts.map +1 -1
  52. package/dist/prompts/utility.js +5 -20
  53. package/dist/prompts/utility.js.map +1 -1
  54. package/dist/prompts/utils/handlerHelpers.d.ts +35 -0
  55. package/dist/prompts/utils/handlerHelpers.d.ts.map +1 -0
  56. package/dist/prompts/utils/handlerHelpers.js +53 -0
  57. package/dist/prompts/utils/handlerHelpers.js.map +1 -0
  58. package/dist/prompts/utils/textTemplates.d.ts +42 -0
  59. package/dist/prompts/utils/textTemplates.d.ts.map +1 -0
  60. package/dist/prompts/utils/textTemplates.js +51 -0
  61. package/dist/prompts/utils/textTemplates.js.map +1 -0
  62. package/dist/tools/dex/fetchAllDexPools.d.ts +9 -0
  63. package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -0
  64. package/dist/tools/dex/fetchAllDexPools.js +45 -0
  65. package/dist/tools/dex/fetchAllDexPools.js.map +1 -0
  66. package/dist/tools/dex/fetchDexPools.d.ts +9 -0
  67. package/dist/tools/dex/fetchDexPools.d.ts.map +1 -0
  68. package/dist/tools/dex/fetchDexPools.js +58 -0
  69. package/dist/tools/dex/fetchDexPools.js.map +1 -0
  70. package/dist/tools/dex/index.d.ts +4 -3
  71. package/dist/tools/dex/index.d.ts.map +1 -1
  72. package/dist/tools/dex/index.js +9 -4
  73. package/dist/tools/dex/index.js.map +1 -1
  74. package/dist/utils/validation.d.ts +38 -0
  75. package/dist/utils/validation.d.ts.map +1 -1
  76. package/dist/utils/validation.js +52 -0
  77. package/dist/utils/validation.js.map +1 -1
  78. package/package.json +3 -3
  79. package/src/__tests__/server.test.ts +1 -2
  80. package/src/constants/mcpToolNames.ts +4 -2
  81. package/src/prompts/__tests__/promptStructure.test.ts +50 -0
  82. package/src/prompts/__tests__/registry.test.ts +23 -33
  83. package/src/prompts/analysis.ts +15 -64
  84. package/src/prompts/balances.ts +57 -73
  85. package/src/prompts/creation-utils.ts +34 -49
  86. package/src/prompts/explore-dex-pools.ts +138 -0
  87. package/src/prompts/index.ts +5 -2
  88. package/src/prompts/liquidity-positions.ts +11 -44
  89. package/src/prompts/pools.ts +156 -231
  90. package/src/prompts/portfolio.ts +13 -47
  91. package/src/prompts/social.ts +25 -31
  92. package/src/prompts/trading-calculations.ts +42 -127
  93. package/src/prompts/trading.ts +30 -61
  94. package/src/prompts/transfers.ts +25 -31
  95. package/src/prompts/utility-tools.ts +116 -199
  96. package/src/prompts/utility.ts +5 -20
  97. package/src/prompts/utils/handlerHelpers.ts +55 -0
  98. package/src/prompts/utils/textTemplates.ts +73 -0
  99. package/src/tools/dex/fetchAllDexPools.ts +45 -0
  100. package/src/tools/dex/fetchDexPools.ts +58 -0
  101. package/src/tools/dex/index.ts +9 -4
  102. package/src/utils/validation.ts +58 -0
@@ -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;;;AAIH;;;;;GAKG;AACU,QAAA,gBAAgB,GAAc;IACzC,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE,4CAA4C;IACzD,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;;;;;;;;6FAS6E;iBACpF;aACF;SACF,CAAC;IACJ,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;YACL;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;8BAEc,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;;;;8FAI4B,SAAS,IAAI,YAAY;;;;;;;;;gJASyB;iBACvI;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,cAAc,GAAgB,CAAC,wBAAgB,EAAE,+BAAuB,CAAC,CAAC"}
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
- * These tools provide quote generation, swap execution, liquidity management, and asset management.
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;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAiClD,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,EAO7B,CAAC"}
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"}
@@ -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
- * These tools provide quote generation, swap execution, liquidity management, and asset management.
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 = 13 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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/dex/index.ts"],"names":[],"mappings":"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"}
@@ -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"}
@@ -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":"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"}
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;AAiBD,4CAOC;AAQD,4DAEC;AASD,sDAKC;AAQD,0DAEC;AAraD;;GAEG;AACH,MAAa,eAAgB,SAAQ,KAAK;IAE/B;IADT,YACS,KAAa,EACpB,OAAe;QAEf,KAAK,CAAC,yBAAyB,KAAK,MAAM,OAAO,EAAE,CAAC,CAAC;QAH9C,UAAK,GAAL,KAAK,CAAQ;QAIpB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AARD,0CAQC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,iBAAiB,CAAC,IAAY,EAAE,SAAS,GAAG,WAAW;IACrE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,2CAA2C,IAAI,CAAC,MAAM,GAAG,CAC1D,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,kBAAkB,CAAC;IAC1C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,wEAAwE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,qBAAqB,CACnC,MAAuB,EACvB,SAAiB;IAEjB,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAC7D,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAE3E,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,uCAAuC,MAAM,GAAG,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,iCAAiC,SAAS,GAAG,CAC9C,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,gCAAgC,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,gBAAgB,CAC9B,QAAyB,EACzB,SAAS,GAAG,UAAU;IAEtB,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;QACnE,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEnF,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,yCAAyC,QAAQ,GAAG,CACrD,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,GAAG,IAAI,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;QAC5C,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,iDAAiD,WAAW,IAAI,CACjE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,eAAe,CAAC,OAAe,EAAE,SAAS,GAAG,SAAS;IACpE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC9D,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,0BAA0B,CAAC;IAClD,6CAA6C;IAC7C,MAAM,aAAa,GAAG,qBAAqB,CAAC;IAE5C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,4EAA4E,CAC7E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,mBAAmB,CAAC,MAAc,EAAE,SAAS,GAAG,QAAQ;IACtE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,sCAAsC,MAAM,CAAC,MAAM,GAAG,CACvD,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC;IAC/B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,6CAA6C,CAC9C,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,uBAAuB,CACrC,KAAsB,EACtB,GAAG,GAAG,GAAG,EACT,SAAS,GAAG,OAAO;IAEnB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAEzE,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,uCAAuC,KAAK,GAAG,CAChD,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC;QACnC,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,+BAA+B,GAAG,UAAU,QAAQ,GAAG,CACxD,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,iBAAiB,CAAC,MAAc,EAAE,SAAS,GAAG,QAAQ;IACpE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,wBAAwB,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAE1D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;IACrE,CAAC;IAED,2BAA2B;IAC3B,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,iBAAiB,CAAC,KAAK,EAAE,GAAG,SAAS,IAAI,KAAK,GAAG,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;gBACrC,MAAM,IAAI,eAAe,CACvB,SAAS,EACT,6BAA6B,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CACnD,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,WAAW,CAAC,GAAW,EAAE,SAAS,GAAG,KAAK;IACxD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,IAAI,eAAe,CAAC,SAAS,EAAE,uBAAuB,GAAG,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,YAAY,CAC1B,YAAwB;IAExB,IAAI,CAAC;QACH,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAClD,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAClD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,gBAAgB,CAC9B,KAA2B,EAC3B,SAA2B;IAE3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,SAAS,CAAC,KAAU,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,QAA0B;IACjE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,KAAuB,EACvB,MAAc,GAAG;IAEjB,gBAAgB,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,OAAgB;IACtD,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC"}