@media-engine/providers 0.1.0 → 0.1.1

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 (56) hide show
  1. package/README.md +40 -262
  2. package/README.ru.md +73 -0
  3. package/dist/anilist/index.js +4 -1
  4. package/dist/anilist/index.js.map +1 -1
  5. package/dist/cinemeta/index.js +20 -27
  6. package/dist/cinemeta/index.js.map +1 -1
  7. package/dist/flixhq-streaming/index.js +13 -6
  8. package/dist/flixhq-streaming/index.js.map +1 -1
  9. package/dist/imdb-dataset/index.js +4 -16
  10. package/dist/imdb-dataset/index.js.map +1 -1
  11. package/dist/kinobd/index.js +11 -28
  12. package/dist/kinobd/index.js.map +1 -1
  13. package/dist/kinobd-streaming/availability.d.ts +3 -0
  14. package/dist/kinobd-streaming/availability.js +156 -0
  15. package/dist/kinobd-streaming/availability.js.map +1 -0
  16. package/dist/kinobd-streaming/candidates.d.ts +31 -0
  17. package/dist/kinobd-streaming/candidates.js +230 -0
  18. package/dist/kinobd-streaming/candidates.js.map +1 -0
  19. package/dist/kinobd-streaming/config.d.ts +49 -0
  20. package/dist/kinobd-streaming/config.js +125 -0
  21. package/dist/kinobd-streaming/config.js.map +1 -0
  22. package/dist/kinobd-streaming/index.d.ts +3 -30
  23. package/dist/kinobd-streaming/index.js +2 -904
  24. package/dist/kinobd-streaming/index.js.map +1 -1
  25. package/dist/kinobd-streaming/players.d.ts +23 -0
  26. package/dist/kinobd-streaming/players.js +270 -0
  27. package/dist/kinobd-streaming/players.js.map +1 -0
  28. package/dist/kinobd-streaming/validation.d.ts +9 -0
  29. package/dist/kinobd-streaming/validation.js +141 -0
  30. package/dist/kinobd-streaming/validation.js.map +1 -0
  31. package/dist/shared/abort.d.ts +2 -0
  32. package/dist/shared/abort.js +8 -0
  33. package/dist/shared/abort.js.map +1 -0
  34. package/dist/shared/http.d.ts +5 -0
  35. package/dist/shared/http.js +41 -9
  36. package/dist/shared/http.js.map +1 -1
  37. package/dist/shared/index.d.ts +1 -0
  38. package/dist/shared/index.js +1 -0
  39. package/dist/shared/index.js.map +1 -1
  40. package/dist/shared/mapping.d.ts +5 -0
  41. package/dist/shared/mapping.js +30 -0
  42. package/dist/shared/mapping.js.map +1 -0
  43. package/dist/shared/options.d.ts +1 -0
  44. package/dist/shared/options.js +10 -0
  45. package/dist/shared/options.js.map +1 -0
  46. package/dist/shared/rate-limit.d.ts +11 -0
  47. package/dist/shared/rate-limit.js +68 -0
  48. package/dist/shared/rate-limit.js.map +1 -0
  49. package/dist/shared/retry.d.ts +10 -0
  50. package/dist/shared/retry.js +31 -0
  51. package/dist/shared/retry.js.map +1 -0
  52. package/dist/shikimori/index.js +16 -5
  53. package/dist/shikimori/index.js.map +1 -1
  54. package/dist/wikidata/index.js +7 -10
  55. package/dist/wikidata/index.js.map +1 -1
  56. package/package.json +8 -4
@@ -1,4 +1,5 @@
1
1
  import { ProviderError } from "@media-engine/core";
2
+ import { calculateRetryDelayMs, parseRetryAfterMs } from "./retry.js";
2
3
  // Accepts only remote HTTP targets that cannot directly address the local machine or LAN.
3
4
  // Принимает только удаленные HTTP-цели без прямого доступа к локальной машине или LAN.
