@symbo.ls/sdk 2.32.0 → 2.32.2

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 (82) hide show
  1. package/dist/cjs/config/environment.js +8 -43
  2. package/dist/cjs/index.js +4 -12
  3. package/dist/cjs/services/AdminService.js +4 -4
  4. package/dist/cjs/services/AuthService.js +149 -36
  5. package/dist/cjs/services/BaseService.js +18 -5
  6. package/dist/cjs/services/BranchService.js +10 -10
  7. package/dist/cjs/services/CollabService.js +18 -114
  8. package/dist/cjs/services/CoreService.js +19 -19
  9. package/dist/cjs/services/DnsService.js +4 -4
  10. package/dist/cjs/services/FileService.js +2 -2
  11. package/dist/cjs/services/PaymentService.js +2 -2
  12. package/dist/cjs/services/PlanService.js +12 -12
  13. package/dist/cjs/services/ProjectService.js +34 -39
  14. package/dist/cjs/services/PullRequestService.js +7 -7
  15. package/dist/cjs/services/SubscriptionService.js +14 -14
  16. package/dist/cjs/services/index.js +0 -4
  17. package/dist/cjs/utils/TokenManager.js +5 -16
  18. package/dist/cjs/utils/services.js +1 -14
  19. package/dist/esm/config/environment.js +8 -43
  20. package/dist/esm/index.js +300 -907
  21. package/dist/esm/services/AdminService.js +35 -68
  22. package/dist/esm/services/AuthService.js +168 -100
  23. package/dist/esm/services/BaseService.js +31 -64
  24. package/dist/esm/services/BranchService.js +41 -74
  25. package/dist/esm/services/CollabService.js +50 -452
  26. package/dist/esm/services/CoreService.js +50 -83
  27. package/dist/esm/services/DnsService.js +35 -68
  28. package/dist/esm/services/FileService.js +33 -66
  29. package/dist/esm/services/PaymentService.js +33 -66
  30. package/dist/esm/services/PlanService.js +43 -76
  31. package/dist/esm/services/ProjectService.js +65 -375
  32. package/dist/esm/services/PullRequestService.js +38 -71
  33. package/dist/esm/services/SubscriptionService.js +45 -78
  34. package/dist/esm/services/index.js +295 -884
  35. package/dist/esm/utils/CollabClient.js +8 -43
  36. package/dist/esm/utils/TokenManager.js +5 -16
  37. package/dist/esm/utils/services.js +1 -14
  38. package/dist/node/config/environment.js +8 -43
  39. package/dist/node/index.js +5 -14
  40. package/dist/node/services/AdminService.js +4 -4
  41. package/dist/node/services/AuthService.js +139 -36
  42. package/dist/node/services/BaseService.js +18 -5
  43. package/dist/node/services/BranchService.js +10 -10
  44. package/dist/node/services/CollabService.js +19 -115
  45. package/dist/node/services/CoreService.js +19 -19
  46. package/dist/node/services/DnsService.js +4 -4
  47. package/dist/node/services/FileService.js +2 -2
  48. package/dist/node/services/PaymentService.js +2 -2
  49. package/dist/node/services/PlanService.js +12 -12
  50. package/dist/node/services/ProjectService.js +34 -39
  51. package/dist/node/services/PullRequestService.js +7 -7
  52. package/dist/node/services/SubscriptionService.js +14 -14
  53. package/dist/node/services/index.js +0 -4
  54. package/dist/node/utils/TokenManager.js +5 -16
  55. package/dist/node/utils/services.js +1 -14
  56. package/package.json +6 -7
  57. package/src/config/environment.js +9 -48
  58. package/src/index.js +22 -38
  59. package/src/services/AdminService.js +4 -4
  60. package/src/services/AuthService.js +175 -42
  61. package/src/services/BaseService.js +24 -7
  62. package/src/services/BranchService.js +10 -10
  63. package/src/services/CollabService.js +19 -142
  64. package/src/services/CoreService.js +19 -19
  65. package/src/services/DnsService.js +4 -4
  66. package/src/services/FileService.js +2 -2
  67. package/src/services/PaymentService.js +2 -2
  68. package/src/services/PlanService.js +12 -12
  69. package/src/services/ProjectService.js +34 -41
  70. package/src/services/PullRequestService.js +7 -7
  71. package/src/services/SubscriptionService.js +14 -14
  72. package/src/services/index.js +1 -6
  73. package/src/utils/TokenManager.js +5 -19
  74. package/src/utils/services.js +1 -15
  75. package/dist/cjs/services/ScreenshotService.js +0 -304
  76. package/dist/cjs/utils/ordering.js +0 -295
  77. package/dist/esm/services/ScreenshotService.js +0 -992
  78. package/dist/esm/utils/ordering.js +0 -277
  79. package/dist/node/services/ScreenshotService.js +0 -285
  80. package/dist/node/utils/ordering.js +0 -276
  81. package/src/services/ScreenshotService.js +0 -258
  82. package/src/utils/ordering.js +0 -240
