feat: Github Actions to Avoid PR Conflicts (#497)
* remove .env file * remove dotenv, move json dir * fix: create dir if not exists * test actions * fix: specific branch * test double commit * fix: only add dist dir * cleanup * test push without updating json * test actions without plugins diff * plugins: update json files for new plugins (#7) * test without config.json * plugins: update json files for new plugins (#8) * fix: ordering in Win is not the same as Linux * plugins: update json files for new plugins (#10) * test no update * test: create PR if there're changes * fix: wrong path * test: if there're changes * fix: wrong operator * fix: assign boolean to github output * plugins: update json files for new plugins (#13) * clean up and update README * clean up * last cleant up xD
This commit is contained in:
@@ -1,3 +0,0 @@
|
|||||||
GITHUB_USERNAME='nyagami'
|
|
||||||
GITHUB_REPOSITORY='plugins'
|
|
||||||
GITHUB_BRANCH='main'
|
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
name: Update json files
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- plugins
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
updatejson:
|
||||||
|
if: github.repository == 'LNReader/lnreader-sources'
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- uses: actions/setup-node@v3
|
||||||
|
with:
|
||||||
|
node-version: '16'
|
||||||
|
- name: Install dependencies
|
||||||
|
run: npm install
|
||||||
|
|
||||||
|
- name: Clean up current dist
|
||||||
|
run: |
|
||||||
|
rm -rf dist
|
||||||
|
mkdir dist
|
||||||
|
cat > config.json << EOF
|
||||||
|
{
|
||||||
|
"githubUsername": "LNReader",
|
||||||
|
"githubRepository": "lnreader-sources",
|
||||||
|
"githubBranch": "plugins"
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
- name: Update json files
|
||||||
|
id: json
|
||||||
|
run: |
|
||||||
|
node scripts/json_plugins.js
|
||||||
|
changes="$(git diff)"
|
||||||
|
if [ "$changes" ]
|
||||||
|
then
|
||||||
|
changes=1
|
||||||
|
else
|
||||||
|
changes=""
|
||||||
|
fi
|
||||||
|
echo "json-diff=$changes" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
- name: Create pull request
|
||||||
|
if: ${{ steps.json.outputs.json-diff }}
|
||||||
|
uses: peter-evans/create-pull-request@v4
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.REPO_SCOPED_TOKEN }}
|
||||||
|
author: rajarsheechatterjee <rajarshee.adm@gmail.com>
|
||||||
|
committer: rajarsheechatterjee <rajarshee.adm@gmail.com>
|
||||||
|
commit-message: 'plugins: update json files for new plugins'
|
||||||
|
title: Update json files
|
||||||
|
labels: enhancement
|
||||||
|
body: Auto-generated PR for updating json files
|
||||||
|
branch: update-json
|
||||||
|
delete-branch: true
|
||||||
@@ -1,2 +1,4 @@
|
|||||||
node_modules/**/*
|
node_modules/**/*
|
||||||
.vscode
|
.vscode
|
||||||
|
.env
|
||||||
|
config.json
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
# LNReader Plugins
|
# LNReader Plugins
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<img alt="GitHub issues by-label" src="https://img.shields.io/github/issues/lnreader/lnreader-sources/Source%20Request?color=success&label=source%20requests">
|
|
||||||
<img alt="GitHub issues by-label" src="https://img.shields.io/github/issues/lnreader/lnreader-sources/Bug?color=red&label=bugs">
|
<img alt="GitHub issues by-label" src="https://img.shields.io/github/issues/lnreader/lnreader-sources/Source%20Request?color=success&label=source%20requests">
|
||||||
|
|
||||||
|
<img alt="GitHub issues by-label" src="https://img.shields.io/github/issues/lnreader/lnreader-sources/Bug?color=red&label=bugs">
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
Repository to host plugins and related issues, and requests for [LNReader](https://github.com/LNReader/lnreader).
|
Repository to host plugins and related issues, and requests for [LNReader](https://github.com/LNReader/lnreader).
|
||||||
@@ -12,47 +15,71 @@ Repository to host plugins and related issues, and requests for [LNReader](https
|
|||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
1. Please use this [template](./template.js) or [template.min](./template.min.js)
|
1. Please use this [template](./template.js) or [template.min](./template.min.js)
|
||||||
|
|
||||||
2. Choose your language in [./plugins](./plugins)
|
2. Choose your language in [./plugins](./plugins)
|
||||||
|
|
||||||
+ If your language doenst exist, please request us. We will add it soon.
|
+ If your language doenst exist, please request us. We will add it soon.
|
||||||
|
|
||||||
3. Write your scripts
|
3. Write your scripts
|
||||||
|
|
||||||
+ See example: [Hako](./plugins/vietnamese/LNHako.js)
|
+ See example: [Hako](./plugins/vietnamese/LNHako.js)
|
||||||
|
|
||||||
|
|
||||||
## Test your script
|
## Test your script
|
||||||
|
|
||||||
We use expressjs to make an UI web for testing.
|
We use expressjs to make an UI web for testing.
|
||||||
|
|
||||||
1. Installing
|
1. Installing
|
||||||
```
|
|
||||||
npm install
|
```
|
||||||
```
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
2. Running
|
2. Running
|
||||||
```
|
|
||||||
nodemon index.js
|
```
|
||||||
```
|
nodemon index.js
|
||||||
+ Then open http://localhost:3000
|
```
|
||||||
|
|
||||||
|
+ Then open http://localhost:3000
|
||||||
|
|
||||||
3. Testing
|
3. Testing
|
||||||
+ Find you plugin
|
|
||||||
+ Check if all functions of your plugin work properly
|
+ Find you plugin
|
||||||
#### No need to reload webpage after changing your plugin script.
|
|
||||||
|
+ Check if all functions of your plugin work properly
|
||||||
|
|
||||||
|
#### No need to reload webpage after changing your plugin script.
|
||||||
|
|
||||||
- One more thing: you can use [cheerio_space](./cheerio_space) to build functions without requesting to the site.
|
- One more thing: you can use [cheerio_space](./cheerio_space) to build functions without requesting to the site.
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
If you want to test plugin in app side, remember to config these things.
|
If you want to test plugin in app side, remember to config these things.
|
||||||
|
|
||||||
in [.env](./.env)
|
in [.env](./.env)
|
||||||
|
|
||||||
|
1. Create `config.json` file in root dir
|
||||||
|
2. Add your github infomation. Here is an example.
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"githubUsername": "LNReader",
|
||||||
|
"githubRepository": "lnreader-sources",
|
||||||
|
"githubBranch": "plugins"
|
||||||
|
}
|
||||||
```
|
```
|
||||||
GITHUB_USERNAME='nyagami'
|
3. Just commit and push it. And you will see your own json files in github folk: dist/`username`/
|
||||||
GITHUB_REPOSITORY='plugins'
|
|
||||||
GITHUB_BRANCH='main'
|
also in [pluginManager.ts](https://github.com/LNReader/lnreader/blob/plugins/src/plugins/pluginManager.ts) (app repo)
|
||||||
|
|
||||||
|
```ts
|
||||||
|
const githubUsername = 'LNReader';
|
||||||
|
const githubRepository = 'lnreader-sources';
|
||||||
|
const githubBranch = 'plugins';
|
||||||
```
|
```
|
||||||
|
|
||||||
in [pluginManager.ts](https://github.com/nyagami/lnreader/blob/install_sources/src/plugins/pluginManager.ts)
|
- Note: You dont have to remove your own json files when creating a PR.
|
||||||
```ts
|
|
||||||
const fetchPlugins = async () => {
|
|
||||||
const availablePlugins: Record<Languages, Array<PluginItem>> = await fetch(
|
|
||||||
'https://raw.githubusercontent.com/nyagami/plugins/main/plugins/plugins.min.json',
|
|
||||||
).then(res => res.json());
|
|
||||||
return availablePlugins;
|
|
||||||
};
|
|
||||||
```
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
|
|
||||||
The developer of this application does not have any affiliation with the content providers available.
|
The developer of this application does not have any affiliation with the content providers available.
|
||||||
|
|||||||
+1
-8
@@ -3,11 +3,6 @@ const languages = require('@libs/languages');
|
|||||||
const path = require('path')
|
const path = require('path')
|
||||||
const root = path.dirname(require.main.filename);
|
const root = path.dirname(require.main.filename);
|
||||||
|
|
||||||
const githubIconsLink = 'https://raw.githubusercontent.com/nyagami/plugins/main/icons';
|
|
||||||
const githubIconSuffix = '?raw=true';
|
|
||||||
const githubPluginsLink = 'https://raw.githubusercontent.com/nyagami/plugins/main/plugins';
|
|
||||||
const githubPluginSuffix = '?newtest=true';
|
|
||||||
|
|
||||||
const all_plugins = () => {
|
const all_plugins = () => {
|
||||||
const res = {}
|
const res = {}
|
||||||
for (let language in languages) { //language with English name
|
for (let language in languages) { //language with English name
|
||||||
@@ -19,10 +14,8 @@ const all_plugins = () => {
|
|||||||
if(plugin.startsWith('.')) return;
|
if(plugin.startsWith('.')) return;
|
||||||
const requirePath = `@plugins/${language.toLowerCase()}/${plugin.split('.')[0]}`
|
const requirePath = `@plugins/${language.toLowerCase()}/${plugin.split('.')[0]}`
|
||||||
const instance = require(requirePath);
|
const instance = require(requirePath);
|
||||||
const { id, name, lang, version, icon, description } = instance;
|
const { id, name, lang, version, description } = instance;
|
||||||
const info = { id, name, lang, version, description } // lang: language with native name
|
const info = { id, name, lang, version, description } // lang: language with native name
|
||||||
info.url = `${githubPluginsLink}/${language.toLowerCase()}/${plugin}${githubPluginSuffix}`;
|
|
||||||
info.iconUrl = `${githubIconsLink}/${icon}${githubIconSuffix}`;
|
|
||||||
info.requirePath = requirePath;
|
info.requirePath = requirePath;
|
||||||
res[lang].push(info);
|
res[lang].push(info);
|
||||||
});
|
});
|
||||||
|
|||||||
Vendored
+287
@@ -0,0 +1,287 @@
|
|||||||
|
{
|
||||||
|
"中文, 汉语, 漢語": [],
|
||||||
|
"English": [
|
||||||
|
{
|
||||||
|
"id": "ANF.com",
|
||||||
|
"name": "AllNovelFull",
|
||||||
|
"site": "https://allnovelfull.com",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/allnovelfull.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/allnovelfull/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "BLN.com",
|
||||||
|
"name": "BestLightNovel",
|
||||||
|
"site": "https://bestlightnovel.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/bestlightnovel.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/bestlightnovel/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "comrademao",
|
||||||
|
"name": "Comrade Mao",
|
||||||
|
"site": "https://comrademao.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/comrademao.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/comrademao/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "DDL.com",
|
||||||
|
"name": "Divine Dao Library",
|
||||||
|
"site": "https://www.divinedaolibrary.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/divinedaolibrary.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/divinedaolibrary/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "foxaholic",
|
||||||
|
"name": "Foxaholic",
|
||||||
|
"site": "https://www.foxaholic.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "Digging Pits",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/foxaholic.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/foxaholic/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "FWN.com",
|
||||||
|
"name": "Web NOVEL",
|
||||||
|
"site": "https://freewebnovel.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/freewebnovel.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/freewebnovel/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "LNR.org",
|
||||||
|
"name": "LightNovelReader",
|
||||||
|
"site": "https://lightnovelreader.org",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "This is description for plugin",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/LightNovelReader.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/lightnovelreader/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "NF.me",
|
||||||
|
"name": "NovelFull.me",
|
||||||
|
"site": "https://novelfull.me/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/NovelFullMe.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/novelfullme/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "NO.net",
|
||||||
|
"name": "novelsOnline",
|
||||||
|
"site": "https://novelsonline.net",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/NovelOnline.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/coverNotAvailable.jpg"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "novelpub.com",
|
||||||
|
"name": "NovelPub",
|
||||||
|
"site": "https://www.novelpub.com/",
|
||||||
|
"lang": "English",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/english/novelpub.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/en/novelpub/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"français, française": [
|
||||||
|
{
|
||||||
|
"id": "chireads.com",
|
||||||
|
"name": "Chireads",
|
||||||
|
"site": "https://chireads.com/",
|
||||||
|
"lang": "français, française",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/french/chireads.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/fr/chireads/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "NDG.com",
|
||||||
|
"name": "NovelDeGlace",
|
||||||
|
"site": "https://noveldeglace.com/",
|
||||||
|
"lang": "français, française",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/french/noveldeglace.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/fr/noveldeglace/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Bahasa Indonesia": [
|
||||||
|
{
|
||||||
|
"id": "IDWN.id",
|
||||||
|
"name": "IndoWebNovel",
|
||||||
|
"site": "https://indowebnovel.id/id/",
|
||||||
|
"lang": "Bahasa Indonesia",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/indonesian/indowebnovel.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/id/indowebnovel/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "novelringan.com",
|
||||||
|
"name": "NovelRingan",
|
||||||
|
"site": "https://novelringan.com/",
|
||||||
|
"lang": "Bahasa Indonesia",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/indonesian/novelringan.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/id/novelringan/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "sakura.id",
|
||||||
|
"name": "SakuraNovel",
|
||||||
|
"site": "https://sakuranovel.id/",
|
||||||
|
"lang": "Bahasa Indonesia",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/indonesian/sakuranovel.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/id/sakuranovel/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"日本語": [
|
||||||
|
{
|
||||||
|
"id": "yomou.syosetu",
|
||||||
|
"name": "Syosetu",
|
||||||
|
"site": "https://yomou.syosetu.com/",
|
||||||
|
"lang": "日本語",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "小説を読もう!は「小説家になろう」に投稿された",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/japanese/Syosetu.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/jp/syosetu/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"한국어, 조선말": [
|
||||||
|
{
|
||||||
|
"id": "agit.xyz",
|
||||||
|
"name": "Agitoon",
|
||||||
|
"site": "https://agit501.xyz/",
|
||||||
|
"lang": "한국어, 조선말",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/korean/Agitoon.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/kr/agitoon/agit.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Português": [],
|
||||||
|
"русский язык": [
|
||||||
|
{
|
||||||
|
"id": "jaomix.ru",
|
||||||
|
"name": "Jaomix",
|
||||||
|
"site": "https://jaomix.ru",
|
||||||
|
"lang": "русский язык",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/russian/jaomix.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/ru/jaomix/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "RNBH.org",
|
||||||
|
"name": "RanobeHub",
|
||||||
|
"site": "https://ranobehub.org/",
|
||||||
|
"lang": "русский язык",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/russian/ranobehub.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/ru/ranobehub/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "RNRF",
|
||||||
|
"name": "РанобэРФ",
|
||||||
|
"site": "https://ранобэ.рф",
|
||||||
|
"lang": "русский язык",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/russian/ranoberf.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/ru/ranoberf/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"español, castellano": [
|
||||||
|
{
|
||||||
|
"id": "awuxia.com",
|
||||||
|
"name": "ReinoWuxia",
|
||||||
|
"site": "http://www.reinowuxia.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/novelawuxia.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/novelawuxia/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "HasuTL",
|
||||||
|
"name": "Hasu Translations",
|
||||||
|
"site": "https://hasutl.wordpress.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/hasutl.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/hasutl/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ligera.com",
|
||||||
|
"name": "Novelas Ligera",
|
||||||
|
"site": "https://novelasligera.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/novelasligera.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/novelasligera/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "oasisTL.wp",
|
||||||
|
"name": "Oasis Translations",
|
||||||
|
"site": "https://oasistranslations.wordpress.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/oasistranslations.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/oasistranslations/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "skynovels.net",
|
||||||
|
"name": "SkyNovels",
|
||||||
|
"site": "https://www.skynovels.net/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/skynovels.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/skynovels/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "TNL.com",
|
||||||
|
"name": "TuNovelaLigera",
|
||||||
|
"site": "https://tunovelaligera.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/tunovelaligera.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/tunovelaligera/icon.png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "yuukitls.com",
|
||||||
|
"name": "Yuuki Tls",
|
||||||
|
"site": "https://yuukitls.com/",
|
||||||
|
"lang": "español, castellano",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/spanish/yukitls.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/es/yuukitls/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Türkçe": [
|
||||||
|
{
|
||||||
|
"id": "epiknovel.com",
|
||||||
|
"name": "EpikNovel",
|
||||||
|
"site": "https://www.epiknovel.com/",
|
||||||
|
"lang": "Türkçe",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/turkish/epiknovel.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/tr/epiknovel/icon.png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"Tiếng Việt": [
|
||||||
|
{
|
||||||
|
"id": "ln.hako",
|
||||||
|
"name": "Hako",
|
||||||
|
"site": "https://ln.hako.vn",
|
||||||
|
"lang": "Tiếng Việt",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "Hầm trú ẩn Hako",
|
||||||
|
"url": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/plugins/vietnamese/LNHako.js",
|
||||||
|
"iconUrl": "https://raw.githubusercontent.com/LNReader/lnreader-sources/plugins/icons/src/vi/hakolightnovel/icon.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Vendored
+1
File diff suppressed because one or more lines are too long
@@ -43,5 +43,5 @@ app.get('/', (req, res) => {
|
|||||||
|
|
||||||
|
|
||||||
app.listen(port, host, () => {
|
app.listen(port, host, () => {
|
||||||
console.log("testing plugins web listening on http://localhost:3000");
|
console.log("Testing plugins web listening on http://localhost:3000");
|
||||||
});
|
});
|
||||||
Generated
-14
@@ -13,7 +13,6 @@
|
|||||||
"cheerio": "^1.0.0-rc.10",
|
"cheerio": "^1.0.0-rc.10",
|
||||||
"cli-color": "^2.0.3",
|
"cli-color": "^2.0.3",
|
||||||
"dayjs": "^1.11.4",
|
"dayjs": "^1.11.4",
|
||||||
"dotenv": "^16.0.3",
|
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
"module-alias": "^2.2.2",
|
"module-alias": "^2.2.2",
|
||||||
"node-fetch": "^3.3.1"
|
"node-fetch": "^3.3.1"
|
||||||
@@ -435,14 +434,6 @@
|
|||||||
"url": "https://github.com/fb55/domutils?sponsor=1"
|
"url": "https://github.com/fb55/domutils?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/dotenv": {
|
|
||||||
"version": "16.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz",
|
|
||||||
"integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=12"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/ee-first": {
|
"node_modules/ee-first": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
|
||||||
@@ -1958,11 +1949,6 @@
|
|||||||
"domhandler": "^4.2.0"
|
"domhandler": "^4.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dotenv": {
|
|
||||||
"version": "16.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz",
|
|
||||||
"integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ=="
|
|
||||||
},
|
|
||||||
"ee-first": {
|
"ee-first": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
|
||||||
|
|||||||
+1
-2
@@ -6,7 +6,7 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node ./index.js",
|
"start": "node ./index.js",
|
||||||
"test": "exit 0",
|
"test": "exit 0",
|
||||||
"json": "node ./scripts/json_plugins.js && git add ."
|
"json": "node ./scripts/json_plugins.js && git add dist"
|
||||||
},
|
},
|
||||||
"author": "",
|
"author": "",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
@@ -15,7 +15,6 @@
|
|||||||
"cheerio": "^1.0.0-rc.10",
|
"cheerio": "^1.0.0-rc.10",
|
||||||
"cli-color": "^2.0.3",
|
"cli-color": "^2.0.3",
|
||||||
"dayjs": "^1.11.4",
|
"dayjs": "^1.11.4",
|
||||||
"dotenv": "^16.0.3",
|
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
"module-alias": "^2.2.2",
|
"module-alias": "^2.2.2",
|
||||||
"node-fetch": "^3.3.1"
|
"node-fetch": "^3.3.1"
|
||||||
|
|||||||
@@ -1,287 +0,0 @@
|
|||||||
{
|
|
||||||
"中文, 汉语, 漢語": [],
|
|
||||||
"English": [
|
|
||||||
{
|
|
||||||
"id": "LNR.org",
|
|
||||||
"name": "LightNovelReader",
|
|
||||||
"site": "https://lightnovelreader.org",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "This is description for plugin",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/LightNovelReader.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/lightnovelreader/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "NF.me",
|
|
||||||
"name": "NovelFull.me",
|
|
||||||
"site": "https://novelfull.me/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/NovelFullMe.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/novelfullme/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "NO.net",
|
|
||||||
"name": "novelsOnline",
|
|
||||||
"site": "https://novelsonline.net",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/NovelOnline.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/coverNotAvailable.jpg"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "ANF.com",
|
|
||||||
"name": "AllNovelFull",
|
|
||||||
"site": "https://allnovelfull.com",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/allnovelfull.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/allnovelfull/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "BLN.com",
|
|
||||||
"name": "BestLightNovel",
|
|
||||||
"site": "https://bestlightnovel.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/bestlightnovel.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/bestlightnovel/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "comrademao",
|
|
||||||
"name": "Comrade Mao",
|
|
||||||
"site": "https://comrademao.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/comrademao.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/comrademao/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "DDL.com",
|
|
||||||
"name": "Divine Dao Library",
|
|
||||||
"site": "https://www.divinedaolibrary.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/divinedaolibrary.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/divinedaolibrary/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "foxaholic",
|
|
||||||
"name": "Foxaholic",
|
|
||||||
"site": "https://www.foxaholic.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "Digging Pits",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/foxaholic.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/foxaholic/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "FWN.com",
|
|
||||||
"name": "Web NOVEL",
|
|
||||||
"site": "https://freewebnovel.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/freewebnovel.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/freewebnovel/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "novelpub.com",
|
|
||||||
"name": "NovelPub",
|
|
||||||
"site": "https://www.novelpub.com/",
|
|
||||||
"lang": "English",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/english/novelpub.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/en/novelpub/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"français, française": [
|
|
||||||
{
|
|
||||||
"id": "chireads.com",
|
|
||||||
"name": "Chireads",
|
|
||||||
"site": "https://chireads.com/",
|
|
||||||
"lang": "français, française",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/french/chireads.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/fr/chireads/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "NDG.com",
|
|
||||||
"name": "NovelDeGlace",
|
|
||||||
"site": "https://noveldeglace.com/",
|
|
||||||
"lang": "français, française",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/french/noveldeglace.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/fr/noveldeglace/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"Bahasa Indonesia": [
|
|
||||||
{
|
|
||||||
"id": "IDWN.id",
|
|
||||||
"name": "IndoWebNovel",
|
|
||||||
"site": "https://indowebnovel.id/id/",
|
|
||||||
"lang": "Bahasa Indonesia",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/indonesian/indowebnovel.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/id/indowebnovel/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "novelringan.com",
|
|
||||||
"name": "NovelRingan",
|
|
||||||
"site": "https://novelringan.com/",
|
|
||||||
"lang": "Bahasa Indonesia",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/indonesian/novelringan.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/id/novelringan/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "sakura.id",
|
|
||||||
"name": "SakuraNovel",
|
|
||||||
"site": "https://sakuranovel.id/",
|
|
||||||
"lang": "Bahasa Indonesia",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/indonesian/sakuranovel.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/id/sakuranovel/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"日本語": [
|
|
||||||
{
|
|
||||||
"id": "yomou.syosetu",
|
|
||||||
"name": "Syosetu",
|
|
||||||
"site": "https://yomou.syosetu.com/",
|
|
||||||
"lang": "日本語",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "小説を読もう!は「小説家になろう」に投稿された",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/japanese/Syosetu.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/jp/syosetu/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"한국어, 조선말": [
|
|
||||||
{
|
|
||||||
"id": "agit.xyz",
|
|
||||||
"name": "Agitoon",
|
|
||||||
"site": "https://agit501.xyz/",
|
|
||||||
"lang": "한국어, 조선말",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/korean/Agitoon.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/kr/agitoon/agit.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"Português": [],
|
|
||||||
"русский язык": [
|
|
||||||
{
|
|
||||||
"id": "jaomix.ru",
|
|
||||||
"name": "Jaomix",
|
|
||||||
"site": "https://jaomix.ru",
|
|
||||||
"lang": "русский язык",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/russian/jaomix.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/ru/jaomix/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "RNBH.org",
|
|
||||||
"name": "RanobeHub",
|
|
||||||
"site": "https://ranobehub.org/",
|
|
||||||
"lang": "русский язык",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/russian/ranobehub.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/ru/ranobehub/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "RNRF",
|
|
||||||
"name": "РанобэРФ",
|
|
||||||
"site": "https://ранобэ.рф",
|
|
||||||
"lang": "русский язык",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/russian/ranoberf.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/ru/ranoberf/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"español, castellano": [
|
|
||||||
{
|
|
||||||
"id": "HasuTL",
|
|
||||||
"name": "Hasu Translations",
|
|
||||||
"site": "https://hasutl.wordpress.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/hasutl.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/hasutl/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "ligera.com",
|
|
||||||
"name": "Novelas Ligera",
|
|
||||||
"site": "https://novelasligera.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/novelasligera.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/novelasligera/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "awuxia.com",
|
|
||||||
"name": "ReinoWuxia",
|
|
||||||
"site": "http://www.reinowuxia.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/novelawuxia.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/novelawuxia/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "oasisTL.wp",
|
|
||||||
"name": "Oasis Translations",
|
|
||||||
"site": "https://oasistranslations.wordpress.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/oasistranslations.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/oasistranslations/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "skynovels.net",
|
|
||||||
"name": "SkyNovels",
|
|
||||||
"site": "https://www.skynovels.net/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/skynovels.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/skynovels/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "TNL.com",
|
|
||||||
"name": "TuNovelaLigera",
|
|
||||||
"site": "https://tunovelaligera.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/tunovelaligera.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/tunovelaligera/icon.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "yuukitls.com",
|
|
||||||
"name": "Yuuki Tls",
|
|
||||||
"site": "https://yuukitls.com/",
|
|
||||||
"lang": "español, castellano",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/spanish/yukitls.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/es/yuukitls/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"Türkçe": [
|
|
||||||
{
|
|
||||||
"id": "epiknovel.com",
|
|
||||||
"name": "EpikNovel",
|
|
||||||
"site": "https://www.epiknovel.com/",
|
|
||||||
"lang": "Türkçe",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/turkish/epiknovel.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/tr/epiknovel/icon.png"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"Tiếng Việt": [
|
|
||||||
{
|
|
||||||
"id": "ln.hako",
|
|
||||||
"name": "Hako",
|
|
||||||
"site": "https://ln.hako.vn",
|
|
||||||
"lang": "Tiếng Việt",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"description": "Cổng LightNovel",
|
|
||||||
"url": "https://raw.githubusercontent.com/nyagami/plugins/main/plugins/vietnamese/LNHako.js",
|
|
||||||
"iconUrl": "https://raw.githubusercontent.com/nyagami/plugins/main/icons/src/vi/hakolightnovel/icon.png"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -189,7 +189,7 @@ module.exports = {
|
|||||||
icon: 'src/vi/hakolightnovel/icon.png',
|
icon: 'src/vi/hakolightnovel/icon.png',
|
||||||
site: baseUrl,
|
site: baseUrl,
|
||||||
lang: languages.Vietnamese,
|
lang: languages.Vietnamese,
|
||||||
description: 'Cổng LightNovel',
|
description: 'Hầm trú ẩn Hako',
|
||||||
protected: true,
|
protected: true,
|
||||||
fetchImage,
|
fetchImage,
|
||||||
popularNovels,
|
popularNovels,
|
||||||
|
|||||||
+15
-6
@@ -1,19 +1,25 @@
|
|||||||
require('module-alias/register');
|
require('module-alias/register');
|
||||||
require('dotenv').config();
|
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
const languages = require('@libs/languages');
|
const languages = require('@libs/languages');
|
||||||
const path = require('path')
|
const path = require('path')
|
||||||
const root = path.dirname(__dirname);
|
const root = path.dirname(__dirname);
|
||||||
const username = process.env.GITHUB_USERNAME;
|
const config = fs.existsSync(path.join(root, "config.json")) ? require("../config.json") : {};
|
||||||
const repo = process.env.GITHUB_REPOSITORY;
|
const username = config.githubUsername;
|
||||||
const branch = process.env.GITHUB_BRANCH;
|
const repo = config.githubRepository;
|
||||||
|
const branch = config.githubBranch;
|
||||||
|
|
||||||
|
if(!username || !repo || !branch){
|
||||||
|
process.exit();
|
||||||
|
}
|
||||||
|
if(!fs.existsSync(path.join(root, "dist", username))){
|
||||||
|
fs.mkdirSync(path.join(root, "dist", username));
|
||||||
|
}
|
||||||
const githubIconsLink = `https://raw.githubusercontent.com/${username}/${repo}/${branch}/icons`;
|
const githubIconsLink = `https://raw.githubusercontent.com/${username}/${repo}/${branch}/icons`;
|
||||||
const githubPluginsLink = `https://raw.githubusercontent.com/${username}/${repo}/${branch}/plugins`;
|
const githubPluginsLink = `https://raw.githubusercontent.com/${username}/${repo}/${branch}/plugins`;
|
||||||
|
|
||||||
const json = {};
|
const json = {};
|
||||||
const jsonPath = path.join(root, 'plugins', 'plugins.json');
|
const jsonPath = path.join(root, 'dist', username, 'plugins.json');
|
||||||
const jsonMinPath = path.join(root, 'plugins', 'plugins.min.json');
|
const jsonMinPath = path.join(root, 'dist', username, 'plugins.min.json');
|
||||||
|
|
||||||
for (let language in languages) { // language with English name
|
for (let language in languages) { // language with English name
|
||||||
const langPath = path.join(root, 'plugins', language.toLowerCase());
|
const langPath = path.join(root, 'plugins', language.toLowerCase());
|
||||||
@@ -35,6 +41,9 @@ for (let language in languages) { // language with English name
|
|||||||
console.log('Collected', name);
|
console.log('Collected', name);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for(let lang in json) json[lang].sort((a, b) => a.id.localeCompare(b.id))
|
||||||
|
|
||||||
fs.writeFileSync(jsonMinPath, JSON.stringify(json));
|
fs.writeFileSync(jsonMinPath, JSON.stringify(json));
|
||||||
fs.writeFileSync(jsonPath, JSON.stringify(json, null, '\t'));
|
fs.writeFileSync(jsonPath, JSON.stringify(json, null, '\t'));
|
||||||
console.log('Done ✅');
|
console.log('Done ✅');
|
||||||
|
|||||||
Reference in New Issue
Block a user