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:
2026-02-04 15:34:18 +01:00
commit b474182dd9
6394 changed files with 1063909 additions and 0 deletions

View 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

View 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"}

View File

@@ -0,0 +1,126 @@
"use strict";
/**
* @license
* Copyright 2023 Google Inc.
* SPDX-License-Identifier: Apache-2.0
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.getConfiguration = void 0;
const node_os_1 = require("node:os");
const node_path_1 = require("node:path");
const cosmiconfig_1 = require("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
*/
const getConfiguration = () => {
const result = (0, cosmiconfig_1.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 ??
(0, node_path_1.join)((0, node_os_1.homedir)(), '.cache', 'puppeteer');
configuration.temporaryDirectory =
process.env['PUPPETEER_TMP_DIR'] ?? configuration.temporaryDirectory;
configuration.experiments ??= {};
return configuration;
};
exports.getConfiguration = getConfiguration;
//# sourceMappingURL=getConfiguration.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getConfiguration.js","sourceRoot":"","sources":["../../../src/getConfiguration.ts"],"names":[],"mappings":"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"}

View 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

View File

@@ -0,0 +1 @@
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/node/cli.ts"],"names":[],"mappings":";AAEA;;;;GAIG"}

51
backend/node_modules/puppeteer/lib/cjs/puppeteer/node/cli.js generated vendored Executable file
View File

@@ -0,0 +1,51 @@
#!/usr/bin/env node
"use strict";
/**
* @license
* Copyright 2023 Google Inc.
* SPDX-License-Identifier: Apache-2.0
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const browsers_1 = require("@puppeteer/browsers");
const revisions_js_1 = require("puppeteer-core/internal/revisions.js");
const version_js_1 = require("puppeteer-core/internal/util/version.js");
const puppeteer_js_1 = __importDefault(require("../puppeteer.js"));
const cacheDir = puppeteer_js_1.default.configuration
.cacheDirectory;
void new browsers_1.CLI({
cachePath: cacheDir,
scriptName: 'puppeteer',
version: version_js_1.packageVersion,
prefixCommand: {
cmd: 'browsers',
description: 'Manage browsers of this Puppeteer installation',
},
allowCachePathOverride: false,
pinnedBrowsers: {
[browsers_1.Browser.CHROME]: {
buildId: puppeteer_js_1.default.configuration.chrome?.version ||
revisions_js_1.PUPPETEER_REVISIONS['chrome'] ||
'latest',
skipDownload: puppeteer_js_1.default.configuration.chrome
?.skipDownload ?? false,
},
[browsers_1.Browser.FIREFOX]: {
buildId: puppeteer_js_1.default.configuration.firefox
?.version ||
revisions_js_1.PUPPETEER_REVISIONS['firefox'] ||
'latest',
skipDownload: puppeteer_js_1.default.configuration.firefox
?.skipDownload ?? true,
},
[browsers_1.Browser.CHROMEHEADLESSSHELL]: {
buildId: puppeteer_js_1.default.configuration['chrome-headless-shell']?.version ||
revisions_js_1.PUPPETEER_REVISIONS['chrome-headless-shell'] ||
'latest',
skipDownload: puppeteer_js_1.default.configuration['chrome-headless-shell']?.skipDownload ?? false,
},
},
}).run(process.argv);
//# sourceMappingURL=cli.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/node/cli.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;;;;AAEH,kDAAiD;AAEjD,uEAAyE;AACzE,wEAAuE;AAEvE,mEAAwC;AAExC,MAAM,QAAQ,GAAI,sBAAsC,CAAC,aAAa;KACnE,cAAe,CAAC;AAEnB,KAAK,IAAI,cAAG,CAAC;IACX,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,WAAW;IACvB,OAAO,EAAE,2BAAc;IACvB,aAAa,EAAE;QACb,GAAG,EAAE,UAAU;QACf,WAAW,EAAE,gDAAgD;KAC9D;IACD,sBAAsB,EAAE,KAAK;IAC7B,cAAc,EAAE;QACd,CAAC,kBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,OAAO,EACJ,sBAAsC,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO;gBACrE,kCAAmB,CAAC,QAAQ,CAAC;gBAC7B,QAAQ;YACV,YAAY,EACT,sBAAsC,CAAC,aAAa,CAAC,MAAM;gBAC1D,EAAE,YAAY,IAAI,KAAK;SAC5B;QACD,CAAC,kBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,OAAO,EACJ,sBAAsC,CAAC,aAAa,CAAC,OAAO;gBAC3D,EAAE,OAAO;gBACX,kCAAmB,CAAC,SAAS,CAAC;gBAC9B,QAAQ;YACV,YAAY,EACT,sBAAsC,CAAC,aAAa,CAAC,OAAO;gBAC3D,EAAE,YAAY,IAAI,IAAI;SAC3B;QACD,CAAC,kBAAO,CAAC,mBAAmB,CAAC,EAAE;YAC7B,OAAO,EACJ,sBAAsC,CAAC,aAAa,CACnD,uBAAuB,CACxB,EAAE,OAAO;gBACV,kCAAmB,CAAC,uBAAuB,CAAC;gBAC5C,QAAQ;YACV,YAAY,EACT,sBAAsC,CAAC,aAAa,CACnD,uBAAuB,CACxB,EAAE,YAAY,IAAI,KAAK;SAC3B;KACF;CACF,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}

View 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

View 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"}

View File

@@ -0,0 +1,122 @@
"use strict";
/**
* @license
* Copyright 2020 Google Inc.
* SPDX-License-Identifier: Apache-2.0
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.downloadBrowsers = downloadBrowsers;
const browsers_1 = require("@puppeteer/browsers");
const revisions_js_1 = require("puppeteer-core/internal/revisions.js");
const getConfiguration_js_1 = require("../getConfiguration.js");
async function downloadBrowser({ browser, configuration, cacheDir, platform, }) {
const unresolvedBuildId = configuration?.version || revisions_js_1.PUPPETEER_REVISIONS[browser] || 'latest';
const baseUrl = configuration?.downloadBaseUrl;
const buildId = await (0, browsers_1.resolveBuildId)(browser, platform, unresolvedBuildId);
try {
const result = await (0, browsers_1.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
*/
async function downloadBrowsers() {
overrideProxy();
const configuration = (0, getConfiguration_js_1.getConfiguration)();
if (configuration.skipDownload) {
logPolitely('**INFO** Skipping downloading browsers as instructed.');
return;
}
const platform = (0, browsers_1.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 = browsers_1.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 = browsers_1.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 = browsers_1.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

View File

@@ -0,0 +1 @@
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/node/install.ts"],"names":[],"mappings":"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"}

View 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

View 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"}

View File

@@ -0,0 +1,56 @@
"use strict";
/**
* @license
* Copyright 2017 Google Inc.
* SPDX-License-Identifier: Apache-2.0
*/
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.trimCache = exports.launch = exports.executablePath = exports.defaultArgs = exports.connect = void 0;
__exportStar(require("puppeteer-core"), exports);
const puppeteer_core_1 = require("puppeteer-core");
const getConfiguration_js_1 = require("./getConfiguration.js");
const configuration = (0, getConfiguration_js_1.getConfiguration)();
/**
* @public
*/
// @ts-expect-error using internal API.
const puppeteer = new puppeteer_core_1.PuppeteerNode({
isPuppeteerCore: false,
configuration,
});
/**
* @public
*/
exports.connect = puppeteer.connect,
/**
* @public
*/
exports.defaultArgs = puppeteer.defaultArgs,
/**
* @public
*/
exports.executablePath = puppeteer.executablePath,
/**
* @public
*/
exports.launch = puppeteer.launch,
/**
* @public
*/
exports.trimCache = puppeteer.trimCache;
exports.default = puppeteer;
//# sourceMappingURL=puppeteer.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../../../src/puppeteer.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;AAEH,iDAA+B;AAE/B,mDAA6C;AAE7C,+DAAuD;AAEvD,MAAM,aAAa,GAAG,IAAA,sCAAgB,GAAE,CAAC;AAEzC;;GAEG;AACH,uCAAuC;AACvC,MAAM,SAAS,GAAG,IAAI,8BAAa,CAAC;IAClC,eAAe,EAAE,KAAK;IACtB,aAAa;CACd,CAAC,CAAC;AAGD;;GAEG;AACH,eAAO,GAiBL,SAAS;AAhBX;;GAEG;AACH,mBAAW,GAaT,SAAS;AAZX;;GAEG;AACH,sBAAc,GASZ,SAAS;AARX;;GAEG;AACH,cAAM,GAKJ,SAAS;AAJX;;GAEG;AACH,iBAAS,GACP,SAAS,WAAC;AAEd,kBAAe,SAAS,CAAC"}