@weing-dev/ui-kit-primitive 0.2.0 → 0.3.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 (44) hide show
  1. package/dist/components/Icon/Icon.constant.d.ts +1 -1
  2. package/dist/components/Icon/Icon.d.ts +1 -1
  3. package/dist/components/Icons/PictureQuality.d.ts +3 -0
  4. package/dist/components/Icons/Pip.d.ts +3 -0
  5. package/dist/components/Icons/PipExit.d.ts +3 -0
  6. package/dist/components/Icons/PlaybackSpeed.d.ts +3 -0
  7. package/dist/components/Icons/SubtitleFilled.d.ts +3 -0
  8. package/dist/components/Icons/SubtitleOutlined.d.ts +3 -0
  9. package/dist/components/Icons/index.d.ts +6 -0
  10. package/dist/components/VideoPlayer/VideoPlayer.d.ts +99 -92
  11. package/dist/components/VideoPlayer/VideoPlayer.utils.d.ts +45 -0
  12. package/dist/components/VideoPlayer/components/Error/Error.d.ts +0 -3
  13. package/dist/components/VideoPlayer/components/Frame/Frame.d.ts +0 -28
  14. package/dist/components/VideoPlayer/components/Loading/Loading.d.ts +0 -1
  15. package/dist/components/VideoPlayer/components/Player/Player.d.ts +6 -0
  16. package/dist/components/VideoPlayer/components/Player/index.d.ts +2 -0
  17. package/dist/components/VideoPlayer/components/Thumbnail/Thumbnail.d.ts +8 -0
  18. package/dist/components/VideoPlayer/components/Thumbnail/index.d.ts +2 -0
  19. package/dist/components/VideoPlayer/components/VideoOverlay/VideoOverlay.d.ts +1 -3
  20. package/dist/components/VideoPlayer/components/Widgets/Button/Button.d.ts +4 -2
  21. package/dist/components/VideoPlayer/components/Widgets/SpeedControl/SpeedControl.d.ts +0 -1
  22. package/dist/components/VideoPlayer/components/Widgets/VolumeControl/VolumeControl.d.ts +5 -5
  23. package/dist/components/VideoPlayer/components/Widgets/index.d.ts +0 -1
  24. package/dist/components/VideoPlayer/components/index.d.ts +4 -0
  25. package/dist/components/VideoPlayer/context/index.d.ts +3 -2
  26. package/dist/components/VideoPlayer/context/videoPlayer.context.d.ts +6 -9
  27. package/dist/components/VideoPlayer/context/videoPlayer.provider.d.ts +1 -6
  28. package/dist/components/VideoPlayer/context/videoPlayer.store.d.ts +25 -43
  29. package/dist/components/VideoPlayer/context/videoPlayer.types.d.ts +351 -0
  30. package/dist/components/VideoPlayer/index.d.ts +16 -2
  31. package/dist/components/VideoPlayer/videoPlayer.constants.d.ts +7 -0
  32. package/dist/entry/components.d.ts +2 -1
  33. package/dist/entry/types.d.ts +2 -2
  34. package/dist/index.css +2 -2
  35. package/dist/index.js +8496 -7949
  36. package/dist/index.umd.cjs +31 -23
  37. package/dist/static/icon/PictureQuality.svg +5 -0
  38. package/dist/static/icon/pip.svg +8 -0
  39. package/dist/static/icon/pip_exit.svg +8 -0
  40. package/dist/static/icon/playback_speed.svg +5 -0
  41. package/dist/static/icon/subtitle_filled.svg +1 -0
  42. package/dist/static/icon/subtitle_outlined.svg +1 -0
  43. package/dist/utils/common.utill.d.ts +1 -1
  44. package/package.json +1 -1
