@targlobal/mission-control 1.4.0 → 1.5.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/dist/api.d.ts CHANGED
@@ -99,6 +99,18 @@ export declare const api: {
99
99
  batchTarPayPartialPayouts(payoutIds: number[], percentage: number): Promise<any>;
100
100
  approveTarPayPayout(payoutId: number): Promise<any>;
101
101
  rejectTarPayPayout(payoutId: number, reason?: string): Promise<any>;
102
+ debtValidateVendor(): Promise<any>;
103
+ debtPrepareDistribution(amount: number): Promise<any>;
104
+ debtPreviewRecipients(amount: number): Promise<any>;
105
+ debtDryRun(amount: number): Promise<any>;
106
+ debtExecuteDistribution(amount: number, confirmation: string): Promise<any>;
107
+ debtDistributionHistory(params?: {
108
+ limit?: number;
109
+ offset?: number;
110
+ }): Promise<any>;
111
+ debtDistributionDetail(distributionId: string): Promise<any>;
112
+ debtAutoDistributionStatus(): Promise<any>;
113
+ debtRefreshBalance(): Promise<any>;
102
114
  };
103
115
  export interface Payout {
104
116
  id: number;
@@ -157,4 +169,47 @@ export interface TarPayPayout {
157
169
  paid_percentage?: number;
158
170
  partial_payment_count?: number;
159
171
  }
172
+ export interface DebtDistributionRecipient {
173
+ user_id: number;
174
+ user_email: string;
175
+ wallet_address: string;
176
+ amount: string;
177
+ remaining_debt: string;
178
+ debt_after_payment: string;
179
+ booster_recovery: string;
180
+ is_booster: boolean;
181
+ round: number;
182
+ reason?: string;
183
+ }
184
+ export interface DebtDistributionPreview {
185
+ success: boolean;
186
+ error?: string;
187
+ distribution: DebtDistributionRecipient[];
188
+ total_amount: string;
189
+ total_recipients: number;
190
+ booster_recipients: number;
191
+ booster_total: string;
192
+ small_balance_count: number;
193
+ threshold_count: number;
194
+ ineligible_count: number;
195
+ ineligible_users?: {
196
+ user_email: string;
197
+ reason: string;
198
+ }[];
199
+ }
200
+ export interface DebtDistributionRecord {
201
+ distribution_id: string;
202
+ admin_email: string | null;
203
+ input_amount: string;
204
+ distributed_amount: string;
205
+ total_recipients: number;
206
+ successful_payouts: number;
207
+ failed_payouts: number;
208
+ booster_recipients: number;
209
+ booster_total: string;
210
+ status: string;
211
+ created_at: string;
212
+ completed_at: string | null;
213
+ error_summary: string | null;
214
+ }
160
215
  //# sourceMappingURL=api.d.ts.map
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/api.js CHANGED
@@ -165,5 +165,51 @@ exports.api = {
165
165
  });
166
166
  return response.data;
167
167
  },
168
+ // ==================== DEBT DISTRIBUTION (Dumpster/Recovery) ====================
169
+ async debtValidateVendor() {
170
+ const response = await (0, exports.getApiClient)().get('/api/crypto_wallet_dumpster/admin/tarpay/validate/');
171
+ return response.data;
172
+ },
173
+ async debtPrepareDistribution(amount) {
174
+ const response = await (0, exports.getApiClient)().post('/api/crypto_wallet_dumpster/admin/tarpay/prepare/', {
175
+ amount,
176
+ });
177
+ return response.data;
178
+ },
179
+ async debtPreviewRecipients(amount) {
180
+ const response = await (0, exports.getApiClient)().post('/api/crypto_wallet_dumpster/admin/tarpay/preview/', {
181
+ amount,
182
+ });
183
+ return response.data;
184
+ },
185
+ async debtDryRun(amount) {
186
+ const response = await (0, exports.getApiClient)().post('/api/crypto_wallet_dumpster/admin/tarpay/dry-run/', {
187
+ amount,
188
+ });
189
+ return response.data;
190
+ },
191
+ async debtExecuteDistribution(amount, confirmation) {
192
+ const response = await (0, exports.getApiClient)().post('/api/crypto_wallet_dumpster/admin/tarpay/execute/', {
193
+ amount,
194
+ confirmation,
195
+ });
196
+ return response.data;
197
+ },
198
+ async debtDistributionHistory(params) {
199
+ const response = await (0, exports.getApiClient)().get('/api/crypto_wallet_dumpster/admin/tarpay/history/', { params });
200
+ return response.data;
201
+ },
202
+ async debtDistributionDetail(distributionId) {
203
+ const response = await (0, exports.getApiClient)().get(`/api/crypto_wallet_dumpster/admin/tarpay/distribution/${distributionId}/`);
204
+ return response.data;
205
+ },
206
+ async debtAutoDistributionStatus() {
207
+ const response = await (0, exports.getApiClient)().get('/api/crypto_wallet_dumpster/admin/auto-distribution/status/');
208
+ return response.data;
209
+ },
210
+ async debtRefreshBalance() {
211
+ const response = await (0, exports.getApiClient)().post('/api/crypto_wallet_dumpster/admin/auto-distribution/refresh-balance/');
212
+ return response.data;
213
+ },
168
214
  };
