paymongo-cli 1.4.4 → 1.4.7

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 (155) hide show
  1. package/.github/copilot-instructions.md +95 -95
  2. package/CHANGELOG.md +85 -1
  3. package/LICENSE +20 -20
  4. package/dist/.tsbuildinfo +1 -1
  5. package/dist/commands/config.js +30 -15
  6. package/dist/commands/dev/logs.js +3 -3
  7. package/dist/commands/dev/status.js +2 -2
  8. package/dist/commands/dev/stop.js +3 -3
  9. package/dist/commands/dev.js +9 -8
  10. package/dist/commands/env.js +6 -6
  11. package/dist/commands/generate/templates/checkout-page/index.js +520 -520
  12. package/dist/commands/generate/templates/payment-intent/javascript.js +68 -68
  13. package/dist/commands/generate/templates/payment-intent/typescript.js +92 -92
  14. package/dist/commands/generate/templates/webhook-handler/javascript.js +192 -147
  15. package/dist/commands/generate/templates/webhook-handler/typescript.js +147 -117
  16. package/dist/commands/generate.js +43 -37
  17. package/dist/commands/init.js +25 -8
  18. package/dist/commands/login.js +56 -19
  19. package/dist/commands/payments.js +9 -8
  20. package/dist/commands/team/index.js +11 -9
  21. package/dist/commands/trigger.js +58 -18
  22. package/dist/commands/webhooks.js +8 -7
  23. package/dist/index.js +9 -2
  24. package/dist/services/analytics/service.js +24 -19
  25. package/dist/services/api/client.js +16 -16
  26. package/dist/services/config/manager.js +6 -8
  27. package/dist/services/dev/process-manager.js +30 -32
  28. package/dist/services/dev/server.js +45 -39
  29. package/dist/services/team/service.js +4 -1
  30. package/dist/types/schemas.js +38 -9
  31. package/dist/utils/bulk.js +36 -4
  32. package/dist/utils/constants.js +11 -1
  33. package/dist/utils/errors.js +6 -0
  34. package/dist/utils/validator.js +10 -9
  35. package/dist/utils/webhook-store.js +18 -15
  36. package/eslint.config.ts +70 -70
  37. package/package.json +2 -2
  38. package/coverage/base.css +0 -224
  39. package/coverage/block-navigation.js +0 -87
  40. package/coverage/favicon.png +0 -0
  41. package/coverage/index.html +0 -281
  42. package/coverage/lcov-report/base.css +0 -224
  43. package/coverage/lcov-report/block-navigation.js +0 -87
  44. package/coverage/lcov-report/favicon.png +0 -0
  45. package/coverage/lcov-report/index.html +0 -281
  46. package/coverage/lcov-report/prettify.css +0 -1
  47. package/coverage/lcov-report/prettify.js +0 -2
  48. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  49. package/coverage/lcov-report/sorter.js +0 -210
  50. package/coverage/lcov.info +0 -5053
  51. package/coverage/prettify.css +0 -1
  52. package/coverage/prettify.js +0 -2
  53. package/coverage/sort-arrow-sprite.png +0 -0
  54. package/coverage/sorter.js +0 -210
  55. package/dist/commands/config.d.ts +0 -21
  56. package/dist/commands/config.d.ts.map +0 -1
  57. package/dist/commands/config.js.map +0 -1
  58. package/dist/commands/dev.d.ts +0 -16
  59. package/dist/commands/dev.d.ts.map +0 -1
  60. package/dist/commands/dev.js.map +0 -1
  61. package/dist/commands/env.d.ts +0 -4
  62. package/dist/commands/env.d.ts.map +0 -1
  63. package/dist/commands/env.js.map +0 -1
  64. package/dist/commands/init.d.ts +0 -15
  65. package/dist/commands/init.d.ts.map +0 -1
  66. package/dist/commands/init.js.map +0 -1
  67. package/dist/commands/login.d.ts +0 -20
  68. package/dist/commands/login.d.ts.map +0 -1
  69. package/dist/commands/login.js.map +0 -1
  70. package/dist/commands/payments.d.ts +0 -41
  71. package/dist/commands/payments.d.ts.map +0 -1
  72. package/dist/commands/payments.js.map +0 -1
  73. package/dist/commands/team/index.d.ts +0 -4
  74. package/dist/commands/team/index.d.ts.map +0 -1
  75. package/dist/commands/team/index.js.map +0 -1
  76. package/dist/commands/trigger.d.ts +0 -4
  77. package/dist/commands/trigger.d.ts.map +0 -1
  78. package/dist/commands/trigger.js.map +0 -1
  79. package/dist/commands/webhooks.d.ts +0 -23
  80. package/dist/commands/webhooks.d.ts.map +0 -1
  81. package/dist/commands/webhooks.js.map +0 -1
  82. package/dist/index.d.ts +0 -3
  83. package/dist/index.d.ts.map +0 -1
  84. package/dist/index.js.map +0 -1
  85. package/dist/services/analytics/service.d.ts +0 -35
  86. package/dist/services/analytics/service.d.ts.map +0 -1
  87. package/dist/services/analytics/service.js.map +0 -1
  88. package/dist/services/api/client.d.ts +0 -26
  89. package/dist/services/api/client.d.ts.map +0 -1
  90. package/dist/services/api/client.js.map +0 -1
  91. package/dist/services/api/rate-limiter.d.ts +0 -64
  92. package/dist/services/api/rate-limiter.d.ts.map +0 -1
  93. package/dist/services/api/rate-limiter.js.map +0 -1
  94. package/dist/services/api/undici-client.d.ts +0 -39
  95. package/dist/services/api/undici-client.d.ts.map +0 -1
  96. package/dist/services/api/undici-client.js +0 -288
  97. package/dist/services/api/undici-client.js.map +0 -1
  98. package/dist/services/config/manager.d.ts +0 -16
  99. package/dist/services/config/manager.d.ts.map +0 -1
  100. package/dist/services/config/manager.js.map +0 -1
  101. package/dist/services/dev/process-manager.d.ts +0 -50
  102. package/dist/services/dev/process-manager.d.ts.map +0 -1
  103. package/dist/services/dev/process-manager.js.map +0 -1
  104. package/dist/services/github/auth.d.ts +0 -15
  105. package/dist/services/github/auth.d.ts.map +0 -1
  106. package/dist/services/github/auth.js +0 -79
  107. package/dist/services/github/auth.js.map +0 -1
  108. package/dist/services/github/client.d.ts +0 -95
  109. package/dist/services/github/client.d.ts.map +0 -1
  110. package/dist/services/github/client.js +0 -130
  111. package/dist/services/github/client.js.map +0 -1
  112. package/dist/services/github/sync.d.ts +0 -26
  113. package/dist/services/github/sync.d.ts.map +0 -1
  114. package/dist/services/github/sync.js +0 -203
  115. package/dist/services/github/sync.js.map +0 -1
  116. package/dist/services/payments/simulator.d.ts +0 -28
  117. package/dist/services/payments/simulator.d.ts.map +0 -1
  118. package/dist/services/payments/simulator.js.map +0 -1
  119. package/dist/services/team/service.d.ts +0 -44
  120. package/dist/services/team/service.d.ts.map +0 -1
  121. package/dist/services/team/service.js.map +0 -1
  122. package/dist/services/web/server.d.ts +0 -31
  123. package/dist/services/web/server.d.ts.map +0 -1
  124. package/dist/services/web/server.js +0 -206
  125. package/dist/services/web/server.js.map +0 -1
  126. package/dist/types/paymongo.d.ts +0 -204
  127. package/dist/types/paymongo.d.ts.map +0 -1
  128. package/dist/types/paymongo.js.map +0 -1
  129. package/dist/types/schemas.d.ts +0 -80
  130. package/dist/types/schemas.d.ts.map +0 -1
  131. package/dist/types/schemas.js.map +0 -1
  132. package/dist/utils/bulk.d.ts +0 -62
  133. package/dist/utils/bulk.d.ts.map +0 -1
  134. package/dist/utils/bulk.js.map +0 -1
  135. package/dist/utils/cache.d.ts +0 -22
  136. package/dist/utils/cache.d.ts.map +0 -1
  137. package/dist/utils/cache.js.map +0 -1
  138. package/dist/utils/constants.d.ts +0 -32
  139. package/dist/utils/constants.d.ts.map +0 -1
  140. package/dist/utils/constants.js.map +0 -1
  141. package/dist/utils/errors.d.ts +0 -34
  142. package/dist/utils/errors.d.ts.map +0 -1
  143. package/dist/utils/errors.js.map +0 -1
  144. package/dist/utils/logger.d.ts +0 -20
  145. package/dist/utils/logger.d.ts.map +0 -1
  146. package/dist/utils/logger.js.map +0 -1
  147. package/dist/utils/spinner.d.ts +0 -17
  148. package/dist/utils/spinner.d.ts.map +0 -1
  149. package/dist/utils/spinner.js.map +0 -1
  150. package/dist/utils/validator.d.ts +0 -10
  151. package/dist/utils/validator.d.ts.map +0 -1
  152. package/dist/utils/validator.js.map +0 -1
  153. package/dist/utils/webhook-store.d.ts +0 -22
  154. package/dist/utils/webhook-store.d.ts.map +0 -1
  155. package/dist/utils/webhook-store.js.map +0 -1