@@ -0,0 +1,351 @@
1
+ import { default as React } from 'react';
2
+ import { default as videojs } from 'video.js';
3
+ /**
4
+ * Video.js 플레이어 인스턴스 타입
5
+ */
6
+ export type VideoJsPlayer = ReturnType<typeof videojs>;
7
+ /**
8
+ * VideoPlayer 스토어 설정 타입
9
+ */
10
+ export type VideoPlayerStoreConfig = {
11
+ /** 볼륨 값을 `localStorage` 등에 저장할지 여부 */
12
+ volumePersist: boolean;
13
+ /** 볼륨 영속화 시 사용하는 스토리지 키 */
14
+ volumeStorageKey: string;
15
+ /** 저장값이 없을 때 사용할 기본 볼륨(0~1) */
16
+ volumeFallback: number;
17
+ /** 최초(및 리셋 시) 재생 속도 배율 */
18
+ playbackRateDefault: number;
19
+ };
20
+ /**
21
+ * 자막 트랙 한 개 (HTML track / Video.js text track).
22
+ * Video.js에 넘기는 트랙의 `default` 여부는 여기서 받지 않고 `Player`가 `activeCaptionLang`·`srclang`으로 계산한다.
23
+ */
24
+ export type VideoPlayerTextTrack = {
25
+ /** 트랙 리소스 URL (VTT 등) */
26
+ src: string;
27
+ /** 트랙 종류. 미지정 시 플레이어/브라우저 기본에 따름 */
28
+ kind?: "subtitles" | "captions" | "descriptions" | "chapters" | "metadata";
29
+ /** BCP 47 언어 태그. 자막 on/off·선택에 사용 */
30
+ srclang?: string;
31
+ /** UI에 표시할 트랙 이름 */
32
+ label?: string;
33
+ };
34
+ /**
35
+ * VideoPlayer 이벤트 타입
36
+ */
37
+ export type VideoPlayerEvents = {
38
+ /** Video.js 인스턴스가 준비되었을 때 */
39
+ onReady?: (player: VideoJsPlayer) => void;
40
+ /** 미디어 로드가 시작되었을 때 */
41
+ onLoadStart?: () => void;
42
+ /** 재생을 시작할 수 있을 만큼 버퍼가 찼을 때 */
43
+ onCanPlay?: () => void;
44
+ /** 재생이 시작되었을 때 */
45
+ onPlay?: () => void;
46
+ /** 일시정지되었을 때 */
47
+ onPause?: () => void;
48
+ /**
49
+ * 재생 위치가 갱신될 때
50
+ * @param currentTime 초 단위 현재 재생 시각
51
+ */
52
+ onTimeUpdate?: (currentTime: number) => void;
53
+ /**
54
+ * 버퍼 진행이 갱신될 때
55
+ * @param buffered 초 단위로 해석 가능한 버퍼 관련 값(구현에 따름)
56
+ */
57
+ onProgress?: (buffered: number) => void;
58
+ /**
59
+ * 볼륨이 변경되었을 때
60
+ * @param volume 0~1
61
+ */
62
+ onVolumeChange?: (volume: number) => void;
63
+ /**
64
+ * 재생 배속이 변경되었을 때
65
+ * @param rate 배율(예: 1, 1.5)
66
+ */
67
+ onRateChange?: (rate: number) => void;
68
+ /**
69
+ * 전체화면 상태가 바뀌었을 때
70
+ * @param isFullscreen 전체화면이면 true
71
+ */
72
+ onFullscreenChange?: (isFullscreen: boolean) => void;
73
+ /**
74
+ * Picture-in-Picture 상태가 바뀌었을 때
75
+ * @param active PiP 모드이면 true
76
+ */
77
+ onPictureInPictureChange?: (active: boolean) => void;
78
+ /**
79
+ * 총 재생 길이가 확정·변경되었을 때
80
+ * @param duration 초 단위 길이
81
+ */
82
+ onDurationChange?: (duration: number) => void;
83
+ /** 재생이 끝까지 도달했을 때(video `ended`). 스토어의 `isPlaying`은 false로 맞춤 */
84
+ onEnded?: () => void;
85
+ /**
86
+ * 재생 또는 로드 중 오류가 났을 때
87
+ * @param error 원인 객체(플랫폼·Video.js에 따라 상이)
88
+ */
89
+ onError?: (error: unknown) => void;
90
+ };
91
+ /**
92
+ * VideoPlayer 스토어 상태 타입
93
+ */
94
+ export type VideoPlayerState = {
95
+ /** 미디어가 아직 재생 가능하지 않고 로딩 중인지 */
96
+ isLoading: boolean;
97
+ /** 재생/로드 오류가 발생한 상태인지 */
98
+ hasError: boolean;
99
+ /** 현재 재생 중인지 */
100
+ isPlaying: boolean;
101
+ /** 현재 재생 시각(초) */
102
+ currentTime: number;
103
+ /** 총 길이(초). 미확정 시 0에 가깝게 유지될 수 있음 */
104
+ duration: number;
105
+ /** 버퍼링 관련 진행 값(초 단위로 쓰는 흐름과 연동) */
106
+ buffered: number;
107
+ /** 볼륨 0~1 */
108
+ volume: number;
109
+ /** 현재 재생 배속 */
110
+ playbackRate: number;
111
+ /** 브라우저 전체화면 API 기준 전체화면 여부 */
112
+ isFullscreen: boolean;
113
+ /** Picture-in-Picture 모드 여부 */
114
+ isPictureInPicture: boolean;
115
+ /** 음소거 여부 */
116
+ isMuted: boolean;
117
+ /** 음소거 전 마지막 볼륨(토글 복원용) */
118
+ previousVolume: number;
119
+ /** Video.js 플레이어 인스턴스. 언마운트 전까지 null일 수 있음 */
120
+ player: VideoJsPlayer | null;
121
+ /** 플레이어 컨테이너 너비(CSS 값 또는 px 숫자) */
122
+ width: string | number;
123
+ /** 플레이어 컨테이너 높이(CSS 값 또는 px 숫자) */
124
+ height: string | number;
125
+ /** 단일 소스 URL. `sources`와 함께 쓰일 때 우선순위는 Player 구현에 따름 */
126
+ src: string | null;
127
+ /** 다중 소스(코덱/포맷별). null이면 미설정 */
128
+ sources: {
129
+ src: string;
130
+ type: string;
131
+ }[] | null;
132
+ /** 배속 선택 UI에 노출할 배율 목록 */
133
+ speedOptions: number[];
134
+ /** Video.js 생성자에 넘기는 옵션 */
135
+ playerOptions: Parameters<typeof videojs>[1] | null;
136
+ /** Root 등에서 주입한 이벤트 콜백 묶음 */
137
+ events: VideoPlayerEvents | null;
138
+ /** true면 Video.js 기본 스타일 주입을 생략 */
139
+ disableVideoJsStyles: boolean;
140
+ /** 로드할 텍스트 트랙(자막 등) 목록 */
141
+ tracks: VideoPlayerTextTrack[];
142
+ /**
143
+ * 현재 표시할 자막의 `srclang`. `null`이면 자막 끔.
144
+ * 외부에서 `activeCaptionLang`으로 제어하거나 스토어 내부에서 관리.
145
+ */
146
+ activeCaptionLang: string | null;
147
+ /**
148
+ * controlled 모드: 자막 언어가 바뀔 때 부모에 알림
149
+ * @param lang 선택된 `srclang`, 끔이면 null
150
+ */
151
+ onCaptionLangChange?: (lang: string | null) => void;
152
+ /** 오버레이 UI(그리드 영역)를 일정 시간 후 자동으로 숨길지 */
153
+ autoHide: boolean;
154
+ /** 자동 숨김까지 유휴 시간(ms) */
155
+ autoHideDelayMs: number;
156
+ /**
157
+ * 오버레이 빈 영역 클릭 시 동작.
158
+ * `toggle-play`: 재생/일시정지 토글, `none`: 토글 없음(전용 버튼만)
159
+ */
160
+ overlayClickAction: "toggle-play" | "none";
161
+ /** 오버레이 안의 컨트롤(슬롯 콘텐츠)가 보이는지 */
162
+ overlayControlsVisible: boolean;
163
+ /**
164
+ * true면 재생 중에도 자동 숨김 타이머를 돌리지 않음.
165
+ * 예: 설정 메뉴가 열린 동안 컨트롤을 유지할 때
166
+ */
167
+ overlayAutoHideSuspended: boolean;
168
+ /** 로딩 UI에 표시할 문구 */
169
+ loadingText: string;
170
+ /** 에러 UI 제목 */
171
+ errorTitle: string;
172
+ /** 에러 UI 본문 설명 */
173
+ errorDescription: string;
174
+ /** 에러 UI 재시도 버튼 라벨 */
175
+ errorRetry: string;
176
+ };
177
+ /**
178
+ * VideoPlayer 스토어 액션 타입
179
+ */
180
+ export type VideoPlayerActions = {
181
+ /**
182
+ * 상태를 부분 갱신. 단순 필드 덮어쓰기용
183
+ * @param updates 바꿀 필드만 담은 객체
184
+ */
185
+ setState: (updates: Partial<VideoPlayerState>) => void;
186
+ /** 오버레이 위에서 포인터가 움직임 → 자동 숨김 타이머 리셋, 필요 시 컨트롤 표시 */
187
+ notifyOverlayPointerActivity: () => void;
188
+ /** 오버레이 루트에서 포인터가 이탈했을 때 호출 */
189
+ notifyOverlayPointerLeave: () => void;
190
+ /** 예약된 오버레이 자동 숨김 타이머만 취소(언마운트 등) */
191
+ clearOverlayAutoHideTimer: () => void;
192
+ /** Video.js 인스턴스를 스토어에 연결하거나 해제 */
193
+ setPlayer: (player: VideoJsPlayer | null) => void;
194
+ /**
195
+ * 볼륨만 갱신(내부에서 음소거·previousVolume 등과 동기화)
196
+ * @param volume 0~1
197
+ */
198
+ setVolume: (volume: number) => void;
199
+ /** 재생 ↔ 일시정지 토글 */
200
+ handlePlayPause: () => void;
201
+ /**
202
+ * 지정 시각으로 시킹
203
+ * @param time 초
204
+ */
205
+ handleSeek: (time: number) => void;
206
+ /**
207
+ * 지정 시각으로 시킹한 뒤 재생을 시도한다.
208
+ * @param time 초
209
+ */
210
+ handleSeekAndPlay: (time: number) => void;
211
+ /**
212
+ * 볼륨 변경(슬라이더 등 UI에서 호출)
213
+ * @param volume 0~1
214
+ */
215
+ handleVolumeChange: (volume: number) => void;
216
+ /**
217
+ * 재생 배속 변경
218
+ * @param speed 배율(`speedOptions`에 포함된 값 권장)
219
+ */
220
+ handleSpeedChange: (speed: number) => void;
221
+ /** 전체화면 입·퇴장 토글 */
222
+ handleFullscreenToggle: () => void;
223
+ /** Picture-in-Picture 입·퇴장 토글 */
224
+ handlePictureInPictureToggle: () => void;
225
+ /** 음소거 토글 */
226
+ handleMuteToggle: () => void;
227
+ /** 자막 표시 토글(언어는 `activeCaptionLang` 흐름과 연동) */
228
+ handleCaptionToggle: () => void;
229
+ /**
230
+ * 표시할 자막 언어 설정
231
+ * @param lang `srclang` 또는 `null`(끔)
232
+ */
233
+ setActiveCaptionLang: (lang: string | null) => void;
234
+ };
235
+ /**
236
+ * VideoPlayer 스토어 전체 타입 (State + Actions)
237
+ */
238
+ export type VideoPlayerStore = VideoPlayerState & VideoPlayerActions;
239
+ /**
240
+ * VideoPlayer 외부 제어 API 타입.
241
+ * `VideoPlayer.Root`의 `controllerRef`로 받아 컨텍스트 밖에서도 안전하게 제어할 수 있다.
242
+ */
243
+ export type VideoPlayerExternalController = {
244
+ /** 현재 Video.js 플레이어 인스턴스 반환 (없으면 null) */
245
+ getPlayer: () => VideoJsPlayer | null;
246
+ /** 현재 재생 중 여부 */
247
+ isPlaying: () => boolean;
248
+ /** 현재 재생 시각(초) */
249
+ getCurrentTime: () => number;
250
+ /** 총 길이(초) */
251
+ getDuration: () => number;
252
+ /** 재생 */
253
+ play: () => void;
254
+ /** 일시정지 */
255
+ pause: () => void;
256
+ /** 재생/일시정지 토글 */
257
+ togglePlayPause: () => void;
258
+ /**
259
+ * 지정 시점으로 이동
260
+ * @param time - 초 단위 재생 위치
261
+ */
262
+ seek: (time: number) => void;
263
+ /**
264
+ * 지정 시점으로 이동 후 재생
265
+ * @param time - 초 단위 재생 위치
266
+ */
267
+ seekAndPlay: (time: number) => void;
268
+ /** Picture-in-Picture 토글 */
269
+ togglePictureInPicture: () => void;
270
+ /** 전체화면 토글 */
271
+ toggleFullscreen: () => void;
272
+ };
273
+ /**
274
+ * VideoPlayer 이미지 컴포넌트의 Props 타입
275
+ */
276
+ export type VideoPlayerImageProps = {
277
+ /** 이미지 URL */
278
+ src: string;
279
+ /** 대체 텍스트(접근성) */
280
+ alt: string;
281
+ /** 픽셀 너비(선택) */
282
+ width?: number;
283
+ /** 픽셀 높이(선택) */
284
+ height?: number;
285
+ /** 추가 CSS 클래스 */
286
+ className?: string;
287
+ };
288
+ /**
289
+ * VideoPlayer 이미지 컴포넌트 타입
290
+ */
291
+ export type VideoPlayerImageComponent = React.ComponentType<VideoPlayerImageProps>;
292
+ /**
293
+ * VideoPlayer Provider Props 타입
294
+ */
295
+ export type VideoPlayerProviderProps = {
296
+ /** Provider 하위 트리 */
297
+ children: React.ReactNode;
298
+ /** 스토어 기본 설정 일부만 덮어쓰기 */
299
+ storeConfig?: Partial<VideoPlayerStoreConfig>;
300
+ /** 플레이어 레이아웃 너비 */
301
+ width?: string | number;
302
+ /** 플레이어 레이아웃 높이 */
303
+ height?: string | number;
304
+ /** 단일 미디어 소스 URL */
305
+ src?: string;
306
+ /** 타입별 소스 배열(예: HLS + MP4) */
307
+ sources?: {
308
+ src: string;
309
+ type: string;
310
+ }[];
311
+ /** 배속 선택지 배열 */
312
+ speedOptions?: number[];
313
+ /** Video.js 옵션 */
314
+ playerOptions?: Parameters<typeof videojs>[1];
315
+ /** 재생·로드 라이프사이클 콜백 */
316
+ events?: VideoPlayerEvents;
317
+ /** Video.js 기본 스타일 비활성화 */
318
+ disableVideoJsStyles?: boolean;
319
+ /** 자막 등 텍스트 트랙 */
320
+ tracks?: VideoPlayerTextTrack[];
321
+ /** 마운트 시 초기 자막 언어(`srclang`). null이면 끔 */
322
+ initialActiveCaptionLang?: string | null;
323
+ /**
324
+ * controlled: 현재 자막 언어. 넣으면 스토어가 이 값을 따름
325
+ */
326
+ activeCaptionLang?: string | null;
327
+ /**
328
+ * controlled: 자막 언어 변경 시 부모 콜백
329
+ * @param lang 선택 언어 또는 null
330
+ */
331
+ onCaptionLangChange?: (lang: string | null) => void;
332
+ /** 오버레이 자동 숨김 사용 여부 */
333
+ autoHide?: boolean;
334
+ /** 자동 숨김 지연(ms) */
335
+ autoHideDelayMs?: number;
336
+ /** 오버레이 빈 영역 클릭 시 재생 토글 여부 */
337
+ overlayClickAction?: "toggle-play" | "none";
338
+ /** 로딩 오버레이 문구 */
339
+ loadingText?: string;
340
+ /** 에러 제목 */
341
+ errorTitle?: string;
342
+ /** 에러 설명 */
343
+ errorDescription?: string;
344
+ /** 에러 재시도 버튼 문구 */
345
+ errorRetry?: string;
346
+ /**
347
+ * 외부에서 재생·시킹·PiP 등을 제어할 때 사용.
348
+ * 마운트 후 `current`에 `VideoPlayerExternalController`가 채워지며, 언마운트 시 `null`로 비운다.
349
+ */
350
+ controllerRef?: React.MutableRefObject<VideoPlayerExternalController | null>;
351
+ };
@@ -1,4 +1,18 @@
1
1
  export { default as VideoPlayer } from './VideoPlayer';
