@guardvideo/player-sdk 1.3.0 → 2.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.
- package/dist/index.esm.js +654 -162
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +654 -162
- package/dist/index.js.map +1 -1
- package/dist/ui/PlayerUI.d.ts +1 -0
- package/dist/ui/PlayerUI.d.ts.map +1 -1
- package/dist/vanilla/guardvideo-player.js +653 -161
- package/dist/vanilla/guardvideo-player.js.map +1 -1
- package/dist/vanilla/guardvideo-player.min.js +1 -1
- package/dist/vanilla/guardvideo-player.min.js.map +1 -1
- package/dist/vanilla/index.d.ts +25 -6
- package/dist/vanilla/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/vanilla/core/player.d.ts +0 -54
- package/dist/vanilla/core/player.d.ts.map +0 -1
- package/dist/vanilla/core/types.d.ts +0 -100
- package/dist/vanilla/core/types.d.ts.map +0 -1
- package/dist/vanilla/react/GuardVideoPlayer.d.ts +0 -24
- package/dist/vanilla/react/GuardVideoPlayer.d.ts.map +0 -1
- package/dist/vanilla/react/hooks.d.ts +0 -28
- package/dist/vanilla/react/hooks.d.ts.map +0 -1
- package/dist/vanilla/ui/PlayerUI.d.ts +0 -94
- package/dist/vanilla/ui/PlayerUI.d.ts.map +0 -1
- package/dist/vanilla/vanilla/index.d.ts +0 -26
- package/dist/vanilla/vanilla/index.d.ts.map +0 -1
package/dist/vanilla/index.d.ts
CHANGED
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export type {
|
|
6
|
-
export type {
|
|
1
|
+
import { PlayerUI, PlayerUIConfig } from '../ui/PlayerUI';
|
|
2
|
+
import { PlayerState } from '../core/types';
|
|
3
|
+
export { PlayerState };
|
|
4
|
+
export { PlayerUI };
|
|
5
|
+
export type { PlayerError, BrandingConfig, ContextMenuItem, SecurityConfig, } from '../core/types';
|
|
6
|
+
export type { PlayerUIConfig as VanillaPlayerConfig };
|
|
7
|
+
export declare class GuardVideoPlayer {
|
|
8
|
+
private ui;
|
|
9
|
+
private constructor();
|
|
10
|
+
static create(containerId: string, videoId: string, config: PlayerUIConfig): GuardVideoPlayer;
|
|
11
|
+
static createInElement(container: HTMLElement, videoId: string, config: PlayerUIConfig): GuardVideoPlayer;
|
|
12
|
+
play(): Promise<void>;
|
|
13
|
+
pause(): void;
|
|
14
|
+
seek(time: number): void;
|
|
15
|
+
getCurrentTime(): number;
|
|
16
|
+
getDuration(): number;
|
|
17
|
+
getVolume(): number;
|
|
18
|
+
setVolume(volume: number): void;
|
|
19
|
+
getQualityLevels(): import("../core/types").QualityLevel[];
|
|
20
|
+
getCurrentQuality(): import("../core/types").QualityLevel | null;
|
|
21
|
+
setQuality(idx: number): void;
|
|
22
|
+
getState(): PlayerState;
|
|
23
|
+
getVideoElement(): HTMLVideoElement;
|
|
24
|
+
destroy(): void;
|
|
25
|
+
}
|
|
7
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vanilla/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,cAAc,IAAI,mBAAmB,EAAE,CAAC;AAEtD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,EAAE,CAAW;IAErB,OAAO;IAaP,MAAM,CAAC,MAAM,CACX,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,GACrB,gBAAgB;IASnB,MAAM,CAAC,eAAe,CACpB,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,GACrB,gBAAgB;IAInB,IAAI;IACJ,KAAK;IACL,IAAI,CAAC,IAAI,EAAE,MAAM;IACjB,cAAc;IACd,WAAW;IACX,SAAS;IACT,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,gBAAgB;IAChB,iBAAiB;IACjB,UAAU,CAAC,GAAG,EAAE,MAAM;IACtB,QAAQ;IACR,eAAe;IACf,OAAO;CACR"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@guardvideo/player-sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "GuardVideo Player SDK - Secure HLS video player with embed token authentication for React, Next.js, and vanilla JavaScript",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { PlayerConfig, PlayerState, PlayerInstance, QualityLevel } from './types';
|
|
2
|
-
export declare class GuardVideoPlayer implements PlayerInstance {
|
|
3
|
-
private videoId;
|
|
4
|
-
private videoElement;
|
|
5
|
-
private container;
|
|
6
|
-
private hls;
|
|
7
|
-
private config;
|
|
8
|
-
private state;
|
|
9
|
-
private embedToken;
|
|
10
|
-
private currentQuality;
|
|
11
|
-
private ctxMenu;
|
|
12
|
-
private ctxStyleTag;
|
|
13
|
-
private watermarkEl;
|
|
14
|
-
private watermarkObserver;
|
|
15
|
-
private _onCtx;
|
|
16
|
-
private _onDocClick;
|
|
17
|
-
private _onKeyDown;
|
|
18
|
-
private _onRateChange;
|
|
19
|
-
private _onSelectStart;
|
|
20
|
-
private _onDragStart;
|
|
21
|
-
constructor(videoElement: HTMLVideoElement, videoId: string, config: PlayerConfig);
|
|
22
|
-
private log;
|
|
23
|
-
private error;
|
|
24
|
-
private setState;
|
|
25
|
-
private checkAllowedDomain;
|
|
26
|
-
private applySecurity;
|
|
27
|
-
private handleContextMenu;
|
|
28
|
-
private showContextMenu;
|
|
29
|
-
private hideContextMenu;
|
|
30
|
-
private injectProtectiveStyles;
|
|
31
|
-
private createWatermark;
|
|
32
|
-
private handleKeyDown;
|
|
33
|
-
private enforceMaxRate;
|
|
34
|
-
private initialize;
|
|
35
|
-
private fetchAndApplyWatermark;
|
|
36
|
-
private fetchEmbedToken;
|
|
37
|
-
private initializePlayer;
|
|
38
|
-
private initializeHls;
|
|
39
|
-
private setupVideoEventListeners;
|
|
40
|
-
private handleError;
|
|
41
|
-
play(): Promise<void>;
|
|
42
|
-
pause(): void;
|
|
43
|
-
getCurrentTime(): number;
|
|
44
|
-
seek(time: number): void;
|
|
45
|
-
getDuration(): number;
|
|
46
|
-
getVolume(): number;
|
|
47
|
-
setVolume(volume: number): void;
|
|
48
|
-
getQualityLevels(): QualityLevel[];
|
|
49
|
-
getCurrentQuality(): QualityLevel | null;
|
|
50
|
-
setQuality(levelIndex: number): void;
|
|
51
|
-
getState(): PlayerState;
|
|
52
|
-
destroy(): void;
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=player.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"player.d.ts","sourceRoot":"","sources":["../../src/core/player.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,YAAY,EAEZ,WAAW,EACX,cAAc,EACd,YAAY,EAKb,MAAM,SAAS,CAAC;AA4BjB,qBAAa,gBAAiB,YAAW,cAAc;IA4BnD,OAAO,CAAC,OAAO;IA3BjB,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,GAAG,CAAoB;IAC/B,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,cAAc,CAA6B;IAGnD,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAAiC;IAGpD,OAAO,CAAC,WAAW,CAA+B;IAElD,OAAO,CAAC,iBAAiB,CAAiC;IAG1D,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,YAAY,CAAoC;gBAGtD,YAAY,EAAE,gBAAgB,EACtB,OAAO,EAAE,MAAM,EACvB,MAAM,EAAE,YAAY;IAwCtB,OAAO,CAAC,GAAG;IAMX,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,aAAa;IA0DrB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,eAAe;IAqHvB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,sBAAsB;IA4G9B,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,cAAc;YAWR,UAAU;YAwBV,sBAAsB;YA8BtB,eAAe;YA2Bf,gBAAgB;IAgC9B,OAAO,CAAC,aAAa;IAsErB,OAAO,CAAC,wBAAwB;IAiChC,OAAO,CAAC,WAAW;IASN,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAS3B,KAAK,IAAI,IAAI;IAIb,cAAc,IAAI,MAAM;IAIxB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxB,WAAW,IAAI,MAAM;IAIrB,SAAS,IAAI,MAAM;IAInB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/B,gBAAgB,IAAI,YAAY,EAAE;IAYlC,iBAAiB,IAAI,YAAY,GAAG,IAAI;IAIxC,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAOpC,QAAQ,IAAI,WAAW;IAIvB,OAAO,IAAI,IAAI;CA2BvB"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
export interface EmbedTokenResponse {
|
|
2
|
-
tokenId: string;
|
|
3
|
-
videoId: string;
|
|
4
|
-
allowedDomain: string;
|
|
5
|
-
expiresAt: string;
|
|
6
|
-
maxViews: number | null;
|
|
7
|
-
playerUrl: string;
|
|
8
|
-
embedCode?: string;
|
|
9
|
-
watermarkText?: string | null;
|
|
10
|
-
forensicWatermark?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export interface ContextMenuItem {
|
|
13
|
-
label: string;
|
|
14
|
-
href?: string;
|
|
15
|
-
onClick?: () => void;
|
|
16
|
-
icon?: string;
|
|
17
|
-
separator?: boolean;
|
|
18
|
-
}
|
|
19
|
-
export interface BrandingConfig {
|
|
20
|
-
name?: string;
|
|
21
|
-
url?: string;
|
|
22
|
-
logoUrl?: string;
|
|
23
|
-
accentColor?: string;
|
|
24
|
-
}
|
|
25
|
-
export interface SecurityConfig {
|
|
26
|
-
disableRightClick?: boolean;
|
|
27
|
-
disableSelection?: boolean;
|
|
28
|
-
disableDrag?: boolean;
|
|
29
|
-
enableWatermark?: boolean;
|
|
30
|
-
watermarkText?: string;
|
|
31
|
-
disablePiP?: boolean;
|
|
32
|
-
disableScreenCapture?: boolean;
|
|
33
|
-
blockDevTools?: boolean;
|
|
34
|
-
maxPlaybackRate?: number;
|
|
35
|
-
allowedDomains?: string[];
|
|
36
|
-
}
|
|
37
|
-
export interface PlayerConfig {
|
|
38
|
-
embedTokenEndpoint: string;
|
|
39
|
-
apiBaseUrl?: string;
|
|
40
|
-
debug?: boolean;
|
|
41
|
-
autoplay?: boolean;
|
|
42
|
-
controls?: boolean;
|
|
43
|
-
className?: string;
|
|
44
|
-
style?: React.CSSProperties | Record<string, string>;
|
|
45
|
-
hlsConfig?: Partial<HlsConfig>;
|
|
46
|
-
branding?: BrandingConfig;
|
|
47
|
-
contextMenuItems?: ContextMenuItem[];
|
|
48
|
-
security?: SecurityConfig;
|
|
49
|
-
viewerName?: string;
|
|
50
|
-
viewerEmail?: string;
|
|
51
|
-
forensicWatermark?: boolean;
|
|
52
|
-
onReady?: () => void;
|
|
53
|
-
onError?: (error: PlayerError) => void;
|
|
54
|
-
onQualityChange?: (quality: string) => void;
|
|
55
|
-
onStateChange?: (state: PlayerState) => void;
|
|
56
|
-
}
|
|
57
|
-
export interface HlsConfig {
|
|
58
|
-
debug?: boolean;
|
|
59
|
-
enableWorker?: boolean;
|
|
60
|
-
lowLatencyMode?: boolean;
|
|
61
|
-
maxBufferLength?: number;
|
|
62
|
-
maxMaxBufferLength?: number;
|
|
63
|
-
}
|
|
64
|
-
export interface PlayerError {
|
|
65
|
-
code: string;
|
|
66
|
-
message: string;
|
|
67
|
-
fatal: boolean;
|
|
68
|
-
details?: any;
|
|
69
|
-
}
|
|
70
|
-
export declare enum PlayerState {
|
|
71
|
-
IDLE = "idle",
|
|
72
|
-
LOADING = "loading",
|
|
73
|
-
READY = "ready",
|
|
74
|
-
PLAYING = "playing",
|
|
75
|
-
PAUSED = "paused",
|
|
76
|
-
BUFFERING = "buffering",
|
|
77
|
-
ERROR = "error"
|
|
78
|
-
}
|
|
79
|
-
export interface QualityLevel {
|
|
80
|
-
index: number;
|
|
81
|
-
height: number;
|
|
82
|
-
width: number;
|
|
83
|
-
bitrate: number;
|
|
84
|
-
name: string;
|
|
85
|
-
}
|
|
86
|
-
export interface PlayerInstance {
|
|
87
|
-
play(): Promise<void>;
|
|
88
|
-
pause(): void;
|
|
89
|
-
getCurrentTime(): number;
|
|
90
|
-
seek(time: number): void;
|
|
91
|
-
getDuration(): number;
|
|
92
|
-
getVolume(): number;
|
|
93
|
-
setVolume(volume: number): void;
|
|
94
|
-
getQualityLevels(): QualityLevel[];
|
|
95
|
-
getCurrentQuality(): QualityLevel | null;
|
|
96
|
-
setQuality(levelIndex: number): void;
|
|
97
|
-
getState(): PlayerState;
|
|
98
|
-
destroy(): void;
|
|
99
|
-
}
|
|
100
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { PlayerUIConfig } from '../ui/PlayerUI';
|
|
3
|
-
import { PlayerState, PlayerError, BrandingConfig, ContextMenuItem, SecurityConfig } from '../core/types';
|
|
4
|
-
import type { PlayerInstance } from '../core/types';
|
|
5
|
-
export interface GuardVideoPlayerProps extends Omit<PlayerUIConfig, 'onReady' | 'onError' | 'onQualityChange' | 'onStateChange' | 'onTimeUpdate' | 'onEnded' | 'width' | 'height'> {
|
|
6
|
-
videoId: string;
|
|
7
|
-
width?: string | number;
|
|
8
|
-
height?: string | number;
|
|
9
|
-
className?: string;
|
|
10
|
-
style?: React.CSSProperties;
|
|
11
|
-
onReady?: () => void;
|
|
12
|
-
onError?: (error: PlayerError) => void;
|
|
13
|
-
onQualityChange?: (quality: string) => void;
|
|
14
|
-
onStateChange?: (state: PlayerState) => void;
|
|
15
|
-
onTimeUpdate?: (currentTime: number) => void;
|
|
16
|
-
onEnded?: () => void;
|
|
17
|
-
}
|
|
18
|
-
export interface GuardVideoPlayerRef extends PlayerInstance {
|
|
19
|
-
getVideoElement: () => HTMLVideoElement | null;
|
|
20
|
-
}
|
|
21
|
-
export declare const GuardVideoPlayerComponent: React.ForwardRefExoticComponent<GuardVideoPlayerProps & React.RefAttributes<GuardVideoPlayerRef>>;
|
|
22
|
-
export { PlayerState };
|
|
23
|
-
export type { PlayerError, BrandingConfig, ContextMenuItem, SecurityConfig };
|
|
24
|
-
//# sourceMappingURL=GuardVideoPlayer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GuardVideoPlayer.d.ts","sourceRoot":"","sources":["../../src/react/GuardVideoPlayer.tsx"],"names":[],"mappings":"AAeA,OAAO,KAKN,MAAM,OAAO,CAAC;AACf,OAAO,EAAY,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EACL,WAAW,EACX,WAAW,EACX,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,qBACf,SAAQ,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3I,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7C,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,eAAe,EAAE,MAAM,gBAAgB,GAAG,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,yBAAyB,mGAoErC,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { GuardVideoPlayer } from '../core/player';
|
|
2
|
-
import { PlayerConfig, PlayerState, PlayerError, QualityLevel, BrandingConfig, ContextMenuItem, SecurityConfig } from '../core/types';
|
|
3
|
-
export interface UseGuardVideoPlayerOptions extends PlayerConfig {
|
|
4
|
-
videoId: string;
|
|
5
|
-
branding?: BrandingConfig;
|
|
6
|
-
contextMenuItems?: ContextMenuItem[];
|
|
7
|
-
security?: SecurityConfig;
|
|
8
|
-
}
|
|
9
|
-
export interface UseGuardVideoPlayerReturn {
|
|
10
|
-
videoRef: React.RefObject<HTMLVideoElement | null>;
|
|
11
|
-
player: GuardVideoPlayer | null;
|
|
12
|
-
state: PlayerState;
|
|
13
|
-
error: PlayerError | null;
|
|
14
|
-
currentTime: number;
|
|
15
|
-
duration: number;
|
|
16
|
-
volume: number;
|
|
17
|
-
currentQuality: QualityLevel | null;
|
|
18
|
-
qualityLevels: QualityLevel[];
|
|
19
|
-
isReady: boolean;
|
|
20
|
-
isPlaying: boolean;
|
|
21
|
-
play: () => Promise<void>;
|
|
22
|
-
pause: () => void;
|
|
23
|
-
seek: (time: number) => void;
|
|
24
|
-
setVolume: (volume: number) => void;
|
|
25
|
-
setQuality: (levelIndex: number) => void;
|
|
26
|
-
}
|
|
27
|
-
export declare function useGuardVideoPlayer(options: UseGuardVideoPlayerOptions): UseGuardVideoPlayerReturn;
|
|
28
|
-
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/react/hooks.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACnD,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,YAAY,GAAG,IAAI,CAAC;IACpC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,0BAA0B,GAClC,yBAAyB,CA0G3B"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { PlayerConfig, PlayerState, QualityLevel, BrandingConfig, ContextMenuItem, SecurityConfig } from '../core/types';
|
|
2
|
-
export interface PlayerUIConfig extends PlayerConfig {
|
|
3
|
-
branding?: BrandingConfig;
|
|
4
|
-
security?: SecurityConfig;
|
|
5
|
-
contextMenuItems?: ContextMenuItem[];
|
|
6
|
-
viewerName?: string;
|
|
7
|
-
viewerEmail?: string;
|
|
8
|
-
forensicWatermark?: boolean;
|
|
9
|
-
width?: string;
|
|
10
|
-
height?: string;
|
|
11
|
-
onTimeUpdate?: (currentTime: number) => void;
|
|
12
|
-
onEnded?: () => void;
|
|
13
|
-
}
|
|
14
|
-
export declare class PlayerUI {
|
|
15
|
-
readonly root: HTMLDivElement;
|
|
16
|
-
readonly videoEl: HTMLVideoElement;
|
|
17
|
-
private corePlayer;
|
|
18
|
-
private spinner;
|
|
19
|
-
private centerPlay;
|
|
20
|
-
private centerPlayBtn;
|
|
21
|
-
private clickArea;
|
|
22
|
-
private controls;
|
|
23
|
-
private seekWrap;
|
|
24
|
-
private seekBuffered;
|
|
25
|
-
private seekProgress;
|
|
26
|
-
private seekThumb;
|
|
27
|
-
private seekTooltip;
|
|
28
|
-
private playBtn;
|
|
29
|
-
private volBtn;
|
|
30
|
-
private volSlider;
|
|
31
|
-
private timeEl;
|
|
32
|
-
private speedLabel;
|
|
33
|
-
private speedMenu;
|
|
34
|
-
private settingsBtn;
|
|
35
|
-
private qualityMenu;
|
|
36
|
-
private fsBtn;
|
|
37
|
-
private errorOverlay;
|
|
38
|
-
private badge;
|
|
39
|
-
private watermarkDiv;
|
|
40
|
-
private playerState;
|
|
41
|
-
private duration;
|
|
42
|
-
private bufferedEnd;
|
|
43
|
-
private qualityLevels;
|
|
44
|
-
private currentQualityIdx;
|
|
45
|
-
private playbackRate;
|
|
46
|
-
private openMenu;
|
|
47
|
-
private hideTimer;
|
|
48
|
-
private seekDragging;
|
|
49
|
-
private _onFsChangeBound;
|
|
50
|
-
private _seekMouseMoveBound;
|
|
51
|
-
private _seekMouseUpBound;
|
|
52
|
-
private _seekTouchMoveBound;
|
|
53
|
-
private _seekTouchEndBound;
|
|
54
|
-
constructor(container: HTMLElement, videoId: string, config: PlayerUIConfig);
|
|
55
|
-
private _wireEvents;
|
|
56
|
-
private _onStateChange;
|
|
57
|
-
private _togglePlay;
|
|
58
|
-
private _renderPlayBtn;
|
|
59
|
-
private _toggleMute;
|
|
60
|
-
private _onVolumeChange;
|
|
61
|
-
private _startSeekDrag;
|
|
62
|
-
private _endSeekDrag;
|
|
63
|
-
private _seekTo;
|
|
64
|
-
private _onSeekHover;
|
|
65
|
-
private _onTimeUpdate;
|
|
66
|
-
private _updateSeekBar;
|
|
67
|
-
private _buildQualityMenu;
|
|
68
|
-
private _refreshQualityMenu;
|
|
69
|
-
private _refreshSpeedMenu;
|
|
70
|
-
private _toggleMenu;
|
|
71
|
-
private _closeMenus;
|
|
72
|
-
private _showControls;
|
|
73
|
-
private _resetHideTimer;
|
|
74
|
-
private _toggleFullscreen;
|
|
75
|
-
private _onFsChange;
|
|
76
|
-
private _showError;
|
|
77
|
-
private _renderWatermark;
|
|
78
|
-
private _addRipple;
|
|
79
|
-
private _onKeyDown;
|
|
80
|
-
play(): Promise<void>;
|
|
81
|
-
pause(): void;
|
|
82
|
-
seek(t: number): void;
|
|
83
|
-
getCurrentTime(): number;
|
|
84
|
-
getDuration(): number;
|
|
85
|
-
getVolume(): number;
|
|
86
|
-
setVolume(v: number): void;
|
|
87
|
-
getQualityLevels(): QualityLevel[];
|
|
88
|
-
getCurrentQuality(): QualityLevel | null;
|
|
89
|
-
setQuality(i: number): void;
|
|
90
|
-
getState(): PlayerState;
|
|
91
|
-
getVideoElement(): HTMLVideoElement;
|
|
92
|
-
destroy(): void;
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=PlayerUI.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlayerUI.d.ts","sourceRoot":"","sources":["../../src/ui/PlayerUI.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { PlayerUI, PlayerUIConfig } from '../ui/PlayerUI';
|
|
2
|
-
import { PlayerState } from '../core/types';
|
|
3
|
-
export { PlayerState };
|
|
4
|
-
export { PlayerUI };
|
|
5
|
-
export type { PlayerError, BrandingConfig, ContextMenuItem, SecurityConfig, } from '../core/types';
|
|
6
|
-
export type { PlayerUIConfig as VanillaPlayerConfig };
|
|
7
|
-
export declare class GuardVideoPlayer {
|
|
8
|
-
private ui;
|
|
9
|
-
private constructor();
|
|
10
|
-
static create(containerId: string, videoId: string, config: PlayerUIConfig): GuardVideoPlayer;
|
|
11
|
-
static createInElement(container: HTMLElement, videoId: string, config: PlayerUIConfig): GuardVideoPlayer;
|
|
12
|
-
play(): Promise<void>;
|
|
13
|
-
pause(): void;
|
|
14
|
-
seek(time: number): void;
|
|
15
|
-
getCurrentTime(): number;
|
|
16
|
-
getDuration(): number;
|
|
17
|
-
getVolume(): number;
|
|
18
|
-
setVolume(volume: number): void;
|
|
19
|
-
getQualityLevels(): import("../core/types").QualityLevel[];
|
|
20
|
-
getCurrentQuality(): import("../core/types").QualityLevel | null;
|
|
21
|
-
setQuality(idx: number): void;
|
|
22
|
-
getState(): PlayerState;
|
|
23
|
-
getVideoElement(): HTMLVideoElement;
|
|
24
|
-
destroy(): void;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vanilla/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,cAAc,IAAI,mBAAmB,EAAE,CAAC;AAEtD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,EAAE,CAAW;IAErB,OAAO;IAaP,MAAM,CAAC,MAAM,CACX,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,GACrB,gBAAgB;IASnB,MAAM,CAAC,eAAe,CACpB,SAAS,EAAE,WAAW,EACtB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,GACrB,gBAAgB;IAInB,IAAI;IACJ,KAAK;IACL,IAAI,CAAC,IAAI,EAAE,MAAM;IACjB,cAAc;IACd,WAAW;IACX,SAAS;IACT,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,gBAAgB;IAChB,iBAAiB;IACjB,UAAU,CAAC,GAAG,EAAE,MAAM;IACtB,QAAQ;IACR,eAAe;IACf,OAAO;CACR"}
|