@@ -1,4 +1,6 @@
1
1
  import { BaseService } from "./BaseService.js";
2
+ import environment from "../config/environment.js";
3
+ import { getTokenManager } from "../utils/TokenManager.js";
2
4
  import {
3
5
  ROLE_PERMISSIONS,
4
6
  TIER_FEATURES,
@@ -15,10 +17,118 @@ class AuthService extends BaseService {
15
17
  "pro2",
16
18
  "enterprise"
17
19
  ]);
20
+ this._initialized = false;
21
+ this._apiUrl = null;
22
+ this._tokenManager = null;
18
23
  this._projectRoleCache = /* @__PURE__ */ new Map();
19
24
  this._roleCacheExpiry = 5 * 60 * 1e3;
20
25
  }
21
- // Use BaseService.init/_request/_requireReady implementations
26
+ init({ context }) {
27
+ try {
28
+ const { appKey, authToken } = context || this._context;
29
+ this._apiUrl = environment.apiUrl;
30
+ if (!this._apiUrl) {
31
+ throw new Error("Auth service base URL not configured");
32
+ }
33
+ this._tokenManager = getTokenManager({
34
+ apiUrl: this._apiUrl,
35
+ onTokenRefresh: (tokens) => {
36
+ this.updateContext({ authToken: tokens.accessToken });
37
+ },
38
+ onTokenExpired: () => {
39
+ this.updateContext({ authToken: null });
40
+ },
41
+ onTokenError: (error) => {
42
+ console.error("Token management error:", error);
43
+ }
44
+ });
45
+ if (authToken && !this._tokenManager.hasTokens()) {
46
+ this._tokenManager.setTokens({ access_token: authToken });
47
+ }
48
+ this._info = {
49
+ config: {
50
+ apiUrl: this._apiUrl,
51
+ appKey: appKey ? `${appKey.substr(0, 4)}...${appKey.substr(-4)}` : null,
52
+ hasToken: Boolean(authToken)
53
+ }
54
+ };
55
+ this._initialized = true;
56
+ this._setReady();
57
+ } catch (error) {
58
+ this._setError(error);
59
+ throw error;
60
+ }
61
+ }
62
+ // Helper method to make HTTP requests
63
+ async _request(endpoint, options = {}) {
64
+ const url = `${this._apiUrl}/core${endpoint}`;
65
+ const defaultHeaders = {};
66
+ if (!(options.body instanceof FormData)) {
67
+ defaultHeaders["Content-Type"] = "application/json";
68
+ }
69
+ if (this._requiresInit(options.methodName) && this._tokenManager) {
70
+ try {
71
+ const validToken = await this._tokenManager.ensureValidToken();
72
+ if (validToken) {
73
+ const authHeader = this._tokenManager.getAuthHeader();
74
+ if (authHeader) {
75
+ defaultHeaders.Authorization = authHeader;
76
+ }
77
+ }
78
+ } catch (error) {
79
+ console.warn(
80
+ "Token management failed, proceeding without authentication:",
81
+ error
82
+ );
83
+ }
84
+ } else if (this._requiresInit(options.methodName)) {
85
+ const { authToken } = this._context;
86
+ if (authToken) {
87
+ defaultHeaders.Authorization = `Bearer ${authToken}`;
88
+ }
89
+ }
90
+ try {
91
+ const response = await fetch(url, {
92
+ ...options,
93
+ headers: {
94
+ ...defaultHeaders,
95
+ ...options.headers
96
+ }
97
+ });
98
+ if (!response.ok) {
99
+ let error = {
100
+ message: `HTTP ${response.status}: ${response.statusText}`
101
+ };
102
+ try {
103
+ error = await response.json();
104
+ } catch {
105
+ }
106
+ throw new Error(error.message || error.error || "Request failed");
107
+ }
108
+ return response.status === 204 ? null : response.json();
109
+ } catch (error) {
110
+ throw new Error(`Request failed: ${error.message}`);
111
+ }
112
+ }
113
+ _requiresInit(methodName) {
114
+ const noInitMethods = /* @__PURE__ */ new Set([
115
+ "register",
116
+ "login",
117
+ "googleAuth",
118
+ "googleAuthCallback",
119
+ "githubAuth",
120
+ "requestPasswordReset",
121
+ "confirmPasswordReset",
122
+ "confirmRegistration",
123
+ "verifyEmail"
124
+ ]);
125
+ return !noInitMethods.has(methodName);
126
+ }
127
+ _requireReady(methodName) {
128
+ if (this._requiresInit(methodName) && !this._initialized) {
129
+ throw new Error("Auth service not initialized");
130
+ }
131
+ }
22
132
  // ==================== AUTH METHODS ====================