4
5
  export function normalizePublicHttpUrl(value) {
@@ -59,6 +60,8 @@ function isPrivateHostname(value) {
59
60
  export async function fetchJson(options) {
60
61
  const maxRetries = options.maxRetries ?? 1;
61
62
  const retryDelayMs = options.retryDelayMs ?? 150;
63
+ const maxRetryDelayMs = options.maxRetryDelayMs ?? 2_000;
64
+ const retryJitterRatio = options.retryJitterRatio ?? 0.2;
62
65
  const timeout = createProviderTimeout(options.provider, options.context);
63
66
  const signal = mergeAbortSignals(options.context?.signal, timeout.controller.signal);
64
67
  const boundedOptions = {
@@ -74,15 +77,25 @@ export async function fetchJson(options) {
74
77
  try {
75
78
  while (attempt <= maxRetries) {
76
79
  try {
80
+ await options.rateLimitGate?.wait(signal);
77
81
  return await fetchJsonAttempt(boundedOptions);
78
82
  }
79
83
  catch (error) {
80
84
  const providerError = mapProviderHttpError(options.provider, error);
85
+ const retryDelay = calculateRetryDelayMs({
86
+ baseDelayMs: retryDelayMs,
87
+ attempt,
88
+ maxDelayMs: maxRetryDelayMs,
89
+ jitterRatio: retryJitterRatio,
90
+ randomValue: Math.random(),
91
+ retryAfterMs: getRetryAfterMs(providerError),
92
+ });
81
93
  lastError = providerError;
94
+ deferSharedRateLimit(options.rateLimitGate, providerError, retryDelay);
82
95
  if (!providerError.retryable || attempt >= maxRetries) {
83
96
  throw providerError;
84
97
  }
85
- await delay(getRetryDelayMs(retryDelayMs, attempt), signal);
98
+ await delay(retryDelay, signal);
86
99
  attempt += 1;
87
100
  }
88
101
  }
@@ -104,7 +117,7 @@ async function fetchJsonAttempt(options) {
104
117
  signal,
105
118
  });
106
119
  if (!response.ok) {
107
- throw createHttpProviderError(options.provider, response.status);
120
+ throw mapHttpResponseToProviderError(options.provider, response);
108
121
  }
109
122
  return await parseJsonResponse(options.provider, response);
110
123
  }
@@ -176,15 +189,39 @@ export function mapHttpStatusToProviderErrorCode(status) {
176
189
  }
177
190
  // Creates a ProviderError from an HTTP response status.
178
191
  // Создает ProviderError из HTTP status ответа.
179
- function createHttpProviderError(provider, status) {
192
+ export function mapHttpResponseToProviderError(provider, response) {
193
+ const status = response.status;
180
194
  const code = mapHttpStatusToProviderErrorCode(status);
181
- return new ProviderError({
195
+ return new HttpProviderError({
182
196
  provider,
183
197
  code,
184
198
  message: `Provider "${provider}" returned HTTP ${status}.`,
185
199
  retryable: code === "PROVIDER_RATE_LIMITED" || code === "PROVIDER_UNAVAILABLE",
200
+ retryAfterMs: parseRetryAfterMs(response.headers.get("retry-after")),
186
201
  });
187
202
  }
203
+ class HttpProviderError extends ProviderError {
204
+ retryAfterMs;
205
+ constructor(options) {
206
+ super(options);
207
+ this.retryAfterMs = options.retryAfterMs;
208
+ }
209
+ }
210
+ function getRetryAfterMs(error) {
211
+ return error instanceof HttpProviderError ? error.retryAfterMs : undefined;
212
+ }
213
+ function deferSharedRateLimit(gate, error, fallbackDelayMs) {
214
+ if (!gate || !(error instanceof HttpProviderError)) {
215
+ return;
216
+ }
217
+ if (error.code === "PROVIDER_RATE_LIMITED") {
218
+ gate.defer(error.retryAfterMs ?? fallbackDelayMs);
219
+ return;
220
+ }
221
+ if (error.retryAfterMs !== undefined) {
222
+ gate.defer(error.retryAfterMs);
223
+ }
224
+ }
188
225
  // Creates a timeout controller for provider HTTP calls.
189
226
  // Создает timeout controller для HTTP-вызовов провайдера.
190
227
  function createProviderTimeout(provider, context) {
@@ -234,11 +271,6 @@ function isAbortError(error) {
234
271
  return ((error instanceof DOMException && error.name === "AbortError") ||
235
272
  (error instanceof Error && error.name === "AbortError"));
236
273
  }
237
- // Calculates a small linear backoff for provider retries.
238
- // Считает небольшой линейный backoff для provider retry.
239
- function getRetryDelayMs(baseDelayMs, attempt) {
240
- return Math.max(0, baseDelayMs * (attempt + 1));
241
- }
242
274
  // Waits before the next provider retry.
243
275
  // Ждет перед следующей provider retry.
244
276
  function delay(ms, signal) {
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/shared/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/shared/http.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export * from "./http.js";
2
+ export * from "./rate-limit.js";
@@ -1,2 +1,3 @@
1
1
  export * from "./http.js";
2
+ export * from "./rate-limit.js";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Genre, Image, MediaType } from "@media-engine/core";
2
+ export declare function mapGenreNames(genres: string[] | undefined, source: string): Genre[] | undefined;
3
+ export declare function createProviderImage(url: string | null | undefined, type: Image["type"], source: string): Image | undefined;
4
+ export declare function normalizeProviderSearchText(value: string): string;
5
+ export declare function mapKinoBdMediaType(type: string | null | undefined): MediaType | undefined;
@@ -0,0 +1,30 @@
1
+ // Maps simple genre labels into normalized provider-attributed values.
2
+ // Преобразует простые названия жанров в нормализованные значения с источником.
3
+ export function mapGenreNames(genres, source) {
4
+ return genres?.map((name) => ({ name, source }));
5
+ }
6
+ // Creates one normalized provider-attributed image from a direct URL.
7
+ // Создает одно нормализованное изображение с источником из прямого URL.
8
+ export function createProviderImage(url, type, source) {
9
+ return url ? { url, type, source } : undefined;
10
+ }
11
+ // Normalizes text for conservative provider-local title comparisons.
12
+ // Нормализует текст для консервативного сравнения названий внутри провайдеров.
13
+ export function normalizeProviderSearchText(value) {
14
+ return value
15
+ .toLocaleLowerCase()
16
+ .replaceAll(/[^\p{L}\p{N}]+/gu, " ")
17
+ .trim();
18
+ }
19
+ // Maps KinoBD API type labels shared by metadata and streaming adapters.
20
+ // Преобразует общие для metadata и streaming метки типов KinoBD API.
21
+ export function mapKinoBdMediaType(type) {
22
+ if (type === "film") {
23
+ return "movie";
24
+ }
25
+ if (type === "serial" || type === "series") {
26
+ return "series";
27
+ }
28
+ return undefined;
29
+ }
30
+ //# sourceMappingURL=mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapping.js","sourceRoot":"","sources":["../../src/shared/mapping.ts"],"names":[],"mappings":"AAEA,uEAAuE;AACvE,+EAA+E;AAC/E,MAAM,UAAU,aAAa,CAAC,MAA4B,EAAE,MAAc;IACxE,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,sEAAsE;AACtE,wEAAwE;AACxE,MAAM,UAAU,mBAAmB,CACjC,GAA8B,EAC9B,IAAmB,EACnB,MAAc;IAEd,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED,qEAAqE;AACrE,+EAA+E;AAC/E,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,OAAO,KAAK;SACT,iBAAiB,EAAE;SACnB,UAAU,CAAC,kBAAkB,EAAE,GAAG,CAAC;SACnC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,yEAAyE;AACzE,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function resolveBoundedIntegerOption(value: number | undefined, fallback: number, name: string, min: number, max: number): number;
@@ -0,0 +1,10 @@
1
+ // Resolves a bounded integer option and fails early on unsafe provider configuration.
2
+ // Выбирает ограниченную integer-опцию и сразу отклоняет небезопасную конфигурацию провайдера.
3
+ export function resolveBoundedIntegerOption(value, fallback, name, min, max) {
4
+ const normalized = value ?? fallback;
5
+ if (!Number.isSafeInteger(normalized) || normalized < min || normalized > max) {
6
+ throw new RangeError(`${name} must be an integer between ${min} and ${max}.`);
7
+ }
8
+ return normalized;
9
+ }
10
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/shared/options.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,8FAA8F;AAC9F,MAAM,UAAU,2BAA2B,CACzC,KAAyB,EACzB,QAAgB,EAChB,IAAY,EACZ,GAAW,EACX,GAAW;IAEX,MAAM,UAAU,GAAG,KAAK,IAAI,QAAQ,CAAC;IAErC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,GAAG,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;QAC9E,MAAM,IAAI,UAAU,CAAC,GAAG,IAAI,+BAA+B,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export interface ProviderRateLimitGateOptions {
2
+ maxCooldownMs?: number;
3
+ now?: () => number;
4
+ }
5
+ export declare class ProviderRateLimitGate {
6
+ #private;
7
+ constructor(options?: ProviderRateLimitGateOptions);
8
+ defer(delayMs: number): void;
9
+ wait(signal?: AbortSignal): Promise<void>;
10
+ }
11
+ export declare function deferProviderRateLimitFromResponse(gate: ProviderRateLimitGate, response: Response, fallbackDelayMs?: number): void;
@@ -0,0 +1,68 @@
1
+ import { parseRetryAfterMs } from "./retry.js";
2
+ const DEFAULT_MAX_COOLDOWN_MS = 30_000;
3
+ const DEFAULT_RATE_LIMIT_FALLBACK_MS = 1_000;
4
+ // Shares an upstream rate-limit deadline between requests from one provider instance.
5
+ // Разделяет deadline upstream rate limit между запросами одного экземпляра provider.
6
+ export class ProviderRateLimitGate {
7
+ #maxCooldownMs;
8
+ #now;
9
+ #blockedUntil = 0;
10
+ constructor(options = {}) {
11
+ const maxCooldownMs = options.maxCooldownMs ?? DEFAULT_MAX_COOLDOWN_MS;
12
+ if (!Number.isFinite(maxCooldownMs) || maxCooldownMs < 0) {
13
+ throw new RangeError("Provider rate-limit maxCooldownMs must be a non-negative number.");
14
+ }
15
+ this.#maxCooldownMs = maxCooldownMs;
16
+ this.#now = options.now ?? Date.now;
17
+ }
18
+ // Extends the shared deadline without shortening an existing longer cooldown.
19
+ // Продлевает общий deadline, не сокращая уже установленный более длинный cooldown.
20
+ defer(delayMs) {
21
+ if (!Number.isFinite(delayMs) || delayMs <= 0 || this.#maxCooldownMs === 0) {
22
+ return;
23
+ }
24
+ const boundedDelayMs = Math.min(delayMs, this.#maxCooldownMs);
25
+ this.#blockedUntil = Math.max(this.#blockedUntil, this.#now() + boundedDelayMs);
26
+ }
27
+ // Waits for the current deadline and follows extensions announced while waiting.
28
+ // Ждет текущий deadline и учитывает продления, объявленные во время ожидания.
29
+ async wait(signal) {
30
+ while (true) {
31
+ const remainingMs = this.#blockedUntil - this.#now();
32
+ if (remainingMs <= 0) {
33
+ return;
34
+ }
35
+ await abortableDelay(remainingMs, signal);
36
+ }
37
+ }
38
+ }
39
+ // Records a server rate-limit hint for raw HTTP helpers that do not use fetchJson.
40
+ // Записывает server rate-limit hint для raw HTTP helpers, не использующих fetchJson.
41
+ export function deferProviderRateLimitFromResponse(gate, response, fallbackDelayMs = DEFAULT_RATE_LIMIT_FALLBACK_MS) {
42
+ const retryAfterMs = parseRetryAfterMs(response.headers.get("retry-after"));
43
+ if (response.status === 429) {
44
+ gate.defer(retryAfterMs ?? fallbackDelayMs);
45
+ return;
46
+ }
47
+ if (response.status >= 500 && retryAfterMs !== undefined) {
48
+ gate.defer(retryAfterMs);
49
+ }
50
+ }
51
+ function abortableDelay(ms, signal) {
52
+ return new Promise((resolve, reject) => {
53
+ if (signal?.aborted) {
54
+ reject(signal.reason);
55
+ return;
56
+ }
57
+ const timeout = setTimeout(() => {
58
+ signal?.removeEventListener("abort", onAbort);
59
+ resolve();
60
+ }, ms);
61
+ const onAbort = () => {
62
+ clearTimeout(timeout);
63
+ reject(signal?.reason);
64
+ };
65
+ signal?.addEventListener("abort", onAbort, { once: true });
66
+ });
67
+ }
68
+ //# sourceMappingURL=rate-limit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limit.js","sourceRoot":"","sources":["../../src/shared/rate-limit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export interface RetryDelayOptions {
2
+ baseDelayMs: number;
3
+ attempt: number;
4
+ maxDelayMs: number;
5
+ jitterRatio: number;
6
+ randomValue: number;
7
+ retryAfterMs?: number;
8
+ }
9
+ export declare function parseRetryAfterMs(value: string | null, nowMs?: number): number | undefined;
10
+ export declare function calculateRetryDelayMs(options: RetryDelayOptions): number;
@@ -0,0 +1,31 @@
1
+ // Parses the HTTP Retry-After header as delta-seconds or an HTTP date.
2
+ // Парсит HTTP-заголовок Retry-After как секунды или HTTP-дату.
3
+ export function parseRetryAfterMs(value, nowMs = Date.now()) {
4
+ const normalized = value?.trim();
5
+ if (!normalized) {
6
+ return undefined;
7
+ }
8
+ if (/^\d+$/.test(normalized)) {
9
+ const milliseconds = Number(normalized) * 1_000;
10
+ return Number.isSafeInteger(milliseconds) ? milliseconds : undefined;
11
+ }
12
+ if (/^[+-]?\d+(?:\.\d+)?$/.test(normalized)) {
13
+ return undefined;
14
+ }
15
+ const retryAt = Date.parse(normalized);
16
+ return Number.isFinite(retryAt) ? Math.max(0, retryAt - nowMs) : undefined;
17
+ }
18
+ // Calculates exponential backoff with bounded jitter and an optional server hint.
19
+ // Считает экспоненциальный backoff с ограниченным jitter и подсказкой сервера.
20
+ export function calculateRetryDelayMs(options) {
21
+ const baseDelayMs = Math.max(0, options.baseDelayMs);
22
+ const maxDelayMs = Math.max(0, options.maxDelayMs);
23
+ const jitterRatio = Math.min(1, Math.max(0, options.jitterRatio));
24
+ const randomValue = Math.min(1, Math.max(0, options.randomValue));
25
+ const exponentialDelay = baseDelayMs * 2 ** Math.max(0, options.attempt);
26
+ const jitterFactor = 1 + (randomValue * 2 - 1) * jitterRatio;
27
+ const adaptiveDelay = exponentialDelay * jitterFactor;
28
+ const requestedDelay = Math.max(adaptiveDelay, options.retryAfterMs ?? 0);
29
+ return Math.round(Math.min(maxDelayMs, requestedDelay));
30
+ }
31
+ //# sourceMappingURL=retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/shared/retry.ts"],"names":[],"mappings":"AASA,uEAAuE;AACvE,+DAA+D;AAC/D,MAAM,UAAU,iBAAiB,CAAC,KAAoB,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE;IACxE,MAAM,UAAU,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAEjC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;QAChD,OAAO,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACvE,CAAC;IAED,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAED,kFAAkF;AAClF,+EAA+E;AAC/E,MAAM,UAAU,qBAAqB,CAAC,OAA0B;IAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;IAC7D,MAAM,aAAa,GAAG,gBAAgB,GAAG,YAAY,CAAC;IACtD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;IAE1E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;AAC1D,CAAC"}
@@ -1,4 +1,6 @@
1
- import { fetchJson } from "../shared/index.js";
1
+ import { rethrowIfProviderAborted } from "../shared/abort.js";
2
+ import { fetchJson, ProviderRateLimitGate } from "../shared/index.js";
3
+ import { resolveBoundedIntegerOption } from "../shared/options.js";
2
4
  const PROVIDER_NAME = "shikimori";
3
5
  const DEFAULT_BASE_URL = "https://shikimori.one";
4
6
  const DEFAULT_SEARCH_LIMIT = 20;
@@ -11,6 +13,7 @@ export function shikimoriProvider(options = {}) {
11
13
  name: PROVIDER_NAME,
12
14
  version: options.version,
13
15
  kind: "metadata",
16
+ searchPosterMatchesDetails: true,
14
17
  capabilities: {
15
18
  mediaTypes: ["anime"],
16
19
  search: {
@@ -36,8 +39,9 @@ function createShikimoriConfig(options) {
36
39
  return {
37
40
  baseUrl: trimTrailingSlash(options.baseUrl ?? DEFAULT_BASE_URL),
38
41
  fetch: options.fetch,
39
- searchLimit: options.searchLimit ?? DEFAULT_SEARCH_LIMIT,
40
- personLimit: options.personLimit ?? DEFAULT_PERSON_LIMIT,
42
+ rateLimitGate: new ProviderRateLimitGate(),
43
+ searchLimit: resolveBoundedIntegerOption(options.searchLimit, DEFAULT_SEARCH_LIMIT, "Shikimori searchLimit", 1, 50),
44
+ personLimit: resolveBoundedIntegerOption(options.personLimit, DEFAULT_PERSON_LIMIT, "Shikimori personLimit", 0, 100),
41
45
  userAgent: options.userAgent,
42
46
  censored: options.censored ?? false,
43
47
  };
@@ -89,8 +93,14 @@ async function getAnimeById(config, shikimoriId, context) {
89
93
  const encodedId = encodeURIComponent(shikimoriId);
90
94
  const [data, roles, screenshots] = await Promise.all([
91
95
  requestShikimori(config, `/api/animes/${encodedId}`, {}, context),
92
- requestShikimori(config, `/api/animes/${encodedId}/roles`, {}, context).catch(() => []),
93
- requestShikimori(config, `/api/animes/${encodedId}/screenshots`, {}, context).catch(() => []),
96
+ requestShikimori(config, `/api/animes/${encodedId}/roles`, {}, context).catch((error) => {
97
+ rethrowIfProviderAborted(context, error);
98
+ return [];
99
+ }),
100
+ requestShikimori(config, `/api/animes/${encodedId}/screenshots`, {}, context).catch((error) => {
101
+ rethrowIfProviderAborted(context, error);
102
+ return [];
103
+ }),
94
104
  ]);
95
105
  return mapAnimeDetails(config, data, roles, screenshots);
96
106
  }
@@ -108,6 +118,7 @@ async function requestShikimori(config, path, params, context) {
108
118
  url,
109
119
  context,
110
120
  fetch: config.fetch,
121
+ rateLimitGate: config.rateLimitGate,
111
122
  init: {
112
123
  headers: createHeaders(config),
113
124
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shikimori/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shikimori/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import { fetchJson } from "../shared/index.js";
1
+ import { fetchJson, ProviderRateLimitGate } from "../shared/index.js";
2
+ import { normalizeProviderSearchText as normalizeSearchText } from "../shared/mapping.js";
3
+ import { resolveBoundedIntegerOption } from "../shared/options.js";
2
4
  const PROVIDER_NAME = "wikidata";
3
5
  const DEFAULT_BASE_URL = "https://www.wikidata.org";
4
6
  const DEFAULT_SPARQL_URL = "https://query.wikidata.org/sparql";
@@ -15,6 +17,7 @@ export function wikidataProvider(options = {}) {
15
17
  name: PROVIDER_NAME,
16
18
  version: options.version,
17
19
  kind: "metadata",
20
+ searchPosterMatchesDetails: true,
18
21
  capabilities: {
19
22
  mediaTypes: ["movie", "series"],
20
23
  search: {
@@ -43,7 +46,8 @@ function createWikidataConfig(options) {
43
46
  language: normalizeLanguage(options.language ?? DEFAULT_LANGUAGE),
44
47
  userAgent: options.userAgent ?? DEFAULT_USER_AGENT,
45
48
  fetch: options.fetch,
46
- searchLimit: options.searchLimit ?? DEFAULT_SEARCH_LIMIT,
49
+ rateLimitGate: new ProviderRateLimitGate(),
50
+ searchLimit: resolveBoundedIntegerOption(options.searchLimit, DEFAULT_SEARCH_LIMIT, "Wikidata searchLimit", 1, 50),
47
51
  };
48
52
  }
49
53
  // Runs title or IMDb ID search through Wikidata without requiring credentials.
@@ -306,6 +310,7 @@ function requestJson(config, url, context) {
306
310
  url,
307
311
  context,
308
312
  fetch: config.fetch,
313
+ rateLimitGate: config.rateLimitGate,
309
314
  init: {
310
315
  headers: {
311
316
  accept: "application/json",
@@ -326,14 +331,6 @@ function isRelevantTitleMatch(title, queryTitle) {
326
331
  const normalizedQuery = normalizeSearchText(queryTitle);
327
332
  return normalizedTitle.includes(normalizedQuery) || normalizedQuery.includes(normalizedTitle);
328
333
  }
329
- // Normalizes text for loose local comparisons.
330
- // Нормализует текст для мягких локальных сравнений.
331
- function normalizeSearchText(value) {
332
- return value
333
- .toLocaleLowerCase()
334
- .replaceAll(/[^\p{L}\p{N}]+/gu, " ")
335
- .trim();
336
- }
337
334
  // Extracts a four-digit year from an ISO-like date.
338
335
  // Достает четырехзначный год из ISO-like date.
339
336
  function getYear(date) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wikidata/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wikidata/index.ts"],"names":[],"mappings":"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"}