@manifest-network/manifest-mcp-browser 0.1.1 → 0.1.6

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 (131) hide show
  1. package/.github/workflows/publish.yml +4 -2
  2. package/CLAUDE.md +11 -6
  3. package/README.md +1 -1
  4. package/dist/client.d.ts +6 -1
  5. package/dist/client.d.ts.map +1 -1
  6. package/dist/client.js +77 -21
  7. package/dist/client.js.map +1 -1
  8. package/dist/cosmos.d.ts.map +1 -1
  9. package/dist/cosmos.js +7 -57
  10. package/dist/cosmos.js.map +1 -1
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +16 -25
  13. package/dist/index.js.map +1 -1
  14. package/dist/modules.d.ts +30 -1
  15. package/dist/modules.d.ts.map +1 -1
  16. package/dist/modules.js +98 -1
  17. package/dist/modules.js.map +1 -1
  18. package/dist/modules.test.js +60 -1
  19. package/dist/modules.test.js.map +1 -1
  20. package/dist/queries/auth.d.ts +7 -1
  21. package/dist/queries/auth.d.ts.map +1 -1
  22. package/dist/queries/auth.js +18 -45
  23. package/dist/queries/auth.js.map +1 -1
  24. package/dist/queries/bank.d.ts +7 -1
  25. package/dist/queries/bank.d.ts.map +1 -1
  26. package/dist/queries/bank.js +24 -38
  27. package/dist/queries/bank.js.map +1 -1
  28. package/dist/queries/billing.d.ts +7 -1
  29. package/dist/queries/billing.d.ts.map +1 -1
  30. package/dist/queries/billing.js +28 -54
  31. package/dist/queries/billing.js.map +1 -1
  32. package/dist/queries/distribution.d.ts +7 -1
  33. package/dist/queries/distribution.d.ts.map +1 -1
  34. package/dist/queries/distribution.js +18 -36
  35. package/dist/queries/distribution.js.map +1 -1
  36. package/dist/queries/gov.d.ts +7 -1
  37. package/dist/queries/gov.d.ts.map +1 -1
  38. package/dist/queries/gov.js +24 -41
  39. package/dist/queries/gov.js.map +1 -1
  40. package/dist/queries/index.d.ts +2 -1
  41. package/dist/queries/index.d.ts.map +1 -1
  42. package/dist/queries/index.js +1 -1
  43. package/dist/queries/index.js.map +1 -1
  44. package/dist/queries/sku.d.ts +13 -0
  45. package/dist/queries/sku.d.ts.map +1 -0
  46. package/dist/queries/sku.js +60 -0
  47. package/dist/queries/sku.js.map +1 -0
  48. package/dist/queries/staking.d.ts +7 -1
  49. package/dist/queries/staking.d.ts.map +1 -1
  50. package/dist/queries/staking.js +36 -59
  51. package/dist/queries/staking.js.map +1 -1
  52. package/dist/queries/utils.d.ts +60 -10
  53. package/dist/queries/utils.d.ts.map +1 -1
  54. package/dist/queries/utils.js +80 -12
  55. package/dist/queries/utils.js.map +1 -1
  56. package/dist/queries/utils.test.js +68 -8
  57. package/dist/queries/utils.test.js.map +1 -1
  58. package/dist/transactions/bank.d.ts +2 -2
  59. package/dist/transactions/bank.d.ts.map +1 -1
  60. package/dist/transactions/bank.js +9 -18
  61. package/dist/transactions/bank.js.map +1 -1
  62. package/dist/transactions/billing.d.ts +2 -2
  63. package/dist/transactions/billing.d.ts.map +1 -1
  64. package/dist/transactions/billing.js +125 -89
  65. package/dist/transactions/billing.js.map +1 -1
  66. package/dist/transactions/distribution.d.ts +2 -2
  67. package/dist/transactions/distribution.d.ts.map +1 -1
  68. package/dist/transactions/distribution.js +7 -13
  69. package/dist/transactions/distribution.js.map +1 -1
  70. package/dist/transactions/gov.d.ts +2 -2
  71. package/dist/transactions/gov.d.ts.map +1 -1
  72. package/dist/transactions/gov.js +29 -20
  73. package/dist/transactions/gov.js.map +1 -1
  74. package/dist/transactions/index.d.ts +1 -1
  75. package/dist/transactions/index.d.ts.map +1 -1
  76. package/dist/transactions/index.js +1 -1
  77. package/dist/transactions/index.js.map +1 -1
  78. package/dist/transactions/manifest.d.ts +2 -2
  79. package/dist/transactions/manifest.d.ts.map +1 -1
  80. package/dist/transactions/manifest.js +7 -14
  81. package/dist/transactions/manifest.js.map +1 -1
  82. package/dist/transactions/sku.d.ts +7 -0
  83. package/dist/transactions/sku.d.ts.map +1 -0
  84. package/dist/transactions/sku.js +184 -0
  85. package/dist/transactions/sku.js.map +1 -0
  86. package/dist/transactions/staking.d.ts +2 -2
  87. package/dist/transactions/staking.d.ts.map +1 -1
  88. package/dist/transactions/staking.js +7 -13
  89. package/dist/transactions/staking.js.map +1 -1
  90. package/dist/transactions/utils.d.ts +65 -1
  91. package/dist/transactions/utils.d.ts.map +1 -1
  92. package/dist/transactions/utils.js +123 -2
  93. package/dist/transactions/utils.js.map +1 -1
  94. package/dist/transactions/utils.test.js +351 -1
  95. package/dist/transactions/utils.test.js.map +1 -1
  96. package/dist/types.d.ts +218 -8
  97. package/dist/types.d.ts.map +1 -1
  98. package/dist/types.js.map +1 -1
  99. package/dist/wallet/mnemonic.d.ts +1 -0
  100. package/dist/wallet/mnemonic.d.ts.map +1 -1
  101. package/dist/wallet/mnemonic.js +34 -13
  102. package/dist/wallet/mnemonic.js.map +1 -1
  103. package/package.json +5 -1
  104. package/src/client.ts +84 -21
  105. package/src/cosmos.ts +13 -109
  106. package/src/index.ts +17 -23
  107. package/src/modules.test.ts +62 -0
  108. package/src/modules.ts +155 -5
  109. package/src/queries/auth.ts +35 -74
  110. package/src/queries/bank.ts +40 -58
  111. package/src/queries/billing.ts +46 -86
  112. package/src/queries/distribution.ts +35 -59
  113. package/src/queries/gov.ts +40 -64
  114. package/src/queries/index.ts +10 -1
  115. package/src/queries/sku.ts +85 -0
  116. package/src/queries/staking.ts +55 -91
  117. package/src/queries/utils.test.ts +103 -8
  118. package/src/queries/utils.ts +119 -12
  119. package/src/transactions/bank.ts +9 -33
  120. package/src/transactions/billing.ts +155 -141
  121. package/src/transactions/distribution.ts +7 -29
  122. package/src/transactions/gov.ts +33 -37
  123. package/src/transactions/index.ts +1 -1
  124. package/src/transactions/manifest.ts +7 -29
  125. package/src/transactions/sku.ts +232 -0
  126. package/src/transactions/staking.ts +7 -29
  127. package/src/transactions/utils.test.ts +390 -1
  128. package/src/transactions/utils.ts +194 -2
  129. package/src/types.ts +344 -9
  130. package/src/wallet/mnemonic.ts +41 -17
  131. package/.claude/settings.local.json +0 -20
