@vkontakte/videoplayer 1.1.86 → 1.1.87-dev.04ce2cd1.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 (110) hide show
  1. package/es2015.cjs +423 -56
  2. package/es2015.esm.js +423 -56
  3. package/es2018.cjs +423 -56
  4. package/es2018.esm.js +423 -56
  5. package/es2024.cjs +423 -56
  6. package/es2024.esm.js +423 -56
  7. package/esnext.cjs +423 -56
  8. package/esnext.esm.js +423 -56
  9. package/evergreen.esm.js +423 -56
  10. package/package.json +5 -5
  11. package/types/VKVideoPlayer/HTMLElement.d.ts +1 -1
  12. package/types/VKVideoPlayer/index.svelte.d.ts +173 -173
  13. package/types/components/Ads/admanWrapper.d.ts +79 -75
  14. package/types/components/Ads/types.d.ts +27 -27
  15. package/types/components/Controls/contants/desktopButtonsLeftIds.d.ts +8 -8
  16. package/types/components/Controls/contants/desktopButtonsLeftWeights.d.ts +2 -4
  17. package/types/components/Controls/contants/desktopButtonsRightIds.d.ts +8 -8
  18. package/types/components/Controls/contants/desktopButtonsRightWeights.d.ts +2 -4
  19. package/types/components/Controls/types.d.ts +27 -27
  20. package/types/components/Controls/utils/isInnerButtonGuard.d.ts +1 -1
  21. package/types/components/Icons/constants.d.ts +5 -5
  22. package/types/components/Icons/utils.d.ts +1 -1
  23. package/types/components/Menus/constants/contextMenuItemIds.d.ts +10 -10
  24. package/types/components/Menus/constants/contextMenuItemWeights.d.ts +2 -4
  25. package/types/components/Menus/constants/index.d.ts +4 -4
  26. package/types/components/Menus/constants/openSubMenuItemsIds.d.ts +1 -1
  27. package/types/components/Menus/constants/settingsMenuItemIds.d.ts +10 -10
  28. package/types/components/Menus/constants/settingsMenuItemWeights.d.ts +2 -4
  29. package/types/components/Menus/constants/subMenuIds.d.ts +6 -6
  30. package/types/components/Menus/subMenuTabs/rootMenuItems.d.ts +26 -26
  31. package/types/components/Menus/subMenuTabs/sharedMenuItems.d.ts +7 -7
  32. package/types/components/Menus/subMenuTabs/subMenuItems.d.ts +4 -10
  33. package/types/components/Menus/subMenuTabs/types.d.ts +108 -108
  34. package/types/components/Menus/subMenuTabs/utils.d.ts +2 -2
  35. package/types/components/Menus/types.d.ts +64 -61
  36. package/types/components/Menus/utils/getCurrentQualityDisplayValue.d.ts +12 -12
  37. package/types/components/Menus/utils/getQualityIcon.d.ts +2 -2
  38. package/types/components/Menus/utils/getSubMenusStack.svelte.d.ts +7 -7
  39. package/types/components/Menus/utils/menuNavigation.d.ts +5 -5
  40. package/types/components/Root/types.d.ts +79 -79
  41. package/types/components/Root/utils.d.ts +2 -2
  42. package/types/components/Timeline/PreviewTrack/useTransitionToPreviewTrack.svelte.d.ts +15 -15
  43. package/types/components/Timeline/consts.d.ts +2 -2
  44. package/types/components/shared/interpolateUtils.d.ts +2 -2
  45. package/types/config.d.ts +270 -260
  46. package/types/constans/controls.d.ts +21 -21
  47. package/types/constans/grid.d.ts +9 -9
  48. package/types/constans/index.d.ts +8 -8
  49. package/types/constans/interactives.d.ts +4 -4
  50. package/types/constans/keyboard.d.ts +43 -48
  51. package/types/index.d.ts +16 -16
  52. package/types/services/statistics.d.ts +13 -13
  53. package/types/store/index.d.ts +391 -391
  54. package/types/store/micro/base.d.ts +6 -6
  55. package/types/store/micro/fakeIsPlaying.d.ts +8 -10
  56. package/types/store/micro/graphIsOpened.d.ts +11 -13
  57. package/types/store/micro/index.d.ts +1 -1
  58. package/types/store/micro/interactiveControlsOpacity.d.ts +8 -10
  59. package/types/store/micro/notifications.d.ts +7 -10
  60. package/types/store/micro/pictureInPicture.d.ts +6 -9
  61. package/types/store/micro/seekToInteractiveDisabledTooltip.d.ts +8 -7
  62. package/types/store/micro/showInteractiveTimeIndicatorTooltip.d.ts +13 -12
  63. package/types/store/utils.d.ts +36 -36
  64. package/types/translation/index.d.ts +2 -2
  65. package/types/translation/labels.d.ts +1 -1
  66. package/types/translation/packs/en.d.ts +1 -1
  67. package/types/translation/packs/ru.d.ts +1 -1
  68. package/types/translation/types.d.ts +5 -5
  69. package/types/types/index.d.ts +534 -516
  70. package/types/types/svg.d.d.ts +5 -0
  71. package/types/utils/CaptionsPrepared.d.ts +15 -15
  72. package/types/utils/WebVttParser.d.ts +11 -11
  73. package/types/utils/attachments/defferedDisableByCondition.d.ts +3 -3
  74. package/types/utils/changeVolume.d.ts +6 -6
  75. package/types/utils/elementHelpers.d.ts +2 -2
  76. package/types/utils/findCurrentSubtltlePhrase.d.ts +1 -1
  77. package/types/utils/fullscreen.d.ts +14 -14
  78. package/types/utils/getActualEpisode.d.ts +7 -7
  79. package/types/utils/getControlInfo.d.ts +5 -7
  80. package/types/utils/getHotKeyMapData.d.ts +1 -1
  81. package/types/utils/grid.d.ts +1 -1
  82. package/types/utils/hooks/useIosSafariFullscreen.d.ts +2 -2
  83. package/types/utils/hooks/useIosSafariFullscreenSubtitles.d.ts +3 -3
  84. package/types/utils/keyboardHandleCases.d.ts +1 -1
  85. package/types/utils/notificationShowManager.d.ts +7 -6
  86. package/types/utils/roundFps.d.ts +1 -1
  87. package/types/utils/sanitizeHtml.d.ts +3 -3
  88. package/types/utils/sorts.d.ts +2 -2
  89. package/types/utils/stack/index.d.ts +7 -7
  90. package/types/utils/stack/node.d.ts +3 -3
  91. package/types/utils/subtitles.d.ts +8 -8
  92. package/types/utils/timeout.d.ts +2 -2
  93. package/types/utils/updatePlayerControlBlocks.d.ts +2 -2
  94. package/types/utils/updatePlayerControlsInfo.d.ts +2 -2
  95. package/types/utils/userSettings.d.ts +26 -21
  96. package/types/utils/videoConfig.d.ts +6 -2
  97. package/types/utils/volumeChange.d.ts +1 -1
  98. package/types/utils/webAPI/annotationsApi/annotationsApi.d.ts +31 -31
  99. package/types/utils/webAPI/annotationsApi/errors.d.ts +1 -1
  100. package/types/utils/webAPI/focusLock.d.ts +30 -30
  101. package/types/utils/webAPI/focusManager.d.ts +15 -15
  102. package/types/utils/webAPI/language.d.ts +1 -1
  103. package/types/utils/webAPI/mediaSessionApi.d.ts +14 -14
  104. package/types/utils/webAPI/pictureInPictureApi/documentPictureInPictureApi.svelte.d.ts +41 -41
  105. package/types/utils/webAPI/pictureInPictureApi/factory.d.ts +2 -2
  106. package/types/utils/webAPI/pictureInPictureApi/index.d.ts +4 -4
  107. package/types/utils/webAPI/pictureInPictureApi/pictureInPictureApi.d.ts +46 -46
  108. package/types/utils/webAPI/pictureInPictureApi/types.d.ts +4 -4
  109. package/types/utils/webAPI/pictureInPictureApi/utils.d.ts +3 -3
  110. package/types/utils/webAPI/slotsApi.d.ts +41 -41