23
133
  async register(userData) {
24
134
  try {
@@ -32,7 +142,7 @@ class AuthService extends BaseService {
32
142
  }
33
143
  throw new Error(response.message);
34
144
  } catch (error) {
35
- throw new Error(`Registration failed: ${error.message}`, { cause: error });
145
+ throw new Error(`Registration failed: ${error.message}`);
36
146
  }
37
147
  }
38
148
  async login(email, password) {
@@ -54,13 +164,14 @@ class AuthService extends BaseService {
54
164
  if (this._tokenManager) {
55
165
  this._tokenManager.setTokens(tokenData);
56
166
  }
167
+ this.updateContext({ authToken: tokens.accessToken });
57
168
  }
58
169
  if (response.success) {
59
170
  return response.data;
60
171
  }
61
172
  throw new Error(response.message);
62
173
  } catch (error) {
63
- throw new Error(`Login failed: ${error.message}`, { cause: error });
174
+ throw new Error(`Login failed: ${error.message}`);
64
175
  }
65
176
  }
66
177
  async logout() {
@@ -73,11 +184,13 @@ class AuthService extends BaseService {
73
184
  if (this._tokenManager) {
74
185
  this._tokenManager.clearTokens();
75
186
  }
187
+ this.updateContext({ authToken: null });
76
188
  } catch (error) {
77
189
  if (this._tokenManager) {
78
190
  this._tokenManager.clearTokens();
79
191
  }
80
- throw new Error(`Logout failed: ${error.message}`, { cause: error });
192
+ this.updateContext({ authToken: null });
193
+ throw new Error(`Logout failed: ${error.message}`);
81
194
  }
82
195
  }
83
196
  async refreshToken(refreshToken) {
@@ -92,7 +205,7 @@ class AuthService extends BaseService {
92
205
  }
93
206
  throw new Error(response.message);
94
207
  } catch (error) {
95
- throw new Error(`Token refresh failed: ${error.message}`, { cause: error });
208
+ throw new Error(`Token refresh failed: ${error.message}`);
96
209
  }