2
- export type { VideoPlayerProps, VideoPlayerRootProps, VideoPlayerControls, VideoPlayerTexts, VideoPlayerAria, VideoPlayerIcons, VideoPlayerEvents, } from './VideoPlayer';
3
- export { useVideoPlayerStore, useVideoPlayerShallow, VideoPlayerStoreContext, VideoPlayerImageContext, useVideoPlayerImage, DefaultImage, VideoPlayerProvider, createVideoPlayerStore, resolveVideoPlayerStoreConfig, type VideoPlayerStoreApi, type VideoPlayerImageComponent, type VideoPlayerImageProps, type VideoPlayerStore, type VideoPlayerState, type VideoPlayerActions, type VideoPlayerStoreConfig, } from './context';
2
+ export type { VideoPlayerRootProps } from './VideoPlayer';
3
+ export { useVideoPlayerStore, useVideoPlayerShallow, VideoPlayerStoreContext, VideoPlayerImageContext, useVideoPlayerImage, DefaultImage, VideoPlayerProvider, createVideoPlayerStore, resolveVideoPlayerStoreConfig, } from './context';
4
4
  export { VIDEO_PLAYER_DEFAULTS } from './videoPlayer.constants';
5
+ export { convertSrtToVtt, getHtmlVideoElementFromVideoJs, isSrtSubtitleSource, parseWebVttToCues, } from './VideoPlayer.utils';
6
+ export type { VttCue } from './VideoPlayer.utils';
7
+ export { convertSrtToVtt as videeoPlayerConvertSrtToVtt, parseWebVttToCues as videeoPlayerParseWebVttToCues, convertSrtToVtt as VideeoPlayerConvertSrtToVtt, parseWebVttToCues as VideeoPlayerParseWebVttToCues, } from './VideoPlayer.utils';
8
+ export type { VttCue as VideeoPlayerVttCue } from './VideoPlayer.utils';
9
+ export type { VideoPlayerStoreApi, VideoPlayerImageComponent, VideoPlayerImageProps, VideoPlayerStore, VideoPlayerState, VideoPlayerActions, VideoPlayerStoreConfig, VideoPlayerTextTrack, VideoPlayerEvents, VideoPlayerExternalController, VideoJsPlayer, VideoPlayerProviderProps, } from './context';
10
+ export type { IVideoPlayer, VideoPlayerRootProps as VideoPlayerProps, } from './VideoPlayer';
11
+ export type VideoPlayerControls = Record<string, never>;
12
+ export type VideoPlayerTexts = Record<string, never>;
13
+ export type VideoPlayerAria = Record<string, never>;
14
+ export type VideoPlayerIcons = Record<string, never>;
15
+ export type VideeoPlayerControls = VideoPlayerControls;
16
+ export type VideeoPlayerTexts = VideoPlayerTexts;
17
+ export type VideeoPlayerAria = VideoPlayerAria;
18
+ export type VideeoPlayerIcons = VideoPlayerIcons;
@@ -29,9 +29,13 @@ export declare const VIDEO_PLAYER_DEFAULTS: {
29
29
  readonly pause: "일시정지";
30
30
  readonly fullscreenEnter: "전체화면";
31
31
  readonly fullscreenExit: "전체화면 종료";
32
+ readonly pictureInPictureEnter: "Picture-in-Picture";
33
+ readonly pictureInPictureExit: "Picture-in-Picture 종료";
32
34
  readonly speed: "재생 속도 조절";
33
35
  readonly mute: "음소거";
34
36
  readonly unmute: "음소거 해제";
37
+ readonly captionOn: "자막 켜기";
38
+ readonly captionOff: "자막 끄기";
35
39
  readonly back: "뒤로가기";
36
40
  readonly share: "공유";
37
41
  };
