cnpmcore 3.55.1 → 3.56.1
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/adapter/binary/EdgedriverBinary.d.ts +7 -0
- package/dist/app/common/adapter/binary/EdgedriverBinary.js +213 -0
- package/dist/app/common/enum/Binary.d.ts +2 -1
- package/dist/app/common/enum/Binary.js +2 -1
- package/dist/app/port/middleware/ErrorHandler.js +2 -2
- package/dist/config/binaries.d.ts +7 -0
- package/dist/config/binaries.js +8 -1
- package/package.json +1 -1
|
@@ -0,0 +1,213 @@
|
|
|
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 __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
var _EdgedriverBinary_instances, _EdgedriverBinary_syncDirItems, _EdgedriverBinary_parseItems;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.EdgedriverBinary = void 0;
|
|
19
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
20
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
21
|
+
const AbstractBinary_1 = require("./AbstractBinary");
|
|
22
|
+
const Binary_1 = require("../../enum/Binary");
|
|
23
|
+
let EdgedriverBinary = class EdgedriverBinary extends AbstractBinary_1.AbstractBinary {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
_EdgedriverBinary_instances.add(this);
|
|
27
|
+
}
|
|
28
|
+
async initFetch() {
|
|
29
|
+
this.dirItems = undefined;
|
|
30
|
+
}
|
|
31
|
+
async fetch(dir) {
|
|
32
|
+
if (!this.dirItems) {
|
|
33
|
+
await __classPrivateFieldGet(this, _EdgedriverBinary_instances, "m", _EdgedriverBinary_syncDirItems).call(this);
|
|
34
|
+
}
|
|
35
|
+
// fetch root dir
|
|
36
|
+
if (dir === '/') {
|
|
37
|
+
return { items: this.dirItems[dir], nextParams: null };
|
|
38
|
+
}
|
|
39
|
+
// fetch sub dir
|
|
40
|
+
// /foo/ => foo/
|
|
41
|
+
const subDir = dir.substring(1);
|
|
42
|
+
// https://msedgewebdriverstorage.blob.core.windows.net/edgewebdriver?prefix=124.0.2478.97/&delimiter=/&maxresults=100&restype=container&comp=list
|
|
43
|
+
const url = `https://msedgewebdriverstorage.blob.core.windows.net/edgewebdriver?prefix=${encodeURIComponent(subDir)}&delimiter=/&maxresults=100&restype=container&comp=list`;
|
|
44
|
+
const xml = await this.requestXml(url);
|
|
45
|
+
return { items: __classPrivateFieldGet(this, _EdgedriverBinary_instances, "m", _EdgedriverBinary_parseItems).call(this, xml), nextParams: null };
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
exports.EdgedriverBinary = EdgedriverBinary;
|
|
49
|
+
_EdgedriverBinary_instances = new WeakSet();
|
|
50
|
+
_EdgedriverBinary_syncDirItems = async function _EdgedriverBinary_syncDirItems() {
|
|
51
|
+
this.dirItems = {};
|
|
52
|
+
this.dirItems['/'] = [];
|
|
53
|
+
const jsonApiEndpoint = 'https://edgeupdates.microsoft.com/api/products';
|
|
54
|
+
const { data, status, headers } = await this.httpclient.request(jsonApiEndpoint, {
|
|
55
|
+
dataType: 'json',
|
|
56
|
+
timeout: 30000,
|
|
57
|
+
followRedirect: true,
|
|
58
|
+
gzip: true,
|
|
59
|
+
});
|
|
60
|
+
if (status !== 200) {
|
|
61
|
+
this.logger.warn('[EdgedriverBinary.request:non-200-status] url: %s, status: %s, headers: %j, data: %j', jsonApiEndpoint, status, headers, data);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
this.logger.info('[EdgedriverBinary] remote data length: %s', data.length);
|
|
65
|
+
// [
|
|
66
|
+
// {
|
|
67
|
+
// "Product": "Stable",
|
|
68
|
+
// "Releases": [
|
|
69
|
+
// {
|
|
70
|
+
// "ReleaseId": 73376,
|
|
71
|
+
// "Platform": "iOS",
|
|
72
|
+
// "Architecture": "arm64",
|
|
73
|
+
// "CVEs": [],
|
|
74
|
+
// "ProductVersion": "124.0.2478.89",
|
|
75
|
+
// "Artifacts": [],
|
|
76
|
+
// "PublishedTime": "2024-05-07T02:57:00",
|
|
77
|
+
// "ExpectedExpiryDate": "2025-05-07T02:57:00"
|
|
78
|
+
// },
|
|
79
|
+
// {
|
|
80
|
+
// "ReleaseId": 73629,
|
|
81
|
+
// "Platform": "Windows",
|
|
82
|
+
// "Architecture": "x86",
|
|
83
|
+
// "CVEs": [
|
|
84
|
+
// "CVE-2024-4559",
|
|
85
|
+
// "CVE-2024-4671"
|
|
86
|
+
// ],
|
|
87
|
+
// "ProductVersion": "124.0.2478.97",
|
|
88
|
+
// "Artifacts": [
|
|
89
|
+
// {
|
|
90
|
+
// "ArtifactName": "msi",
|
|
91
|
+
// "Location": "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/aa1c9fe3-bb9c-4a80-9ff7-5c109701fbfe/MicrosoftEdgeEnterpriseX86.msi",
|
|
92
|
+
// "Hash": "4CEF7B907D3E2371E953C41190E32C3560CEE7D3F16D7550CA156DC976EBCB80",
|
|
93
|
+
// "HashAlgorithm": "SHA256",
|
|
94
|
+
// "SizeInBytes": 162029568
|
|
95
|
+
// }
|
|
96
|
+
// ],
|
|
97
|
+
// "PublishedTime": "2024-05-11T06:47:00",
|
|
98
|
+
// "ExpectedExpiryDate": "2025-05-10T16:59:00"
|
|
99
|
+
// },
|
|
100
|
+
// {
|
|
101
|
+
// "ReleaseId": 73630,
|
|
102
|
+
// "Platform": "Linux",
|
|
103
|
+
// "Architecture": "x64",
|
|
104
|
+
// "CVEs": [
|
|
105
|
+
// "CVE-2024-4559"
|
|
106
|
+
// ],
|
|
107
|
+
// "ProductVersion": "124.0.2478.97",
|
|
108
|
+
// "Artifacts": [
|
|
109
|
+
// {
|
|
110
|
+
// "ArtifactName": "rpm",
|
|
111
|
+
// "Location": "https://packages.microsoft.com/yumrepos/edge/microsoft-edge-stable-124.0.2478.97-1.x86_64.rpm",
|
|
112
|
+
// "Hash": "32D9C333544DDD9C56FED54844E89EF00F3E5620942C07B9B68D214016687895",
|
|
113
|
+
// "HashAlgorithm": "SHA256",
|
|
114
|
+
// "SizeInBytes": 169877932
|
|
115
|
+
// },
|
|
116
|
+
// {
|
|
117
|
+
// "ArtifactName": "deb",
|
|
118
|
+
// "Location": "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_124.0.2478.97-1_amd64.deb",
|
|
119
|
+
// "Hash": "85D0AD1D63847B3DD54F0F214D18A2B54462BB43291536E773AD1B8B29BBF799",
|
|
120
|
+
// "HashAlgorithm": "SHA256",
|
|
121
|
+
// "SizeInBytes": 167546042
|
|
122
|
+
// }
|
|
123
|
+
// ],
|
|
124
|
+
// "PublishedTime": "2024-05-10T17:01:00",
|
|
125
|
+
// "ExpectedExpiryDate": "2025-05-10T17:01:00"
|
|
126
|
+
// },
|
|
127
|
+
// {
|
|
128
|
+
// "Product": "EdgeUpdate",
|
|
129
|
+
// "Releases": [
|
|
130
|
+
// {
|
|
131
|
+
// "ReleaseId": 73493,
|
|
132
|
+
// "Platform": "Windows",
|
|
133
|
+
// "Architecture": "x86",
|
|
134
|
+
// "CVEs": [],
|
|
135
|
+
// "ProductVersion": "1.3.187.37",
|
|
136
|
+
// "Artifacts": [
|
|
137
|
+
// {
|
|
138
|
+
// "ArtifactName": "exe",
|
|
139
|
+
// "Location": "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/a2fa84fe-796b-4f80-b1cd-f4d1f5731aa8/MicrosoftEdgeUpdateSetup_X86_1.3.187.37.exe",
|
|
140
|
+
// "Hash": "503088D22461FEE5D7B6B011609D73FFD5869D3ACE1DBB0F00F8F3B9D122C514",
|
|
141
|
+
// "HashAlgorithm": "SHA256",
|
|
142
|
+
// "SizeInBytes": 1622072
|
|
143
|
+
// }
|
|
144
|
+
// ],
|
|
145
|
+
// "PublishedTime": "2024-05-08T05:44:00",
|
|
146
|
+
// "ExpectedExpiryDate": "2025-05-08T05:44:00"
|
|
147
|
+
// }
|
|
148
|
+
// ]
|
|
149
|
+
// }
|
|
150
|
+
const products = data;
|
|
151
|
+
const existsVersions = new Set();
|
|
152
|
+
for (const product of products) {
|
|
153
|
+
if (product.Product === 'EdgeUpdate')
|
|
154
|
+
continue;
|
|
155
|
+
for (const release of product.Releases) {
|
|
156
|
+
if (!release.Artifacts || release.Artifacts.length === 0)
|
|
157
|
+
continue;
|
|
158
|
+
if (existsVersions.has(release.ProductVersion))
|
|
159
|
+
continue;
|
|
160
|
+
this.dirItems['/'].push({
|
|
161
|
+
name: `${release.ProductVersion}/`,
|
|
162
|
+
date: release.PublishedTime,
|
|
163
|
+
size: '-',
|
|
164
|
+
isDir: true,
|
|
165
|
+
url: '',
|
|
166
|
+
});
|
|
167
|
+
existsVersions.add(release.ProductVersion);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
_EdgedriverBinary_parseItems = function _EdgedriverBinary_parseItems(xml) {
|
|
172
|
+
const items = [];
|
|
173
|
+
// <Blob><Name>124.0.2478.97/edgedriver_arm64.zip</Name><Url>https://msedgewebdriverstorage.blob.core.windows.net/edgewebdriver/124.0.2478.97/edgedriver_arm64.zip</Url><Properties><Last-Modified>Fri, 10 May 2024 18:35:44 GMT</Last-Modified><Etag>0x8DC712000713C13</Etag><Content-Length>9191362</Content-Length><Content-Type>application/octet-stream</Content-Type><Content-Encoding /><Content-Language /><Content-MD5>1tjPTf5JU6KKB06Qf1JOGw==</Content-MD5><Cache-Control /><BlobType>BlockBlob</BlobType><LeaseStatus>unlocked</LeaseStatus></Properties></Blob>
|
|
174
|
+
const fileRe = /<Blob><Name>([^<]+?)<\/Name><Url>([^<]+?)<\/Url><Properties><Last\-Modified>([^<]+?)<\/Last\-Modified><Etag>(?:[^<]+?)<\/Etag><Content\-Length>(\d+)<\/Content\-Length>/g;
|
|
175
|
+
const matchItems = xml.matchAll(fileRe);
|
|
176
|
+
for (const m of matchItems) {
|
|
177
|
+
const fullname = m[1].trim();
|
|
178
|
+
// <Blob>
|
|
179
|
+
// <Name>124.0.2478.97/edgedriver_arm64.zip</Name>
|
|
180
|
+
// <Url>https://msedgewebdriverstorage.blob.core.windows.net/edgewebdriver/124.0.2478.97/edgedriver_arm64.zip</Url>
|
|
181
|
+
// <Properties>
|
|
182
|
+
// <Last-Modified>Fri, 10 May 2024 18:35:44 GMT</Last-Modified>
|
|
183
|
+
// <Etag>0x8DC712000713C13</Etag>
|
|
184
|
+
// <Content-Length>9191362</Content-Length>
|
|
185
|
+
// <Content-Type>application/octet-stream</Content-Type>
|
|
186
|
+
// <Content-Encoding/>
|
|
187
|
+
// <Content-Language/>
|
|
188
|
+
// <Content-MD5>1tjPTf5JU6KKB06Qf1JOGw==</Content-MD5>
|
|
189
|
+
// <Cache-Control/>
|
|
190
|
+
// <BlobType>BlockBlob</BlobType>
|
|
191
|
+
// <LeaseStatus>unlocked</LeaseStatus>
|
|
192
|
+
// </Properties>
|
|
193
|
+
// </Blob>
|
|
194
|
+
// ignore size = 0 dir
|
|
195
|
+
const name = node_path_1.default.basename(fullname);
|
|
196
|
+
const url = m[2].trim();
|
|
197
|
+
const date = m[3].trim();
|
|
198
|
+
const size = parseInt(m[4].trim());
|
|
199
|
+
items.push({
|
|
200
|
+
name,
|
|
201
|
+
isDir: false,
|
|
202
|
+
url,
|
|
203
|
+
size,
|
|
204
|
+
date,
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
return items;
|
|
208
|
+
};
|
|
209
|
+
exports.EdgedriverBinary = EdgedriverBinary = __decorate([
|
|
210
|
+
(0, tegg_1.SingletonProto)(),
|
|
211
|
+
(0, AbstractBinary_1.BinaryAdapter)(Binary_1.BinaryType.Edgedriver)
|
|
212
|
+
], EdgedriverBinary);
|
|
213
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRnZWRyaXZlckJpbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2FwcC9jb21tb24vYWRhcHRlci9iaW5hcnkvRWRnZWRyaXZlckJpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwREFBNkI7QUFDN0Isc0NBQTZDO0FBQzdDLHFEQUUwQjtBQUMxQiw4Q0FBK0M7QUFJeEMsSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBaUIsU0FBUSwrQkFBYztJQUE3Qzs7O0lBMk1QLENBQUM7SUF0TUMsS0FBSyxDQUFDLFNBQVM7UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBNElELEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBVztRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixNQUFNLHVCQUFBLElBQUksbUVBQWMsTUFBbEIsSUFBSSxDQUFnQixDQUFDO1NBQzVCO1FBQ0QsaUJBQWlCO1FBQ2pCLElBQUksR0FBRyxLQUFLLEdBQUcsRUFBRTtZQUNmLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDekQ7UUFFRCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEMsa0pBQWtKO1FBQ2xKLE1BQU0sR0FBRyxHQUFHLDZFQUE2RSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMseURBQXlELENBQUM7UUFDN0ssTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sRUFBRSxLQUFLLEVBQUUsdUJBQUEsSUFBSSxpRUFBWSxNQUFoQixJQUFJLEVBQWEsR0FBRyxDQUFD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
|
|
@@ -17,5 +17,6 @@ var BinaryType;
|
|
|
17
17
|
BinaryType["Prisma"] = "prisma";
|
|
18
18
|
BinaryType["Sqlcipher"] = "sqlcipher";
|
|
19
19
|
BinaryType["ChromeForTesting"] = "chromeForTesting";
|
|
20
|
+
BinaryType["Edgedriver"] = "edgedriver";
|
|
20
21
|
})(BinaryType || (exports.BinaryType = BinaryType = {}));
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmluYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL2NvbW1vbi9lbnVtL0JpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLFVBZ0JYO0FBaEJELFdBQVksVUFBVTtJQUNwQix5QkFBVyxDQUFBO0lBQ1gsK0JBQWlCLENBQUE7SUFDakIsaUNBQW1CLENBQUE7SUFDbkIsbUNBQXFCLENBQUE7SUFDckIsK0JBQWlCLENBQUE7SUFDakIsbUNBQXFCLENBQUE7SUFDckIsMkJBQWEsQ0FBQTtJQUNiLHVDQUF5QixDQUFBO0lBQ3pCLDJCQUFhLENBQUE7SUFDYix1Q0FBeUIsQ0FBQTtJQUN6QixxQ0FBdUIsQ0FBQTtJQUN2QiwrQkFBaUIsQ0FBQTtJQUNqQixxQ0FBdUIsQ0FBQTtJQUN2QixtREFBcUMsQ0FBQTtJQUNyQyx1Q0FBeUIsQ0FBQTtBQUMzQixDQUFDLEVBaEJXLFVBQVUsMEJBQVYsVUFBVSxRQWdCckIifQ==
|
|
@@ -31,7 +31,7 @@ async function ErrorHandler(ctx, next) {
|
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
33
|
// http status, default is DEFAULT_SERVER_ERROR_STATUS
|
|
34
|
-
ctx.status = err.status
|
|
34
|
+
ctx.status = (typeof err.status === 'number' && err.status >= 200) ? err.status : DEFAULT_SERVER_ERROR_STATUS;
|
|
35
35
|
// don't log NotImplementedError
|
|
36
36
|
if (ctx.status >= DEFAULT_SERVER_ERROR_STATUS && err.name !== 'NotImplementedError') {
|
|
37
37
|
ctx.logger.error(err);
|
|
@@ -60,4 +60,4 @@ async function ErrorHandler(ctx, next) {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
exports.ErrorHandler = ErrorHandler;
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JIYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL3BvcnQvbWlkZGxld2FyZS9FcnJvckhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esa0ZBQStFO0FBRS9FLE1BQU0sMkJBQTJCLEdBQUcsR0FBRyxDQUFDO0FBRWpDLEtBQUssVUFBVSxZQUFZLENBQUMsR0FBZSxFQUFFLElBQVU7SUFDNUQsSUFBSTtRQUNGLE1BQU0sSUFBSSxFQUFFLENBQUM7S0FDZDtJQUFDLE9BQU8sR0FBUSxFQUFFO1FBQ2pCLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxzQkFBc0IsRUFBRTtZQUN2QyxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUU7Z0JBQ25CLG1CQUFtQjtnQkFDbkIsTUFBTSxXQUFXLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQztnQkFDcEMsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLEdBQUcsQ0FBQyxZQUFZLENBQUMsMkNBQW9CLENBQUMsQ0FBQztnQkFDMUUsTUFBTSxJQUFJLEdBQUcsTUFBTSxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRTtvQkFDdkUsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFO29CQUNoQixRQUFRLEVBQUUsR0FBRyxDQUFDLE1BQU07b0JBQ3BCLElBQUksRUFBRSxrQkFBa0IsV0FBVyxDQUFDLFFBQVEsMkJBQTJCLEdBQUcsQ0FBQyxJQUFJLEdBQUc7aUJBQ25GLENBQUMsQ0FBQztnQkFDSCxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx5RUFBeUUsRUFDdkYsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdEM7WUFDRCxJQUFJLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRTtnQkFDaEMsNkJBQTZCO2dCQUM3QixHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDLHdCQUF3QixHQUFHLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO2dCQUMxRCxPQUFPO2FBQ1I7U0FDRjthQUFNLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyx5QkFBeUIsSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ2pFLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNCLE9BQU87U0FDUjtRQUVELHNEQUFzRDtRQUN0RCxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsTUFBTSxLQUFLLFFBQVEsSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQztRQUM5RyxnQ0FBZ0M7UUFDaEMsSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLDJCQUEyQixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUsscUJBQXFCLEVBQUU7WUFDbkYsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkI7UUFDRCxJQUFJLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO1FBQzFCLDhCQUE4QjtRQUM5QixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssMEJBQTBCLElBQUksR0FBRyxDQUFDLGFBQWEsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRTtZQUMxRixJQUFJO1lBQ0osK0JBQStCO1lBQy9CLG1EQUFtRDtZQUNuRCwwQkFBMEI7WUFDMUIscURBQXFEO1lBQ3JELElBQUk7WUFDSixNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDckIsT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2hFO2lCQUFNO2dCQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO2FBQ3hCO1NBQ0Y7UUFDRCxzRkFBc0Y7UUFDdEYsR0FBRyxDQUFDLElBQUksR0FBRztZQUNULEtBQUssRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU87U0FDN0UsQ0FBQztLQUNIO0FBQ0gsQ0FBQztBQXRERCxvQ0FzREMifQ==
|
|
@@ -857,6 +857,13 @@ declare const binaries: {
|
|
|
857
857
|
readonly repo: "oven-sh/bun";
|
|
858
858
|
readonly distUrl: "https://github.com/oven-sh/bun/releases";
|
|
859
859
|
};
|
|
860
|
+
readonly edgedriver: {
|
|
861
|
+
readonly category: "edgedriver";
|
|
862
|
+
readonly description: "Microsofts' EdgeDriver";
|
|
863
|
+
readonly type: BinaryType.Edgedriver;
|
|
864
|
+
readonly repo: "webdriverio-community/node-edgedriver";
|
|
865
|
+
readonly distUrl: "https://developer.microsoft.com/zh-cn/microsoft-edge/tools/webdriver/";
|
|
866
|
+
};
|
|
860
867
|
};
|
|
861
868
|
export type BinaryName = keyof typeof binaries;
|
|
862
869
|
export type CategoryName = typeof binaries[BinaryName]['category'];
|
package/dist/config/binaries.js
CHANGED
|
@@ -885,9 +885,16 @@ const binaries = {
|
|
|
885
885
|
repo: 'oven-sh/bun',
|
|
886
886
|
distUrl: 'https://github.com/oven-sh/bun/releases',
|
|
887
887
|
},
|
|
888
|
+
edgedriver: {
|
|
889
|
+
category: 'edgedriver',
|
|
890
|
+
description: 'Microsofts\' EdgeDriver',
|
|
891
|
+
type: Binary_1.BinaryType.Edgedriver,
|
|
892
|
+
repo: 'webdriverio-community/node-edgedriver',
|
|
893
|
+
distUrl: 'https://developer.microsoft.com/zh-cn/microsoft-edge/tools/webdriver/',
|
|
894
|
+
},
|
|
888
895
|
};
|
|
889
896
|
const BinaryConfigMap = {
|
|
890
897
|
...binaries,
|
|
891
898
|
};
|
|
892
899
|
exports.default = BinaryConfigMap;
|
|
893
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEs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
|
|
900
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEs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
|