@@ -1,130 +0,0 @@
1
- import axios from 'axios';
2
- import { NetworkError, withRetry } from '../../utils/errors.js';
3
- export class GitHubClient {
4
- client;
5
- token;
6
- constructor(options = {}) {
7
- this.token = options.token;
8
- const timeout = options.timeout || 30000;
9
- this.client = axios.create({
10
- baseURL: 'https://api.github.com',
11
- timeout,
12
- headers: {
13
- Accept: 'application/vnd.github.v3+json',
14
- 'User-Agent': 'paymongo-cli/1.0.0',
15
- },
16
- });
17
- if (this.token) {
18
- const authToken = this.token;
19
- this.client.defaults.headers.common['Authorization'] = `token ${authToken}`;
20
- }
21
- this.setupInterceptors();
22
- }
23
- setupInterceptors() {
24
- // Request interceptor for debugging
25
- this.client.interceptors.request.use((config) => {
26
- if (!this.token && config.url?.includes('/repos/')) {
27
- // For public repo access, we can proceed without token
28
- // But for private repos or write operations, token is required
29
- }
30
- return config;
31
- });
32
- // Response interceptor for error handling
33
- this.client.interceptors.response.use((response) => response, (error) => {
34
- if (error.response?.status === 401) {
35
- throw new Error('GitHub authentication failed. Please check your token.');
36
- }
37
- if (error.response?.status === 403) {
38
- throw new Error('GitHub API rate limit exceeded or insufficient permissions.');
39
- }
40
- if (error.response?.status === 404) {
41
- throw new Error('GitHub repository or file not found.');
42
- }
43
- throw new NetworkError(`GitHub API error: ${error.message}`);
44
- });
45
- }
46
- async getRepo(owner, repo) {
47
- const response = await withRetry(() => this.client.get(`/repos/${owner}/${repo}`), {
48
- maxRetries: 3,
49
- delayMs: 1000,
50
- });
51
- return response.data;
52
- }
53
- async getFile(owner, repo, path, ref) {
54
- const params = ref ? { ref } : {};
55
- const response = await withRetry(() => this.client.get(`/repos/${owner}/${repo}/contents/${path}`, { params }), { maxRetries: 3, delayMs: 1000 });
56
- return response.data;
57
- }
58
- async createOrUpdateFile(owner, repo, path, content, message, branch = 'main', sha) {
59
- const data = {
60
- message,
61
- content: Buffer.from(content).toString('base64'),
62
- branch,
63
- };
64
- if (sha) {
65
- data.sha = sha;
66
- }
67
- const response = await withRetry(() => this.client.put(`/repos/${owner}/${repo}/contents/${path}`, data), { maxRetries: 3, delayMs: 1000 });
68
- return response.data;
69
- }
70
- async getCommits(owner, repo, path, since) {
71
- const params = { per_page: 10 };
72
- if (path) {
73
- params.path = path;
74
- }
75
- if (since) {
76
- params.since = since;
77
- }
78
- const response = await withRetry(() => this.client.get(`/repos/${owner}/${repo}/commits`, { params }), { maxRetries: 3, delayMs: 1000 });
79
- return response.data;
80
- }
81
- async createRepo(name, description, isPrivate = false) {
82
- const data = {
83
- name,
84
- description: description || 'PayMongo CLI team configuration',
85
- private: isPrivate,
86
- auto_init: true,
87
- };
88
- const response = await withRetry(() => this.client.post('/user/repos', data), {
89
- maxRetries: 3,
90
- delayMs: 1000,
91
- });
92
- return response.data;
93
- }
94
- async listCollaborators(owner, repo) {
95
- const response = await withRetry(() => this.client.get(`/repos/${owner}/${repo}/collaborators`), { maxRetries: 3, delayMs: 1000 });
96
- return response.data;
97
- }
98
- async inviteCollaborator(owner, repo, username, permission = 'write') {
99
- const data = {
100
- permission,
101
- invitee_id: username, // GitHub expects username or user ID
102
- };
103
- const response = await withRetry(() => this.client.put(`/repos/${owner}/${repo}/collaborators/${username}`, data), { maxRetries: 3, delayMs: 1000 });
104
- return response.data;
105
- }
106
- async listInvitations(owner, repo) {
107
- const response = await withRetry(() => this.client.get(`/repos/${owner}/${repo}/invitations`), {
108
- maxRetries: 3,
109
- delayMs: 1000,
110
- });
111
- return response.data;
112
- }
113
- async deleteInvitation(owner, repo, invitationId) {
114
- await withRetry(() => this.client.delete(`/repos/${owner}/${repo}/invitations/${invitationId}`), { maxRetries: 3, delayMs: 1000 });
115
- }
116
- async removeCollaborator(owner, repo, username) {
117
- await withRetry(() => this.client.delete(`/repos/${owner}/${repo}/collaborators/${username}`), {
118
- maxRetries: 3,
119
- delayMs: 1000,
120
- });
121
- }
122
- setToken(token) {
123
- this.token = token;
124
- this.client.defaults.headers.common['Authorization'] = `token ${token}`;
125
- }
126
- hasToken() {
127
- return !!this.token;
128
- }
129
- }
130
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/services/github/client.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { ConfigManager } from '../config/manager.js';
2
- import { GitHubAuthService } from './auth.js';
3
- export interface TeamSyncOptions {
4
- config: ConfigManager;
5
- auth: GitHubAuthService;
6
- }
7
- export interface SyncOptions {
8
- repo: string;
9
- branch?: string;
10
- force?: boolean;
11
- direction?: 'push' | 'pull' | 'sync';
12
- }
13
- export declare class TeamSyncService {
14
- private config;
15
- private auth;
16
- constructor(options: TeamSyncOptions);
17
- sync(options: SyncOptions): Promise<void>;
18
- private pushConfig;
19
- private pullConfig;
20
- private sanitizeConfig;
21
- private validateRemoteConfig;
22
- private checkConfigConflicts;
23
- private mergeConfigs;
24
- private updateTeamConfig;
25
- }
26
- //# sourceMappingURL=sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/services/github/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAG9C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;CACtC;AAOD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,IAAI,CAAoB;gBAEpB,OAAO,EAAE,eAAe;IAK9B,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YA+CjC,UAAU;YAoDV,UAAU;IAgExB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,oBAAoB;IAuC5B,OAAO,CAAC,YAAY;YAsBN,gBAAgB;CAe/B"}
@@ -1,203 +0,0 @@
1
- export class TeamSyncService {
2
- config;
3
- auth;
4
- constructor(options) {
5
- this.config = options.config;
6
- this.auth = options.auth;
7
- }
8
- async sync(options) {
9
- const { repo, branch = 'main', force = false, direction = 'sync' } = options;
10
- // Parse repo string (owner/repo)
11
- const [owner, repoName] = repo.split('/');
12
- if (!owner || !repoName) {
13
- throw new Error('Invalid repository format. Use "owner/repo" format.');
14
- }
15
- // Get authenticated GitHub client
16
- const client = await this.auth.authenticate();
17
- // Ensure repo exists
18
- let githubRepo;
19
- try {
20
- githubRepo = await client.getRepo(owner, repoName);
21
- }
22
- catch (error) {
23
- if (error instanceof Error && error.message.includes('404')) {
24
- throw new Error(`Repository "${repo}" not found. Please create it first or check permissions.`);
25
- }
26
- throw error;
27
- }
28
- // Check if repo is accessible
29
- if (githubRepo.private && !client.hasToken()) {
30
- throw new Error(`Repository "${repo}" is private. Please provide a GitHub token with repo permissions.`);
31
- }
32
- const configPath = '.paymongo';
33
- const remotePath = 'paymongo-config.json';
34
- if (direction === 'push' || direction === 'sync') {
35
- await this.pushConfig(client, owner, repoName, branch, configPath, remotePath, force);
36
- }
37
- if (direction === 'pull' || direction === 'sync') {
38
- await this.pullConfig(client, owner, repoName, branch, configPath, remotePath, force);
39
- }
40
- // Update local team config
41
- await this.updateTeamConfig(repo, branch);
42
- }
43
- async pushConfig(client, owner, repo, branch, _localPath, remotePath, force) {
44
- const localConfig = await this.config.load();
45
- if (!localConfig) {
46
- throw new Error('No local configuration found. Run "paymongo init" first.');
47
- }
48
- // Create sanitized config for sharing (remove sensitive data)
49
- const shareableConfig = this.sanitizeConfig(localConfig);
50
- let sha;
51
- // Check if remote file exists
52
- try {
53
- const remoteFile = await client.getFile(owner, repo, remotePath, branch);
54
- sha = remoteFile.sha;
55
- if (!force) {
56
- // Check if remote exists
57
- const remoteCommits = await client.getCommits(owner, repo, remotePath);
58
- if (remoteCommits.length > 0) {
59
- // For now, just warn about potential conflicts
60
- console.log(`⚠️ Remote config exists. Use --force to overwrite.`);
61
- return;
62
- }
63
- }
64
- }
65
- catch (error) {
66
- // File doesn't exist, that's fine for push
67
- if (!(error instanceof Error && error.message.includes('404'))) {
68
- throw error;
69
- }
70
- }
71
- // Push config to GitHub
72
- await client.createOrUpdateFile(owner, repo, remotePath, JSON.stringify(shareableConfig, null, 2), 'Update PayMongo CLI configuration', branch, sha);
73
- }
74
- async pullConfig(client, owner, repo, branch, _localPath, remotePath, force) {
75
- let remoteFile;
76
- try {
77
- remoteFile = await client.getFile(owner, repo, remotePath, branch);
78
- }
79
- catch (error) {
80
- if (error instanceof Error && error.message.includes('404')) {
81
- console.log(`ℹ️ No remote configuration found in ${repo}. Skipping pull.`);
82
- return;
83
- }
84
- throw error;
85
- }
86
- if (!remoteFile.content) {
87
- throw new Error('Remote configuration file is empty.');
88
- }
89
- // Decode base64 content
90
- const remoteConfigContent = Buffer.from(remoteFile.content, 'base64').toString('utf-8');
91
- let remoteConfig;
92
- try {
93
- remoteConfig = JSON.parse(remoteConfigContent);
94
- }
95
- catch (_error) {
96
- throw new Error('Invalid JSON in remote configuration file.');
97
- }
98
- // Validate remote config structure
99
- this.validateRemoteConfig(remoteConfig);
100
- // Merge with local config
101
- const localConfig = await this.config.load();
102
- if (!localConfig) {
103
- // No local config, use remote as base (convert to full config)
104
- const defaultConfig = this.config.getDefaultConfig();
105
- const fullConfig = { ...defaultConfig, ...remoteConfig };
106
- await this.config.save(fullConfig);
107
- return;
108
- }
109
- if (!force) {
110
- // Check for conflicts
111
- const conflicts = this.checkConfigConflicts(localConfig, remoteConfig);
112
- if (conflicts.length > 0) {
113
- console.log('⚠️ Configuration conflicts detected:');
114
- conflicts.forEach((conflict) => console.log(` - ${conflict}`));
115
- console.log('Use --force to overwrite local config with remote.');
116
- return;
117
- }
118
- }
119
- // Merge configurations (remote takes precedence for shared settings)
120
- const mergedConfig = this.mergeConfigs(localConfig, remoteConfig);
121
- await this.config.save(mergedConfig);
122
- }
123
- sanitizeConfig(config) {
124
- // Create a copy without sensitive data
125
- const sanitized = { ...config };
126
- // Remove webhook secrets (they should be environment-specific)
127
- if (sanitized.webhookSecrets) {
128
- sanitized.webhookSecrets = {};
129
- }
130
- // Remove GitHub token (should be set per user)
131
- if (sanitized.team?.githubToken) {
132
- const team = { ...sanitized.team };
133
- delete team.githubToken;
134
- sanitized.team = team;
135
- }
136
- return sanitized;
137
- }
138
- validateRemoteConfig(config) {
139
- if (!config || typeof config !== 'object') {
140
- throw new Error('Remote configuration is not a valid object.');
141
- }
142
- const configObj = config;
143
- if (!configObj.version) {
144
- throw new Error('Remote configuration is missing version field.');
145
- }
146
- // Add more validation as needed
147
- }
148
- checkConfigConflicts(local, remote) {
149
- const conflicts = [];
150
- // Check for API key conflicts
151
- if (local.apiKeys?.test?.public &&
152
- remote.apiKeys?.test?.public &&
153
- local.apiKeys.test.public !== remote.apiKeys.test.public) {
154
- conflicts.push('Test environment public API key');
155
- }
156
- if (local.apiKeys?.test?.secret &&
157
- remote.apiKeys?.test?.secret &&
158
- local.apiKeys.test.secret !== remote.apiKeys.test.secret) {
159
- conflicts.push('Test environment secret API key');
160
- }
161
- if (local.apiKeys?.live?.public &&
162
- remote.apiKeys?.live?.public &&
163
- local.apiKeys.live.public !== remote.apiKeys.live.public) {
164
- conflicts.push('Live environment public API key');
165
- }
166
- if (local.apiKeys?.live?.secret &&
167
- remote.apiKeys?.live?.secret &&
168
- local.apiKeys.live.secret !== remote.apiKeys.live.secret) {
169
- conflicts.push('Live environment secret API key');
170
- }
171
- return conflicts;
172
- }
173
- mergeConfigs(local, remote) {
174
- // Start with remote as base, then merge local specifics
175
- const merged = { ...local, ...remote };
176
- // Keep local API keys if they exist (user-specific)
177
- if (local.apiKeys) {
178
- merged.apiKeys = { ...merged.apiKeys, ...local.apiKeys };
179
- }
180
- // Keep local webhook secrets (environment-specific)
181
- if (local.webhookSecrets) {
182
- merged.webhookSecrets = { ...merged.webhookSecrets, ...local.webhookSecrets };
183
- }
184
- // Keep local team settings (user-specific)
185
- if (local.team) {
186
- merged.team = { ...merged.team, ...local.team };
187
- }
188
- return merged;
189
- }
190
- async updateTeamConfig(repo, branch) {
191
- let config = await this.config.load();
192
- if (!config) {
193
- config = this.config.getDefaultConfig();
194
- }
195
- if (!config.team) {
196
- config.team = {};
197
- }
198
- config.team.repo = repo;
199
- config.team.branch = branch;
200
- await this.config.save(config);
201
- }
202
- }
203
- //# sourceMappingURL=sync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/services/github/sync.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import { PaymentIntentData } from '../../types/paymongo.js';
2
- export interface SimulationOptions {
3
- paymentMethod: 'gcash' | 'maya' | 'grabpay';
4
- outcome?: 'success' | 'failure' | 'timeout';
5
- delayMs?: number;
6
- }
7
- export interface SimulationResult {
8
- paymentIntent: PaymentIntentData;
9
- delayApplied: number;
10
- simulationType: string;
11
- }
12
- export declare class PaymentSimulator {
13
- private readonly defaultDelays;
14
- simulatePaymentConfirmation(intentId: string, options: SimulationOptions): Promise<SimulationResult>;
15
- private generateMockResult;
16
- private delay;
17
- getSupportedMethods(): string[];
18
- getMethodDelays(method: string): {
19
- success: number;
20
- failure: number;
21
- timeout: number;
22
- } | null;
23
- generateWebhookEvents(intentId: string, paymentMethod: string, outcome: string): Array<{
24
- type: string;
25
- attributes: Record<string, unknown>;
26
- }>;
27
- }
28
- //# sourceMappingURL=simulator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simulator.d.ts","sourceRoot":"","sources":["../../../src/services/payments/simulator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAG5D,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,iBAAiB,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAI5B;IAEI,2BAA2B,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC;IA0B5B,OAAO,CAAC,kBAAkB;IA2C1B,OAAO,CAAC,KAAK;IAIb,mBAAmB,IAAI,MAAM,EAAE;IAI/B,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAK7F,qBAAqB,CACnB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,KAAK,CAAC;QACP,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;CAsDH"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../src/services/payments/simulator.ts"],"names":[],"mappings":"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"}
@@ -1,44 +0,0 @@
1
- import { ConfigManager } from '../config/manager.js';
2
- export interface TeamMember {
3
- name: string;
4
- email?: string;
5
- addedAt: number;
6
- sharedKeys?: string[];
7
- }
8
- export interface KeyBundle {
9
- id: string;
10
- createdAt: number;
11
- environments: ('test' | 'live')[];
12
- keys: {
13
- test?: {
14
- public: string;
15
- secret: string;
16
- };
17
- live?: {
18
- public: string;
19
- secret: string;
20
- };
21
- };
22
- sharedWith: string[];
23
- }
24
- export interface TeamServiceOptions {
25
- config: ConfigManager;
26
- }
27
- export declare class TeamService {
28
- private config;
29
- constructor(options: TeamServiceOptions);
30
- createKeyBundle(environments?: ('test' | 'live')[]): Promise<KeyBundle>;
31
- importKeyBundle(bundle: KeyBundle, memberName: string): Promise<void>;
32
- listMembers(): Promise<TeamMember[]>;
33
- getTeamInfo(): Promise<{
34
- name: string | undefined;
35
- memberCount: number;
36
- sharedBundlesCount: number;
37
- environments: string[];
38
- }>;
39
- serializeBundle(bundle: KeyBundle): string;
40
- deserializeBundle(bundleJson: string): KeyBundle;
41
- removeMember(memberName: string): Promise<void>;
42
- renameTeam(newName: string): Promise<void>;
43
- }
44
- //# sourceMappingURL=service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/services/team/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAIrD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE;QACJ,IAAI,CAAC,EAAE;YACL,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,IAAI,CAAC,EAAE;YACL,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;IACF,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAC;CACvB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,EAAE,kBAAkB;IAIjC,eAAe,CAAC,YAAY,GAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAa,GAAG,OAAO,CAAC,SAAS,CAAC;IAwDjF,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4DrE,WAAW,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAKpC,WAAW,IAAI,OAAO,CAAC;QAC3B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IAoBF,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM;IAY1C,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS;IAe1C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAajD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/services/team/service.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import { ConfigManager } from '../config/manager.js';
2
- import { ApiClient } from '../api/client.js';
3
- import { AnalyticsService } from '../analytics/service.js';
4
- import { WebhookEventPayload } from '../../types/paymongo.js';
5
- export interface WebServerOptions {
6
- port: number;
7
- host?: string;
8
- configManager: ConfigManager;
9
- apiClient: ApiClient;
10
- analyticsService: AnalyticsService;
11
- }
12
- export declare class WebServer {
13
- private app;
14
- private server;
15
- private io;
16
- private configManager;
17
- private apiClient;
18
- private analyticsService;
19
- private logger;
20
- private port;
21
- private host;
22
- constructor(options: WebServerOptions);
23
- private setupMiddleware;
24
- private setupRoutes;
25
- private setupSocketHandlers;
26
- start(): Promise<void>;
27
- stop(): Promise<void>;
28
- getPort(): number;
29
- emitWebhookEvent(event: WebhookEventPayload): void;
30
- }
31
- //# sourceMappingURL=server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/services/web/server.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAM9D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,EAAE,CAAe;IACzB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;gBAET,OAAO,EAAE,gBAAgB;IAiBrC,OAAO,CAAC,eAAe;IA6DvB,OAAO,CAAC,WAAW;IAiFnB,OAAO,CAAC,mBAAmB;IAiBd,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IActB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAU3B,OAAO,IAAI,MAAM;IAIjB,gBAAgB,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;CAG1D"}