digitaltwin-core 0.11.2 → 0.12.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.
Files changed (40) hide show
  1. package/dist/components/async_upload.d.ts +20 -0
  2. package/dist/components/async_upload.d.ts.map +1 -0
  3. package/dist/components/async_upload.js +10 -0
  4. package/dist/components/async_upload.js.map +1 -0
  5. package/dist/components/custom_table_manager.d.ts.map +1 -1
  6. package/dist/components/custom_table_manager.js +16 -14
  7. package/dist/components/custom_table_manager.js.map +1 -1
  8. package/dist/components/tileset_manager.d.ts +35 -9
  9. package/dist/components/tileset_manager.d.ts.map +1 -1
  10. package/dist/components/tileset_manager.js +233 -84
  11. package/dist/components/tileset_manager.js.map +1 -1
  12. package/dist/components/types.d.ts +2 -0
  13. package/dist/components/types.d.ts.map +1 -1
  14. package/dist/database/adapters/knex_database_adapter.d.ts.map +1 -1
  15. package/dist/database/adapters/knex_database_adapter.js +38 -0
  16. package/dist/database/adapters/knex_database_adapter.js.map +1 -1
  17. package/dist/engine/digital_twin_engine.d.ts.map +1 -1
  18. package/dist/engine/digital_twin_engine.js +51 -4
  19. package/dist/engine/digital_twin_engine.js.map +1 -1
  20. package/dist/engine/queue_manager.d.ts +8 -0
  21. package/dist/engine/queue_manager.d.ts.map +1 -1
  22. package/dist/engine/queue_manager.js +30 -4
  23. package/dist/engine/queue_manager.js.map +1 -1
  24. package/dist/engine/upload_processor.d.ts +66 -0
  25. package/dist/engine/upload_processor.d.ts.map +1 -0
  26. package/dist/engine/upload_processor.js +142 -0
  27. package/dist/engine/upload_processor.js.map +1 -0
  28. package/dist/index.d.ts +2 -0
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/storage/adapters/ovh_storage_service.d.ts +6 -0
  33. package/dist/storage/adapters/ovh_storage_service.d.ts.map +1 -1
  34. package/dist/storage/adapters/ovh_storage_service.js +32 -1
  35. package/dist/storage/adapters/ovh_storage_service.js.map +1 -1
  36. package/dist/storage/storage_service.d.ts +19 -0
  37. package/dist/storage/storage_service.d.ts.map +1 -1
  38. package/dist/storage/storage_service.js +22 -0
  39. package/dist/storage/storage_service.js.map +1 -1
  40. package/package.json +1 -1