@@ -1,8 +1,8 @@
1
- import { Subscription } from '@vkontakte/videoplayer-shared';
2
- import type { IMicroStore, IMicroStores, InitMicroStoreParams } from '../../types';
1
+ import { Subscription } from "@vkontakte/videoplayer-shared";
2
+ import type { IMicroStore, IMicroStores, InitMicroStoreParams } from "../../types";
3
3
  export declare class BaseMicroStore<StateName extends keyof IMicroStores = keyof IMicroStores> implements IMicroStore {
4
- readonly stateName: StateName;
5
- state$: IMicroStores[StateName];
6
- subscription: Subscription;
7
- init({ store, microStores, interactiveController, config }: InitMicroStoreParams): Subscription;
4
+ readonly stateName: StateName;
5
+ state$: IMicroStores[StateName];
6
+ subscription: Subscription;
7
+ init({ store, microStores, interactiveController, config }: InitMicroStoreParams): Subscription;
8
8
  }
@@ -1,12 +1,10 @@
1
- import { BaseMicroStore } from './base';
2
- import type { InitMicroStoreParams } from '../../types';
1
+ import { type Writable } from "svelte/store";
2
+ import { BaseMicroStore } from "./base";
3
+ import type { InitMicroStoreParams, IToggleable } from "../../types";
4
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
5
+ type ToggleableMicroStore = IToggleable<Writable<boolean | null>>;
3
6
  export default class FakeIsPlaying extends BaseMicroStore {
4
- readonly stateName = "fakeIsPlaying$";
5
- state$: {
6
- toggle: () => void;
7
- set(this: void, value: boolean | null): void;
8
- update(this: void, updater: import("svelte/store").Updater<boolean | null>): void;
9
- subscribe(this: void, run: import("svelte/store").Subscriber<boolean | null>, invalidate?: () => void): import("svelte/store").Unsubscriber;
10
- };
11
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
7
+ readonly stateName = "fakeIsPlaying$";
8
+ state$: ToggleableMicroStore;
9
+ init(initStoreParams: InitMicroStoreParams): Subscription;
12
10
  }
