animob 1.0.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.
Files changed (229) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +245 -0
  3. package/animb.png +0 -0
  4. package/dist/extractors/index.d.ts +11 -0
  5. package/dist/extractors/index.js +27 -0
  6. package/dist/extractors/index.js.map +1 -0
  7. package/dist/extractors/kwik.d.ts +18 -0
  8. package/dist/extractors/kwik.js +117 -0
  9. package/dist/extractors/kwik.js.map +1 -0
  10. package/dist/extractors/lplayer.d.ts +11 -0
  11. package/dist/extractors/lplayer.js +131 -0
  12. package/dist/extractors/lplayer.js.map +1 -0
  13. package/dist/extractors/megacloud.d.ts +10 -0
  14. package/dist/extractors/megacloud.js +44 -0
  15. package/dist/extractors/megacloud.js.map +1 -0
  16. package/dist/extractors/megaup.d.ts +31 -0
  17. package/dist/extractors/megaup.js +79 -0
  18. package/dist/extractors/megaup.js.map +1 -0
  19. package/dist/extractors/mixdrop.d.ts +7 -0
  20. package/dist/extractors/mixdrop.js +32 -0
  21. package/dist/extractors/mixdrop.js.map +1 -0
  22. package/dist/extractors/movearnpre.d.ts +9 -0
  23. package/dist/extractors/movearnpre.js +154 -0
  24. package/dist/extractors/movearnpre.js.map +1 -0
  25. package/dist/extractors/sendvid.d.ts +8 -0
  26. package/dist/extractors/sendvid.js +76 -0
  27. package/dist/extractors/sendvid.js.map +1 -0
  28. package/dist/extractors/sibnet.d.ts +8 -0
  29. package/dist/extractors/sibnet.js +44 -0
  30. package/dist/extractors/sibnet.js.map +1 -0
  31. package/dist/extractors/streamsb.d.ts +11 -0
  32. package/dist/extractors/streamsb.js +65 -0
  33. package/dist/extractors/streamsb.js.map +1 -0
  34. package/dist/extractors/streamtape.d.ts +7 -0
  35. package/dist/extractors/streamtape.js +32 -0
  36. package/dist/extractors/streamtape.js.map +1 -0
  37. package/dist/extractors/streamwish.d.ts +11 -0
  38. package/dist/extractors/streamwish.js +46 -0
  39. package/dist/extractors/streamwish.js.map +1 -0
  40. package/dist/extractors/vidcloud.d.ts +11 -0
  41. package/dist/extractors/vidcloud.js +109 -0
  42. package/dist/extractors/vidcloud.js.map +1 -0
  43. package/dist/extractors/videostr.d.ts +10 -0
  44. package/dist/extractors/videostr.js +44 -0
  45. package/dist/extractors/videostr.js.map +1 -0
  46. package/dist/extractors/vidmoly.d.ts +7 -0
  47. package/dist/extractors/vidmoly.js +75 -0
  48. package/dist/extractors/vidmoly.js.map +1 -0
  49. package/dist/extractors/voe.d.ts +10 -0
  50. package/dist/extractors/voe.js +44 -0
  51. package/dist/extractors/voe.js.map +1 -0
  52. package/dist/index.d.ts +6 -0
  53. package/dist/index.js +23 -0
  54. package/dist/index.js.map +1 -0
  55. package/dist/models/anime-parser.d.ts +26 -0
  56. package/dist/models/anime-parser.js +14 -0
  57. package/dist/models/anime-parser.js.map +1 -0
  58. package/dist/models/base-parser.d.ts +10 -0
  59. package/dist/models/base-parser.js +7 -0
  60. package/dist/models/base-parser.js.map +1 -0
  61. package/dist/models/base-provider.d.ts +40 -0
  62. package/dist/models/base-provider.js +45 -0
  63. package/dist/models/base-provider.js.map +1 -0
  64. package/dist/models/base-types.d.ts +22 -0
  65. package/dist/models/base-types.js +3 -0
  66. package/dist/models/base-types.js.map +1 -0
  67. package/dist/models/book-parser.d.ts +4 -0
  68. package/dist/models/book-parser.js +7 -0
  69. package/dist/models/book-parser.js.map +1 -0
  70. package/dist/models/comic-parser.d.ts +4 -0
  71. package/dist/models/comic-parser.js +7 -0
  72. package/dist/models/comic-parser.js.map +1 -0
  73. package/dist/models/index.d.ts +13 -0
  74. package/dist/models/index.js +39 -0
  75. package/dist/models/index.js.map +1 -0
  76. package/dist/models/lightnovel-parser.d.ts +16 -0
  77. package/dist/models/lightnovel-parser.js +7 -0
  78. package/dist/models/lightnovel-parser.js.map +1 -0
  79. package/dist/models/manga-parser.d.ts +17 -0
  80. package/dist/models/manga-parser.js +10 -0
  81. package/dist/models/manga-parser.js.map +1 -0
  82. package/dist/models/movie-parser.d.ts +26 -0
  83. package/dist/models/movie-parser.js +7 -0
  84. package/dist/models/movie-parser.js.map +1 -0
  85. package/dist/models/news-parser.d.ts +4 -0
  86. package/dist/models/news-parser.js +7 -0
  87. package/dist/models/news-parser.js.map +1 -0
  88. package/dist/models/proxy.d.ts +25 -0
  89. package/dist/models/proxy.js +83 -0
  90. package/dist/models/proxy.js.map +1 -0
  91. package/dist/models/type-objects.d.ts +48 -0
  92. package/dist/models/type-objects.js +57 -0
  93. package/dist/models/type-objects.js.map +1 -0
  94. package/dist/models/types.d.ts +515 -0
  95. package/dist/models/types.js +118 -0
  96. package/dist/models/types.js.map +1 -0
  97. package/dist/models/video-extractor.d.ts +19 -0
  98. package/dist/models/video-extractor.js +10 -0
  99. package/dist/models/video-extractor.js.map +1 -0
  100. package/dist/providers/anime/animekai.d.ts +94 -0
  101. package/dist/providers/anime/animekai.js +661 -0
  102. package/dist/providers/anime/animekai.js.map +1 -0
  103. package/dist/providers/anime/animepahe.d.ts +41 -0
  104. package/dist/providers/anime/animepahe.js +270 -0
  105. package/dist/providers/anime/animepahe.js.map +1 -0
  106. package/dist/providers/anime/animesama.d.ts +25 -0
  107. package/dist/providers/anime/animesama.js +504 -0
  108. package/dist/providers/anime/animesama.js.map +1 -0
  109. package/dist/providers/anime/animesaturn.d.ts +32 -0
  110. package/dist/providers/anime/animesaturn.js +298 -0
  111. package/dist/providers/anime/animesaturn.js.map +1 -0
  112. package/dist/providers/anime/animeunity.d.ts +27 -0
  113. package/dist/providers/anime/animeunity.js +157 -0
  114. package/dist/providers/anime/animeunity.js.map +1 -0
  115. package/dist/providers/anime/hianime.d.ts +150 -0
  116. package/dist/providers/anime/hianime.js +825 -0
  117. package/dist/providers/anime/hianime.js.map +1 -0
  118. package/dist/providers/anime/index.d.ts +17 -0
  119. package/dist/providers/anime/index.js +22 -0
  120. package/dist/providers/anime/index.js.map +1 -0
  121. package/dist/providers/anime/kickassanime.d.ts +65 -0
  122. package/dist/providers/anime/kickassanime.js +582 -0
  123. package/dist/providers/anime/kickassanime.js.map +1 -0
  124. package/dist/providers/books/index.d.ts +2 -0
  125. package/dist/providers/books/index.js +4 -0
  126. package/dist/providers/books/index.js.map +1 -0
  127. package/dist/providers/comics/getComics.d.ts +9 -0
  128. package/dist/providers/comics/getComics.js +54 -0
  129. package/dist/providers/comics/getComics.js.map +1 -0
  130. package/dist/providers/comics/index.d.ts +5 -0
  131. package/dist/providers/comics/index.js +8 -0
  132. package/dist/providers/comics/index.js.map +1 -0
  133. package/dist/providers/index.d.ts +9 -0
  134. package/dist/providers/index.js +23 -0
  135. package/dist/providers/index.js.map +1 -0
  136. package/dist/providers/light-novels/index.d.ts +5 -0
  137. package/dist/providers/light-novels/index.js +8 -0
  138. package/dist/providers/light-novels/index.js.map +1 -0
  139. package/dist/providers/light-novels/novelupdates.d.ts +26 -0
  140. package/dist/providers/light-novels/novelupdates.js +155 -0
  141. package/dist/providers/light-novels/novelupdates.js.map +1 -0
  142. package/dist/providers/manga/asurascans.d.ts +16 -0
  143. package/dist/providers/manga/asurascans.js +143 -0
  144. package/dist/providers/manga/asurascans.js.map +1 -0
  145. package/dist/providers/manga/comick.d.ts +36 -0
  146. package/dist/providers/manga/comick.js +141 -0
  147. package/dist/providers/manga/comick.js.map +1 -0
  148. package/dist/providers/manga/comix.d.ts +36 -0
  149. package/dist/providers/manga/comix.js +265 -0
  150. package/dist/providers/manga/comix.js.map +1 -0
  151. package/dist/providers/manga/index.d.ts +21 -0
  152. package/dist/providers/manga/index.js +26 -0
  153. package/dist/providers/manga/index.js.map +1 -0
  154. package/dist/providers/manga/mangadex.d.ts +26 -0
  155. package/dist/providers/manga/mangadex.js +301 -0
  156. package/dist/providers/manga/mangadex.js.map +1 -0
  157. package/dist/providers/manga/mangahere.d.ts +29 -0
  158. package/dist/providers/manga/mangahere.js +376 -0
  159. package/dist/providers/manga/mangahere.js.map +1 -0
  160. package/dist/providers/manga/mangakakalot.d.ts +56 -0
  161. package/dist/providers/manga/mangakakalot.js +461 -0
  162. package/dist/providers/manga/mangakakalot.js.map +1 -0
  163. package/dist/providers/manga/mangapill.d.ts +15 -0
  164. package/dist/providers/manga/mangapill.js +104 -0
  165. package/dist/providers/manga/mangapill.js.map +1 -0
  166. package/dist/providers/manga/mangareader.d.ts +15 -0
  167. package/dist/providers/manga/mangareader.js +110 -0
  168. package/dist/providers/manga/mangareader.js.map +1 -0
  169. package/dist/providers/manga/weebcentral.d.ts +12 -0
  170. package/dist/providers/manga/weebcentral.js +169 -0
  171. package/dist/providers/manga/weebcentral.js.map +1 -0
  172. package/dist/providers/meta/anilist.d.ts +206 -0
  173. package/dist/providers/meta/anilist.js +2025 -0
  174. package/dist/providers/meta/anilist.js.map +1 -0
  175. package/dist/providers/meta/index.d.ts +9 -0
  176. package/dist/providers/meta/index.js +10 -0
  177. package/dist/providers/meta/index.js.map +1 -0
  178. package/dist/providers/meta/mal.d.ts +39 -0
  179. package/dist/providers/meta/mal.js +529 -0
  180. package/dist/providers/meta/mal.js.map +1 -0
  181. package/dist/providers/meta/tmdb.d.ts +48 -0
  182. package/dist/providers/meta/tmdb.js +364 -0
  183. package/dist/providers/meta/tmdb.js.map +1 -0
  184. package/dist/providers/movies/dramacool.d.ts +98 -0
  185. package/dist/providers/movies/dramacool.js +367 -0
  186. package/dist/providers/movies/dramacool.js.map +1 -0
  187. package/dist/providers/movies/flixhq.d.ts +90 -0
  188. package/dist/providers/movies/flixhq.js +438 -0
  189. package/dist/providers/movies/flixhq.js.map +1 -0
  190. package/dist/providers/movies/goku.d.ts +80 -0
  191. package/dist/providers/movies/goku.js +369 -0
  192. package/dist/providers/movies/goku.js.map +1 -0
  193. package/dist/providers/movies/himovies.d.ts +102 -0
  194. package/dist/providers/movies/himovies.js +445 -0
  195. package/dist/providers/movies/himovies.js.map +1 -0
  196. package/dist/providers/movies/index.d.ts +17 -0
  197. package/dist/providers/movies/index.js +22 -0
  198. package/dist/providers/movies/index.js.map +1 -0
  199. package/dist/providers/movies/netmirror.d.ts +27 -0
  200. package/dist/providers/movies/netmirror.js +259 -0
  201. package/dist/providers/movies/netmirror.js.map +1 -0
  202. package/dist/providers/movies/sflix.d.ts +106 -0
  203. package/dist/providers/movies/sflix.js +490 -0
  204. package/dist/providers/movies/sflix.js.map +1 -0
  205. package/dist/providers/movies/turkish123.d.ts +32 -0
  206. package/dist/providers/movies/turkish123.js +141 -0
  207. package/dist/providers/movies/turkish123.js.map +1 -0
  208. package/dist/providers/news/animenewsnetwork.d.ts +30 -0
  209. package/dist/providers/news/animenewsnetwork.js +105 -0
  210. package/dist/providers/news/animenewsnetwork.js.map +1 -0
  211. package/dist/providers/news/index.d.ts +5 -0
  212. package/dist/providers/news/index.js +8 -0
  213. package/dist/providers/news/index.js.map +1 -0
  214. package/dist/providers/others/index.d.ts +0 -0
  215. package/dist/providers/others/index.js +2 -0
  216. package/dist/providers/others/index.js.map +1 -0
  217. package/dist/utils/index.d.ts +3 -0
  218. package/dist/utils/index.js +33 -0
  219. package/dist/utils/index.js.map +1 -0
  220. package/dist/utils/providers-list.d.ts +11 -0
  221. package/dist/utils/providers-list.js +40 -0
  222. package/dist/utils/providers-list.js.map +1 -0
  223. package/dist/utils/queries.d.ts +13 -0
  224. package/dist/utils/queries.js +31 -0
  225. package/dist/utils/queries.js.map +1 -0
  226. package/dist/utils/utils.d.ts +32 -0
  227. package/dist/utils/utils.js +324 -0
  228. package/dist/utils/utils.js.map +1 -0
  229. package/package.json +107 -0
