Skip to content

Push mknov upstream - #2520

Open
hamedhani1998 wants to merge 2 commits into
lnreader:masterfrom
hamedhani1998:push-mknov-upstream
Open

hamedhani1998 wants to merge 2 commits into
lnreader:masterfrom
hamedhani1998:push-mknov-upstream

Conversation

@hamedhani1998

@hamedhani1998 hamedhani1998 commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Checklist

  • Update version code if an existing plugin was modified
  • Test changes in Plugin Playground or the app
  • Reference related issues in the PR body (e.g. Closes #xyz)
  • Commit messages follow type(scope): description (e.g. feat(<generator>): add new source)

Yemen and others added 2 commits September 13, 2026 10:13
Add source plugin for mknov.com (مملكه الروايات), an Arabic novel site.

Features:
- popularNovels, parseNovel, parseChapter, searchNovels, resolveUrl
- Decodes the site's font-cmap obfuscation (19 rotating cipher maps)
- Handles Next.js RSC flight payload extraction for chapter content

Co-Authored-By: Claude Code <noreply@anthropic.com>
TypeScript downlevels [...content] to a __spreadArray helper that requires
a real array and throws "Cannot use 'in' operator" on strings during
parseChapter. Switch to Array.from which iterates strings safely.

Co-Authored-By: Claude Code <noreply@anthropic.com>
Comment thread .js/src/plugins/arabic/mknov.js Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you remove this?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi — this .js is the compiled output of plugins/arabic/mknov.ts. I only committed it (as a separate "chore" commit) so the plugin could be loaded and tested in the app immediately, without pulling from a build step first.

The file itself is not required: the repo .gitignore already lists .js, and none of the other plugins under plugins/arabic/ commit compiled output — the build generates it from the .ts. I will remove it from the PR so it only ships the TypeScript source.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi — this .js is the compiled output of plugins/arabic/mknov.ts. I only committed it (as a separate "chore" commit) so the plugin could be loaded and tested in the app immediately, without pulling from a build step first.

The file itself is not required: the repo .gitignore already lists .js, and none of the other plugins under plugins/arabic/ commit compiled output — the build generates it from the .ts. I will remove it from the PR so it only ships the TypeScript source.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — the compiled .js is removed. The PR now ships only plugins/arabic/mknov.ts (+ the icon), same as the other plugins.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants