@xuda.io/drive_module 1.1.1378 → 1.1.1380
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/index.mjs +45 -1
- package/package.json +1 -1
package/index.mjs
CHANGED
|
@@ -948,7 +948,9 @@ export const extract_drive_file = async (req, job_id, headers) => {
|
|
|
948
948
|
|
|
949
949
|
const ext = path.extname(file_path).toLowerCase();
|
|
950
950
|
|
|
951
|
-
|
|
951
|
+
const validation_ret = file_upload_validator(file_path);
|
|
952
|
+
|
|
953
|
+
if (!validation_ret.valid || validation_ret.category !== 'archive') {
|
|
952
954
|
throw new Error('error - invalid archive file');
|
|
953
955
|
}
|
|
954
956
|
|
|
@@ -2438,6 +2440,48 @@ export const file_upload_validator = function (file_name) {
|
|
|
2438
2440
|
case 'psd':
|
|
2439
2441
|
return { valid: true, category: 'image', mime: 'image/vnd.adobe.photoshop' };
|
|
2440
2442
|
|
|
2443
|
+
// ==============================
|
|
2444
|
+
// VALIDATE ARCHIVE & PACKAGE FILES
|
|
2445
|
+
// ==============================
|
|
2446
|
+
case 'zip':
|
|
2447
|
+
return { valid: true, category: 'archive', mime: 'application/zip' };
|
|
2448
|
+
case 'rar':
|
|
2449
|
+
return { valid: true, category: 'archive', mime: 'application/vnd.rar' };
|
|
2450
|
+
case '7z':
|
|
2451
|
+
return { valid: true, category: 'archive', mime: 'application/x-7z-compressed' };
|
|
2452
|
+
case 'tar':
|
|
2453
|
+
return { valid: true, category: 'archive', mime: 'application/x-tar' };
|
|
2454
|
+
case 'gz':
|
|
2455
|
+
case 'tgz':
|
|
2456
|
+
return { valid: true, category: 'archive', mime: 'application/gzip' };
|
|
2457
|
+
case 'bz2':
|
|
2458
|
+
return { valid: true, category: 'archive', mime: 'application/x-bzip2' };
|
|
2459
|
+
case 'xz':
|
|
2460
|
+
return { valid: true, category: 'archive', mime: 'application/x-xz' };
|
|
2461
|
+
case 'z':
|
|
2462
|
+
return { valid: true, category: 'archive', mime: 'application/x-compress' };
|
|
2463
|
+
case 'lzma':
|
|
2464
|
+
return { valid: true, category: 'archive', mime: 'application/x-lzma' };
|
|
2465
|
+
case 'cpio':
|
|
2466
|
+
return { valid: true, category: 'archive', mime: 'application/x-cpio' };
|
|
2467
|
+
case 'lzh':
|
|
2468
|
+
case 'lha':
|
|
2469
|
+
return { valid: true, category: 'archive', mime: 'application/x-lzh' };
|
|
2470
|
+
case 'ar':
|
|
2471
|
+
return { valid: true, category: 'archive', mime: 'application/x-archive' };
|
|
2472
|
+
|
|
2473
|
+
// Linux / Java Packages
|
|
2474
|
+
case 'deb':
|
|
2475
|
+
return { valid: true, category: 'archive', mime: 'application/vnd.debian.binary-package' };
|
|
2476
|
+
case 'rpm':
|
|
2477
|
+
return { valid: true, category: 'archive', mime: 'application/x-rpm' };
|
|
2478
|
+
case 'jar':
|
|
2479
|
+
return { valid: true, category: 'archive', mime: 'application/java-archive' };
|
|
2480
|
+
case 'war':
|
|
2481
|
+
return { valid: true, category: 'archive', mime: 'application/x-webarchive' };
|
|
2482
|
+
case 'ear':
|
|
2483
|
+
return { valid: true, category: 'archive', mime: 'application/octet-stream' };
|
|
2484
|
+
|
|
2441
2485
|
// ==============================
|
|
2442
2486
|
// DEFAULT (INVALID)
|
|
2443
2487
|
// ==============================
|