@@ -1,15 +1,13 @@
1
- import { BaseMicroStore } from './base';
2
- import type { InitMicroStoreParams } from '../../types';
3
- import { GridTypes } from '../../constans';
1
+ import { type Writable } from "svelte/store";
2
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
3
+ import { BaseMicroStore } from "./base";
4
+ import type { InitMicroStoreParams, IToggleable } from "../../types";
5
+ import { GridTypes } from "../../constans";
6
+ type ToggleableMicroStore = IToggleable<Writable<boolean | null>>;
4
7
  export default class GraphIsOpened extends BaseMicroStore {
5
- readonly stateName = "graphIsOpened$";
6
- private graphMadePause;
7
- state$: {
8
- toggle: () => void;
9
- set(this: void, value: boolean | null): void;
10
- update(this: void, updater: import("svelte/store").Updater<boolean | null>): void;
11
- subscribe(this: void, run: import("svelte/store").Subscriber<boolean | null>, invalidate?: () => void): import("svelte/store").Unsubscriber;
12
- };
13
- checkIfShouldHide: (currentGridType: GridTypes) => boolean;
14
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
8
+ readonly stateName = "graphIsOpened$";
9
+ private graphMadePause;
10
+ state$: ToggleableMicroStore;
11
+ checkIfShouldHide: (currentGridType: GridTypes) => boolean;
12
+ init(initStoreParams: InitMicroStoreParams): Subscription;
15
13
  }
@@ -1,2 +1,2 @@
1
- import type { IMicroStoresRoot } from '../../types';
1
+ import type { IMicroStoresRoot } from "../../types";
2
2
  export declare const createMicroStoresRoot: () => IMicroStoresRoot;
@@ -1,12 +1,10 @@
1
- import { BaseMicroStore } from './base';
2
- import type { InitMicroStoreParams } from '../../types';
1
+ import { type Writable } from "svelte/store";
2
+ import { BaseMicroStore } from "./base";
3
+ import type { InitMicroStoreParams, IToggleable } from "../../types";
4
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
5
+ type ToggleableMicroStore = IToggleable<Writable<boolean | null>>;
3
6
  export default class InteractiveControlsOpacity extends BaseMicroStore {
4
- readonly stateName = "interactiveControlsOpacity$";
5
- state$: {
6
- toggle: () => void;
7
- set(this: void, value: boolean | null): void;
8
- update(this: void, updater: import("svelte/store").Updater<boolean | null>): void;
9
- subscribe(this: void, run: import("svelte/store").Subscriber<boolean | null>, invalidate?: () => void): import("svelte/store").Unsubscriber;
10
- };
11
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
7
+ readonly stateName = "interactiveControlsOpacity$";
8
+ state$: ToggleableMicroStore;
9
+ init(initStoreParams: InitMicroStoreParams): Subscription;
12
10
  }
@@ -1,12 +1,9 @@
1
- import { BaseMicroStore } from './base';
2
- import { type InitMicroStoreParams, type NotificationId } from '../../types';
1
+ import { BaseMicroStore } from "./base";
2
+ import { type InitMicroStoreParams, type NotificationsMicroStore } from "../../types";
3
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
3
4
  export default class Notifications extends BaseMicroStore {
4
- readonly stateName = "notifications$";
5
- private notificationManager;
6
- state$: {
7
- notificationsToShow$: import("svelte/store").Writable<Partial<Record<"slow_video", boolean>>>;
8
- showNotification: (id: NotificationId) => void;
9
- closeNotification: (id: NotificationId) => void;
10
- };
11
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
5
+ readonly stateName = "notifications$";
6
+ private notificationManager;
7
+ state$: NotificationsMicroStore;
8
+ init(initStoreParams: InitMicroStoreParams): Subscription;
12
9
  }
