@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.
- package/dist/cjs/config/environment.js +8 -43
- package/dist/cjs/index.js +4 -12
- package/dist/cjs/services/AdminService.js +4 -4
- package/dist/cjs/services/AuthService.js +149 -36
- package/dist/cjs/services/BaseService.js +18 -5
- package/dist/cjs/services/BranchService.js +10 -10
- package/dist/cjs/services/CollabService.js +18 -114
- package/dist/cjs/services/CoreService.js +19 -19
- package/dist/cjs/services/DnsService.js +4 -4
- package/dist/cjs/services/FileService.js +2 -2
- package/dist/cjs/services/PaymentService.js +2 -2
- package/dist/cjs/services/PlanService.js +12 -12
- package/dist/cjs/services/ProjectService.js +34 -39
- package/dist/cjs/services/PullRequestService.js +7 -7
- package/dist/cjs/services/SubscriptionService.js +14 -14
- package/dist/cjs/services/index.js +0 -4
- package/dist/cjs/utils/TokenManager.js +5 -16
- package/dist/cjs/utils/services.js +1 -14
- package/dist/esm/config/environment.js +8 -43
- package/dist/esm/index.js +300 -907
- package/dist/esm/services/AdminService.js +35 -68
- package/dist/esm/services/AuthService.js +168 -100
- package/dist/esm/services/BaseService.js +31 -64
- package/dist/esm/services/BranchService.js +41 -74
- package/dist/esm/services/CollabService.js +50 -452
- package/dist/esm/services/CoreService.js +50 -83
- package/dist/esm/services/DnsService.js +35 -68
- package/dist/esm/services/FileService.js +33 -66
- package/dist/esm/services/PaymentService.js +33 -66
- package/dist/esm/services/PlanService.js +43 -76
- package/dist/esm/services/ProjectService.js +65 -375
- package/dist/esm/services/PullRequestService.js +38 -71
- package/dist/esm/services/SubscriptionService.js +45 -78
- package/dist/esm/services/index.js +295 -884
- package/dist/esm/utils/CollabClient.js +8 -43
- package/dist/esm/utils/TokenManager.js +5 -16
- package/dist/esm/utils/services.js +1 -14
- package/dist/node/config/environment.js +8 -43
- package/dist/node/index.js +5 -14
- package/dist/node/services/AdminService.js +4 -4
- package/dist/node/services/AuthService.js +139 -36
- package/dist/node/services/BaseService.js +18 -5
- package/dist/node/services/BranchService.js +10 -10
- package/dist/node/services/CollabService.js +19 -115
- package/dist/node/services/CoreService.js +19 -19
- package/dist/node/services/DnsService.js +4 -4
- package/dist/node/services/FileService.js +2 -2
- package/dist/node/services/PaymentService.js +2 -2
- package/dist/node/services/PlanService.js +12 -12
- package/dist/node/services/ProjectService.js +34 -39
- package/dist/node/services/PullRequestService.js +7 -7
- package/dist/node/services/SubscriptionService.js +14 -14
- package/dist/node/services/index.js +0 -4
- package/dist/node/utils/TokenManager.js +5 -16
- package/dist/node/utils/services.js +1 -14
- package/package.json +6 -7
- package/src/config/environment.js +9 -48
- package/src/index.js +22 -38
- package/src/services/AdminService.js +4 -4
- package/src/services/AuthService.js +175 -42
- package/src/services/BaseService.js +24 -7
- package/src/services/BranchService.js +10 -10
- package/src/services/CollabService.js +19 -142
- package/src/services/CoreService.js +19 -19
- package/src/services/DnsService.js +4 -4
- package/src/services/FileService.js +2 -2
- package/src/services/PaymentService.js +2 -2
- package/src/services/PlanService.js +12 -12
- package/src/services/ProjectService.js +34 -41
- package/src/services/PullRequestService.js +7 -7
- package/src/services/SubscriptionService.js +14 -14
- package/src/services/index.js +1 -6
- package/src/utils/TokenManager.js +5 -19
- package/src/utils/services.js +1 -15
- package/dist/cjs/services/ScreenshotService.js +0 -304
- package/dist/cjs/utils/ordering.js +0 -295
- package/dist/esm/services/ScreenshotService.js +0 -992
- package/dist/esm/utils/ordering.js +0 -277
- package/dist/node/services/ScreenshotService.js +0 -285
- package/dist/node/utils/ordering.js +0 -276
- package/src/services/ScreenshotService.js +0 -258
- package/src/utils/ordering.js +0 -240
|
@@ -23,26 +23,16 @@ const CONFIG = {
|
|
|
23
23
|
basedEnv: 'development', // For based api
|
|
24
24
|
basedProject: 'platform-v2-sm', // For based api
|
|
25
25
|
basedOrg: 'symbols', // For based api
|
|
26
|
-
githubClientId: '
|
|
26
|
+
githubClientId: 'Ov23liHxyWFBxS8f1gnF', // For github api
|
|
27
27
|
// Environment-specific feature toggles (override common)
|
|
28
28
|
features: {
|
|
29
29
|
betaFeatures: true // Enable beta features in local dev
|
|
30
|
-
}
|
|
31
|
-
typesenseCollectionName: 'docs',
|
|
32
|
-
typesenseApiKey: 'vZya3L2zpq8L6iI5WWMUZJZABvT63VDb',
|
|
33
|
-
typesenseHost: 'localhost',
|
|
34
|
-
typesensePort: '8108',
|
|
35
|
-
typesenseProtocol: 'http'
|
|
30
|
+
}
|
|
36
31
|
},
|
|
37
32
|
development: {
|
|
38
33
|
socketUrl: 'https://dev.api.symbols.app',
|
|
39
34
|
apiUrl: 'https://dev.api.symbols.app',
|
|
40
|
-
githubClientId: 'Ov23liHxyWFBxS8f1gnF'
|
|
41
|
-
typesenseCollectionName: 'docs',
|
|
42
|
-
typesenseApiKey: 'awmcVpbWqZi9IUgmvslp1C5LKDU8tMjA',
|
|
43
|
-
typesenseHost: 'tl2qpnwxev4cjm36p-1.a1.typesense.net',
|
|
44
|
-
typesensePort: '443',
|
|
45
|
-
typesenseProtocol: 'https'
|
|
35
|
+
githubClientId: 'Ov23liHxyWFBxS8f1gnF'
|
|
46
36
|
},
|
|
47
37
|
testing: {
|
|
48
38
|
socketUrl: 'https://test.api.symbols.app',
|
|
@@ -50,22 +40,12 @@ const CONFIG = {
|
|
|
50
40
|
basedEnv: 'testing',
|
|
51
41
|
basedProject: 'platform-v2-sm',
|
|
52
42
|
basedOrg: 'symbols',
|
|
53
|
-
githubClientId: 'Ov23liHxyWFBxS8f1gnF'
|
|
54
|
-
typesenseCollectionName: 'docs',
|
|
55
|
-
typesenseApiKey: 'awmcVpbWqZi9IUgmvslp1C5LKDU8tMjA',
|
|
56
|
-
typesenseHost: 'tl2qpnwxev4cjm36p-1.a1.typesense.net',
|
|
57
|
-
typesensePort: '443',
|
|
58
|
-
typesenseProtocol: 'https'
|
|
43
|
+
githubClientId: 'Ov23liHxyWFBxS8f1gnF'
|
|
59
44
|
},
|
|
60
45
|
upcoming: {
|
|
61
46
|
socketUrl: 'https://upcoming.api.symbols.app',
|
|
62
47
|
apiUrl: 'https://upcoming.api.symbols.app',
|
|
63
|
-
githubClientId: 'Ov23liWF7NvdZ056RV5J'
|
|
64
|
-
typesenseCollectionName: 'docs',
|
|
65
|
-
typesenseApiKey: 'awmcVpbWqZi9IUgmvslp1C5LKDU8tMjA',
|
|
66
|
-
typesenseHost: 'tl2qpnwxev4cjm36p-1.a1.typesense.net',
|
|
67
|
-
typesensePort: '443',
|
|
68
|
-
typesenseProtocol: 'https'
|
|
48
|
+
githubClientId: 'Ov23liWF7NvdZ056RV5J'
|
|
69
49
|
},
|
|
70
50
|
staging: {
|
|
71
51
|
socketUrl: 'https://staging.api.symbols.app',
|
|
@@ -73,12 +53,7 @@ const CONFIG = {
|
|
|
73
53
|
basedEnv: 'staging',
|
|
74
54
|
basedProject: 'platform-v2-sm',
|
|
75
55
|
basedOrg: 'symbols',
|
|
76
|
-
githubClientId: 'Ov23ligwZDQVD0VfuWNa'
|
|
77
|
-
typesenseCollectionName: 'docs',
|
|
78
|
-
typesenseApiKey: 'awmcVpbWqZi9IUgmvslp1C5LKDU8tMjA',
|
|
79
|
-
typesenseHost: 'tl2qpnwxev4cjm36p-1.a1.typesense.net',
|
|
80
|
-
typesensePort: '443',
|
|
81
|
-
typesenseProtocol: 'https'
|
|
56
|
+
githubClientId: 'Ov23ligwZDQVD0VfuWNa'
|
|
82
57
|
},
|
|
83
58
|
production: {
|
|
84
59
|
socketUrl: 'https://api.symbols.app',
|
|
@@ -86,12 +61,7 @@ const CONFIG = {
|
|
|
86
61
|
basedEnv: 'production',
|
|
87
62
|
basedProject: 'platform-v2-sm',
|
|
88
63
|
basedOrg: 'symbols',
|
|
89
|
-
githubClientId: 'Ov23liFAlOEIXtX3dBtR'
|
|
90
|
-
typesenseCollectionName: 'docs',
|
|
91
|
-
typesenseApiKey: 'awmcVpbWqZi9IUgmvslp1C5LKDU8tMjA',
|
|
92
|
-
typesenseHost: 'tl2qpnwxev4cjm36p-1.a1.typesense.net',
|
|
93
|
-
typesensePort: '443',
|
|
94
|
-
typesenseProtocol: 'https'
|
|
64
|
+
githubClientId: 'Ov23liFAlOEIXtX3dBtR'
|
|
95
65
|
}
|
|
96
66
|
}
|
|
97
67
|
|
|
@@ -125,15 +95,6 @@ export const getConfig = () => {
|
|
|
125
95
|
basedOrg: process.env.SYMBOLS_APP_BASED_ORG || envConfig.basedOrg,
|
|
126
96
|
githubClientId:
|
|
127
97
|
process.env.SYMBOLS_APP_GITHUB_CLIENT_ID || envConfig.githubClientId,
|
|
128
|
-
typesenseCollectionName:
|
|
129
|
-
process.env.TYPESENSE_COLLECTION_NAME ||
|
|
130
|
-
envConfig.typesenseCollectionName,
|
|
131
|
-
typesenseApiKey:
|
|
132
|
-
process.env.TYPESENSE_API_KEY || envConfig.typesenseApiKey,
|
|
133
|
-
typesenseHost: process.env.TYPESENSE_HOST || envConfig.typesenseHost,
|
|
134
|
-
typesensePort: process.env.TYPESENSE_PORT || envConfig.typesensePort,
|
|
135
|
-
typesenseProtocol:
|
|
136
|
-
process.env.TYPESENSE_PROTOCOL || envConfig.typesenseProtocol,
|
|
137
98
|
isDevelopment: isDevelopment(env),
|
|
138
99
|
isTesting: env === 'testing',
|
|
139
100
|
isStaging: env === 'staging',
|
|
@@ -149,7 +110,7 @@ export const getConfig = () => {
|
|
|
149
110
|
'googleClientId'
|
|
150
111
|
]
|
|
151
112
|
|
|
152
|
-
const missingFields = requiredFields.filter(
|
|
113
|
+
const missingFields = requiredFields.filter(field => !finalConfig[field])
|
|
153
114
|
|
|
154
115
|
if (missingFields.length > 0) {
|
|
155
116
|
console.error(
|
|
@@ -158,7 +119,7 @@ export const getConfig = () => {
|
|
|
158
119
|
}
|
|
159
120
|
|
|
160
121
|
if (finalConfig.isDevelopment) {
|
|
161
|
-
console.
|
|
122
|
+
console.log(
|
|
162
123
|
'environment in SDK:',
|
|
163
124
|
env || process.env.NODE_ENV || process.env.NODE_ENV
|
|
164
125
|
)
|
package/src/index.js
CHANGED
|
@@ -10,29 +10,24 @@ import {
|
|
|
10
10
|
createBranchService,
|
|
11
11
|
createPullRequestService,
|
|
12
12
|
createAdminService,
|
|
13
|
-
createSubscriptionService
|
|
14
|
-
createScreenshotService
|
|
13
|
+
createSubscriptionService
|
|
15
14
|
} from './services/index.js'
|
|
16
15
|
|
|
17
16
|
import { SERVICE_METHODS } from './utils/services.js'
|
|
18
17
|
import environment from './config/environment.js'
|
|
19
|
-
import { rootBus } from './state/rootEventBus.js'
|
|
20
18
|
|
|
21
19
|
export class SDK {
|
|
22
|
-
constructor(options = {}) {
|
|
20
|
+
constructor (options = {}) {
|
|
23
21
|
this._services = new Map()
|
|
24
22
|
this._context = {}
|
|
25
23
|
this._options = this._validateOptions(options)
|
|
26
24
|
|
|
27
|
-
// Expose root event bus on SDK instance
|
|
28
|
-
this.rootBus = rootBus
|
|
29
|
-
|
|
30
25
|
// Create proxy methods for direct service access
|
|
31
26
|
this._createServiceProxies()
|
|
32
27
|
}
|
|
33
28
|
|
|
34
29
|
// Initialize SDK with context
|
|
35
|
-
async initialize(context = {}) {
|
|
30
|
+
async initialize (context = {}) {
|
|
36
31
|
this._context = {
|
|
37
32
|
...this._context,
|
|
38
33
|
...context
|
|
@@ -125,13 +120,6 @@ export class SDK {
|
|
|
125
120
|
context: this._context,
|
|
126
121
|
options: this._options
|
|
127
122
|
})
|
|
128
|
-
),
|
|
129
|
-
this._initService(
|
|
130
|
-
'screenshot',
|
|
131
|
-
createScreenshotService({
|
|
132
|
-
context: this._context,
|
|
133
|
-
options: this._options
|
|
134
|
-
})
|
|
135
123
|
)
|
|
136
124
|
])
|
|
137
125
|
|
|
@@ -139,7 +127,7 @@ export class SDK {
|
|
|
139
127
|
}
|
|
140
128
|
|
|
141
129
|
// Private helper to initialize a service
|
|
142
|
-
async _initService(name, service) {
|
|
130
|
+
async _initService (name, service) {
|
|
143
131
|
// Add service reference to context for inter-service communication
|
|
144
132
|
this._context.services = {
|
|
145
133
|
...this._context.services,
|
|
@@ -155,7 +143,7 @@ export class SDK {
|
|
|
155
143
|
this._services.set(name, service)
|
|
156
144
|
}
|
|
157
145
|
|
|
158
|
-
_validateOptions(options) {
|
|
146
|
+
_validateOptions (options) {
|
|
159
147
|
const defaults = {
|
|
160
148
|
useNewServices: true, // Use new service implementations by default
|
|
161
149
|
apiUrl: environment.apiUrl,
|
|
@@ -169,7 +157,7 @@ export class SDK {
|
|
|
169
157
|
}
|
|
170
158
|
|
|
171
159
|
// Get service instance
|
|
172
|
-
getService(name) {
|
|
160
|
+
getService (name) {
|
|
173
161
|
if (!this._services.has(name)) {
|
|
174
162
|
throw new Error(`Service '${name}' not found`)
|
|
175
163
|
}
|
|
@@ -177,13 +165,10 @@ export class SDK {
|
|
|
177
165
|
}
|
|
178
166
|
|
|
179
167
|
// Update context
|
|
180
|
-
updateContext(newContext) {
|
|
181
|
-
// Do not persist authToken in SDK context; TokenManager is the source of truth
|
|
182
|
-
const { authToken, ...sanitized } = newContext || {}
|
|
183
|
-
|
|
168
|
+
updateContext (newContext) {
|
|
184
169
|
this._context = {
|
|
185
170
|
...this._context,
|
|
186
|
-
...
|
|
171
|
+
...newContext
|
|
187
172
|
}
|
|
188
173
|
|
|
189
174
|
// Update context for all services
|
|
@@ -193,16 +178,15 @@ export class SDK {
|
|
|
193
178
|
}
|
|
194
179
|
|
|
195
180
|
// Check if SDK is ready
|
|
196
|
-
isReady() {
|
|
181
|
+
isReady () {
|
|
197
182
|
const sdkServices = Array.from(this._services.values())
|
|
198
|
-
return (
|
|
199
|
-
|
|
200
|
-
sdkServices.every((service) => service.isReady())
|
|
183
|
+
return sdkServices.length > 0 && sdkServices.every(service =>
|
|
184
|
+
service.isReady()
|
|
201
185
|
)
|
|
202
186
|
}
|
|
203
187
|
|
|
204
188
|
// Get SDK status
|
|
205
|
-
getStatus() {
|
|
189
|
+
getStatus () {
|
|
206
190
|
return {
|
|
207
191
|
ready: this.isReady(),
|
|
208
192
|
services: Array.from(this._services.entries()).map(([name, service]) => ({
|
|
@@ -214,7 +198,7 @@ export class SDK {
|
|
|
214
198
|
}
|
|
215
199
|
|
|
216
200
|
// Create proxy methods for direct service access
|
|
217
|
-
_createServiceProxies() {
|
|
201
|
+
_createServiceProxies () {
|
|
218
202
|
for (const [methodName, serviceName] of Object.entries(SERVICE_METHODS)) {
|
|
219
203
|
// Skip if method already exists on SDK
|
|
220
204
|
if (!this[methodName]) {
|
|
@@ -242,20 +226,20 @@ export class SDK {
|
|
|
242
226
|
const destroyPromises = Array.from(this._services.entries())
|
|
243
227
|
.filter(([, service]) => typeof service.destroy === 'function')
|
|
244
228
|
.map(async ([name, service]) => {
|
|
245
|
-
await service.destroy()
|
|
246
|
-
console.log(`Service ${name} destroyed successfully`)
|
|
247
|
-
})
|
|
229
|
+
await service.destroy();
|
|
230
|
+
console.log(`Service ${name} destroyed successfully`);
|
|
231
|
+
});
|
|
248
232
|
|
|
249
|
-
await Promise.all(destroyPromises)
|
|
233
|
+
await Promise.all(destroyPromises);
|
|
250
234
|
|
|
251
235
|
// Clear services and reset state
|
|
252
|
-
this._services.clear()
|
|
253
|
-
this._context = {}
|
|
236
|
+
this._services.clear();
|
|
237
|
+
this._context = {};
|
|
254
238
|
|
|
255
|
-
return true
|
|
239
|
+
return true;
|
|
256
240
|
} catch (error) {
|
|
257
|
-
console.error('Error during SDK destruction:', error)
|
|
258
|
-
throw error
|
|
241
|
+
console.error('Error during SDK destruction:', error);
|
|
242
|
+
throw error;
|
|
259
243
|
}
|
|
260
244
|
}
|
|
261
245
|
}
|
|
@@ -59,7 +59,7 @@ export class AdminService extends BaseService {
|
|
|
59
59
|
}
|
|
60
60
|
throw new Error(response.message)
|
|
61
61
|
} catch (error) {
|
|
62
|
-
throw new Error(`Failed to get admin users: ${error.message}
|
|
62
|
+
throw new Error(`Failed to get admin users: ${error.message}`)
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -97,7 +97,7 @@ export class AdminService extends BaseService {
|
|
|
97
97
|
}
|
|
98
98
|
throw new Error(response.message)
|
|
99
99
|
} catch (error) {
|
|
100
|
-
throw new Error(`Failed to assign projects to user: ${error.message}
|
|
100
|
+
throw new Error(`Failed to assign projects to user: ${error.message}`)
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -132,7 +132,7 @@ export class AdminService extends BaseService {
|
|
|
132
132
|
if (error.message?.includes('Duplicate')) {
|
|
133
133
|
throw new Error('Username already exists')
|
|
134
134
|
}
|
|
135
|
-
throw new Error(`Failed to update user: ${error.message}
|
|
135
|
+
throw new Error(`Failed to update user: ${error.message}`)
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
|
|
@@ -274,7 +274,7 @@ export class AdminService extends BaseService {
|
|
|
274
274
|
|
|
275
275
|
return stats
|
|
276
276
|
} catch (error) {
|
|
277
|
-
throw new Error(`Failed to get user stats: ${error.message}
|
|
277
|
+
throw new Error(`Failed to get user stats: ${error.message}`)
|
|
278
278
|
}
|
|
279
279
|
}
|
|
280
280
|
|