1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.zipLoadPromise = void 0;
|
4 | var tslib_1 = require("tslib");
|
5 | var fs = require("fs");
|
6 | var url_1 = require("url");
|
7 | var UrlUtils_1 = require("../http/UrlUtils");
|
8 | var zip_ex_1 = require("./zip-ex");
|
9 | var zip_ex_http_1 = require("./zip-ex-http");
|
10 | var zip1_1 = require("./zip1");
|
11 | var zip2_1 = require("./zip2");
|
12 | function zipLoadPromise(filePath) {
|
13 | return tslib_1.__awaiter(this, void 0, void 0, function () {
|
14 | var url, p, stats;
|
15 | return tslib_1.__generator(this, function (_a) {
|
16 | if ((0, UrlUtils_1.isHTTP)(filePath)) {
|
17 | url = new url_1.URL(filePath);
|
18 | p = url.pathname;
|
19 | if (p.endsWith("/")) {
|
20 | return [2, zip_ex_http_1.ZipExplodedHTTP.loadPromise(filePath)];
|
21 | }
|
22 | return [2, zip2_1.Zip2.loadPromise(filePath)];
|
23 | }
|
24 | stats = fs.lstatSync(filePath);
|
25 | if (stats.isDirectory()) {
|
26 | return [2, zip_ex_1.ZipExploded.loadPromise(filePath)];
|
27 | }
|
28 | return [2, zip1_1.Zip1.loadPromise(filePath)];
|
29 | });
|
30 | });
|
31 | }
|
32 | exports.zipLoadPromise = zipLoadPromise;
|
33 |
|
\ | No newline at end of file |