@@ -1,11 +1,8 @@
1
- import { BaseMicroStore } from './base';
2
- import type { InitMicroStoreParams, PictureInPictureType } from '../../types';
1
+ import { BaseMicroStore } from "./base";
2
+ import type { InitMicroStoreParams, PictureInPictureMicroStore } from "../../types";
3
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
3
4
  export default class PictureInPicture extends BaseMicroStore {
4
- readonly stateName = "pictureInPicture$";
5
- state$: {
6
- isActive$: import("svelte/store").Writable<boolean>;
7
- isEnabled$: import("svelte/store").Writable<boolean>;
8
- type$: import("svelte/store").Writable<PictureInPictureType | undefined>;
9
- };
10
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
5
+ readonly stateName = "pictureInPicture$";
6
+ state$: PictureInPictureMicroStore;
7
+ init(initStoreParams: InitMicroStoreParams): Subscription;
11
8
  }
@@ -1,9 +1,10 @@
1
- import { BaseMicroStore } from './base';
2
- import { type Writable } from 'svelte/store';
3
- import type { SeekToInteractiveDisabledTooltipKey } from '../../constans';
4
- import type { InitMicroStoreParams } from '../../types';
1
+ import { BaseMicroStore } from "./base";
2
+ import { type Writable } from "svelte/store";
3
+ import type { SeekToInteractiveDisabledTooltipKey } from "../../constans";
4
+ import type { InitMicroStoreParams } from "../../types";
5
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
5
6
  export default class SeekToInteractiveDisabledTooltip extends BaseMicroStore {
6
- readonly stateName = "seekToInteractiveDisabledTooltip$";
7
- state$: Writable<SeekToInteractiveDisabledTooltipKey>;
8
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
7
+ readonly stateName = "seekToInteractiveDisabledTooltip$";
8
+ state$: Writable<SeekToInteractiveDisabledTooltipKey>;
9
+ init(initStoreParams: InitMicroStoreParams): Subscription;
9
10
  }
@@ -1,14 +1,15 @@
1
- import { BaseMicroStore } from './base';
2
- import type { InitMicroStoreParams } from '../../types';
1
+ import { type Writable } from "svelte/store";
2
+ import { BaseMicroStore } from "./base";
3
+ import type { InitMicroStoreParams } from "../../types";
4
+ import type { Subscription } from "@vkontakte/videoplayer-shared";
5
+ type ShowInteractiveTimeIndicatorTooltipState = Writable<boolean> & {
6
+ set: (newValue: boolean, useTimeout?: boolean) => void;
7
+ clearTimeout: () => void;
8
+ };
3
9
  export default class ShowInteractiveTimeIndicatorTooltip extends BaseMicroStore {
4
- readonly stateName = "showInteractiveTimeIndicatorTooltip$";
5
- private timeout;
6
- state$: {
7
- set: (value: boolean, useTimeout?: boolean) => void;
8
- clearTimeout: () => void;
9
- update(this: void, updater: import("svelte/store").Updater<boolean>): void;
10
- subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: () => void): import("svelte/store").Unsubscriber;
11
- };
12
- init(initStoreParams: InitMicroStoreParams): import("@vkontakte/videoplayer-shared").Subscription;
13
- clearTimeout(): void;
10
+ readonly stateName = "showInteractiveTimeIndicatorTooltip$";
11
+ private timeout;
12
+ state$: ShowInteractiveTimeIndicatorTooltipState;
13
+ init(initStoreParams: InitMicroStoreParams): Subscription;
14
+ clearTimeout(): void;
14
15
  }
@@ -1,53 +1,53 @@
1
- import type { Readable } from 'svelte/store';
2
- import type { IValueObservable } from '@vkontakte/videoplayer-shared';
3
- import type { IPlayer, IConfig, IObservable } from '@vkontakte/videoplayer-core';
4
- import type { IStore } from '.';
5
- import type { AdditionalButtonDeprecated, IMicroStores } from '../types';
6
- import type { AdditionalDesktopControlPanelButton } from '../components/Controls/types';
7
- import type { ISDKConfig } from '../config';
1
+ import type { Readable } from "svelte/store";
2
+ import type { IValueObservable } from "@vkontakte/videoplayer-shared";
3
+ import type { IPlayer, IConfig, IObservable } from "@vkontakte/videoplayer-core";
4
+ import type { IStore } from ".";
5
+ import type { AdditionalButtonDeprecated, IMicroStores } from "../types";
6
+ import type { AdditionalDesktopControlPanelButton } from "../components/Controls/types";
7
+ import type { ISDKConfig } from "../config";
8
8
  export declare const setStores: (store: IStore, microStores: IMicroStores) => void;
9
9
  export declare const getStore: () => IStore;
10
10
  export declare const getMicroStores: () => IMicroStores;
