@vkontakte/videoplayer 1.1.64-beta.0 → 1.1.64-dev.095ddfcb.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/videoplayer",
3
- "version": "1.1.64-beta.0",
3
+ "version": "1.1.64-dev.095ddfcb.0",
4
4
  "author": "vk.com",
5
5
  "description": "Videoplayer based on the vk.com platform",
6
6
  "homepage": "https://vk.com",
@@ -55,9 +55,9 @@
55
55
  ],
56
56
  "dependencies": {
57
57
  "@adtech/rbadman": "2.2.57",
58
- "@vkontakte/videoplayer-core": "2.0.134-beta.0",
59
- "@vkontakte/videoplayer-interactive": "1.0.39-beta.0",
60
- "@vkontakte/videoplayer-shared": "1.0.62-beta.0",
61
- "@vkontakte/videoplayer-statistics": "1.0.80-beta.0"
58
+ "@vkontakte/videoplayer-core": "2.0.134-dev.7c887c5b.0",
59
+ "@vkontakte/videoplayer-interactive": "1.0.39-dev.1b1e0ff2.0",
60
+ "@vkontakte/videoplayer-shared": "1.0.62-dev.effde8f2.0",
61
+ "@vkontakte/videoplayer-statistics": "1.0.80-dev.537a6b8f.0"
62
62
  }
63
63
  }
@@ -34,6 +34,7 @@ interface IConfig {
34
34
  useAdmanFromNPM: boolean;
35
35
  volumeMultiplier: number;
36
36
  isVsidOriginal: boolean;
37
+ usePuid: boolean;
37
38
  }
