@media-engine/core 0.1.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 (87) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +295 -0
  3. package/dist/cache/index.d.ts +2 -0
  4. package/dist/cache/index.js +2 -0
  5. package/dist/cache/index.js.map +1 -0
  6. package/dist/cache/memory.d.ts +19 -0
  7. package/dist/cache/memory.js +83 -0
  8. package/dist/cache/memory.js.map +1 -0
  9. package/dist/cache/types.d.ts +9 -0
  10. package/dist/cache/types.js +2 -0
  11. package/dist/cache/types.js.map +1 -0
  12. package/dist/details/index.d.ts +1 -0
  13. package/dist/details/index.js +2 -0
  14. package/dist/details/index.js.map +1 -0
  15. package/dist/details/types.d.ts +19 -0
  16. package/dist/details/types.js +2 -0
  17. package/dist/details/types.js.map +1 -0
  18. package/dist/engine/engine.d.ts +29 -0
  19. package/dist/engine/engine.js +1007 -0
  20. package/dist/engine/engine.js.map +1 -0
  21. package/dist/engine/index.d.ts +2 -0
  22. package/dist/engine/index.js +2 -0
  23. package/dist/engine/index.js.map +1 -0
  24. package/dist/engine/types.d.ts +13 -0
  25. package/dist/engine/types.js +2 -0
  26. package/dist/engine/types.js.map +1 -0
  27. package/dist/errors/index.d.ts +1 -0
  28. package/dist/errors/index.js +2 -0
  29. package/dist/errors/index.js.map +1 -0
  30. package/dist/errors/types.d.ts +27 -0
  31. package/dist/errors/types.js +77 -0
  32. package/dist/errors/types.js.map +1 -0
  33. package/dist/index.d.ts +12 -0
  34. package/dist/index.js +7 -0
  35. package/dist/index.js.map +1 -0
  36. package/dist/media/index.d.ts +1 -0
  37. package/dist/media/index.js +2 -0
  38. package/dist/media/index.js.map +1 -0
  39. package/dist/media/types.d.ts +136 -0
  40. package/dist/media/types.js +2 -0
  41. package/dist/media/types.js.map +1 -0
  42. package/dist/merge/index.d.ts +2 -0
  43. package/dist/merge/index.js +2 -0
  44. package/dist/merge/index.js.map +1 -0
  45. package/dist/merge/strategy.d.ts +8 -0
  46. package/dist/merge/strategy.js +1168 -0
  47. package/dist/merge/strategy.js.map +1 -0
  48. package/dist/merge/types.d.ts +18 -0
  49. package/dist/merge/types.js +2 -0
  50. package/dist/merge/types.js.map +1 -0
  51. package/dist/providers/index.d.ts +2 -0
  52. package/dist/providers/index.js +2 -0
  53. package/dist/providers/index.js.map +1 -0
  54. package/dist/providers/registry.d.ts +9 -0
  55. package/dist/providers/registry.js +92 -0
  56. package/dist/providers/registry.js.map +1 -0
  57. package/dist/providers/types.d.ts +63 -0
  58. package/dist/providers/types.js +2 -0
  59. package/dist/providers/types.js.map +1 -0
  60. package/dist/response/index.d.ts +1 -0
  61. package/dist/response/index.js +2 -0
  62. package/dist/response/index.js.map +1 -0
  63. package/dist/response/types.d.ts +32 -0
  64. package/dist/response/types.js +2 -0
  65. package/dist/response/types.js.map +1 -0
  66. package/dist/search/index.d.ts +1 -0
  67. package/dist/search/index.js +2 -0
  68. package/dist/search/index.js.map +1 -0
  69. package/dist/search/types.d.ts +26 -0
  70. package/dist/search/types.js +2 -0
  71. package/dist/search/types.js.map +1 -0
  72. package/dist/streaming/index.d.ts +1 -0
  73. package/dist/streaming/index.js +2 -0
  74. package/dist/streaming/index.js.map +1 -0
  75. package/dist/streaming/types.d.ts +126 -0
  76. package/dist/streaming/types.js +2 -0
  77. package/dist/streaming/types.js.map +1 -0
  78. package/dist/testing/fixtures.d.ts +4 -0
  79. package/dist/testing/fixtures.js +101 -0
  80. package/dist/testing/fixtures.js.map +1 -0
  81. package/dist/testing/index.d.ts +2 -0
  82. package/dist/testing/index.js +3 -0
  83. package/dist/testing/index.js.map +1 -0
  84. package/dist/testing/providers.d.ts +26 -0
  85. package/dist/testing/providers.js +147 -0
  86. package/dist/testing/providers.js.map +1 -0
  87. package/package.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./engine.js";
