@objectql/server 1.8.3 → 1.9.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # @objectql/server
2
2
 
3
+ ## 1.9.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Major documentation update and VS Code extension improvements
8
+ - Completely revised getting started documentation with emphasis on YAML-based metadata approach
9
+ - Improved quick start instructions for better onboarding experience
10
+ - Added comprehensive VS Code extension recommendations to example projects
11
+ - Enhanced developer experience with .vscode/extensions.json files
12
+ - Updated README to highlight the importance of the ObjectQL VS Code extension
13
+ - Added detailed documentation for all core features and API endpoints
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies
18
+ - @objectql/core@1.9.0
19
+ - @objectql/types@1.9.0
20
+
21
+ ## 1.8.4
22
+
23
+ ### Patch Changes
24
+
25
+ - Release version 1.8.4 with latest improvements and bug fixes
26
+ - Updated dependencies
27
+ - @objectql/types@1.8.4
28
+ - @objectql/core@1.8.4
29
+
3
30
  ## 1.8.3
4
31
 
5
32
  ### Patch Changes
@@ -5,6 +5,21 @@ exports.createGraphQLHandler = createGraphQLHandler;
5
5
  const server_1 = require("../server");
6
6
  const types_1 = require("../types");
7
7
  const graphql_1 = require("graphql");
8
+ const APOLLO_SANDBOX_HTML = `
9
+ <!DOCTYPE html>
10
+ <html lang="en">
11
+ <body style="margin: 0; overflow-x: hidden; overflow-y: hidden">
12
+ <div id="sandbox" style="height:100vh; width:100vw;"></div>
13
+ <script src="https://embeddable-sandbox.cdn.apollographql.com/_latest/embeddable-sandbox.umd.production.min.js"></script>
14
+ <script>
15
+ new window.EmbeddedSandbox({
16
+ target: "#sandbox",
17
+ initialEndpoint: window.location.href,
18
+ includeCookies: false, // Set to true if you need auth cookies
19
+ });
20
+ </script>
21
+ </body>
22
+ </html>`;
8
23
  /**
9
24
  * Normalize ObjectQL response to use 'id' instead of '_id'
10
25
  */
@@ -375,6 +390,16 @@ function createGraphQLHandler(app) {
375
390
  res.end();
376
391
  return;
377
392
  }
393
+ // HTML Playground Support (Apollo Sandbox)
394
+ // If it's a browser GET request without query params, show the playground
395
+ const acceptHeader = req.headers.accept || '';
396
+ const urlObj = new URL(req.url || '', `http://${req.headers.host || 'localhost'}`);
397
+ const hasQueryParams = urlObj.searchParams.has('query');
398
+ if (req.method === 'GET' && acceptHeader.includes('text/html') && !hasQueryParams) {
399
+ res.writeHead(200, { 'Content-Type': 'text/html' });
400
+ res.end(APOLLO_SANDBOX_HTML);
401
+ return;
402
+ }
378
403
  const url = req.url || '';
379
404
  const method = req.method || 'POST';
380
405
  if (method !== 'GET' && method !== 'POST') {
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../src/adapters/graphql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../src/adapters/graphql.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IObjectQL } from '@objectql/types';
1
+ import { IObjectQL, ApiRouteConfig } from '@objectql/types';
2
2
  import { IFileStorage } from '../types';
3
3
  import { IncomingMessage, ServerResponse } from 'http';
4
4
  /**
@@ -7,6 +7,8 @@ import { IncomingMessage, ServerResponse } from 'http';
7
7
  export interface NodeHandlerOptions {
8
8
  /** File storage provider (defaults to LocalFileStorage) */
9
9
  fileStorage?: IFileStorage;
10
+ /** Custom API route configuration */
11
+ routes?: ApiRouteConfig;
10
12
  }
11
13
  /**
12
14
  * Creates a standard Node.js HTTP request handler.
@@ -1,20 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createNodeHandler = createNodeHandler;
4
+ const types_1 = require("@objectql/types");
4
5
  const server_1 = require("../server");
5
- const types_1 = require("../types");
6
+ const types_2 = require("../types");
6
7
  const openapi_1 = require("../openapi");
7
8
  const file_handler_1 = require("../file-handler");
8
9
  const storage_1 = require("../storage");
10
+ const utils_1 = require("../utils");
9
11
  /**
10
12
  * Creates a standard Node.js HTTP request handler.
11
13
  */