97
210
  }
98
211
  async googleAuth(idToken, inviteToken = null) {
@@ -118,13 +231,14 @@ class AuthService extends BaseService {
118
231
  if (this._tokenManager) {
119
232
  this._tokenManager.setTokens(tokenData);
120
233
  }
234
+ this.updateContext({ authToken: tokens.accessToken });
121
235
  }
122
236
  if (response.success) {
123
237
  return response.data;
124
238
  }
125
239
  throw new Error(response.message);
126
240
  } catch (error) {
127
- throw new Error(`Google auth failed: ${error.message}`, { cause: error });
241
+ throw new Error(`Google auth failed: ${error.message}`);
128
242
  }
129
243
  }
130
244
  async githubAuth(code, inviteToken = null) {
@@ -150,13 +264,14 @@ class AuthService extends BaseService {
150
264
  if (this._tokenManager) {
151
265
  this._tokenManager.setTokens(tokenData);
152
266
  }
267
+ this.updateContext({ authToken: tokens.accessToken });
153
268
  }
154
269
  if (response.success) {
155
270
  return response.data;
156
271
  }
157
272
  throw new Error(response.message);
158
273
  } catch (error) {
159
- throw new Error(`GitHub auth failed: ${error.message}`, { cause: error });
274
+ throw new Error(`GitHub auth failed: ${error.message}`);
160
275
  }
161
276
  }
162
277
  async googleAuthCallback(code, redirectUri, inviteToken = null) {
@@ -182,13 +297,14 @@ class AuthService extends BaseService {
182
297
  if (this._tokenManager) {
183
298
  this._tokenManager.setTokens(tokenData);
184
299
  }
300
+ this.updateContext({ authToken: tokens.accessToken });
185
301
  }
186
302
  if (response.success) {
187
303
  return response.data;
188
304
  }
189
305
  throw new Error(response.message);
190
306
  } catch (error) {
191
- throw new Error(`Google auth callback failed: ${error.message}`, { cause: error });
307
+ throw new Error(`Google auth callback failed: ${error.message}`);
192
308
  }
193
309
  }
194
310
  async requestPasswordReset(email) {
@@ -203,7 +319,7 @@ class AuthService extends BaseService {
203
319
  }
204
320
  throw new Error(response.message);
205
321
  } catch (error) {
206
- throw new Error(`Password reset request failed: ${error.message}`, { cause: error });
322
+ throw new Error(`Password reset request failed: ${error.message}`);
207
323
  }
208
324
  }
209
325
  async confirmPasswordReset(token, password) {
@@ -218,7 +334,7 @@ class AuthService extends BaseService {
218
334
  }
219
335
  throw new Error(response.message);
220
336
  } catch (error) {
221
- throw new Error(`Password reset confirmation failed: ${error.message}`, { cause: error });
337
+ throw new Error(`Password reset confirmation failed: ${error.message}`);
222
338
  }
223
339
  }
224
340
  async confirmRegistration(token) {
@@ -233,7 +349,7 @@ class AuthService extends BaseService {
233
349
  }
234
350
  throw new Error(response.message);
235
351
  } catch (error) {
236
- throw new Error(`Registration confirmation failed: ${error.message}`, { cause: error });
352
+ throw new Error(`Registration confirmation failed: ${error.message}`);
237
353
  }
238
354
  }
239
355
  async requestPasswordChange() {
@@ -248,7 +364,7 @@ class AuthService extends BaseService {
248
364
  }
249
365
  throw new Error(response.message);
250
366
  } catch (error) {
251
- throw new Error(`Password change request failed: ${error.message}`, { cause: error });
367
+ throw new Error(`Password change request failed: ${error.message}`);
252
368
  }
253
369
  }
