@riffyh/adapter-niyaniya 1.0.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +90 -63
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -3
package/dist/index.mjs
CHANGED
|
@@ -43,59 +43,55 @@ const getBookImage = async (size, bookId, bookKey, dataId, dataKey, crt, userAge
|
|
|
43
43
|
};
|
|
44
44
|
//#endregion
|
|
45
45
|
//#region src/constants/namespace.ts
|
|
46
|
-
let Namespace = /* @__PURE__ */ function(Namespace) {
|
|
47
|
-
Namespace[Namespace["Artist"] = 1] = "Artist";
|
|
48
|
-
Namespace[Namespace["Circle"] = 2] = "Circle";
|
|
49
|
-
Namespace[Namespace["Parody"] = 3] = "Parody";
|
|
50
|
-
Namespace[Namespace["Magazine"] = 4] = "Magazine";
|
|
51
|
-
Namespace[Namespace["Character"] = 5] = "Character";
|
|
52
|
-
Namespace[Namespace["Cosplayer"] = 6] = "Cosplayer";
|
|
53
|
-
Namespace[Namespace["Uploader"] = 7] = "Uploader";
|
|
54
|
-
Namespace[Namespace["Male"] = 8] = "Male";
|
|
55
|
-
Namespace[Namespace["Female"] = 9] = "Female";
|
|
56
|
-
Namespace[Namespace["Mixed"] = 10] = "Mixed";
|
|
57
|
-
Namespace[Namespace["Language"] = 11] = "Language";
|
|
58
|
-
Namespace[Namespace["Other"] = 12] = "Other";
|
|
59
|
-
Namespace[Namespace["Reclass"] = 13] = "Reclass";
|
|
60
|
-
return Namespace;
|
|
61
|
-
}({});
|
|
62
46
|
const namespace = {
|
|
63
|
-
[
|
|
64
|
-
[
|
|
65
|
-
[
|
|
66
|
-
[
|
|
67
|
-
[
|
|
68
|
-
[
|
|
69
|
-
[
|
|
70
|
-
[
|
|
71
|
-
[
|
|
72
|
-
[
|
|
73
|
-
[
|
|
74
|
-
[
|
|
75
|
-
[
|
|
47
|
+
[1]: "artist",
|
|
48
|
+
[2]: "circle",
|
|
49
|
+
[3]: "parody",
|
|
50
|
+
[4]: "magazine",
|
|
51
|
+
[5]: "character",
|
|
52
|
+
[6]: "cosplayer",
|
|
53
|
+
[7]: "uploader",
|
|
54
|
+
[8]: "male",
|
|
55
|
+
[9]: "female",
|
|
56
|
+
[10]: "mixed",
|
|
57
|
+
[11]: "language",
|
|
58
|
+
[12]: "other",
|
|
59
|
+
[13]: "reclass"
|
|
76
60
|
};
|
|
77
61
|
//#endregion
|
|
78
62
|
//#region src/constants/tagTypeMap.ts
|
|
79
63
|
const tagTypeMap = {
|
|
80
|
-
[
|
|
81
|
-
[
|
|
82
|
-
[
|
|
83
|
-
[
|
|
84
|
-
[
|
|
85
|
-
[
|
|
86
|
-
[
|
|
87
|
-
[
|
|
88
|
-
[
|
|
89
|
-
[
|
|
90
|
-
[
|
|
91
|
-
[
|
|
92
|
-
[
|
|
64
|
+
[1]: TagType.Artist,
|
|
65
|
+
[2]: TagType.Artist,
|
|
66
|
+
[3]: TagType.Parody,
|
|
67
|
+
[4]: TagType.Group,
|
|
68
|
+
[5]: TagType.Character,
|
|
69
|
+
[6]: TagType.Character,
|
|
70
|
+
[7]: TagType.Tag,
|
|
71
|
+
[8]: TagType.Tag,
|
|
72
|
+
[9]: TagType.Tag,
|
|
73
|
+
[10]: TagType.Tag,
|
|
74
|
+
[11]: TagType.Language,
|
|
75
|
+
[12]: TagType.Tag,
|
|
76
|
+
[13]: TagType.Tag
|
|
93
77
|
};
|
|
94
78
|
//#endregion
|
|
95
|
-
//#region src/
|
|
79
|
+
//#region src/language.ts
|
|
80
|
+
const languageMap = {
|
|
81
|
+
english: "en",
|
|
82
|
+
chinese: "cn"
|
|
83
|
+
};
|
|
84
|
+
const languageKey = Object.keys(languageMap);
|
|
85
|
+
const getLanugageByTags = (tags) => {
|
|
86
|
+
const languageTag = tags.find((tag) => tag.namespace === 11 && languageKey.includes(tag.name));
|
|
87
|
+
if (languageTag) return languageMap[languageTag.name] || null;
|
|
88
|
+
return null;
|
|
89
|
+
};
|
|
90
|
+
//#endregion
|
|
91
|
+
//#region src/getGallery.ts
|
|
96
92
|
const getGallery = async ({ id }, options) => {
|
|
97
93
|
const [bookId, bookKey] = id.split(".");
|
|
98
|
-
if (!bookId || !bookKey) throw new Error("
|
|
94
|
+
if (!bookId || !bookKey) throw new Error("unable to parse ids");
|
|
99
95
|
const [bookDetail, bookData] = await Promise.all([getBookDetail(bookId, bookKey, options.userAgent), getBookData(bookId, bookKey, options.crt, options.userAgent)]);
|
|
100
96
|
const maxSize = Math.max(...Object.keys(bookData.data).map((v) => Number(v)));
|
|
101
97
|
const bookImages = await getBookImage(maxSize, bookId, bookKey, bookData.data[maxSize].id.toString(), bookData.data[maxSize].key, options.crt, options.userAgent);
|
|
@@ -117,9 +113,10 @@ const getGallery = async ({ id }, options) => {
|
|
|
117
113
|
width: page.dimensions[0],
|
|
118
114
|
height: page.dimensions[1]
|
|
119
115
|
})),
|
|
116
|
+
language: getLanugageByTags(bookDetail.tags),
|
|
120
117
|
tags: bookDetail.tags.map((tag) => {
|
|
121
118
|
return {
|
|
122
|
-
id: tag.namespace ? namespace[tag.namespace] : "tag
|
|
119
|
+
id: `${tag.namespace ? namespace[tag.namespace] : "tag"}:${tag.name}`,
|
|
123
120
|
key: "ny",
|
|
124
121
|
slug: tag.name,
|
|
125
122
|
name: tag.name,
|
|
@@ -129,34 +126,43 @@ const getGallery = async ({ id }, options) => {
|
|
|
129
126
|
};
|
|
130
127
|
};
|
|
131
128
|
//#endregion
|
|
132
|
-
//#region src/
|
|
133
|
-
const
|
|
129
|
+
//#region src/functions/getBookSearch.ts
|
|
130
|
+
const getBookSearch = async (searchQuery, page, userAgent) => {
|
|
134
131
|
const payload = new URLSearchParams();
|
|
135
132
|
if (searchQuery !== null && searchQuery !== "") payload.append("s", searchQuery);
|
|
136
133
|
if (page !== 1) payload.append("page", page.toString());
|
|
137
|
-
|
|
134
|
+
return await fetch(`https://api.schale.network/books?${payload.toString()}`, { headers: {
|
|
138
135
|
...headers,
|
|
139
|
-
"User-Agent":
|
|
136
|
+
"User-Agent": userAgent
|
|
140
137
|
} }).then((o) => {
|
|
141
138
|
if (o.ok) return o.json();
|
|
142
139
|
else throw o;
|
|
143
140
|
});
|
|
141
|
+
};
|
|
142
|
+
//#endregion
|
|
143
|
+
//#region src/getListing.ts
|
|
144
|
+
const getListing = async ({ searchQuery, page }, options) => {
|
|
145
|
+
const bookSearch = await getBookSearch(searchQuery, page, options.userAgent);
|
|
144
146
|
return {
|
|
145
|
-
galleries:
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
147
|
+
galleries: await Promise.all(bookSearch.entries.map(async (entry) => {
|
|
148
|
+
const bookDetail = await getBookDetail(entry.id.toString(), entry.key, options.userAgent);
|
|
149
|
+
return {
|
|
150
|
+
id: entry.id.toString() + "." + entry.key,
|
|
151
|
+
key: "ny",
|
|
152
|
+
title: {
|
|
153
|
+
display: entry.title,
|
|
154
|
+
original: null
|
|
155
|
+
},
|
|
156
|
+
language: getLanugageByTags(bookDetail.tags),
|
|
157
|
+
cover: {
|
|
158
|
+
src: entry.thumbnail.path,
|
|
159
|
+
width: entry.thumbnail.dimensions[0],
|
|
160
|
+
height: entry.thumbnail.dimensions[1]
|
|
161
|
+
}
|
|
162
|
+
};
|
|
157
163
|
})),
|
|
158
164
|
currentPage: page,
|
|
159
|
-
maximumPages: Math.ceil(
|
|
165
|
+
maximumPages: Math.ceil(bookSearch.total / bookSearch.limit)
|
|
160
166
|
};
|
|
161
167
|
};
|
|
162
168
|
//#endregion
|
|
@@ -169,6 +175,26 @@ const getImage = async ({ url }, options) => fetch(url, { headers: {
|
|
|
169
175
|
else throw o;
|
|
170
176
|
});
|
|
171
177
|
//#endregion
|
|
178
|
+
//#region src/getTagListing.ts
|
|
179
|
+
const extractTag = (id) => {
|
|
180
|
+
const index = id.indexOf(":");
|
|
181
|
+
if (index === -1) return {
|
|
182
|
+
type: "tag",
|
|
183
|
+
name: id
|
|
184
|
+
};
|
|
185
|
+
return {
|
|
186
|
+
type: id.slice(0, index),
|
|
187
|
+
name: id.slice(index + 1)
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
const getTagListing = ({ id, page }, options) => {
|
|
191
|
+
const { type, name } = extractTag(id);
|
|
192
|
+
return getListing({
|
|
193
|
+
searchQuery: `${type}:"^${name}$"`,
|
|
194
|
+
page
|
|
195
|
+
}, options);
|
|
196
|
+
};
|
|
197
|
+
//#endregion
|
|
172
198
|
//#region src/index.ts
|
|
173
199
|
const niyaniya = (options) => {
|
|
174
200
|
return {
|
|
@@ -177,7 +203,8 @@ const niyaniya = (options) => {
|
|
|
177
203
|
iconUrl: "https://niyaniya.moe/favicon.ico",
|
|
178
204
|
getGallery: (payload) => getGallery(payload, options),
|
|
179
205
|
getListing: (payload) => getListing(payload, options),
|
|
180
|
-
getImage: (payload) => getImage(payload, options)
|
|
206
|
+
getImage: (payload) => getImage(payload, options),
|
|
207
|
+
getTagListing: (payload) => getTagListing(payload, options)
|
|
181
208
|
};
|
|
182
209
|
};
|
|
183
210
|
//#endregion
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../src/constants/headers.ts","../src/functions/getBookData.ts","../src/functions/getBookDetail.ts","../src/functions/getBookImages.ts","../src/constants/namespace.ts","../src/constants/tagTypeMap.ts","../src/getGalery.ts","../src/getListing.ts","../src/getImage.ts","../src/index.ts"],"sourcesContent":["export const headers = {\n Accept: \"*/*\",\n Origin: \"https://niyaniya.moe\",\n Referer: \"https://niyaniya.moe/\",\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaData } from \"../types/NiyaData\";\n\nexport const getBookData = async (\n bookId: string,\n bookKey: string,\n crt: string,\n userAgent: string,\n) => {\n const data = await fetch(\n `https://api.schale.network/books/detail/${bookId}/${bookKey}?${new URLSearchParams({\n crt,\n }).toString()}`,\n {\n method: \"POST\",\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n },\n ).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaData>;\n else throw o;\n });\n\n return data;\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaGallery } from \"../types/NiyaGallery\";\n\nexport const getBookDetail = async (bookId: string, bookKey: string, userAgent: string) => {\n const data = await fetch(`https://api.schale.network/books/detail/${bookId}/${bookKey}`, {\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n }).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaGallery>;\n else throw o;\n });\n\n return data;\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaImages } from \"../types/NiyaImages\";\n\nexport const getBookImage = async (\n size: number,\n bookId: string,\n bookKey: string,\n dataId: string,\n dataKey: string,\n crt: string,\n userAgent: string,\n) => {\n const data = await fetch(\n `https://api.schale.network/books/data/${bookId}/${bookKey}/${dataId}/${dataKey}/${size}?${new URLSearchParams(\n {\n crt,\n },\n ).toString()}`,\n {\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n },\n ).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaImages>;\n else throw o;\n });\n\n return data;\n};\n","export enum Namespace {\n Artist = 1,\n Circle = 2,\n Parody = 3,\n Magazine = 4,\n Character = 5,\n Cosplayer = 6,\n Uploader = 7,\n Male = 8,\n Female = 9,\n Mixed = 10,\n Language = 11,\n Other = 12,\n Reclass = 13,\n}\n\nexport const namespace: Record<number, string> = {\n [Namespace.Artist]: \"artist\",\n [Namespace.Circle]: \"circle\",\n [Namespace.Parody]: \"parody\",\n [Namespace.Magazine]: \"magazine\",\n [Namespace.Character]: \"character\",\n [Namespace.Cosplayer]: \"cosplayer\",\n [Namespace.Uploader]: \"uploader\",\n [Namespace.Male]: \"male\",\n [Namespace.Female]: \"female\",\n [Namespace.Mixed]: \"mixed\",\n [Namespace.Language]: \"language\",\n [Namespace.Other]: \"other\",\n [Namespace.Reclass]: \"reclass\",\n};\n","import { TagType } from \"@riffyh/commons\";\nimport { Namespace } from \"./namespace\";\n\nexport const tagTypeMap: Record<number, TagType> = {\n [Namespace.Artist]: TagType.Artist,\n [Namespace.Circle]: TagType.Artist,\n [Namespace.Parody]: TagType.Parody,\n [Namespace.Magazine]: TagType.Group,\n [Namespace.Character]: TagType.Character,\n [Namespace.Cosplayer]: TagType.Character,\n [Namespace.Uploader]: TagType.Tag,\n [Namespace.Male]: TagType.Tag,\n [Namespace.Female]: TagType.Tag,\n [Namespace.Mixed]: TagType.Tag,\n [Namespace.Language]: TagType.Language,\n [Namespace.Other]: TagType.Tag,\n [Namespace.Reclass]: TagType.Tag,\n};\n","import { getBookData } from \"./functions/getBookData\";\nimport { getBookDetail } from \"./functions/getBookDetail\";\nimport { getBookImage } from \"./functions/getBookImages\";\nimport { key } from \"./key\";\n\nimport { TagType, type DataSource, type Gallery } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { namespace } from \"./constants/namespace\";\nimport { tagTypeMap } from \"./constants/tagTypeMap\";\n\nexport const getGallery = async (\n { id }: Parameters<DataSource[\"getGallery\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getGallery\"]> => {\n const [bookId, bookKey] = id.split(\".\");\n\n if (!bookId || !bookKey) throw new Error(\"unalbe to parse ids\");\n\n const [bookDetail, bookData] = await Promise.all([\n getBookDetail(bookId, bookKey, options.userAgent),\n getBookData(bookId, bookKey, options.crt, options.userAgent),\n ]);\n\n // pick data in bookData that has biggest integer\n const maxSize = Math.max(...Object.keys(bookData.data).map((v) => Number(v)));\n\n const bookImages = await getBookImage(\n maxSize,\n bookId,\n bookKey,\n bookData.data[maxSize]!.id.toString(),\n bookData.data[maxSize]!.key,\n options.crt,\n options.userAgent,\n );\n\n const gallery: Gallery = {\n id: bookDetail.id.toString() + \".\" + bookDetail.key,\n key,\n title: {\n display: bookDetail.title,\n original: null,\n },\n cover: {\n src: bookDetail.thumbnails.base + bookDetail.thumbnails.main.path,\n width: bookDetail.thumbnails.main.dimensions[0],\n height: bookDetail.thumbnails.main.dimensions[1],\n },\n pages: bookImages.entries.map((page, i) => ({\n order: i + 1,\n src: bookImages.base + page.path,\n width: page.dimensions[0],\n height: page.dimensions[1],\n })),\n tags: bookDetail.tags.map((tag) => {\n return {\n id: tag.namespace ? namespace[tag.namespace]! : \"tag\" + \":\" + tag.name.replace(/\\s+/g, \"+\"),\n key,\n slug: tag.name,\n name: tag.name,\n type: tag.namespace ? tagTypeMap[tag.namespace]! : TagType.Tag,\n };\n }),\n };\n\n return gallery;\n};\n","import { headers } from \"./constants/headers\";\nimport { key } from \"./key\";\n\nimport type { DataSource, ListingResult } from \"@riffyh/commons\";\nimport type { NiyaSearchResult } from \"./types/NiyaSearchResult\";\nimport type { Options } from \"./types/Options\";\n\nexport const getListing = async (\n { searchQuery, page }: Parameters<DataSource[\"getListing\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getListing\"]> => {\n const payload = new URLSearchParams();\n\n if (searchQuery !== null && searchQuery !== \"\") payload.append(\"s\", searchQuery);\n if (page !== 1) payload.append(\"page\", page.toString());\n\n const data = await fetch(`https://api.schale.network/books?${payload.toString()}`, {\n headers: {\n ...headers,\n \"User-Agent\": options.userAgent,\n },\n }).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaSearchResult>;\n else throw o;\n });\n\n const result: ListingResult = {\n galleries: data.entries.map((result) => ({\n id: result.id.toString() + \".\" + result.key,\n key,\n title: {\n display: result.title,\n original: null,\n },\n cover: {\n src: result.thumbnail.path,\n width: result.thumbnail.dimensions[0],\n height: result.thumbnail.dimensions[1],\n },\n })),\n currentPage: page,\n maximumPages: Math.ceil(data.total / data.limit),\n };\n\n return result;\n};\n","import type { DataSource } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { headers } from \"./constants/headers\";\n\nexport const getImage = async (\n { url }: Parameters<DataSource[\"getImage\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getImage\"]> =>\n fetch(url, {\n headers: {\n ...headers,\n \"User-Agent\": options.userAgent,\n },\n }).then(async (o) => {\n if (o.ok) return Buffer.from(await o.arrayBuffer());\n else throw o;\n });\n","import type { DataSource } from \"@riffyh/commons\";\nimport { getGallery } from \"./getGalery\";\nimport { getListing } from \"./getListing\";\nimport { getImage } from \"./getImage\";\nimport { key } from \"./key\";\n\nimport type { Options } from \"./types/Options\";\n\nexport const niyaniya = (options: Options): DataSource => {\n return {\n key,\n name: \"niyaniya\",\n iconUrl: \"https://niyaniya.moe/favicon.ico\",\n getGallery: (payload) => getGallery(payload, options),\n getListing: (payload) => getListing(payload, options),\n getImage: (payload) => getImage(payload, options),\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../src/constants/headers.ts","../src/functions/getBookData.ts","../src/functions/getBookDetail.ts","../src/functions/getBookImages.ts","../src/constants/namespace.ts","../src/constants/tagTypeMap.ts","../src/language.ts","../src/getGallery.ts","../src/functions/getBookSearch.ts","../src/getListing.ts","../src/getImage.ts","../src/getTagListing.ts","../src/index.ts"],"sourcesContent":["export const headers = {\n Accept: \"*/*\",\n Origin: \"https://niyaniya.moe\",\n Referer: \"https://niyaniya.moe/\",\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaData } from \"../types/NiyaData\";\n\nexport const getBookData = async (\n bookId: string,\n bookKey: string,\n crt: string,\n userAgent: string,\n) => {\n const data = await fetch(\n `https://api.schale.network/books/detail/${bookId}/${bookKey}?${new URLSearchParams({\n crt,\n }).toString()}`,\n {\n method: \"POST\",\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n },\n ).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaData>;\n else throw o;\n });\n\n return data;\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaGallery } from \"../types/NiyaGallery\";\n\nexport const getBookDetail = async (bookId: string, bookKey: string, userAgent: string) => {\n const data = await fetch(`https://api.schale.network/books/detail/${bookId}/${bookKey}`, {\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n }).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaGallery>;\n else throw o;\n });\n\n return data;\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaImages } from \"../types/NiyaImages\";\n\nexport const getBookImage = async (\n size: number,\n bookId: string,\n bookKey: string,\n dataId: string,\n dataKey: string,\n crt: string,\n userAgent: string,\n) => {\n const data = await fetch(\n `https://api.schale.network/books/data/${bookId}/${bookKey}/${dataId}/${dataKey}/${size}?${new URLSearchParams(\n {\n crt,\n },\n ).toString()}`,\n {\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n },\n ).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaImages>;\n else throw o;\n });\n\n return data;\n};\n","export enum Namespace {\n Artist = 1,\n Circle = 2,\n Parody = 3,\n Magazine = 4,\n Character = 5,\n Cosplayer = 6,\n Uploader = 7,\n Male = 8,\n Female = 9,\n Mixed = 10,\n Language = 11,\n Other = 12,\n Reclass = 13,\n}\n\nexport const namespace: Record<number, string> = {\n [Namespace.Artist]: \"artist\",\n [Namespace.Circle]: \"circle\",\n [Namespace.Parody]: \"parody\",\n [Namespace.Magazine]: \"magazine\",\n [Namespace.Character]: \"character\",\n [Namespace.Cosplayer]: \"cosplayer\",\n [Namespace.Uploader]: \"uploader\",\n [Namespace.Male]: \"male\",\n [Namespace.Female]: \"female\",\n [Namespace.Mixed]: \"mixed\",\n [Namespace.Language]: \"language\",\n [Namespace.Other]: \"other\",\n [Namespace.Reclass]: \"reclass\",\n};\n","import { TagType } from \"@riffyh/commons\";\nimport { Namespace } from \"./namespace\";\n\nexport const tagTypeMap: Record<number, TagType> = {\n [Namespace.Artist]: TagType.Artist,\n [Namespace.Circle]: TagType.Artist,\n [Namespace.Parody]: TagType.Parody,\n [Namespace.Magazine]: TagType.Group,\n [Namespace.Character]: TagType.Character,\n [Namespace.Cosplayer]: TagType.Character,\n [Namespace.Uploader]: TagType.Tag,\n [Namespace.Male]: TagType.Tag,\n [Namespace.Female]: TagType.Tag,\n [Namespace.Mixed]: TagType.Tag,\n [Namespace.Language]: TagType.Language,\n [Namespace.Other]: TagType.Tag,\n [Namespace.Reclass]: TagType.Tag,\n};\n","import type { Language } from \"@riffyh/commons\";\nimport { Namespace } from \"./constants/namespace\";\nimport type { NiyaGallery } from \"./types/NiyaGallery\";\n\nconst languageMap: Record<string, Language> = {\n english: \"en\",\n chinese: \"cn\",\n};\n\nconst languageKey = Object.keys(languageMap);\n\nexport const getLanugageByTags = (tags: NiyaGallery[\"tags\"]): Language | null => {\n const languageTag = tags.find(\n (tag) => tag.namespace === Namespace.Language && languageKey.includes(tag.name),\n );\n\n if (languageTag) return languageMap[languageTag.name] || null;\n\n return null;\n};\n","import { getBookData } from \"./functions/getBookData\";\nimport { getBookDetail } from \"./functions/getBookDetail\";\nimport { getBookImage } from \"./functions/getBookImages\";\nimport { key } from \"./key\";\n\nimport { TagType, type DataSource, type Gallery } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { namespace } from \"./constants/namespace\";\nimport { tagTypeMap } from \"./constants/tagTypeMap\";\nimport { getLanugageByTags } from \"./language\";\n\nexport const getGallery = async (\n { id }: Parameters<DataSource[\"getGallery\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getGallery\"]> => {\n const [bookId, bookKey] = id.split(\".\");\n\n if (!bookId || !bookKey) throw new Error(\"unable to parse ids\");\n\n const [bookDetail, bookData] = await Promise.all([\n getBookDetail(bookId, bookKey, options.userAgent),\n getBookData(bookId, bookKey, options.crt, options.userAgent),\n ]);\n\n // pick data in bookData that has biggest integer\n const maxSize = Math.max(...Object.keys(bookData.data).map((v) => Number(v)));\n\n const bookImages = await getBookImage(\n maxSize,\n bookId,\n bookKey,\n bookData.data[maxSize]!.id.toString(),\n bookData.data[maxSize]!.key,\n options.crt,\n options.userAgent,\n );\n\n const gallery: Gallery = {\n id: bookDetail.id.toString() + \".\" + bookDetail.key,\n key,\n title: {\n display: bookDetail.title,\n original: null,\n },\n cover: {\n src: bookDetail.thumbnails.base + bookDetail.thumbnails.main.path,\n width: bookDetail.thumbnails.main.dimensions[0],\n height: bookDetail.thumbnails.main.dimensions[1],\n },\n pages: bookImages.entries.map((page, i) => ({\n order: i + 1,\n src: bookImages.base + page.path,\n width: page.dimensions[0],\n height: page.dimensions[1],\n })),\n language: getLanugageByTags(bookDetail.tags),\n tags: bookDetail.tags.map((tag) => {\n return {\n id: `${tag.namespace ? namespace[tag.namespace]! : \"tag\"}:${tag.name}`,\n key,\n slug: tag.name,\n name: tag.name,\n type: tag.namespace ? tagTypeMap[tag.namespace]! : TagType.Tag,\n };\n }),\n };\n\n return gallery;\n};\n","import { headers } from \"../constants/headers\";\nimport type { NiyaSearchResult } from \"../types/NiyaSearchResult\";\n\nexport const getBookSearch = async (\n searchQuery: string | null,\n page: number,\n userAgent: string,\n) => {\n const payload = new URLSearchParams();\n\n if (searchQuery !== null && searchQuery !== \"\") payload.append(\"s\", searchQuery);\n if (page !== 1) payload.append(\"page\", page.toString());\n\n const data = await fetch(`https://api.schale.network/books?${payload.toString()}`, {\n headers: {\n ...headers,\n \"User-Agent\": userAgent,\n },\n }).then((o) => {\n if (o.ok) return o.json() as Promise<NiyaSearchResult>;\n else throw o;\n });\n\n return data;\n};\n","import { key } from \"./key\";\n\nimport type { DataSource, ListingResult } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { getBookSearch } from \"./functions/getBookSearch\";\nimport { getBookDetail } from \"./functions/getBookDetail\";\nimport { getLanugageByTags } from \"./language\";\n\nexport const getListing = async (\n { searchQuery, page }: Parameters<DataSource[\"getListing\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getListing\"]> => {\n const bookSearch = await getBookSearch(searchQuery, page, options.userAgent);\n\n const galleries = await Promise.all(\n bookSearch.entries.map(async (entry) => {\n const bookDetail = await getBookDetail(entry.id.toString(), entry.key, options.userAgent);\n\n return {\n id: entry.id.toString() + \".\" + entry.key,\n key,\n title: {\n display: entry.title,\n original: null,\n },\n language: getLanugageByTags(bookDetail.tags),\n cover: {\n src: entry.thumbnail.path,\n width: entry.thumbnail.dimensions[0],\n height: entry.thumbnail.dimensions[1],\n },\n } satisfies ListingResult[\"galleries\"][number];\n }),\n );\n\n const result: ListingResult = {\n galleries,\n currentPage: page,\n maximumPages: Math.ceil(bookSearch.total / bookSearch.limit),\n };\n\n return result;\n};\n","import type { DataSource } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { headers } from \"./constants/headers\";\n\nexport const getImage = async (\n { url }: Parameters<DataSource[\"getImage\"]>[0],\n options: Options,\n): ReturnType<DataSource[\"getImage\"]> =>\n fetch(url, {\n headers: {\n ...headers,\n \"User-Agent\": options.userAgent,\n },\n }).then(async (o) => {\n if (o.ok) return Buffer.from(await o.arrayBuffer());\n else throw o;\n });\n","import type { DataSource } from \"@riffyh/commons\";\nimport type { Options } from \"./types/Options\";\nimport { getListing } from \"./getListing\";\n\nconst extractTag = (id: string) => {\n const index = id.indexOf(\":\");\n if (index === -1) {\n return {\n type: \"tag\",\n name: id,\n };\n }\n return {\n type: id.slice(0, index),\n name: id.slice(index + 1),\n };\n};\n\nexport const getTagListing = (\n { id, page }: Parameters<DataSource[\"getTagListing\"]>[0],\n options: Options,\n) => {\n const { type, name } = extractTag(id);\n return getListing(\n {\n searchQuery: `${type}:\"^${name}$\"`,\n page,\n },\n options,\n );\n};\n","import type { DataSource } from \"@riffyh/commons\";\nimport { getGallery } from \"./getGallery\";\nimport { getListing } from \"./getListing\";\nimport { getImage } from \"./getImage\";\nimport { key } from \"./key\";\n\nimport type { Options } from \"./types/Options\";\nimport { getTagListing } from \"./getTagListing\";\n\nexport const niyaniya = (options: Options): DataSource => {\n return {\n key,\n name: \"niyaniya\",\n iconUrl: \"https://niyaniya.moe/favicon.ico\",\n getGallery: (payload) => getGallery(payload, options),\n getListing: (payload) => getListing(payload, options),\n getImage: (payload) => getImage(payload, options),\n getTagListing: (payload) => getTagListing(payload, options),\n };\n};\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@riffyh/adapter-niyaniya",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/rayriffy/rayriffy-h.git"
|
|
@@ -16,12 +16,13 @@
|
|
|
16
16
|
"registry": "https://registry.npmjs.org"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@riffyh/commons": "2.
|
|
19
|
+
"@riffyh/commons": "2.2.0"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"tsdown": "0.
|
|
22
|
+
"tsdown": "0.22.3"
|
|
23
23
|
},
|
|
24
24
|
"scripts": {
|
|
25
|
+
"dev": "tsdown --watch",
|
|
25
26
|
"build": "tsdown"
|
|
26
27
|
}
|
|
27
28
|
}
|