slybrowser 0.1.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 (62) hide show
  1. package/README.md +146 -0
  2. package/dist/automation.d.ts +15 -0
  3. package/dist/automation.d.ts.map +1 -0
  4. package/dist/automation.js +69 -0
  5. package/dist/automation.js.map +1 -0
  6. package/dist/browser.d.ts +31 -0
  7. package/dist/browser.d.ts.map +1 -0
  8. package/dist/browser.js +203 -0
  9. package/dist/browser.js.map +1 -0
  10. package/dist/canonical.d.ts +4 -0
  11. package/dist/canonical.d.ts.map +1 -0
  12. package/dist/canonical.js +42 -0
  13. package/dist/canonical.js.map +1 -0
  14. package/dist/cdp.d.ts +21 -0
  15. package/dist/cdp.d.ts.map +1 -0
  16. package/dist/cdp.js +139 -0
  17. package/dist/cdp.js.map +1 -0
  18. package/dist/cli.d.ts +19 -0
  19. package/dist/cli.d.ts.map +1 -0
  20. package/dist/cli.js +241 -0
  21. package/dist/cli.js.map +1 -0
  22. package/dist/errors.d.ts +21 -0
  23. package/dist/errors.d.ts.map +1 -0
  24. package/dist/errors.js +113 -0
  25. package/dist/errors.js.map +1 -0
  26. package/dist/humanize.d.ts +23 -0
  27. package/dist/humanize.d.ts.map +1 -0
  28. package/dist/humanize.js +247 -0
  29. package/dist/humanize.js.map +1 -0
  30. package/dist/index.d.ts +13 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +13 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/installer.d.ts +43 -0
  35. package/dist/installer.d.ts.map +1 -0
  36. package/dist/installer.js +669 -0
  37. package/dist/installer.js.map +1 -0
  38. package/dist/launcher.d.ts +38 -0
  39. package/dist/launcher.d.ts.map +1 -0
  40. package/dist/launcher.js +325 -0
  41. package/dist/launcher.js.map +1 -0
  42. package/dist/license.d.ts +76 -0
  43. package/dist/license.d.ts.map +1 -0
  44. package/dist/license.js +329 -0
  45. package/dist/license.js.map +1 -0
  46. package/dist/licensed.d.ts +82 -0
  47. package/dist/licensed.d.ts.map +1 -0
  48. package/dist/licensed.js +513 -0
  49. package/dist/licensed.js.map +1 -0
  50. package/dist/manifest.d.ts +66 -0
  51. package/dist/manifest.d.ts.map +1 -0
  52. package/dist/manifest.js +292 -0
  53. package/dist/manifest.js.map +1 -0
  54. package/dist/service.d.ts +206 -0
  55. package/dist/service.d.ts.map +1 -0
  56. package/dist/service.js +1271 -0
  57. package/dist/service.js.map +1 -0
  58. package/dist/webdriver.d.ts +208 -0
  59. package/dist/webdriver.d.ts.map +1 -0
  60. package/dist/webdriver.js +592 -0
  61. package/dist/webdriver.js.map +1 -0
  62. package/package.json +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ export interface LaunchPlan {
2
+ executable: string;
3
+ arguments: string[];
4
+ configFile: string;
5
+ licenseFile: string;
6
+ driverLicenseFile?: string;
7
+ runtimeFile?: string;
8
+ driverRuntimeFile?: string;
9
+ releaseRoot?: string;
10
+ humanizeConfigFile?: string;
11
+ nativeReadyRequestFile?: string;
12
+ nativeReadyFile?: string;
13
+ nativeReadyNonce?: string;
14
+ waitForNativeReady(timeout?: number): Promise<void>;
15
+ cleanup(): Promise<void>;
16
+ }
17
+ export interface NetworkAlignmentDiagnostic {
18
+ configured: boolean;
19
+ aligned: boolean;
20
+ source?: string;
21
+ exitIp?: string;
22
+ missing: string[];
23
+ }
24
+ export declare function diagnoseNetworkAlignment(options: Record<string, unknown>): NetworkAlignmentDiagnostic;
25
+ export declare function normalizeNetworkSafety(options: Record<string, unknown>): Record<string, unknown>;
26
+ export declare function prepareLaunch(executable: string, options: Record<string, unknown>, lease: string | Buffer | Record<string, unknown>, settings?: {
27
+ tempRoot?: string | undefined;
28
+ extraArguments?: readonly string[] | undefined;
29
+ includeDriverLease?: boolean | undefined;
30
+ runtimeHandoff?: Record<string, unknown> | undefined;
31
+ driverRuntimeHandoff?: Record<string, unknown> | undefined;
32
+ includeDriverRuntime?: boolean | undefined;
33
+ allowRuntimeActivationTicket?: boolean | undefined;
34
+ releaseRoot?: string | undefined;
35
+ humanizeControl?: Record<string, unknown> | undefined;
36
+ nativeReady?: boolean | undefined;
37
+ }): Promise<LaunchPlan>;
38
+ //# sourceMappingURL=launcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../src/launcher.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AA2DD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,0BAA0B,CASrG;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKhG;AA0FD,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,QAAQ,GAAE;IACR,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC/C,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC3D,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,4BAA4B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACtD,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B,GACL,OAAO,CAAC,UAAU,CAAC,CAsJrB"}
@@ -0,0 +1,325 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import { execFile } from "node:child_process";
3
+ import { constants } from "node:fs";
4
+ import { access, mkdir, open, readFile, rm, stat } from "node:fs/promises";
5
+ import { tmpdir } from "node:os";
6
+ import { resolve } from "node:path";
7
+ import { promisify } from "node:util";
8
+ import { ConfigurationError } from "./errors.js";
9
+ const execFileAsync = promisify(execFile);
10
+ const FIRST_RELEASE_UNSUPPORTED_FEATURE_CODE = "launch_feature_unsupported";
11
+ function hasOwn(value, key) {
12
+ return Object.prototype.hasOwnProperty.call(value, key);
13
+ }
14
+ function isRecord(value) {
15
+ return Boolean(value) && typeof value === "object" && !Array.isArray(value);
16
+ }
17
+ function rejectUnsupportedLaunchFeature(field) {
18
+ throw new ConfigurationError(`${field} is not supported in the first SlyBrowser release`, FIRST_RELEASE_UNSUPPORTED_FEATURE_CODE);
19
+ }
20
+ function isUnsupportedWebRtcMode(value) {
21
+ return value === "proxy" || (isRecord(value) && value.mode === "replace");
22
+ }
23
+ function assertFingerprintProfile(options) {
24
+ const profile = isRecord(options.profile) ? options.profile : options;
25
+ const hasMode = hasOwn(profile, "fingerprintMode");
26
+ const hasSeed = hasOwn(profile, "fingerprintSeed");
27
+ const hasSchema = hasOwn(profile, "fingerprintSchemaVersion");
28
+ if (!hasMode && !hasSeed && !hasSchema)
29
+ return;
30
+ const mode = hasMode ? profile.fingerprintMode : (hasSeed || hasSchema ? "seeded" : "explicit");
31
+ if (mode !== "explicit" && mode !== "seeded")
32
+ throw new ConfigurationError("profile.fingerprintMode is invalid", "profile_invalid");
33
+ if (hasSeed && (typeof profile.fingerprintSeed !== "string" || profile.fingerprintSeed.length === 0 || profile.fingerprintSeed.length > 128)) {
34
+ throw new ConfigurationError("profile.fingerprintSeed is invalid", "profile_invalid");
35
+ }
36
+ if (hasSchema && profile.fingerprintSchemaVersion !== 1)
37
+ throw new ConfigurationError("profile.fingerprintSchemaVersion is unsupported", "profile_invalid");
38
+ if (mode === "explicit" && (hasSeed || hasSchema))
39
+ throw new ConfigurationError("profile.fingerprintSeed requires seeded fingerprint mode", "profile_invalid");
40
+ if (mode === "seeded" && (!hasSeed || !hasSchema))
41
+ throw new ConfigurationError("Seeded fingerprint mode requires seed and schema version", "profile_invalid");
42
+ }
43
+ function assertFirstReleaseNetworkAndGeoBoundary(options) {
44
+ if (hasOwn(options, "proxy"))
45
+ rejectUnsupportedLaunchFeature("proxy");
46
+ if (hasOwn(options, "proxyAlignment"))
47
+ rejectUnsupportedLaunchFeature("proxyAlignment");
48
+ if (hasOwn(options, "geolocation"))
49
+ rejectUnsupportedLaunchFeature("geolocation");
50
+ if (hasOwn(options, "geo"))
51
+ rejectUnsupportedLaunchFeature("geo");
52
+ if (hasOwn(options, "geoIp") || hasOwn(options, "geoip"))
53
+ rejectUnsupportedLaunchFeature("geoIp");
54
+ if (hasOwn(options, "webrtc") && isUnsupportedWebRtcMode(options.webrtc)) {
55
+ rejectUnsupportedLaunchFeature("webrtc proxy mode");
56
+ }
57
+ if (isRecord(options.profile)) {
58
+ if (hasOwn(options.profile, "geolocation"))
59
+ rejectUnsupportedLaunchFeature("profile.geolocation");
60
+ if (hasOwn(options.profile, "geo"))
61
+ rejectUnsupportedLaunchFeature("profile.geo");
62
+ if (hasOwn(options.profile, "geoIp") || hasOwn(options.profile, "geoip"))
63
+ rejectUnsupportedLaunchFeature("profile.geoIp");
64
+ if (hasOwn(options.profile, "webrtc") && isUnsupportedWebRtcMode(options.profile.webrtc)) {
65
+ rejectUnsupportedLaunchFeature("profile.webrtc proxy mode");
66
+ }
67
+ }
68
+ }
69
+ export function diagnoseNetworkAlignment(options) {
70
+ if (options.proxy !== undefined || options.proxyAlignment !== undefined) {
71
+ return {
72
+ configured: true,
73
+ aligned: false,
74
+ missing: ["proxy is not supported in the first SlyBrowser release"],
75
+ };
76
+ }
77
+ return { configured: false, aligned: true, missing: [] };
78
+ }
79
+ export function normalizeNetworkSafety(options) {
80
+ const normalized = { ...options };
81
+ assertFirstReleaseNetworkAndGeoBoundary(normalized);
82
+ assertFingerprintProfile(normalized);
83
+ return normalized;
84
+ }
85
+ async function privateFile(directory, prefix, payload) {
86
+ const path = resolve(directory, `${prefix}${randomUUID()}.json`);
87
+ const handle = await open(path, constants.O_CREAT | constants.O_EXCL | constants.O_WRONLY, 0o600);
88
+ try {
89
+ await handle.writeFile(payload);
90
+ await handle.sync();
91
+ }
92
+ catch (error) {
93
+ await handle.close();
94
+ await rm(path, { force: true });
95
+ throw error;
96
+ }
97
+ await handle.close();
98
+ await protectWindowsHandoffFile(path);
99
+ return path;
100
+ }
101
+ async function protectWindowsHandoffFile(path) {
102
+ if (process.platform !== "win32")
103
+ return;
104
+ const { stdout } = await execFileAsync("whoami", [], { windowsHide: true });
105
+ const identity = stdout.trim();
106
+ if (!identity) {
107
+ throw new ConfigurationError("Unable to determine current Windows identity", "handoff_acl_failed");
108
+ }
109
+ try {
110
+ await execFileAsync("icacls", [path, "/inheritance:r", "/grant:r", `${identity}:(F)`], { windowsHide: true });
111
+ }
112
+ catch (error) {
113
+ await rm(path, { force: true });
114
+ throw new ConfigurationError("Unable to restrict private handoff ACL", "handoff_acl_failed");
115
+ }
116
+ }
117
+ function isForbiddenSecretArgument(argument) {
118
+ const equalsIndex = argument.indexOf("=");
119
+ if (equalsIndex < 0)
120
+ return false;
121
+ const switchName = argument.slice(0, equalsIndex).toLowerCase();
122
+ return switchName.includes("license") || switchName.includes("runtime");
123
+ }
124
+ function delay(milliseconds) {
125
+ return new Promise((accept) => setTimeout(accept, milliseconds));
126
+ }
127
+ async function nativeReadyObserved(path, nonce) {
128
+ let text;
129
+ try {
130
+ text = await readFile(path, "utf8");
131
+ }
132
+ catch (error) {
133
+ const code = error.code;
134
+ if (code === "ENOENT")
135
+ return false;
136
+ throw error;
137
+ }
138
+ if (!text.trim())
139
+ return false;
140
+ let value;
141
+ try {
142
+ value = JSON.parse(text);
143
+ }
144
+ catch {
145
+ return false;
146
+ }
147
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
148
+ throw new ConfigurationError("Native-ready marker is invalid", "native_ready_invalid");
149
+ }
150
+ const marker = value;
151
+ if (marker.schemaVersion !== 1 ||
152
+ marker.kind !== "slybrowser.native-ready" ||
153
+ marker.ready !== true ||
154
+ marker.nonce !== nonce) {
155
+ throw new ConfigurationError("Native-ready marker is invalid", "native_ready_invalid");
156
+ }
157
+ return true;
158
+ }
159
+ async function waitForNativeReadyFile(path, nonce, timeout = 15_000) {
160
+ if (path === undefined || nonce === undefined)
161
+ return;
162
+ if (!Number.isFinite(timeout) || timeout < 1) {
163
+ throw new ConfigurationError("nativeReadyTimeout must be a positive number of milliseconds", "config_invalid");
164
+ }
165
+ const deadline = Date.now() + timeout;
166
+ do {
167
+ if (await nativeReadyObserved(path, nonce))
168
+ return;
169
+ await delay(Math.min(50, Math.max(1, deadline - Date.now())));
170
+ } while (Date.now() < deadline);
171
+ throw new ConfigurationError("SlyBrowser did not report native-ready before returning", "native_ready_timeout");
172
+ }
173
+ export async function prepareLaunch(executable, options, lease, settings = {}) {
174
+ const executablePath = resolve(executable);
175
+ try {
176
+ await access(executablePath, constants.R_OK);
177
+ if (!(await stat(executablePath)).isFile())
178
+ throw new Error();
179
+ }
180
+ catch {
181
+ throw new ConfigurationError("Browser executable does not exist", "browser_missing");
182
+ }
183
+ const extraArguments = [...(settings.extraArguments ?? [])];
184
+ const releaseRoot = settings.releaseRoot === undefined ? undefined : resolve(settings.releaseRoot);
185
+ if (extraArguments.some(isForbiddenSecretArgument)) {
186
+ throw new ConfigurationError("License and runtime material must not be passed in extra browser arguments", "license_argument_forbidden");
187
+ }
188
+ if (["licenseKey", "runtimeToken", "bootstrapToken", "activationTicket", "downloadTicket"].some((name) => Object.prototype.hasOwnProperty.call(options, name))) {
189
+ throw new ConfigurationError("License and runtime secrets must never be placed in the browser profile handoff", "profile_secret_forbidden");
190
+ }
191
+ const forbiddenRuntimeHandoffSecrets = [
192
+ "licenseKey",
193
+ "runtimeToken",
194
+ ...(settings.allowRuntimeActivationTicket === true ? [] : ["activationTicket"]),
195
+ "downloadTicket",
196
+ ];
197
+ for (const runtimeHandoff of [settings.runtimeHandoff, settings.driverRuntimeHandoff]) {
198
+ if (runtimeHandoff !== undefined &&
199
+ forbiddenRuntimeHandoffSecrets.some((name) => Object.prototype.hasOwnProperty.call(runtimeHandoff, name))) {
200
+ throw new ConfigurationError("Runtime handoff must not contain long-lived keys, runtime tokens or download tickets", "runtime_handoff_secret_forbidden");
201
+ }
202
+ }
203
+ const root = resolve(settings.tempRoot ?? tmpdir());
204
+ await mkdir(root, { recursive: true });
205
+ const normalizedOptions = normalizeNetworkSafety(options);
206
+ const configBytes = Buffer.from(JSON.stringify(normalizedOptions), "utf8");
207
+ if (configBytes.length > 1024 * 1024) {
208
+ throw new ConfigurationError("Launch configuration is too large", "config_too_large");
209
+ }
210
+ const leaseBytes = Buffer.isBuffer(lease)
211
+ ? lease
212
+ : Buffer.from(typeof lease === "string" ? lease : JSON.stringify(lease), "utf8");
213
+ if (!leaseBytes.length || leaseBytes.length > 64 * 1024) {
214
+ throw new ConfigurationError("License lease is missing or too large", "license_invalid_envelope");
215
+ }
216
+ const configFile = await privateFile(root, "sly-config-", configBytes);
217
+ let licenseFile;
218
+ let driverLicenseFile;
219
+ let runtimeFile;
220
+ let driverRuntimeFile;
221
+ let humanizeConfigFile;
222
+ let nativeReadyRequestFile;
223
+ let nativeReadyFile;
224
+ let nativeReadyNonce;
225
+ try {
226
+ licenseFile = await privateFile(root, "sly-license-", leaseBytes);
227
+ if (settings.includeDriverLease) {
228
+ driverLicenseFile = await privateFile(root, "sly-driver-license-", leaseBytes);
229
+ }
230
+ if (settings.runtimeHandoff !== undefined) {
231
+ const runtimeBytes = Buffer.from(JSON.stringify(settings.runtimeHandoff), "utf8");
232
+ if (runtimeBytes.length === 0 || runtimeBytes.length > 64 * 1024) {
233
+ throw new ConfigurationError("Runtime handoff file is missing or too large", "runtime_handoff_invalid");
234
+ }
235
+ runtimeFile = await privateFile(root, "sly-runtime-", runtimeBytes);
236
+ }
237
+ const driverRuntimeHandoff = settings.driverRuntimeHandoff ?? (settings.includeDriverRuntime ? settings.runtimeHandoff : undefined);
238
+ if (driverRuntimeHandoff !== undefined) {
239
+ const driverRuntimeBytes = Buffer.from(JSON.stringify(driverRuntimeHandoff), "utf8");
240
+ if (driverRuntimeBytes.length === 0 || driverRuntimeBytes.length > 64 * 1024) {
241
+ throw new ConfigurationError("Runtime handoff file is missing or too large", "runtime_handoff_invalid");
242
+ }
243
+ driverRuntimeFile = await privateFile(root, "sly-driver-runtime-", driverRuntimeBytes);
244
+ }
245
+ if (settings.humanizeControl !== undefined) {
246
+ const humanizeBytes = Buffer.from(JSON.stringify(settings.humanizeControl), "utf8");
247
+ if (humanizeBytes.length > 64 * 1024) {
248
+ throw new ConfigurationError("Native Humanize control file is too large", "humanize_config_too_large");
249
+ }
250
+ humanizeConfigFile = await privateFile(root, "sly-humanize-", humanizeBytes);
251
+ }
252
+ if (settings.nativeReady === true) {
253
+ nativeReadyNonce = randomUUID();
254
+ nativeReadyFile = await privateFile(root, "sly-native-ready-", Buffer.alloc(0));
255
+ nativeReadyRequestFile = await privateFile(root, "sly-native-ready-request-", Buffer.from(JSON.stringify({
256
+ schemaVersion: 1,
257
+ kind: "slybrowser.native-ready-request",
258
+ readyFile: nativeReadyFile,
259
+ nonce: nativeReadyNonce,
260
+ }), "utf8"));
261
+ }
262
+ }
263
+ catch (error) {
264
+ if (nativeReadyRequestFile)
265
+ await rm(nativeReadyRequestFile, { force: true });
266
+ if (nativeReadyFile)
267
+ await rm(nativeReadyFile, { force: true });
268
+ if (humanizeConfigFile)
269
+ await rm(humanizeConfigFile, { force: true });
270
+ if (driverRuntimeFile)
271
+ await rm(driverRuntimeFile, { force: true });
272
+ if (runtimeFile)
273
+ await rm(runtimeFile, { force: true });
274
+ if (driverLicenseFile)
275
+ await rm(driverLicenseFile, { force: true });
276
+ if (licenseFile)
277
+ await rm(licenseFile, { force: true });
278
+ await rm(configFile, { force: true });
279
+ throw error;
280
+ }
281
+ if (!licenseFile)
282
+ throw new ConfigurationError("License handoff creation failed", "license_handoff_failed");
283
+ let cleaned = false;
284
+ return {
285
+ executable: executablePath,
286
+ arguments: [
287
+ `--sly-config-file=${configFile}`,
288
+ `--sly-license-file=${licenseFile}`,
289
+ ...(releaseRoot === undefined ? [] : [`--sly-release-root=${releaseRoot}`]),
290
+ ...(runtimeFile === undefined ? [] : [`--sly-runtime-file=${runtimeFile}`]),
291
+ ...(humanizeConfigFile === undefined ? [] : [`--sly-humanize-config=${humanizeConfigFile}`]),
292
+ ...(nativeReadyRequestFile === undefined ? [] : [`--sly-native-ready-request-file=${nativeReadyRequestFile}`]),
293
+ ...extraArguments,
294
+ ],
295
+ configFile,
296
+ licenseFile,
297
+ ...(releaseRoot === undefined ? {} : { releaseRoot }),
298
+ ...(driverLicenseFile === undefined ? {} : { driverLicenseFile }),
299
+ ...(runtimeFile === undefined ? {} : { runtimeFile }),
300
+ ...(driverRuntimeFile === undefined ? {} : { driverRuntimeFile }),
301
+ ...(humanizeConfigFile === undefined ? {} : { humanizeConfigFile }),
302
+ ...(nativeReadyRequestFile === undefined ? {} : { nativeReadyRequestFile }),
303
+ ...(nativeReadyFile === undefined ? {} : { nativeReadyFile }),
304
+ ...(nativeReadyNonce === undefined ? {} : { nativeReadyNonce }),
305
+ async waitForNativeReady(timeout = 15_000) {
306
+ await waitForNativeReadyFile(nativeReadyFile, nativeReadyNonce, timeout);
307
+ },
308
+ async cleanup() {
309
+ if (cleaned)
310
+ return;
311
+ cleaned = true;
312
+ await Promise.all([
313
+ rm(licenseFile, { force: true }),
314
+ rm(configFile, { force: true }),
315
+ ...(driverLicenseFile === undefined ? [] : [rm(driverLicenseFile, { force: true })]),
316
+ ...(runtimeFile === undefined ? [] : [rm(runtimeFile, { force: true })]),
317
+ ...(driverRuntimeFile === undefined ? [] : [rm(driverRuntimeFile, { force: true })]),
318
+ ...(humanizeConfigFile === undefined ? [] : [rm(humanizeConfigFile, { force: true })]),
319
+ ...(nativeReadyRequestFile === undefined ? [] : [rm(nativeReadyRequestFile, { force: true })]),
320
+ ...(nativeReadyFile === undefined ? [] : [rm(nativeReadyFile, { force: true })]),
321
+ ]);
322
+ },
323
+ };
324
+ }
325
+ //# sourceMappingURL=launcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launcher.js","sourceRoot":"","sources":["../src/launcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AA2B1C,MAAM,sCAAsC,GAAG,4BAA4B,CAAC;AAE5E,SAAS,MAAM,CAAC,KAA8B,EAAE,GAAW;IACzD,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,8BAA8B,CAAC,KAAa;IACnD,MAAM,IAAI,kBAAkB,CAC1B,GAAG,KAAK,mDAAmD,EAC3D,sCAAsC,CACvC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,OAAO,KAAK,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAgC;IAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IACtE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IAC9D,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;QAAE,OAAO;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAChG,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,kBAAkB,CAAC,oCAAoC,EAAE,iBAAiB,CAAC,CAAC;IACpI,IAAI,OAAO,IAAI,CAAC,OAAO,OAAO,CAAC,eAAe,KAAK,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;QAC7I,MAAM,IAAI,kBAAkB,CAAC,oCAAoC,EAAE,iBAAiB,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,SAAS,IAAI,OAAO,CAAC,wBAAwB,KAAK,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,iDAAiD,EAAE,iBAAiB,CAAC,CAAC;IAC5J,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,0DAA0D,EAAE,iBAAiB,CAAC,CAAC;IAC/J,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC;QAAE,MAAM,IAAI,kBAAkB,CAAC,0DAA0D,EAAE,iBAAiB,CAAC,CAAC;AACjK,CAAC;AAED,SAAS,uCAAuC,CAAC,OAAgC;IAC/E,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;QAAE,8BAA8B,CAAC,OAAO,CAAC,CAAC;IACtE,IAAI,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC;QAAE,8BAA8B,CAAC,gBAAgB,CAAC,CAAC;IACxF,IAAI,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC;QAAE,8BAA8B,CAAC,aAAa,CAAC,CAAC;IAClF,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,8BAA8B,CAAC,KAAK,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;QAAE,8BAA8B,CAAC,OAAO,CAAC,CAAC;IAClG,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACzE,8BAA8B,CAAC,mBAAmB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC;YAAE,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;QAClG,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;YAAE,8BAA8B,CAAC,aAAa,CAAC,CAAC;QAClF,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;YAAE,8BAA8B,CAAC,eAAe,CAAC,CAAC;QAC1H,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACzF,8BAA8B,CAAC,2BAA2B,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAgC;IACvE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACxE,OAAO;YACL,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,CAAC,wDAAwD,CAAC;SACpE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgC;IACrE,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAClC,uCAAuC,CAAC,UAAU,CAAC,CAAC;IACpD,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACrC,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,SAAiB,EAAE,MAAc,EAAE,OAAe;IAC3E,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,MAAM,GAAG,UAAU,EAAE,OAAO,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClG,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,MAAM,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,IAAY;IACnD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,kBAAkB,CAAC,8CAA8C,EAAE,oBAAoB,CAAC,CAAC;IACrG,CAAC;IACD,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,QAAQ,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAChH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,MAAM,IAAI,kBAAkB,CAAC,wCAAwC,EAAE,oBAAoB,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,QAAgB;IACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,WAAW,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;IAChE,OAAO,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,KAAK,CAAC,YAAoB;IACjC,OAAO,IAAI,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,IAAY,EAAE,KAAa;IAC5D,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;QACnD,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACpC,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,KAAK,CAAC;IAC/B,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,kBAAkB,CAAC,gCAAgC,EAAE,sBAAsB,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IAAI,MAAM,CAAC,aAAa,KAAK,CAAC;QAC1B,MAAM,CAAC,IAAI,KAAK,yBAAyB;QACzC,MAAM,CAAC,KAAK,KAAK,IAAI;QACrB,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,kBAAkB,CAAC,gCAAgC,EAAE,sBAAsB,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,IAAwB,EACxB,KAAyB,EACzB,OAAO,GAAG,MAAM;IAEhB,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,kBAAkB,CAAC,8DAA8D,EAAE,gBAAgB,CAAC,CAAC;IACjH,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;IACtC,GAAG,CAAC;QACF,IAAI,MAAM,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO;QACnD,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE;IAChC,MAAM,IAAI,kBAAkB,CAAC,yDAAyD,EAAE,sBAAsB,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,OAAgC,EAChC,KAAgD,EAChD,WAWI,EAAE;IAEN,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,EAAE;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,kBAAkB,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnG,IAAI,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,kBAAkB,CAC1B,4EAA4E,EAC5E,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACrG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,kBAAkB,CAC1B,iFAAiF,EACjF,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IACD,MAAM,8BAA8B,GAAG;QACrC,YAAY;QACZ,cAAc;QACd,GAAG,CAAC,QAAQ,CAAC,4BAA4B,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAC/E,gBAAgB;KACjB,CAAC;IACF,KAAK,MAAM,cAAc,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACtF,IAAI,cAAc,KAAK,SAAS;YAC5B,8BAA8B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3C,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,kBAAkB,CAC1B,sFAAsF,EACtF,kCAAkC,CACnC,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC,CAAC;IACpD,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC;IAC3E,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,kBAAkB,CAAC,mCAAmC,EAAE,kBAAkB,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACvC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACnF,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QACxD,MAAM,IAAI,kBAAkB,CAAC,uCAAuC,EAAE,0BAA0B,CAAC,CAAC;IACpG,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;IACvE,IAAI,WAA+B,CAAC;IACpC,IAAI,iBAAqC,CAAC;IAC1C,IAAI,WAA+B,CAAC;IACpC,IAAI,iBAAqC,CAAC;IAC1C,IAAI,kBAAsC,CAAC;IAC3C,IAAI,sBAA0C,CAAC;IAC/C,IAAI,eAAmC,CAAC;IACxC,IAAI,gBAAoC,CAAC;IACzC,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YAChC,iBAAiB,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,UAAU,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;YAClF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;gBACjE,MAAM,IAAI,kBAAkB,CAAC,8CAA8C,EAAE,yBAAyB,CAAC,CAAC;YAC1G,CAAC;YACD,WAAW,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACpI,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC;YACrF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;gBAC7E,MAAM,IAAI,kBAAkB,CAAC,8CAA8C,EAAE,yBAAyB,CAAC,CAAC;YAC1G,CAAC;YACD,iBAAiB,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;YACpF,IAAI,aAAa,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;gBACrC,MAAM,IAAI,kBAAkB,CAAC,2CAA2C,EAAE,2BAA2B,CAAC,CAAC;YACzG,CAAC;YACD,kBAAkB,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAClC,gBAAgB,GAAG,UAAU,EAAE,CAAC;YAChC,eAAe,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,sBAAsB,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,2BAA2B,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;gBACvG,aAAa,EAAE,CAAC;gBAChB,IAAI,EAAE,iCAAiC;gBACvC,SAAS,EAAE,eAAe;gBAC1B,KAAK,EAAE,gBAAgB;aACxB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,sBAAsB;YAAE,MAAM,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9E,IAAI,eAAe;YAAE,MAAM,EAAE,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,kBAAkB;YAAE,MAAM,EAAE,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,iBAAiB;YAAE,MAAM,EAAE,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,WAAW;YAAE,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,iBAAiB;YAAE,MAAM,EAAE,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,WAAW;YAAE,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,MAAM,EAAE,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,kBAAkB,CAAC,iCAAiC,EAAE,wBAAwB,CAAC,CAAC;IAC5G,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,OAAO;QACL,UAAU,EAAE,cAAc;QAC1B,SAAS,EAAE;YACT,qBAAqB,UAAU,EAAE;YACjC,sBAAsB,WAAW,EAAE;YACnC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;YAC3E,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;YAC3E,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,yBAAyB,kBAAkB,EAAE,CAAC,CAAC;YAC5F,GAAG,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,mCAAmC,sBAAsB,EAAE,CAAC,CAAC;YAC9G,GAAG,cAAc;SAClB;QACD,UAAU;QACV,WAAW;QACX,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QACrD,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;QACjE,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QACrD,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;QACjE,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACnE,GAAG,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC;QAC3E,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;QAC7D,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC;QAC/D,KAAK,CAAC,kBAAkB,CAAC,OAAO,GAAG,MAAM;YACvC,MAAM,sBAAsB,CAAC,eAAe,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC3E,CAAC;QACD,KAAK,CAAC,OAAO;YACX,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;gBAChC,EAAE,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;gBAC/B,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpF,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxE,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpF,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACtF,GAAG,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC9F,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aACjF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,76 @@
1
+ export interface LicenseClaims {
2
+ schemaVersion: 1 | 2;
3
+ licenseId: string;
4
+ audience: string;
5
+ issuedAt: number;
6
+ notBefore: number;
7
+ expiresAt: number;
8
+ browserVersion?: string;
9
+ browserMin: string;
10
+ browserMax: string;
11
+ planId?: string;
12
+ concurrencyLimit?: number;
13
+ paidThrough?: number | null;
14
+ licenseStatus?: "active" | "hold" | "revoked";
15
+ artifactSha256?: string;
16
+ browserSha256?: string;
17
+ driverSha256?: string;
18
+ artifact?: LicenseArtifactClaims;
19
+ leaseGeneration?: number;
20
+ features: string[];
21
+ sessionId: string;
22
+ nonce: string;
23
+ deviceHash?: string;
24
+ }
25
+ export interface LicensePrivateModuleClaims {
26
+ path: string;
27
+ sha256: string;
28
+ size: number;
29
+ abi: string;
30
+ }
31
+ export interface LicenseResourceClaims {
32
+ path: string;
33
+ sha256: string;
34
+ size: number;
35
+ }
36
+ export interface LicenseCodeSignatureClaims {
37
+ scheme: "authenticode" | "apple-developer-id" | "x509-code-signing";
38
+ subject: string;
39
+ certificateSha256: string;
40
+ timestampRequired: boolean;
41
+ }
42
+ export interface LicenseArtifactClaims {
43
+ sha256: string;
44
+ platform: "windows" | "linux" | "macos";
45
+ arch: "x64" | "arm64";
46
+ archiveFormat: "7z" | "zip";
47
+ browserExecutable: string;
48
+ driverExecutable: string;
49
+ browserSha256: string;
50
+ driverSha256: string;
51
+ privateModules: LicensePrivateModuleClaims[];
52
+ resources: LicenseResourceClaims[];
53
+ codeSignature?: LicenseCodeSignatureClaims;
54
+ }
55
+ export interface LicenseEnvelope {
56
+ algorithm: "Ed25519";
57
+ keyId: string;
58
+ payload: string;
59
+ signature: string;
60
+ }
61
+ export interface LicenseVerificationOptions {
62
+ browserVersion: string;
63
+ audience?: string;
64
+ requiredFeatures?: Iterable<string>;
65
+ deviceHash?: string;
66
+ }
67
+ export declare class LicenseVerifier {
68
+ #private;
69
+ constructor(trustedKeys: ReadonlyMap<string, Uint8Array> | Record<string, Uint8Array>, options?: {
70
+ now?: () => number;
71
+ clockSkewSeconds?: number;
72
+ maxLifetimeSeconds?: number;
73
+ });
74
+ verify(value: string | Buffer | LicenseEnvelope, options: LicenseVerificationOptions): LicenseClaims;
75
+ }
76
+ //# sourceMappingURL=license.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"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"}