@vkontakte/videoplayer 1.1.32-dev.a1e89bfc.0 → 1.1.32-dev.a44460f3.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/index.d.ts CHANGED
@@ -105,7 +105,7 @@ interface ISDKConfig {
105
105
  statistics: IOptionalConfig;
106
106
  }
107
107
 
108
- 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_chromecast' | 'menu_copy_debug' | 'menu_save_debug' | 'menu_debug_overlay' | 'pip_dummy_title' | 'submenu_traffic_saving' | 'submenu_quality' | 'submenu_playback_rate' | 'submenu_settings' | '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_interactive_seek' | 'tooltip_interactive_graph_off' | 'tooltip_interactive_graph_on' | 'tooltip_live' | 'tooltip_episodes' | 'tooltip_volume' | 'tooltip_volume_muted' | '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_vk_logo' | 'tooltip_vk_video_logo' | '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_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' | '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_record_title';
108
+ 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_chromecast' | 'menu_copy_debug' | 'menu_save_debug' | 'menu_debug_overlay' | 'pip_dummy_title' | 'submenu_traffic_saving' | 'submenu_quality' | 'submenu_playback_rate' | 'submenu_settings' | '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_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_vk_logo' | 'tooltip_vk_video_logo' | '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_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' | '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_record_title';
109
109
  type LanguagePack = Record<Key, string>;
