@symbo.ls/sdk 3.1.2 → 3.2.3

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 (65) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/config/environment.js +5 -21
  3. package/dist/cjs/index.js +6 -26
  4. package/dist/cjs/services/AIService.js +3 -3
  5. package/dist/cjs/services/CollabService.js +420 -0
  6. package/dist/cjs/services/CoreService.js +651 -107
  7. package/dist/cjs/services/SocketService.js +207 -59
  8. package/dist/cjs/services/index.js +5 -13
  9. package/dist/cjs/state/RootStateManager.js +86 -0
  10. package/dist/cjs/state/rootEventBus.js +65 -0
  11. package/dist/cjs/utils/CollabClient.js +157 -0
  12. package/dist/cjs/utils/TokenManager.js +62 -27
  13. package/dist/cjs/utils/jsonDiff.js +103 -0
  14. package/dist/cjs/utils/services.js +129 -88
  15. package/dist/cjs/utils/symstoryClient.js +5 -5
  16. package/dist/esm/config/environment.js +5 -21
  17. package/dist/esm/index.js +20459 -9286
  18. package/dist/esm/services/AIService.js +3 -3
  19. package/dist/esm/services/BasedService.js +5 -21
  20. package/dist/esm/services/CollabService.js +18028 -0
  21. package/dist/esm/services/CoreService.js +718 -155
  22. package/dist/esm/services/SocketService.js +323 -58
  23. package/dist/esm/services/SymstoryService.js +10 -26
  24. package/dist/esm/services/index.js +20305 -9158
  25. package/dist/esm/state/RootStateManager.js +102 -0
  26. package/dist/esm/state/rootEventBus.js +47 -0
  27. package/dist/esm/utils/CollabClient.js +17483 -0
  28. package/dist/esm/utils/TokenManager.js +62 -27
  29. package/dist/esm/utils/jsonDiff.js +6096 -0
  30. package/dist/esm/utils/services.js +129 -88
  31. package/dist/esm/utils/symstoryClient.js +10 -26
  32. package/dist/node/config/environment.js +5 -21
  33. package/dist/node/index.js +10 -34
  34. package/dist/node/services/AIService.js +3 -3
  35. package/dist/node/services/CollabService.js +401 -0
  36. package/dist/node/services/CoreService.js +651 -107
  37. package/dist/node/services/SocketService.js +197 -59
  38. package/dist/node/services/index.js +5 -13
  39. package/dist/node/state/RootStateManager.js +57 -0
  40. package/dist/node/state/rootEventBus.js +46 -0
  41. package/dist/node/utils/CollabClient.js +128 -0
  42. package/dist/node/utils/TokenManager.js +62 -27
  43. package/dist/node/utils/jsonDiff.js +74 -0
  44. package/dist/node/utils/services.js +129 -88
  45. package/dist/node/utils/symstoryClient.js +5 -5
  46. package/package.json +12 -6
  47. package/src/config/environment.js +5 -19
  48. package/src/index.js +9 -31
  49. package/src/services/AIService.js +3 -3
  50. package/src/services/BasedService.js +1 -0
  51. package/src/services/CollabService.js +491 -0
  52. package/src/services/CoreService.js +715 -110
  53. package/src/services/SocketService.js +227 -59
  54. package/src/services/index.js +6 -13
  55. package/src/state/RootStateManager.js +71 -0
  56. package/src/state/rootEventBus.js +48 -0
  57. package/src/utils/CollabClient.js +161 -0
  58. package/src/utils/TokenManager.js +68 -30
  59. package/src/utils/jsonDiff.js +109 -0
  60. package/src/utils/services.js +140 -88
  61. package/src/utils/symstoryClient.js +5 -5
  62. package/dist/cjs/services/SocketIOService.js +0 -307
  63. package/dist/esm/services/SocketIOService.js +0 -470
  64. package/dist/node/services/SocketIOService.js +0 -278
  65. package/src/services/SocketIOService.js +0 -334