169
215
  //# sourceMappingURL=api.js.map
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -45,7 +45,7 @@ const inquirer_1 = __importDefault(require("inquirer"));
45
45
  const config_1 = require("./config");
46
46
  const api_1 = require("./api");
47
47
  const child_process_1 = require("child_process");
48
- const VERSION = '1.4.0';
48
+ const VERSION = '1.5.0';
49
49
  const program = new commander_1.Command();
50
50
  // Set terminal title
51
51
  const setTitle = (context) => {
@@ -457,6 +457,7 @@ const showInteractiveHelp = () => {
457
457
  console.log(' done <id> Complete');
458
458
  console.log(' stats Statistics');
459
459
  console.log(' payouts Payouts');
460
+ console.log(' debt Debt Dist');
460
461
  console.log(' config Settings');
461
462
  console.log(' exit/q Quit');
462
463
  console.log('');
@@ -474,6 +475,7 @@ const showInteractiveHelp = () => {
474
475
  console.log(' stats Show your statistics');
475
476
  console.log(' urgent Show critical tasks');
476
477
  console.log(chalk_1.default.yellow(' payouts Payout processing dashboard'));
478
+ console.log(chalk_1.default.magenta(' debt Debt distribution terminal'));
477
479
  console.log(' whoami Show current user/config');
478
480
  console.log(' config View/set config (compact mode)');
479
481
  console.log(' clear Clear screen');
@@ -650,6 +652,12 @@ const runInteractiveShell = async () => {
650
652
  await runPayoutsShell();
651
653
  await showDashboard();
652
654
  break;
655
+ case 'debt':
656
+ case 'dumpster':
657
+ case 'recovery':
658
+ await runDebtShell();
659
+ await showDashboard();
660
+ break;
653
661
  case 'whoami':
654
662
  showWhoami();
655
663
  break;
@@ -1899,6 +1907,423 @@ const runPayoutsShell = async () => {
1899
1907
  };
1900
1908
  await runLoop();
1901
1909
  };
1910
+ // ==================== DEBT DISTRIBUTION SHELL ====================
1911
+ const runDebtShell = async () => {
1912
+ setTitle('Debt Distribution');
1913
+ console.clear();
1914
+ console.log(chalk_1.default.magenta.bold('\n ╔════════════════════════════════════════════════════════════════╗'));
1915
+ console.log(chalk_1.default.magenta.bold(' ║') + chalk_1.default.bold.white(' 💰 DEBT DISTRIBUTION TERMINAL 💰 ') + chalk_1.default.magenta.bold('║'));
1916
+ console.log(chalk_1.default.magenta.bold(' ╚════════════════════════════════════════════════════════════════╝\n'));
1917
+ // Show initial status
1918
+ await showDebtStatus();
1919
+ const runLoop = async () => {
1920
+ const { cmd } = await inquirer_1.default.prompt([
1921
+ {
1922
+ type: 'input',
1923
+ name: 'cmd',
1924
+ message: chalk_1.default.magenta('debt') + chalk_1.default.cyan(' > '),
1925
+ prefix: '',
1926
+ },
1927
+ ]);
1928
+ const [mainCmd, ...args] = cmd.trim().toLowerCase().split(/\s+/);
1929
+ if (!mainCmd || mainCmd === 'exit' || mainCmd === 'quit' || mainCmd === 'q' || mainCmd === 'back') {
1930
+ return;
1931
+ }
1932
+ try {
1933
+ switch (mainCmd) {
1934
+ case 'status':
1935
+ case 'refresh':
1936
+ case 'r':
1937
+ await showDebtStatus();
1938
+ break;
1939
+ case 'balance':
1940
+ case 'bal':
1941
+ await refreshDebtBalance();
1942
+ break;
1943
+ case 'history':
1944
+ case 'hist':
1945
+ await showDebtHistory();
1946
+ break;
1947
+ case 'distribute':
1948
+ case 'dist':
1949
+ case 'd':
1950
+ await runDebtDistributionWizard();
1951
+ break;
1952
+ case 'preview':
1953
+ if (args[0]) {
1954
+ await previewDebtDistribution(parseFloat(args[0]));
1955
+ }
1956
+ else {
1957
+ console.log(chalk_1.default.red(' Usage: preview <amount>\n'));
1958
+ }
1959
+ break;
1960
+ case 'dryrun':
1961
+ case 'dry':
1962
+ if (args[0]) {
1963
+ await dryRunDebtDistribution(parseFloat(args[0]));
1964
+ }
1965
+ else {
1966
+ console.log(chalk_1.default.red(' Usage: dryrun <amount>\n'));
1967
+ }
1968
+ break;
1969
+ case 'help':
1970
+ case '?':
1971
+ console.log(chalk_1.default.cyan('\n Debt Distribution Commands:'));
1972
+ console.log(chalk_1.default.dim(' ──────────────────────────────'));
1973
+ console.log(' status, r Show current status & balance');
1974
+ console.log(' balance, bal Refresh recovery wallet balance');
1975
+ console.log(' history, hist Show distribution history');
1976
+ console.log(chalk_1.default.green(' distribute, d Start distribution wizard'));
1977
+ console.log(' preview <amt> Preview distribution for amount');
1978
+ console.log(' dryrun <amt> Dry run simulation');
1979
+ console.log(' back, q Return to main menu');
1980
+ console.log('');
1981
+ break;
1982
+ default:
1983
+ console.log(chalk_1.default.red(` Unknown command: ${mainCmd}`));
1984
+ console.log(chalk_1.default.dim(' Type "help" for available commands\n'));
1985
+ }
1986
+ }
1987
+ catch (e) {
1988
+ console.log(chalk_1.default.red(` Error: ${e.message}\n`));
1989
+ }
1990
+ await runLoop();
1991
+ };
1992
+ await runLoop();
1993
+ };
1994
+ // Debt Distribution Helper Functions
1995
+ const showDebtStatus = async () => {
1996
+ const spinner = (0, ora_1.default)('Loading debt distribution status...').start();
1997
+ try {
1998
+ // Fetch auto-distribution status (includes balance)
1999
+ const statusResp = await api_1.api.debtAutoDistributionStatus();
2000
+ const status = statusResp.data || statusResp;
2001
+ // Fetch vendor validation
2002
+ const vendorResp = await api_1.api.debtValidateVendor();
2003
+ spinner.stop();
2004
+ console.log(chalk_1.default.magenta('\n ╭────────────────────────────────────────────────────────────╮'));
2005
+ console.log(chalk_1.default.magenta(' │') + chalk_1.default.bold.white(' DEBT DISTRIBUTION STATUS ') + chalk_1.default.magenta('│'));
2006
+ console.log(chalk_1.default.magenta(' ├────────────────────────────────────────────────────────────┤'));
2007
+ // Vendor Status
2008
+ const vendorStatus = vendorResp.valid
2009
+ ? chalk_1.default.green('● Connected')
2010
+ : chalk_1.default.red('○ ' + (vendorResp.error || 'Not configured'));
2011
+ console.log(chalk_1.default.magenta(' │') + ` TarPay Vendor: ${vendorStatus.padEnd(45)}` + chalk_1.default.magenta('│'));
2012
+ // Recovery Wallet Balance
2013
+ const balance = status.last_balance_amount != null ? `$${parseFloat(status.last_balance_amount).toFixed(2)}` : 'Unknown';
2014
+ const balanceColor = status.last_balance_amount >= (status.min_balance_threshold || 100) ? chalk_1.default.green : chalk_1.default.yellow;
2015
+ console.log(chalk_1.default.magenta(' │') + ` Recovery Balance: ${balanceColor(balance.padEnd(41))}` + chalk_1.default.magenta('│'));
2016
+ // Min Threshold
2017
+ const minThreshold = status.min_balance_threshold ? `$${parseFloat(status.min_balance_threshold).toFixed(2)}` : '$100.00';
2018
+ console.log(chalk_1.default.magenta(' │') + ` Min Threshold: ${chalk_1.default.dim(minThreshold.padEnd(43))}` + chalk_1.default.magenta('│'));
2019
+ // Last Balance Check
2020
+ if (status.last_balance_check_at) {
2021
+ const checkTime = new Date(status.last_balance_check_at).toLocaleString();
2022
+ console.log(chalk_1.default.magenta(' │') + ` Last Check: ${chalk_1.default.dim(checkTime.padEnd(46))}` + chalk_1.default.magenta('│'));
2023
+ }
2024
+ // Auto-Distribution Status
2025
+ const autoStatus = status.enabled ? chalk_1.default.green('● Enabled') : chalk_1.default.red('○ Disabled');
2026
+ console.log(chalk_1.default.magenta(' │') + ` Auto-Distribution: ${autoStatus.padEnd(40)}` + chalk_1.default.magenta('│'));
2027
+ // Timer
2028
+ if (status.time_remaining && status.enabled) {
2029
+ console.log(chalk_1.default.magenta(' │') + ` Next Check In: ${chalk_1.default.cyan(status.time_remaining.padEnd(43))}` + chalk_1.default.magenta('│'));
2030
+ }
2031
+ // Stats
2032
+ if (status.total_distributed !== undefined) {
2033
+ console.log(chalk_1.default.magenta(' ├────────────────────────────────────────────────────────────┤'));
2034
+ console.log(chalk_1.default.magenta(' │') + ` Total Distributed: ${chalk_1.default.green('$' + parseFloat(status.total_distributed || '0').toFixed(2)).padEnd(39)}` + chalk_1.default.magenta('│'));
2035
+ console.log(chalk_1.default.magenta(' │') + ` Distributions: ${chalk_1.default.white(String(status.total_distributions || 0)).padEnd(43)}` + chalk_1.default.magenta('│'));
2036
+ }
2037
+ console.log(chalk_1.default.magenta(' ╰────────────────────────────────────────────────────────────╯\n'));
2038
+ }
2039
+ catch (e) {
2040
+ spinner.fail(chalk_1.default.red('Failed to load status'));
2041
+ if (e.response?.status === 403) {
2042
+ console.log(chalk_1.default.red('\n ⛔ Access Denied: Only admins can access debt distribution\n'));
2043
+ }
2044
+ }
2045
+ };
2046
+ const refreshDebtBalance = async () => {
2047
+ const spinner = (0, ora_1.default)('Refreshing recovery wallet balance from BSCScan...').start();
2048
+ try {
2049
+ const result = await api_1.api.debtRefreshBalance();
2050
+ spinner.stop();
2051
+ if (result.success && result.data?.balance != null) {
2052
+ console.log(chalk_1.default.green(`\n ✓ Recovery Wallet Balance: $${result.data.balance.toFixed(2)} USDT`));
2053
+ console.log(chalk_1.default.dim(` Checked at: ${new Date(result.data.checked_at).toLocaleString()}\n`));
2054
+ }
2055
+ else {
2056
+ console.log(chalk_1.default.yellow('\n ⚠️ Could not fetch balance. Check wallet configuration.\n'));
2057
+ }
2058
+ }
2059
+ catch (e) {
2060
+ spinner.fail(chalk_1.default.red('Failed to refresh balance'));
2061
+ }
2062
+ };
2063
+ const showDebtHistory = async () => {
2064
+ const spinner = (0, ora_1.default)('Loading distribution history...').start();
2065
+ try {
2066
+ const data = await api_1.api.debtDistributionHistory({ limit: 10 });
2067
+ const distributions = data.distributions || [];
2068
+ spinner.stop();
2069
+ if (distributions.length === 0) {
2070
+ console.log(chalk_1.default.dim('\n No distribution history found\n'));
2071
+ return;
2072
+ }
2073
+ console.log(chalk_1.default.cyan('\n Recent Distributions:'));
2074
+ console.log(chalk_1.default.dim(' ─────────────────────────────────────────────────────────'));
2075
+ const table = new cli_table3_1.default({
2076
+ head: [chalk_1.default.cyan('Date'), chalk_1.default.cyan('Amount'), chalk_1.default.cyan('Recipients'), chalk_1.default.cyan('Status')],
2077
+ style: { head: [], border: [] },
2078
+ colWidths: [20, 15, 12, 15],
2079
+ });
2080
+ distributions.forEach((d) => {
2081
+ const date = new Date(d.created_at).toLocaleDateString();
2082
+ const amount = `$${parseFloat(d.distributed_amount).toFixed(2)}`;
2083
+ const recipients = `${d.successful_payouts}/${d.total_recipients}`;
2084
+ const statusColor = d.status === 'completed' ? chalk_1.default.green : d.status === 'failed' ? chalk_1.default.red : chalk_1.default.yellow;
2085
+ table.push([date, amount, recipients, statusColor(d.status)]);
2086
+ });
2087
+ console.log(table.toString());
2088
+ console.log(chalk_1.default.dim(`\n Total: ${data.total} distributions\n`));
2089
+ }
2090
+ catch (e) {
2091
+ spinner.fail(chalk_1.default.red('Failed to load history'));
2092
+ }
2093
+ };
2094
+ const previewDebtDistribution = async (amount) => {
2095
+ if (isNaN(amount) || amount <= 0) {
2096
+ console.log(chalk_1.default.red(' Invalid amount\n'));
2097
+ return;
2098
+ }
2099
+ const spinner = (0, ora_1.default)(`Calculating distribution for $${amount.toFixed(2)}...`).start();
2100
+ try {
2101
+ const data = await api_1.api.debtPreviewRecipients(amount);
2102
+ spinner.stop();
2103
+ if (!data.success) {
2104
+ console.log(chalk_1.default.red(`\n ⚠️ ${data.error}\n`));
2105
+ return;
2106
+ }
2107
+ console.log(chalk_1.default.cyan('\n ╭────────────────────────────────────────────────────────────╮'));
2108
+ console.log(chalk_1.default.cyan(' │') + chalk_1.default.bold.white(' DISTRIBUTION PREVIEW ') + chalk_1.default.cyan('│'));
2109
+ console.log(chalk_1.default.cyan(' ├────────────────────────────────────────────────────────────┤'));
2110
+ console.log(chalk_1.default.cyan(' │') + ` Input Amount: ${chalk_1.default.green('$' + amount.toFixed(2)).padEnd(40)}` + chalk_1.default.cyan('│'));
2111
+ console.log(chalk_1.default.cyan(' │') + ` Total Recipients: ${chalk_1.default.white(String(data.total_recipients)).padEnd(40)}` + chalk_1.default.cyan('│'));
2112
+ console.log(chalk_1.default.cyan(' │') + ` Booster Recipients: ${chalk_1.default.yellow(String(data.booster_recipients)).padEnd(38)}` + chalk_1.default.cyan('│'));
2113
+ console.log(chalk_1.default.cyan(' │') + ` Booster Total: ${chalk_1.default.yellow('$' + parseFloat(data.booster_total || '0').toFixed(2)).padEnd(40)}` + chalk_1.default.cyan('│'));
2114
+ console.log(chalk_1.default.cyan(' │') + ` Ineligible: ${chalk_1.default.dim(String(data.ineligible_count)).padEnd(40)}` + chalk_1.default.cyan('│'));
2115
+ console.log(chalk_1.default.cyan(' ╰────────────────────────────────────────────────────────────╯'));
2116
+ // Show recipient table (first 10)
2117
+ const recipients = data.distribution || [];
2118
+ if (recipients.length > 0) {
2119
+ console.log(chalk_1.default.dim('\n Recipients (first 10):'));
2120
+ const table = new cli_table3_1.default({
2121
+ head: [chalk_1.default.cyan('Email'), chalk_1.default.cyan('Amount'), chalk_1.default.cyan('Debt Before'), chalk_1.default.cyan('Debt After'), chalk_1.default.cyan('Booster')],
2122
+ style: { head: [], border: [] },
2123
+ colWidths: [25, 12, 12, 12, 10],
2124
+ });
2125
+ recipients.slice(0, 10).forEach((r) => {
2126
+ const email = r.user_email.length > 22 ? r.user_email.substring(0, 22) + '...' : r.user_email;
2127
+ const boosterIcon = r.is_booster ? chalk_1.default.yellow('🚀') : chalk_1.default.dim('-');
2128
+ table.push([
2129
+ email,
2130
+ chalk_1.default.green('$' + parseFloat(r.amount).toFixed(2)),
2131
+ '$' + parseFloat(r.remaining_debt).toFixed(2),
2132
+ '$' + parseFloat(r.debt_after_payment).toFixed(2),
2133
+ boosterIcon,
2134
+ ]);
2135
+ });
2136
+ console.log(table.toString());
2137
+ if (recipients.length > 10) {
2138
+ console.log(chalk_1.default.dim(` ... and ${recipients.length - 10} more recipients\n`));
2139
+ }
2140
+ else {
2141
+ console.log('');
2142
+ }
2143
+ }
2144
+ }
2145
+ catch (e) {
2146
+ spinner.fail(chalk_1.default.red('Failed to preview distribution'));
2147
+ }
2148
+ };
2149
+ const dryRunDebtDistribution = async (amount) => {
2150
+ if (isNaN(amount) || amount <= 0) {
2151
+ console.log(chalk_1.default.red(' Invalid amount\n'));
2152
+ return;
2153
+ }
2154
+ const spinner = (0, ora_1.default)(`Running dry simulation for $${amount.toFixed(2)}...`).start();
2155
+ try {
2156
+ const data = await api_1.api.debtDryRun(amount);
2157
+ spinner.stop();
2158
+ if (!data.success) {
2159
+ console.log(chalk_1.default.red(`\n ⚠️ ${data.error}\n`));
2160
+ return;
2161
+ }
2162
+ console.log(chalk_1.default.yellow('\n ══════════════════════════════════════════════════════════════'));
2163
+ console.log(chalk_1.default.yellow(' 🔬 DRY RUN SIMULATION 🔬 '));
2164
+ console.log(chalk_1.default.yellow(' ══════════════════════════════════════════════════════════════\n'));
2165
+ console.log(chalk_1.default.white(' This is a simulation. No actual transactions will be made.\n'));
2166
+ console.log(` Input Amount: ${chalk_1.default.green('$' + amount.toFixed(2))}`);
2167
+ console.log(` Would Distribute: ${chalk_1.default.green('$' + parseFloat(data.total_distributed || '0').toFixed(2))}`);
2168
+ console.log(` Recipients: ${chalk_1.default.white(data.total_recipients || 0)}`);
2169
+ console.log(` Booster Recovery: ${chalk_1.default.yellow('$' + parseFloat(data.booster_total || '0').toFixed(2))}`);
2170
+ if (data.execution_log) {
2171
+ console.log(chalk_1.default.dim('\n Execution Log:'));
2172
+ data.execution_log.slice(0, 5).forEach((log) => {
2173
+ console.log(chalk_1.default.dim(` • ${log}`));
2174
+ });
2175
+ }
2176
+ console.log(chalk_1.default.yellow('\n ══════════════════════════════════════════════════════════════\n'));
2177
+ }
2178
+ catch (e) {
2179
+ spinner.fail(chalk_1.default.red('Failed to run dry simulation'));
2180
+ }
2181
+ };
2182
+ const runDebtDistributionWizard = async () => {
2183
+ console.log(chalk_1.default.magenta('\n ═══════════════════════════════════════════════════════════════'));
2184
+ console.log(chalk_1.default.magenta(' 💰 DEBT DISTRIBUTION WIZARD 💰 '));
2185
+ console.log(chalk_1.default.magenta(' ═══════════════════════════════════════════════════════════════\n'));
2186
+ // Step 1: Validate vendor
2187
+ const vendorSpinner = (0, ora_1.default)('Step 1/4: Validating TarPay vendor...').start();
2188
+ try {
2189
+ const vendorResp = await api_1.api.debtValidateVendor();
2190
+ if (!vendorResp.valid) {
2191
+ vendorSpinner.fail(chalk_1.default.red('TarPay vendor not configured'));
2192
+ console.log(chalk_1.default.red(`\n ⚠️ ${vendorResp.error}\n`));
2193
+ return;
2194
+ }
2195
+ vendorSpinner.succeed(chalk_1.default.green(`TarPay vendor validated: ${vendorResp.vendor_name}`));
2196
+ }
2197
+ catch (e) {
2198
+ vendorSpinner.fail(chalk_1.default.red('Failed to validate vendor'));
2199
+ return;
2200
+ }
2201
+ // Get current balance
2202
+ const balanceSpinner = (0, ora_1.default)('Fetching recovery wallet balance...').start();
2203
+ let currentBalance = 0;
2204
+ try {
2205
+ const balanceResp = await api_1.api.debtRefreshBalance();
2206
+ if (balanceResp.success && balanceResp.data?.balance != null) {
2207
+ currentBalance = balanceResp.data.balance;
2208
+ balanceSpinner.succeed(chalk_1.default.green(`Recovery wallet balance: $${currentBalance.toFixed(2)} USDT`));
2209
+ }
2210
+ else {
2211
+ balanceSpinner.warn(chalk_1.default.yellow('Could not fetch balance'));
2212
+ }
2213
+ }
2214
+ catch (e) {
2215
+ balanceSpinner.warn(chalk_1.default.yellow('Could not fetch balance'));
2216
+ }
2217
+ // Step 2: Get amount
2218
+ const { amount } = await inquirer_1.default.prompt([
2219
+ {
2220
+ type: 'input',
2221
+ name: 'amount',
2222
+ message: `Enter distribution amount (available: $${currentBalance.toFixed(2)}):`,
2223
+ default: currentBalance > 0 ? currentBalance.toFixed(2) : undefined,
2224
+ validate: (input) => {
2225
+ const num = parseFloat(input);
2226
+ if (isNaN(num) || num <= 0) {
2227
+ return 'Please enter a positive amount';
2228
+ }
2229
+ return true;
2230
+ },
2231
+ },
2232
+ ]);
2233
+ const distributionAmount = parseFloat(amount);
2234
+ // Step 3: Preview
2235
+ const previewSpinner = (0, ora_1.default)('Step 2/4: Calculating distribution...').start();
2236
+ let preview;
2237
+ try {
2238
+ preview = await api_1.api.debtPreviewRecipients(distributionAmount);
2239
+ if (!preview.success) {
2240
+ previewSpinner.fail(chalk_1.default.red('Failed to calculate distribution'));
2241
+ console.log(chalk_1.default.red(`\n ⚠️ ${preview.error}\n`));
2242
+ return;
2243
+ }
2244
+ previewSpinner.succeed(chalk_1.default.green(`Found ${preview.total_recipients} eligible recipients`));
2245
+ }
2246
+ catch (e) {
2247
+ previewSpinner.fail(chalk_1.default.red('Failed to calculate distribution'));
2248
+ return;
2249
+ }
2250
+ // Show preview summary
2251
+ console.log(chalk_1.default.cyan('\n Distribution Summary:'));
2252
+ console.log(chalk_1.default.dim(' ───────────────────────────────────────'));
2253
+ console.log(` Amount: ${chalk_1.default.green('$' + distributionAmount.toFixed(2))}`);
2254
+ console.log(` Recipients: ${chalk_1.default.white(preview.total_recipients)}`);
2255
+ console.log(` Booster Users: ${chalk_1.default.yellow(preview.booster_recipients)}`);
2256
+ console.log(` Booster Total: ${chalk_1.default.yellow('$' + parseFloat(preview.booster_total || '0').toFixed(2))}`);
2257
+ console.log(` Ineligible: ${chalk_1.default.dim(preview.ineligible_count)}`);
2258
+ console.log('');
2259
+ // Step 4: Dry run
2260
+ const { runDry } = await inquirer_1.default.prompt([
2261
+ {
2262
+ type: 'confirm',
2263
+ name: 'runDry',
2264
+ message: 'Run dry simulation first?',
2265
+ default: true,
2266
+ },
2267
+ ]);
2268
+ if (runDry) {
2269
+ const drySpinner = (0, ora_1.default)('Step 3/4: Running dry simulation...').start();
2270
+ try {
2271
+ const dryResult = await api_1.api.debtDryRun(distributionAmount);
2272
+ if (!dryResult.success) {
2273
+ drySpinner.fail(chalk_1.default.red('Dry run failed'));
2274
+ console.log(chalk_1.default.red(`\n ⚠️ ${dryResult.error}\n`));
2275
+ return;
2276
+ }
2277
+ drySpinner.succeed(chalk_1.default.green('Dry run successful - all checks passed'));
2278
+ }
2279
+ catch (e) {
2280
+ drySpinner.fail(chalk_1.default.red('Dry run failed'));
2281
+ return;
2282
+ }
2283
+ }
2284
+ // Step 5: Confirm execution
2285
+ console.log(chalk_1.default.yellow.bold('\n ⚠️ FINAL CONFIRMATION'));
2286
+ console.log(chalk_1.default.yellow(' ─────────────────────────────────────'));
2287
+ console.log(chalk_1.default.yellow(` You are about to distribute $${distributionAmount.toFixed(2)} to ${preview.total_recipients} users.`));
2288
+ console.log(chalk_1.default.yellow(' This action CANNOT be undone.\n'));
2289
+ const { confirmation } = await inquirer_1.default.prompt([
2290
+ {
2291
+ type: 'input',
2292
+ name: 'confirmation',
2293
+ message: chalk_1.default.red.bold('Type "EXECUTE" to confirm:'),
2294
+ validate: (input) => {
2295
+ if (input !== 'EXECUTE') {
2296
+ return 'Type exactly "EXECUTE" to confirm, or Ctrl+C to cancel';
2297
+ }
2298
+ return true;
2299
+ },
2300
+ },
2301
+ ]);
2302
+ // Execute
2303
+ const execSpinner = (0, ora_1.default)('Step 4/4: Executing distribution via TarPay...').start();
2304
+ try {
2305
+ const result = await api_1.api.debtExecuteDistribution(distributionAmount, confirmation);
2306
+ if (!result.success) {
2307
+ execSpinner.fail(chalk_1.default.red('Distribution failed'));
2308
+ console.log(chalk_1.default.red(`\n ⚠️ ${result.error}\n`));
2309
+ return;
2310
+ }
2311
+ execSpinner.succeed(chalk_1.default.green.bold('Distribution executed successfully!'));
2312
+ console.log(chalk_1.default.green('\n ═══════════════════════════════════════════════════════════════'));
2313
+ console.log(chalk_1.default.green(' ✅ DISTRIBUTION COMPLETE ✅ '));
2314
+ console.log(chalk_1.default.green(' ═══════════════════════════════════════════════════════════════\n'));
2315
+ console.log(` Distribution ID: ${chalk_1.default.cyan(result.distribution_id || 'N/A')}`);
2316
+ console.log(` Amount: ${chalk_1.default.green('$' + parseFloat(result.distributed_amount || '0').toFixed(2))}`);
2317
+ console.log(` Successful: ${chalk_1.default.green(result.successful_payouts || 0)}`);
2318
+ console.log(` Failed: ${chalk_1.default.red(result.failed_payouts || 0)}`);
2319
+ console.log(` Booster Payouts: ${chalk_1.default.yellow(result.booster_recipients || 0)}`);
2320
+ console.log('');
2321
+ }
2322
+ catch (e) {
2323
+ execSpinner.fail(chalk_1.default.red('Distribution failed'));
2324
+ console.log(chalk_1.default.red(`\n Error: ${e.message}\n`));
2325
+ }
2326
+ };
1902
2327
  // ==================== LOGIN ====================
1903
2328
  program
1904
2329
  .command('login')