110
110
  type LanguageConfig = {
111
111
  language: string;
@@ -157,6 +157,10 @@ interface IVKVideoPlayerCallbacks {
157
157
  onReplayInteractiveVideo?: () => void;
158
158
  onInteractiveHistoryChanged?: (chapterIds: string[]) => void;
159
159
  onDisabledInteractiveClick?: () => void;
160
+ onDisabledPlayPrevChapterClick?: (message: string | undefined) => void;
161
+ onDisabledSeekToInteractiveClick?: (message: string | undefined) => void;
162
+ onPrevVideoClick?: () => boolean;
163
+ onNextVideoClick?: () => boolean;
160
164
  uiInfo?: {
161
165
  onControlsVisibleChanged?: (value?: boolean) => void;
162
166
  onIsMobileChanged?: (value?: boolean) => void;
@@ -175,6 +179,7 @@ interface IVKVideoPlayerCallbacks {
175
179
  onSettingsChanged?: (value?: IControlInfo) => void;
176
180
  onFullscreenChanged?: (value?: IControlInfo) => void;
177
181
  onChromecastChanged?: (value?: IControlInfo) => void;
182
+ onPipChanged?: (value?: IControlInfo) => void;
178
183
  onVkLogoChanged?: (value?: IControlInfo) => void;
179
184
  onPlayerSizeChanged?: (value?: {
180
185
  width: number;
@@ -230,6 +235,16 @@ interface IInteractiveData {
230
235
  visitedChapters?: string[];
231
236
  videosInfo?: VideoInfo[];
232
237
  videoLoader?: (owner_id: string, video_id: string) => Promise<IVKVideoPlayerConfig>;
238
+ historyApi: {
239
+ get: (videoId: string) => Promise<number[]>;
240
+ save: (videoId: string, videoIds: number[]) => Promise<void>;
241
+ };
242
+ projectInfo: {
243
+ pid: string;
244
+ title: string;
245
+ videoId: string;
246
+ variantPayloadType: string;
247
+ };
233
248
  }
234
249
  interface AdditionalButton {
235
250
  iconUrl: string;
@@ -280,8 +295,14 @@ interface IVKVideoPlayerConfig {
280
295
  additionalButtons?: AdditionalButton[];
281
296
  }
282
297
  interface IControlInfo {
298
+ /** @deprecated Используйте новое поле left */
283
299
  positionStartX: number;
300
+ /** @deprecated Используйте новое поле right */
284
301
  positionEndX: number;
302
+ left: number;
303
+ right: number;
304
+ top: number;
305
+ bottom: number;
285
306
  isDisplayed: boolean;
286
307
  }
287
308
  declare const enum PlayerPhase {
@@ -293,13 +314,24 @@ declare const enum PlayerPhase {
293
314
  WaitingRecord = "waitingRecord"
294
315
  }
295
316
  interface IAnnotationsApi {
317
+ /** @deprecated Больше не используется. Контейнер теперь определяется самостоятельно */
296
318
  registryRootContainer: (container: HTMLElement) => void;
319
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
297
320
  addLayer: (layerName: string) => HTMLElement | never;
321
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
298
322
  getLayer: (layerName: string) => HTMLElement | undefined;
323
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
299
324
  removeLayer: (layerName: string) => void;
325
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
300
326
  clearLayer: (layerName: string) => void;
327
+ /** @deprecated Метод больше не является публичным */
301
328
  detach: () => void;
329
+ /** @deprecated Больше нет необходимости переназначать контейнер для аннотаций в ходе работы плеера */
302
330
  reattach: () => void;
331
+ add: (annotationName: string, annotation: HTMLElement) => void | never;
332
+ get: (annotationName: string) => HTMLElement | never;
333
+ remove: (annotationName: string) => void | never;
334
+ clear: () => void;
303
335
  destroy: () => void;
304
336
  }
305
337
  interface HotKeyMapItem {
@@ -318,15 +350,31 @@ interface HotKeyMapData {
318
350
 
319
351
  declare class AnnotationsApi implements IAnnotationsApi {
320
352
  private rootAnnotationsContainer;
321
- private layers;
353
+ private annotations;
354
+ private subscriptions;
355
+ private mutationObserver;
356
+ private playerSize;
357
+ constructor(container: HTMLElement);
358
+ add(annotationName: string, annotation: HTMLElement): void | never;
359
+ get(annotationName: string): HTMLElement | never;
360
+ remove(annotationName: string): void | never;
361
+ clear(): void;
362
+ destroy(): void;
363
+ private isElementExceedsBoundaries;
364
+ /** @deprecated Больше не используется. Контейнер теперь определяется самостоятельно */
322
365
  registryRootContainer(container: HTMLElement): void;
366
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
323
367
  addLayer(layerName: string): HTMLElement | never;
368
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
324
369
  getLayer(layerName: string): HTMLElement | undefined;
370
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
325
371
  removeLayer(layerName: string): void;
372
+ /** @deprecated Логики со слоями больше нет. Теперь все аннотации добавляются на единый общий слой */
326
373
  clearLayer(layerName: string): void;
374
+ /** @deprecated Метод больше не является публичным */
327
375
  detach(): void;
376
+ /** @deprecated Больше нет необходимости переназначать контейнер для аннотаций в ходе работы плеера */
328
377
  reattach(): void;
329
- destroy(): void;
330
378
  }
331
379
 
332
380
  declare class VKVideoPlayer extends HTMLElement {
@@ -335,8 +383,9 @@ declare class VKVideoPlayer extends HTMLElement {
335
383
  private store?;
336
384
  private statistics;
337
385
  private sentry;
338
- private readonly _shadowRoot;
339
- private readonly playerContainer;
386
+ private _shadowRoot;
387
+ private playerContainer;
388
+ private rootContainer;
340
389
  private uiConfig;
341
390
  private coreConfig;
342
391
  private interactiveController;
@@ -353,11 +402,12 @@ declare class VKVideoPlayer extends HTMLElement {
353
402
  private readonly subscription;
354
403
  annotationsApi: AnnotationsApi | undefined;
355
404
  private createPlayerTimeout;
356
- private interactiveProjectInfo;
405
+ private prevVsid;
357
406
  private isInited;
358
407
  constructor();
359
- connectedCallback(): void;
408
+ private connectedCallback;
360
409
  private disconnectedCallback;
410
+ private initPlayerRootContainers;
361
411
  private needToShowNextPrevButtons;
362
412
  private isNextButtonActive;
363
413
  private isPrevButtonActive;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vkontakte/videoplayer",
3
- "version": "1.1.32-dev.a1e89bfc.0",
3
+ "version": "1.1.32-dev.a44460f3.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.99-dev.49004322.0",
53
- "@vkontakte/videoplayer-interactive": "1.0.8-dev.676547d.0",
54
- "@vkontakte/videoplayer-shared": "1.0.33-dev.d87ce454.0",
55
- "@vkontakte/videoplayer-statistics": "1.0.46-dev.df8758f1.0"
52
+ "@vkontakte/videoplayer-core": "2.0.99-dev.f7e25cbd.0",
53
+ "@vkontakte/videoplayer-interactive": "1.0.8-dev.3c1e79f3.0",
54
+ "@vkontakte/videoplayer-shared": "1.0.33-dev.fef0bd51.0",
55
+ "@vkontakte/videoplayer-statistics": "1.0.46-dev.e2cd6af5.0"
56
56
  }
57
57
  }