254
370
  async confirmPasswordChange(currentPassword, newPassword, code) {
@@ -264,7 +380,7 @@ class AuthService extends BaseService {
264
380
  }
265
381
  throw new Error(response.message);
266
382
  } catch (error) {
267
- throw new Error(`Password change confirmation failed: ${error.message}`, { cause: error });
383
+ throw new Error(`Password change confirmation failed: ${error.message}`);
268
384
  }
269
385
  }
270
386
  async getMe() {
@@ -279,7 +395,7 @@ class AuthService extends BaseService {
279
395
  }
280
396
  throw new Error(response.message);
281
397
  } catch (error) {
282
- throw new Error(`Failed to get user profile: ${error.message}`, { cause: error });
398
+ throw new Error(`Failed to get user profile: ${error.message}`);
283
399
  }
284
400
  }
285
401
  /**
@@ -379,7 +495,7 @@ class AuthService extends BaseService {
379
495
  }
380
496
  throw new Error(response.message);
381
497
  } catch (error) {
382
- throw new Error(`Failed to get user profile: ${error.message}`, { cause: error });
498
+ throw new Error(`Failed to get user profile: ${error.message}`);
383
499
  }
384
500
  }
385
501
  async updateUserProfile(profileData) {
@@ -395,7 +511,7 @@ class AuthService extends BaseService {
395
511
  }
396
512
  throw new Error(response.message);
397
513
  } catch (error) {
398
- throw new Error(`Failed to update user profile: ${error.message}`, { cause: error });
514
+ throw new Error(`Failed to update user profile: ${error.message}`);
399
515
  }
400
516
  }
401
517
  async getUserProjects() {
@@ -418,7 +534,7 @@ class AuthService extends BaseService {
418
534
  }
419
535
  throw new Error(response.message);
420
536
  } catch (error) {
421
- throw new Error(`Failed to get user projects: ${error.message}`, { cause: error });
537
+ throw new Error(`Failed to get user projects: ${error.message}`);
422
538
  }
423
539
  }
424
540
  async getUser(userId) {
@@ -436,7 +552,7 @@ class AuthService extends BaseService {
436
552
  }
437
553
  throw new Error(response.message);
438
554
  } catch (error) {
439
- throw new Error(`Failed to get user: ${error.message}`, { cause: error });
555
+ throw new Error(`Failed to get user: ${error.message}`);
440
556
  }
441
557
  }
442
558
  async getUserByEmail(email) {
@@ -454,7 +570,7 @@ class AuthService extends BaseService {
454
570
  }
455
571
  throw new Error(response.message);
456
572
  } catch (error) {
457
- throw new Error(`Failed to get user by email: ${error.message}`, { cause: error });
573
+ throw new Error(`Failed to get user by email: ${error.message}`);
458
574
  }
459
575
  }
460
576
  // ==================== PROJECT ROLE METHODS ====================
@@ -467,9 +583,6 @@ class AuthService extends BaseService {
467
583
  if (!projectId) {
468
584
  throw new Error("Project ID is required");
469
585
  }
470
- if (!this.hasValidTokens()) {
471
- return "guest";
472
- }
473
586
  const cacheKey = `role_${projectId}`;
474
587
  const cached = this._projectRoleCache.get(cacheKey);
475
588
  if (cached && Date.now() - cached.timestamp < this._roleCacheExpiry) {
@@ -490,11 +603,7 @@ class AuthService extends BaseService {
490
603
  }
491
604
  throw new Error(response.message);
492
605
  } catch (error) {
493
- const message = (error == null ? void 0 : error.message) || "";
494
- if (/401|403|unauthorized|no token|invalid token/iu.test(message)) {
495
- return "guest";
496
- }
497
- throw new Error(`Failed to get project role: ${message}`, { cause: error });
606
+ throw new Error(`Failed to get project role: ${error.message}`);
498
607
  }
499
608
  }
500
609
  /**
@@ -506,9 +615,6 @@ class AuthService extends BaseService {
506
615
  if (!projectKey) {
507
616
  throw new Error("Project key is required");
508
617
  }
509
- if (!this.hasValidTokens()) {
510
- return "guest";
511
- }
512
618
  const cacheKey = `role_key_${projectKey}`;
513
619
  const cached = this._projectRoleCache.get(cacheKey);
514
620
  if (cached && Date.now() - cached.timestamp < this._roleCacheExpiry) {
@@ -529,11 +635,7 @@ class AuthService extends BaseService {
529
635
  }
530
636
  throw new Error(response.message);
531
637
  } catch (error) {
532
- const message = (error == null ? void 0 : error.message) || "";
533
- if (/401|403|unauthorized|no token|invalid token/iu.test(message)) {
534
- return "guest";
535
- }
536
- throw new Error(`Failed to get project role by key: ${message}`, { cause: error });
638
+ throw new Error(`Failed to get project role by key: ${error.message}`);
537
639
  }
538
640
  }
539
641
  /**
@@ -636,7 +738,7 @@ class AuthService extends BaseService {
636
738
  try {
637
739
  return await this.getMe();
638
740
  } catch (error) {
639
- throw new Error(`Failed to get current user: ${error.message}`, { cause: error });
741
+ throw new Error(`Failed to get current user: ${error.message}`);
640
742
  }
641
743
  }
642
744
  /**
@@ -793,6 +895,7 @@ class AuthService extends BaseService {
793
895
  this._tokenManager = null;
794
896
  }
795
897
  this._projectRoleCache.clear();
898
+ this._initialized = false;
796
899
  this._setReady(false);
797
900
  }
798
901
  }
@@ -19,10 +19,20 @@ class BaseService {
19
19
  }
20
20
  this._tokenManager = getTokenManager({
21
21
  apiUrl: this._apiUrl,
22
+ onTokenRefresh: (tokens) => {
23
+ this.updateContext({ authToken: tokens.accessToken });
24
+ },
25
+ onTokenExpired: () => {
26
+ this.updateContext({ authToken: null });
27
+ },
22
28
  onTokenError: (error) => {
23
29
  console.error("Token management error:", error);
24
30
  }
25
31
  });
32
+ const { authToken } = this._context;
33
+ if (authToken && !this._tokenManager.hasTokens()) {
34
+ this._tokenManager.setTokens({ access_token: authToken });
35
+ }
26
36
  this._setReady();
27
37
  } catch (error) {
28
38
  this._setError(error);
@@ -31,9 +41,7 @@ class BaseService {
31
41
  }
32
42
  // Update context
33
43
  updateContext(context) {
34
- if (context && typeof context === "object") {
35
- Object.assign(this._context, context);
36
- }
44
+ this._context = { ...this._context, ...context };
37
45
  }
38
46
  // Get service status
39
47
  getStatus() {
@@ -88,6 +96,11 @@ class BaseService {
88
96
  error
89
97
  );
90
98
  }
99
+ } else if (this._requiresInit(options.methodName)) {
100
+ const { authToken } = this._context;
101
+ if (authToken) {
102
+ defaultHeaders.Authorization = `Bearer ${authToken}`;
103
+ }
91
104
  }
92
105
  try {
93
106
  const response = await fetch(url, {
@@ -105,11 +118,11 @@ class BaseService {
105
118
  error = await response.json();
106
119
  } catch {
107
120
  }
108
- throw new Error(error.message || error.error || "Request failed", { cause: error });
121
+ throw new Error(error.message || error.error || "Request failed");
109
122
  }
110
123
  return response.status === 204 ? null : response.json();
111
124
  } catch (error) {
112
- throw new Error(`Request failed: ${error.message}`, { cause: error });
125
+ throw new Error(`Request failed: ${error.message}`);
113
126
  }
114
127
  }
115
128
  // Helper method to determine if a method requires initialization
@@ -19,7 +19,7 @@ class BranchService extends BaseService {
19
19
  }
20
20
  throw new Error(response.message);
21
21
  } catch (error) {
22
- throw new Error(`Failed to list branches: ${error.message}`, { cause: error });
22
+ throw new Error(`Failed to list branches: ${error.message}`);
23
23
  }
24
24
  }
25
25
  /**
@@ -45,7 +45,7 @@ class BranchService extends BaseService {
45
45
  }
46
46
  throw new Error(response.message);
47
47
  } catch (error) {
48
- throw new Error(`Failed to create branch: ${error.message}`, { cause: error });
48
+ throw new Error(`Failed to create branch: ${error.message}`);
49
49
  }
50
50
  }
51
51
  /**
@@ -75,7 +75,7 @@ class BranchService extends BaseService {
75
75
  }
76
76
  throw new Error(response.message);
77
77
  } catch (error) {
78
- throw new Error(`Failed to delete branch: ${error.message}`, { cause: error });
78
+ throw new Error(`Failed to delete branch: ${error.message}`);
79
79
  }
80
80
  }
81
81
  /**
@@ -111,7 +111,7 @@ class BranchService extends BaseService {
111
111
  }
112
112
  throw new Error(response.message);
113
113
  } catch (error) {
114
- throw new Error(`Failed to rename branch: ${error.message}`, { cause: error });
114
+ throw new Error(`Failed to rename branch: ${error.message}`);
115
115
  }
116
116
  }
117
117
  /**
@@ -150,7 +150,7 @@ class BranchService extends BaseService {
150
150
  }
151
151
  throw new Error(response.message);
152
152
  } catch (error) {
153
- throw new Error(`Failed to get branch changes: ${error.message}`, { cause: error });
153
+ throw new Error(`Failed to get branch changes: ${error.message}`);
154
154
  }
155
155
  }
156
156
  /**
@@ -197,7 +197,7 @@ class BranchService extends BaseService {
197
197
  if (error.message.includes("conflicts") || error.message.includes("409")) {
198
198
  throw new Error(`Merge conflicts detected: ${error.message}`);
199
199
  }
200
- throw new Error(`Failed to merge branch: ${error.message}`, { cause: error });
200
+ throw new Error(`Failed to merge branch: ${error.message}`);
201
201
  }
202
202
  }
203
203
  /**
@@ -226,7 +226,7 @@ class BranchService extends BaseService {
226
226
  }
227
227
  throw new Error(response.message);
228
228
  } catch (error) {
229
- throw new Error(`Failed to reset branch: ${error.message}`, { cause: error });
229
+ throw new Error(`Failed to reset branch: ${error.message}`);
230
230
  }
231
231
  }
232
232
  /**
@@ -252,7 +252,7 @@ class BranchService extends BaseService {
252
252
  }
253
253
  throw new Error(response.message);
254
254
  } catch (error) {
255
- throw new Error(`Failed to publish version: ${error.message}`, { cause: error });
255
+ throw new Error(`Failed to publish version: ${error.message}`);
256
256
  }
257
257
  }
258
258
  // ==================== BRANCH HELPER METHODS ====================
@@ -284,7 +284,7 @@ class BranchService extends BaseService {
284
284
  const branches = await this.listBranches(projectId);
285
285
  return ((_a = branches == null ? void 0 : branches.data) == null ? void 0 : _a.includes(branchName)) || false;
286
286
  } catch (error) {
287
- throw new Error(`Failed to check if branch exists: ${error.message}`, { cause: error });
287
+ throw new Error(`Failed to check if branch exists: ${error.message}`);
288
288
  }
289
289
  }
290
290
  /**
@@ -354,7 +354,7 @@ class BranchService extends BaseService {
354
354
  canRename: exists && branchName !== "main"
355
355
  };
356
356
  } catch (error) {
357
- throw new Error(`Failed to get branch status: ${error.message}`, { cause: error });
357
+ throw new Error(`Failed to get branch status: ${error.message}`);
358
358
  }
359
359
  }
360
360
  /**