Initial commit: MangaReader iOS App
✨ Features: - App iOS completa para leer manga sin publicidad - Scraper con WKWebView para manhwaweb.com - Sistema de descargas offline - Lector con zoom y navegación - Favoritos y progreso de lectura - Compatible con iOS 15+ y Sideloadly/3uTools 📦 Contenido: - Backend Node.js con Puppeteer (opcional) - App iOS con SwiftUI - Scraper de capítulos e imágenes - Sistema de almacenamiento local - Testing completo - Documentación exhaustiva 🧪 Prueba: Capítulo 789 de One Piece descargado exitosamente - 21 páginas descargadas - 4.68 MB total - URLs verificadas y funcionales 🎉 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
1
backend/node_modules/puppeteer/lib/esm/package.json
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/package.json
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"type": "module"}
|
||||
11
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.d.ts
generated
vendored
Normal file
11
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.d.ts
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
import type { Configuration } from 'puppeteer-core';
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare const getConfiguration: () => Configuration;
|
||||
//# sourceMappingURL=getConfiguration.d.ts.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.d.ts.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.d.ts.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"getConfiguration.d.ts","sourceRoot":"","sources":["../../../src/getConfiguration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAGV,aAAa,EAGd,MAAM,gBAAgB,CAAC;AAkGxB;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAAO,aAgDnC,CAAC"}
|
||||
122
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.js
generated
vendored
Normal file
122
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.js
generated
vendored
Normal file
@@ -0,0 +1,122 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
import { homedir } from 'node:os';
|
||||
import { join } from 'node:path';
|
||||
import { cosmiconfigSync } from 'cosmiconfig';
|
||||
function getBooleanEnvVar(name) {
|
||||
const env = process.env[name];
|
||||
if (env === undefined) {
|
||||
return;
|
||||
}
|
||||
switch (env.toLowerCase()) {
|
||||
case '':
|
||||
case '0':
|
||||
case 'false':
|
||||
case 'off':
|
||||
return false;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
function isSupportedBrowser(product) {
|
||||
switch (product) {
|
||||
case 'chrome':
|
||||
case 'firefox':
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
function getDefaultBrowser(browser) {
|
||||
// Validate configuration.
|
||||
if (browser && !isSupportedBrowser(browser)) {
|
||||
throw new Error(`Unsupported browser ${browser}`);
|
||||
}
|
||||
switch (browser) {
|
||||
case 'firefox':
|
||||
return 'firefox';
|
||||
default:
|
||||
return 'chrome';
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
function getLogLevel(logLevel) {
|
||||
switch (logLevel) {
|
||||
case 'silent':
|
||||
return 'silent';
|
||||
case 'error':
|
||||
return 'error';
|
||||
default:
|
||||
return 'warn';
|
||||
}
|
||||
}
|
||||
function getBrowserSetting(browser, configuration, defaultConfig = {}) {
|
||||
if (configuration.skipDownload) {
|
||||
return {
|
||||
skipDownload: true,
|
||||
};
|
||||
}
|
||||
const browserSetting = {};
|
||||
const browserEnvName = browser.replaceAll('-', '_').toUpperCase();
|
||||
browserSetting.version =
|
||||
process.env[`PUPPETEER_${browserEnvName}_VERSION`] ??
|
||||
configuration[browser]?.version ??
|
||||
defaultConfig.version;
|
||||
browserSetting.downloadBaseUrl =
|
||||
process.env[`PUPPETEER_${browserEnvName}_DOWNLOAD_BASE_URL`] ??
|
||||
configuration[browser]?.downloadBaseUrl ??
|
||||
defaultConfig.downloadBaseUrl;
|
||||
browserSetting.skipDownload =
|
||||
getBooleanEnvVar(`PUPPETEER_${browserEnvName}_SKIP_DOWNLOAD`) ??
|
||||
getBooleanEnvVar(`PUPPETEER_SKIP_${browserEnvName}_DOWNLOAD`) ??
|
||||
configuration[browser]?.skipDownload ??
|
||||
defaultConfig.skipDownload;
|
||||
return browserSetting;
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export const getConfiguration = () => {
|
||||
const result = cosmiconfigSync('puppeteer', {
|
||||
searchStrategy: 'global',
|
||||
}).search();
|
||||
const configuration = result ? { ...result.config } : {};
|
||||
configuration.logLevel = getLogLevel(process.env['PUPPETEER_LOGLEVEL'] ?? configuration.logLevel);
|
||||
// Merging environment variables.
|
||||
configuration.defaultBrowser = getDefaultBrowser(process.env['PUPPETEER_BROWSER'] ?? configuration.defaultBrowser);
|
||||
configuration.executablePath =
|
||||
process.env['PUPPETEER_EXECUTABLE_PATH'] ?? configuration.executablePath;
|
||||
// Default to skipDownload if executablePath is set
|
||||
if (configuration.executablePath) {
|
||||
configuration.skipDownload = true;
|
||||
}
|
||||
// Set skipDownload explicitly or from default
|
||||
configuration.skipDownload =
|
||||
getBooleanEnvVar('PUPPETEER_SKIP_DOWNLOAD') ?? configuration.skipDownload;
|
||||
// Prepare variables used in browser downloading
|
||||
configuration.chrome = getBrowserSetting('chrome', configuration);
|
||||
configuration['chrome-headless-shell'] = getBrowserSetting('chrome-headless-shell', configuration);
|
||||
configuration.firefox = getBrowserSetting('firefox', configuration, {
|
||||
skipDownload: true,
|
||||
});
|
||||
configuration.cacheDirectory =
|
||||
process.env['PUPPETEER_CACHE_DIR'] ??
|
||||
configuration.cacheDirectory ??
|
||||
join(homedir(), '.cache', 'puppeteer');
|
||||
configuration.temporaryDirectory =
|
||||
process.env['PUPPETEER_TMP_DIR'] ?? configuration.temporaryDirectory;
|
||||
configuration.experiments ??= {};
|
||||
return configuration;
|
||||
};
|
||||
//# sourceMappingURL=getConfiguration.js.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.js.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/getConfiguration.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"getConfiguration.js","sourceRoot":"","sources":["../../../src/getConfiguration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAChC,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAE/B,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAS5C,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IACD,QAAQ,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1B,KAAK,EAAE,CAAC;QACR,KAAK,GAAG,CAAC;QACT,KAAK,OAAO,CAAC;QACb,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAgB;IAC1C,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAgB;IACzC,0BAA0B;IAC1B,IAAI,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,QAAiB;IACpC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAuD,EACvD,aAA4B,EAC5B,gBAGsB,EAAE;IAExB,IAAI,aAAa,CAAC,YAAY,EAAE,CAAC;QAC/B,OAAO;YACL,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAGE,EAAE,CAAC;IACzB,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAElE,cAAc,CAAC,OAAO;QACpB,OAAO,CAAC,GAAG,CAAC,aAAa,cAAc,UAAU,CAAC;YAClD,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO;YAC/B,aAAa,CAAC,OAAO,CAAC;IACxB,cAAc,CAAC,eAAe;QAC5B,OAAO,CAAC,GAAG,CAAC,aAAa,cAAc,oBAAoB,CAAC;YAC5D,aAAa,CAAC,OAAO,CAAC,EAAE,eAAe;YACvC,aAAa,CAAC,eAAe,CAAC;IAEhC,cAAc,CAAC,YAAY;QACzB,gBAAgB,CAAC,aAAa,cAAc,gBAAgB,CAAC;YAC7D,gBAAgB,CAAC,kBAAkB,cAAc,WAAW,CAAC;YAC7D,aAAa,CAAC,OAAO,CAAC,EAAE,YAAY;YACpC,aAAa,CAAC,YAAY,CAAC;IAE7B,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAkB,EAAE;IAClD,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE;QAC1C,cAAc,EAAE,QAAQ;KACzB,CAAC,CAAC,MAAM,EAAE,CAAC;IACZ,MAAM,aAAa,GAAkB,MAAM,CAAC,CAAC,CAAC,EAAC,GAAG,MAAM,CAAC,MAAM,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtE,aAAa,CAAC,QAAQ,GAAG,WAAW,CAClC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,aAAa,CAAC,QAAQ,CAC5D,CAAC;IAEF,iCAAiC;IACjC,aAAa,CAAC,cAAc,GAAG,iBAAiB,CAC9C,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,aAAa,CAAC,cAAc,CACjE,CAAC;IAEF,aAAa,CAAC,cAAc;QAC1B,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,aAAa,CAAC,cAAc,CAAC;IAE3E,mDAAmD;IACnD,IAAI,aAAa,CAAC,cAAc,EAAE,CAAC;QACjC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC;IACpC,CAAC;IAED,8CAA8C;IAC9C,aAAa,CAAC,YAAY;QACxB,gBAAgB,CAAC,yBAAyB,CAAC,IAAI,aAAa,CAAC,YAAY,CAAC;IAE5E,gDAAgD;IAChD,aAAa,CAAC,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAClE,aAAa,CAAC,uBAAuB,CAAC,GAAG,iBAAiB,CACxD,uBAAuB,EACvB,aAAa,CACd,CAAC;IACF,aAAa,CAAC,OAAO,GAAG,iBAAiB,CAAC,SAAS,EAAE,aAAa,EAAE;QAClE,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,aAAa,CAAC,cAAc;QAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAClC,aAAa,CAAC,cAAc;YAC5B,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAEzC,aAAa,CAAC,kBAAkB;QAC9B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,aAAa,CAAC,kBAAkB,CAAC;IAEvE,aAAa,CAAC,WAAW,KAAK,EAAE,CAAC;IAEjC,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
|
||||
8
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.d.ts
generated
vendored
Normal file
8
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.d.ts
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/usr/bin/env node
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
export {};
|
||||
//# sourceMappingURL=cli.d.ts.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.d.ts.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.d.ts.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/node/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG"}
|
||||
46
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.js
generated
vendored
Executable file
46
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.js
generated
vendored
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env node
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2023 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
import { CLI, Browser } from '@puppeteer/browsers';
|
||||
import { PUPPETEER_REVISIONS } from 'puppeteer-core/internal/revisions.js';
|
||||
import { packageVersion } from 'puppeteer-core/internal/util/version.js';
|
||||
import puppeteer from '../puppeteer.js';
|
||||
const cacheDir = puppeteer.configuration
|
||||
.cacheDirectory;
|
||||
void new CLI({
|
||||
cachePath: cacheDir,
|
||||
scriptName: 'puppeteer',
|
||||
version: packageVersion,
|
||||
prefixCommand: {
|
||||
cmd: 'browsers',
|
||||
description: 'Manage browsers of this Puppeteer installation',
|
||||
},
|
||||
allowCachePathOverride: false,
|
||||
pinnedBrowsers: {
|
||||
[Browser.CHROME]: {
|
||||
buildId: puppeteer.configuration.chrome?.version ||
|
||||
PUPPETEER_REVISIONS['chrome'] ||
|
||||
'latest',
|
||||
skipDownload: puppeteer.configuration.chrome
|
||||
?.skipDownload ?? false,
|
||||
},
|
||||
[Browser.FIREFOX]: {
|
||||
buildId: puppeteer.configuration.firefox
|
||||
?.version ||
|
||||
PUPPETEER_REVISIONS['firefox'] ||
|
||||
'latest',
|
||||
skipDownload: puppeteer.configuration.firefox
|
||||
?.skipDownload ?? true,
|
||||
},
|
||||
[Browser.CHROMEHEADLESSSHELL]: {
|
||||
buildId: puppeteer.configuration['chrome-headless-shell']?.version ||
|
||||
PUPPETEER_REVISIONS['chrome-headless-shell'] ||
|
||||
'latest',
|
||||
skipDownload: puppeteer.configuration['chrome-headless-shell']?.skipDownload ?? false,
|
||||
},
|
||||
},
|
||||
}).run(process.argv);
|
||||
//# sourceMappingURL=cli.js.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.js.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/cli.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/node/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,EAAC,GAAG,EAAE,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AAEvE,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAExC,MAAM,QAAQ,GAAI,SAAsC,CAAC,aAAa;KACnE,cAAe,CAAC;AAEnB,KAAK,IAAI,GAAG,CAAC;IACX,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,WAAW;IACvB,OAAO,EAAE,cAAc;IACvB,aAAa,EAAE;QACb,GAAG,EAAE,UAAU;QACf,WAAW,EAAE,gDAAgD;KAC9D;IACD,sBAAsB,EAAE,KAAK;IAC7B,cAAc,EAAE;QACd,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAChB,OAAO,EACJ,SAAsC,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO;gBACrE,mBAAmB,CAAC,QAAQ,CAAC;gBAC7B,QAAQ;YACV,YAAY,EACT,SAAsC,CAAC,aAAa,CAAC,MAAM;gBAC1D,EAAE,YAAY,IAAI,KAAK;SAC5B;QACD,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACjB,OAAO,EACJ,SAAsC,CAAC,aAAa,CAAC,OAAO;gBAC3D,EAAE,OAAO;gBACX,mBAAmB,CAAC,SAAS,CAAC;gBAC9B,QAAQ;YACV,YAAY,EACT,SAAsC,CAAC,aAAa,CAAC,OAAO;gBAC3D,EAAE,YAAY,IAAI,IAAI;SAC3B;QACD,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE;YAC7B,OAAO,EACJ,SAAsC,CAAC,aAAa,CACnD,uBAAuB,CACxB,EAAE,OAAO;gBACV,mBAAmB,CAAC,uBAAuB,CAAC;gBAC5C,QAAQ;YACV,YAAY,EACT,SAAsC,CAAC,aAAa,CACnD,uBAAuB,CACxB,EAAE,YAAY,IAAI,KAAK;SAC3B;KACF;CACF,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
||||
10
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts
generated
vendored
Normal file
10
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2020 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export declare function downloadBrowsers(): Promise<void>;
|
||||
//# sourceMappingURL=install.d.ts.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.d.ts.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2DH;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkEtD"}
|
||||
119
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.js
generated
vendored
Normal file
119
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.js
generated
vendored
Normal file
@@ -0,0 +1,119 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2020 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
import { install, Browser, resolveBuildId, detectBrowserPlatform, } from '@puppeteer/browsers';
|
||||
import { PUPPETEER_REVISIONS } from 'puppeteer-core/internal/revisions.js';
|
||||
import { getConfiguration } from '../getConfiguration.js';
|
||||
async function downloadBrowser({ browser, configuration, cacheDir, platform, }) {
|
||||
const unresolvedBuildId = configuration?.version || PUPPETEER_REVISIONS[browser] || 'latest';
|
||||
const baseUrl = configuration?.downloadBaseUrl;
|
||||
const buildId = await resolveBuildId(browser, platform, unresolvedBuildId);
|
||||
try {
|
||||
const result = await install({
|
||||
browser,
|
||||
cacheDir,
|
||||
platform,
|
||||
buildId,
|
||||
downloadProgressCallback: 'default',
|
||||
baseUrl,
|
||||
buildIdAlias: buildId !== unresolvedBuildId ? unresolvedBuildId : undefined,
|
||||
});
|
||||
logPolitely(`${browser} (${result.buildId}) downloaded to ${result.path}`);
|
||||
}
|
||||
catch (error) {
|
||||
throw new Error(`ERROR: Failed to set up ${browser} v${buildId}! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download.`, {
|
||||
cause: error,
|
||||
});
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
export async function downloadBrowsers() {
|
||||
overrideProxy();
|
||||
const configuration = getConfiguration();
|
||||
if (configuration.skipDownload) {
|
||||
logPolitely('**INFO** Skipping downloading browsers as instructed.');
|
||||
return;
|
||||
}
|
||||
const platform = detectBrowserPlatform();
|
||||
if (!platform) {
|
||||
throw new Error('The current platform is not supported.');
|
||||
}
|
||||
const cacheDir = configuration.cacheDirectory;
|
||||
const installationJobs = [];
|
||||
if (configuration.chrome?.skipDownload) {
|
||||
logPolitely('**INFO** Skipping Chrome download as instructed.');
|
||||
}
|
||||
else {
|
||||
const browser = Browser.CHROME;
|
||||
installationJobs.push(downloadBrowser({
|
||||
browser,
|
||||
configuration: configuration[browser] ?? {},
|
||||
cacheDir,
|
||||
platform,
|
||||
}));
|
||||
}
|
||||
if (configuration['chrome-headless-shell']?.skipDownload) {
|
||||
logPolitely('**INFO** Skipping Chrome download as instructed.');
|
||||
}
|
||||
else {
|
||||
const browser = Browser.CHROMEHEADLESSSHELL;
|
||||
installationJobs.push(downloadBrowser({
|
||||
browser,
|
||||
configuration: configuration[browser] ?? {},
|
||||
cacheDir,
|
||||
platform,
|
||||
}));
|
||||
}
|
||||
if (configuration.firefox?.skipDownload) {
|
||||
logPolitely('**INFO** Skipping Firefox download as instructed.');
|
||||
}
|
||||
else {
|
||||
const browser = Browser.FIREFOX;
|
||||
installationJobs.push(downloadBrowser({
|
||||
browser,
|
||||
configuration: configuration[browser] ?? {},
|
||||
cacheDir,
|
||||
platform,
|
||||
}));
|
||||
}
|
||||
try {
|
||||
await Promise.all(installationJobs);
|
||||
}
|
||||
catch (error) {
|
||||
console.error(error);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
function logPolitely(toBeLogged) {
|
||||
const logLevel = process.env['npm_config_loglevel'] || '';
|
||||
const logLevelDisplay = ['silent', 'error', 'warn'].indexOf(logLevel) > -1;
|
||||
if (!logLevelDisplay) {
|
||||
console.log(toBeLogged);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
function overrideProxy() {
|
||||
// Override current environment proxy settings with npm configuration, if any.
|
||||
const NPM_HTTPS_PROXY = process.env['npm_config_https_proxy'] || process.env['npm_config_proxy'];
|
||||
const NPM_HTTP_PROXY = process.env['npm_config_http_proxy'] || process.env['npm_config_proxy'];
|
||||
const NPM_NO_PROXY = process.env['npm_config_no_proxy'];
|
||||
if (NPM_HTTPS_PROXY) {
|
||||
process.env['HTTPS_PROXY'] = NPM_HTTPS_PROXY;
|
||||
}
|
||||
if (NPM_HTTP_PROXY) {
|
||||
process.env['HTTP_PROXY'] = NPM_HTTP_PROXY;
|
||||
}
|
||||
if (NPM_NO_PROXY) {
|
||||
process.env['NO_PROXY'] = NPM_NO_PROXY;
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=install.js.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/node/install.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"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"}
|
||||
38
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.d.ts
generated
vendored
Normal file
38
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.d.ts
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2017 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
export * from 'puppeteer-core';
|
||||
import { PuppeteerNode } from 'puppeteer-core';
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
declare const puppeteer: PuppeteerNode;
|
||||
export declare const
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
connect: (options: import("puppeteer-core").ConnectOptions) => Promise<import("puppeteer-core").Browser>,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
defaultArgs: (options?: import("puppeteer-core").LaunchOptions) => string[],
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
executablePath: {
|
||||
(channel: import("puppeteer-core").ChromeReleaseChannel): string;
|
||||
(options: import("puppeteer-core").LaunchOptions): string;
|
||||
(): string;
|
||||
},
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
launch: (options?: import("puppeteer-core").LaunchOptions) => Promise<import("puppeteer-core").Browser>,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
trimCache: () => Promise<void>;
|
||||
export default puppeteer;
|
||||
//# sourceMappingURL=puppeteer.d.ts.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.d.ts.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.d.ts.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"puppeteer.d.ts","sourceRoot":"","sources":["../../../src/puppeteer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAE/B,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAM7C;;GAEG;AAEH,QAAA,MAAM,SAAS,eAGb,CAAC;AAEH,eAAO;AACL;;GAEG;AACH,OAAO;AACP;;GAEG;AACH,WAAW;AACX;;GAEG;AACH,cAAc;;;;;AACd;;GAEG;AACH,MAAM;AACN;;GAEG;AACH,SAAS,qBACE,CAAC;AAEd,eAAe,SAAS,CAAC"}
|
||||
40
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.js
generated
vendored
Normal file
40
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2017 Google Inc.
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
export * from 'puppeteer-core';
|
||||
import { PuppeteerNode } from 'puppeteer-core';
|
||||
import { getConfiguration } from './getConfiguration.js';
|
||||
const configuration = getConfiguration();
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
// @ts-expect-error using internal API.
|
||||
const puppeteer = new PuppeteerNode({
|
||||
isPuppeteerCore: false,
|
||||
configuration,
|
||||
});
|
||||
export const {
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
connect,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
defaultArgs,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
executablePath,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
launch,
|
||||
/**
|
||||
* @public
|
||||
*/
|
||||
trimCache, } = puppeteer;
|
||||
export default puppeteer;
|
||||
//# sourceMappingURL=puppeteer.js.map
|
||||
1
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.js.map
generated
vendored
Normal file
1
backend/node_modules/puppeteer/lib/esm/puppeteer/puppeteer.js.map
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../../../src/puppeteer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAE/B,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAEvD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;AAEzC;;GAEG;AACH,uCAAuC;AACvC,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC;IAClC,eAAe,EAAE,KAAK;IACtB,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM;AACX;;GAEG;AACH,OAAO;AACP;;GAEG;AACH,WAAW;AACX;;GAEG;AACH,cAAc;AACd;;GAEG;AACH,MAAM;AACN;;GAEG;AACH,SAAS,GACV,GAAG,SAAS,CAAC;AAEd,eAAe,SAAS,CAAC"}
|
||||
Reference in New Issue
Block a user