@@ -42,19 +42,34 @@ import fs from 'fs/promises';
42
42
  * ```
43
43
  */
44
44
  export class TilesetManager extends AssetsManager {
45
+ constructor() {
46
+ super(...arguments);
47
+ /** Upload queue for async processing (injected by engine) */
48
+ this.uploadQueue = null;
49
+ }
50
+ /**
51
+ * Set the upload queue for async job processing.
52
+ * Called by DigitalTwinEngine during initialization.
53
+ */
54
+ setUploadQueue(queue) {
55
+ this.uploadQueue = queue;
56
+ }
45
57
  /**
46
- * Override the upload handler to extract ZIP files and store individual files.
58
+ * Override the upload handler to support async processing for large files.
47
59
  *
48
- * Flow:
60
+ * When uploadQueue is available (async mode):
49
61
  * 1. Validates request and authentication
50
- * 2. Reads uploaded ZIP file
51
- * 3. Extracts all files and stores them individually
52
- * 4. Detects the root tileset.json file
53
- * 5. Saves metadata with file_index containing all file paths
54
- * 6. Deletes the temporary ZIP file
62
+ * 2. Creates a database record with status 'pending'
63
+ * 3. Queues a job for background processing
64
+ * 4. Returns immediately with job ID
65
+ *
66
+ * When uploadQueue is not available (sync mode - fallback):
67
+ * 1. Validates request and authentication
68
+ * 2. Extracts ZIP and stores files synchronously
69
+ * 3. Returns with completed tileset info
55
70
  *
56
71
  * @param req - HTTP request with ZIP file upload
57
- * @returns DataResponse with upload result including tileset.json URL
72
+ * @returns DataResponse with upload result (async: job info, sync: tileset info)
58
73
  */
59
74
  async handleUpload(req) {
60
75
  try {
@@ -151,89 +166,219 @@ export class TilesetManager extends AssetsManager {
151
166
  headers: { 'Content-Type': 'application/json' }
152
167
  };
153
168
  }
154
- // Read ZIP file content
155
- let zipBuffer;
156
- try {
157
- if (fileBuffer) {
158
- zipBuffer = fileBuffer;
159
- }
160
- else {
161
- zipBuffer = await fs.readFile(filePath);
162
- }
169
+ const config = this.getConfiguration();
170
+ // ASYNC MODE: Queue job for background processing
171
+ if (this.uploadQueue && filePath) {
172
+ return this.handleAsyncUpload(req, userId, filePath, filename, description, config);
173
+ }
174
+ // SYNC MODE: Process immediately (fallback or memory buffer)
175
+ return this.handleSyncUpload(req, userId, filePath, fileBuffer, filename, description, config);
176
+ }
177
+ catch (error) {
178
+ return {
179
+ status: 500,
180
+ content: JSON.stringify({
181
+ error: error instanceof Error ? error.message : 'Unknown error'
182
+ }),
183
+ headers: { 'Content-Type': 'application/json' }
184
+ };
185
+ }
186
+ }
187
+ /**
188
+ * Handle upload asynchronously by queuing a job
189
+ * @private
190
+ */
191
+ async handleAsyncUpload(req, userId, filePath, filename, description, config) {
192
+ const now = new Date();
193
+ // Create a pending record in the database
194
+ const metadata = {
195
+ name: config.name,
196
+ type: 'application/json',
197
+ url: '', // Will be set by worker after extraction
198
+ date: now,
199
+ description,
200
+ source: req.body.source || '',
201
+ owner_id: userId,
202
+ filename: filename,
203
+ is_public: req.body.is_public !== undefined ? Boolean(req.body.is_public) : true,
204
+ upload_status: 'pending'
205
+ };
206
+ const savedRecord = await this.db.save(metadata);
207
+ const recordId = savedRecord.id;
208
+ // Queue the processing job
209
+ const jobData = {
210
+ type: 'tileset',
211
+ recordId,
212
+ tempFilePath: filePath,
213
+ componentName: config.name,
214
+ userId,
215
+ filename,
216
+ description
217
+ };
218
+ // uploadQueue is guaranteed to exist here (checked in handleUpload)
219
+ const job = await this.uploadQueue?.add(`tileset-${recordId}`, jobData, {
220
+ jobId: `tileset-upload-${recordId}`
221
+ });
222
+ if (!job) {
223
+ throw new Error('Failed to queue upload job');
224
+ }
225
+ // Update record with job ID
226
+ await this.db.updateById(config.name, recordId, {
227
+ upload_job_id: job.id
228
+ });
229
+ return {
230
+ status: 202, // Accepted - processing started
231
+ content: JSON.stringify({
232
+ message: 'Tileset upload accepted, processing in background',
233
+ id: recordId,
234
+ job_id: job.id,
235
+ status: 'pending',
236
+ status_url: `/${config.endpoint}/${recordId}/status`
237
+ }),
238
+ headers: { 'Content-Type': 'application/json' }
239
+ };
240
+ }
241
+ /**
242
+ * Handle upload synchronously (original behavior)
243
+ * @private
244
+ */
245
+ async handleSyncUpload(req, userId, filePath, fileBuffer, filename, description, config) {
246
+ // Read ZIP file content
247
+ let zipBuffer;
248
+ try {
249
+ if (fileBuffer) {
250
+ zipBuffer = fileBuffer;
163
251
  }
164
- catch (error) {
252
+ else if (filePath) {
253
+ zipBuffer = await fs.readFile(filePath);
254
+ }
255
+ else {
256
+ throw new Error('No file data available');
257
+ }
258
+ }
259
+ catch (error) {
260
+ return {
261
+ status: 500,
262
+ content: JSON.stringify({
263
+ error: `Failed to read uploaded file: ${error instanceof Error ? error.message : 'Unknown error'}`
264
+ }),
265
+ headers: { 'Content-Type': 'application/json' }
266
+ };
267
+ }
268
+ try {
269
+ const now = new Date();
270
+ // Generate unique ID for this tileset (timestamp-based)
271
+ const tilesetId = now.getTime().toString();
272
+ // Base path for storing extracted files: componentName/tilesetId
273
+ const basePath = `${config.name}/${tilesetId}`;
274
+ // Extract ZIP and store all files individually
275
+ const extractResult = await extractAndStoreArchive(zipBuffer, this.storage, basePath);
276
+ // Validate that we found a tileset.json
277
+ if (!extractResult.root_file) {
278
+ // Clean up stored files if no tileset.json found using batch delete
279
+ if (extractResult.files.length > 0) {
280
+ const filePaths = extractResult.files.map(file => file.path);
281
+ await this.storage.deleteBatch(filePaths);
282
+ }
165
283
  return {
166
- status: 500,
284
+ status: 400,
167
285
  content: JSON.stringify({
168
- error: `Failed to read uploaded file: ${error instanceof Error ? error.message : 'Unknown error'}`
286
+ error: 'Invalid tileset: no tileset.json found in the ZIP archive'
169
287
  }),
170
288
  headers: { 'Content-Type': 'application/json' }
171
289
  };
172
290
  }
173
- try {
174
- const config = this.getConfiguration();
175
- const now = new Date();
176
- // Generate unique ID for this tileset (timestamp-based)
177
- const tilesetId = now.getTime().toString();
178
- // Base path for storing extracted files: componentName/tilesetId
179
- const basePath = `${config.name}/${tilesetId}`;
180
- // Extract ZIP and store all files individually
181
- const extractResult = await extractAndStoreArchive(zipBuffer, this.storage, basePath);
182
- // Validate that we found a tileset.json
183
- if (!extractResult.root_file) {
184
- // Clean up stored files if no tileset.json found
185
- for (const file of extractResult.files) {
186
- await this.storage.delete(file.path).catch(() => { });
187
- }
188
- return {
189
- status: 400,
190
- content: JSON.stringify({
191
- error: 'Invalid tileset: no tileset.json found in the ZIP archive'
192
- }),
193
- headers: { 'Content-Type': 'application/json' }
194
- };
291
+ // Create metadata with file_index
292
+ // url stores the base path for all extracted files
293
+ const metadata = {
294
+ name: config.name,
295
+ type: 'application/json', // tileset.json content type
296
+ url: basePath, // Base path for all files (componentName/timestamp)
297
+ date: now,
298
+ description,
299
+ source: req.body.source || '',
300
+ owner_id: userId,
301
+ filename: filename,
302
+ is_public: req.body.is_public !== undefined ? Boolean(req.body.is_public) : true,
303
+ file_index: {
304
+ files: extractResult.files,
305
+ root_file: extractResult.root_file
195
306
  }
196
- // Create metadata with file_index
197
- // url stores the base path for all extracted files
198
- const metadata = {
199
- name: config.name,
200
- type: 'application/json', // tileset.json content type
201
- url: basePath, // Base path for all files (componentName/timestamp)
202
- date: now,
203
- description,
204
- source: req.body.source || '',
205
- owner_id: userId,
206
- filename: filename,
207
- is_public: req.body.is_public !== undefined ? Boolean(req.body.is_public) : true,
208
- file_index: {
209
- files: extractResult.files,
210
- root_file: extractResult.root_file
211
- }
307
+ };
308
+ const savedRecord = await this.db.save(metadata);
309
+ // Clean up temporary file after successful upload
310
+ if (filePath) {
311
+ await fs.unlink(filePath).catch(() => { });
312
+ }
313
+ return {
314
+ status: 200,
315
+ content: JSON.stringify({
316
+ message: 'Tileset uploaded and extracted successfully',
317
+ id: savedRecord.id,
318
+ file_count: extractResult.file_count,
319
+ root_file: extractResult.root_file,
320
+ tileset_url: `/${config.endpoint}/${savedRecord.id}/files/${extractResult.root_file}`
321
+ }),
322
+ headers: { 'Content-Type': 'application/json' }
323
+ };
324
+ }
325
+ catch (error) {
326
+ // Clean up temporary file even on error
327
+ if (filePath) {
328
+ await fs.unlink(filePath).catch(() => { });
329
+ }
330
+ throw error;
331
+ }
332
+ }
333
+ /**
334
+ * Get the status of an upload job
335
+ */
336
+ async handleGetStatus(req) {
337
+ try {
338
+ const { id } = req.params || {};
339
+ if (!id) {
340
+ return {
341
+ status: 400,
342
+ content: JSON.stringify({ error: 'Asset ID is required' }),
343
+ headers: { 'Content-Type': 'application/json' }
212
344
  };
213
- const savedRecord = await this.db.save(metadata);
214
- // Clean up temporary file after successful upload
215
- if (filePath) {
216
- await fs.unlink(filePath).catch(() => { });
217
- }
345
+ }
346
+ const asset = await this.getAssetById(id);
347
+ if (!asset) {
348
+ return {
349
+ status: 404,
350
+ content: JSON.stringify({ error: 'Tileset not found' }),
351
+ headers: { 'Content-Type': 'application/json' }
352
+ };
353
+ }
354
+ const config = this.getConfiguration();
355
+ const record = asset;
356
+ // If completed, return full info
357
+ if (!record.upload_status || record.upload_status === 'completed') {
358
+ const fileIndex = record.file_index;
359
+ const rootFile = fileIndex?.root_file || 'tileset.json';
218
360
  return {
219
361
  status: 200,
220
362
  content: JSON.stringify({
221
- message: 'Tileset uploaded and extracted successfully',
222
- id: savedRecord.id,
223
- file_count: extractResult.file_count,
224
- root_file: extractResult.root_file,
225
- tileset_url: `/${config.endpoint}/${savedRecord.id}/files/${extractResult.root_file}`
363
+ id: record.id,
364
+ status: 'completed',
365
+ tileset_url: `/${config.endpoint}/${record.id}/files/${rootFile}`,
366
+ file_count: fileIndex?.files?.length || 0
226
367
  }),
227
368
  headers: { 'Content-Type': 'application/json' }
228
369
  };
229
370
  }
230
- catch (error) {
231
- // Clean up temporary file even on error
232
- if (filePath) {
233
- await fs.unlink(filePath).catch(() => { });
234
- }
235
- throw error;
236
- }
371
+ // Return current status
372
+ return {
373
+ status: 200,
374
+ content: JSON.stringify({
375
+ id: record.id,
376
+ status: record.upload_status,
377
+ job_id: record.upload_job_id,
378
+ error: record.upload_error || undefined
379
+ }),
380
+ headers: { 'Content-Type': 'application/json' }
381
+ };
237
382
  }
238
383
  catch (error) {
239
384
  return {
@@ -516,14 +661,11 @@ export class TilesetManager extends AssetsManager {
516
661
  headers: { 'Content-Type': 'application/json' }
517
662
  };
518
663
  }
519
- // Delete all extracted files from storage
664
+ // Delete all extracted files from storage using batch delete for performance
520
665
  const fileIndex = asset.file_index;
521
- if (fileIndex?.files) {
522
- for (const file of fileIndex.files) {
523
- await this.storage.delete(file.path).catch(() => {
524
- // Ignore individual file deletion errors
525
- });
526
- }
666
+ if (fileIndex?.files && fileIndex.files.length > 0) {
667
+ const filePaths = fileIndex.files.map(file => file.path);
668
+ await this.storage.deleteBatch(filePaths);
527
669
  }
528
670
  // Delete database record
529
671
  await this.deleteAssetById(id);
@@ -557,9 +699,16 @@ export class TilesetManager extends AssetsManager {
557
699
  // Also remove download endpoint - not applicable for extracted tilesets
558
700
  !(ep.method === 'get' && ep.path === `/${config.endpoint}/:id/download`));
559
701
  // IMPORTANT: More specific routes must come BEFORE less specific ones
560
- // /:id/files/* must be registered before /:id to avoid incorrect matching
702
+ // /:id/files/* and /:id/status must be registered before /:id to avoid incorrect matching
561
703
  return [
562
- // File serving endpoint FIRST (most specific)
704
+ // Status endpoint FIRST (most specific)
705
+ {
706
+ method: 'get',
707
+ path: `/${config.endpoint}/:id/status`,
708
+ handler: this.handleGetStatus.bind(this),
709
+ responseType: 'application/json'
710
+ },
711
+ // File serving endpoint (also specific)
563
712
  {
564
713
  method: 'get',
565
714
  path: `/${config.endpoint}/:id/files/*`,
@@ -1 +1 @@
1
- {"version":3,"file":"tileset_manager.js","sourceRoot":"","sources":["../../src/components/tileset_manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tileset_manager.js","sourceRoot":"","sources":["../../src/components/tileset_manager.ts"],"names":[],"mappings":"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"}
@@ -220,5 +220,7 @@ export interface EndpointDefinition {
220
220
  method: 'get' | 'post' | 'put' | 'delete';
221
221
  /** Name of the method in the manager class to handle this endpoint */