2
+ export type * from "./types.js";
@@ -0,0 +1,2 @@
1
+ export * from "./engine.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/engine/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Cache } from "../cache/index.js";
2
+ import type { MergeStrategy } from "../merge/index.js";
3
+ import type { MediaProvider } from "../providers/index.js";
4
+ import type { StreamingProvider } from "../streaming/index.js";
5
+ export interface MediaEngineOptions {
6
+ providers?: MediaProvider[];
7
+ streamingProviders?: StreamingProvider[];
8
+ cache?: Cache;
9
+ mergeStrategy?: MergeStrategy;
10
+ timeoutMs?: number;
11
+ providerTimeouts?: Readonly<Record<string, number>>;
12
+ debug?: boolean;
13
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from "./types.js";
@@ -0,0 +1,2 @@
1
+ export * from "./types.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { ProviderFailure } from "../response/types.js";
2
+ export type ErrorCode = "INVALID_QUERY" | "PROVIDER_ERROR" | "UNKNOWN_ERROR";
3
+ export type ProviderErrorCode = "PROVIDER_ERROR" | "PROVIDER_TIMEOUT" | "PROVIDER_UNAUTHORIZED" | "PROVIDER_RATE_LIMITED" | "PROVIDER_UNAVAILABLE" | "PROVIDER_INVALID_RESPONSE" | "PROVIDER_NOT_SUPPORTED";
4
+ export interface ProviderErrorOptions {
5
+ provider: string;
6
+ code: ProviderErrorCode;
7
+ message: string;
8
+ retryable?: boolean;
9
+ cause?: unknown;
10
+ }
11
+ export interface MediaEngineErrorOptions {
12
+ code: ErrorCode;
13
+ message: string;
14
+ cause?: unknown;
15
+ }
16
+ export declare class MediaEngineError extends Error {
17
+ readonly code: ErrorCode;
18
+ constructor(options: MediaEngineErrorOptions);
19
+ }
20
+ export declare class ProviderError extends Error {
21
+ readonly provider: string;
22
+ readonly code: ProviderErrorCode;
23
+ readonly retryable: boolean;
24
+ constructor(options: ProviderErrorOptions);
25
+ }
26
+ export declare function toMediaEngineError(error: unknown): MediaEngineError;
27
+ export declare function toProviderFailure(provider: string, error: unknown): ProviderFailure;
@@ -0,0 +1,77 @@
1
+ // Error thrown by the engine for predictable core-level failures.
2
+ // Ошибка движка для предсказуемых сбоев на уровне core.
3
+ export class MediaEngineError extends Error {
4
+ code;
5
+ constructor(options) {
6
+ super(options.message, { cause: options.cause });
7
+ this.name = "MediaEngineError";
8
+ this.code = options.code;
9
+ }
10
+ }
11
+ // Error thrown by metadata providers before the engine maps it to response metadata.
12
+ // Ошибка metadata-провайдера до преобразования движком в метаданные ответа.
13
+ export class ProviderError extends Error {
14
+ provider;
15
+ code;
16
+ retryable;
17
+ constructor(options) {
18
+ super(options.message, { cause: options.cause });
19
+ this.name = "ProviderError";
20
+ this.provider = options.provider;
21
+ this.code = options.code;
22
+ this.retryable = options.retryable ?? false;
23
+ }
24
+ }
25
+ // Converts unknown thrown values into a predictable engine error.
26
+ // Преобразует неизвестные выброшенные значения в предсказуемую ошибку движка.
27
+ export function toMediaEngineError(error) {
28
+ if (error instanceof MediaEngineError) {
29
+ return error;
30
+ }
31
+ if (error instanceof ProviderError) {
32
+ return new MediaEngineError({
33
+ code: "PROVIDER_ERROR",
34
+ message: error.message,
35
+ cause: error,
36
+ });
37
+ }
38
+ if (error instanceof Error) {
39
+ return new MediaEngineError({
40
+ code: "UNKNOWN_ERROR",
41
+ message: error.message,
42
+ cause: error,
43
+ });
44
+ }
45
+ return new MediaEngineError({
46
+ code: "UNKNOWN_ERROR",
47
+ message: "Unknown error",
48
+ cause: error,
49
+ });
50
+ }
51
+ // Converts unknown provider failures into public response metadata.
52
+ // Преобразует неизвестные сбои провайдера в публичные метаданные ответа.
53
+ export function toProviderFailure(provider, error) {
54
+ if (error instanceof ProviderError) {
55
+ return {
56
+ provider: error.provider,
57
+ code: error.code,
58
+ retryable: error.retryable,
59
+ message: error.message,
60
+ };
61
+ }
62
+ if (error instanceof Error) {
63
+ return {
64
+ provider,
65
+ code: "PROVIDER_ERROR",
66
+ retryable: false,
67
+ message: error.message,
68
+ };
69
+ }
70
+ return {
71
+ provider,
72
+ code: "PROVIDER_ERROR",
73
+ retryable: false,
74
+ message: "Unknown provider error",
75
+ };
76
+ }
77
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/errors/types.ts"],"names":[],"mappings":"AAmCA,kEAAkE;AAClE,wDAAwD;AACxD,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,IAAI,CAAY;IAEzB,YAAY,OAAgC;QAC1C,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;CACF;AAED,qFAAqF;AACrF,4EAA4E;AAC5E,MAAM,OAAO,aAAc,SAAQ,KAAK;IAC7B,QAAQ,CAAS;IACjB,IAAI,CAAoB;IACxB,SAAS,CAAU;IAE5B,YAAY,OAA6B;QACvC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;IAC9C,CAAC;CACF;AAED,kEAAkE;AAClE,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,IAAI,KAAK,YAAY,gBAAgB,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACnC,OAAO,IAAI,gBAAgB,CAAC;YAC1B,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,IAAI,gBAAgB,CAAC;YAC1B,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,gBAAgB,CAAC;QAC1B,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC;AAED,oEAAoE;AACpE,yEAAyE;AACzE,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,KAAc;IAChE,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACnC,OAAO;YACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO;YACL,QAAQ;YACR,IAAI,EAAE,gBAAgB;YACtB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ;QACR,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,wBAAwB;KAClC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare const MEDIA_ENGINE_CORE_VERSION = "0.1.0";
2
+ export type * from "./media/index.js";
3
+ export type * from "./search/index.js";
4
+ export type * from "./details/index.js";
5
+ export type * from "./response/index.js";
6
+ export type * from "./providers/index.js";
7
+ export type * from "./streaming/index.js";
8
+ export * from "./merge/index.js";
9
+ export * from "./cache/index.js";
10
+ export * from "./engine/index.js";
11
+ export * from "./errors/index.js";
12
+ export * from "./testing/index.js";
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ export const MEDIA_ENGINE_CORE_VERSION = "0.1.0";
2
+ export * from "./merge/index.js";
3
+ export * from "./cache/index.js";
4
+ export * from "./engine/index.js";
5
+ export * from "./errors/index.js";
6
+ export * from "./testing/index.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,yBAAyB,GAAG,OAAO,CAAC;AAQjD,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1 @@
1
+ export type * from "./types.js";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/media/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,136 @@
1
+ export type MediaType = "movie" | "series" | "anime";
2
+ export interface ExternalIds {
3
+ imdb?: string;
4
+ tmdb?: string;
5
+ kinopoisk?: string;
6
+ shikimori?: string;
7
+ myAnimeList?: string;
8
+ aniList?: string;
9
+ worldArt?: string;
10
+ }
11
+ export type ImageType = "poster" | "backdrop" | "logo" | "still" | "profile";
12
+ export interface Image {
13
+ url: string;
14
+ type?: ImageType;
15
+ width?: number;
16
+ height?: number;
17
+ language?: string;
18
+ source?: string;
19
+ }
20
+ export type RatingSource = "imdb" | "tmdb" | "kinopoisk" | "shikimori" | "myAnimeList" | "aniList" | "internal";
21
+ export interface Rating {
22
+ source: RatingSource;
23
+ value: number;
24
+ max: number;
25
+ votes?: number;
26
+ }
27
+ export interface Genre {
28
+ id?: string;
29
+ name: string;
30
+ source?: string;
31
+ }
32
+ export interface PersonExternalIds {
33
+ imdb?: string;
34
+ tmdb?: string;
35
+ kinopoisk?: string;
36
+ shikimori?: string;
37
+ }
38
+ export interface Person {
39
+ id?: string;
40
+ name: string;
41
+ originalName?: string;
42
+ photo?: Image;
43
+ ids?: PersonExternalIds;
44
+ }
45
+ export type PersonRole = "actor" | "director" | "writer" | "producer" | "composer" | "voice_actor" | "unknown";
46
+ export interface MediaPerson {
47
+ person: Person;
48
+ roles: PersonRole[];
49
+ characterName?: string;
50
+ order?: number;
51
+ }
52
+ export interface Episode {
53
+ id?: string;
54
+ seasonNumber?: number;
55
+ episodeNumber: number;
56
+ absoluteNumber?: number;
57
+ title?: string;
58
+ description?: string;
59
+ releaseDate?: string;
60
+ runtimeMinutes?: number;
61
+ still?: Image;
62
+ }
63
+ export interface Season {
64
+ id?: string;
65
+ number: number;
66
+ title?: string;
67
+ description?: string;
68
+ poster?: Image;
69
+ episodes?: Episode[];
70
+ episodesCount?: number;
71
+ releaseDate?: string;
72
+ }
73
+ export type MediaStatus = "announced" | "in_production" | "ongoing" | "released" | "ended" | "canceled" | "unknown";
74
+ export interface Money {
75
+ amount: number;
76
+ currency: string;
77
+ }
78
+ export interface CollectionInfo {
79
+ id?: string;
80
+ title: string;
81
+ poster?: Image;
82
+ backdrop?: Image;
83
+ }
84
+ export interface ProviderSource {
85
+ provider: string;
86
+ ids?: ExternalIds;
87
+ url?: string;
88
+ }
89
+ export interface MediaItem {
90
+ id: string;
91
+ type: MediaType;
92
+ title: string;
93
+ originalTitle?: string;
94
+ alternativeTitles?: string[];
95
+ year?: number;
96
+ releaseDate?: string;
97
+ description?: string;
98
+ shortDescription?: string;
99
+ poster?: Image;
100
+ backdrop?: Image;
101
+ genres?: Genre[];
102
+ ratings?: Rating[];
103
+ ids?: ExternalIds;
104
+ }
105
+ export interface BaseMediaDetails extends MediaItem {
106
+ status?: MediaStatus;
107
+ runtimeMinutes?: number;
108
+ countries?: string[];
109
+ languages?: string[];
110
+ images?: Image[];
111
+ persons?: MediaPerson[];
112
+ sourceProviders?: ProviderSource[];
113
+ }
114
+ export interface MovieDetails extends BaseMediaDetails {
115
+ type: "movie";
116
+ budget?: Money;
117
+ revenue?: Money;
118
+ collection?: CollectionInfo;
119
+ }
120
+ export interface SeriesDetails extends BaseMediaDetails {
121
+ type: "series";
122
+ seasons?: Season[];
123
+ episodesCount?: number;
124
+ seasonsCount?: number;
125
+ }
126
+ export type AnimeKind = "tv" | "movie" | "ova" | "ona" | "special" | "music" | "unknown";
127
+ export interface AnimeDetails extends BaseMediaDetails {
128
+ type: "anime";
129
+ animeKind?: AnimeKind;
130
+ episodes?: Episode[];
131
+ episodesCount?: number;
132
+ airedOn?: string;
133
+ releasedOn?: string;
134
+ ageRating?: string;
135
+ }
136
+ export type MediaDetails = MovieDetails | SeriesDetails | AnimeDetails;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/media/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from "./strategy.js";
2
+ export type * from "./types.js";
@@ -0,0 +1,2 @@
1
+ export * from "./strategy.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/merge/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { MediaDetails } from "../media/index.js";
2
+ import type { ProviderDetailsResult, ProviderSearchResult } from "../providers/index.js";
3
+ import type { MediaSearchResult } from "../search/index.js";
4
+ import type { MergeContext, MergeStrategy } from "./types.js";
5
+ export declare class DefaultMergeStrategy implements MergeStrategy {
6
+ mergeSearchResults(results: ProviderSearchResult[], context?: MergeContext): MediaSearchResult[];
7
+ mergeDetails(results: ProviderDetailsResult[], context?: MergeContext): MediaDetails | null;
8
+ }