cnpmcore 3.17.1 → 3.19.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/dist/app/common/FileUtil.d.ts +2 -0
- package/dist/app/common/FileUtil.js +40 -12
- package/dist/app/common/PackageUtil.js +9 -8
- package/dist/app/common/adapter/binary/ChromeForTestingBinary.d.ts +6 -0
- package/dist/app/common/adapter/binary/ChromeForTestingBinary.js +71 -0
- package/dist/app/common/enum/Binary.d.ts +2 -1
- package/dist/app/common/enum/Binary.js +2 -1
- package/dist/app/core/entity/Package.d.ts +1 -0
- package/dist/app/core/entity/Package.js +5 -1
- package/dist/app/core/entity/PackageVersionFile.d.ts +25 -0
- package/dist/app/core/entity/PackageVersionFile.js +26 -0
- package/dist/app/core/event/SyncPackageVersionFile.d.ts +11 -0
- package/dist/app/core/event/SyncPackageVersionFile.js +50 -0
- package/dist/app/core/service/PackageManagerService.d.ts +7 -2
- package/dist/app/core/service/PackageManagerService.js +19 -15
- package/dist/app/core/service/PackageVersionFileService.d.ts +12 -0
- package/dist/app/core/service/PackageVersionFileService.js +149 -0
- package/dist/app/core/util/EntityUtil.js +1 -1
- package/dist/app/port/controller/AbstractController.d.ts +6 -0
- package/dist/app/port/controller/AbstractController.js +10 -1
- package/dist/app/port/controller/PackageBlockController.js +4 -9
- package/dist/app/port/controller/PackageVersionFileController.d.ts +26 -0
- package/dist/app/port/controller/PackageVersionFileController.js +220 -0
- package/dist/app/port/controller/RegistryController.js +1 -1
- package/dist/app/port/controller/package/ShowPackageVersionController.js +4 -4
- package/dist/app/port/middleware/ErrorHandler.js +5 -1
- package/dist/app/repository/DistRepository.d.ts +3 -3
- package/dist/app/repository/DistRepository.js +4 -1
- package/dist/app/repository/PackageRepository.d.ts +3 -1
- package/dist/app/repository/PackageRepository.js +31 -12
- package/dist/app/repository/PackageVersionFileRepository.d.ts +10 -0
- package/dist/app/repository/PackageVersionFileRepository.js +70 -0
- package/dist/app/repository/model/PackageVersionFile.d.ts +13 -0
- package/dist/app/repository/model/PackageVersionFile.js +68 -0
- package/dist/config/binaries.d.ts +7 -0
- package/dist/config/binaries.js +10 -2
- package/dist/config/config.default.js +5 -1
- package/package.json +2 -1
|
@@ -4,6 +4,7 @@ interface DownloadToTempfileOptionalConfig {
|
|
|
4
4
|
ignoreDownloadStatuses?: number[];
|
|
5
5
|
remoteAuthToken?: string;
|
|
6
6
|
}
|
|
7
|
+
export declare function createTempDir(dataDir: string, dirname?: string): Promise<string>;
|
|
7
8
|
export declare function createTempfile(dataDir: string, filename: string): Promise<string>;
|
|
8
9
|
export declare function downloadToTempfile(httpclient: EggContextHttpClient, dataDir: string, url: string, optionalConfig?: DownloadToTempfileOptionalConfig): Promise<Tempfile>;
|
|
9
10
|
export interface Tempfile {
|
|
@@ -11,4 +12,5 @@ export interface Tempfile {
|
|
|
11
12
|
headers: HttpClientResponse['res']['headers'];
|
|
12
13
|
timing: HttpClientResponse['res']['timing'];
|
|
13
14
|
}
|
|
15
|
+
export declare function mimeLookup(filepath: string): any;
|
|
14
16
|
export {};
|
|
@@ -3,21 +3,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.downloadToTempfile = exports.createTempfile = void 0;
|
|
7
|
-
const promises_1 = require("fs/promises");
|
|
8
|
-
const
|
|
9
|
-
const promises_2 = require("timers/promises");
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
6
|
+
exports.mimeLookup = exports.downloadToTempfile = exports.createTempfile = exports.createTempDir = void 0;
|
|
7
|
+
const promises_1 = require("node:fs/promises");
|
|
8
|
+
const node_fs_1 = require("node:fs");
|
|
9
|
+
const promises_2 = require("node:timers/promises");
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
+
const node_url_1 = __importDefault(require("node:url"));
|
|
12
|
+
const node_crypto_1 = require("node:crypto");
|
|
13
|
+
const mime_types_1 = __importDefault(require("mime-types"));
|
|
13
14
|
const dayjs_1 = __importDefault(require("./dayjs"));
|
|
14
|
-
async function
|
|
15
|
+
async function createTempDir(dataDir, dirname) {
|
|
15
16
|
// will auto clean on CleanTempDir Schedule
|
|
16
|
-
|
|
17
|
+
let tmpdir = node_path_1.default.join(dataDir, 'downloads', (0, dayjs_1.default)().format('YYYY/MM/DD'));
|
|
18
|
+
if (dirname) {
|
|
19
|
+
tmpdir = node_path_1.default.join(tmpdir, dirname);
|
|
20
|
+
}
|
|
17
21
|
await (0, promises_1.mkdir)(tmpdir, { recursive: true });
|
|
22
|
+
return tmpdir;
|
|
23
|
+
}
|
|
24
|
+
exports.createTempDir = createTempDir;
|
|
25
|
+
async function createTempfile(dataDir, filename) {
|
|
26
|
+
const tmpdir = await createTempDir(dataDir);
|
|
18
27
|
// The filename is a URL (from dist.tarball), which needs to be truncated, (`getconf NAME_MAX /` # max filename length: 255 bytes)
|
|
19
28
|
// https://github.com/cnpm/cnpmjs.org/pull/1345
|
|
20
|
-
const tmpfile =
|
|
29
|
+
const tmpfile = node_path_1.default.join(tmpdir, `${(0, node_crypto_1.randomBytes)(10).toString('hex')}-${node_path_1.default.basename(node_url_1.default.parse(filename).pathname)}`);
|
|
21
30
|
return tmpfile;
|
|
22
31
|
}
|
|
23
32
|
exports.createTempfile = createTempfile;
|
|
@@ -45,7 +54,7 @@ async function downloadToTempfile(httpclient, dataDir, url, optionalConfig) {
|
|
|
45
54
|
exports.downloadToTempfile = downloadToTempfile;
|
|
46
55
|
async function _downloadToTempfile(httpclient, dataDir, url, optionalConfig) {
|
|
47
56
|
const tmpfile = await createTempfile(dataDir, url);
|
|
48
|
-
const writeStream = (0,
|
|
57
|
+
const writeStream = (0, node_fs_1.createWriteStream)(tmpfile);
|
|
49
58
|
try {
|
|
50
59
|
// max 10 mins to download
|
|
51
60
|
// FIXME: should show download progress
|
|
@@ -78,4 +87,23 @@ async function _downloadToTempfile(httpclient, dataDir, url, optionalConfig) {
|
|
|
78
87
|
throw err;
|
|
79
88
|
}
|
|
80
89
|
}
|
|
81
|
-
|
|
90
|
+
const DEFAULT_CONTENT_TYPE = 'application/octet-stream';
|
|
91
|
+
const WHITE_FILENAME_CONTENT_TYPES = {
|
|
92
|
+
license: 'text/plain',
|
|
93
|
+
readme: 'text/plain',
|
|
94
|
+
history: 'text/plain',
|
|
95
|
+
changelog: 'text/plain',
|
|
96
|
+
'.npmignore': 'text/plain',
|
|
97
|
+
'.jshintignore': 'text/plain',
|
|
98
|
+
'.jshintrc': 'application/json',
|
|
99
|
+
'.eslintignore': 'text/plain',
|
|
100
|
+
'.eslintrc': 'application/json',
|
|
101
|
+
};
|
|
102
|
+
function mimeLookup(filepath) {
|
|
103
|
+
const filename = node_path_1.default.basename(filepath);
|
|
104
|
+
return mime_types_1.default.lookup(filename) ||
|
|
105
|
+
WHITE_FILENAME_CONTENT_TYPES[filename.toLowerCase()] ||
|
|
106
|
+
DEFAULT_CONTENT_TYPE;
|
|
107
|
+
}
|
|
108
|
+
exports.mimeLookup = mimeLookup;
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmlsZVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvY29tbW9uL0ZpbGVVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLCtDQUE2QztBQUM3QyxxQ0FBNEM7QUFDNUMsbURBQWtEO0FBQ2xELDBEQUE2QjtBQUM3Qix3REFBMkI7QUFDM0IsNkNBQTBDO0FBRTFDLDREQUE4QjtBQUM5QixvREFBNEI7QUFRckIsS0FBSyxVQUFVLGFBQWEsQ0FBQyxPQUFlLEVBQUUsT0FBZ0I7SUFDbkUsMkNBQTJDO0lBQzNDLElBQUksTUFBTSxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsSUFBQSxlQUFLLEdBQUUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUMzRSxJQUFJLE9BQU8sRUFBRTtRQUNYLE1BQU0sR0FBRyxtQkFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7S0FDckM7SUFDRCxNQUFNLElBQUEsZ0JBQUssRUFBQyxNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6QyxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBUkQsc0NBUUM7QUFFTSxLQUFLLFVBQVUsY0FBYyxDQUFDLE9BQWUsRUFBRSxRQUFnQjtJQUNwRSxNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxrSUFBa0k7SUFDbEksK0NBQStDO0lBQy9DLE1BQU0sT0FBTyxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUEseUJBQVcsRUFBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksbUJBQUksQ0FBQyxRQUFRLENBQUMsa0JBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUyxDQUFDLEVBQUUs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
|
|
@@ -27,10 +27,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.hasShrinkWrapInTgz = exports.detectInstallScript = exports.formatTarball = exports.calculateIntegrity = exports.cleanUserPrefix = exports.getFullname = exports.getScopeAndName = exports.FULLNAME_REG_STRING = void 0;
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
30
|
+
const node_fs_1 = require("node:fs");
|
|
31
|
+
const node_stream_1 = require("node:stream");
|
|
32
|
+
const promises_1 = require("node:stream/promises");
|
|
33
33
|
const ssri = __importStar(require("ssri"));
|
|
34
|
+
const tar_1 = __importDefault(require("tar"));
|
|
34
35
|
// /@cnpm%2ffoo
|
|
35
36
|
// /@cnpm%2Ffoo
|
|
36
37
|
// /@cnpm/foo
|
|
@@ -56,7 +57,7 @@ exports.cleanUserPrefix = cleanUserPrefix;
|
|
|
56
57
|
async function calculateIntegrity(contentOrFile) {
|
|
57
58
|
let integrityObj;
|
|
58
59
|
if (typeof contentOrFile === 'string') {
|
|
59
|
-
integrityObj = await ssri.fromStream((0,
|
|
60
|
+
integrityObj = await ssri.fromStream((0, node_fs_1.createReadStream)(contentOrFile), {
|
|
60
61
|
algorithms: ['sha512', 'sha1'],
|
|
61
62
|
});
|
|
62
63
|
}
|
|
@@ -92,10 +93,10 @@ exports.detectInstallScript = detectInstallScript;
|
|
|
92
93
|
async function hasShrinkWrapInTgz(contentOrFile) {
|
|
93
94
|
let readable;
|
|
94
95
|
if (typeof contentOrFile === 'string') {
|
|
95
|
-
readable = (0,
|
|
96
|
+
readable = (0, node_fs_1.createReadStream)(contentOrFile);
|
|
96
97
|
}
|
|
97
98
|
else {
|
|
98
|
-
readable = new
|
|
99
|
+
readable = new node_stream_1.Readable({
|
|
99
100
|
read() {
|
|
100
101
|
this.push(contentOrFile);
|
|
101
102
|
this.push(null);
|
|
@@ -115,7 +116,7 @@ async function hasShrinkWrapInTgz(contentOrFile) {
|
|
|
115
116
|
},
|
|
116
117
|
});
|
|
117
118
|
try {
|
|
118
|
-
await
|
|
119
|
+
await (0, promises_1.pipeline)(readable, parser, { signal: abortController.signal });
|
|
119
120
|
return hasShrinkWrap;
|
|
120
121
|
}
|
|
121
122
|
catch (e) {
|
|
@@ -126,4 +127,4 @@ async function hasShrinkWrapInTgz(contentOrFile) {
|
|
|
126
127
|
}
|
|
127
128
|
}
|
|
128
129
|
exports.hasShrinkWrapInTgz = hasShrinkWrapInTgz;
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hcHAvY29tbW9uL1BhY2thZ2VVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBQTJDO0FBQzNDLDZDQUF1QztBQUN2QyxtREFBZ0Q7QUFDaEQsMkNBQTZCO0FBQzdCLDhDQUFzQjtBQUV0QixlQUFlO0FBQ2YsZUFBZTtBQUNmLGFBQWE7QUFDYixPQUFPO0FBQ1AsK0JBQStCO0FBQy9CLDBFQUEwRTtBQUM3RCxRQUFBLG1CQUFtQixHQUFHLGlFQUFpRSxDQUFDO0FBRXJHLFNBQWdCLGVBQWUsQ0FBQyxRQUFnQjtJQUM5QyxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDNUIsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUMvQjtJQUNELE9BQU8sQ0FBRSxFQUFFLEVBQUUsUUFBUSxDQUFFLENBQUM7QUFDMUIsQ0FBQztBQUxELDBDQUtDO0FBRUQsU0FBZ0IsV0FBVyxDQUFDLEtBQWEsRUFBRSxJQUFZO0lBQ3JELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzNDLENBQUM7QUFGRCxrQ0FFQztBQUVELFNBQWdCLGVBQWUsQ0FBQyxRQUFnQjtJQUM5QyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFGRCwwQ0FFQztBQUVNLEtBQUssVUFBVSxrQkFBa0IsQ0FBQyxhQUFrQztJQUN6RSxJQUFJLFlBQVksQ0FBQztJQUNqQixJQUFJLE9BQU8sYUFBYSxLQUFLLFFBQVEsRUFBRTtRQUNyQyxZQUFZLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUEsMEJB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
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.ChromeForTestingBinary = void 0;
|
|
10
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
11
|
+
const Binary_1 = require("../../enum/Binary");
|
|
12
|
+
const AbstractBinary_1 = require("./AbstractBinary");
|
|
13
|
+
let ChromeForTestingBinary = class ChromeForTestingBinary extends AbstractBinary_1.AbstractBinary {
|
|
14
|
+
async init() {
|
|
15
|
+
this.dirItems = undefined;
|
|
16
|
+
}
|
|
17
|
+
async fetch(dir) {
|
|
18
|
+
if (!this.dirItems) {
|
|
19
|
+
this.dirItems = {};
|
|
20
|
+
this.dirItems['/'] = [];
|
|
21
|
+
let chromeVersion = '';
|
|
22
|
+
// exports.PUPPETEER_REVISIONS = Object.freeze({
|
|
23
|
+
// chrome: '113.0.5672.63',
|
|
24
|
+
// firefox: 'latest',
|
|
25
|
+
// });
|
|
26
|
+
const unpkgURL = 'https://unpkg.com/puppeteer-core@latest/lib/cjs/puppeteer/revisions.js';
|
|
27
|
+
const text = await this.requestXml(unpkgURL);
|
|
28
|
+
const m = /chrome:\s+\'([\d\.]+)\'\,/.exec(text);
|
|
29
|
+
if (m) {
|
|
30
|
+
chromeVersion = m[1];
|
|
31
|
+
}
|
|
32
|
+
const platforms = ['linux64', 'mac-arm64', 'mac-x64', 'win32', 'win64'];
|
|
33
|
+
const date = new Date().toISOString();
|
|
34
|
+
this.dirItems['/'].push({
|
|
35
|
+
name: `${chromeVersion}/`,
|
|
36
|
+
date,
|
|
37
|
+
size: '-',
|
|
38
|
+
isDir: true,
|
|
39
|
+
url: '',
|
|
40
|
+
});
|
|
41
|
+
this.dirItems[`/${chromeVersion}/`] = [];
|
|
42
|
+
for (const platform of platforms) {
|
|
43
|
+
this.dirItems[`/${chromeVersion}/`].push({
|
|
44
|
+
name: `${platform}/`,
|
|
45
|
+
date,
|
|
46
|
+
size: '-',
|
|
47
|
+
isDir: true,
|
|
48
|
+
url: '',
|
|
49
|
+
});
|
|
50
|
+
// https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/113.0.5672.63/mac-arm64/chrome-mac-arm64.zip
|
|
51
|
+
const name = `chrome-${platform}.zip`;
|
|
52
|
+
this.dirItems[`/${chromeVersion}/${platform}/`] = [
|
|
53
|
+
{
|
|
54
|
+
name,
|
|
55
|
+
date,
|
|
56
|
+
size: '-',
|
|
57
|
+
isDir: false,
|
|
58
|
+
url: `https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/${chromeVersion}/${platform}/${name}`,
|
|
59
|
+
},
|
|
60
|
+
];
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return { items: this.dirItems[dir], nextParams: null };
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
ChromeForTestingBinary = __decorate([
|
|
67
|
+
(0, tegg_1.SingletonProto)(),
|
|
68
|
+
(0, AbstractBinary_1.BinaryAdapter)(Binary_1.BinaryType.ChromeForTesting)
|
|
69
|
+
], ChromeForTestingBinary);
|
|
70
|
+
exports.ChromeForTestingBinary = ChromeForTestingBinary;
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hyb21lRm9yVGVzdGluZ0JpbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2FwcC9jb21tb24vYWRhcHRlci9iaW5hcnkvQ2hyb21lRm9yVGVzdGluZ0JpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxzQ0FBNkM7QUFDN0MsOENBQStDO0FBQy9DLHFEQUEwRjtBQUluRixJQUFNLHNCQUFzQixHQUE1QixNQUFNLHNCQUF1QixTQUFRLCtCQUFjO0lBS3hELEtBQUssQ0FBQyxJQUFJO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUM7SUFDNUIsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBVztRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUN4QixJQUFJLGFBQWEsR0FBRyxFQUFFLENBQUM7WUFFdkIsZ0RBQWdEO1lBQ2hELDZCQUE2QjtZQUM3Qix1QkFBdUI7WUFDdkIsTUFBTTtZQUNOLE1BQU0sUUFBUSxHQUFHLHdFQUF3RSxDQUFDO1lBQzFGLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM3QyxNQUFNLENBQUMsR0FBRywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLEVBQUU7Z0JBQ0wsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN0QjtZQUVELE1BQU0sU0FBUyxHQUFHLENBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBRSxDQUFDO1lBQzFFLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3RCLElBQUksRUFBRSxHQUFHLGFBQWEsR0FBRztnQkFDekIsSUFBSTtnQkFDSixJQUFJLEVBQUUsR0FBRztnQkFDVCxLQUFLLEVBQUUsSUFBSTtnQkFDWCxHQUFHLEVBQUUsRUFBRTthQUNSLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxhQUFhLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUV6QyxLQUFLLE1BQU0sUUFBUSxJQUFJLFNBQVMsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLGFBQWEsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUN2QyxJQUFJLEVBQUUsR0FBRyxRQUFRLEdBQUc7b0JBQ3BCLElBQUk7b0JBQ0osSUFBSSxFQUFFLEdBQUc7b0JBQ1QsS0FBSyxFQUFFLElBQUk7b0JBQ1gsR0FBRyxFQUFFLEVBQUU7aUJBQ1IsQ0FBQyxDQUFDO2dCQUVILDJHQUEyRztnQkFDM0csTUFBTSxJQUFJLEdBQUcsVUFBVSxRQUFRLE1BQU0sQ0FBQztnQkFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLGFBQWEsSUFBSSxRQUFRLEdBQUcsQ0FBQyxHQUFHO29CQUNoRDt3QkFDRSxJQUFJO3dCQUNKLElBQUk7d0JBQ0osSUFBSSxFQUFFLEdBQUc7d0JBQ1QsS0FBSyxFQUFFLEtBQUs7d0JBQ1osR0FBRyxFQUFFLCtEQUErRCxhQUFhLElBQUksUUFBUSxJQUFJLElBQUksRUFBRTtxQkFDeEc7aUJBQ0YsQ0FBQzthQUNIO1NBQ0Y7UUFFRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3pELENBQUM7Q0FDRixDQUFBO0FBOURZLHNCQUFzQjtJQUZsQyxJQUFBLHFCQUFjLEdBQUU7SUFDaEIsSUFBQSw4QkFBYSxFQUFDLG1CQUFVLENBQUMsZ0JBQWdCLENBQUM7R0FDOUIsc0JBQXNCLENBOERsQztBQTlEWSx3REFBc0IifQ==
|
|
@@ -15,5 +15,6 @@ var BinaryType;
|
|
|
15
15
|
BinaryType["Playwright"] = "playwright";
|
|
16
16
|
BinaryType["Puppeteer"] = "puppeteer";
|
|
17
17
|
BinaryType["Sqlcipher"] = "sqlcipher";
|
|
18
|
+
BinaryType["ChromeForTesting"] = "chromeForTesting";
|
|
18
19
|
})(BinaryType = exports.BinaryType || (exports.BinaryType = {}));
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL2NvbW1vbi9lbnVtL0JpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFVBY1g7QUFkRCxXQUFZLFVBQVU7SUFDcEIseUJBQVcsQ0FBQTtJQUNYLCtCQUFpQixDQUFBO0lBQ2pCLGlDQUFtQixDQUFBO0lBQ25CLG1DQUFxQixDQUFBO0lBQ3JCLCtCQUFpQixDQUFBO0lBQ2pCLG1DQUFxQixDQUFBO0lBQ3JCLDJCQUFhLENBQUE7SUFDYix1Q0FBeUIsQ0FBQTtJQUN6QiwyQkFBYSxDQUFBO0lBQ2IsdUNBQXlCLENBQUE7SUFDekIscUNBQXVCLENBQUE7SUFDdkIscUNBQXVCLENBQUE7SUFDdkIsbURBQXFDLENBQUE7QUFDdkMsQ0FBQyxFQWRXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBY3JCIn0=
|
|
@@ -41,6 +41,7 @@ export declare class Package extends Entity {
|
|
|
41
41
|
createTar(version: string, info: FileInfo): Dist;
|
|
42
42
|
createFullManifests(info: FileInfo): Dist;
|
|
43
43
|
createAbbreviatedManifests(info: FileInfo): Dist;
|
|
44
|
+
createPackageVersionFile(path: string, version: string, info: FileInfo): Dist;
|
|
44
45
|
private distDir;
|
|
45
46
|
private createDist;
|
|
46
47
|
}
|
|
@@ -50,6 +50,10 @@ class Package extends Entity_1.Entity {
|
|
|
50
50
|
createAbbreviatedManifests(info) {
|
|
51
51
|
return this.createDist(DIST_NAMES.ABBREVIATED_MANIFESTS, info);
|
|
52
52
|
}
|
|
53
|
+
createPackageVersionFile(path, version, info) {
|
|
54
|
+
// path should starts with `/`, e.g.: '/foo/bar/index.js'
|
|
55
|
+
return this.createDist(`files${path}`, info, version);
|
|
56
|
+
}
|
|
53
57
|
distDir(filename, version) {
|
|
54
58
|
if (version) {
|
|
55
59
|
return `/packages/${this.fullname}/${version}/${filename}`;
|
|
@@ -67,4 +71,4 @@ class Package extends Entity_1.Entity {
|
|
|
67
71
|
}
|
|
68
72
|
}
|
|
69
73
|
exports.Package = Package;
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9jb3JlL2VudGl0eS9QYWNrYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUE4QztBQUM5QyxtREFBMEQ7QUFDMUQsaUNBQThCO0FBQzlCLDBEQUF1RDtBQWF2RCxJQUFZLFVBTVg7QUFORCxXQUFZLFVBQVU7SUFDcEIsOENBQWdDLENBQUE7SUFDaEMsdUNBQXlCLENBQUE7SUFDekIsa0NBQW9CLENBQUE7SUFDcEIsb0RBQXNDLENBQUE7SUFDdEMsa0VBQW9ELENBQUE7QUFDdEQsQ0FBQyxFQU5XLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBTXJCO0FBUUQsTUFBYSxPQUFRLFNBQVEsZUFBTTtJQVdqQyxZQUFZLElBQWlCO1FBQzNCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDcEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUM5QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQXdDO1FBQ3BELE1BQU0sT0FBTyxHQUFHLHVCQUFVLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMxRCxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUEseUJBQVcsRUFBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsT0FBZSxFQUFFLElBQWM7UUFDL0MsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxjQUFjLENBQUMsT0FBZSxFQUFFLElBQWM7UUFDNUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZSxFQUFFLElBQWM7UUFDMUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxTQUFTLENBQUMsT0FBZSxFQUFFLElBQWM7UUFDdkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxPQUFPLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELG1CQUFtQixDQUFDLElBQWM7UUFDaEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELDBCQUEwQixDQUFDLElBQWM7UUFDdkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsd0JBQXdCLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxJQUFjO1FBQ3BFLHlEQUF5RDtRQUN6RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVPLE9BQU8sQ0FBQyxRQUFnQixFQUFFLE9BQWdCO1FBQ2hELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxhQUFhLElBQUksQ0FBQyxRQUFRLElBQUksT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1NBQzVEO1FBQ0QsT0FBTyxhQUFhLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFZLEVBQUUsSUFBYyxFQUFFLE9BQWdCO1FBQy9ELE9BQU8sV0FBSSxDQUFDLE1BQU0sQ0FBQztZQUNqQixJQUFJO1lBQ0osSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTdFRCwwQkE2RUMifQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Dist } from './Dist';
|
|
2
|
+
import { Entity, EntityData } from './Entity';
|
|
3
|
+
import { EasyData } from '../util/EntityUtil';
|
|
4
|
+
interface PackageVersionFileData extends EntityData {
|
|
5
|
+
packageVersionFileId: string;
|
|
6
|
+
packageVersionId: string;
|
|
7
|
+
dist: Dist;
|
|
8
|
+
directory: string;
|
|
9
|
+
name: string;
|
|
10
|
+
contentType: string;
|
|
11
|
+
mtime: Date;
|
|
12
|
+
}
|
|
13
|
+
export declare class PackageVersionFile extends Entity {
|
|
14
|
+
packageVersionFileId: string;
|
|
15
|
+
packageVersionId: string;
|
|
16
|
+
dist: Dist;
|
|
17
|
+
directory: string;
|
|
18
|
+
name: string;
|
|
19
|
+
contentType: string;
|
|
20
|
+
mtime: Date;
|
|
21
|
+
constructor(data: PackageVersionFileData);
|
|
22
|
+
get path(): string;
|
|
23
|
+
static create(data: EasyData<PackageVersionFileData, 'packageVersionFileId'>): PackageVersionFile;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PackageVersionFile = void 0;
|
|
4
|
+
const Entity_1 = require("./Entity");
|
|
5
|
+
const EntityUtil_1 = require("../util/EntityUtil");
|
|
6
|
+
class PackageVersionFile extends Entity_1.Entity {
|
|
7
|
+
constructor(data) {
|
|
8
|
+
super(data);
|
|
9
|
+
this.packageVersionFileId = data.packageVersionFileId;
|
|
10
|
+
this.packageVersionId = data.packageVersionId;
|
|
11
|
+
this.dist = data.dist;
|
|
12
|
+
this.directory = data.directory;
|
|
13
|
+
this.name = data.name;
|
|
14
|
+
this.contentType = data.contentType;
|
|
15
|
+
this.mtime = data.mtime;
|
|
16
|
+
}
|
|
17
|
+
get path() {
|
|
18
|
+
return this.directory === '/' ? `/${this.name}` : `${this.directory}/${this.name}`;
|
|
19
|
+
}
|
|
20
|
+
static create(data) {
|
|
21
|
+
const newData = EntityUtil_1.EntityUtil.defaultData(data, 'packageVersionFileId');
|
|
22
|
+
return new PackageVersionFile(newData);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.PackageVersionFile = PackageVersionFile;
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFja2FnZVZlcnNpb25GaWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL2NvcmUvZW50aXR5L1BhY2thZ2VWZXJzaW9uRmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxQ0FBOEM7QUFDOUMsbURBQTBEO0FBWTFELE1BQWEsa0JBQW1CLFNBQVEsZUFBTTtJQVM1QyxZQUFZLElBQTRCO1FBQ3RDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUM7UUFDdEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUM5QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyRixDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUE4RDtRQUMxRSxNQUFNLE9BQU8sR0FBRyx1QkFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztRQUNyRSxPQUFPLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsQ0FBQztDQUNGO0FBNUJELGdEQTRCQyJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EggAppConfig } from 'egg';
|
|
2
|
+
declare class SyncPackageVersionFileEvent {
|
|
3
|
+
protected readonly config: EggAppConfig;
|
|
4
|
+
private readonly packageManagerService;
|
|
5
|
+
private readonly packageVersionFileService;
|
|
6
|
+
protected syncPackageVersionFile(fullname: string, version: string): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
export declare class PackageVersionAdded extends SyncPackageVersionFileEvent {
|
|
9
|
+
handle(fullname: string, version: string): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PackageVersionAdded = void 0;
|
|
13
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
14
|
+
const index_1 = require("./index");
|
|
15
|
+
const PackageUtil_1 = require("../../common/PackageUtil");
|
|
16
|
+
const PackageManagerService_1 = require("../service/PackageManagerService");
|
|
17
|
+
const PackageVersionFileService_1 = require("../service/PackageVersionFileService");
|
|
18
|
+
class SyncPackageVersionFileEvent {
|
|
19
|
+
async syncPackageVersionFile(fullname, version) {
|
|
20
|
+
if (!this.config.cnpmcore.enableUnpkg)
|
|
21
|
+
return;
|
|
22
|
+
const [scope, name] = (0, PackageUtil_1.getScopeAndName)(fullname);
|
|
23
|
+
const { packageVersion } = await this.packageManagerService.showPackageVersionByVersionOrTag(scope, name, version);
|
|
24
|
+
if (!packageVersion)
|
|
25
|
+
return;
|
|
26
|
+
await this.packageVersionFileService.syncPackageVersionFiles(packageVersion);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, tegg_1.Inject)(),
|
|
31
|
+
__metadata("design:type", Object)
|
|
32
|
+
], SyncPackageVersionFileEvent.prototype, "config", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, tegg_1.Inject)(),
|
|
35
|
+
__metadata("design:type", PackageManagerService_1.PackageManagerService)
|
|
36
|
+
], SyncPackageVersionFileEvent.prototype, "packageManagerService", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, tegg_1.Inject)(),
|
|
39
|
+
__metadata("design:type", PackageVersionFileService_1.PackageVersionFileService)
|
|
40
|
+
], SyncPackageVersionFileEvent.prototype, "packageVersionFileService", void 0);
|
|
41
|
+
let PackageVersionAdded = class PackageVersionAdded extends SyncPackageVersionFileEvent {
|
|
42
|
+
async handle(fullname, version) {
|
|
43
|
+
await this.syncPackageVersionFile(fullname, version);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
PackageVersionAdded = __decorate([
|
|
47
|
+
(0, tegg_1.Event)(index_1.PACKAGE_VERSION_ADDED)
|
|
48
|
+
], PackageVersionAdded);
|
|
49
|
+
exports.PackageVersionAdded = PackageVersionAdded;
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3luY1BhY2thZ2VWZXJzaW9uRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9jb3JlL2V2ZW50L1N5bmNQYWNrYWdlVmVyc2lvbkZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsc0NBQTRDO0FBSTVDLG1DQUFnRDtBQUNoRCwwREFBMkQ7QUFDM0QsNEVBQXlFO0FBQ3pFLG9GQUFpRjtBQUVqRixNQUFNLDJCQUEyQjtJQVFyQixLQUFLLENBQUMsc0JBQXNCLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQ3RFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXO1lBQUUsT0FBTztRQUM5QyxNQUFNLENBQUUsS0FBSyxFQUFFLElBQUksQ0FBRSxHQUFHLElBQUEsNkJBQWUsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUNsRCxNQUFNLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsZ0NBQWdDLENBQzFGLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWM7WUFBRSxPQUFPO1FBQzVCLE1BQU0sSUFBSSxDQUFDLHlCQUF5QixDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQy9FLENBQUM7Q0FDRjtBQWZDO0lBQUMsSUFBQSxhQUFNLEdBQUU7OzJEQUMrQjtBQUN4QztJQUFDLElBQUEsYUFBTSxHQUFFOzhCQUMrQiw2Q0FBcUI7MEVBQUM7QUFDOUQ7SUFBQyxJQUFBLGFBQU0sR0FBRTs4QkFDbUMscURBQXlCOzhFQUFDO0FBYWpFLElBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW9CLFNBQVEsMkJBQTJCO0lBQ2xFLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBZ0IsRUFBRSxPQUFlO1FBQzVDLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0YsQ0FBQTtBQUpZLG1CQUFtQjtJQUQvQixJQUFBLFlBQUssRUFBQyw2QkFBcUIsQ0FBQztHQUNoQixtQkFBbUIsQ0FJL0I7QUFKWSxrREFBbUIifQ==
|
|
@@ -60,10 +60,15 @@ export declare class PackageManagerService extends AbstractService {
|
|
|
60
60
|
data: PackageManifestType | AbbreviatedPackageManifestType;
|
|
61
61
|
blockReason: string;
|
|
62
62
|
}>;
|
|
63
|
+
showPackageVersionByVersionOrTag(scope: string, name: string, versionOrTag: string): Promise<{
|
|
64
|
+
blockReason?: string;
|
|
65
|
+
pkg?: Package;
|
|
66
|
+
packageVersion?: PackageVersion | null;
|
|
67
|
+
}>;
|
|
63
68
|
showPackageVersionManifest(scope: string, name: string, versionOrTag: string, isSync?: boolean): Promise<{
|
|
64
|
-
blockReason: string;
|
|
65
69
|
manifest: any;
|
|
66
|
-
|
|
70
|
+
blockReason: string | undefined;
|
|
71
|
+
pkg: Package | undefined;
|
|
67
72
|
}>;
|
|
68
73
|
downloadPackageVersionTar(packageVersion: PackageVersion): Promise<string | import("stream").Readable | undefined>;
|
|
69
74
|
plusPackageVersionCounter(fullname: string, version: string): void;
|