222
222
  handler: string;
223
+ /** Optional response content type (defaults to 'application/json') */
224
+ responseType?: string;
223
225
  }
224
226
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/components/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,sBAAsB;IACnC,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAA;IACnB,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,6HAA6H;IAC7H,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACtE,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IAClE,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IAClE;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAE9B,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAE1B,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAE1B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAA;IAEhB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,4DAA4D;IAC5D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IAEvB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAE5B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,CAAA;IAE/C;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,sBAAsB;IAC/D,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,YAAY;IACzB,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;IACd,8DAA8D;IAC9D,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,kBAAkB;IAC/B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,OAAO,EAAE;QACL,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;KAC/B,CAAA;IACD,2DAA2D;IAC3D,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAChC,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAA;IACZ,oCAAoC;IACpC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACzC,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAA;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/components/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,sBAAsB;IACnC,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAA;IACnB,qDAAqD;IACrD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,6HAA6H;IAC7H,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACtE,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IAClE,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IAClE;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAE9B,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAE1B,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAE1B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAA;IAEhB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,4DAA4D;IAC5D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IAEvB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAE5B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,CAAA;IAE/C;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,sBAAsB;IAC/D,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,YAAY;IACzB,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;IACd,8DAA8D;IAC9D,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,kBAAkB;IAC/B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,OAAO,EAAE;QACL,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAA;KAC/B,CAAA;IACD,2DAA2D;IAC3D,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAChC,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAA;IACZ,oCAAoC;IACpC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACzC,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAA;IACf,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAA;CACxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"knex_database_adapter.d.ts","sourceRoot":"","sources":["../../../src/database/adapters/knex_database_adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knex_database_adapter.d.ts","sourceRoot":"","sources":["../../../src/database/adapters/knex_database_adapter.ts"],"names":[],"mappings":"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"}
@@ -141,6 +141,10 @@ export class KnexDatabaseAdapter extends DatabaseAdapter {
141
141
  // Multi-file asset support (for TilesetManager, etc.)
142
142
  // Stores JSON with file paths for extracted archives
143
143
  table.text('file_index').nullable();
144
+ // Async upload support (for large file processing)
145
+ table.string('upload_status', 20).nullable(); // pending, processing, completed, failed
146
+ table.text('upload_error').nullable();
147
+ table.string('upload_job_id', 100).nullable(); // BullMQ job ID for status tracking
144
148
  // Foreign key constraint to users table (if it exists)
145
149
  // Note: This will only work if users table exists first
146
150
  try {
@@ -279,6 +283,33 @@ export class KnexDatabaseAdapter extends DatabaseAdapter {
279
283
  });
280
284
  migrations.push(`Added column 'file_index' (TEXT nullable)`);
281
285
  }
