@tivio/sdk-react 9.5.0 → 9.7.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.
@@ -7,6 +7,7 @@ import type { default as firebase_2 } from '@firebase/app-types';
7
7
  import type { default as firebase_3 } from 'firebase';
8
8
  import { FunctionComponentElement } from 'react';
9
9
  import type { GeoPoint } from '@firebase/firestore-types';
10
+ import type { google } from '@alugha/ima';
10
11
  import { OperatingSystem } from 'detect-browser';
11
12
  import type { PaletteType } from '@material-ui/core';
12
13
  import { default as React_2 } from 'react';
@@ -429,6 +430,8 @@ export declare interface Article extends RowItem, MonetizableItem, ReactableCont
429
430
  detailBanner?: string;
430
431
  episodeNumber?: number;
431
432
  seasonNumber?: number;
433
+ urlNames?: string[];
434
+ urlName?: string;
432
435
  }
433
436
 
434
437
  /**
@@ -440,10 +443,13 @@ export declare interface ArticleBlock {
440
443
  type: ArticleBlockType;
441
444
  htmlContent?: string;
442
445
  imageUrl?: string;
446
+ imageUrlOriginal?: string;
447
+ imageUrlContain?: string;
443
448
  textContent?: string;
444
449
  videoId?: string;
445
450
  isOverflowImage?: boolean;
446
451
  imageDescription?: string;
452
+ use16By9Container?: boolean;
447
453
  }
448
454
 
449
455
  export declare interface ArticleBlockField extends Omit<ArticleBlock, 'textContent' | 'htmlContent'> {
@@ -462,6 +468,7 @@ export declare type ArticleBlockType = 'PARAGRAPH' | 'IMAGE' | 'VIDEO' | 'HEADIN
462
468
  */
