From f2f3e4aa52e1ac2ebfb359e258bb7301d3b1cab8 Mon Sep 17 00:00:00 2001 From: Raiyn Aydin Date: Wed, 23 Sep 2026 17:48:23 +0800 Subject: [PATCH] feat(madara): add Tangerine Archive source Add tangerinearchive.com (English, Madara, new chapter endpoint) to the madara generator sources, with additive template fallbacks for Translator(s)->author and paragraph-based summaries. Co-Authored-By: Muse Spark --- plugins/multisrc/madara/sources.json | 9 +++++++++ plugins/multisrc/madara/template.ts | 12 ++++++++++++ .../multisrc/madara/tangerinearchive/icon.png | Bin 0 -> 25064 bytes 3 files changed, 21 insertions(+) create mode 100644 public/static/multisrc/madara/tangerinearchive/icon.png diff --git a/plugins/multisrc/madara/sources.json b/plugins/multisrc/madara/sources.json index c5d39c9ce..7258a11d2 100644 --- a/plugins/multisrc/madara/sources.json +++ b/plugins/multisrc/madara/sources.json @@ -676,5 +676,14 @@ "options": { "useNewChapterEndpoint": true } + }, + { + "id": "tangerinearchive", + "sourceSite": "https://tangerinearchive.com/", + "sourceName": "Tangerine Archive", + "options": { + "lang": "English", + "useNewChapterEndpoint": true + } } ] diff --git a/plugins/multisrc/madara/template.ts b/plugins/multisrc/madara/template.ts index 91b01be6c..1ab683b61 100644 --- a/plugins/multisrc/madara/template.ts +++ b/plugins/multisrc/madara/template.ts @@ -235,6 +235,11 @@ export class MadaraPlugin implements Plugin.PluginBase { case 'المؤلف (ين)': novel.author = detail.text().trim(); break; + case 'Translator(s)': + case 'Translator': + case 'Translators': + if (!novel.author) novel.author = detail.text().trim(); + break; case 'Status': case 'Novel': case 'Estado': @@ -286,6 +291,13 @@ export class MadaraPlugin implements Plugin.PluginBase { .get() .join('\n\n') .trim() || + loadedCheerio('.post-content_item h5:contains("Summary")') + .next() + .find('p') + .map((i, el) => loadedCheerio(el).text()) + .get() + .join('\n\n') + .trim() || loadedCheerio('.manga-summary p') .map((i, el) => loadedCheerio(el).text()) .get() diff --git a/public/static/multisrc/madara/tangerinearchive/icon.png b/public/static/multisrc/madara/tangerinearchive/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ee788ca631677e0a38c78566a6a02723ba3b5dbe GIT binary patch literal 25064 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