@@ -42,7 +46,10 @@ export declare const VIDEO_PLAYER_DEFAULTS: {
42
46
  readonly share: "Share";
43
47
  readonly volumeOn: "VolumeUp";
44
48
  readonly volumeOff: "VolumeOff";
49
+ readonly caption: "SubtitleFilled";
45
50
  readonly fullscreenEnter: "FullScreen";
46
51
  readonly fullscreenExit: "FullScreenClose";
52
+ readonly pictureInPictureEnter: "Pip";
53
+ readonly pictureInPictureExit: "PipExit";
47
54
  };
48
55
  };
@@ -85,5 +85,6 @@ export { default as TimeInput } from '../components/TimeInput/TimeInput';
85
85
  export { default as List } from '../components/List/List';
86
86
  /** Thumbnail */
87
87
  export { default as Thumbnail } from '../components/Thumbnail/Thumbnail';
88
- export { default as VideoPlayer } from '../components/VideoPlayer/VideoPlayer';
88
+ /** VideoPlayer */
89
+ export { VideoPlayer, VIDEO_PLAYER_DEFAULTS, convertSrtToVtt, getHtmlVideoElementFromVideoJs, isSrtSubtitleSource, parseWebVttToCues, videeoPlayerConvertSrtToVtt, videeoPlayerParseWebVttToCues, VideeoPlayerConvertSrtToVtt, VideeoPlayerParseWebVttToCues, } from '../components/VideoPlayer';
89
90
  export {};
