unified-video-framework 1.4.413 → 1.4.414

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 (106) hide show
  1. package/package.json +6 -1
  2. package/packages/core/src/BasePlayer.d.ts +61 -0
  3. package/packages/core/src/BasePlayer.d.ts.map +1 -0
  4. package/packages/core/src/BasePlayer.js +175 -0
  5. package/packages/core/src/BasePlayer.js.map +1 -0
  6. package/packages/core/src/VideoPlayerFactory.d.ts +8 -0
  7. package/packages/core/src/VideoPlayerFactory.d.ts.map +1 -0
  8. package/packages/core/src/VideoPlayerFactory.js +95 -0
  9. package/packages/core/src/VideoPlayerFactory.js.map +1 -0
  10. package/packages/core/src/analytics/adapters/PlayerAnalyticsAdapter.d.ts +18 -0
  11. package/packages/core/src/analytics/adapters/PlayerAnalyticsAdapter.d.ts.map +1 -0
  12. package/packages/core/src/analytics/adapters/PlayerAnalyticsAdapter.js +117 -0
  13. package/packages/core/src/analytics/adapters/PlayerAnalyticsAdapter.js.map +1 -0
  14. package/packages/core/src/analytics/core/AnalyticsProvider.d.ts +18 -0
  15. package/packages/core/src/analytics/core/AnalyticsProvider.d.ts.map +1 -0
  16. package/packages/core/src/analytics/core/AnalyticsProvider.js +99 -0
  17. package/packages/core/src/analytics/core/AnalyticsProvider.js.map +1 -0
  18. package/packages/core/src/analytics/core/DynamicAnalyticsManager.d.ts +20 -0
  19. package/packages/core/src/analytics/core/DynamicAnalyticsManager.d.ts.map +1 -0
  20. package/packages/core/src/analytics/core/DynamicAnalyticsManager.js +161 -0
  21. package/packages/core/src/analytics/core/DynamicAnalyticsManager.js.map +1 -0
  22. package/packages/core/src/analytics/core/EventBatcher.d.ts +32 -0
  23. package/packages/core/src/analytics/core/EventBatcher.d.ts.map +1 -0
  24. package/packages/core/src/analytics/core/EventBatcher.js +98 -0
  25. package/packages/core/src/analytics/core/EventBatcher.js.map +1 -0
  26. package/packages/core/src/analytics/core/PlayerAnalytics.d.ts +19 -0
  27. package/packages/core/src/analytics/core/PlayerAnalytics.d.ts.map +1 -0
  28. package/packages/core/src/analytics/core/PlayerAnalytics.js +80 -0
  29. package/packages/core/src/analytics/core/PlayerAnalytics.js.map +1 -0
  30. package/packages/core/src/analytics/index.d.ts +13 -0
  31. package/packages/core/src/analytics/index.d.ts.map +1 -0
  32. package/packages/core/src/analytics/index.js +13 -0
  33. package/packages/core/src/analytics/index.js.map +1 -0
  34. package/packages/core/src/analytics/types/AnalyticsTypes.d.ts +239 -0
  35. package/packages/core/src/analytics/types/AnalyticsTypes.d.ts.map +1 -0
  36. package/packages/core/src/analytics/types/AnalyticsTypes.js +8 -0
  37. package/packages/core/src/analytics/types/AnalyticsTypes.js.map +1 -0
  38. package/packages/core/src/analytics/utils/DeviceDetection.d.ts +27 -0
  39. package/packages/core/src/analytics/utils/DeviceDetection.d.ts.map +1 -0
  40. package/packages/core/src/analytics/utils/DeviceDetection.js +184 -0
  41. package/packages/core/src/analytics/utils/DeviceDetection.js.map +1 -0
  42. package/packages/core/src/chapter-manager.d.ts +39 -0
  43. package/packages/core/src/chapter-manager.d.ts.map +1 -0
  44. package/packages/core/src/chapter-manager.js +173 -0
  45. package/packages/core/src/chapter-manager.js.map +1 -0
  46. package/packages/core/src/index.d.ts +10 -0
  47. package/packages/core/src/index.d.ts.map +1 -0
  48. package/packages/core/src/index.js +8 -0
  49. package/packages/core/src/index.js.map +1 -0
  50. package/packages/core/src/interfaces/IVideoPlayer.d.ts +229 -0
  51. package/packages/core/src/interfaces/IVideoPlayer.d.ts.map +1 -0
  52. package/packages/core/src/interfaces/IVideoPlayer.js +2 -0
  53. package/packages/core/src/interfaces/IVideoPlayer.js.map +1 -0
  54. package/packages/core/src/interfaces.d.ts +455 -0
  55. package/packages/core/src/interfaces.d.ts.map +1 -0
  56. package/packages/core/src/interfaces.js +32 -0
  57. package/packages/core/src/interfaces.js.map +1 -0
  58. package/packages/core/src/utils/EventEmitter.d.ts +14 -0
  59. package/packages/core/src/utils/EventEmitter.d.ts.map +1 -0
  60. package/packages/core/src/utils/EventEmitter.js +55 -0
  61. package/packages/core/src/utils/EventEmitter.js.map +1 -0
  62. package/packages/web/dist/drm/DRMManager.d.ts +1 -1
  63. package/packages/web/dist/drm/DRMManager.d.ts.map +1 -1
  64. package/packages/web/dist/drm/DRMManager.js +7 -7
  65. package/packages/web/dist/drm/DRMManager.js.map +1 -1
  66. package/packages/web/dist/drm/providers/BunnyNetProvider.d.ts +1 -1
  67. package/packages/web/dist/drm/providers/BunnyNetProvider.d.ts.map +1 -1
  68. package/packages/web/dist/drm/providers/BunnyNetProvider.js +13 -13
  69. package/packages/web/dist/drm/providers/BunnyNetProvider.js.map +1 -1
  70. package/packages/web/dist/drm/providers/GenericProvider.d.ts +1 -1
  71. package/packages/web/dist/drm/providers/GenericProvider.d.ts.map +1 -1
  72. package/packages/web/dist/drm/providers/GenericProvider.js +8 -6
  73. package/packages/web/dist/drm/providers/GenericProvider.js.map +1 -1
  74. package/packages/web/dist/drm/systems/FairPlayDRM.d.ts.map +1 -1
  75. package/packages/web/dist/drm/systems/FairPlayDRM.js +2 -2
  76. package/packages/web/dist/drm/systems/FairPlayDRM.js.map +1 -1
  77. package/packages/web/dist/drm/systems/PlayReadyDRM.d.ts.map +1 -1
  78. package/packages/web/dist/drm/systems/PlayReadyDRM.js +7 -7
  79. package/packages/web/dist/drm/systems/PlayReadyDRM.js.map +1 -1
  80. package/packages/web/dist/drm/systems/WidevineDRM.d.ts.map +1 -1
  81. package/packages/web/dist/drm/systems/WidevineDRM.js +2 -2
  82. package/packages/web/dist/drm/systems/WidevineDRM.js.map +1 -1
  83. package/packages/web/dist/drm/types/BunnyNetTypes.d.ts +1 -1
  84. package/packages/web/dist/drm/types/BunnyNetTypes.d.ts.map +1 -1
  85. package/packages/web/dist/drm/types/DRMTypes.d.ts +1 -1
  86. package/packages/web/dist/drm/types/DRMTypes.d.ts.map +1 -1
  87. package/packages/web/dist/drm/types/DRMTypes.js +5 -5
  88. package/packages/web/dist/drm/types/DRMTypes.js.map +1 -1
  89. package/packages/web/dist/drm/utils/BrowserDetector.d.ts +1 -1
  90. package/packages/web/dist/drm/utils/BrowserDetector.d.ts.map +1 -1
  91. package/packages/web/dist/drm/utils/BrowserDetector.js +10 -10
  92. package/packages/web/dist/drm/utils/BrowserDetector.js.map +1 -1
  93. package/packages/web/src/drm/DRMManager.ts +214 -213
  94. package/packages/web/src/drm/index.ts +37 -37
  95. package/packages/web/src/drm/providers/BunnyNetProvider.ts +171 -170
  96. package/packages/web/src/drm/providers/GenericProvider.ts +151 -148
  97. package/packages/web/src/drm/systems/BaseDRM.ts +68 -68
  98. package/packages/web/src/drm/systems/FairPlayDRM.ts +306 -305
  99. package/packages/web/src/drm/systems/PlayReadyDRM.ts +132 -131
  100. package/packages/web/src/drm/systems/WidevineDRM.ts +106 -105
  101. package/packages/web/src/drm/types/BunnyNetTypes.ts +35 -35
  102. package/packages/web/src/drm/types/DRMTypes.ts +92 -91
  103. package/packages/web/src/drm/utils/BrowserDetector.ts +233 -232
  104. package/packages/web/src/drm/utils/CertificateManager.ts +86 -86
  105. package/packages/web/src/drm/utils/DRMErrorHandler.ts +84 -84
  106. package/packages/web/src/drm/utils/LicenseRequestHandler.ts +180 -180