@@ -20,94 +20,135 @@ var SERVICE_METHODS = {
20
20
  updateProjectTier: "auth",
21
21
  subscribeToAuthChanges: "auth",
22
22
  getStoredAuthState: "core",
23
- // AI service methods
24
- prompt: "ai",
25
- // Based service methods
26
- query: "based",
27
- setProject: "based",
28
- setUser: "based",
29
- setUserForced: "based",
30
- subscribe: "based",
31
- call: "based",
32
- getProject: "based",
33
- getProjectByKey: "based",
34
- createProject: "based",
35
- fetchUser: "based",
36
- fetchProject: "based",
37
- setBucket: "based",
38
- getUser: "based",
39
- getUserByEmail: "based",
40
- setProjectDomains: "based",
41
- checkProjectKeyAvailability: "based",
42
- removeProject: "based",
43
- getAvailableLibraries: "based",
44
- addProjectLibraries: "based",
45
- removeProjectLibraries: "based",
46
- getProjectLibraries: "based",
47
- checkout: "based",
48
- uploadFile: "based",
49
- updateProjectIcon: "based",
50
- updateProject: "based",
51
- updateProjectSettings: "based",
52
- updateProjectComponents: "based",
53
- updateProjectName: "based",
54
- updateProjectPackage: "based",
55
- createDnsRecord: "based",
56
- getDnsRecord: "based",
57
- removeDnsRecord: "based",
58
- createStorageBucket: "based",
59
- getStorageBucket: "based",
60
- removeStorageBucket: "based",
61
- requestPasswordChange: "based",
62
- confirmPasswordChange: "based",
63
- updateUserProfile: "based",
64
- duplicateProject: "based",
65
- listPlans: "based",
66
- subscribeToPlan: "based",
67
- getSubscriptionDetails: "based",
68
- checkSubscriptionStatus: "based",
69
- upgradeSubscription: "based",
70
- downgradeSubscription: "based",
71
- cancelSubscription: "based",
72
- reactivateSubscription: "based",
73
- generateInvoice: "based",
74
- getUsageReport: "based",
75
- inviteAccountOwner: "based",
76
- acceptOwnerInvitation: "based",
77
- removeAccountOwner: "based",
78
- checkResourceLimit: "based",
79
- checkFeatureAccess: "based",
80
- getUserFeatures: "based",
81
- getAvailableFeatures: "based",
82
- listFeatureFlags: "based",
83
- updateFeatureFlag: "based",
84
- removeFeatureFlag: "based",
85
- batchUpdateFeatureFlags: "based",
86
- updatePlanDetails: "based",
87
- updatePlanStatus: "based",
88
- // Symstory service methods
89
- set: "symstory",
90
- getData: "symstory",
91
- updateData: "symstory",
92
- getBranches: "symstory",
93
- editBranch: "symstory",
94
- restoreVersion: "symstory",
95
- getItem: "symstory",
96
- addItem: "symstory",
97
- addMultipleItems: "symstory",
98
- updateItem: "symstory",
99
- deleteItem: "symstory",
100
- switchVersion: "symstory",
101
- switchBranch: "symstory",
102
- undo: "symstory",
103
- redo: "symstory",
104
- publish: "symstory",
105
- getChanges: "symstory",
106
- // Socket service methods
107
- send: "socket",
108
- subscribeChannel: "socket",
109
- connect: "socket",
110
- reconnect: "socket"
23
+ // Collab service methods
24
+ connect: "collab",
25
+ disconnect: "collab",
26
+ isConnected: "collab",
27
+ updateData: "collab",
28
+ addItem: "collab",
29
+ addMultipleItems: "collab",
30
+ updateItem: "collab",
31
+ deleteItem: "collab",
32
+ undo: "collab",
33
+ redo: "collab",
34
+ checkpoint: "collab",
35
+ // Realtime collaboration helper methods
36
+ sendCursor: "collab",
37
+ sendPresence: "collab",
38
+ toggleLive: "collab",
39
+ // Core service methods (new - replaces most based/auth functionality)
40
+ // Auth methods
41
+ register: "core",
42
+ login: "core",
43
+ logout: "core",
44
+ refreshToken: "core",
45
+ googleAuth: "core",
46
+ googleAuthCallback: "core",
47
+ githubAuth: "core",
48
+ requestPasswordReset: "core",
49
+ confirmPasswordReset: "core",
50
+ confirmRegistration: "core",
51
+ requestPasswordChange: "core",
52
+ confirmPasswordChange: "core",
53
+ getMe: "core",
54
+ // User methods
55
+ getUserProfile: "core",
56
+ updateUserProfile: "core",
57
+ getUserProjects: "core",
58
+ getUser: "core",
59
+ getUserByEmail: "core",
60
+ // Project methods
61
+ createProject: "core",
62
+ getProjects: "core",
63
+ getProject: "core",
64
+ getProjectByKey: "core",
65
+ getPublicProject: "core",
66
+ listPublicProjects: "core",
67
+ listProjects: "core",
68
+ updateProject: "core",
69
+ updateProjectComponents: "core",
70
+ updateProjectSettings: "core",
71
+ updateProjectName: "core",
72
+ updateProjectPackage: "core",
73
+ duplicateProject: "core",
74
+ removeProject: "core",
75
+ checkProjectKeyAvailability: "core",
76
+ // Project member methods
77
+ getProjectMembers: "core",
78
+ inviteMember: "core",
79
+ acceptInvite: "core",
80
+ updateMemberRole: "core",
81
+ removeMember: "core",
82
+ // Project library methods
83
+ getAvailableLibraries: "core",
84
+ getProjectLibraries: "core",
85
+ addProjectLibraries: "core",
86
+ removeProjectLibraries: "core",
87
+ // File methods
88
+ uploadFile: "core",
89
+ updateProjectIcon: "core",
90
+ // Payment methods
91
+ checkout: "core",
92
+ getSubscriptionStatus: "core",
93
+ // DNS methods
94
+ createDnsRecord: "core",
95
+ getDnsRecord: "core",
96
+ removeDnsRecord: "core",
97
+ setProjectDomains: "core",
98
+ // Utility methods
99
+ getHealthStatus: "core",
100
+ getTokenDebugInfo: "core",
101
+ // Project Data methods (Symstory replacement)
102
+ applyProjectChanges: "core",
103
+ getProjectData: "core",
104
+ getProjectVersions: "core",
105
+ restoreProjectVersion: "core",
106
+ updateProjectItem: "core",
107
+ deleteProjectItem: "core",
108
+ setProjectValue: "core",
109
+ addProjectItems: "core",
110
+ getProjectItemByPath: "core",
111
+ // Pull Request methods
112
+ createPullRequest: "core",
113
+ listPullRequests: "core",
114
+ getPullRequest: "core",
115
+ reviewPullRequest: "core",
116
+ addPullRequestComment: "core",
117
+ mergePullRequest: "core",
118
+ getPullRequestDiff: "core",
119
+ createPullRequestWithValidation: "core",
120
+ approvePullRequest: "core",
121
+ requestPullRequestChanges: "core",
122
+ getOpenPullRequests: "core",
123
+ getClosedPullRequests: "core",
124
+ getMergedPullRequests: "core",
125
+ isPullRequestMergeable: "core",
126
+ getPullRequestStatusSummary: "core",
127
+ // Branch Management methods
128
+ listBranches: "core",
129
+ createBranch: "core",
130
+ deleteBranch: "core",
131
+ renameBranch: "core",
132
+ getBranchChanges: "core",
133
+ mergeBranch: "core",
134
+ resetBranch: "core",
135
+ publishVersion: "core",
136
+ createBranchWithValidation: "core",
137
+ branchExists: "core",
138
+ previewMerge: "core",
139
+ commitMerge: "core",
140
+ createFeatureBranch: "core",
141
+ createHotfixBranch: "core",
142
+ getBranchStatus: "core",
143
+ deleteBranchSafely: "core",
144
+ // Admin methods
145
+ getAdminUsers: "core",
146
+ assignProjectsToUser: "core",
147
+ searchAdminUsers: "core",
148
+ getAdminUsersByEmails: "core",
149
+ getAdminUsersByIds: "core",
150
+ assignSpecificProjectsToUser: "core",
151
+ assignAllProjectsToUser: "core"
111
152
  };