463
469
  declare interface ArticleDocumentSerialized {
464
470
  type: 'ARTICLE';
471
+ id: string;
465
472
  name: Translation;
466
473
  description?: Translation;
467
474
  metadata?: ArticleMetadata;
@@ -503,6 +510,7 @@ export declare interface ArticleTileSpecificData {
503
510
  description?: Translation;
504
511
  monetizations?: TileMonetizationData[];
505
512
  externalUrl?: string;
513
+ urlName?: UrlNamesType;
506
514
  }
507
515
 
508
516
  /**
@@ -835,6 +843,12 @@ export declare interface CommonSourceParams<T extends SourceType = SourceType> {
835
843
  videoPath?: string;
836
844
  }
837
845
 
846
+ /**
847
+ * @public
848
+ * Re-export of Google IMA CompanionAd type for use throughout the SDK
849
+ */
850
+ export declare type CompanionAd = google.ima.CompanionAd;
851
+
838
852
  /**
839
853
  * TODO it's the same as Customizations, not?
840
854
  * @internal
@@ -1112,6 +1126,9 @@ export declare const CountryToLangCodeMap: {
1112
1126
  CZ: LangCode;
1113
1127
  PL: LangCode;
1114
1128
  SK: LangCode;
1129
+ DE: LangCode;
1130
+ AT: LangCode;
1131
+ CH: LangCode;
1115
1132
  };
1116
1133
 
1117
1134
  /**
@@ -1251,6 +1268,7 @@ export declare enum CustomerId {
1251
1268
  MIRA_BOSAK = "MIRA_BOSAK",
1252
1269
  KOVACIC_360 = "KOVACIC_360",
1253
1270
  SIFRA_TV = "SIFRA_TV",
1271
+ TBL = "TBL",
1254
1272
  BLESK = "BLESK",
1255
1273
  NERUDA_TV = "NERUDA_TV",
1256
1274
  DAVID_FRANK_TV = "DAVID_FRANK_TV",
@@ -1492,6 +1510,7 @@ export declare interface CustomScript {
1492
1510
  src: string;
1493
1511
  event?: EventName;
1494
1512
  isAsync?: boolean;
1513
+ defer?: boolean;
1495
1514
  }
1496
1515
 
1497
1516
  /**
@@ -1794,6 +1813,7 @@ export declare interface EmitterInterface {
1794
1813
  isSupported: (even: string) => boolean;
1795
1814
  addListener: <T = unknown>(event: string, cb: (value: T) => Empty_2) => void;
1796
1815
  removeListener: <T = unknown>(event: string, cb: (value: T) => Empty_2) => void;
1816
+ emitEvent: (event: string, value?: unknown) => void;
1797
1817
  }
1798
1818
 
1799
1819
  /**
@@ -1860,6 +1880,15 @@ export declare const fetchBundle: (secret: string, conf: InternalConfig, checkBu
1860
1880
  */
1861
1881
  declare type FetchPackage = (url: string) => Promise<string>;
1862
1882
 
1883
+ export declare interface FinishSignUpRequest {
1884
+ token: string;
1885
+ fName: string;
1886
+ lName: string;
1887
+ email: string;
1888
+ password: string;
1889
+ langCode?: LangCode;
1890
+ }
1891
+
1863
1892
  /**
1864
1893
  * @public
1865
1894
  */
@@ -1887,6 +1916,7 @@ export declare interface ForbiddenOnCallError extends GenericOnCallError {
1887
1916
  }
1888
1917
 
1889
1918
  export declare enum ForbiddenReason {
1919
+ AD_BLOCKING = "AD_BLOCKING",
1890
1920
  MONETIZATION = "MONETIZATION",
1891
1921
  GEO_BLOCKING = "GEO_BLOCKING",
1892
1922
  EMAIL_ALREADY_EXISTS = "EMAIL_ALREADY_EXISTS",
@@ -1949,9 +1979,13 @@ export declare type GeoBlocking = {
1949
1979
  blacklist: Array<any>;
1950
1980
  };
1951
1981
 
1952
- export declare interface GetArticleRequest {
1982
+ export declare type GetArticleRequest = {
1953
1983
  id: string;
1954
- }
1984
+ } | {
1985
+ idOrUrlName: string;
1986
+ organizationId: string;
1987
+ language: LangCode;
1988
+ };
1955
1989
 
1956
1990
  export declare interface GetArticleResponse {
1957
1991
  article: ArticleDocumentSerialized;
@@ -2574,12 +2608,16 @@ export declare enum LangCode {
2574
2608
  HU = "hu"
2575
2609
  }
2576
2610
 
2611
+ export declare const LangCodeToTitle: Partial<Record<LangCode, string>>;
2612
+
2577
2613
  /**
2578
2614
  * All supported languages codes as in ISO 639-1
2579
2615
  * @public
2580
2616
  */
2581
2617
  export declare const languages: LangCode[];
2582
2618
 
2619
+ export declare type LanguageSelector = 'application' | 'content';
2620
+
2583
2621
  /**
2584
2622
  * Possible language key of all supported language mutations.
2585
2623
  * @public
@@ -2628,7 +2666,13 @@ export declare interface LeaderboardsRequest {
2628
2666
  */
2629
2667
  export declare interface LinkedVideo {
2630
2668
  video: Video;
2631
- type: 'CUT' | 'TRAILER' | 'BONUS' | 'CHILD' | 'TEASER' | 'TASTING' | 'VIRTUAL_PROGRAM' | 'LANGUAGE'
2669
+ type: 'CUT' | 'TRAILER' | 'BONUS' | 'CHILD'
2670
+ /**
2671
+ * Recommendation for the video that appears ahead of
2672
+ * algorithmic recommendations on the detail page. Works one-way: if A
2673
+ * links to B, B is recommended for A only (unless B links back).
2674
+ */
2675
+ | 'RECOMMENDED' | 'TEASER' | 'TASTING' | 'VIRTUAL_PROGRAM' | 'LANGUAGE'
2632
2676
  /**
2633
2677
  * Will render separate mini-player on top of the main one, playing given video.
2634
2678
  */
@@ -3168,11 +3212,6 @@ export declare type Nullable<T> = {
3168
3212
  [P in keyof T]: T[P] | null;
3169
3213
  };
3170
3214
 
3171
- /**
3172
- * @public
3173
- */
3174
- export declare type ObjectType = Record<string, any>;
3175
-
3176
3215
  /**
3177
3216
  * @public
3178
3217
  */
@@ -3928,6 +3967,7 @@ export declare interface PlayerWrapper {
3928
3967
  isPaused: boolean;
3929
3968
  isPlaying: boolean;
3930
3969
  isIdle: boolean;
3970
+ isFullscreen: boolean;
3931
3971
  language: LangCode | null;
3932
3972
  nextRecommendedVideo: Video | null;
3933
3973
  prerollCheck: PrerollCheck;
@@ -4013,11 +4053,15 @@ export declare enum PlayerWrapperEvents {
4013
4053
  /**
4014
4054
  * Triggered when an ad starts playing
4015
4055
  */
4016
- 'ad_started' = "ad_started",
4056
+ 'ad-started' = "ad-started",
4017
4057
  /**
4018
4058
  * Triggered when an ad finishes playing
4019
4059
  */
4020
- 'ad_ended' = "ad_ended"
4060
+ 'ad-ended' = "ad-ended",
4061
+ /**
4062
+ * Triggered when companion ads are available for the current ad
4063
+ */
4064
+ 'companion-ads' = "companion-ads"
4021
4065
  }
4022
4066
 
4023
4067
  /**
@@ -5410,6 +5454,14 @@ export declare type SdkReactConfig = Omit<TivioConfig, 'language'> & {
5410
5454
  language?: LangCode;
5411
5455
  };
5412
5456
 
5457
+ /**
5458
+ * @public
5459
+ */
5460
+ export declare interface SDKUserAuthCallbacks {
5461
+ onGoToLogin?: () => void;
5462
+ onGoToRegistration?: () => void;
5463
+ }
5464
+
5413
5465
  /**
5414
5466
  * @public
5415
5467
  * @deprecated sections are no longer used.
@@ -5715,19 +5767,25 @@ export declare interface SimplifiedVideoController {
5715
5767
  }) => void): void;
5716
5768
  /**
5717
5769
  * Add an event listener for ad started events
5718
- * @param event - Must be 'ad_started'
5770
+ * @param event - Must be 'ad-started'
5719
5771
  * @param callback - Function called when an ad starts playing
5720
5772
  */
5721
- addEventListener(event: 'ad_started', callback: (adMetadata: AdMetadata & {
5773
+ addEventListener(event: 'ad-started', callback: (adMetadata: AdMetadata & {
5722
5774
  customAdMetadata?: Record<string, unknown> | null;
5723
5775
  ctaElement: HTMLElement | null;
5724
5776
  }) => void): void;
5725
5777
  /**
5726
5778
  * Add an event listener for ad ended events
5727
- * @param event - Must be 'ad_ended'
5779
+ * @param event - Must be 'ad-ended'
5728
5780
  * @param callback - Function called when an ad finishes playing
5729
5781
  */
5730
- addEventListener(event: 'ad_ended', callback: () => void): void;
5782
+ addEventListener(event: 'ad-ended', callback: () => void): void;
5783
+ /**
5784
+ * Add an event listener for companion ads events
5785
+ * @param event - Must be 'companion-ads'
5786
+ * @param callback - Function called when companion ads are available
5787
+ */
5788
+ addEventListener(event: 'companion-ads', callback: (companionAds: CompanionAd[]) => void): void;
5731
5789
  /**
5732
5790
  * Remove an event listener
5733
5791
  * @param event - The event name to stop listening for
@@ -6374,6 +6432,10 @@ export declare interface TivioComponents {
6374
6432
  ContentSortPicker: React_2.ComponentType<ContentSortPickerProps>;
6375
6433
  WebTivioProVideoScreen: React_2.ComponentType<WebTivioProVideoScreenProps>;
6376
6434
  RemoteController: React_2.ComponentType<RemoteControllerProps>;
6435
+ MonetizationsSelectOverlay: React_2.ComponentType;
6436
+ MonetizationsSelectOverlayContextProvider: React_2.ComponentType<{
6437
+ children: React_2.ReactNode;
6438
+ }>;
6377
6439
  }
6378
6440
 
6379
6441
  /**
@@ -6398,7 +6460,7 @@ export declare interface TivioConfig {
6398
6460
  };
6399
6461
  secret: string;
6400
6462
  /**
6401
- * Language used when isLanguageSelectionEnabled is false | undefined or when not possible to load language from local storage or localization worker
6463
+ * Language used when no languageSelector is set or when not possible to load language from local storage or localization worker
6402
6464
  */
6403
6465
  language: LangCode;
6404
6466
  debug?: boolean;
@@ -6406,15 +6468,16 @@ export declare interface TivioConfig {
6406
6468
  firebaseApp?: any | null;
6407
6469
  firebaseFactory?: (config: object, appName?: string) => firebase_2.FirebaseApp;
6408
6470
  authDomainOverride?: string;
6471
+ /**
6472
+ * @deprecated this field is no longer in use and has no impact when set.
6473
+ */
6409
6474
  firestore?: any | null;
6410
6475
  currency: Currency;
6411
6476
  /**
6412
- * A flag that indicates whether the language selection feature is enabled.
6413
- * Language is then stored to local storage 'tivio-user-language'.
6414
- * If nothing is stored in local storage, then language is set according to location
6415
- * When set to `true`, users are allowed to choose their preferred language
6477
+ * Represents an optional array of LanguageSelector objects.
6478
+ * Used to define and manage a list of supported languages for different language-usages (user, content,...).
6416
6479
  */
6417
- isLanguageSelectionEnabled?: boolean;
6480
+ languageSelectors?: Partial<Record<LanguageSelector, LangCode[]>>;
6418
6481
  applicationId?: string;
6419
6482
  isTivioProApp?: boolean;
6420
6483
  lockApplicationHandle?: string;
@@ -6441,6 +6504,7 @@ export declare interface TivioConfig {
6441
6504
  * customTokenCookiesDomain: 'example.com'
6442
6505
  */
6443
6506
  customTokenCookiesDomain?: string;
6507
+ enableGtmPlayerEvents?: boolean;
6444
6508
  }
6445
6509
 
6446
6510
  /**
@@ -6644,7 +6708,9 @@ export declare type TivioInternalProviders = {
6644
6708
  UserContextProvider: React_2.ComponentType<{
6645
6709
  children?: React_2.ReactNode;
6646
6710
  }>;
6647
- MonetizationsSelectOverlayContextProvider: React_2.ComponentType;
6711
+ MonetizationsSelectOverlayContextProvider: React_2.ComponentType<{
6712
+ children: React_2.ReactNode;
6713
+ }>;
6648
6714
  QerkoOverlayContextProvider: React_2.ComponentType;
6649
6715
  /**
6650
6716
  * @deprecated do not use, this provider will be removed in the future
@@ -6692,12 +6758,18 @@ export declare type TivioJsBundleExposedApi = {
6692
6758
  /**
6693
6759
  * Get tag by its id.
6694
6760
  * @param tagId - tag id
6695
- * @returns {Promise<Tag | null>} widget or null if tag does not exists
6761
+ * @returns {Promise<Tag | null>} tag or null if tag does not exists
6696
6762
  */
6697
6763
  getTagById: (tagId: string) => Promise<Tag | null>;
6764
+ /**
6765
+ * Get tags by their ids.
6766
+ * @param tagIds - tag ids
6767
+ * @returns {Promise<Tag[]} list of tags for given ids
6768
+ */
6769
+ getTagsByIds: (tagIds: string[]) => Promise<Tag[]>;
6698
6770
  createPlayerWrapper: (playerImplementation: PlayerInterfaceForPlayerWrapper) => TivioPlayerWrapper;
6699
6771
  destroy: () => Promise<void>;
6700
- } & Pick<TivioGetters, 'getVideoById' | 'getScreenById' | 'organization' | 'getUser'> & Pick<TivioSubscriptions, 'subscribeToVideo' | 'subscribeToItemsInRow' | 'subscribeToRowsInScreen'> & Pick<TivioAuth, 'createUserWithEmailAndPassword' | 'signInWithEmailAndPassword' | 'resetPassword' | 'signOut'> & Pick<TivioSetters, 'setBundleVersion' | 'setUser' | 'setLanguage' | 'setStorageManager'>;
6772
+ } & Pick<TivioGetters, 'getVideoById' | 'getScreenById' | 'organization' | 'getUser'> & Pick<TivioSubscriptions, 'subscribeToVideo' | 'subscribeToItemsInRow' | 'subscribeToRowsInScreen'> & Pick<TivioAuth, 'createUserWithEmailAndPassword' | 'signInWithEmailAndPassword' | 'resetPassword' | 'signOut'> & Pick<TivioSetters, 'setBundleVersion' | 'setUser' | 'setLanguage' | 'setContentLanguage' | 'setStorageManager'>;
6701
6773
 
6702
6774
  /**
6703
6775
  * @public
@@ -6769,6 +6841,7 @@ export declare type TivioSetters = {
6769
6841
  * @param language
6770
6842
  */
6771
6843
  setLanguage: (language: LangCode) => void;
6844
+ setContentLanguage: (language: LangCode) => void;
6772
6845
  setStorageManager: (storageManager: StorageManager_2) => void;
6773
6846
  setUser: (userId: string | null, userPayload?: UserPayload) => Promise<void>;
6774
6847
  };
@@ -6797,10 +6870,6 @@ export declare type TivioSubscriptions = {
6797
6870
  subscribeToItemsInRow: SubscribeToItemsInRow;
6798
6871
  subscribeToRowsInScreen: SubscribeToRowsInScreen;
6799
6872
  subscribeToTaggedVideos: SubscribeToTaggedVideos;
6800
- registerOverlayCallbacks: (callbacks: {
6801
- onShow: () => void;
6802
- onHide: () => void;
6803
- }) => void;
6804
6873
  };
6805
6874
 
6806
6875
  /**
@@ -6887,7 +6956,7 @@ export declare interface TvAppProps {
6887
6956
  /**
6888
6957
  * @public
6889
6958
  */
6890
- export declare interface TvChannel extends RowItem {
6959
+ export declare interface TvChannel extends RowItem, MonetizableItem {
6891
6960
  id: string;
6892
6961
  itemType: ROW_ITEM_TYPES.TV_CHANNEL;
6893
6962
  name: string;
@@ -6898,17 +6967,11 @@ export declare interface TvChannel extends RowItem {
6898
6967
  logoPendingOverlayWidth?: string;
6899
6968
  hls: string;
6900
6969
  dash: string;
6901
- /**
6902
- * Returns all transactions and subscriptions applied to this tv channel.
6903
- * Transactions before subscriptions, sorted by price ascending.
6904
- */
6905
- getPurchasableMonetizations(options?: GetPurchasableMonetizationsOptions): PurchasableMonetization[];
6906
6970
  getSourceUrl(options?: {
6907
6971
  language?: LangCode;
6908
6972
  }): Promise<GetSourceUrlResponse & {
6909
6973
  language?: LangCode;
6910
6974
  }>;
6911
- purchasableMonetization: any | null;
6912
6975
  price: number;
6913
6976
  cover: string;
6914
6977
  isPlayable: boolean;
@@ -7022,6 +7085,10 @@ export declare type UpdateNotificationSettingsResponse = Promise<boolean>;
7022
7085
 
7023
7086
  export declare type UpsertCommentResponse = AddEditCommentResponse | DeleteCommentResponse;
7024
7087
 
7088
+ export declare type UrlNamesType = {
7089
+ [key in LangCode]?: string[];
7090
+ };
7091
+
7025
7092
  /**
7026
7093
  * @public
7027
7094
  */
@@ -7651,23 +7718,18 @@ export declare type VastApiFramework = string | 'VPAID' | null;
7651
7718
  * @public
7652
7719
  */
7653
7720
  export declare enum VastProvider {
7654
- CNC_PREBID = "cnc-prebid",
7655
7721
  CNC_STARGAZE_PREROLL_1 = "cnc-stargaze-preroll-1",
7656
7722
  CNC_STARGAZE_PREROLL_2 = "cnc-stargaze-preroll-2",
7657
7723
  CNC_STARGAZE_MIDROLL = "cnc-stargaze-midroll",
7658
- ETARGET_PREBID = "etarget-prebid",
7659
7724
  FALLBACK_HLS = "fallback-hls",
7660
7725
  FALLBACK_MP4 = "fallback",
7661
7726
  GARAZ_TV = "garaz.tv",
7662
7727
  GARAZ_TV_DEV = "garaz.tv.dev",
7663
- IMPRESSION_MEDIA_PREBID = "impressionMedia-prebid",
7664
7728
  JOJ_ADFORM = "joj",
7665
7729
  JOJ_SMART = "joj-smart",
7666
7730
  JOJ_AD_MANAGER_VOD_PREROLL = "joj-ad-manager-vod-preroll",
7667
7731
  JOJ_AD_MANAGER_VOD_MIDROLL = "joj-ad-manager-vod-midroll",
7668
7732
  JOJ_AD_MANAGER_LIVE_PREROLL = "joj-ad-manager-live-preroll",
7669
- MALL_TV = "malltv",
7670
- MALL_TV_PREBID = "malltv-prebid",
7671
7733
  PRIMA = "prima",
7672
7734
  TEST = "test",
7673
7735
  TEST_VPAID = "test-vpaid",
@@ -7779,6 +7841,7 @@ export declare interface Video extends RowItem, MonetizableItem, ReactableConten
7779
7841
  forcedCapabilities: PlayerCapability[] | null;
7780
7842
  mainLinkedVideoId?: string;
7781
7843
  getLinkedVideoIdByLanguage: (lang: LangCode) => string | undefined;
7844
+ externals?: VideoExternals;
7782
7845
  }
7783
7846
 
7784
7847
  /**
@@ -7814,9 +7877,10 @@ export declare interface VideoController {
7814
7877
  muted: boolean;
7815
7878
  volume: number;
7816
7879
  }) => void): void;
7817
- addEventListener(event: 'ad_started', callback: (value: AdMetadata & {
7880
+ addEventListener(event: 'ad-started', callback: (value: AdMetadata & {
7818
7881
  adCtaElement: HTMLElement | null;
7819
7882
  }) => void): void;
7883
+ addEventListener(event: 'companion-ads', callback: (value: CompanionAd[]) => void): void;
7820
7884
  /**
7821
7885
  * Remove an event listener
7822
7886
  * @param event - The event name to stop listening for
@@ -8072,7 +8136,7 @@ export declare interface VideoTileSpecificData {
8072
8136
  assets?: AssetsField;
8073
8137
  episodeNumber?: number;
8074
8138
  seasonNumber?: number;
8075
- urlName?: VideoUrlNames;
8139
+ urlName?: UrlNamesType;
8076
8140
  monetizations?: VideoTileMonetizationData[];
8077
8141
  description?: Translation;
8078
8142
  }
@@ -8141,13 +8205,6 @@ export declare enum VideoType {
8141
8205
  CHILD = "CHILD"
8142
8206
  }
8143
8207
 
8144
- /**
8145
- * @public
8146
- */
8147
- export declare type VideoUrlNames = {
8148
- [key in LangCode]?: string[];
8149
- };
8150
-
8151
8208
  export declare interface ViewCountItem {
8152
8209
  /**
8153
8210
  * Unix timestamp
@@ -8318,6 +8375,7 @@ export declare interface Watermark {
8318
8375
 
8319
8376
  export declare interface WebConfig {
8320
8377
  customer: CustomerId;
8378
+ customerName?: string;
8321
8379
  title?: string;
8322
8380
  description?: string;
8323
8381
  logo: string;
@@ -8333,16 +8391,35 @@ export declare interface WebConfig {
8333
8391
  * Text on buy voucher button, if not provided the default text will be used.
8334
8392
  */
8335
8393
  buyVoucherButtonText?: string;
8394
+ /**
8395
+ * If true, the voucher button will be shown in the header.
8396
+ */
8397
+ showVoucherButton?: boolean;
8336
8398
  allowSearch?: boolean;
8337
8399
  logoHeight?: string;
8338
8400
  mobileLogoHeight?: string;
8339
8401
  buySubscriptionButtonText?: string;
8402
+ isHidden?: boolean;
8403
+ /**
8404
+ * Additional menu items to be shown in the rounded menu in the header (external or internal)
8405
+ */
8406
+ additionalMenuItems?: {
8407
+ name: string;
8408
+ href: string;
8409
+ newTab?: boolean;
8410
+ }[];
8340
8411
  };
8341
8412
  footer?: {
8413
+ isHidden?: boolean;
8342
8414
  /**
8343
8415
  * If logo is different from logo in header
8344
8416
  */
8345
8417
  logo?: string;
8418
+ /**
8419
+ * @fixme https://app.clickup.com/t/90151157205/TIV-1515
8420
+ * If multiple logos are provided, the multiple logos are prioritized over the single logo.
8421
+ */
8422
+ multipleLogos?: string[];
8346
8423
  showLogo?: boolean;
8347
8424
  /**
8348
8425
  * right panel - various type of contacts to owners of website
@@ -8385,6 +8462,19 @@ export declare interface WebConfig {
8385
8462
  email?: string;
8386
8463
  };
8387
8464
  cookieSettingsLabel?: string;
8465
+ disclaimer?: string;
8466
+ showDivider?: boolean;
8467
+ /**
8468
+ * Additional links to be shown in the footer
8469
+ */
8470
+ additionalLinks?: {
8471
+ name: string;
8472
+ href: string;
8473
+ }[];
8474
+ /**
8475
+ * Hide footer on these paths
8476
+ */
8477
+ hideFooter?: string[];
8388
8478
  partners?: {
8389
8479
  name: string;
8390
8480
  logo: string;
@@ -8400,6 +8490,14 @@ export declare interface WebConfig {
8400
8490
  * so app requires authorization to see them.
8401
8491
  */
8402
8492
  securedContent?: boolean;
8493
+ /**
8494
+ * If true, then auth is required for all pages.
8495
+ */
8496
+ isAuthRequired?: boolean;
8497
+ /**
8498
+ * If true, then buy subscription button is hidden.
8499
+ */
8500
+ hideBuySubscriptionButton?: boolean;
8403
8501
  /**
8404
8502
  * CSS styles for application background.
8405
8503
  */
@@ -8418,6 +8516,10 @@ export declare interface WebConfig {
8418
8516
  * Default is TRUE (see {@link AppLoadingOverlay}
8419
8517
  */
8420
8518
  showProgressBar?: boolean;
8519
+ /**
8520
+ * URL to background image shown on loading screen.
8521
+ */
8522
+ backgroundUrl?: string;
8421
8523
  };
8422
8524
  /**
8423
8525
  * Slug of all pages where user will be forced to fill login form if he's not logged in.
@@ -8445,6 +8547,7 @@ export declare interface WebConfig {
8445
8547
  */
8446
8548
  showChooseSubscription?: boolean;
8447
8549
  registration?: {
8550
+ logoMarginTop?: string;
8448
8551
  /**
8449
8552
  * Customization of auth form
8450
8553
  */
@@ -8464,6 +8567,7 @@ export declare interface WebConfig {
8464
8567
  showAcceptanceOfTermsAndConditions?: boolean;
8465
8568
  };
8466
8569
  registrationConsent?: string;
8570
+ socialRegistrationConsent?: string;
8467
8571
  };
8468
8572
  payment?: {
8469
8573
  paymentConsent?: string;
@@ -8474,9 +8578,11 @@ export declare interface WebConfig {
8474
8578
  */
8475
8579
  supportVouchers?: boolean;
8476
8580
  /**
8477
- * Config for Google Tag Manager
8581
+ * Config for Google Tag Manager with optional shouldWaitForDidomi flag
8478
8582
  */
8479
- googleTagManagerConfig?: TagManagerArgs;
8583
+ googleTagManagerConfig?: TagManagerArgs & {
8584
+ shouldWaitForDidomi?: boolean;
8585
+ };
8480
8586
  customScripts?: CustomScript[];
8481
8587
  /**
8482
8588
  * Favicons config
@@ -8495,6 +8601,8 @@ export declare interface WebConfig {
8495
8601
  };
8496
8602
  monetizationSelectOverlay?: {
8497
8603
  title?: string;
8604
+ benefitLeftIcon?: string;
8605
+ showFullMonetizationOnMobile?: boolean;
8498
8606
  };
8499
8607
  /**
8500
8608
  * Google Analytics ID. If provided, Google Analytics will be enabled.
@@ -8506,6 +8614,7 @@ export declare interface WebConfig {
8506
8614
  centeredMenu?: boolean;
8507
8615
  /**
8508
8616
  * All values are considered as false if not provided.
8617
+ * @deprecated - use settings.allowedSignInProviders inside OrganizationDocument
8509
8618
  */
8510
8619
  socialLogins?: {
8511
8620
  showAppleLogin?: boolean;
@@ -8520,15 +8629,32 @@ export declare interface WebConfig {
8520
8629
  * If true, robots.txt will prevent crawling of the website.
8521
8630
  */
8522
8631
  norobots?: boolean;
8523
- customTranslations?: {
8524
- [key: string]: {
8525
- [key: string]: string;
8526
- };
8632
+ voucher?: {
8633
+ voucherConsent: string;
8634
+ };
8635
+ customTranslations?: Record<string, Record<string, string>>;
8636
+ onPurchase?: (monetization: Purchase) => void;
8637
+ facebookPixelConfig?: {
8638
+ pixelId: string;
8639
+ shouldWaitForDidomi?: boolean;
8527
8640
  };
8641
+ /**
8642
+ * If true, the app will be locked in the "remote controller" mode.
8643
+ * This means that the app will not be able to navigate to other pages and will only show the remote controller.
8644
+ */
8645
+ isRemoteControllerApp?: boolean;
8646
+ /**
8647
+ * Determines if application should check allowed URL handles when switching applications.
8648
+ */
8649
+ disableUrlHandleCheck?: boolean;
8528
8650
  /**
8529
8651
  * Map for all handlers
8530
8652
  */
8531
8653
  handlers?: PurchaseEventHandlers;
8654
+ homeScreen?: {
8655
+ useFullHeight?: boolean;
8656
+ };
8657
+ disableModalSwitcher?: boolean;
8532
8658
  }
8533
8659
 
8534
8660
  /**
@@ -8634,6 +8760,7 @@ export declare interface WebPlayerProps {
8634
8760
  hideOverlay?: boolean;
8635
8761
  sourcePlayMode?: SourcePlayMode;
8636
8762
  adsConfig?: StaticAdsBreak[];
8763
+ userAuthCallbacks?: SDKUserAuthCallbacks;
8637
8764
  }
8638
8765
 
8639
8766
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tivio/sdk-react",
3
- "version": "9.5.0",
3
+ "version": "9.7.0",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "source": "src/index.ts",
@@ -38,7 +38,7 @@
38
38
  "@material-ui/core": "^4.11.2",
39
39
  "@material-ui/icons": "^4.11.2",
40
40
  "@sentry/browser": "^6.1.0",
41
- "@tivio/common": "1.1.135",
41
+ "@tivio/common": "1.1.138",
42
42
  "dayjs": "^1.11.0",
43
43
  "es7-object-polyfill": "^1.0.1",
44
44
  "firebase": "8.10.1",