11
11
  /**
12
- * Создаёт readable store svelte'а из `IObservableValue` sdk
13
- */
12
+ * Создаёт readable store svelte'а из `IObservableValue` sdk
13
+ */
14
14
  export declare const storeFromObservable: <T>(observable$: IValueObservable<T>, onNewValueEmitted?: (value: T) => void) => Readable<T>;
15
15
  export declare const storeFromObservableWithInitValue: <T>(observable$: IObservable<T>, initValue: T, onNewValueEmitted?: (value: T) => void) => Readable<T>;
16
16
  export declare const constructDebugTextData: (player: IPlayer, config: IConfig | undefined, store: IStore, traceId: string, metaConfig?: ISDKConfig["meta"]) => string;
17
17
  export type DebugData = {
18
- version: string;
19
- viewport: string;
20
- provider?: string;
21
- cdn?: string;
22
- id?: number;
23
- volume: number;
24
- videoSize?: string;
25
- buffer?: number;
26
- nativeBuffer?: number;
27
- position?: number;
28
- speed?: number;
29
- bitrate?: number;
30
- liveLatency?: number;
31
- currentVideoSegmentLength?: number;
32
- currentAudioSegmentLength?: number;
33
- vsid?: string;
34
- videoCodec?: string;
35
- audioCodec?: string;
36
- hdr?: boolean;
37
- audioLanguage?: string;
18
+ version: string;
19
+ viewport: string;
20
+ provider?: string;
21
+ cdn?: string;
22
+ id?: number;
23
+ volume: number;
24
+ videoSize?: string;
25
+ buffer?: number;
26
+ nativeBuffer?: number;
27
+ position?: number;
28
+ speed?: number;
29
+ bitrate?: number;
30
+ liveLatency?: number;
31
+ currentVideoSegmentLength?: number;
32
+ currentAudioSegmentLength?: number;
33
+ vsid?: string;
34
+ videoCodec?: string;
35
+ audioCodec?: string;
36
+ hdr?: boolean;
37
+ audioLanguage?: string;
38
38
  };
39
39
  export declare const constructDebugPanelData: (player: IPlayer, config: IConfig, store: IStore) => DebugData;
40
40
  export declare const fetchVideoFile: (url: string, filename: string) => void;
41
41
  export declare const isDeprecatedAdditionalButtonGuard: (btn: AdditionalButtonDeprecated | AdditionalDesktopControlPanelButton) => btn is AdditionalButtonDeprecated;
42
42
  export declare const isAdditionalButtonGuard: (btn: AdditionalButtonDeprecated | AdditionalDesktopControlPanelButton) => btn is AdditionalDesktopControlPanelButton;
43
43
  export declare const createDequeCache: <T>() => {
44
- add: (key: string, value: T) => void;
45
- find: (key: string) => [string, T] | undefined;
44
+ add: (key: string, value: T) => void;
45
+ find: (key: string) => [string, T] | undefined;
46
46
  };
47
47
  export declare class SubtitlesDownloader {
48
- private destroyController;
49
- private pendingDownloads;
50
- download(url: string): Promise<string | null>;
51
- destroy(): void;
52
- isDestroyed(): boolean;
48
+ private destroyController;
49
+ private pendingDownloads;
50
+ download(url: string): Promise<string | null>;
51
+ destroy(): void;
52
+ isDestroyed(): boolean;
53
53
  }
@@ -1,5 +1,5 @@
1
- import { InterfaceLanguage } from '@vkontakte/videoplayer-shared';
2
- import type { Key, LanguageConfig } from './types';
1
+ import { InterfaceLanguage } from "@vkontakte/videoplayer-shared";
2
+ import type { Key, LanguageConfig } from "./types";
3
3
  export declare const addLanguage: ({ language, pack, fallback }: LanguageConfig) => void;
4
4
  export declare const haveLanguage: (language: InterfaceLanguage | string) => boolean;
5
5
  export declare const translate: (language: InterfaceLanguage | string, key: Key, params?: Record<string, string>, defaultLanguage?: InterfaceLanguage) => string;
@@ -1,2 +1,2 @@
1
- import type { IAudioStream } from '@vkontakte/videoplayer-core';
1
+ import type { IAudioStream } from "@vkontakte/videoplayer-core";
2
2
  export declare const getAudioStreamDisplayLabel: (stream: IAudioStream | undefined, allStreams: IAudioStream[]) => string;
@@ -1,3 +1,3 @@
1
- import type { LanguagePack } from '../types';
1
+ import type { LanguagePack } from "../types";
2
2
  declare const pack: LanguagePack;
3
3
  export default pack;
@@ -1,3 +1,3 @@
1
- import type { LanguagePack } from '../types';
1
+ import type { LanguagePack } from "../types";
2
2
  declare const pack: LanguagePack;
3
3
  export default pack;