@@ -1,5 +1,5 @@
1
1
  import { describe, it, expect } from 'vitest';
2
- import { parseBigInt, parseInt } from './utils.js';
2
+ import { parseBigInt, parseInteger, createPagination, extractPaginationArgs, DEFAULT_PAGE_LIMIT, MAX_PAGE_LIMIT, } from './utils.js';
3
3
  import { ManifestMCPError, ManifestMCPErrorCode } from '../types.js';
4
4
  describe('parseBigInt', () => {
5
5
  it('should parse valid integer strings', () => {
@@ -34,19 +34,19 @@ describe('parseBigInt', () => {
34
34
  }
35
35
  });
36
36
  });
37
- describe('parseInt', () => {
37
+ describe('parseInteger', () => {
38
38
  it('should parse valid integer strings', () => {
39
- expect(parseInt('0', 'status')).toBe(0);
40
- expect(parseInt('123', 'status')).toBe(123);
41
- expect(parseInt('-5', 'status')).toBe(-5);
39
+ expect(parseInteger('0', 'status')).toBe(0);
40
+ expect(parseInteger('123', 'status')).toBe(123);
41
+ expect(parseInteger('-5', 'status')).toBe(-5);
42
42
  });
43
43
  it('should throw ManifestMCPError for invalid integers', () => {
44
- expect(() => parseInt('', 'status')).toThrow(ManifestMCPError);
45
- expect(() => parseInt('abc', 'status')).toThrow(ManifestMCPError);
44
+ expect(() => parseInteger('', 'status')).toThrow(ManifestMCPError);
45
+ expect(() => parseInteger('abc', 'status')).toThrow(ManifestMCPError);
46
46
  });
47
47
  it('should have correct error code', () => {
48
48
  try {
49
- parseInt('invalid', 'status');
49
+ parseInteger('invalid', 'status');
50
50
  }
51
51
  catch (error) {
52
52
  expect(error).toBeInstanceOf(ManifestMCPError);
@@ -54,4 +54,64 @@ describe('parseInt', () => {
54
54
  }
55
55
  });
56
56
  });
57
+ describe('createPagination', () => {
58
+ it('should use default limit when none provided', () => {
59
+ const pagination = createPagination();
60
+ expect(pagination.limit).toBe(DEFAULT_PAGE_LIMIT);
61
+ expect(pagination.offset).toBe(BigInt(0));
62
+ expect(pagination.countTotal).toBe(false);
63
+ expect(pagination.reverse).toBe(false);
64
+ expect(pagination.key).toEqual(new Uint8Array());
65
+ });
66
+ it('should use provided limit', () => {
67
+ const pagination = createPagination(BigInt(50));
68
+ expect(pagination.limit).toBe(BigInt(50));
69
+ });
70
+ it('should clamp limit to minimum of 1', () => {
71
+ const pagination = createPagination(BigInt(0));
72
+ expect(pagination.limit).toBe(BigInt(1));
73
+ const paginationNegative = createPagination(BigInt(-10));
74
+ expect(paginationNegative.limit).toBe(BigInt(1));
75
+ });
76
+ it('should clamp limit to maximum', () => {
77
+ const pagination = createPagination(BigInt(9999));
78
+ expect(pagination.limit).toBe(MAX_PAGE_LIMIT);
79
+ });
80
+ });
81
+ describe('extractPaginationArgs', () => {
82
+ it('should return default pagination when no --limit flag', () => {
83
+ const { pagination, remainingArgs } = extractPaginationArgs(['arg1', 'arg2'], 'test');
84
+ expect(pagination.limit).toBe(DEFAULT_PAGE_LIMIT);
85
+ expect(remainingArgs).toEqual(['arg1', 'arg2']);
86
+ });
87
+ it('should extract --limit flag and value', () => {
88
+ const { pagination, remainingArgs } = extractPaginationArgs(['arg1', '--limit', '50', 'arg2'], 'test');
89
+ expect(pagination.limit).toBe(BigInt(50));
90
+ expect(remainingArgs).toEqual(['arg1', 'arg2']);
91
+ });
92
+ it('should handle --limit at end of args', () => {
93
+ const { pagination, remainingArgs } = extractPaginationArgs(['arg1', '--limit', '25'], 'test');
94
+ expect(pagination.limit).toBe(BigInt(25));
95
+ expect(remainingArgs).toEqual(['arg1']);
96
+ });
97
+ it('should handle --limit at start of args', () => {
98
+ const { pagination, remainingArgs } = extractPaginationArgs(['--limit', '75', 'arg1'], 'test');
99
+ expect(pagination.limit).toBe(BigInt(75));
100
+ expect(remainingArgs).toEqual(['arg1']);
101
+ });
102
+ it('should throw for invalid limit value', () => {
103
+ expect(() => extractPaginationArgs(['--limit', 'abc'], 'test')).toThrow(ManifestMCPError);
104
+ });
105
+ it('should throw for limit below minimum', () => {
106
+ expect(() => extractPaginationArgs(['--limit', '0'], 'test')).toThrow(ManifestMCPError);
107
+ });
108
+ it('should throw for limit above maximum', () => {
109
+ expect(() => extractPaginationArgs(['--limit', '9999'], 'test')).toThrow(ManifestMCPError);
110
+ });
111
+ it('should handle empty args array', () => {
112
+ const { pagination, remainingArgs } = extractPaginationArgs([], 'test');
113
+ expect(pagination.limit).toBe(DEFAULT_PAGE_LIMIT);
114
+ expect(remainingArgs).toEqual([]);
115
+ });
116
+ });
57
117
  //# sourceMappingURL=utils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../src/queries/utils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.test.js","sourceRoot":"","sources":["../../src/queries/utils.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { SigningStargateClient } from '@cosmjs/stargate';
2
- import { CosmosTxResult, ManifestMCPConfig } from '../types.js';
2
+ import { CosmosTxResult } from '../types.js';
3
3
  /**
4
4
  * Route bank transaction to appropriate handler
5
5
  */
6
- export declare function routeBankTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], _config: ManifestMCPConfig, waitForConfirmation: boolean): Promise<CosmosTxResult>;
6
+ export declare function routeBankTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], waitForConfirmation: boolean): Promise<CosmosTxResult>;
7
7
  //# sourceMappingURL=bank.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bank.d.ts","sourceRoot":"","sources":["../../src/transactions/bank.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAA0C,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKxG;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,iBAAiB,EAC1B,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CA4FzB"}
1
+ {"version":3,"file":"bank.d.ts","sourceRoot":"","sources":["../../src/transactions/bank.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAM7C;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CAoEzB"}
@@ -1,25 +1,21 @@
1
1
  import { cosmos } from '@manifest-network/manifestjs';
2
- import { ManifestMCPError, ManifestMCPErrorCode } from '../types.js';
3
- import { parseAmount, buildTxResult, validateAddress, validateMemo, validateArgsLength } from './utils.js';
2
+ import { throwUnsupportedSubcommand } from '../modules.js';
3
+ import { parseAmount, buildTxResult, validateAddress, validateMemo, validateArgsLength, extractFlag, parseColonPair, requireArgs } from './utils.js';
4
4
  const { MsgSend, MsgMultiSend } = cosmos.bank.v1beta1;
5
5
  /**
6
6
  * Route bank transaction to appropriate handler
7
7
  */
8
- export async function routeBankTransaction(client, senderAddress, subcommand, args, _config, waitForConfirmation) {
8
+ export async function routeBankTransaction(client, senderAddress, subcommand, args, waitForConfirmation) {
9
9
  validateArgsLength(args, 'bank transaction');
10
10
  switch (subcommand) {
11
11
  case 'send': {
12
- if (args.length < 2) {
13
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, 'send requires recipient-address and amount arguments');
14
- }
12
+ requireArgs(args, 2, ['recipient-address', 'amount'], 'bank send');
15
13
  const [recipientAddress, amountStr] = args;
16
14
  validateAddress(recipientAddress, 'recipient address');
17
15
  const { amount, denom } = parseAmount(amountStr);
18
16
  // Extract optional memo from args
19
- let memo = '';
20
- const memoIndex = args.indexOf('--memo');
21
- if (memoIndex !== -1 && args[memoIndex + 1]) {
22
- memo = args[memoIndex + 1];
17
+ const { value: memo = '' } = extractFlag(args, '--memo', 'bank send');
18
+ if (memo) {
23
19
  validateMemo(memo);
24
20
  }
25
21
  const msg = {
@@ -34,15 +30,10 @@ export async function routeBankTransaction(client, senderAddress, subcommand, ar
34
30
  return buildTxResult('bank', 'send', result, waitForConfirmation);
35
31
  }
36
32
  case 'multi-send': {
37
- if (args.length < 2) {
38
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, 'multi-send requires at least one recipient:amount pair');
39
- }
33
+ requireArgs(args, 1, ['recipient:amount'], 'bank multi-send');
40
34
  // Parse format: multi-send recipient1:amount1 recipient2:amount2 ...
41
35
  const outputs = args.map((arg) => {
42
- const [address, amountStr] = arg.split(':');
43
- if (!address || !amountStr) {
44
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid multi-send format: ${arg}. Expected format: address:amount`);
45
- }
36
+ const [address, amountStr] = parseColonPair(arg, 'address', 'amount', 'multi-send');
46
37
  validateAddress(address, 'recipient address');
47
38
  const { amount, denom } = parseAmount(amountStr);
48
39
  return { address, coins: [{ denom, amount }] };
@@ -70,7 +61,7 @@ export async function routeBankTransaction(client, senderAddress, subcommand, ar
70
61
  return buildTxResult('bank', 'multi-send', result, waitForConfirmation);
71
62
  }
72
63
  default:
73
- throw new ManifestMCPError(ManifestMCPErrorCode.UNSUPPORTED_TX, `Unsupported bank transaction subcommand: ${subcommand}`, { availableSubcommands: ['send', 'multi-send'] });
64
+ throwUnsupportedSubcommand('tx', 'bank', subcommand);
74
65
  }
75
66
  }
76
67
  //# sourceMappingURL=bank.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bank.js","sourceRoot":"","sources":["../../src/transactions/bank.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bank.js","sourceRoot":"","sources":["../../src/transactions/bank.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { SigningStargateClient } from '@cosmjs/stargate';
2
- import { CosmosTxResult, ManifestMCPConfig } from '../types.js';
2
+ import { CosmosTxResult } from '../types.js';
3
3
  /**
4
4
  * Route billing transaction to appropriate handler
5
5
  */
6
- export declare function routeBillingTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], _config: ManifestMCPConfig, waitForConfirmation: boolean): Promise<CosmosTxResult>;
6
+ export declare function routeBillingTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], waitForConfirmation: boolean): Promise<CosmosTxResult>;
7
7
  //# sourceMappingURL=billing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../src/transactions/billing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,OAAO,EAA0C,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAyCxG;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,iBAAiB,EAC1B,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CAyNzB"}
1
+ {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../src/transactions/billing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAA0C,MAAM,aAAa,CAAC;AAUrF;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CAwQzB"}
@@ -1,43 +1,16 @@
1
- import { fromHex } from '@cosmjs/encoding';
2
1
  import { liftedinit } from '@manifest-network/manifestjs';
3
2
  import { ManifestMCPError, ManifestMCPErrorCode } from '../types.js';
4
- import { parseAmount, buildTxResult, parseBigInt, validateAddress, validateArgsLength } from './utils.js';
5
- import { getSubcommandUsage } from '../modules.js';
6
- const { MsgFundCredit, MsgCreateLease, MsgCloseLease, MsgWithdraw } = liftedinit.billing.v1;
7
- /** Maximum meta hash length in bytes (64 bytes for SHA-512) */
8
- const MAX_META_HASH_BYTES = 64;
9
- /**
10
- * Validate and parse a hex string into Uint8Array
11
- * Uses @cosmjs/encoding for hex validation and conversion
12
- */
13
- function parseMetaHash(hexString) {
14
- // Check even length first to avoid fractional byte counts in error messages
15
- if (hexString.length % 2 !== 0) {
16
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid meta-hash: hex string must have even length. Got ${hexString.length} characters.`);
17
- }
18
- // Check max length (64 bytes = 128 hex chars)
19
- const byteLength = hexString.length / 2;
20
- if (byteLength > MAX_META_HASH_BYTES) {
21
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid meta-hash: exceeds maximum ${MAX_META_HASH_BYTES} bytes. Got ${byteLength} bytes (${hexString.length} hex chars).`);
22
- }
23
- try {
24
- return fromHex(hexString);
25
- }
26
- catch (error) {
27
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid meta-hash: ${error instanceof Error ? error.message : String(error)}`);
28
- }
29
- }
3
+ import { parseAmount, buildTxResult, parseBigInt, validateAddress, validateArgsLength, extractFlag, filterConsumedArgs, parseColonPair, requireArgs, parseHexBytes, MAX_META_HASH_BYTES } from './utils.js';
4
+ import { getSubcommandUsage, throwUnsupportedSubcommand } from '../modules.js';
5
+ const { MsgFundCredit, MsgCreateLease, MsgCloseLease, MsgWithdraw, MsgCreateLeaseForTenant, MsgAcknowledgeLease, MsgRejectLease, MsgCancelLease, MsgUpdateParams, } = liftedinit.billing.v1;
30
6
  /**
31
7
  * Route billing transaction to appropriate handler
32
8
  */
33
- export async function routeBillingTransaction(client, senderAddress, subcommand, args, _config, waitForConfirmation) {
9
+ export async function routeBillingTransaction(client, senderAddress, subcommand, args, waitForConfirmation) {
34
10
  validateArgsLength(args, 'billing transaction');
35
11
  switch (subcommand) {
36
12
  case 'fund-credit': {
37
- if (args.length < 2) {
38
- const usage = getSubcommandUsage('tx', 'billing', 'fund-credit');
39
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `fund-credit requires tenant-address and amount arguments. Received ${args.length} argument(s): [${args.map(a => `"${a}"`).join(', ')}]. Usage: fund-credit ${usage || '<tenant-address> <amount>'}`, { receivedArgs: args, expectedArgs: ['tenant-address', 'amount'], usage });
40
- }
13
+ requireArgs(args, 2, ['tenant-address', 'amount'], 'billing fund-credit');
41
14
  const [tenant, amountStr] = args;
42
15
  validateAddress(tenant, 'tenant address');
43
16
  const { amount, denom } = parseAmount(amountStr);
@@ -53,29 +26,15 @@ export async function routeBillingTransaction(client, senderAddress, subcommand,
53
26
  return buildTxResult('billing', 'fund-credit', result, waitForConfirmation);
54
27
  }
55
28
  case 'create-lease': {
56
- // Parse optional --meta-hash flag
57
- let metaHash;
58
- let itemArgs = args;
59
- if (args[0] === '--meta-hash') {
60
- if (args.length < 2 || args[1].startsWith('--')) {
61
- const usage = getSubcommandUsage('tx', 'billing', 'create-lease');
62
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `--meta-hash flag requires a hex value. Usage: create-lease ${usage ?? '<args>'}`);
63
- }
64
- const hexHash = args[1];
65
- // Validate and convert hex string to Uint8Array (max 64 bytes)
66
- metaHash = parseMetaHash(hexHash);
67
- itemArgs = args.slice(2);
68
- }
69
- if (itemArgs.length < 1) {
70
- const usage = getSubcommandUsage('tx', 'billing', 'create-lease');
71
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `create-lease requires at least one sku-uuid:quantity pair. Usage: create-lease ${usage ?? '<args>'}`, { usage });
72
- }
29
+ // Parse optional --meta-hash flag (can appear anywhere in args)
30
+ const { value: metaHashHex, consumedIndices } = extractFlag(args, '--meta-hash', 'billing create-lease');
31
+ const metaHash = metaHashHex ? parseHexBytes(metaHashHex, 'meta-hash', MAX_META_HASH_BYTES) : undefined;
32
+ // Filter out --meta-hash and its value to get item args
33
+ const itemArgs = filterConsumedArgs(args, consumedIndices);
34
+ requireArgs(itemArgs, 1, ['sku-uuid:quantity'], 'billing create-lease');
73
35
  // Parse items (format: sku-uuid:quantity ...)
74
36
  const items = itemArgs.map((arg) => {
75
- const [skuUuid, quantityStr] = arg.split(':');
76
- if (!skuUuid || !quantityStr) {
77
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid lease item format: ${arg}. Expected format: sku-uuid:quantity`);
78
- }
37
+ const [skuUuid, quantityStr] = parseColonPair(arg, 'sku-uuid', 'quantity', 'lease item');
79
38
  return { skuUuid, quantity: parseBigInt(quantityStr, 'quantity') };
80
39
  });
81
40
  const msg = {
@@ -90,58 +49,44 @@ export async function routeBillingTransaction(client, senderAddress, subcommand,
90
49
  return buildTxResult('billing', 'create-lease', result, waitForConfirmation);
91
50
  }
92
51
  case 'close-lease': {
93
- if (args.length < 1) {
94
- const usage = getSubcommandUsage('tx', 'billing', 'close-lease');
95
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `close-lease requires at least one lease-uuid argument. Usage: close-lease ${usage || '<lease-uuid>...'}`, { usage });
96
- }
52
+ // Parse optional --reason flag
53
+ const { value: reason, consumedIndices } = extractFlag(args, '--reason', 'billing close-lease');
54
+ const leaseArgs = filterConsumedArgs(args, consumedIndices);
55
+ requireArgs(leaseArgs, 1, ['lease-uuid'], 'billing close-lease');
97
56
  // MsgCloseLease can close multiple leases at once
98
- const leaseUuids = args;
99
- const reason = ''; // Optional reason, could be added as a flag later
57
+ const leaseUuids = leaseArgs;
100
58
  const msg = {
101
59
  typeUrl: '/liftedinit.billing.v1.MsgCloseLease',
102
60
  value: MsgCloseLease.fromPartial({
103
61
  sender: senderAddress,
104
62
  leaseUuids,
105
- reason,
63
+ reason: reason ?? '',
106
64
  }),
107
65
  };
108
66
  const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
109
67
  return buildTxResult('billing', 'close-lease', result, waitForConfirmation);
110
68
  }
111
69
  case 'withdraw': {
112
- if (args.length < 1) {
113
- const usage = getSubcommandUsage('tx', 'billing', 'withdraw');
114
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `withdraw requires at least one lease-uuid argument or provider-uuid with --provider flag. Usage: withdraw ${usage ?? '<args>'}`, { usage });
115
- }
116
- // Check if using provider-wide withdrawal
117
- const providerFlagIndex = args.indexOf('--provider');
118
- const limitFlagIndex = args.indexOf('--limit');
70
+ requireArgs(args, 1, ['lease-uuid or --provider'], 'billing withdraw');
71
+ // Extract flags
72
+ const providerFlag = extractFlag(args, '--provider', 'billing withdraw');
73
+ const limitFlag = extractFlag(args, '--limit', 'billing withdraw');
119
74
  let leaseUuids = [];
120
75
  let providerUuid = '';
121
76
  let limit = BigInt(0); // 0 means use default (50)
122
- if (providerFlagIndex !== -1) {
77
+ if (providerFlag.value) {
123
78
  // Provider-wide withdrawal mode
124
- providerUuid = args[providerFlagIndex + 1] || '';
125
- if (!providerUuid || providerUuid.startsWith('--')) {
126
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, 'withdraw with --provider flag requires provider-uuid argument');
127
- }
128
- // Track consumed arg indices to detect extra arguments
129
- const consumedIndices = new Set([providerFlagIndex, providerFlagIndex + 1]);
79
+ providerUuid = providerFlag.value;
130
80
  // Parse optional --limit flag (only valid with --provider)
131
- if (limitFlagIndex !== -1) {
132
- const limitStr = args[limitFlagIndex + 1] || '';
133
- if (!limitStr || limitStr.startsWith('--')) {
134
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, 'withdraw with --limit flag requires a number argument (1-100)');
135
- }
136
- limit = parseBigInt(limitStr, 'limit');
81
+ if (limitFlag.value) {
82
+ limit = parseBigInt(limitFlag.value, 'limit');
137
83
  if (limit < BigInt(1) || limit > BigInt(100)) {
138
84
  throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Invalid limit: ${limit}. Must be between 1 and 100.`);
139
85
  }
140
- consumedIndices.add(limitFlagIndex);
141
- consumedIndices.add(limitFlagIndex + 1);
142
86
  }
143
87
  // Check for any extra arguments that weren't consumed
144
- const extraArgs = args.filter((_, index) => !consumedIndices.has(index));
88
+ const allConsumed = [...providerFlag.consumedIndices, ...limitFlag.consumedIndices];
89
+ const extraArgs = filterConsumedArgs(args, allConsumed);
145
90
  if (extraArgs.length > 0) {
146
91
  const usage = getSubcommandUsage('tx', 'billing', 'withdraw');
147
92
  throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `Provider-wide withdrawal does not accept additional arguments. ` +
@@ -151,7 +96,7 @@ export async function routeBillingTransaction(client, senderAddress, subcommand,
151
96
  }
152
97
  else {
153
98
  // Lease-specific withdrawal mode
154
- // Check for unexpected flags
99
+ // Check for unexpected flags (--limit without --provider is invalid)
155
100
  const unexpectedFlags = args.filter(arg => arg.startsWith('--'));
156
101
  if (unexpectedFlags.length > 0) {
157
102
  const usage = getSubcommandUsage('tx', 'billing', 'withdraw');
@@ -159,10 +104,6 @@ export async function routeBillingTransaction(client, senderAddress, subcommand,
159
104
  `Use --provider for provider-wide withdrawal. Usage: withdraw ${usage ?? '<args>'}`);
160
105
  }
161
106
  leaseUuids = args;
162
- if (leaseUuids.length === 0) {
163
- const usage = getSubcommandUsage('tx', 'billing', 'withdraw');
164
- throw new ManifestMCPError(ManifestMCPErrorCode.TX_FAILED, `withdraw requires at least one lease-uuid. Usage: withdraw ${usage ?? '<args>'}`);
165
- }
166
107
  }
167
108
  const msg = {
168
109
  typeUrl: '/liftedinit.billing.v1.MsgWithdraw',
@@ -176,8 +117,103 @@ export async function routeBillingTransaction(client, senderAddress, subcommand,
176
117
  const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
177
118
  return buildTxResult('billing', 'withdraw', result, waitForConfirmation);
178
119
  }
120
+ case 'create-lease-for-tenant': {
121
+ // Parse optional --meta-hash flag
122
+ const { value: metaHashHex, consumedIndices } = extractFlag(args, '--meta-hash', 'billing create-lease-for-tenant');
123
+ const metaHash = metaHashHex ? parseHexBytes(metaHashHex, 'meta-hash', MAX_META_HASH_BYTES) : undefined;
124
+ // Filter out --meta-hash and its value to get remaining args
125
+ const remainingArgs = filterConsumedArgs(args, consumedIndices);
126
+ requireArgs(remainingArgs, 2, ['tenant-address', 'sku-uuid:quantity'], 'billing create-lease-for-tenant');
127
+ const [tenant, ...itemArgs] = remainingArgs;
128
+ validateAddress(tenant, 'tenant address');
129
+ // Parse items (format: sku-uuid:quantity ...)
130
+ const items = itemArgs.map((arg) => {
131
+ const [skuUuid, quantityStr] = parseColonPair(arg, 'sku-uuid', 'quantity', 'lease item');
132
+ return { skuUuid, quantity: parseBigInt(quantityStr, 'quantity') };
133
+ });
134
+ const msg = {
135
+ typeUrl: '/liftedinit.billing.v1.MsgCreateLeaseForTenant',
136
+ value: MsgCreateLeaseForTenant.fromPartial({
137
+ authority: senderAddress,
138
+ tenant,
139
+ items,
140
+ metaHash: metaHash ?? new Uint8Array(),
141
+ }),
142
+ };
143
+ const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
144
+ return buildTxResult('billing', 'create-lease-for-tenant', result, waitForConfirmation);
145
+ }
146
+ case 'acknowledge-lease': {
147
+ requireArgs(args, 1, ['lease-uuid'], 'billing acknowledge-lease');
148
+ const leaseUuids = args;
149
+ const msg = {
150
+ typeUrl: '/liftedinit.billing.v1.MsgAcknowledgeLease',
151
+ value: MsgAcknowledgeLease.fromPartial({
152
+ sender: senderAddress,
153
+ leaseUuids,
154
+ }),
155
+ };
156
+ const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
157
+ return buildTxResult('billing', 'acknowledge-lease', result, waitForConfirmation);
158
+ }
159
+ case 'reject-lease': {
160
+ // Parse optional --reason flag
161
+ const { value: reason, consumedIndices } = extractFlag(args, '--reason', 'billing reject-lease');
162
+ const leaseArgs = filterConsumedArgs(args, consumedIndices);
163
+ requireArgs(leaseArgs, 1, ['lease-uuid'], 'billing reject-lease');
164
+ const leaseUuids = leaseArgs;
165
+ const msg = {
166
+ typeUrl: '/liftedinit.billing.v1.MsgRejectLease',
167
+ value: MsgRejectLease.fromPartial({
168
+ sender: senderAddress,
169
+ leaseUuids,
170
+ reason: reason ?? '',
171
+ }),
172
+ };
173
+ const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
174
+ return buildTxResult('billing', 'reject-lease', result, waitForConfirmation);
175
+ }
176
+ case 'cancel-lease': {
177
+ requireArgs(args, 1, ['lease-uuid'], 'billing cancel-lease');
178
+ const leaseUuids = args;
179
+ const msg = {
180
+ typeUrl: '/liftedinit.billing.v1.MsgCancelLease',
181
+ value: MsgCancelLease.fromPartial({
182
+ tenant: senderAddress,
183
+ leaseUuids,
184
+ }),
185
+ };
186
+ const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
187
+ return buildTxResult('billing', 'cancel-lease', result, waitForConfirmation);
188
+ }
189
+ case 'update-params': {
190
+ requireArgs(args, 5, [
191
+ 'max-leases-per-tenant', 'max-items-per-lease', 'min-lease-duration',
192
+ 'max-pending-leases-per-tenant', 'pending-timeout',
193
+ ], 'billing update-params');
194
+ const [maxLeasesPerTenantStr, maxItemsPerLeaseStr, minLeaseDurationStr, maxPendingLeasesPerTenantStr, pendingTimeoutStr, ...allowedAddresses] = args;
195
+ for (const addr of allowedAddresses) {
196
+ validateAddress(addr, 'allowed address');
197
+ }
198
+ const msg = {
199
+ typeUrl: '/liftedinit.billing.v1.MsgUpdateParams',
200
+ value: MsgUpdateParams.fromPartial({
201
+ authority: senderAddress,
202
+ params: {
203
+ maxLeasesPerTenant: parseBigInt(maxLeasesPerTenantStr, 'max-leases-per-tenant'),
204
+ maxItemsPerLease: parseBigInt(maxItemsPerLeaseStr, 'max-items-per-lease'),
205
+ minLeaseDuration: parseBigInt(minLeaseDurationStr, 'min-lease-duration'),
206
+ maxPendingLeasesPerTenant: parseBigInt(maxPendingLeasesPerTenantStr, 'max-pending-leases-per-tenant'),
207
+ pendingTimeout: parseBigInt(pendingTimeoutStr, 'pending-timeout'),
208
+ allowedList: allowedAddresses,
209
+ },
210
+ }),
211
+ };
212
+ const result = await client.signAndBroadcast(senderAddress, [msg], 'auto');
213
+ return buildTxResult('billing', 'update-params', result, waitForConfirmation);
214
+ }
179
215
  default:
180
- throw new ManifestMCPError(ManifestMCPErrorCode.UNSUPPORTED_TX, `Unsupported billing transaction subcommand: ${subcommand}`, { availableSubcommands: ['fund-credit', 'create-lease', 'close-lease', 'withdraw'] });
216
+ throwUnsupportedSubcommand('tx', 'billing', subcommand);
181
217
  }
182
218
  }
183
219
  //# sourceMappingURL=billing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/transactions/billing.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAqC,MAAM,aAAa,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC1G,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;AAE5F,+DAA+D;AAC/D,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B;;;GAGG;AACH,SAAS,aAAa,CAAC,SAAiB;IACtC,4EAA4E;IAC5E,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,4DAA4D,SAAS,CAAC,MAAM,cAAc,CAC3F,CAAC;IACJ,CAAC;IAED,8CAA8C;IAC9C,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,IAAI,UAAU,GAAG,mBAAmB,EAAE,CAAC;QACrC,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,sCAAsC,mBAAmB,eAAe,UAAU,WAAW,SAAS,CAAC,MAAM,cAAc,CAC5H,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,sBAAsB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC/E,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAA6B,EAC7B,aAAqB,EACrB,UAAkB,EAClB,IAAc,EACd,OAA0B,EAC1B,mBAA4B;IAE5B,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAEhD,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBACjE,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,sEAAsE,IAAI,CAAC,MAAM,kBAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,KAAK,IAAI,2BAA2B,EAAE,EACpM,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,CAC1E,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC;YACjC,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YAC1C,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YAEjD,MAAM,GAAG,GAAG;gBACV,OAAO,EAAE,sCAAsC;gBAC/C,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC;oBAC/B,MAAM,EAAE,aAAa;oBACrB,MAAM;oBACN,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;iBAC1B,CAAC;aACH,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,OAAO,aAAa,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC9E,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,kCAAkC;YAClC,IAAI,QAAgC,CAAC;YACrC,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChD,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBAClE,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,8DAA8D,KAAK,IAAI,QAAQ,EAAE,CAClF,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACxB,+DAA+D;gBAC/D,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;gBAClC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;gBAClE,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,kFAAkF,KAAK,IAAI,QAAQ,EAAE,EACrG,EAAE,KAAK,EAAE,CACV,CAAC;YACJ,CAAC;YAED,8CAA8C;YAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC9C,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;oBAC7B,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,8BAA8B,GAAG,sCAAsC,CACxE,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;YACrE,CAAC,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG;gBACV,OAAO,EAAE,uCAAuC;gBAChD,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC;oBAChC,MAAM,EAAE,aAAa;oBACrB,KAAK;oBACL,QAAQ,EAAE,QAAQ,IAAI,IAAI,UAAU,EAAE;iBACvC,CAAC;aACH,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,OAAO,aAAa,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC/E,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBACjE,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,6EAA6E,KAAK,IAAI,iBAAiB,EAAE,EACzG,EAAE,KAAK,EAAE,CACV,CAAC;YACJ,CAAC;YAED,kDAAkD;YAClD,MAAM,UAAU,GAAG,IAAI,CAAC;YACxB,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,kDAAkD;YAErE,MAAM,GAAG,GAAG;gBACV,OAAO,EAAE,sCAAsC;gBAC/C,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC;oBAC/B,MAAM,EAAE,aAAa;oBACrB,UAAU;oBACV,MAAM;iBACP,CAAC;aACH,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,OAAO,aAAa,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC9E,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBAC9D,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,6GAA6G,KAAK,IAAI,QAAQ,EAAE,EAChI,EAAE,KAAK,EAAE,CACV,CAAC;YACJ,CAAC;YAED,0CAA0C;YAC1C,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACrD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC/C,IAAI,UAAU,GAAa,EAAE,CAAC;YAC9B,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B;YAElD,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC7B,gCAAgC;gBAChC,YAAY,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,+DAA+D,CAChE,CAAC;gBACJ,CAAC;gBAED,uDAAuD;gBACvD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC;gBAEpF,2DAA2D;gBAC3D,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBAChD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3C,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,+DAA+D,CAChE,CAAC;oBACJ,CAAC;oBACD,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACvC,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC7C,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,kBAAkB,KAAK,8BAA8B,CACtD,CAAC;oBACJ,CAAC;oBACD,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;oBACpC,eAAe,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;gBAC1C,CAAC;gBAED,sDAAsD;gBACtD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBACzE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC9D,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,iEAAiE;wBACjE,mBAAmB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC9D,wEAAwE,KAAK,IAAI,QAAQ,EAAE,CAC5F,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iCAAiC;gBACjC,6BAA6B;gBAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;gBACjE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC9D,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,yDAAyD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBACvF,gEAAgE,KAAK,IAAI,QAAQ,EAAE,CACpF,CAAC;gBACJ,CAAC;gBAED,UAAU,GAAG,IAAI,CAAC;gBAElB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC9D,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,SAAS,EAC9B,8DAA8D,KAAK,IAAI,QAAQ,EAAE,CAClF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,GAAG,GAAG;gBACV,OAAO,EAAE,oCAAoC;gBAC7C,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC;oBAC7B,MAAM,EAAE,aAAa;oBACrB,UAAU;oBACV,YAAY;oBACZ,KAAK;iBACN,CAAC;aACH,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,OAAO,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC;QAC3E,CAAC;QAED;YACE,MAAM,IAAI,gBAAgB,CACxB,oBAAoB,CAAC,cAAc,EACnC,+CAA+C,UAAU,EAAE,EAC3D,EAAE,oBAAoB,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,CACrF,CAAC;IACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/transactions/billing.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { SigningStargateClient } from '@cosmjs/stargate';
2
- import { CosmosTxResult, ManifestMCPConfig } from '../types.js';
2
+ import { CosmosTxResult } from '../types.js';
3
3
  /**
4
4
  * Route distribution transaction to appropriate handler
5
5
  */
6
- export declare function routeDistributionTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], _config: ManifestMCPConfig, waitForConfirmation: boolean): Promise<CosmosTxResult>;
6
+ export declare function routeDistributionTransaction(client: SigningStargateClient, senderAddress: string, subcommand: string, args: string[], waitForConfirmation: boolean): Promise<CosmosTxResult>;
7
7
  //# sourceMappingURL=distribution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"distribution.d.ts","sourceRoot":"","sources":["../../src/transactions/distribution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAA0C,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKxG;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,iBAAiB,EAC1B,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CAgFzB"}
1
+ {"version":3,"file":"distribution.d.ts","sourceRoot":"","sources":["../../src/transactions/distribution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAM7C;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,qBAAqB,EAC7B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,mBAAmB,EAAE,OAAO,GAC3B,OAAO,CAAC,cAAc,CAAC,CA0DzB"}