mxroute-cli 0.3.1 → 1.0.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 (121) hide show
  1. package/README.md +281 -11
  2. package/dist/commands/accounts-search.d.ts +1 -0
  3. package/dist/commands/accounts-search.js +66 -0
  4. package/dist/commands/accounts-search.js.map +1 -0
  5. package/dist/commands/accounts.js +39 -9
  6. package/dist/commands/accounts.js.map +1 -1
  7. package/dist/commands/aliases-sync.d.ts +1 -0
  8. package/dist/commands/aliases-sync.js +162 -0
  9. package/dist/commands/aliases-sync.js.map +1 -0
  10. package/dist/commands/autoresponder.js +7 -6
  11. package/dist/commands/autoresponder.js.map +1 -1
  12. package/dist/commands/backup.d.ts +1 -0
  13. package/dist/commands/backup.js +170 -0
  14. package/dist/commands/backup.js.map +1 -0
  15. package/dist/commands/bulk.js +52 -9
  16. package/dist/commands/bulk.js.map +1 -1
  17. package/dist/commands/catchall.js +2 -2
  18. package/dist/commands/catchall.js.map +1 -1
  19. package/dist/commands/cleanup.d.ts +1 -0
  20. package/dist/commands/cleanup.js +234 -0
  21. package/dist/commands/cleanup.js.map +1 -0
  22. package/dist/commands/config.js +9 -2
  23. package/dist/commands/config.js.map +1 -1
  24. package/dist/commands/credentials-export.d.ts +13 -0
  25. package/dist/commands/credentials-export.js +142 -0
  26. package/dist/commands/credentials-export.js.map +1 -0
  27. package/dist/commands/deprovision.d.ts +1 -0
  28. package/dist/commands/deprovision.js +125 -0
  29. package/dist/commands/deprovision.js.map +1 -0
  30. package/dist/commands/dns-setup.js +20 -3
  31. package/dist/commands/dns-setup.js.map +1 -1
  32. package/dist/commands/export-import.js +22 -1
  33. package/dist/commands/export-import.js.map +1 -1
  34. package/dist/commands/filters.js +2 -2
  35. package/dist/commands/filters.js.map +1 -1
  36. package/dist/commands/fix.js +1 -1
  37. package/dist/commands/fix.js.map +1 -1
  38. package/dist/commands/forwarders-validate.d.ts +1 -0
  39. package/dist/commands/forwarders-validate.js +190 -0
  40. package/dist/commands/forwarders-validate.js.map +1 -0
  41. package/dist/commands/forwarders.js +6 -5
  42. package/dist/commands/forwarders.js.map +1 -1
  43. package/dist/commands/lists.js +7 -6
  44. package/dist/commands/lists.js.map +1 -1
  45. package/dist/commands/mail.d.ts +15 -0
  46. package/dist/commands/mail.js +998 -0
  47. package/dist/commands/mail.js.map +1 -0
  48. package/dist/commands/migrate.js.map +1 -1
  49. package/dist/commands/onboard.js +11 -4
  50. package/dist/commands/onboard.js.map +1 -1
  51. package/dist/commands/password-audit.d.ts +1 -0
  52. package/dist/commands/password-audit.js +304 -0
  53. package/dist/commands/password-audit.js.map +1 -0
  54. package/dist/commands/password.d.ts +1 -0
  55. package/dist/commands/password.js +96 -0
  56. package/dist/commands/password.js.map +1 -0
  57. package/dist/commands/provision.d.ts +13 -0
  58. package/dist/commands/provision.js +306 -0
  59. package/dist/commands/provision.js.map +1 -0
  60. package/dist/commands/quota-policy.d.ts +3 -0
  61. package/dist/commands/quota-policy.js +192 -0
  62. package/dist/commands/quota-policy.js.map +1 -0
  63. package/dist/commands/quota.js +1 -1
  64. package/dist/commands/quota.js.map +1 -1
  65. package/dist/commands/rate-limit.d.ts +2 -0
  66. package/dist/commands/rate-limit.js +121 -0
  67. package/dist/commands/rate-limit.js.map +1 -0
  68. package/dist/commands/reputation.d.ts +1 -0
  69. package/dist/commands/reputation.js +265 -0
  70. package/dist/commands/reputation.js.map +1 -0
  71. package/dist/commands/schedule.d.ts +3 -0
  72. package/dist/commands/schedule.js +270 -0
  73. package/dist/commands/schedule.js.map +1 -0
  74. package/dist/commands/send.js +2 -1
  75. package/dist/commands/send.js.map +1 -1
  76. package/dist/commands/setup.js +25 -3
  77. package/dist/commands/setup.js.map +1 -1
  78. package/dist/commands/share.js +20 -10
  79. package/dist/commands/share.js.map +1 -1
  80. package/dist/commands/smtp-debug.d.ts +1 -0
  81. package/dist/commands/smtp-debug.js +188 -0
  82. package/dist/commands/smtp-debug.js.map +1 -0
  83. package/dist/commands/spam.js +3 -3
  84. package/dist/commands/spam.js.map +1 -1
  85. package/dist/commands/ssl-check.d.ts +1 -0
  86. package/dist/commands/ssl-check.js +145 -0
  87. package/dist/commands/ssl-check.js.map +1 -0
  88. package/dist/commands/status.js +53 -1
  89. package/dist/commands/status.js.map +1 -1
  90. package/dist/commands/templates.d.ts +4 -0
  91. package/dist/commands/templates.js +310 -0
  92. package/dist/commands/templates.js.map +1 -0
  93. package/dist/commands/test-delivery.d.ts +1 -0
  94. package/dist/commands/test-delivery.js +87 -0
  95. package/dist/commands/test-delivery.js.map +1 -0
  96. package/dist/commands/usage-history.d.ts +1 -0
  97. package/dist/commands/usage-history.js +173 -0
  98. package/dist/commands/usage-history.js.map +1 -0
  99. package/dist/commands/webhook.js +18 -3
  100. package/dist/commands/webhook.js.map +1 -1
  101. package/dist/commands/welcome-send.d.ts +11 -0
  102. package/dist/commands/welcome-send.js +163 -0
  103. package/dist/commands/welcome-send.js.map +1 -0
  104. package/dist/index.js +362 -0
  105. package/dist/index.js.map +1 -1
  106. package/dist/mcp.js +1940 -10
  107. package/dist/mcp.js.map +1 -1
  108. package/dist/utils/config.js +1 -1
  109. package/dist/utils/config.js.map +1 -1
  110. package/dist/utils/directadmin.js +23 -2
  111. package/dist/utils/directadmin.js.map +1 -1
  112. package/dist/utils/imap.d.ts +61 -0
  113. package/dist/utils/imap.js +426 -0
  114. package/dist/utils/imap.js.map +1 -0
  115. package/dist/utils/mime.d.ts +50 -0
  116. package/dist/utils/mime.js +369 -0
  117. package/dist/utils/mime.js.map +1 -0
  118. package/dist/utils/shared.d.ts +10 -0
  119. package/dist/utils/shared.js +28 -1
  120. package/dist/utils/shared.js.map +1 -1
  121. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"catchall.js","sourceRoot":"","sources":["../../src/commands/catchall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catchall.js","sourceRoot":"","sources":["../../src/commands/catchall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function cleanupCommand(): Promise<void>;
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.cleanupCommand = cleanupCommand;
40
+ const chalk_1 = __importDefault(require("chalk"));
41
+ const ora_1 = __importDefault(require("ora"));
42
+ const dns = __importStar(require("dns"));
43
+ const theme_1 = require("../utils/theme");
44
+ const directadmin_1 = require("../utils/directadmin");
45
+ const shared_1 = require("../utils/shared");
46
+ function resolveMx(domain) {
47
+ return new Promise((resolve) => {
48
+ dns.resolveMx(domain, (err, addresses) => {
49
+ resolve(err ? [] : addresses || []);
50
+ });
51
+ });
52
+ }
53
+ async function cleanupCommand() {
54
+ const creds = (0, shared_1.getCreds)();
55
+ console.log(theme_1.theme.heading('Account Cleanup Scan'));
56
+ console.log(theme_1.theme.muted(' Scanning for unused accounts, orphaned forwarders, and redundant configs...\n'));
57
+ const spinner = (0, ora_1.default)({ text: 'Fetching domains...', spinner: 'dots12', color: 'cyan' }).start();
58
+ try {
59
+ const domains = await (0, directadmin_1.listDomains)(creds);
60
+ const issues = [];
61
+ for (let i = 0; i < domains.length; i++) {
62
+ const domain = domains[i];
63
+ spinner.text = `Scanning ${domain} (${i + 1}/${domains.length})...`;
64
+ let accounts = [];
65
+ let forwarders = [];
66
+ let autoresponders = [];
67
+ try {
68
+ accounts = await (0, directadmin_1.listEmailAccounts)(creds, domain);
69
+ }
70
+ catch {
71
+ /* skip */
72
+ }
73
+ try {
74
+ forwarders = await (0, directadmin_1.listForwarders)(creds, domain);
75
+ }
76
+ catch {
77
+ /* skip */
78
+ }
79
+ try {
80
+ autoresponders = await (0, directadmin_1.listAutoresponders)(creds, domain);
81
+ }
82
+ catch {
83
+ /* skip */
84
+ }
85
+ // Check for forwarders pointing to non-existent local accounts
86
+ for (const fwd of forwarders) {
87
+ try {
88
+ const dest = await (0, directadmin_1.getForwarderDestination)(creds, domain, fwd);
89
+ const destinations = dest
90
+ .split(',')
91
+ .map((d) => d.trim())
92
+ .filter(Boolean);
93
+ for (const destEmail of destinations) {
94
+ const atIdx = destEmail.lastIndexOf('@');
95
+ if (atIdx === -1)
96
+ continue;
97
+ const destDomain = destEmail.substring(atIdx + 1);
98
+ const destUser = destEmail.substring(0, atIdx);
99
+ // Check if forwarding to same domain but account doesn't exist
100
+ if (destDomain === domain && !accounts.includes(destUser)) {
101
+ issues.push({
102
+ type: 'orphaned',
103
+ severity: 'medium',
104
+ domain,
105
+ resource: `${fwd}@${domain} \u2192 ${destEmail}`,
106
+ description: 'Forwarder points to non-existent local account',
107
+ suggestion: `Delete with: mxroute forwarders delete ${domain}`,
108
+ });
109
+ }
110
+ // Check if destination domain has MX records
111
+ if (destDomain !== domain) {
112
+ const mx = await resolveMx(destDomain);
113
+ if (mx.length === 0) {
114
+ issues.push({
115
+ type: 'orphaned',
116
+ severity: 'high',
117
+ domain,
118
+ resource: `${fwd}@${domain} \u2192 ${destEmail}`,
119
+ description: `Destination domain "${destDomain}" has no MX records`,
120
+ suggestion: `Delete with: mxroute forwarders delete ${domain}`,
121
+ });
122
+ }
123
+ }
124
+ }
125
+ }
126
+ catch {
127
+ /* skip */
128
+ }
129
+ }
130
+ // Check for autoresponders on accounts that don't exist
131
+ for (const ar of autoresponders) {
132
+ if (!accounts.includes(ar)) {
133
+ issues.push({
134
+ type: 'orphaned',
135
+ severity: 'low',
136
+ domain,
137
+ resource: `autoresponder: ${ar}@${domain}`,
138
+ description: 'Autoresponder exists for non-existent account',
139
+ suggestion: `Delete with: mxroute autoresponder delete ${domain}`,
140
+ });
141
+ }
142
+ }
143
+ // Check catch-all pointing to non-existent account
144
+ try {
145
+ const catchAll = await (0, directadmin_1.getCatchAll)(creds, domain);
146
+ if (catchAll && catchAll !== ':fail:' && catchAll !== ':blackhole:') {
147
+ const catchUser = catchAll.split('@')[0];
148
+ if (catchUser && !accounts.includes(catchUser) && !catchAll.includes('@')) {
149
+ // Catch-all user doesn't exist as an account
150
+ if (!accounts.includes(catchAll)) {
151
+ issues.push({
152
+ type: 'misconfigured',
153
+ severity: 'medium',
154
+ domain,
155
+ resource: `catch-all: ${catchAll}`,
156
+ description: 'Catch-all points to non-existent account',
157
+ suggestion: `Update with: mxroute catchall set ${domain}`,
158
+ });
159
+ }
160
+ }
161
+ }
162
+ }
163
+ catch {
164
+ /* skip */
165
+ }
166
+ // Check for accounts with same name as forwarders (potential conflict)
167
+ for (const fwd of forwarders) {
168
+ if (accounts.includes(fwd)) {
169
+ issues.push({
170
+ type: 'redundant',
171
+ severity: 'low',
172
+ domain,
173
+ resource: `${fwd}@${domain}`,
174
+ description: 'Account and forwarder exist with same name — forwarder may not work',
175
+ suggestion: 'Remove either the account or forwarder to avoid conflicts',
176
+ });
177
+ }
178
+ }
179
+ }
180
+ spinner.stop();
181
+ if (issues.length === 0) {
182
+ console.log(theme_1.theme.success(` ${theme_1.theme.statusIcon('pass')} No issues found across ${domains.length} domain${domains.length === 1 ? '' : 's'}!`));
183
+ console.log(theme_1.theme.muted(' Your account is clean.\n'));
184
+ return;
185
+ }
186
+ // Group by severity
187
+ const high = issues.filter((i) => i.severity === 'high');
188
+ const medium = issues.filter((i) => i.severity === 'medium');
189
+ const low = issues.filter((i) => i.severity === 'low');
190
+ console.log(theme_1.theme.muted(` Found ${issues.length} issue${issues.length === 1 ? '' : 's'} across ${domains.length} domain${domains.length === 1 ? '' : 's'}:\n`));
191
+ if (high.length > 0) {
192
+ console.log(theme_1.theme.error(' High Priority:'));
193
+ for (const issue of high) {
194
+ console.log(` ${theme_1.theme.statusIcon('fail')} ${theme_1.theme.bold(issue.resource)}`);
195
+ console.log(theme_1.theme.muted(` ${issue.description}`));
196
+ console.log(theme_1.theme.muted(` ${issue.suggestion}`));
197
+ }
198
+ console.log('');
199
+ }
200
+ if (medium.length > 0) {
201
+ console.log(theme_1.theme.warning(' Medium Priority:'));
202
+ for (const issue of medium) {
203
+ console.log(` ${theme_1.theme.statusIcon('warn')} ${theme_1.theme.bold(issue.resource)}`);
204
+ console.log(theme_1.theme.muted(` ${issue.description}`));
205
+ console.log(theme_1.theme.muted(` ${issue.suggestion}`));
206
+ }
207
+ console.log('');
208
+ }
209
+ if (low.length > 0) {
210
+ console.log(theme_1.theme.muted(' Low Priority:'));
211
+ for (const issue of low) {
212
+ console.log(` ${theme_1.theme.statusIcon('info')} ${theme_1.theme.bold(issue.resource)}`);
213
+ console.log(theme_1.theme.muted(` ${issue.description}`));
214
+ console.log(theme_1.theme.muted(` ${issue.suggestion}`));
215
+ }
216
+ console.log('');
217
+ }
218
+ // Summary
219
+ const summaryLines = [
220
+ theme_1.theme.keyValue('Total Issues', issues.length.toString(), 0),
221
+ theme_1.theme.keyValue('High', high.length > 0 ? theme_1.theme.error(high.length.toString()) : '0', 0),
222
+ theme_1.theme.keyValue('Medium', medium.length > 0 ? theme_1.theme.warning(medium.length.toString()) : '0', 0),
223
+ theme_1.theme.keyValue('Low', low.length > 0 ? theme_1.theme.info(low.length.toString()) : '0', 0),
224
+ theme_1.theme.keyValue('Domains Scanned', domains.length.toString(), 0),
225
+ ];
226
+ console.log(theme_1.theme.box(summaryLines.join('\n'), 'Cleanup Summary'));
227
+ console.log('');
228
+ }
229
+ catch (err) {
230
+ spinner.fail(chalk_1.default.red('Cleanup scan failed'));
231
+ console.log(theme_1.theme.error(` ${err.message}\n`));
232
+ }
233
+ }
234
+ //# sourceMappingURL=cleanup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/commands/cleanup.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ const inquirer_1 = __importDefault(require("inquirer"));
16
16
  const theme_1 = require("../utils/theme");
17
17
  const config_1 = require("../utils/config");
18
18
  const directadmin_1 = require("../utils/directadmin");
19
+ const shared_1 = require("../utils/shared");
19
20
  async function configSetup() {
20
21
  console.log(theme_1.theme.heading('Configure MXroute CLI'));
21
22
  const config = (0, config_1.getConfig)();
@@ -107,7 +108,13 @@ async function configSetup() {
107
108
  type: 'input',
108
109
  name: 'manualDomain',
109
110
  message: theme_1.theme.secondary('Primary domain:'),
110
- validate: (input) => (input.includes('.') ? true : 'Enter a valid domain'),
111
+ validate: (input) => {
112
+ if (!input.trim())
113
+ return 'Domain is required';
114
+ if (!input.includes('.') || input.startsWith('.') || input.endsWith('.'))
115
+ return 'Enter a valid domain (e.g., example.com)';
116
+ return true;
117
+ },
111
118
  },
112
119
  ]);
113
120
  domain = manualDomain;
@@ -133,7 +140,7 @@ async function configSetup() {
133
140
  name: 'username',
134
141
  message: theme_1.theme.secondary('Email address (SMTP username):'),
135
142
  default: config.username || '',
136
- validate: (input) => (input.includes('@') ? true : 'Must be a full email address'),
143
+ validate: shared_1.validateEmail,
137
144
  },
138
145
  {
139
146
  type: 'password',
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ interface CredentialEntry {
2
+ email: string;
3
+ server: string;
4
+ imapPort: number;
5
+ smtpPort: number;
6
+ webmail: string;
7
+ }
8
+ export declare function credentialsExportData(domain: string, accounts: {
9
+ user: string;
10
+ password?: string;
11
+ }[]): CredentialEntry[];
12
+ export declare function credentialsExport(domain?: string): Promise<void>;
13
+ export {};
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.credentialsExportData = credentialsExportData;
40
+ exports.credentialsExport = credentialsExport;
41
+ const chalk_1 = __importDefault(require("chalk"));
42
+ const ora_1 = __importDefault(require("ora"));
43
+ const inquirer_1 = __importDefault(require("inquirer"));
44
+ const fs = __importStar(require("fs"));
45
+ const path = __importStar(require("path"));
46
+ const theme_1 = require("../utils/theme");
47
+ const directadmin_1 = require("../utils/directadmin");
48
+ const shared_1 = require("../utils/shared");
49
+ const config_1 = require("../utils/config");
50
+ function credentialsExportData(domain, accounts) {
51
+ const config = (0, config_1.getConfig)();
52
+ const server = `${config.server}.mxrouting.net`;
53
+ return accounts.map((acct) => ({
54
+ email: `${acct.user}@${domain}`,
55
+ server,
56
+ imapPort: 993,
57
+ smtpPort: 465,
58
+ webmail: `https://${config.server}.mxrouting.net`,
59
+ }));
60
+ }
61
+ async function credentialsExport(domain) {
62
+ const creds = (0, shared_1.getCreds)();
63
+ const targetDomain = await (0, shared_1.pickDomain)(creds, domain);
64
+ console.log(theme_1.theme.heading(`Export Credentials: ${targetDomain}`));
65
+ const spinner = (0, ora_1.default)({ text: 'Fetching accounts...', spinner: 'dots12', color: 'cyan' }).start();
66
+ try {
67
+ const accounts = await (0, directadmin_1.listEmailAccounts)(creds, targetDomain);
68
+ spinner.stop();
69
+ if (accounts.length === 0) {
70
+ console.log(theme_1.theme.muted(' No email accounts found.\n'));
71
+ return;
72
+ }
73
+ console.log(theme_1.theme.muted(` Found ${accounts.length} account${accounts.length !== 1 ? 's' : ''}\n`));
74
+ const { format } = await inquirer_1.default.prompt([
75
+ {
76
+ type: 'list',
77
+ name: 'format',
78
+ message: 'Export format:',
79
+ choices: [
80
+ { name: 'CSV', value: 'csv' },
81
+ { name: '1Password (CSV import)', value: '1password' },
82
+ { name: 'JSON', value: 'json' },
83
+ ],
84
+ },
85
+ ]);
86
+ const ext = format === 'json' ? 'json' : 'csv';
87
+ const defaultFile = `credentials-${targetDomain}.${ext}`;
88
+ const { outputPath } = await inquirer_1.default.prompt([
89
+ {
90
+ type: 'input',
91
+ name: 'outputPath',
92
+ message: theme_1.theme.secondary('Output file path:'),
93
+ default: defaultFile,
94
+ },
95
+ ]);
96
+ const config = (0, config_1.getConfig)();
97
+ const server = `${config.server}.mxrouting.net`;
98
+ const resolvedPath = path.resolve(outputPath);
99
+ // Escape CSV field to prevent formula injection
100
+ function csvEscape(field) {
101
+ // If field starts with =, +, -, @, tab, or CR, prefix with single quote
102
+ if (/^[=+\-@\t\r]/.test(field)) {
103
+ field = "'" + field;
104
+ }
105
+ // Quote fields containing comma, quote, or newline
106
+ if (/[",\n\r]/.test(field)) {
107
+ return '"' + field.replace(/"/g, '""') + '"';
108
+ }
109
+ return field;
110
+ }
111
+ let content;
112
+ if (format === 'csv') {
113
+ const rows = ['email,server,imap_port,smtp_port'];
114
+ for (const acct of accounts) {
115
+ rows.push(`${csvEscape(`${acct}@${targetDomain}`)},${csvEscape(server)},993,465`);
116
+ }
117
+ content = rows.join('\n') + '\n';
118
+ }
119
+ else if (format === '1password') {
120
+ const rows = ['Title,Website,Username,Password,Notes'];
121
+ for (const acct of accounts) {
122
+ const email = `${acct}@${targetDomain}`;
123
+ const notes = `Server: ${server} | IMAP: 993 | SMTP: 465`;
124
+ rows.push(`${csvEscape(email)},https://${csvEscape(server)},${csvEscape(email)},SET_BY_ADMIN,${csvEscape(notes)}`);
125
+ }
126
+ content = rows.join('\n') + '\n';
127
+ }
128
+ else {
129
+ const data = credentialsExportData(targetDomain, accounts.map((a) => ({ user: a })));
130
+ content = JSON.stringify(data, null, 2) + '\n';
131
+ }
132
+ fs.writeFileSync(resolvedPath, content, { mode: 0o600 });
133
+ console.log('');
134
+ console.log(chalk_1.default.green(` ${theme_1.theme.statusIcon('pass')} Exported ${accounts.length} account${accounts.length !== 1 ? 's' : ''} to ${resolvedPath}`));
135
+ console.log(theme_1.theme.muted(` File permissions set to 600 (owner read/write only)\n`));
136
+ }
137
+ catch (err) {
138
+ spinner.stop();
139
+ console.log(theme_1.theme.error(` ${err.message}\n`));
140
+ }
141
+ }
142
+ //# sourceMappingURL=credentials-export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials-export.js","sourceRoot":"","sources":["../../src/commands/credentials-export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function deprovisionAccount(domain?: string): Promise<void>;