@@ -0,0 +1,324 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parsePostInfo = exports.safeUnpack = exports.getHashFromImage = exports.substringBeforeLast = exports.substringAfterLast = exports.substringBefore = exports.substringAfter = exports.compareTwoStrings = exports.isJson = exports.getDays = exports.capitalizeFirstLetter = exports.range = exports.genElement = exports.formatTitle = exports.floorID = exports.splitAuthor = exports.days = exports.USER_AGENT = void 0;
4
+ exports.convertDuration = convertDuration;
5
+ exports.findSimilarTitles = findSimilarTitles;
6
+ exports.removeSpecialChars = removeSpecialChars;
7
+ exports.transformSpecificVariations = transformSpecificVariations;
8
+ exports.cleanTitle = cleanTitle;
9
+ const cheerio_1 = require("cheerio");
10
+ exports.USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36';
11
+ exports.days = ['Saturday', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'];
12
+ const splitAuthor = (authors) => {
13
+ const res = [];
14
+ let eater = '';
15
+ for (let i = 0; i < authors.length; i++) {
16
+ if (authors[i] == ' ' && (authors[i - 1] == ',' || authors[i - 1] == ';')) {
17
+ continue;
18
+ }
19
+ if (authors[i] == ',' || authors[i] == ';') {
20
+ res.push(eater.trim());
21
+ eater = '';
22
+ continue;
23
+ }
24
+ eater += authors[i];
25
+ }
26
+ res.push(eater);
27
+ return res;
28
+ };
29
+ exports.splitAuthor = splitAuthor;
30
+ const floorID = (id) => {
31
+ let imp = '';
32
+ for (let i = 0; i < (id === null || id === void 0 ? void 0 : id.length) - 3; i++) {
33
+ imp += id[i];
34
+ }
35
+ const idV = parseInt(imp);
36
+ return idV * 1000;
37
+ };
38
+ exports.floorID = floorID;
39
+ const formatTitle = (title) => {
40
+ const result = title.replace(/[0-9]/g, '');
41
+ return result.trim();
42
+ };
43
+ exports.formatTitle = formatTitle;
44
+ const genElement = (s, e) => {
45
+ if (s == '')
46
+ return;
47
+ const $ = (0, cheerio_1.load)(e);
48
+ let i = 0;
49
+ let str = '';
50
+ let el = $();
51
+ for (; i < s.length; i++) {
52
+ if (s[i] == ' ') {
53
+ el = $(str);
54
+ str = '';
55
+ i++;
56
+ break;
57
+ }
58
+ str += s[i];
59
+ }
60
+ for (; i < s.length; i++) {
61
+ if (s[i] == ' ') {
62
+ el = $(el).children(str);
63
+ str = '';
64
+ continue;
65
+ }
66
+ str += s[i];
67
+ }
68
+ el = $(el).children(str);
69
+ return el;
70
+ };
71
+ exports.genElement = genElement;
72
+ const range = ({ from = 0, to = 0, step = 1, length = Math.ceil((to - from) / step) }) => Array.from({ length }, (_, i) => from + i * step);
73
+ exports.range = range;
74
+ const capitalizeFirstLetter = (s) => (s === null || s === void 0 ? void 0 : s.charAt(0).toUpperCase()) + s.slice(1);
75
+ exports.capitalizeFirstLetter = capitalizeFirstLetter;
76
+ const getDays = (day1, day2) => {
77
+ const day1Index = exports.days.indexOf((0, exports.capitalizeFirstLetter)(day1)) - 1;
78
+ const day2Index = exports.days.indexOf((0, exports.capitalizeFirstLetter)(day2)) - 1;
79
+ const now = new Date();
80
+ const day1Date = new Date();
81
+ const day2Date = new Date();
82
+ day1Date.setDate(now.getDate() + ((day1Index + 7 - now.getDay()) % 7));
83
+ day2Date.setDate(now.getDate() + ((day2Index + 7 - now.getDay()) % 7));
84
+ day1Date.setHours(0, 0, 0, 0);
85
+ day2Date.setHours(0, 0, 0, 0);
86
+ return [day1Date.getTime() / 1000, day2Date.getTime() / 1000];
87
+ };
88
+ exports.getDays = getDays;
89
+ const isJson = (str) => {
90
+ try {
91
+ JSON.parse(str);
92
+ }
93
+ catch (e) {
94
+ return false;
95
+ }
96
+ return true;
97
+ };
98
+ exports.isJson = isJson;
99
+ function convertDuration(milliseconds) {
100
+ let seconds = Math.floor(milliseconds / 1000);
101
+ let minutes = Math.floor(seconds / 60);
102
+ const hours = Math.floor(minutes / 60);
103
+ seconds = seconds % 60;
104
+ minutes = minutes % 60;
105
+ return `PT${hours}H${minutes}M${seconds}S`;
106
+ }
107
+ const compareTwoStrings = (first, second) => {
108
+ first = first.replace(/\s+/g, '');
109
+ second = second.replace(/\s+/g, '');
110
+ if (first === second)
111
+ return 1; // identical or empty
112
+ if (first.length < 2 || second.length < 2)
113
+ return 0; // if either is a 0-letter or 1-letter string
114
+ const firstBigrams = new Map();
115
+ for (let i = 0; i < first.length - 1; i++) {
116
+ const bigram = first.substring(i, i + 2);
117
+ const count = firstBigrams.has(bigram) ? firstBigrams.get(bigram) + 1 : 1;
118
+ firstBigrams.set(bigram, count);
119
+ }
120
+ let intersectionSize = 0;
121
+ for (let i = 0; i < second.length - 1; i++) {
122
+ const bigram = second.substring(i, i + 2);
123
+ const count = firstBigrams.has(bigram) ? firstBigrams.get(bigram) : 0;
124
+ if (count > 0) {
125
+ firstBigrams.set(bigram, count - 1);
126
+ intersectionSize++;
127
+ }
128
+ }
129
+ return (2.0 * intersectionSize) / (first.length + second.length - 2);
130
+ };
131
+ exports.compareTwoStrings = compareTwoStrings;
132
+ const substringAfter = (str, toFind) => {
133
+ const index = str.indexOf(toFind);
134
+ return index == -1 ? '' : str.substring(index + toFind.length);
135
+ };
136
+ exports.substringAfter = substringAfter;
137
+ const substringBefore = (str, toFind) => {
138
+ const index = str.indexOf(toFind);
139
+ return index == -1 ? '' : str.substring(0, index);
140
+ };
141
+ exports.substringBefore = substringBefore;
142
+ const substringAfterLast = (str, toFind) => {
143
+ const index = str.lastIndexOf(toFind);
144
+ return index == -1 ? '' : str.substring(index + toFind.length);
145
+ };
146
+ exports.substringAfterLast = substringAfterLast;
147
+ const substringBeforeLast = (str, toFind) => {
148
+ const index = str.lastIndexOf(toFind);
149
+ return index == -1 ? '' : str.substring(0, index);
150
+ };
151
+ exports.substringBeforeLast = substringBeforeLast;
152
+ const getHashFromImage = (url) => {
153
+ if ((url === null || url === void 0 ? void 0 : url.length) === 0) {
154
+ return '';
155
+ }
156
+ else {
157
+ let hash;
158
+ return 'hash';
159
+ }
160
+ };
161
+ exports.getHashFromImage = getHashFromImage;
162
+ const safeUnpack = (packedSource) => {
163
+ try {
164
+ // 1. Extract arguments using Regex
165
+ // Matches: }('...', radix, count, 'keywords'
166
+ const argsRegex = /}\s*\(\s*'((?:[^'\\]|\\.)*)'\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*'((?:[^'\\]|\\.)*)'\./;
167
+ const match = argsRegex.exec(packedSource);
168
+ if (!match)
169
+ throw new Error('Invalid Packer format or unable to parse safely.');
170
+ let [_, p, aStr, cStr, kStr] = match;
171
+ const a = parseInt(aStr); // Radix
172
+ const c = parseInt(cStr); // Count
173
+ let k = kStr.split('|'); // Keywords
174
+ // 2. Base62 Helper (The 'e' function in packer)
175
+ const base62 = (n) => {
176
+ const chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
177
+ return n < a ? chars[n] : base62(Math.floor(n / a)) + chars[n % a];
178
+ };
179
+ // 3. Dictionary Fill (Logic: if k[i] is empty, it maps to base62(i))
180
+ // However, standard packer usually provides full dictionary or handles empty slots dynamically.
181
+ // Simple optimization: standard packer replaces based on index.
182
+ const dict = {};
183
+ for (let i = 0; i < c; i++) {
184
+ const key = base62(i);
185
+ const word = k[i] || key; // Fallback if empty
186
+ dict[key] = word;
187
+ }
188
+ // 4. Substitution
189
+ // Regex: /\b\w+\b/g but compliant with packer generated tokens
190
+ return p.replace(/\b\w+\b/g, word => {
191
+ return dict[word] || word;
192
+ });
193
+ }
194
+ catch (err) {
195
+ throw new Error(`Failed to unpack script: ${err}`);
196
+ }
197
+ };
198
+ exports.safeUnpack = safeUnpack;
199
+ const parsePostInfo = (post) => {
200
+ let year = '';
201
+ let size = '';
202
+ let description = '';
203
+ let sizeDone = false;
204
+ for (let i = 0; i < post.length; i++) {
205
+ if (i + 5 < post.length &&
206
+ post[i] == 'Y' &&
207
+ post[i + 1] == 'e' &&
208
+ post[i + 2] == 'a' &&
209
+ post[i + 3] == 'r' &&
210
+ post[i + 4] == ' ' &&
211
+ post[i + 5] == ':') {
212
+ year = post[i + 7] + post[i + 8] + post[i + 9] + post[i + 10];
213
+ i += 9;
214
+ }
215
+ else if (i + 5 < post.length &&
216
+ post[i] == 'S' &&
217
+ post[i + 1] == 'i' &&
218
+ post[i + 2] == 'z' &&
219
+ post[i + 3] == 'e' &&
220
+ post[i + 4] == ' ' &&
221
+ post[i + 5] == ':') {
222
+ let j = i + 7;
223
+ const temp = j;
224
+ for (; j < temp + 4; j++) {
225
+ if (!isNaN(Number(post[j]))) {
226
+ size += post[j];
227
+ }
228
+ else {
229
+ break;
230
+ }
231
+ }
232
+ size += post[j] + post[j + 1];
233
+ i += j - i;
234
+ i += 2;
235
+ sizeDone = true;
236
+ }
237
+ if (sizeDone) {
238
+ description += post[i];
239
+ }
240
+ }
241
+ description = description.substring(0, description.length - 12);
242
+ return { year, size, description };
243
+ };
244
+ exports.parsePostInfo = parsePostInfo;
245
+ // Function to find similar titles
246
+ function findSimilarTitles(inputTitle, titles) {
247
+ const results = [];
248
+ titles === null || titles === void 0 ? void 0 : titles.forEach((titleObj) => {
249
+ var _a, _b;
250
+ const title = cleanTitle(((_b = (_a = titleObj === null || titleObj === void 0 ? void 0 : titleObj.title) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.replace(/\([^\)]*\)/g, '').trim()) || '');
251
+ // Calculate similarity score between inputTitle and title
252
+ const similarity = (0, exports.compareTwoStrings)(cleanTitle((inputTitle === null || inputTitle === void 0 ? void 0 : inputTitle.toLowerCase()) || ''), title);
253
+ if (similarity > 0.6) {
254
+ results.push({ ...titleObj, similarity });
255
+ }
256
+ });
257
+ const isSubAvailable = results.some(result => result.episodes && result.episodes.sub > 0);
258
+ // If episodes.sub is available, sort the results
259
+ if (isSubAvailable) {
260
+ return results.sort((a, b) => {
261
+ var _a, _b;
262
+ // First sort by similarity in descending order
263
+ if (b.similarity !== a.similarity) {
264
+ return b.similarity - a.similarity;
265
+ }
266
+ // If similarity is the same, sort by episodes.sub in descending order
267
+ return (((_a = b.episodes) === null || _a === void 0 ? void 0 : _a.sub) || 0) - (((_b = a.episodes) === null || _b === void 0 ? void 0 : _b.sub) || 0);
268
+ });
269
+ }
270
+ // If episodes.sub is not available, return the original list
271
+ return results.sort((a, b) => b.similarity - a.similarity);
272
+ }
273
+ function removeSpecialChars(title) {
274
+ if (!title)
275
+ return '';
276
+ return title
277
+ .replace(/[^A-Za-z0-9!@#$%^&*()\-= ]/gim, ' ')
278
+ .replace(/[^A-Za-z0-9\-= ]/gim, '')
279
+ .replace(/ {2}/g, ' ');
280
+ }
281
+ function transformSpecificVariations(title) {
282
+ if (!title)
283
+ return '';
284
+ return title.replace(/yuu/g, 'yu').replace(/ ou/g, ' oh');
285
+ }
286
+ function romanToArabic(roman) {
287
+ const romanMap = {
288
+ i: 1,
289
+ v: 5,
290
+ x: 10,
291
+ l: 50,
292
+ c: 100,
293
+ d: 500,
294
+ m: 1000,
295
+ };
296
+ roman = roman.toLowerCase();
297
+ let result = 0;
298
+ for (let i = 0; i < roman.length; i++) {
299
+ const current = romanMap[roman[i]];
300
+ const next = romanMap[roman[i + 1]];
301
+ if (next && current < next) {
302
+ result += next - current;
303
+ i++;
304
+ }
305
+ else {
306
+ result += current;
307
+ }
308
+ }
309
+ return result;
310
+ }
311
+ function cleanTitle(title) {
312
+ if (!title)
313
+ return '';
314
+ return transformSpecificVariations(removeSpecialChars(title
315
+ .replace(/[^A-Za-z0-9!@#$%^&*() ]/gim, ' ')
316
+ .replace(/(th|rd|nd|st) (Season|season)/gim, '')
317
+ .replace(/\([^\(]*\)$/gim, '')
318
+ .replace(/season/g, '')
319
+ .replace(/\b(IX|IV|V?I{0,3})\b/gi, (match) => romanToArabic(match).toString())
320
+ .replace(/ {2}/g, ' ')
321
+ .replace(/"/g, '')
322
+ .trimEnd()));
323
+ }
324
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,107 @@
1
+ {
2
+ "name": "animob",
3
+ "version": "1.0.0",
4
+ "description": "Node.js library for streaming anime, reading manga, and accessing anime/manga metadata through multiple providers.",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "scripts": {
8
+ "build": "rimraf dist && tsc -p tsconfig.json",
9
+ "version": "auto-changelog -p && git add CHANGELOG.md",
10
+ "lint": "prettier --write .",
11
+ "prepare": "husky || true",
12
+ "test": "jest",
13
+ "test:anime": "jest ./test/anime",
14
+ "test:anime:kaa": "jest ./test/anime/kickassanime.test.ts",
15
+ "test:books": "jest ./test/books",
16
+ "test:comics": "jest ./test/comics",
17
+ "test:movies": "jest ./test/movies",
18
+ "test:manga": "jest ./test/manga",
19
+ "test:lightnovels": "jest ./test/light-novels",
20
+ "test:news": "jest ./test/news",
21
+ "test:meta": "jest ./test/meta",
22
+ "test:meta:anilist": "jest ./test/meta/anilist.test.ts",
23
+ "test:meta:tmdb": "jest ./test/meta/tmdb.test.ts"
24
+ },
25
+ "pre-commit": [
26
+ "lint",
27
+ "build"
28
+ ],
29
+ "files": [
30
+ "dist",
31
+ "README.md",
32
+ "LICENSE",
33
+ "animb.png"
34
+ ],
35
+ "repository": {
36
+ "type": "git",
37
+ "url": "git+https://github.com/animob/animob.git"
38
+ },
39
+ "keywords": [
40
+ "anime",
41
+ "manga",
42
+ "streaming",
43
+ "scraper",
44
+ "animob",
45
+ "anime-api",
46
+ "manga-api",
47
+ "anilist",
48
+ "mangadex",
49
+ "hianime",
50
+ "animepahe",
51
+ "metadata",
52
+ "entertainment"
53
+ ],
54
+ "author": "Animob Team",
55
+ "license": "MIT",
56
+ "bugs": {
57
+ "url": "https://github.com/animob/animob/issues"
58
+ },
59
+ "homepage": "https://github.com/animob/animob#readme",
60
+ "dependencies": {
61
+ "ascii-url-encoder": "^1.2.0",
62
+ "axios": "^1.7.9",
63
+ "cheerio": "^1.0.0-rc.12",
64
+ "crypto-js": "^4.1.1",
65
+ "domhandler": "^5.0.3",
66
+ "form-data": "^4.0.0",
67
+ "got": "^11.8.6",
68
+ "got-scraping": "^3.2.13",
69
+ "husky": "^9.1.1",
70
+ "node-fetch": "^2.7.0",
71
+ "yarn": "^1.22.22"
72
+ },
73
+ "devDependencies": {
74
+ "@commitlint/cli": "^17.6.3",
75
+ "@commitlint/config-angular": "^17.6.3",
76
+ "@types/crypto-js": "^4.1.1",
77
+ "@types/jest": "^29.5.1",
78
+ "@types/node": "^20.2.1",
79
+ "@types/ws": "^8.5.4",
80
+ "auto-changelog": "^2.4.0",
81
+ "cloudscraper": "^4.6.0",
82
+ "is-ci": "^3.0.1",
83
+ "jest": "^29.5.0",
84
+ "pre-commit": "^1.0.10",
85
+ "prettier": "^2.8.8",
86
+ "request": "^2.88.2",
87
+ "rimraf": "^6.0.1",
88
+ "ts-jest": "^29.1.0",
89
+ "ts-node": "^10.9.1",
90
+ "typescript": "^5.0.4"
91
+ },
92
+ "auto-changelog": {
93
+ "template": "keepachangelog",
94
+ "preset": "typescript-preset-eslint",
95
+ "output": "CHANGELOG.md",
96
+ "commitUrl": "https://github.com/animob/animob/commit/{id}",
97
+ "compareUrl": "https://github.com/animob/animob/compare/{from}...{to}",
98
+ "issueUrl": "https://github.com/animob/animob/issues/{id}",
99
+ "mergeUrl": "https://github.com/animob/animob/pull/{id}"
100
+ },
101
+ "directories": {
102
+ "example": "examples",
103
+ "test": "test",
104
+ "lib": "src"
105
+ },
106
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
107
+ }