@vkontakte/videoplayer 1.1.52-dev.d7d08e6d.0 → 1.1.52-dev.ef982c94.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/es2015.cjs.js +18 -18
- package/es2015.esm.js +18 -18
- package/es2018.cjs.js +18 -18
- package/es2018.esm.js +18 -18
- package/esnext.cjs.js +18 -18
- package/esnext.esm.js +18 -18
- package/evergreen.esm.js +18 -18
- package/package.json +5 -5
- package/types/components/Menus/constants/subMenuIds.d.ts +0 -1
- package/types/components/Menus/types.d.ts +11 -18
- package/types/components/Menus/utils/getCurrentQualityDisplayValue.d.ts +2 -20
- package/types/components/Menus/utils/menuNavigation.d.ts +5 -2
- package/types/config.d.ts +0 -2
- package/types/store/index.d.ts +2 -11
- package/types/utils/userSettings.d.ts +0 -15
- package/types/components/Menus/subMenuTabs/getQualityDetailsSubMenuList.d.ts +0 -15
- package/types/components/Menus/subMenuTabs/getQualityLimitsForSubMenu.d.ts +0 -12
- package/types/components/Menus/subMenuTabs/getQualitySubMenuList.d.ts +0 -11
- package/types/components/Menus/subMenuTabs/getSubMenuList.d.ts +0 -23
- package/types/components/Menus/subMenuTabs/utils.d.ts +0 -2
- package/types/components/Menus/utils/useSubMenuListsManager.d.ts +0 -12
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vkontakte/videoplayer",
|
|
3
|
-
"version": "1.1.52-dev.
|
|
3
|
+
"version": "1.1.52-dev.ef982c94.0",
|
|
4
4
|
"author": "vk.com",
|
|
5
5
|
"description": "Videoplayer based on the vk.com platform",
|
|
6
6
|
"homepage": "https://vk.com",
|
|
@@ -49,9 +49,9 @@
|
|
|
49
49
|
"**/*.d.ts"
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@vkontakte/videoplayer-core": "2.0.119-dev.
|
|
53
|
-
"@vkontakte/videoplayer-interactive": "1.0.27-dev.
|
|
54
|
-
"@vkontakte/videoplayer-shared": "1.0.51-dev.
|
|
55
|
-
"@vkontakte/videoplayer-statistics": "1.0.66-dev.
|
|
52
|
+
"@vkontakte/videoplayer-core": "2.0.119-dev.e9ac9f0e.0",
|
|
53
|
+
"@vkontakte/videoplayer-interactive": "1.0.27-dev.aaea1e4e.0",
|
|
54
|
+
"@vkontakte/videoplayer-shared": "1.0.51-dev.64889560.0",
|
|
55
|
+
"@vkontakte/videoplayer-statistics": "1.0.66-dev.bf722072.0"
|
|
56
56
|
}
|
|
57
57
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare enum SubMenuIds {
|
|
2
2
|
QUALITY = "quality-sub",
|
|
3
3
|
QUALITY_DETAIL = "quality-detail-sub",
|
|
4
|
-
DEFAULT_QUALITY_APPLIENCE = "default_quality_applies_to_sub",
|
|
5
4
|
AUDIO_LANGUAGES = "audio-language-sub",
|
|
6
5
|
PLAYBACK_RATE = "playback-rate-sub",
|
|
7
6
|
SUBTITLES = "subtitles-sub"
|
|
@@ -47,47 +47,40 @@ export type AdditionalClickSettingsMenuItem = Omit<SwitchSettingsMenuItem, 'icon
|
|
|
47
47
|
};
|
|
48
48
|
export type SettingsMenuItem = OpenSubMenuSettingsMenuItem | ClickSettingsMenuItem | SwitchSettingsMenuItem;
|
|
49
49
|
export type AdditionalSettingsMenuItem = AdditionalSwitchSettingsMenuItem | AdditionalClickSettingsMenuItem;
|
|
50
|
-
interface
|
|
51
|
-
|
|
50
|
+
export interface SelectValueSubMenuItem<T = any, U = any> {
|
|
51
|
+
type: SubMenuItemType.SELECT_VALUE;
|
|
52
|
+
value: T;
|
|
53
|
+
dataValue?: T | keyof T;
|
|
52
54
|
valueComponent?: ComponentType;
|
|
53
55
|
valueComponentParams?: {
|
|
54
56
|
[key: string]: U;
|
|
55
57
|
};
|
|
56
|
-
bottomBordered?: boolean;
|
|
57
|
-
label?: string;
|
|
58
|
-
sublabel?: string;
|
|
59
58
|
ariaLabel?: string;
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
export interface SelectValueSubMenuItem<T = any, U = any> extends SubMenuItemBase<U> {
|
|
63
|
-
type: SubMenuItemType.SELECT_VALUE;
|
|
64
|
-
value: T;
|
|
65
|
-
dataValue?: T | keyof T;
|
|
59
|
+
label?: string;
|
|
60
|
+
selected?: boolean;
|
|
66
61
|
selectItem: (value: T) => void;
|
|
67
62
|
}
|
|
68
|
-
export interface OpenSubMenuSubMenuItem
|
|
63
|
+
export interface OpenSubMenuSubMenuItem {
|
|
69
64
|
type: SubMenuItemType.OPEN_SUB_MENU;
|
|
65
|
+
ariaLabel?: string;
|
|
66
|
+
label: string;
|
|
70
67
|
id: string;
|
|
71
68
|
subMenuId: SubMenuIds;
|
|
72
|
-
getSubItemForFocus
|
|
69
|
+
getSubItemForFocus: () => HTMLLIElement;
|
|
73
70
|
}
|
|
74
71
|
export type SubMenuItem = SelectValueSubMenuItem | OpenSubMenuSubMenuItem;
|
|
75
72
|
export interface SubMenuList {
|
|
76
73
|
id: SubMenuIds;
|
|
77
|
-
parentItemId
|
|
74
|
+
parentItemId: string;
|
|
78
75
|
items: SubMenuItem[];
|
|
79
76
|
returnFromSubMenu?: () => void;
|
|
80
77
|
ariaLabelReturnFromSubMenu?: string;
|
|
81
78
|
title: string;
|
|
82
79
|
closeSettingsMenu: () => void;
|
|
83
80
|
minWidth?: number;
|
|
84
|
-
onMount?: () => void;
|
|
85
81
|
}
|
|
86
82
|
export interface ContextMenuItem extends BaseMenuItem {
|
|
87
83
|
onClick: () => void;
|
|
88
84
|
}
|
|
89
85
|
export type AdditionalContextMenuItem = ContextMenuItem;
|
|
90
|
-
export type MenuRefs = {
|
|
91
|
-
[key: string]: HTMLUListElement;
|
|
92
|
-
};
|
|
93
86
|
export {};
|
|
@@ -1,21 +1,3 @@
|
|
|
1
1
|
import { VideoQuality } from '@vkontakte/videoplayer-core';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
quality: VideoQuality;
|
|
5
|
-
availableQualities: VideoQualityForRender[];
|
|
6
|
-
};
|
|
7
|
-
export declare const getQualityDisplayValue: ({ quality, availableQualities }: Params) => string;
|
|
8
|
-
type CurrentQualityParams = {
|
|
9
|
-
isAutoQualityEnabled: boolean | undefined;
|
|
10
|
-
quality: VideoQuality | undefined;
|
|
11
|
-
availableQualities: VideoQualityForRender[];
|
|
12
|
-
};
|
|
13
|
-
export declare const getCurrentQualityDisplayValue: ({ quality, availableQualities, isAutoQualityEnabled, }: CurrentQualityParams) => string;
|
|
14
|
-
type QualityWithPrefixParams = {
|
|
15
|
-
quality: VideoQuality | undefined;
|
|
16
|
-
availableQualities: VideoQualityForRender[];
|
|
17
|
-
prefix: string;
|
|
18
|
-
onlyPrefix: boolean;
|
|
19
|
-
};
|
|
20
|
-
export declare const getQualityWithPrefix: ({ quality, availableQualities, prefix, onlyPrefix }: QualityWithPrefixParams) => string;
|
|
21
|
-
export {};
|
|
2
|
+
import type { VideoQualityForRender } from '../../../types';
|
|
3
|
+
export declare const getCurrentQualityDisplayValue: (currentQuality: VideoQuality | undefined, availableQualities: VideoQualityForRender[], isAutoQualityEnabled: boolean | undefined) => string;
|
|
@@ -11,8 +11,11 @@ export declare const returnFocusToMenuItem: (refMenuItems: {
|
|
|
11
11
|
[key: string]: HTMLLIElement;
|
|
12
12
|
}, id: string) => Promise<void>;
|
|
13
13
|
export declare const handleKeyDownMainMenu: (event: KeyboardEvent, closeCallback: () => void) => void;
|
|
14
|
-
export declare const handleKeyDownOpenSubMenuItem: (event: KeyboardEvent, openSubmenuFn: () => void, getSubItemFn
|
|
15
|
-
export declare const handleKeyDownSubMenu: (event: KeyboardEvent, returnFromSubMenu: () => void,
|
|
14
|
+
export declare const handleKeyDownOpenSubMenuItem: (event: KeyboardEvent, openSubmenuFn: () => void, getSubItemFn: () => HTMLLIElement) => Promise<void>;
|
|
15
|
+
export declare const handleKeyDownSubMenu: (event: KeyboardEvent, returnFromSubMenu: () => void, { itemIdReturnCase, id }: {
|
|
16
|
+
itemIdReturnCase: Writable<string | undefined>;
|
|
17
|
+
id: string;
|
|
18
|
+
}, closeSettingsMenuFn: () => void) => Promise<void>;
|
|
16
19
|
export declare const handleChoseMenuItem: (event: KeyboardEvent, selectFn: () => void) => void;
|
|
17
20
|
export declare const handleSwitchMenuItem: (event: KeyboardEvent, enabled: boolean, selectFn: (value: boolean) => void) => void;
|
|
18
21
|
export declare const getContextMenuPositionByButton: (btnRef: HTMLButtonElement) => Position;
|
package/types/config.d.ts
CHANGED
|
@@ -37,7 +37,6 @@ export interface IUIConfig {
|
|
|
37
37
|
minSubtitlesFontSize: number;
|
|
38
38
|
autoSubtitlesTimeout: Milliseconds;
|
|
39
39
|
trafficSavingLimit: ExactVideoQuality;
|
|
40
|
-
highQualityLimit: ExactVideoQuality;
|
|
41
40
|
episodeMinWidthPc: number;
|
|
42
41
|
controls: {
|
|
43
42
|
showOnStartupAtAutoplay: boolean;
|
|
@@ -116,7 +115,6 @@ export interface IUIConfig {
|
|
|
116
115
|
nextPrevButtons: boolean;
|
|
117
116
|
previewNoEmptySpace: boolean;
|
|
118
117
|
exposeInternalsToGlobal: boolean;
|
|
119
|
-
qualityDetailsSubMenuEnabled: boolean;
|
|
120
118
|
};
|
|
121
119
|
interactive: {
|
|
122
120
|
historyMaxLength: number;
|
package/types/store/index.d.ts
CHANGED
|
@@ -9,16 +9,11 @@ import { AdmanWrapper } from '../components/Ads/admanWrapper';
|
|
|
9
9
|
import type { LanguageConfig } from '../translation/types';
|
|
10
10
|
import type { AdditionalButtonDeprecated, ControlsKeys, HotKeyMapData, IAnnotationsApi, IControlInfo, IDisabledControls, IInteractiveData, IPictureInPictureApi, IPlayerPhase, ITimelinePreviewThumbsData, IVideoEpisode, IVKVideoPlayerCallbacks, IVKVideoPlayerUICallbacks, Position, VideoPlaybackRate, VideoQualityForRender, VideoQualityUI, VideoSubtitle, VideoSubtitleParsed } from '../types';
|
|
11
11
|
import { AdsPlaybackState, PictureInPictureType } from '../types';
|
|
12
|
-
import { type QualitySettingsAppliesTo } from '../utils/userSettings';
|
|
13
12
|
import type { DebugData } from './utils';
|
|
14
13
|
import { GridTypes, type PlayPrevChapterDisabledTooltipKey } from '../constans';
|
|
15
14
|
import { UIOneStat } from '../services/statistics';
|
|
16
15
|
import type { AdditionalContextMenuItem, AdditionalSettingsMenuItem, ContextMenuItem, SettingsMenuItem } from '../components/Menus/types';
|
|
17
16
|
import type { AdditionalButton, AdditionalDesktopControlPanelButton } from '../components/Controls/types';
|
|
18
|
-
type Info = {
|
|
19
|
-
appliesTo?: QualitySettingsAppliesTo;
|
|
20
|
-
changeReason?: 'default' | 'limit-changed';
|
|
21
|
-
};
|
|
22
17
|
export interface IAdsState {
|
|
23
18
|
position: Writable<number>;
|
|
24
19
|
duration: Writable<number>;
|
|
@@ -144,7 +139,6 @@ export interface IStore {
|
|
|
144
139
|
volume$: Readable<number>;
|
|
145
140
|
muted$: Readable<boolean>;
|
|
146
141
|
trafficSavingEnabled$: Readable<boolean>;
|
|
147
|
-
highQualityEnabled$: Readable<boolean>;
|
|
148
142
|
availableVideoStreams$: Readable<IVideoStream[]>;
|
|
149
143
|
availableAudioStreams$: Readable<IAudioStream[]>;
|
|
150
144
|
videoStream$: Readable<IVideoStream | undefined>;
|
|
@@ -202,13 +196,11 @@ export interface IStore {
|
|
|
202
196
|
closeSettingsMenu: (fromSubMenu?: boolean) => void;
|
|
203
197
|
openSettingsSubMenu: (name: string, ref: HTMLElement) => void;
|
|
204
198
|
closeSettingsSubMenu: (ref: HTMLElement, isClosing?: boolean) => void;
|
|
205
|
-
setTrafficSavingEnabled: (trafficSavingEnabled: boolean
|
|
206
|
-
setHighQualityEnabled: (highQualityEnabled: boolean, appliesTo?: QualitySettingsAppliesTo) => void;
|
|
207
|
-
initQualitySettings: () => void;
|
|
199
|
+
setTrafficSavingEnabled: (trafficSavingEnabled: boolean) => void;
|
|
208
200
|
setVolume: (volume: number, preferredVolume?: number) => void;
|
|
209
201
|
setAudioStream: (stream: IAudioStream) => void;
|
|
210
202
|
setVideoStream: (stream: IVideoStream) => void;
|
|
211
|
-
setQuality: (quality: VideoQualityUI
|
|
203
|
+
setQuality: (quality: VideoQualityUI) => void;
|
|
212
204
|
setPlaybackRate: (playbackRate: PlaybackRate) => void;
|
|
213
205
|
incrementPlaybackRate: () => void;
|
|
214
206
|
decrementPlaybackRate: () => void;
|
|
@@ -293,7 +285,6 @@ export interface IStore {
|
|
|
293
285
|
setUiCallbacks: (uiCallbacks: IVKVideoPlayerUICallbacks) => void;
|
|
294
286
|
getAdmanWrapper: () => AdmanWrapper;
|
|
295
287
|
getLogger: () => ILogger;
|
|
296
|
-
getPlayer: () => IPlayer;
|
|
297
288
|
destroy(): void;
|
|
298
289
|
}
|
|
299
290
|
interface IStoreParams {
|
|
@@ -15,18 +15,3 @@ export declare const savePreferredRate: (rate: PlaybackRate) => void;
|
|
|
15
15
|
export declare const getPreferredRate: () => PlaybackRate | undefined;
|
|
16
16
|
export declare const savePreferredAutoplayNext: (autoplayNext: boolean) => void;
|
|
17
17
|
export declare const getPreferredAutoplayNext: () => boolean;
|
|
18
|
-
type PreferredQualitySettingsType = 'traffic_saving' | 'high_quality' | 'auto_quality' | 'exact_video';
|
|
19
|
-
type PreferredQualitySettingsValue = {
|
|
20
|
-
type: Exclude<PreferredQualitySettingsType, 'exact_video'>;
|
|
21
|
-
videoId?: number;
|
|
22
|
-
} | {
|
|
23
|
-
type: 'exact_quality';
|
|
24
|
-
quality: VideoQuality;
|
|
25
|
-
videoId?: number;
|
|
26
|
-
};
|
|
27
|
-
type DefaultPreferredQualitySettingsValue = Exclude<PreferredQualitySettingsValue, {
|
|
28
|
-
type: 'exact_quality';
|
|
29
|
-
}>;
|
|
30
|
-
export type QualitySettingsAppliesTo = 'as-default' | 'to-video';
|
|
31
|
-
export declare const getPreferredQualitySettings: (videoId: number | undefined) => PreferredQualitySettingsValue | null, migrateSettingsToLegacyWay: (videoId?: number) => void, savePreferredQualitySettings: (value: PreferredQualitySettingsValue, appliesTo?: QualitySettingsAppliesTo) => void, savePreferredDefaultQualitySettings: (value: DefaultPreferredQualitySettingsValue) => void, removePreferredQualitySettingsByVideo: () => void;
|
|
32
|
-
export {};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { type MenuRefs, type SubMenuList } from '../types';
|
|
2
|
-
import type { VideoQualityForRender, VideoQualityUI } from '../../../types';
|
|
3
|
-
import { type QualitySettingsAppliesTo } from '../../../utils/userSettings';
|
|
4
|
-
type Params = {
|
|
5
|
-
menuRefs: MenuRefs;
|
|
6
|
-
autoQualityItem: VideoQualityForRender | undefined;
|
|
7
|
-
trafficSavingEnabled: boolean;
|
|
8
|
-
highQualityEnabled: boolean;
|
|
9
|
-
closeSettingsMenu: () => void;
|
|
10
|
-
selectQuality: (quality: VideoQualityUI, appliesTo: QualitySettingsAppliesTo) => void;
|
|
11
|
-
toggleTrafficSaving: (value: boolean, appliesTo: QualitySettingsAppliesTo) => void;
|
|
12
|
-
toggleHighQuality: (valiue: boolean, appliesTo: QualitySettingsAppliesTo) => void;
|
|
13
|
-
};
|
|
14
|
-
export declare const getQualityDetailsSubMenuList: ({ closeSettingsMenu, menuRefs, trafficSavingEnabled, autoQualityItem, highQualityEnabled, toggleHighQuality, selectQuality, toggleTrafficSaving, }: Params) => SubMenuList;
|
|
15
|
-
export {};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { type SubMenuItem } from '../types';
|
|
2
|
-
import type { VideoQualityForRender, VideoQualityUI } from '../../../types';
|
|
3
|
-
type Params = {
|
|
4
|
-
trafficSavingEnabled: boolean;
|
|
5
|
-
toggleTrafficSaving: (value: boolean) => void;
|
|
6
|
-
autoQualityItem: VideoQualityForRender | undefined;
|
|
7
|
-
selectQuality: (quality: VideoQualityUI) => void;
|
|
8
|
-
highQualityEnabled: boolean;
|
|
9
|
-
toggleHighQuality: (valiue: boolean) => void;
|
|
10
|
-
};
|
|
11
|
-
export declare const getQualityLimitsForSubMenu: ({ trafficSavingEnabled, autoQualityItem, highQualityEnabled, toggleHighQuality, selectQuality, toggleTrafficSaving, }: Params) => SubMenuItem[];
|
|
12
|
-
export {};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type MenuRefs, type SubMenuList } from '../types';
|
|
2
|
-
import type { VideoQualityForRender, VideoQualityUI } from '../../../types';
|
|
3
|
-
type Params = {
|
|
4
|
-
availableQualities: VideoQualityForRender[];
|
|
5
|
-
isMobile: boolean;
|
|
6
|
-
menuRefs: MenuRefs;
|
|
7
|
-
closeSettingsMenu: () => void;
|
|
8
|
-
selectQuality: (quality: VideoQualityUI) => void;
|
|
9
|
-
};
|
|
10
|
-
export declare const getQualitySubMenuList: ({ closeSettingsMenu, availableQualities, isMobile, menuRefs, selectQuality, }: Params) => SubMenuList;
|
|
11
|
-
export {};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { SubMenuIds } from '../constants/subMenuIds';
|
|
2
|
-
import { type SubMenuList } from '../types';
|
|
3
|
-
import { getQualitySubMenuList } from './getQualitySubMenuList';
|
|
4
|
-
import type { IAudioStream, PlaybackRate } from '@vkontakte/videoplayer-core';
|
|
5
|
-
import { type VideoPlaybackRate, type VideoQualityUI, type VideoSubtitle } from '../../../types';
|
|
6
|
-
import type { QualitySettingsAppliesTo } from 'packages/ui/src/utils/userSettings';
|
|
7
|
-
type Params = {
|
|
8
|
-
currentSubMenuList: SubMenuIds | null;
|
|
9
|
-
availableAudioStreams: IAudioStream[];
|
|
10
|
-
currentAudioStream: IAudioStream | undefined;
|
|
11
|
-
selectAudioLanguage: (stream: IAudioStream) => void;
|
|
12
|
-
availablePlaybackRates: VideoPlaybackRate[];
|
|
13
|
-
selectPlaybackRate: (playbackRate: PlaybackRate) => void;
|
|
14
|
-
availableSubtitlesList: VideoSubtitle[];
|
|
15
|
-
selectSubtitle: (subtitle: VideoSubtitle) => void;
|
|
16
|
-
trafficSavingEnabled: boolean;
|
|
17
|
-
toggleTrafficSaving: (value: boolean, appliesTo: QualitySettingsAppliesTo) => void;
|
|
18
|
-
highQualityEnabled: boolean;
|
|
19
|
-
toggleHighQuality: (value: boolean, appliesTo: QualitySettingsAppliesTo) => void;
|
|
20
|
-
selectQuality: (quality: VideoQualityUI, appliesTo: QualitySettingsAppliesTo) => void;
|
|
21
|
-
} & Omit<Parameters<typeof getQualitySubMenuList>[0], 'selectQuality'>;
|
|
22
|
-
export declare const getSubMenuList: ({ currentSubMenuList, availableQualities, closeSettingsMenu, isMobile, menuRefs, availableAudioStreams, currentAudioStream, availablePlaybackRates, availableSubtitlesList, trafficSavingEnabled, highQualityEnabled, toggleHighQuality, toggleTrafficSaving, selectPlaybackRate, selectAudioLanguage, selectQuality, selectSubtitle, }: Params) => SubMenuList[];
|
|
23
|
-
export {};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { SettingsMenuItemIds } from '../constants';
|
|
2
|
-
import type { SubMenuIds } from '../constants/subMenuIds';
|
|
3
|
-
export declare const useSubMenuListsManager: () => {
|
|
4
|
-
parentMenuId: {
|
|
5
|
-
subscribe: (this: void, run: import("svelte/store").Subscriber<SettingsMenuItemIds | null | undefined>, invalidate?: import("svelte/store").Invalidator<SettingsMenuItemIds | null | undefined> | undefined) => import("svelte/store").Unsubscriber;
|
|
6
|
-
};
|
|
7
|
-
currentSubMenuList: import("svelte/store").Readable<SubMenuIds | null>;
|
|
8
|
-
pushNextSubList: (nextList: SubMenuIds) => void;
|
|
9
|
-
setParent: (parentId: SettingsMenuItemIds | null) => void;
|
|
10
|
-
popCurrentSubList: () => void;
|
|
11
|
-
popWholeSubMenu: () => void;
|
|
12
|
-
};
|