@@ -25,8 +25,8 @@ export type { ScrollCalendarContextType } from '../components/ScrollCalendar/Scr
25
25
  export type { CascaderOption } from '../components/Cascader/Cascader.context';
26
26
  /** WeeklyCalendar */
27
27
  export type { WeeklyCalendarContextType, EventItemAsProps, EventItemPopperAsProps, } from '../components/WeeklyCalendar/WeeklyCalendar.context';
28
- export type { VideoPlayerProps, VideoPlayerRootProps, VideoPlayerControls, VideoPlayerTexts, VideoPlayerAria, VideoPlayerIcons, VideoPlayerEvents, } from '../components/VideoPlayer/VideoPlayer';
29
- export type { VideoPlayerStoreApi, VideoPlayerImageComponent, VideoPlayerImageProps, VideoPlayerStore, VideoPlayerState, VideoPlayerActions, VideoPlayerStoreConfig, } from '../components/VideoPlayer/context';
28
+ /** VideoPlayer */
29
+ export type { IVideoPlayer, VideoPlayerProps, VideoPlayerRootProps, VideoPlayerControls, VideoPlayerTexts, VideoPlayerAria, VideoPlayerIcons, VideeoPlayerControls, VideeoPlayerTexts, VideeoPlayerAria, VideeoPlayerIcons, VideoPlayerEvents, VideoPlayerStoreApi, VideoPlayerImageComponent, VideoPlayerImageProps, VideoPlayerStore, VideoPlayerState, VideoPlayerActions, VideoPlayerStoreConfig, VideoPlayerExternalController, VideoJsPlayer, VideoPlayerProviderProps, VttCue, VideeoPlayerVttCue, } from '../components/VideoPlayer';
30
30
  /** Icon */
31
31
  export type { IconProviderProps, IconRegistry, } from '../components/Icon/context';
32
32
  /** Editor */