Files
lnreader-plugins/scripts/multisrc/readwn/generator.ts
T
Rider21 c118cc2702 plugin refactoring (#639)
* fix

* fix

* madara plugins cleaned

Error: net::ERR_NAME_NOT_RESOLVED at https://cratenovel.com/novel/page/1?m_orderby=latest
Error: net::ERR_SSL_PROTOCOL_ERROR at https://clicknovel.net/novel/page/1?m_orderby=latest
Error: net::ERR_NAME_NOT_RESOLVED at https://www.onlymtl.com/novel/page/1?m_orderby=latest
Error: net::ERR_TOO_MANY_REDIRECTS at https://mtlnovel.club/novel/page/1?m_orderby=latest
Error: net::ERR_NAME_NOT_RESOLVED at https://noobchan.xyz/novel/page/1?m_orderby=latest

* readwn

* .
2023-11-27 19:51:58 +05:30

35 lines
954 B
TypeScript

import { FilterInputs } from "../../../libs/filterInputs";
import { ScrpitGeneratorFunction } from "../generate";
import list from "./sources.json";
import { ReadwnMetadata } from "./template";
import { readFileSync } from "fs";
import path from "path";
export const generateAll: ScrpitGeneratorFunction = function () {
return list.map((metadata: ReadwnMetadata) => {
return generator(metadata);
});
};
const generator = function generator(metadata: ReadwnMetadata) {
const rulateTemplate = readFileSync(path.join(__dirname, "template.ts"), {
encoding: "utf-8",
});
metadata.filters = metadata.filters?.map((filter: any) => ({
...filter,
inputType: FilterInputs[filter.inputType],
}));
const pluginScript = `
${rulateTemplate}
const plugin = new ReadwnPlugin(${JSON.stringify(metadata)});
export default plugin;
`.trim();
return {
lang: "english",
filename: metadata.sourceName,
pluginScript,
};
};