112
153
  export {
113
154
  SERVICE_METHODS
@@ -14,12 +14,8 @@ var CONFIG = {
14
14
  // Environment-specific configurations
15
15
  local: {
16
16
  // local
17
- baseUrl: "http://localhost:8080",
18
- // For symstory api
19
17
  socketUrl: "http://localhost:8080",
20
18
  // For socket api
21
- routerUrl: "http://localhost:8080",
22
- // For router api
23
19
  apiUrl: "http://localhost:8080",
24
20
  // For server api
25
21
  basedEnv: "development",
@@ -37,29 +33,25 @@ var CONFIG = {
37
33
  }
38
34
  },
39
35
  development: {
40
- baseUrl: "https://dev.api.symbols.app",
41
36
  socketUrl: "https://dev.api.symbols.app",
42
- routerUrl: "https://dev.api.symbols.app",
43
37
  apiUrl: "https://dev.api.symbols.app",
44
- basedEnv: "development",
45
- basedProject: "platform-v2-sm",
46
- basedOrg: "symbols",
47
38
  githubClientId: "Ov23liHxyWFBxS8f1gnF"
48
39
  },
49
40
  testing: {
50
- baseUrl: "https://test.api.symbols.app",
51
41
  socketUrl: "https://test.api.symbols.app",
52
- routerUrl: "https://test.api.symbols.app",
53
42
  apiUrl: "https://test.api.symbols.app",
54
43
  basedEnv: "testing",
55
44
  basedProject: "platform-v2-sm",
56
45
  basedOrg: "symbols",
57
46
  githubClientId: "Ov23liHxyWFBxS8f1gnF"
58
47
  },
48
+ upcoming: {
49
+ socketUrl: "https://upcoming.api.symbols.app",
50
+ apiUrl: "https://upcoming.api.symbols.app",
51
+ githubClientId: "Ov23liWF7NvdZ056RV5J"
52
+ },
59
53
  staging: {
60
- baseUrl: "https://staging.api.symbols.app",
61
54
  socketUrl: "https://staging.api.symbols.app",
62
- routerUrl: "https://staging.api.symbols.app",
63
55
  apiUrl: "https://staging.api.symbols.app",
64
56
  basedEnv: "staging",
65
57
  basedProject: "platform-v2-sm",
@@ -67,9 +59,7 @@ var CONFIG = {
67
59
  githubClientId: "Ov23ligwZDQVD0VfuWNa"
68
60
  },
69
61
  production: {
70
- baseUrl: "https://api.symbols.app",
71
62
  socketUrl: "https://api.symbols.app",
72
- routerUrl: "https://api.symbols.app",
73
63
  apiUrl: "https://api.symbols.app",
74
64
  basedEnv: "production",
75
65
  basedProject: "platform-v2-sm",
@@ -90,9 +80,7 @@ var getConfig = () => {
90
80
  const envConfig = { ...CONFIG.common, ...CONFIG[env] };
91
81
  const finalConfig = {
92
82
  ...envConfig,
93
- baseUrl: process.env.SYMBOLS_APP_BASE_URL || envConfig.baseUrl,
94
83
  socketUrl: process.env.SYMBOLS_APP_SOCKET_URL || envConfig.socketUrl,
95
- routerUrl: process.env.SYMBOLS_APP_ROUTER_URL || envConfig.routerUrl,
96
84
  apiUrl: process.env.SYMBOLS_APP_API_URL || envConfig.apiUrl,
97
85
  basedEnv: process.env.SYMBOLS_APP_BASED_ENV || envConfig.basedEnv,
98
86
  basedProject: process.env.SYMBOLS_APP_BASED_PROJECT || envConfig.basedProject,
@@ -105,12 +93,8 @@ var getConfig = () => {
105
93
  // Store all environment variables for potential future use
106
94
  };
107
95
  const requiredFields = [
108
- "baseUrl",
109
96
  "socketUrl",
110
97
  "apiUrl",
111
- "basedEnv",
112
- "basedProject",
113
- "basedOrg",
114
98
  "githubClientId",
115
99
  "googleClientId"
116
100
  ];
@@ -139,7 +123,7 @@ var environment_default = getConfig();
139
123
 
140
124
  // src/utils/symstoryClient.js
141
125
  var DEFAULT_OPTIONS = {
142
- baseUrl: environment_default.baseUrl
126
+ apiUrl: environment_default.apiUrl
143
127
  };
144
128
  var SymstoryClient = class {
145
129
  /**
@@ -166,7 +150,7 @@ var SymstoryClient = class {
166
150
  * @returns {Promise<any>} - The response data.
167
151
  */
168
152
  async request(path = "", options = {}) {
169
- const url = `${this.options.baseUrl}/symstory/${this.appKey}${path}`;
153
+ const url = `${this.options.apiUrl}/symstory/${this.appKey}${path}`;
170
154
  const response = await fetch(url, {
171
155
  ...options,
172
156
  headers: { ...this.headers, ...options.headers }
@@ -320,7 +304,7 @@ var SymstoryClient = class {
320
304
  * @param {string} [options.branch='main'] - The branch name. (Only if version number is provided)
321
305
  * @returns {Promise<any>} - The response data.
322
306
  */
323
- publishVersion(version, { branch = "main" } = {}) {
307
+ publishVersion(version) {
324
308
  return this.request("/publish", {
325
309
  method: "POST",
326
310
  body: JSON.stringify({ version })
@@ -336,11 +320,11 @@ var SymstoryClient = class {
336
320
  */
337
321
  getChanges({ versionId, versionValue, branch } = {}) {
338
322
  return this.request(
339
- "/changes?" + new URLSearchParams({
323
+ `/changes?${new URLSearchParams({
340
324
  ...versionId ? { versionId } : {},
341
325
  ...versionValue ? { versionValue } : {},
342
326
  ...branch ? { branch } : {}
343
- }).toString(),
327
+ }).toString()}`,
344
328
  {}
345
329
  );
346
330
  }
@@ -13,12 +13,8 @@ const CONFIG = {
13
13
  // Environment-specific configurations
14
14
  local: {
15
15
  // local
16
- baseUrl: "http://localhost:8080",
17
- // For symstory api
18
16
  socketUrl: "http://localhost:8080",
19
17
  // For socket api
20
- routerUrl: "http://localhost:8080",
21
- // For router api
22
18
  apiUrl: "http://localhost:8080",
23
19
  // For server api
24
20
  basedEnv: "development",
@@ -36,29 +32,25 @@ const CONFIG = {
36
32
  }
37
33
  },
38
34
  development: {
39
- baseUrl: "https://dev.api.symbols.app",
40
35
  socketUrl: "https://dev.api.symbols.app",
41
- routerUrl: "https://dev.api.symbols.app",
42
36
  apiUrl: "https://dev.api.symbols.app",
43
- basedEnv: "development",
44
- basedProject: "platform-v2-sm",
45
- basedOrg: "symbols",
46
37
  githubClientId: "Ov23liHxyWFBxS8f1gnF"
47
38
  },
48
39
  testing: {
49
- baseUrl: "https://test.api.symbols.app",
50
40
  socketUrl: "https://test.api.symbols.app",
51
- routerUrl: "https://test.api.symbols.app",
52
41
  apiUrl: "https://test.api.symbols.app",
53
42
  basedEnv: "testing",
54
43
  basedProject: "platform-v2-sm",
55
44
  basedOrg: "symbols",
56
45
  githubClientId: "Ov23liHxyWFBxS8f1gnF"
57
46
  },
47
+ upcoming: {
48
+ socketUrl: "https://upcoming.api.symbols.app",
49
+ apiUrl: "https://upcoming.api.symbols.app",
50
+ githubClientId: "Ov23liWF7NvdZ056RV5J"
51
+ },
58
52
  staging: {
59
- baseUrl: "https://staging.api.symbols.app",
60
53
  socketUrl: "https://staging.api.symbols.app",
61
- routerUrl: "https://staging.api.symbols.app",
62
54
  apiUrl: "https://staging.api.symbols.app",
63
55
  basedEnv: "staging",
64
56
  basedProject: "platform-v2-sm",
@@ -66,9 +58,7 @@ const CONFIG = {
66
58
  githubClientId: "Ov23ligwZDQVD0VfuWNa"
67
59
  },
68
60
  production: {
69
- baseUrl: "https://api.symbols.app",
70
61
  socketUrl: "https://api.symbols.app",
71
- routerUrl: "https://api.symbols.app",
72
62
  apiUrl: "https://api.symbols.app",
73
63
  basedEnv: "production",
74
64
  basedProject: "platform-v2-sm",
@@ -90,9 +80,7 @@ const getConfig = () => {
90
80
  const envConfig = { ...CONFIG.common, ...CONFIG[env] };
91
81
  const finalConfig = {
92
82
  ...envConfig,
93
- baseUrl: process.env.SYMBOLS_APP_BASE_URL || envConfig.baseUrl,
94
83
  socketUrl: process.env.SYMBOLS_APP_SOCKET_URL || envConfig.socketUrl,
95
- routerUrl: process.env.SYMBOLS_APP_ROUTER_URL || envConfig.routerUrl,
96
84
  apiUrl: process.env.SYMBOLS_APP_API_URL || envConfig.apiUrl,
97
85
  basedEnv: process.env.SYMBOLS_APP_BASED_ENV || envConfig.basedEnv,
98
86
  basedProject: process.env.SYMBOLS_APP_BASED_PROJECT || envConfig.basedProject,
@@ -105,12 +93,8 @@ const getConfig = () => {
105
93
  // Store all environment variables for potential future use
106
94
  };
107
95
  const requiredFields = [
108
- "baseUrl",
109
96
  "socketUrl",
110
97
  "apiUrl",
111
- "basedEnv",
112
- "basedProject",
113
- "basedOrg",
114
98
  "githubClientId",
115
99
  "googleClientId"
116
100
  ];
@@ -1,12 +1,9 @@
1
1
  import {
2
- createSymstoryService,
3
2
  createAuthService,
4
- createAIService,
5
- createSocketService,
6
- createCoreService
3
+ createCoreService,
4
+ createCollabService
7
5
  } from "./services/index.js";
8
6
  import { SERVICE_METHODS } from "./utils/services.js";
9
- import { SymstoryService } from "./services/SymstoryService.js";
10
7
  import environment from "./config/environment.js";
11
8
  class SDK {
12
9
  constructor(options = {}) {
@@ -30,29 +27,15 @@ class SDK {
30
27
  })
31
28
  ),
32
29
  this._initService(
33
- "socket",
34
- createSocketService({
35
- context: this._context,
36
- options: this._options
37
- })
38
- ),
39
- this._initService(
40
- "symstory",
41
- createSymstoryService({
42
- context: this._context,
43
- options: this._options
44
- })
45
- ),
46
- this._initService(
47
- "ai",
48
- createAIService({
30
+ "core",
31
+ createCoreService({
49
32
  context: this._context,
50
33
  options: this._options
51
34
  })
52
35
  ),
53
36
  this._initService(
54
- "core",
55
- createCoreService({
37
+ "collab",
38
+ createCollabService({
56
39
  context: this._context,
57
40
  options: this._options
58
41
  })
@@ -76,7 +59,7 @@ class SDK {
76
59
  const defaults = {
77
60
  useNewServices: true,
78
61
  // Use new service implementations by default
79
- baseUrl: environment.baseUrl,
62
+ apiUrl: environment.apiUrl,
80
63
  socketUrl: environment.socketUrl,
81
64
  timeout: 3e4,
82
65
  retryAttempts: 3,
@@ -99,9 +82,6 @@ class SDK {
99
82
  };
100
83
  for (const service of this._services.values()) {
101
84
  service.updateContext(this._context);
102
- if (service instanceof SymstoryService) {
103
- service.init();
104
- }
105
85
  }
106
86
  }
107
87
  // Check if SDK is ready
@@ -160,20 +140,16 @@ class SDK {
160
140
  }
161
141
  var index_default = SDK;
162
142
  import {
163
- createSymstoryService as createSymstoryService2,
164
143
  createAuthService as createAuthService2,
165
- createAIService as createAIService2,
166
- createSocketService as createSocketService2,
167
- createCoreService as createCoreService2
144
+ createCoreService as createCoreService2,
145
+ createCollabService as createCollabService2
168
146
  } from "./services/index.js";
169
147
  import { default as default2 } from "./config/environment.js";
170
148
  export {
171
149
  SDK,
172
- createAIService2 as createAIService,
173
150
  createAuthService2 as createAuthService,
151
+ createCollabService2 as createCollabService,
174
152
  createCoreService2 as createCoreService,
175
- createSocketService2 as createSocketService,
176
- createSymstoryService2 as createSymstoryService,
177
153
  index_default as default,
178
154
  default2 as environment
179
155
  };
@@ -5,7 +5,7 @@ class AIService extends BaseService {
5
5
  this._client = null;
6
6
  this._initialized = false;
7
7
  this._defaultConfig = {
8
- baseUrl: "https://api.openai.com/v1/engines/text-curie/completions",
8
+ apiUrl: "https://api.openai.com/v1/engines/text-curie/completions",
9
9
  temperature: 0,
10
10
  maxTokens: 2e3,
11
11
  headers: {
@@ -49,7 +49,7 @@ class AIService extends BaseService {
49
49
  };
50
50
  }
51
51
  validateConfig(config = {}) {
52
- const requiredFields = ["baseUrl", "temperature", "maxTokens"];
52
+ const requiredFields = ["apiUrl", "temperature", "maxTokens"];
53
53
  const missingFields = requiredFields.filter((field) => !config[field]);
54
54
  if (missingFields.length > 0) {
55
55
  throw new Error(
@@ -77,7 +77,7 @@ class AIService extends BaseService {
77
77
  ...opts
78
78
  })
79
79
  };
80
- const response = await this._request(config.baseUrl, options);
80
+ const response = await this._request(config.apiUrl, options);
81
81
  return response;
82
82
  } catch (error) {
83
83
  throw new Error(`AI prompt failed: ${error.message}`);