@symbo.ls/sdk 2.34.4 → 2.34.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.
- package/dist/cjs/index.js +24 -0
- package/dist/cjs/services/BranchService.js +4 -4
- package/dist/cjs/services/IntegrationService.js +538 -0
- package/dist/cjs/services/MetricsService.js +62 -0
- package/dist/cjs/services/PaymentService.js +1 -1
- package/dist/cjs/services/PullRequestService.js +8 -6
- package/dist/cjs/services/WaitlistService.js +148 -0
- package/dist/cjs/services/index.js +13 -1
- package/dist/cjs/utils/services.js +26 -1
- package/dist/esm/index.js +751 -12
- package/dist/esm/services/BranchService.js +4 -4
- package/dist/esm/services/IntegrationService.js +1319 -0
- package/dist/esm/services/MetricsService.js +843 -0
- package/dist/esm/services/PaymentService.js +1 -1
- package/dist/esm/services/PullRequestService.js +8 -6
- package/dist/esm/services/WaitlistService.js +929 -0
- package/dist/esm/services/index.js +708 -12
- package/dist/esm/utils/services.js +26 -1
- package/dist/node/index.js +32 -2
- package/dist/node/services/BranchService.js +4 -4
- package/dist/node/services/IntegrationService.js +519 -0
- package/dist/node/services/MetricsService.js +43 -0
- package/dist/node/services/PaymentService.js +1 -1
- package/dist/node/services/PullRequestService.js +8 -6
- package/dist/node/services/WaitlistService.js +129 -0
- package/dist/node/services/index.js +13 -1
- package/dist/node/utils/services.js +26 -1
- package/package.json +8 -7
- package/src/index.js +40 -13
- package/src/services/BranchService.js +5 -5
- package/src/services/IntegrationService.js +548 -0
- package/src/services/MetricsService.js +40 -0
- package/src/services/PaymentService.js +1 -1
- package/src/services/PullRequestService.js +6 -6
- package/src/services/WaitlistService.js +130 -0
- package/src/services/index.js +16 -2
- package/src/services/tests/FileService/createFileFormData.test.js +74 -0
- package/src/services/tests/FileService/getFileUrl.test.js +69 -0
- package/src/services/tests/FileService/updateProjectIcon.test.js +109 -0
- package/src/services/tests/FileService/uploadDocument.test.js +36 -0
- package/src/services/tests/FileService/uploadFile.test.js +78 -0
- package/src/services/tests/FileService/uploadFileWithValidation.test.js +114 -0
- package/src/services/tests/FileService/uploadImage.test.js +36 -0
- package/src/services/tests/FileService/uploadMultipleFiles.test.js +111 -0
- package/src/services/tests/FileService/validateFile.test.js +63 -0
- package/src/services/tests/PlanService/getActivePlans.test.js +0 -2
- package/src/services/tests/PlanService/getPlanByKey.test.js +109 -0
- package/src/services/tests/PlanService/getPlansByPriceRange.test.js +109 -0
- package/src/utils/services.js +29 -1
|
@@ -204,7 +204,7 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
204
204
|
throw new Error(response.message);
|
|
205
205
|
} catch (error) {
|
|
206
206
|
if (error.message.includes("conflicts") || error.message.includes("409")) {
|
|
207
|
-
throw new Error(`Pull request has merge conflicts: ${error.message}
|
|
207
|
+
throw new Error(`Pull request has merge conflicts: ${error.message}`, { cause: error });
|
|
208
208
|
}
|
|
209
209
|
throw new Error(`Failed to merge pull request: ${error.message}`, { cause: error });
|
|
210
210
|
}
|
|
@@ -321,7 +321,8 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
321
321
|
return ((_a = prData == null ? void 0 : prData.data) == null ? void 0 : _a.canMerge) || false;
|
|
322
322
|
} catch (error) {
|
|
323
323
|
throw new Error(
|
|
324
|
-
`Failed to check pull request mergeability: ${error.message}
|
|
324
|
+
`Failed to check pull request mergeability: ${error.message}`,
|
|
325
|
+
{ cause: error }
|
|
325
326
|
);
|
|
326
327
|
}
|
|
327
328
|
}
|
|
@@ -347,7 +348,8 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
347
348
|
};
|
|
348
349
|
} catch (error) {
|
|
349
350
|
throw new Error(
|
|
350
|
-
`Failed to get pull request status summary: ${error.message}
|
|
351
|
+
`Failed to get pull request status summary: ${error.message}`,
|
|
352
|
+
{ cause: error }
|
|
351
353
|
);
|
|
352
354
|
}
|
|
353
355
|
}
|
|
@@ -441,7 +443,7 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
441
443
|
});
|
|
442
444
|
return stats;
|
|
443
445
|
} catch (error) {
|
|
444
|
-
throw new Error(`Failed to get pull request stats: ${error.message}
|
|
446
|
+
throw new Error(`Failed to get pull request stats: ${error.message}`, { cause: error });
|
|
445
447
|
}
|
|
446
448
|
}
|
|
447
449
|
/**
|
|
@@ -468,7 +470,7 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
468
470
|
}
|
|
469
471
|
throw new Error(response.message);
|
|
470
472
|
} catch (error) {
|
|
471
|
-
throw new Error(`Failed to close pull request: ${error.message}
|
|
473
|
+
throw new Error(`Failed to close pull request: ${error.message}`, { cause: error });
|
|
472
474
|
}
|
|
473
475
|
}
|
|
474
476
|
/**
|
|
@@ -495,7 +497,7 @@ class PullRequestService extends import_BaseService.BaseService {
|
|
|
495
497
|
}
|
|
496
498
|
throw new Error(response.message);
|
|
497
499
|
} catch (error) {
|
|
498
|
-
throw new Error(`Failed to reopen pull request: ${error.message}
|
|
500
|
+
throw new Error(`Failed to reopen pull request: ${error.message}`, { cause: error });
|
|
499
501
|
}
|
|
500
502
|
}
|
|
501
503
|
}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var WaitlistService_exports = {};
|
|
19
|
+
__export(WaitlistService_exports, {
|
|
20
|
+
WaitlistService: () => WaitlistService
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(WaitlistService_exports);
|
|
23
|
+
var import_BaseService = require("./BaseService.js");
|
|
24
|
+
class WaitlistService extends import_BaseService.BaseService {
|
|
25
|
+
// ==================== WAITLIST METHODS ====================
|
|
26
|
+
/**
|
|
27
|
+
* Join a waitlist campaign (public).
|
|
28
|
+
*
|
|
29
|
+
* Mirrors: POST /waitlist (WaitlistController.join)
|
|
30
|
+
*/
|
|
31
|
+
async joinWaitlist(data = {}) {
|
|
32
|
+
this._requireReady("joinWaitlist");
|
|
33
|
+
if (!data || typeof data !== "object") {
|
|
34
|
+
throw new Error("Waitlist join payload is required");
|
|
35
|
+
}
|
|
36
|
+
if (!data.email) {
|
|
37
|
+
throw new Error("Email is required");
|
|
38
|
+
}
|
|
39
|
+
try {
|
|
40
|
+
const response = await this._request("/waitlist", {
|
|
41
|
+
method: "POST",
|
|
42
|
+
body: JSON.stringify(data),
|
|
43
|
+
methodName: "joinWaitlist"
|
|
44
|
+
});
|
|
45
|
+
if (response.success) {
|
|
46
|
+
return response.data;
|
|
47
|
+
}
|
|
48
|
+
throw new Error(response.message);
|
|
49
|
+
} catch (error) {
|
|
50
|
+
throw new Error(`Failed to join waitlist: ${error.message}`, { cause: error });
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* List waitlist entries (admin).
|
|
55
|
+
*
|
|
56
|
+
* Mirrors: GET /waitlist (WaitlistController.list)
|
|
57
|
+
*/
|
|
58
|
+
async listWaitlistEntries(options = {}) {
|
|
59
|
+
this._requireReady("listWaitlistEntries");
|
|
60
|
+
const {
|
|
61
|
+
campaignKey,
|
|
62
|
+
status,
|
|
63
|
+
search,
|
|
64
|
+
page,
|
|
65
|
+
limit
|
|
66
|
+
} = options || {};
|
|
67
|
+
const queryParams = new URLSearchParams();
|
|
68
|
+
if (campaignKey != null) {
|
|
69
|
+
queryParams.append("campaignKey", String(campaignKey));
|
|
70
|
+
}
|
|
71
|
+
if (status != null) {
|
|
72
|
+
queryParams.append("status", String(status));
|
|
73
|
+
}
|
|
74
|
+
if (search != null) {
|
|
75
|
+
queryParams.append("search", String(search));
|
|
76
|
+
}
|
|
77
|
+
if (page != null) {
|
|
78
|
+
queryParams.append("page", String(page));
|
|
79
|
+
}
|
|
80
|
+
if (limit != null) {
|
|
81
|
+
queryParams.append("limit", String(limit));
|
|
82
|
+
}
|
|
83
|
+
const queryString = queryParams.toString();
|
|
84
|
+
const url = `/waitlist${queryString ? `?${queryString}` : ""}`;
|
|
85
|
+
try {
|
|
86
|
+
const response = await this._request(url, {
|
|
87
|
+
method: "GET",
|
|
88
|
+
methodName: "listWaitlistEntries"
|
|
89
|
+
});
|
|
90
|
+
if (response.success) {
|
|
91
|
+
return response.data;
|
|
92
|
+
}
|
|
93
|
+
throw new Error(response.message);
|
|
94
|
+
} catch (error) {
|
|
95
|
+
throw new Error(`Failed to list waitlist entries: ${error.message}`, { cause: error });
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Update a waitlist entry (admin).
|
|
100
|
+
*
|
|
101
|
+
* Mirrors: PATCH /waitlist/:id (WaitlistController.update)
|
|
102
|
+
*/
|
|
103
|
+
async updateWaitlistEntry(id, update = {}) {
|
|
104
|
+
this._requireReady("updateWaitlistEntry");
|
|
105
|
+
if (!id) {
|
|
106
|
+
throw new Error("Waitlist entry ID is required");
|
|
107
|
+
}
|
|
108
|
+
if (!update || typeof update !== "object") {
|
|
109
|
+
throw new Error("Update payload is required");
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
const response = await this._request(`/waitlist/${id}`, {
|
|
113
|
+
method: "PATCH",
|
|
114
|
+
body: JSON.stringify(update),
|
|
115
|
+
methodName: "updateWaitlistEntry"
|
|
116
|
+
});
|
|
117
|
+
if (response.success) {
|
|
118
|
+
return response.data;
|
|
119
|
+
}
|
|
120
|
+
throw new Error(response.message);
|
|
121
|
+
} catch (error) {
|
|
122
|
+
throw new Error(`Failed to update waitlist entry: ${error.message}`, { cause: error });
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Send an invitation email for a waitlist entry (admin).
|
|
127
|
+
*
|
|
128
|
+
* Mirrors: POST /waitlist/:id/invite (WaitlistController.invite)
|
|
129
|
+
*/
|
|
130
|
+
async inviteWaitlistEntry(id) {
|
|
131
|
+
this._requireReady("inviteWaitlistEntry");
|
|
132
|
+
if (!id) {
|
|
133
|
+
throw new Error("Waitlist entry ID is required");
|
|
134
|
+
}
|
|
135
|
+
try {
|
|
136
|
+
const response = await this._request(`/waitlist/${id}/invite`, {
|
|
137
|
+
method: "POST",
|
|
138
|
+
methodName: "inviteWaitlistEntry"
|
|
139
|
+
});
|
|
140
|
+
if (response.success) {
|
|
141
|
+
return response.data;
|
|
142
|
+
}
|
|
143
|
+
throw new Error(response.message);
|
|
144
|
+
} catch (error) {
|
|
145
|
+
throw new Error(`Failed to invite waitlist entry: ${error.message}`, { cause: error });
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
@@ -23,6 +23,8 @@ __export(services_exports, {
|
|
|
23
23
|
CollabService: () => import_CollabService.CollabService,
|
|
24
24
|
DnsService: () => import_DnsService.DnsService,
|
|
25
25
|
FileService: () => import_FileService.FileService,
|
|
26
|
+
IntegrationService: () => import_IntegrationService.IntegrationService,
|
|
27
|
+
MetricsService: () => import_MetricsService.MetricsService,
|
|
26
28
|
PaymentService: () => import_PaymentService.PaymentService,
|
|
27
29
|
PlanService: () => import_PlanService.PlanService,
|
|
28
30
|
ProjectService: () => import_ProjectService.ProjectService,
|
|
@@ -30,19 +32,23 @@ __export(services_exports, {
|
|
|
30
32
|
ScreenshotService: () => import_ScreenshotService.ScreenshotService,
|
|
31
33
|
SubscriptionService: () => import_SubscriptionService.SubscriptionService,
|
|
32
34
|
TrackingService: () => import_TrackingService.TrackingService,
|
|
35
|
+
WaitlistService: () => import_WaitlistService.WaitlistService,
|
|
33
36
|
createAdminService: () => createAdminService,
|
|
34
37
|
createAuthService: () => createAuthService,
|
|
35
38
|
createBranchService: () => createBranchService,
|
|
36
39
|
createCollabService: () => createCollabService,
|
|
37
40
|
createDnsService: () => createDnsService,
|
|
38
41
|
createFileService: () => createFileService,
|
|
42
|
+
createIntegrationService: () => createIntegrationService,
|
|
43
|
+
createMetricsService: () => createMetricsService,
|
|
39
44
|
createPaymentService: () => createPaymentService,
|
|
40
45
|
createPlanService: () => createPlanService,
|
|
41
46
|
createProjectService: () => createProjectService,
|
|
42
47
|
createPullRequestService: () => createPullRequestService,
|
|
43
48
|
createScreenshotService: () => createScreenshotService,
|
|
44
49
|
createSubscriptionService: () => createSubscriptionService,
|
|
45
|
-
createTrackingService: () => createTrackingService
|
|
50
|
+
createTrackingService: () => createTrackingService,
|
|
51
|
+
createWaitlistService: () => createWaitlistService
|
|
46
52
|
});
|
|
47
53
|
module.exports = __toCommonJS(services_exports);
|
|
48
54
|
var import_AuthService = require("./AuthService.js");
|
|
@@ -58,6 +64,9 @@ var import_PullRequestService = require("./PullRequestService.js");
|
|
|
58
64
|
var import_AdminService = require("./AdminService.js");
|
|
59
65
|
var import_ScreenshotService = require("./ScreenshotService.js");
|
|
60
66
|
var import_TrackingService = require("./TrackingService.js");
|
|
67
|
+
var import_WaitlistService = require("./WaitlistService.js");
|
|
68
|
+
var import_MetricsService = require("./MetricsService.js");
|
|
69
|
+
var import_IntegrationService = require("./IntegrationService.js");
|
|
61
70
|
const createService = (ServiceClass, config) => new ServiceClass(config);
|
|
62
71
|
const createAuthService = (config) => createService(import_AuthService.AuthService, config);
|
|
63
72
|
const createCollabService = (config) => createService(import_CollabService.CollabService, config);
|
|
@@ -72,3 +81,6 @@ const createPullRequestService = (config) => createService(import_PullRequestSer
|
|
|
72
81
|
const createAdminService = (config) => createService(import_AdminService.AdminService, config);
|
|
73
82
|
const createScreenshotService = (config) => createService(import_ScreenshotService.ScreenshotService, config);
|
|
74
83
|
const createTrackingService = (config) => createService(import_TrackingService.TrackingService, config);
|
|
84
|
+
const createWaitlistService = (config) => createService(import_WaitlistService.WaitlistService, config);
|
|
85
|
+
const createMetricsService = (config) => createService(import_MetricsService.MetricsService, config);
|
|
86
|
+
const createIntegrationService = (config) => createService(import_IntegrationService.IntegrationService, config);
|
|
@@ -294,5 +294,30 @@ const SERVICE_METHODS = {
|
|
|
294
294
|
flushQueue: "tracking",
|
|
295
295
|
getClient: "tracking",
|
|
296
296
|
isEnabled: "tracking",
|
|
297
|
-
isInitialized: "tracking"
|
|
297
|
+
isInitialized: "tracking",
|
|
298
|
+
// Waitlist methods
|
|
299
|
+
joinWaitlist: "waitlist",
|
|
300
|
+
listWaitlistEntries: "waitlist",
|
|
301
|
+
updateWaitlistEntry: "waitlist",
|
|
302
|
+
inviteWaitlistEntry: "waitlist",
|
|
303
|
+
// Metrics methods
|
|
304
|
+
getContributions: "metrics",
|
|
305
|
+
// Integration methods
|
|
306
|
+
integrationWhoami: "integration",
|
|
307
|
+
listIntegrations: "integration",
|
|
308
|
+
createIntegration: "integration",
|
|
309
|
+
updateIntegration: "integration",
|
|
310
|
+
createIntegrationApiKey: "integration",
|
|
311
|
+
listIntegrationApiKeys: "integration",
|
|
312
|
+
revokeIntegrationApiKey: "integration",
|
|
313
|
+
createIntegrationWebhook: "integration",
|
|
314
|
+
listIntegrationWebhooks: "integration",
|
|
315
|
+
updateIntegrationWebhook: "integration",
|
|
316
|
+
deleteIntegrationWebhook: "integration",
|
|
317
|
+
listIntegrationWebhookDeliveries: "integration",
|
|
318
|
+
replayIntegrationWebhookDelivery: "integration",
|
|
319
|
+
listGitHubConnectors: "integration",
|
|
320
|
+
createGitHubConnector: "integration",
|
|
321
|
+
updateGitHubConnector: "integration",
|
|
322
|
+
deleteGitHubConnector: "integration"
|
|
298
323
|
};
|