@@ -1,8 +1,8 @@
1
- import { InterfaceLanguage } from '@vkontakte/videoplayer-shared';
2
- export type Key = 'auto_quality_invariant' | 'auto_quality' | 'menu_quality' | 'menu_playback_rate' | 'menu_traffic_saving' | 'menu_report' | 'menu_pip' | 'menu_pip_close' | 'menu_copy_video_link' | 'menu_copy_video_link_with_timestamp' | 'menu_video_rotate' | 'menu_video_loop_on' | 'menu_video_loop_off' | 'menu_chromecast' | 'menu_copy_debug' | 'menu_save_debug' | 'menu_debug_overlay' | 'menu_copy_embed_code' | 'pip_dummy_title' | 'submenu_traffic_saving' | 'submenu_quality' | 'submenu_playback_rate' | 'submenu_settings' | 'submenu_audio_languages' | 'auto_quality_option' | 'playing_ads' | 'skip_ads_now' | 'skip_ads_after' | 'visit_advertiser' | 'aria_timeline' | 'aria_timeline_value' | 'doubletap_seek_step' | 'playback_rate_1' | 'playback_rate' | 'video360' | 'subtitles_caption' | 'subtitles_auto' | 'subtitles_off' | 'subtitles_auto_caption' | 'subtitles_turn_on' | 'subtitles_turn_off' | 'traffic_saving_off' | 'traffic_saving_on' | 'traffic_saving_helper_text' | 'tooltip_previous' | 'tooltip_restart' | 'tooltip_play' | 'tooltip_pause' | 'tooltip_next' | 'tooltip_button_disabled' | 'tooltip_interactive_go_back' | 'tooltip_interactive_go_back_disabled' | 'tooltip_interactive_go_back_disabled_first' | 'tooltip_interactive_go_back_disabled_limit' | 'tooltip_chapter_without_interactive' | 'tooltip_interactive_of_chapter_completed' | 'tooltip_interactive_seek' | 'tooltip_interactive_graph_off' | 'tooltip_interactive_graph_on' | 'tooltip_live' | 'tooltip_episodes' | 'tooltip_volume' | 'tooltip_volume_muted' | 'tooltip_sound_unavailable' | 'tooltip_settings_on' | 'tooltip_subtitles_off' | 'tooltip_settings_off' | 'tooltip_subtitles_on' | 'tooltip_fullscreen_off' | 'tooltip_fullscreen_on' | 'tooltip_chromecast_off' | 'tooltip_chromecast_on' | 'tooltip_episode_finished' | 'tooltip_episode_unfinished' | 'tooltip_disabled_when_interactive' | 'tooltip_disabled_when_graph_on' | 'tooltip_interactive_interaction_time_indicator' | 'tooltip_vk_logo' | 'tooltip_vk_video_logo' | 'tooltip_autoplay_off' | 'tooltip_autoplay_on' | 'tooltip_context_menu_open' | 'tooltip_context_menu_close' | 'download_video_caption' | 'hotkey_helper_current_volume' | 'hotkey_map_modal_title' | 'hotkey_map_modal_close_btn_text' | 'hotkey_map_group_title_common' | 'hotkey_map_group_title_playback' | 'hotkey_map_group_title_subtitles' | 'hotkey_map_group_title_episodes' | 'hotkey_map_item_mute_description' | 'hotkey_map_item_mute_value' | 'hotkey_map_item_volume_down_description' | 'hotkey_map_item_volume_down_value' | 'hotkey_map_item_volume_up_description' | 'hotkey_map_item_volume_up_value' | 'hotkey_map_item_pip_description' | 'hotkey_map_item_pip_value' | 'hotkey_map_item_full_screen_description' | 'hotkey_map_item_full_screen_value' | 'hotkey_map_item_show_context_menu_description' | 'hotkey_map_item_show_context_menu_value' | 'hotkey_map_item_show_hotkey_map_description' | 'hotkey_map_item_show_hotkey_map_value' | 'hotkey_map_item_play_toggle_description' | 'hotkey_map_item_play_toggle_value' | 'hotkey_map_item_seek_backward_description' | 'hotkey_map_item_seek_backward_value' | 'hotkey_map_item_seek_forward_description' | 'hotkey_map_item_seek_forward_value' | 'hotkey_map_item_fast_seek_backward_description' | 'hotkey_map_item_fast_seek_backward_value' | 'hotkey_map_item_fast_seek_forward_description' | 'hotkey_map_item_fast_seek_forward_value' | 'hotkey_map_item_rate_down_description' | 'hotkey_map_item_rate_down_value' | 'hotkey_map_item_rate_up_description' | 'hotkey_map_item_rate_up_value' | 'hotkey_map_item_prev_frame_description' | 'hotkey_map_item_prev_frame_value' | 'hotkey_map_item_next_frame_description' | 'hotkey_map_item_next_frame_value' | 'hotkey_map_item_jump_seek_description' | 'hotkey_map_item_jump_seek_value' | 'hotkey_map_item_subtitles_toggle_description' | 'hotkey_map_item_subtitles_toggle_value' | 'hotkey_map_item_prev_episode_description' | 'hotkey_map_item_prev_episode_pc_value' | 'hotkey_map_item_prev_episode_mac_value' | 'hotkey_map_item_next_episode_description' | 'hotkey_map_item_next_episode_pc_value' | 'hotkey_map_item_next_episode_mac_value' | 'hotkey_map_item_next_video_description' | 'hotkey_map_item_next_video_value' | 'hotkey_map_item_prev_video_description' | 'hotkey_map_item_prev_video_value' | 'waiting_live_day_value' | 'waiting_live_hour_value' | 'waiting_live_minute_value' | 'waiting_live_second_value' | 'waiting_live_colon' | 'waiting_live_upcoming_title' | 'waiting_live_timer_title' | 'waiting_live_recover_title' | 'waiting_record_title' | 'aria_label_submenu_traffic_saving' | 'aria_label_submenu_back' | 'aria_label_menu_quality' | 'aria_label_menu_rate' | 'aria_label_menu_subtitle' | 'aria_label_menu_download' | 'aria_label_new_tab_alert' | 'aria_label_menu_debug_overlay' | 'aria_label_menu_rotate' | 'aria_label_menu_loop' | 'aria_label_debug_panel' | 'aria_label_context_menu' | 'aria_label_video_player' | 'aria_label_spherical_control' | 'aria_label_menu_audio_languages' | 'aria_label_settings' | 'aria_label_autoplay' | 'menu_audio_languages' | 'audio_stream_display_language_label' | 'audio_stream_display_language_label_index' | 'audio_stream_display_label_index' | 'audio_stream_display_language_index' | 'audio_stream_display_unknown' | 'end_screen_next_video' | 'end_screen_recommended_video' | 'other_quality' | 'high_quality' | 'high_quality_description' | 'auto_quality_limit' | 'traffic_saving_quality' | 'traffic_saving_quality_description' | 'quality_applience' | 'quality_applience_action' | 'default_quality_for_any_video' | 'slow_video_notification_button' | 'slow_video_notification_force_description' | 'slow_video_notification_suggest_description' | 'double_forward_label' | 'preview_track_notification_text' | 'preview_track_close_tooltip';
1
+ import type { InterfaceLanguage } from "@vkontakte/videoplayer-shared";
2
+ export type Key = "auto_quality_invariant" | "auto_quality" | "menu_quality" | "menu_playback_rate" | "menu_traffic_saving" | "menu_report" | "menu_pip" | "menu_pip_close" | "menu_copy_video_link" | "menu_copy_video_link_with_timestamp" | "menu_video_rotate" | "menu_video_loop_on" | "menu_video_loop_off" | "menu_chromecast" | "menu_copy_debug" | "menu_save_debug" | "menu_debug_overlay" | "menu_copy_embed_code" | "pip_dummy_title" | "submenu_traffic_saving" | "submenu_quality" | "submenu_playback_rate" | "submenu_settings" | "submenu_audio_languages" | "auto_quality_option" | "playing_ads" | "skip_ads_now" | "skip_ads_after" | "visit_advertiser" | "aria_timeline" | "aria_timeline_value" | "doubletap_seek_step" | "playback_rate_1" | "playback_rate" | "video360" | "subtitles_caption" | "subtitles_auto" | "subtitles_off" | "subtitles_auto_caption" | "subtitles_turn_on" | "subtitles_turn_off" | "traffic_saving_off" | "traffic_saving_on" | "traffic_saving_helper_text" | "tooltip_previous" | "tooltip_restart" | "tooltip_play" | "tooltip_pause" | "tooltip_next" | "tooltip_button_disabled" | "tooltip_interactive_go_back" | "tooltip_interactive_go_back_disabled" | "tooltip_interactive_go_back_disabled_first" | "tooltip_interactive_go_back_disabled_limit" | "tooltip_chapter_without_interactive" | "tooltip_interactive_of_chapter_completed" | "tooltip_interactive_seek" | "tooltip_interactive_graph_off" | "tooltip_interactive_graph_on" | "tooltip_live" | "tooltip_episodes" | "tooltip_volume" | "tooltip_volume_muted" | "tooltip_sound_unavailable" | "tooltip_settings_on" | "tooltip_subtitles_off" | "tooltip_settings_off" | "tooltip_subtitles_on" | "tooltip_fullscreen_off" | "tooltip_fullscreen_on" | "tooltip_chromecast_off" | "tooltip_chromecast_on" | "tooltip_episode_finished" | "tooltip_episode_unfinished" | "tooltip_disabled_when_interactive" | "tooltip_disabled_when_graph_on" | "tooltip_interactive_interaction_time_indicator" | "tooltip_vk_logo" | "tooltip_vk_video_logo" | "tooltip_autoplay_off" | "tooltip_autoplay_on" | "tooltip_context_menu_open" | "tooltip_context_menu_close" | "download_video_caption" | "hotkey_helper_current_volume" | "hotkey_map_modal_title" | "hotkey_map_modal_close_btn_text" | "hotkey_map_group_title_common" | "hotkey_map_group_title_playback" | "hotkey_map_group_title_subtitles" | "hotkey_map_group_title_episodes" | "hotkey_map_item_mute_description" | "hotkey_map_item_mute_value" | "hotkey_map_item_volume_down_description" | "hotkey_map_item_volume_down_value" | "hotkey_map_item_volume_up_description" | "hotkey_map_item_volume_up_value" | "hotkey_map_item_pip_description" | "hotkey_map_item_pip_value" | "hotkey_map_item_full_screen_description" | "hotkey_map_item_full_screen_value" | "hotkey_map_item_show_context_menu_description" | "hotkey_map_item_show_context_menu_value" | "hotkey_map_item_show_hotkey_map_description" | "hotkey_map_item_show_hotkey_map_value" | "hotkey_map_item_play_toggle_description" | "hotkey_map_item_play_toggle_value" | "hotkey_map_item_seek_backward_description" | "hotkey_map_item_seek_backward_value" | "hotkey_map_item_seek_forward_description" | "hotkey_map_item_seek_forward_value" | "hotkey_map_item_fast_seek_backward_description" | "hotkey_map_item_fast_seek_backward_value" | "hotkey_map_item_fast_seek_forward_description" | "hotkey_map_item_fast_seek_forward_value" | "hotkey_map_item_rate_down_description" | "hotkey_map_item_rate_down_value" | "hotkey_map_item_rate_up_description" | "hotkey_map_item_rate_up_value" | "hotkey_map_item_prev_frame_description" | "hotkey_map_item_prev_frame_value" | "hotkey_map_item_next_frame_description" | "hotkey_map_item_next_frame_value" | "hotkey_map_item_jump_seek_description" | "hotkey_map_item_jump_seek_value" | "hotkey_map_item_subtitles_toggle_description" | "hotkey_map_item_subtitles_toggle_value" | "hotkey_map_item_prev_episode_description" | "hotkey_map_item_prev_episode_pc_value" | "hotkey_map_item_prev_episode_mac_value" | "hotkey_map_item_next_episode_description" | "hotkey_map_item_next_episode_pc_value" | "hotkey_map_item_next_episode_mac_value" | "hotkey_map_item_next_video_description" | "hotkey_map_item_next_video_value" | "hotkey_map_item_prev_video_description" | "hotkey_map_item_prev_video_value" | "waiting_live_day_value" | "waiting_live_hour_value" | "waiting_live_minute_value" | "waiting_live_second_value" | "waiting_live_colon" | "waiting_live_upcoming_title" | "waiting_live_timer_title" | "waiting_live_recover_title" | "waiting_record_title" | "aria_label_submenu_traffic_saving" | "aria_label_submenu_back" | "aria_label_menu_quality" | "aria_label_menu_rate" | "aria_label_menu_subtitle" | "aria_label_menu_download" | "aria_label_new_tab_alert" | "aria_label_menu_debug_overlay" | "aria_label_menu_rotate" | "aria_label_menu_loop" | "aria_label_debug_panel" | "aria_label_context_menu" | "aria_label_video_player" | "aria_label_spherical_control" | "aria_label_menu_audio_languages" | "aria_label_settings" | "aria_label_autoplay" | "menu_audio_languages" | "audio_stream_display_language_label" | "audio_stream_display_language_label_index" | "audio_stream_display_label_index" | "audio_stream_display_language_index" | "audio_stream_display_unknown" | "end_screen_next_video" | "end_screen_recommended_video" | "other_quality" | "high_quality" | "high_quality_description" | "auto_quality_limit" | "traffic_saving_quality" | "traffic_saving_quality_description" | "quality_applience" | "quality_applience_action" | "default_quality_for_any_video" | "slow_video_notification_button" | "slow_video_notification_force_description" | "slow_video_notification_suggest_description" | "double_forward_label" | "preview_track_notification_text" | "preview_track_close_tooltip";
3
3
  export type LanguagePack = Record<Key, string>;
4
4
  export type LanguageConfig = {
5
- language: string;
6
- fallback: InterfaceLanguage;
7
- pack: LanguagePack;
5
+ language: string;
6
+ fallback: InterfaceLanguage;
7
+ pack: LanguagePack;
8
8
  };