38
39
  export declare class AdmanWrapper {
39
40
  private adman;
@@ -51,6 +52,7 @@ export declare class AdmanWrapper {
51
52
  private runtimeTimeout;
52
53
  private useAdmanFromNPM;
53
54
  private isVsidOriginal;
55
+ private usePuid;
54
56
  private watchDogTimeout;
55
57
  events: {
56
58
  init$: Subject<void>;
@@ -20,7 +20,6 @@ export type Context = {
20
20
  onCopyDataClick: () => void;
21
21
  onSaveTraceDataClick: () => void;
22
22
  toggleShowDebugInfo: () => void;
23
- debugPanelVisible: boolean;
24
23
  };
25
24
  /**
26
25
  * Мапа элементов меню, которые показываются на первом уровне.
@@ -79,6 +79,7 @@ type BaseSubMenuItem<U = any> = {
79
79
  label?: string;
80
80
  sublabel?: string;
81
81
  ariaLabel?: string;
82
+ dataTestid?: string;
82
83
  };
83
84
  export type SubMenuItemOpenSubMenu = {
84
85
  type: SubMenuItemType.OPEN_SUB_MENU;
package/types/config.d.ts CHANGED
@@ -37,6 +37,7 @@ export interface IUIConfig {
37
37
  useAdmanFromNPM: boolean;
38
38
  volumeMultiplier: number;
39
39
  isVsidOriginal: boolean;
40
+ usePuid: boolean;
40
41
  };
41
42
  /**
42
43
  * Если нет ранее сохранённого значения громкости будет использовано это
@@ -184,6 +185,12 @@ export interface IUIConfig {
184
185
  buttonColor: string | null;
185
186
  buttonToggleOnColor: string | null;
186
187
  focusedColor: string | null;
188
+ font: string | null;
189
+ focusedOutlineWidth: string | null;
190
+ focusedOutlineRadius: string | null;
191
+ controlsDesktopPaddingHorizontal: string | null;
192
+ timelinePaddingHorizontal: string | null;
193
+ settingsBackgroundColor: string | null;
187
194
  };
188
195
  }
189
196
  export declare const defaultConfig: IUIConfig;
@@ -0,0 +1 @@
1
+ export declare const SUBTITLE_OFF_VALUE = "off";
@@ -7,7 +7,7 @@ import type { InteractiveRange } from '@vkontakte/videoplayer-interactive';
7
7
  import type { Readable, Writable } from 'svelte/store';
8
8
  import { AdmanWrapper } from '../components/Ads/admanWrapper';
9
9
  import type { Key, LanguageConfig } from '../translation/types';
10
- import type { AdditionalButtonDeprecated, ControlsKeys, HotKeyMapData, IAnnotationsApi, IControlInfo, IDisabledControls, IInteractiveData, IPictureInPictureApi, IPlayerControlsRef, IPlayerPhase, ITimelinePreviewThumbsData, IVideoEpisode, IVKVideoPlayerCallbacks, IVKVideoPlayerUICallbacks, Position, VideoPlaybackRate, VideoPlayerView, VideoQualityForRender, VideoQualityUI, VideoSubtitle, VideoSubtitleParsed } from '../types';
10
+ import type { AdditionalButtonDeprecated, ControlsKeys, HotKeyMapData, IAnnotationsApi, IControlInfo, IDisabledControls, IInteractiveData, IPictureInPictureApi, IPlayerPhase, ITimelinePreviewThumbsData, IVideoEpisode, IVKVideoPlayerCallbacks, IVKVideoPlayerUICallbacks, Position, VideoPlaybackRate, VideoPlayerView, VideoQualityForRender, VideoQualityUI, VideoSubtitle, VideoSubtitleParsed } from '../types';
11
11
  import { AdsPlaybackState } from '../types';
12
12
  import { type QualitySettingsAppliesTo } from '../utils/userSettings';
13
13
  import type { DebugData } from './utils';
@@ -31,10 +31,6 @@ export interface IAdsState {
31
31
  export interface IUIState {
32
32
  t: (key: Key, params?: Record<string, string>) => string;
33
33
  controlsVisible: Writable<boolean>;
34
- /**
35
- * Точечно скрываем контролы.
36
- */
37
- hiddenControls: Partial<Record<keyof IPlayerControlsRef, Writable<boolean>>>;
38
34
  /**
39
35
  * Определяет, могут ли вообще контролы быть показаны.
40
36
  */
@@ -1,5 +1,5 @@
1
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_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' | 'mobile_unmute' | 'playing_ads' | 'skip_ads_now' | 'skip_ads_after' | 'visit_advertiser' | 'aria_timeline' | 'aria_open_settings' | '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_disable' | 'traffic_saving_enable' | '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' | '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_off' | 'aria_label_submenu_traffic_saving_on' | '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_enable' | 'aria_label_menu_debug_overlay_disable' | 'aria_label_menu_rotate' | 'aria_label_menu_loop' | 'aria_label_debug_panel' | 'aria_label_context_menu_open' | 'aria_label_context_menu_close' | 'aria_label_video_player' | 'aria_label_spherical_control' | 'aria_label_menu_audio_languages' | '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';
2
+ export type Key = 'auto_quality_invariant' | 'auto_quality' | 'menu_quality' | 'menu_playback_rate' | 'menu_traffic_saving' | 'menu_report' | 'menu_pip' | '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' | 'mobile_unmute' | '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_on' | '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_volume' | 'aria_label_settings' | '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';
3
3
  export type LanguagePack = Record<Key, string>;
4
4
  export type LanguageConfig = {
5
5
  language: string;
@@ -1,6 +1,9 @@
1
- export declare const isAvailableVolumeChange: ({ isAudioDisabled, audioDisabledHintCallback, isAudioAvailable, audioIsNotExistHintCallback, }: {
1
+ type Params = {
2
2
  isAudioDisabled: boolean;
3
- audioDisabledHintCallback?: () => void;
4
3
  isAudioAvailable: boolean;
4
+ isAds: boolean;
5
+ audioDisabledHintCallback?: () => void;
5
6
  audioIsNotExistHintCallback?: () => void;
6
- }) => boolean;
7
+ };
8
+ export declare const isAvailableVolumeChange: ({ isAudioDisabled, isAudioAvailable, isAds, audioDisabledHintCallback, audioIsNotExistHintCallback, }: Params) => boolean;
9
+ export {};
@@ -1,5 +1,3 @@
1
- import type { IStore } from '../../store';
2
- import type { IPlayerControlsRef } from '../../types';
3
1
  /**
4
2
  * Если смотреть по порядку расположения типов, то чем дальше тип, тем выше у него zIndex.
5
3
  *
@@ -8,37 +6,16 @@ import type { IPlayerControlsRef } from '../../types';
8
6
  */
9
7
  export type SlotOverlay = 'over_video' | 'over_controls';
10
8
  export declare const SLOT_NAME = "annotation";
11
- export type HideControlsWhenIntersectedOptions = {
12
- observedSlotElementId: string;
13
- controlsToObserve: (keyof IPlayerControlsRef)[];
14
- };
15
9
  type AddOptions = {
16
10
  id: string;
17
11
  overlay: SlotOverlay;
18
- hideAllControls?: boolean;
19
- controlsBehaviour?: HideControlsWhenIntersectedOptions;
20
12
  };
21
13
  export declare class SlotsApi {
22
14
  private shadowRootContainer;
23
15
  private slots;
24
- private store;
25
- constructor();
26
- init(shadowRootContainer: HTMLElement, store: IStore | undefined): void;
27
- add(element: HTMLElement, options: AddOptions): void;
16
+ init(shadowRootContainer: HTMLElement): void;
17
+ add(element: HTMLElement, { overlay, id }: AddOptions): void;
28
18
  private setupSlotStyles;
29
- /**
30
- * Запускаем отслеживание пересечения между переданным элементом внутри слота и контролами.
31
- */
32
- private runHidingControlsWhenIntersected;
33
- /**
34
- * Ищем внутри рутового элемента слота элемент, с которым хотим отслеживать пересечение контролов.
35
- * Приходится делать через mutationObserver, так как данный элемент в силу асинхронной работы внешнего
36
- * фреймворка может появиться позже.
37
- * @param slotRootElement Рутовый элемент слота.
38
- * @param slotElementId Идентификатор элемента внутри слота, с которым хотим отслеживать пересечение контролов.
39
- * @param slotId Идентификатор слота.
40
- */
41
- private findSlotElement;
42
19
  remove(id: string): void;
43
20
  destroy(): void;
44
21
  haveSlots(): boolean;