12
14
  function createNodeHandler(app, options) {
13
15
  const server = new server_1.ObjectQLServer(app);
16
+ const routes = (0, types_1.resolveApiRoutes)(options === null || options === void 0 ? void 0 : options.routes);
14
17
  // Initialize file storage
18
+ const defaultBaseUrl = process.env.OBJECTQL_BASE_URL || `http://localhost:3000${routes.files}`;
15
19
  const fileStorage = (options === null || options === void 0 ? void 0 : options.fileStorage) || new storage_1.LocalFileStorage({
16
20
  baseDir: process.env.OBJECTQL_UPLOAD_DIR || './uploads',
17
- baseUrl: process.env.OBJECTQL_BASE_URL || 'http://localhost:3000/api/files'
21
+ baseUrl: defaultBaseUrl
18
22
  });
19
23
  // Create file handlers
20
24
  const uploadHandler = (0, file_handler_1.createFileUploadHandler)(fileStorage, app);
@@ -22,6 +26,23 @@ function createNodeHandler(app, options) {
22
26
  const downloadHandler = (0, file_handler_1.createFileDownloadHandler)(fileStorage);
23
27
  return async (req, res) => {
24
28
  var _a;
29
+ // CORS Headers
30
+ const origin = req.headers.origin;
31
+ if (origin) {
32
+ res.setHeader('Access-Control-Allow-Origin', origin);
33
+ res.setHeader('Access-Control-Allow-Credentials', 'true');
34
+ }
35
+ else {
36
+ res.setHeader('Access-Control-Allow-Origin', '*');
37
+ }
38
+ res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, PATCH, OPTIONS');
39
+ res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization, X-Requested-With');
40
+ // Handle preflight requests
41
+ if (req.method === 'OPTIONS') {
42
+ res.statusCode = 204;
43
+ res.end();
44
+ return;
45
+ }
25
46
  // Handle OpenAPI spec request
26
47
  if (req.method === 'GET' && ((_a = req.url) === null || _a === void 0 ? void 0 : _a.endsWith('/openapi.json'))) {
27
48
  const spec = (0, openapi_1.generateOpenAPI)(app);
@@ -45,23 +66,23 @@ function createNodeHandler(app, options) {
45
66
  let statusCode = 200;
46
67
  if (result.error) {
47
68
  switch (result.error.code) {
48
- case types_1.ErrorCode.INVALID_REQUEST:
49
- case types_1.ErrorCode.VALIDATION_ERROR:
69
+ case types_2.ErrorCode.INVALID_REQUEST:
70
+ case types_2.ErrorCode.VALIDATION_ERROR:
50
71
  statusCode = 400;
51
72
  break;
52
- case types_1.ErrorCode.UNAUTHORIZED:
73
+ case types_2.ErrorCode.UNAUTHORIZED:
53
74
  statusCode = 401;
54
75
  break;
55
- case types_1.ErrorCode.FORBIDDEN:
76
+ case types_2.ErrorCode.FORBIDDEN:
56
77
  statusCode = 403;
57
78
  break;
58
- case types_1.ErrorCode.NOT_FOUND:
79
+ case types_2.ErrorCode.NOT_FOUND:
59
80
  statusCode = 404;
60
81
  break;
61
- case types_1.ErrorCode.CONFLICT:
82
+ case types_2.ErrorCode.CONFLICT:
62
83
  statusCode = 409;
63
84
  break;
64
- case types_1.ErrorCode.RATE_LIMIT_EXCEEDED:
85
+ case types_2.ErrorCode.RATE_LIMIT_EXCEEDED:
65
86
  statusCode = 429;
66
87
  break;
67
88
  default:
@@ -77,7 +98,7 @@ function createNodeHandler(app, options) {
77
98
  res.statusCode = 500;
78
99
  res.end(JSON.stringify({
79
100
  error: {
80
- code: types_1.ErrorCode.INTERNAL_ERROR,
101
+ code: types_2.ErrorCode.INTERNAL_ERROR,
81
102
  message: 'Internal Server Error'
82
103
  }
83
104
  }));
@@ -87,22 +108,23 @@ function createNodeHandler(app, options) {
87
108
  const urlObj = new URL(req.url || '/', `http://${req.headers.host || 'localhost'}`);
88
109
  const pathName = urlObj.pathname;
89
110
  const method = req.method;
90
- // 1. JSON-RPC: POST /api/objectql
91
- if (pathName === '/api/objectql' && method === 'POST') {
111
+ // 1. JSON-RPC: POST {rpcPath}
112
+ if (pathName === routes.rpc && method === 'POST') {
92
113
  await processBody(req, async (json) => {
93
114
  await handleRequest(json);
94
115
  }, res);
95
116
  return;
96
117
  }
97
- // 2. REST API: /api/data/:object and /api/data/:object/:id
98
- // Regex to match /api/data/objectName(/id)?
99
- const restMatch = pathName.match(/^\/api\/data\/([^/]+)(?:\/(.+))?$/);
118
+ // 2. REST API: {dataPath}/:object and {dataPath}/:object/:id
119
+ // Regex to match {dataPath}/objectName(/id)?
120
+ const escapedDataPath = (0, utils_1.escapeRegexPath)(routes.data);
121
+ const restMatch = pathName.match(new RegExp(`^${escapedDataPath}/([^/]+)(?:/(.+))?$`));
100
122
  if (restMatch) {
101
123
  const objectName = restMatch[1];
102
124
  const id = restMatch[2];
103
125
  const query = Object.fromEntries(urlObj.searchParams.entries());
104
126
  if (method === 'GET') {
105
- // GET /api/data/:object/:id -> findOne
127
+ // GET {dataPath}/:object/:id -> findOne
106
128
  if (id) {
107
129
  await handleRequest({
108
130
  op: 'findOne',
@@ -110,7 +132,7 @@ function createNodeHandler(app, options) {
110
132
  args: id
111
133
  });
112
134
  }
113
- // GET /api/data/:object -> find (List)
135
+ // GET {dataPath}/:object -> find (List)
114
136
  else {
115
137
  // Parse standard params
116
138
  const args = {};
@@ -133,7 +155,7 @@ function createNodeHandler(app, options) {
133
155
  return;
134
156
  }
135
157
  if (method === 'POST' && !id) {
136
- // POST /api/data/:object -> create
158
+ // POST {dataPath}/:object -> create
137
159
  await processBody(req, async (body) => {
138
160
  await handleRequest({
139
161
  op: 'create',
@@ -144,7 +166,7 @@ function createNodeHandler(app, options) {
144
166
  return;
145
167
  }
146
168
  if (method === 'PATCH' && id) {
147
- // PATCH /api/data/:object/:id -> update
169
+ // PATCH {dataPath}/:object/:id -> update
148
170
  await processBody(req, async (body) => {
149
171
  await handleRequest({
150
172
  op: 'update',
@@ -158,7 +180,7 @@ function createNodeHandler(app, options) {
158
180
  return;
159
181
  }
160
182
  if (method === 'DELETE' && id) {
161
- // DELETE /api/data/:object/:id -> delete
183
+ // DELETE {dataPath}/:object/:id -> delete
162
184
  await handleRequest({
163
185
  op: 'delete',
164
186
  object: objectName,
@@ -168,18 +190,19 @@ function createNodeHandler(app, options) {
168
190
  }
169
191
  }
170
192
  // File Upload Endpoints
171
- // POST /api/files/upload - Single file upload
172
- if (pathName === '/api/files/upload' && method === 'POST') {
193
+ // POST {filesPath}/upload - Single file upload
194
+ if (pathName === `${routes.files}/upload` && method === 'POST') {
173
195
  await uploadHandler(req, res);
174
196
  return;
175
197
  }
176
- // POST /api/files/upload/batch - Batch file upload
177
- if (pathName === '/api/files/upload/batch' && method === 'POST') {
198
+ // POST {filesPath}/upload/batch - Batch file upload
199
+ if (pathName === `${routes.files}/upload/batch` && method === 'POST') {
178
200
  await batchUploadHandler(req, res);
179
201
  return;
180
202
  }
181
- // GET /api/files/:fileId - Download file
182
- const fileMatch = pathName.match(/^\/api\/files\/([^/]+)$/);
203
+ // GET {filesPath}/:fileId - Download file
204
+ const escapedFilesPath = (0, utils_1.escapeRegexPath)(routes.files);
205
+ const fileMatch = pathName.match(new RegExp(`^${escapedFilesPath}/([^/]+)$`));
183
206
  if (fileMatch && method === 'GET') {
184
207
  const fileId = fileMatch[1];
185
208
  await downloadHandler(req, res, fileId);
@@ -187,7 +210,7 @@ function createNodeHandler(app, options) {
187
210
  }
188
211
  // Fallback or 404
189
212
  if (req.method === 'POST') {
190
- // Fallback for root POSTs if people forget /api/objectql but send to /api something
213
+ // Fallback for root POSTs if people forget {rpcPath} but send to /api something
191
214
  await processBody(req, handleRequest, res);
192
215
  return;
193
216
  }
@@ -195,11 +218,11 @@ function createNodeHandler(app, options) {
195
218
  if (pathName === '/') {
196
219
  res.setHeader('Allow', 'POST');
197
220
  res.statusCode = 405;
198
- res.end(JSON.stringify({ error: { code: types_1.ErrorCode.INVALID_REQUEST, message: 'Method Not Allowed. Use POST for JSON-RPC.' } }));
221
+ res.end(JSON.stringify({ error: { code: types_2.ErrorCode.INVALID_REQUEST, message: 'Method Not Allowed. Use POST for JSON-RPC.' } }));
199
222
  return;
200
223
  }
201
224
  res.statusCode = 404;
202
- res.end(JSON.stringify({ error: { code: types_1.ErrorCode.NOT_FOUND, message: 'Not Found' } }));
225
+ res.end(JSON.stringify({ error: { code: types_2.ErrorCode.NOT_FOUND, message: 'Not Found' } }));
203
226
  };
204
227
  }
205
228
  // Helper to process body
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/adapters/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/adapters/node.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,27 @@
1
- import { IObjectQL } from '@objectql/types';
1
+ import { IObjectQL, ApiRouteConfig } from '@objectql/types';
2
2
  import { IncomingMessage, ServerResponse } from 'http';
3
+ /**
4
+ * Options for createRESTHandler
5
+ */
6
+ export interface RESTHandlerOptions {
7
+ /** Custom API route configuration */
8
+ routes?: ApiRouteConfig;
9
+ }
3
10
  /**
4
11
  * Creates a REST-style HTTP request handler for ObjectQL
5
12
  *
6
- * Endpoints:
7
- * - GET /api/data/:object - List records
8
- * - GET /api/data/:object/:id - Get single record
9
- * - POST /api/data/:object - Create record (or create many if array)
10
- * - POST /api/data/:object/bulk-update - Update many records
11
- * - POST /api/data/:object/bulk-delete - Delete many records
12
- * - PUT /api/data/:object/:id - Update record
13
- * - DELETE /api/data/:object/:id - Delete record
13
+ * Default Endpoints (configurable via routes option):
14
+ * - GET {dataPath}/:object - List records
15
+ * - GET {dataPath}/:object/:id - Get single record
16
+ * - POST {dataPath}/:object - Create record (or create many if array)
17
+ * - POST {dataPath}/:object/bulk-update - Update many records
18
+ * - POST {dataPath}/:object/bulk-delete - Delete many records
19
+ * - PUT {dataPath}/:object/:id - Update record
20
+ * - DELETE {dataPath}/:object/:id - Delete record
21
+ *
22
+ * @param app - ObjectQL application instance
23
+ * @param options - Optional configuration including custom routes
14
24
  */
15
- export declare function createRESTHandler(app: IObjectQL): (req: IncomingMessage & {
25
+ export declare function createRESTHandler(app: IObjectQL, options?: RESTHandlerOptions): (req: IncomingMessage & {
16
26
  body?: any;
17
27
  }, res: ServerResponse) => Promise<void>;
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createRESTHandler = createRESTHandler;
4
+ const types_1 = require("@objectql/types");
4
5
  const server_1 = require("../server");
5
- const types_1 = require("../types");
6
+ const types_2 = require("../types");
7
+ const utils_1 = require("../utils");
6
8
  /**
7
9
  * Parse query string parameters
8
10
  */
@@ -60,17 +62,22 @@ function sendJSON(res, statusCode, data) {
60
62
  /**
61
63
  * Creates a REST-style HTTP request handler for ObjectQL
62
64
  *
63
- * Endpoints:
64
- * - GET /api/data/:object - List records
65
- * - GET /api/data/:object/:id - Get single record
66
- * - POST /api/data/:object - Create record (or create many if array)
67
- * - POST /api/data/:object/bulk-update - Update many records
68
- * - POST /api/data/:object/bulk-delete - Delete many records
69
- * - PUT /api/data/:object/:id - Update record
70
- * - DELETE /api/data/:object/:id - Delete record
65
+ * Default Endpoints (configurable via routes option):
66
+ * - GET {dataPath}/:object - List records
67
+ * - GET {dataPath}/:object/:id - Get single record
68
+ * - POST {dataPath}/:object - Create record (or create many if array)
69
+ * - POST {dataPath}/:object/bulk-update - Update many records
70
+ * - POST {dataPath}/:object/bulk-delete - Delete many records
71
+ * - PUT {dataPath}/:object/:id - Update record
72
+ * - DELETE {dataPath}/:object/:id - Delete record
73
+ *
74
+ * @param app - ObjectQL application instance
75
+ * @param options - Optional configuration including custom routes
71
76
  */
72
- function createRESTHandler(app) {
77
+ function createRESTHandler(app, options) {
73
78
  const server = new server_1.ObjectQLServer(app);
79
+ const routes = (0, types_1.resolveApiRoutes)(options === null || options === void 0 ? void 0 : options.routes);
80
+ const dataPath = routes.data;
74
81
  return async (req, res) => {
75
82
  try {
76
83
  // CORS headers
@@ -94,12 +101,13 @@ function createRESTHandler(app) {
94
101
  }
95
102
  const url = req.url || '';
96
103
  const method = req.method || 'GET';
97
- // Parse URL: /api/data/:object or /api/data/:object/:id or /api/data/:object/bulk-*
98
- const match = url.match(/^\/api\/data\/([^\/\?]+)(?:\/([^\/\?]+))?(\?.*)?$/);
104
+ // Parse URL: {dataPath}/:object or {dataPath}/:object/:id or {dataPath}/:object/bulk-*
105
+ const escapedPath = (0, utils_1.escapeRegexPath)(dataPath);
106
+ const match = url.match(new RegExp(`^${escapedPath}/([^/\\?]+)(?:/([^/\\?]+))?(\\?.*)?$`));
99
107
  if (!match) {
100
108
  sendJSON(res, 404, {
101
109
  error: {
102
- code: types_1.ErrorCode.NOT_FOUND,
110
+ code: types_2.ErrorCode.NOT_FOUND,
103
111
  message: 'Invalid REST API endpoint'
104
112
  }
105
113
  });
@@ -119,7 +127,7 @@ function createRESTHandler(app) {
119
127
  };
120
128
  }
121
129
  else {
122
- // GET /api/data/:object - List records
130
+ // GET {dataPath}/:object - List records
123
131
  const args = {};
124
132
  // Parse query parameters
125
133
  if (queryParams.filter) {
@@ -153,7 +161,7 @@ function createRESTHandler(app) {
153
161
  const createBody = req.body || await readBody(req);
154
162
  // Check for bulk operations
155
163
  if (id === 'bulk-update') {
156
- // POST /api/data/:object/bulk-update - Update many records
164
+ // POST {dataPath}/:object/bulk-update - Update many records
157
165
  qlRequest = {
158
166
  op: 'updateMany',
159
167
  object: objectName,
@@ -164,7 +172,7 @@ function createRESTHandler(app) {
164
172
  };
165
173
  }
166
174
  else if (id === 'bulk-delete') {
167
- // POST /api/data/:object/bulk-delete - Delete many records
175
+ // POST {dataPath}/:object/bulk-delete - Delete many records
168
176
  qlRequest = {
169
177
  op: 'deleteMany',
170
178
  object: objectName,
@@ -174,7 +182,7 @@ function createRESTHandler(app) {
174
182
  };
175
183
  }
176
184
  else if (Array.isArray(createBody)) {
177
- // POST /api/data/:object with array - Create many records
185
+ // POST {dataPath}/:object with array - Create many records
178
186
  qlRequest = {
179
187
  op: 'createMany',
180
188
  object: objectName,
@@ -182,7 +190,7 @@ function createRESTHandler(app) {
182
190
  };
183
191
  }
184
192
  else {
185
- // POST /api/data/:object - Create single record
193
+ // POST {dataPath}/:object - Create single record
186
194
  qlRequest = {
187
195
  op: 'create',
188
196
  object: objectName,
@@ -192,11 +200,11 @@ function createRESTHandler(app) {
192
200
  break;
193
201
  case 'PUT':
194
202
  case 'PATCH':
195
- // PUT /api/data/:object/:id - Update record
203
+ // PUT {dataPath}/:object/:id - Update record
196
204
  if (!id) {
197
205
  sendJSON(res, 400, {
198
206
  error: {
199
- code: types_1.ErrorCode.INVALID_REQUEST,
207
+ code: types_2.ErrorCode.INVALID_REQUEST,
200
208
  message: 'ID is required for update operation'
201
209
  }
202
210
  });
@@ -213,11 +221,11 @@ function createRESTHandler(app) {
213
221
  };
214
222
  break;
215
223
  case 'DELETE':
216
- // DELETE /api/data/:object/:id - Delete record
224
+ // DELETE {dataPath}/:object/:id - Delete record
217
225
  if (!id) {
218
226
  sendJSON(res, 400, {
219
227
  error: {
220
- code: types_1.ErrorCode.INVALID_REQUEST,
228
+ code: types_2.ErrorCode.INVALID_REQUEST,
221
229
  message: 'ID is required for delete operation'
222
230
  }
223
231
  });
@@ -232,7 +240,7 @@ function createRESTHandler(app) {
232
240
  default:
233
241
  sendJSON(res, 405, {
234
242
  error: {
235
- code: types_1.ErrorCode.INVALID_REQUEST,
243
+ code: types_2.ErrorCode.INVALID_REQUEST,
236
244
  message: 'Method not allowed'
237
245
  }
238
246
  });
@@ -244,23 +252,23 @@ function createRESTHandler(app) {
244
252
  let statusCode = 200;
245
253
  if (result.error) {
246
254
  switch (result.error.code) {
247
- case types_1.ErrorCode.INVALID_REQUEST:
248
- case types_1.ErrorCode.VALIDATION_ERROR:
255
+ case types_2.ErrorCode.INVALID_REQUEST:
256
+ case types_2.ErrorCode.VALIDATION_ERROR:
249
257
  statusCode = 400;
250
258
  break;
251
- case types_1.ErrorCode.UNAUTHORIZED:
259
+ case types_2.ErrorCode.UNAUTHORIZED:
252
260
  statusCode = 401;
253
261
  break;
254
- case types_1.ErrorCode.FORBIDDEN:
262
+ case types_2.ErrorCode.FORBIDDEN:
255
263
  statusCode = 403;
256
264
  break;
257
- case types_1.ErrorCode.NOT_FOUND:
265
+ case types_2.ErrorCode.NOT_FOUND:
258
266
  statusCode = 404;
259
267
  break;
260
- case types_1.ErrorCode.CONFLICT:
268
+ case types_2.ErrorCode.CONFLICT:
261
269
  statusCode = 409;
262
270
  break;
263
- case types_1.ErrorCode.RATE_LIMIT_EXCEEDED:
271
+ case types_2.ErrorCode.RATE_LIMIT_EXCEEDED:
264
272
  statusCode = 429;
265
273
  break;
266
274
  default:
@@ -279,7 +287,7 @@ function createRESTHandler(app) {
279
287
  console.error('[REST Handler] Error:', e);
280
288
  sendJSON(res, 500, {
281
289
  error: {
282
- code: types_1.ErrorCode.INTERNAL_ERROR,
290
+ code: types_2.ErrorCode.INTERNAL_ERROR,
283
291
  message: 'Internal server error'
284
292
  }
285
293
  });