286
+ },
287
+ upload_status: {
288
+ exists: await this.#knex.schema.hasColumn(name, 'upload_status'),
289
+ add: async () => {
290
+ await this.#knex.schema.alterTable(name, table => {
291
+ table.string('upload_status', 20).nullable().defaultTo(null);
292
+ });
293
+ migrations.push(`Added column 'upload_status' (VARCHAR(20) nullable)`);
294
+ }
295
+ },
296
+ upload_error: {
297
+ exists: await this.#knex.schema.hasColumn(name, 'upload_error'),
298
+ add: async () => {
299
+ await this.#knex.schema.alterTable(name, table => {
300
+ table.text('upload_error').nullable();
301
+ });
302
+ migrations.push(`Added column 'upload_error' (TEXT nullable)`);
303
+ }
304
+ },
305
+ upload_job_id: {
306
+ exists: await this.#knex.schema.hasColumn(name, 'upload_job_id'),
307
+ add: async () => {
308
+ await this.#knex.schema.alterTable(name, table => {
309
+ table.string('upload_job_id', 100).nullable();
310
+ });
311
+ migrations.push(`Added column 'upload_job_id' (VARCHAR(100) nullable)`);
312
+ }
282
313
  }
283
314
  };
284
315
  // Expected indexes
@@ -521,6 +552,13 @@ export class KnexDatabaseAdapter extends DatabaseAdapter {
521
552
  delete updateData.id;
522
553
  delete updateData.created_at;
523
554
  delete updateData.date;
555
+ // Serialize file_index to JSON string if present (stored as TEXT in DB)
556
+ if ('file_index' in updateData && updateData.file_index) {
557
+ updateData.file_index =
558
+ typeof updateData.file_index === 'string'
559
+ ? updateData.file_index
560
+ : JSON.stringify(updateData.file_index);
561
+ }
524
562
  const rowsAffected = await this.#knex(tableName).where({ id }).update(updateData);
525
563
  if (rowsAffected === 0) {
526
564
  throw new Error(`No record found with ID ${id} in table ${tableName}`);