@@ -0,0 +1,173 @@
1
+ export class ChapterManager {
2
+ constructor(config = {}) {
3
+ this.chapters = [];
4
+ this.segments = [];
5
+ this.currentChapter = null;
6
+ this.activeSegments = new Set();
7
+ this.lastProcessedTime = -1;
8
+ this.eventHandlers = new Map();
9
+ this.config = { ...config };
10
+ this.chapters = config.chapters || [];
11
+ this.segments = config.segments || [];
12
+ this.eventHandlers.set('chapterchange', []);
13
+ this.eventHandlers.set('segmententered', []);
14
+ this.eventHandlers.set('segmentexited', []);
15
+ this.eventHandlers.set('segmentskipped', []);
16
+ }
17
+ updateConfig(config) {
18
+ this.config = { ...this.config, ...config };
19
+ this.chapters = config.chapters || this.chapters;
20
+ this.segments = config.segments || this.segments;
21
+ }
22
+ async loadChapterData(url) {
23
+ try {
24
+ const response = await fetch(url);
25
+ if (!response.ok) {
26
+ throw new Error(`Failed to fetch chapter data: ${response.status}`);
27
+ }
28
+ const data = await response.json();
29
+ if (data.chapters) {
30
+ this.chapters = data.chapters;
31
+ }
32
+ if (data.segments) {
33
+ this.segments = data.segments;
34
+ }
35
+ }
36
+ catch (error) {
37
+ console.error('Error loading chapter data:', error);
38
+ throw error;
39
+ }
40
+ }
41
+ async initialize() {
42
+ if (this.config.dataUrl) {
43
+ await this.loadChapterData(this.config.dataUrl);
44
+ }
45
+ this.chapters.sort((a, b) => a.startTime - b.startTime);
46
+ this.segments.sort((a, b) => a.startTime - b.startTime);
47
+ }
48
+ processTimeUpdate(currentTime) {
49
+ if (Math.abs(currentTime - this.lastProcessedTime) < 0.1) {
50
+ return;
51
+ }
52
+ this.lastProcessedTime = currentTime;
53
+ this.processChapterChange(currentTime);
54
+ this.processSegments(currentTime);
55
+ }
56
+ processChapterChange(currentTime) {
57
+ const newChapter = this.getCurrentChapter(currentTime);
58
+ if (newChapter !== this.currentChapter) {
59
+ this.currentChapter = newChapter;
60
+ this.emit('chapterchange', newChapter);
61
+ if (this.config.onChapterChange) {
62
+ this.config.onChapterChange(newChapter);
63
+ }
64
+ }
65
+ }
66
+ processSegments(currentTime) {
67
+ const currentSegments = this.segments.filter(segment => currentTime >= segment.startTime && currentTime <= segment.endTime);
68
+ for (const segment of currentSegments) {
69
+ if (!this.activeSegments.has(segment.id)) {
70
+ this.activeSegments.add(segment.id);
71
+ this.emit('segmententered', segment);
72
+ if (this.config.onSegmentEntered) {
73
+ this.config.onSegmentEntered(segment);
74
+ }
75
+ if (this.config.autoSkip && segment.action === 'skip') {
76
+ this.skipSegment(segment);
77
+ }
78
+ }
79
+ }
80
+ const currentSegmentIds = new Set(currentSegments.map(s => s.id));
81
+ for (const activeSegmentId of this.activeSegments) {
82
+ if (!currentSegmentIds.has(activeSegmentId)) {
83
+ const segment = this.segments.find(s => s.id === activeSegmentId);
84
+ if (segment) {
85
+ this.activeSegments.delete(activeSegmentId);
86
+ this.emit('segmentexited', segment);
87
+ if (this.config.onSegmentExited) {
88
+ this.config.onSegmentExited(segment);
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
94
+ getCurrentChapter(currentTime) {
95
+ return this.chapters.find(chapter => currentTime >= chapter.startTime && currentTime <= chapter.endTime) || null;
96
+ }
97
+ getChapters() {
98
+ return [...this.chapters];
99
+ }
100
+ getSegments() {
101
+ return [...this.segments];
102
+ }
103
+ getSegmentsAtTime(currentTime) {
104
+ return this.segments.filter(segment => currentTime >= segment.startTime && currentTime <= segment.endTime);
105
+ }
106
+ skipSegment(segment) {
107
+ this.emit('segmentskipped', segment);
108
+ if (this.config.onSegmentSkipped) {
109
+ this.config.onSegmentSkipped(segment);
110
+ }
111
+ }
112
+ seekToChapter(chapterId) {
113
+ const chapter = this.chapters.find(c => c.id === chapterId);
114
+ if (chapter) {
115
+ return chapter;
116
+ }
117
+ return null;
118
+ }
119
+ getNextChapter(currentTime) {
120
+ return this.chapters.find(chapter => chapter.startTime > currentTime) || null;
121
+ }
122
+ getPreviousChapter(currentTime) {
123
+ const previousChapters = this.chapters
124
+ .filter(chapter => chapter.startTime < currentTime)
125
+ .sort((a, b) => b.startTime - a.startTime);
126
+ return previousChapters[0] || null;
127
+ }
128
+ on(event, handler) {
129
+ const handlers = this.eventHandlers.get(event) || [];
130
+ handlers.push(handler);
131
+ this.eventHandlers.set(event, handlers);
132
+ }
133
+ off(event, handler) {
134
+ const handlers = this.eventHandlers.get(event) || [];
135
+ if (handler) {
136
+ const index = handlers.indexOf(handler);
137
+ if (index > -1) {
138
+ handlers.splice(index, 1);
139
+ }
140
+ }
141
+ else {
142
+ handlers.length = 0;
143
+ }
144
+ this.eventHandlers.set(event, handlers);
145
+ }
146
+ emit(event, data) {
147
+ const handlers = this.eventHandlers.get(event) || [];
148
+ handlers.forEach(handler => {
149
+ try {
150
+ handler(data);
151
+ }
152
+ catch (error) {
153
+ console.error(`Error in chapter manager event handler for ${event}:`, error);
154
+ }
155
+ });
156
+ }
157
+ reset() {
158
+ this.currentChapter = null;
159
+ this.activeSegments.clear();
160
+ this.lastProcessedTime = -1;
161
+ }
162
+ destroy() {
163
+ this.reset();
164
+ this.eventHandlers.clear();
165
+ }
166
+ getCurrentChapterInfo() {
167
+ return this.currentChapter;
168
+ }
169
+ isEnabled() {
170
+ return this.config.enabled !== false;
171
+ }
172
+ }
173
+ //# sourceMappingURL=chapter-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chapter-manager.js","sourceRoot":"","sources":["chapter-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export * from './interfaces';
2
+ export { BasePlayer } from './BasePlayer';
3
+ export { VideoPlayerFactory } from './VideoPlayerFactory';
4
+ export type { Platform } from './VideoPlayerFactory';
5
+ export { EventEmitter } from './utils/EventEmitter';
6
+ export { ChapterManager } from './chapter-manager';
7
+ export type { ChapterManagerEvents } from './chapter-manager';
8
+ export * as Analytics from './analytics';
9
+ export declare const VERSION = "1.0.0";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,eAAO,MAAM,OAAO,UAAU,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from './interfaces';
2
+ export { BasePlayer } from './BasePlayer';
3
+ export { VideoPlayerFactory } from './VideoPlayerFactory';
4
+ export { EventEmitter } from './utils/EventEmitter';
5
+ export { ChapterManager } from './chapter-manager';
6
+ export * as Analytics from './analytics';
7
+ export const VERSION = '1.0.0';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAG7B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAI1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAGzC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1,229 @@
1
+ export interface FallbackSource {
2
+ url: string;
3
+ type?: 'mp4' | 'hls' | 'dash' | 'webm' | 'auto';
4
+ priority?: number;
5
+ }
6
+ export interface VideoSource {
7
+ url: string;
8
+ type?: 'mp4' | 'hls' | 'dash' | 'webm' | 'auto';
9
+ drm?: DRMConfig;
10
+ subtitles?: SubtitleTrack[];
11
+ metadata?: VideoMetadata;
12
+ fallbackSources?: FallbackSource[];
13
+ fallbackPoster?: string;
14
+ fallbackShowErrorMessage?: boolean;
15
+ fallbackRetryDelay?: number;
16
+ fallbackRetryAttempts?: number;
17
+ onAllSourcesFailed?: (errors: Array<{
18
+ url: string;
19
+ error: any;
20
+ }>) => void;
21
+ }
22
+ export interface DRMConfig {
23
+ licenseUrl: string;
24
+ certificateUrl?: string;
25
+ headers?: Record<string, string>;
26
+ type: 'widevine' | 'playready' | 'fairplay' | 'clearkey';
27
+ }
28
+ export interface SubtitleTrack {
29
+ url: string;
30
+ language: string;
31
+ label: string;
32
+ kind: 'subtitles' | 'captions' | 'descriptions';
33
+ default?: boolean;
34
+ }
35
+ export interface VideoMetadata {
36
+ id?: string;
37
+ videoId?: string;
38
+ title?: string;
39
+ description?: string;
40
+ duration?: number;
41
+ thumbnailUrl?: string;
42
+ posterUrl?: string;
43
+ }
44
+ export interface Quality {
45
+ height: number;
46
+ width: number;
47
+ bitrate: number;
48
+ label: string;
49
+ index: number;
50
+ }
51
+ export interface PlayerState {
52
+ isPlaying: boolean;
53
+ isPaused: boolean;
54
+ isBuffering: boolean;
55
+ isEnded: boolean;
56
+ isError: boolean;
57
+ currentTime: number;
58
+ duration: number;
59
+ bufferedPercentage: number;
60
+ volume: number;
61
+ isMuted: boolean;
62
+ playbackRate: number;
63
+ currentQuality?: Quality;
64
+ availableQualities: Quality[];
65
+ }
66
+ export interface PlayerEvents {
67
+ onReady?: () => void;
68
+ onPlay?: () => void;
69
+ onPause?: () => void;
70
+ onEnded?: () => void;
71
+ onTimeUpdate?: (time: number) => void;
72
+ onBuffering?: (isBuffering: boolean) => void;
73
+ onError?: (error: PlayerError) => void;
74
+ onQualityChanged?: (quality: Quality) => void;
75
+ onVolumeChanged?: (volume: number) => void;
76
+ onFullscreenChanged?: (isFullscreen: boolean) => void;
77
+ onProgress?: (buffered: number) => void;
78
+ onSeeking?: () => void;
79
+ onSeeked?: () => void;
80
+ onLoadedMetadata?: (metadata: VideoMetadata) => void;
81
+ onFreePreviewEnded?: () => void;
82
+ epgToggle?: (data?: any) => void;
83
+ epgDataSet?: (data?: any) => void;
84
+ frameworkBrandingClick?: (data: {
85
+ timestamp: number;
86
+ url: string;
87
+ userAgent: string;
88
+ }) => void;
89
+ chapterchange?: (chapter: any) => void;
90
+ segmententered?: (segment: any) => void;
91
+ segmentexited?: (segment: any) => void;
92
+ segmentskipped?: (segment: any) => void;
93
+ chapterSegmentEntered?: (data: any) => void;
94
+ chapterSegmentSkipped?: (data: any) => void;
95
+ chapterSkipButtonShown?: (data: any) => void;
96
+ chapterSkipButtonHidden?: (data: any) => void;
97
+ chaptersLoaded?: (data: any) => void;
98
+ chaptersLoadError?: (data: any) => void;
99
+ navigationBackClicked?: () => void;
100
+ navigationCloseClicked?: () => void;
101
+ }
102
+ export interface PlayerError {
103
+ code: string;
104
+ message: string;
105
+ type: 'network' | 'media' | 'drm' | 'unknown';
106
+ fatal: boolean;
107
+ details?: any;
108
+ }
109
+ export interface PaywallConfig {
110
+ enabled: boolean;
111
+ apiBase: string;
112
+ userId: string;
113
+ videoId: string;
114
+ gateways: Array<'stripe' | 'cashfree'>;
115
+ branding?: {
116
+ title?: string;
117
+ description?: string;
118
+ logoUrl?: string;
119
+ theme?: any;
120
+ };
121
+ popup?: {
122
+ width?: number;
123
+ height?: number;
124
+ };
125
+ emailAuth?: {
126
+ enabled: boolean;
127
+ skipIfAuthenticated?: boolean;
128
+ sessionStorage?: {
129
+ tokenKey?: string;
130
+ refreshTokenKey?: string;
131
+ userIdKey?: string;
132
+ };
133
+ api?: {
134
+ requestOtp: string;
135
+ verifyOtp: string;
136
+ refreshToken?: string;
137
+ logout?: string;
138
+ };
139
+ ui?: {
140
+ title?: string;
141
+ description?: string;
142
+ emailPlaceholder?: string;
143
+ otpPlaceholder?: string;
144
+ submitButtonText?: string;
145
+ resendButtonText?: string;
146
+ resendCooldown?: number;
147
+ };
148
+ validation?: {
149
+ otpLength?: number;
150
+ otpTimeout?: number;
151
+ rateLimiting?: {
152
+ maxAttempts?: number;
153
+ windowMinutes?: number;
154
+ };
155
+ };
156
+ };
157
+ }
158
+ export interface ShareConfig {
159
+ enabled?: boolean;
160
+ url?: string;
161
+ title?: string;
162
+ text?: string;
163
+ generateUrl?: (videoData: {
164
+ videoId?: string;
165
+ metadata?: any;
166
+ }) => string;
167
+ }
168
+ export interface PlayerConfig {
169
+ autoPlay?: boolean;
170
+ muted?: boolean;
171
+ volume?: number;
172
+ controls?: boolean;
173
+ loop?: boolean;
174
+ preload?: 'none' | 'metadata' | 'auto';
175
+ crossOrigin?: 'anonymous' | 'use-credentials';
176
+ playsInline?: boolean;
177
+ defaultQuality?: number;
178
+ enableAdaptiveBitrate?: boolean;
179
+ debug?: boolean;
180
+ startTime?: number;
181
+ freeDuration?: number;
182
+ isLive?: boolean;
183
+ paywall?: PaywallConfig;
184
+ share?: ShareConfig;
185
+ }
186
+ export interface IVideoPlayer {
187
+ initialize(container: HTMLElement | string, config?: PlayerConfig): Promise<void>;
188
+ destroy(): Promise<void>;
189
+ load(source: VideoSource): Promise<void>;
190
+ play(): Promise<void>;
191
+ pause(): void;
192
+ stop(): void;
193
+ seek(time: number): void;
194
+ setVolume(level: number): void;
195
+ mute(): void;
196
+ unmute(): void;
197
+ toggleMute(): void;
198
+ getQualities(): Quality[];
199
+ getCurrentQuality(): Quality | null;
200
+ setQuality(index: number): void;
201
+ setAutoQuality(enabled: boolean): void;
202
+ setPlaybackRate(rate: number): void;
203
+ getPlaybackRate(): number;
204
+ getCurrentTime(): number;
205
+ getDuration(): number;
206
+ getBufferedPercentage(): number;
207
+ getState(): PlayerState;
208
+ isPlaying(): boolean;
209
+ isPaused(): boolean;
210
+ isEnded(): boolean;
211
+ enterFullscreen(): Promise<void>;
212
+ exitFullscreen(): Promise<void>;
213
+ toggleFullscreen(): Promise<void>;
214
+ enterPictureInPicture(): Promise<void>;
215
+ exitPictureInPicture(): Promise<void>;
216
+ on(event: string, handler: Function): void;
217
+ off(event: string, handler?: Function): void;
218
+ once(event: string, handler: Function): void;
219
+ getSubtitles(): SubtitleTrack[];
220
+ setSubtitleTrack(index: number): void;
221
+ disableSubtitles(): void;
222
+ setAudioTrack?(index: number): void;
223
+ getAudioTracks?(): any[];
224
+ getThumbnail?(time: number): string;
225
+ getStats?(): any;
226
+ setFreeDuration?(seconds: number): void;
227
+ resetFreePreviewGate?(): void;
228
+ }
229
+ //# sourceMappingURL=IVideoPlayer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IVideoPlayer.d.ts","sourceRoot":"","sources":["IVideoPlayer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IVideoPlayer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IVideoPlayer.js","sourceRoot":"","sources":["IVideoPlayer.ts"],"names":[],"mappings":""}