@tivio/sdk-react 4.0.0 → 4.0.1
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +8 -0
- package/README.md.bak +8 -0
- package/dist/index.d.ts +393 -68
- package/dist/index.js +1 -1
- package/dist/sdk-react.d.ts +434 -70
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
@@ -37,6 +37,27 @@ export declare interface AdExternal {
|
|
37
37
|
skip: () => void;
|
38
38
|
}
|
39
39
|
|
40
|
+
/**
|
41
|
+
* @public
|
42
|
+
*/
|
43
|
+
export declare type AdMetadata = {
|
44
|
+
type: 'ad';
|
45
|
+
subType: 'inserted' | 'original';
|
46
|
+
secondsToEnd: number;
|
47
|
+
/**
|
48
|
+
* null when ad is not skippable
|
49
|
+
*/
|
50
|
+
secondsToSkippable: number | null;
|
51
|
+
canTriggerSkip: boolean;
|
52
|
+
isSkippable: boolean;
|
53
|
+
order: number | null;
|
54
|
+
totalCount: number | null;
|
55
|
+
skip: () => void;
|
56
|
+
} | null;
|
57
|
+
|
58
|
+
/**
|
59
|
+
* @public
|
60
|
+
*/
|
40
61
|
declare type AdSegment = {
|
41
62
|
id: string;
|
42
63
|
/**
|
@@ -95,6 +116,13 @@ export declare type AdSource = {
|
|
95
116
|
secondsToSkippable: number | null;
|
96
117
|
};
|
97
118
|
|
119
|
+
/**
|
120
|
+
* @public
|
121
|
+
*/
|
122
|
+
declare type AdSource_2 = SourceBase & {
|
123
|
+
type: 'ad';
|
124
|
+
};
|
125
|
+
|
98
126
|
/**
|
99
127
|
* @public
|
100
128
|
*/
|
@@ -193,11 +221,7 @@ export declare type BannerProps = {
|
|
193
221
|
hoverable: boolean;
|
194
222
|
broadcastInfo: string;
|
195
223
|
height: number;
|
196
|
-
coverPadding: CoverPadding;
|
197
224
|
cover: string;
|
198
|
-
fullWidth: boolean;
|
199
|
-
coverContainerPaddingTop: string;
|
200
|
-
width: number;
|
201
225
|
overlay: boolean;
|
202
226
|
price: string;
|
203
227
|
hasRoundCorners: boolean;
|
@@ -248,9 +272,6 @@ export declare interface Channel {
|
|
248
272
|
recentVideos: Video[];
|
249
273
|
}
|
250
274
|
|
251
|
-
/**
|
252
|
-
* @public
|
253
|
-
*/
|
254
275
|
export declare type ChannelSource = {
|
255
276
|
new (uri: string, originalOptions: Record<string, any>, channelName: string, programName: string, programDescription: string, from: Date, to: Date): ChannelSource;
|
256
277
|
description: string;
|
@@ -375,7 +396,7 @@ export declare type DetailedPrice = {
|
|
375
396
|
/**
|
376
397
|
* @public
|
377
398
|
*/
|
378
|
-
export declare type DeviceInfo = ArrisDeviceInfo |
|
399
|
+
export declare type DeviceInfo = ArrisDeviceInfo | ReactNativeDeviceInfo;
|
379
400
|
|
380
401
|
/**
|
381
402
|
* @public
|
@@ -408,6 +429,11 @@ export declare type DocumentOptions = Partial<{
|
|
408
429
|
*/
|
409
430
|
export declare type Empty = void | Promise<void> | undefined | Promise<undefined>;
|
410
431
|
|
432
|
+
/**
|
433
|
+
* @public
|
434
|
+
*/
|
435
|
+
declare type Empty_2 = void | Promise<void> | undefined | Promise<undefined>;
|
436
|
+
|
411
437
|
/**
|
412
438
|
* @public
|
413
439
|
*/
|
@@ -521,7 +547,7 @@ export declare type InternalConfig = SdkReactConfig & {
|
|
521
547
|
fetchPackage: FetchPackage;
|
522
548
|
pubSub: PubSub;
|
523
549
|
/**
|
524
|
-
* @private URL of resolver. Resolver is a script used to fetch
|
550
|
+
* @private URL of resolver. Resolver is a script used to fetch remote code bundle
|
525
551
|
*/
|
526
552
|
resolverUrl: string;
|
527
553
|
sdkVersion: string;
|
@@ -558,6 +584,24 @@ declare interface IntroMarker {
|
|
558
584
|
*/
|
559
585
|
export declare type ItemsInRow = Tag | Video | TvChannel;
|
560
586
|
|
587
|
+
/**
|
588
|
+
* @public
|
589
|
+
*/
|
590
|
+
export declare interface JojExternals {
|
591
|
+
tvProfiProgramId?: string;
|
592
|
+
tvProfiContentId?: string;
|
593
|
+
tvProfiSerialId?: string;
|
594
|
+
contentId?: string;
|
595
|
+
provysId?: string;
|
596
|
+
tvProfiProvysId?: string;
|
597
|
+
tvProfiHouseId?: string;
|
598
|
+
tvProfiTitleOriginal?: string;
|
599
|
+
tvProfiTitleSk?: string;
|
600
|
+
tvProfiType?: string;
|
601
|
+
tvProfiSeriesName?: string;
|
602
|
+
tvProfiDistributor?: string;
|
603
|
+
}
|
604
|
+
|
561
605
|
/**
|
562
606
|
* Enum of all supported languages codes as in ISO 639-1
|
563
607
|
* @public
|
@@ -592,6 +636,34 @@ export declare type LinkedVideo = {
|
|
592
636
|
type: 'CUT' | 'TRAILER' | 'BONUS' | 'CHILD';
|
593
637
|
};
|
594
638
|
|
639
|
+
/**
|
640
|
+
* @public
|
641
|
+
*/
|
642
|
+
export declare type Listener = ListenerAdMetadata | ListenerMarkers;
|
643
|
+
|
644
|
+
/**
|
645
|
+
* @public
|
646
|
+
*/
|
647
|
+
export declare type ListenerAdMetadata = (metadata: AdMetadata) => void;
|
648
|
+
|
649
|
+
/**
|
650
|
+
* @public
|
651
|
+
*/
|
652
|
+
export declare type ListenerMarkers = (marker: Marker[] | null) => void;
|
653
|
+
|
654
|
+
/**
|
655
|
+
* Not supported yet, now it does pass-through only.
|
656
|
+
*
|
657
|
+
* @public
|
658
|
+
*/
|
659
|
+
export declare type LiveTvChannelSource = SourceBase & {
|
660
|
+
type: 'live_tv_channel';
|
661
|
+
/**
|
662
|
+
* Tivio needs channel name in order to load markers.
|
663
|
+
*/
|
664
|
+
channelName: string;
|
665
|
+
};
|
666
|
+
|
595
667
|
declare interface Logger {
|
596
668
|
/** important messages */
|
597
669
|
warn(...data: LoggerArgs): void;
|
@@ -614,15 +686,24 @@ declare type LoggerArgs = any[];
|
|
614
686
|
/**
|
615
687
|
* @public
|
616
688
|
*/
|
617
|
-
export declare
|
689
|
+
export declare interface MallTvExternals {
|
690
|
+
mallTvEntityId: string;
|
691
|
+
}
|
692
|
+
|
693
|
+
/**
|
694
|
+
* @public
|
695
|
+
*/
|
696
|
+
export declare interface Marker {
|
618
697
|
id: string;
|
619
|
-
type: string;
|
620
698
|
from: Date;
|
621
699
|
to: Date;
|
622
700
|
count?: number;
|
623
701
|
fromMs?: number;
|
624
702
|
toMs?: number;
|
625
|
-
|
703
|
+
relativeFromMs: number;
|
704
|
+
relativeToMs: number;
|
705
|
+
type: 'AD' | 'AD_SEGMENT' | 'START' | 'END' | 'INTRO';
|
706
|
+
}
|
626
707
|
|
627
708
|
/**
|
628
709
|
* @public
|
@@ -678,6 +759,16 @@ export declare type Nullable<T> = {
|
|
678
759
|
*/
|
679
760
|
export declare type ObjectType = Record<string, any>;
|
680
761
|
|
762
|
+
/**
|
763
|
+
* @public
|
764
|
+
*/
|
765
|
+
export declare interface OktagonExternals {
|
766
|
+
/**
|
767
|
+
* DRM content Key ID - shouldn't be more connected with buyDRM or streamOnline? It is not general thing
|
768
|
+
*/
|
769
|
+
keyId?: string;
|
770
|
+
}
|
771
|
+
|
681
772
|
/**
|
682
773
|
* @public
|
683
774
|
*/
|
@@ -694,6 +785,16 @@ declare type OrderByDirection = 'desc' | 'asc';
|
|
694
785
|
export declare interface Organization {
|
695
786
|
}
|
696
787
|
|
788
|
+
/**
|
789
|
+
* If Tivio PlayerWrapper is an interception layer, it should allow the pass-through
|
790
|
+
* of not just Tivio source types but any other source types that the 3rd party app may be using.
|
791
|
+
*
|
792
|
+
* @public
|
793
|
+
*/
|
794
|
+
export declare type OtherSource = SourceBase & StartAndContinuePosition & {
|
795
|
+
type: 'other';
|
796
|
+
};
|
797
|
+
|
697
798
|
/**
|
698
799
|
* @public
|
699
800
|
*/
|
@@ -721,6 +822,30 @@ export declare enum PLATFORM {
|
|
721
822
|
TV = "TV"
|
722
823
|
}
|
723
824
|
|
825
|
+
/**
|
826
|
+
* @public
|
827
|
+
*/
|
828
|
+
export declare type Player = {
|
829
|
+
ad: any;
|
830
|
+
currentTime: any;
|
831
|
+
adSegment: any;
|
832
|
+
event: any;
|
833
|
+
events: any;
|
834
|
+
source: any;
|
835
|
+
state: any;
|
836
|
+
onPlaybackEnded: any;
|
837
|
+
onSourceChanged: any;
|
838
|
+
onStateChanged: any;
|
839
|
+
onTimeChanged: any;
|
840
|
+
pause: any;
|
841
|
+
play: any;
|
842
|
+
togglePlayPause: any;
|
843
|
+
register: any;
|
844
|
+
seekTo: any;
|
845
|
+
setVolume: any;
|
846
|
+
triggerEvent: any;
|
847
|
+
};
|
848
|
+
|
724
849
|
/**
|
725
850
|
* @public
|
726
851
|
*/
|
@@ -776,6 +901,17 @@ export declare type PlayerConfig = {
|
|
776
901
|
fullFileDownloadSupport?: boolean;
|
777
902
|
};
|
778
903
|
};
|
904
|
+
/**
|
905
|
+
* Ad service settings
|
906
|
+
*/
|
907
|
+
adService?: {
|
908
|
+
/**
|
909
|
+
* Tivio - can be used in websites and TV apps. Does not support VPAID
|
910
|
+
* IMA - can be used only in websites. Supports VAST 2, partially VAST 3, VAST 4, SIMID 1.0, OM SDK 1.3,
|
911
|
+
* VPAID 2 (HTML5) https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/compatibility
|
912
|
+
*/
|
913
|
+
name: 'IMA SDK' | 'Tivio';
|
914
|
+
};
|
779
915
|
};
|
780
916
|
|
781
917
|
/**
|
@@ -810,6 +946,18 @@ export declare interface PlayerInterface {
|
|
810
946
|
unmute?: () => void;
|
811
947
|
}
|
812
948
|
|
949
|
+
/**
|
950
|
+
* @public
|
951
|
+
*/
|
952
|
+
export declare interface PlayerInterfaceForPlayerWrapper {
|
953
|
+
/**
|
954
|
+
* @param {number} ms - milliseconds relative to start of video (relative to 0 ms)
|
955
|
+
* or in case of TV programs relative to start of the program (relative to source.from ms)
|
956
|
+
*/
|
957
|
+
seekTo: (ms: number) => void;
|
958
|
+
setSource: (source: Source | null) => void;
|
959
|
+
}
|
960
|
+
|
813
961
|
/**
|
814
962
|
* @public
|
815
963
|
*/
|
@@ -867,8 +1015,8 @@ export declare type PlayerWrapper = {
|
|
867
1015
|
source: InputSource | null;
|
868
1016
|
events: {
|
869
1017
|
isSupported: (even: string) => boolean;
|
870
|
-
addListener: <T = any>(event: string, cb: (value: T) =>
|
871
|
-
removeListener: <T = any>(event: string, cb: (value: T) =>
|
1018
|
+
addListener: <T = any>(event: string, cb: (value: T) => Empty_2) => void;
|
1019
|
+
removeListener: <T = any>(event: string, cb: (value: T) => Empty_2) => void;
|
872
1020
|
removeAllListeners: () => void;
|
873
1021
|
};
|
874
1022
|
/**
|
@@ -906,6 +1054,19 @@ export declare type PlayerWrapper = {
|
|
906
1054
|
toggleMuted: () => void;
|
907
1055
|
};
|
908
1056
|
|
1057
|
+
/**
|
1058
|
+
* @public
|
1059
|
+
*/
|
1060
|
+
export declare enum PlayerWrapperEventType {
|
1061
|
+
adMetadata = "adMetadata",
|
1062
|
+
markers = "markers"
|
1063
|
+
}
|
1064
|
+
|
1065
|
+
/**
|
1066
|
+
* @public
|
1067
|
+
*/
|
1068
|
+
export declare type PlayerWrapperEventTypeType = `${PlayerWrapperEventType}`;
|
1069
|
+
|
909
1070
|
/**
|
910
1071
|
* @public
|
911
1072
|
*/
|
@@ -925,12 +1086,16 @@ export declare type Purchase = {
|
|
925
1086
|
expirationDate: Date | null;
|
926
1087
|
id: string;
|
927
1088
|
isExpired: boolean;
|
1089
|
+
/**
|
1090
|
+
* @deprecated isPurchased is ambiguous name. Now it means that purchase.status is "PAID".
|
1091
|
+
* So use purchase.status === PurchaseStatus.PAID instead.
|
1092
|
+
*/
|
928
1093
|
isPurchased: boolean;
|
929
1094
|
monetization: PurchaseMonetization | null;
|
930
1095
|
monetizationId: string | null;
|
931
1096
|
monetizationRef: any | null;
|
932
1097
|
status: PurchaseStatus | null;
|
933
|
-
type:
|
1098
|
+
type: PurchaseType | null;
|
934
1099
|
/**
|
935
1100
|
* Timestamp of the last purchase status update in milliseconds.
|
936
1101
|
*/
|
@@ -948,7 +1113,10 @@ export declare type PurchaseMonetization = {
|
|
948
1113
|
currency?: Currency;
|
949
1114
|
period?: number;
|
950
1115
|
price?: number;
|
951
|
-
|
1116
|
+
/**
|
1117
|
+
* Here are only transaction and subscription, because purchasing of advertisement monetization doesn't make sense.
|
1118
|
+
*/
|
1119
|
+
type: 'transaction' | 'subscription';
|
952
1120
|
title?: string;
|
953
1121
|
frequency?: MONETIZATION_FREQUENCY | null;
|
954
1122
|
/**
|
@@ -969,9 +1137,16 @@ export declare enum PurchaseStatus {
|
|
969
1137
|
/**
|
970
1138
|
* Used when purchase is terminated due to terms and conditions violation (e.g. restreaming).
|
971
1139
|
*/
|
972
|
-
|
1140
|
+
BLOCKED = "BLOCKED"
|
973
1141
|
}
|
974
1142
|
|
1143
|
+
/**
|
1144
|
+
* Purchase is a purchase of one video (transaction type), purchase of subscription or voucher.
|
1145
|
+
*
|
1146
|
+
* @public
|
1147
|
+
*/
|
1148
|
+
export declare type PurchaseType = 'transaction' | 'subscription' | 'voucher';
|
1149
|
+
|
975
1150
|
/**
|
976
1151
|
* @public
|
977
1152
|
*/
|
@@ -985,7 +1160,7 @@ export declare interface QerkoCancellationInfo {
|
|
985
1160
|
*/
|
986
1161
|
export declare interface QerkoData {
|
987
1162
|
monetization: Monetization;
|
988
|
-
|
1163
|
+
item?: Video | TvChannel;
|
989
1164
|
onPurchase?: () => void;
|
990
1165
|
onClose?: () => void;
|
991
1166
|
}
|
@@ -1038,6 +1213,19 @@ export declare interface QerkoTransaction {
|
|
1038
1213
|
voucherId?: string;
|
1039
1214
|
}
|
1040
1215
|
|
1216
|
+
/**
|
1217
|
+
* @public
|
1218
|
+
*/
|
1219
|
+
export declare type ReactNativeDeviceInfo = {
|
1220
|
+
type: 'react-native';
|
1221
|
+
/**
|
1222
|
+
* Type values defined according to {@link OperatingSystem} from `detect-browser` package for convenience.
|
1223
|
+
*/
|
1224
|
+
os?: 'iOS' | 'Android OS';
|
1225
|
+
osVersion: string;
|
1226
|
+
platform: PLATFORM;
|
1227
|
+
};
|
1228
|
+
|
1041
1229
|
/**
|
1042
1230
|
* @public
|
1043
1231
|
*/
|
@@ -1052,7 +1240,7 @@ export declare type RemoteBundleState = {
|
|
1052
1240
|
*/
|
1053
1241
|
export declare type RemoteProviderProps = {
|
1054
1242
|
disableUnmounting?: boolean;
|
1055
|
-
language?:
|
1243
|
+
language?: LangCode;
|
1056
1244
|
children: any;
|
1057
1245
|
};
|
1058
1246
|
|
@@ -1126,6 +1314,7 @@ export declare interface RowItemAssets {
|
|
1126
1314
|
portrait?: string | null;
|
1127
1315
|
circled?: string | null;
|
1128
1316
|
banner?: string | null;
|
1317
|
+
bannerMobile?: string | null;
|
1129
1318
|
}
|
1130
1319
|
|
1131
1320
|
/**
|
@@ -1213,7 +1402,7 @@ export declare type ScreenSubscription = (screenId: string, cb: (error: Error |
|
|
1213
1402
|
*
|
1214
1403
|
* @public
|
1215
1404
|
*/
|
1216
|
-
export declare type SdkReactConfig = Omit<TivioConfig, '
|
1405
|
+
export declare type SdkReactConfig = Omit<TivioConfig, 'language'> & {
|
1217
1406
|
disableUnmounting?: boolean;
|
1218
1407
|
enable?: boolean;
|
1219
1408
|
enableSentry?: boolean;
|
@@ -1222,7 +1411,9 @@ export declare type SdkReactConfig = Omit<TivioConfig, 'deviceCapabilities' | 'l
|
|
1222
1411
|
}>;
|
1223
1412
|
LoaderComponent?: ComponentType;
|
1224
1413
|
logger?: Logger | null;
|
1225
|
-
|
1414
|
+
/**
|
1415
|
+
* language is required for bundle init (TivioConfig), but it can be set to default EN on SDK side, so here it's optional.
|
1416
|
+
*/
|
1226
1417
|
language?: LangCode;
|
1227
1418
|
};
|
1228
1419
|
|
@@ -1261,6 +1452,63 @@ export declare const setUser: (userId: string | null, payload?: UserPayload | un
|
|
1261
1452
|
*/
|
1262
1453
|
export declare const showGdprConsentPreferences: () => Promise<void>;
|
1263
1454
|
|
1455
|
+
/**
|
1456
|
+
* @public
|
1457
|
+
*/
|
1458
|
+
export declare type Source = TvProgramSource | TivioVodSource | AdSource_2 | OtherSource | LiveTvChannelSource;
|
1459
|
+
|
1460
|
+
/**
|
1461
|
+
* @public
|
1462
|
+
*/
|
1463
|
+
export declare type SourceBase = {
|
1464
|
+
/**
|
1465
|
+
* Tivio SDK users may use pretty complicated source objects in their existing code and if Tivio player
|
1466
|
+
* is an interception layer, it should allow them to pass through any type of object.
|
1467
|
+
*/
|
1468
|
+
additionalPayload?: Record<string, any>;
|
1469
|
+
/**
|
1470
|
+
* Source type.
|
1471
|
+
*/
|
1472
|
+
type: 'ad' | 'live_tv_channel' | 'other' | 'tivio_vod' | 'tv_program';
|
1473
|
+
/**
|
1474
|
+
* URI to play.
|
1475
|
+
*/
|
1476
|
+
uri: string;
|
1477
|
+
};
|
1478
|
+
|
1479
|
+
/**
|
1480
|
+
* @public
|
1481
|
+
*/
|
1482
|
+
export declare type StartAndContinuePosition = {
|
1483
|
+
/**
|
1484
|
+
* Relative from stream start, in ms.
|
1485
|
+
*
|
1486
|
+
* On input to Tivio either `startFromPosition` or `continueFromPosition` must always be provided.
|
1487
|
+
*
|
1488
|
+
* On output from Tivio it is always defined. Tivio can change this value.
|
1489
|
+
* (e.g. in order to fix start position of a TV program)
|
1490
|
+
*/
|
1491
|
+
startFromPosition?: number;
|
1492
|
+
/**
|
1493
|
+
* Relative from stream start, in ms.
|
1494
|
+
*
|
1495
|
+
* On input to Tivio either `startFromPosition` or `continueFromPosition` must always be provided.
|
1496
|
+
*
|
1497
|
+
* If provided, tivio will not correct it and will send this value back in startFromPosition.
|
1498
|
+
* If provided, startFromPosition is ignored.
|
1499
|
+
*/
|
1500
|
+
continueFromPosition?: number;
|
1501
|
+
};
|
1502
|
+
|
1503
|
+
/**
|
1504
|
+
* @public
|
1505
|
+
*/
|
1506
|
+
declare interface StorageManager_2 {
|
1507
|
+
getItem(key: string): string | null | Promise<string | null>;
|
1508
|
+
setItem(key: string, value: string): void | Promise<void>;
|
1509
|
+
}
|
1510
|
+
export { StorageManager_2 as StorageManager }
|
1511
|
+
|
1264
1512
|
/**
|
1265
1513
|
* @public
|
1266
1514
|
*/
|
@@ -1360,7 +1608,6 @@ export declare type TaggedVideosOrderByField = 'seasonNumber' | 'episodeNumber'
|
|
1360
1608
|
*/
|
1361
1609
|
export declare type TileProps = {
|
1362
1610
|
cover: string;
|
1363
|
-
isLoading: boolean;
|
1364
1611
|
bottomLabel: string;
|
1365
1612
|
bottomLabelAreaHeight: number;
|
1366
1613
|
innerLabel: string;
|
@@ -1369,7 +1616,6 @@ export declare type TileProps = {
|
|
1369
1616
|
focused: boolean;
|
1370
1617
|
onClick?: () => void;
|
1371
1618
|
hoverable: boolean;
|
1372
|
-
overlay: boolean;
|
1373
1619
|
coverPadding: CoverPadding;
|
1374
1620
|
variant: RowItemComponent;
|
1375
1621
|
coverWidth: number;
|
@@ -1458,10 +1704,6 @@ export declare type TivioComponents = {
|
|
1458
1704
|
WebTile: React_2.ComponentType<{
|
1459
1705
|
item?: ItemsInRow;
|
1460
1706
|
} & TilePropsPartial>;
|
1461
|
-
AdIndicationButtonWeb: React_2.ReactNode;
|
1462
|
-
Recommendation: React_2.ReactNode;
|
1463
|
-
SkipButtonWeb: React_2.ReactNode;
|
1464
|
-
TvPlayer: React_2.ComponentType<WebPlayerProps>;
|
1465
1707
|
};
|
1466
1708
|
|
1467
1709
|
/**
|
@@ -1520,7 +1762,7 @@ export declare type TivioGetters = {
|
|
1520
1762
|
*/
|
1521
1763
|
getPlayerWrapper: (opt: {
|
1522
1764
|
playerWrapperId?: string;
|
1523
|
-
}) =>
|
1765
|
+
}) => PlayerWrapper;
|
1524
1766
|
getOrganizationSubscriptions: () => Promise<Monetization[] | undefined>;
|
1525
1767
|
/**
|
1526
1768
|
* Get video by its id.
|
@@ -1539,7 +1781,7 @@ export declare type TivioGetters = {
|
|
1539
1781
|
* @public
|
1540
1782
|
*/
|
1541
1783
|
export declare type TivioHooks = {
|
1542
|
-
useAd: () => [(
|
1784
|
+
useAd: () => [(AdExternal | null)];
|
1543
1785
|
useAdSegment: () => AdSegment | null;
|
1544
1786
|
useCancelSubscription: UseCancelSubscription;
|
1545
1787
|
useItemsInRow: (rowId: string, options: PaginationOptions) => {
|
@@ -1650,6 +1892,51 @@ export declare type TivioInternalProviders = {
|
|
1650
1892
|
RouterOverridesContextProvider: React_2.ComponentType<RouterOverridesContextState>;
|
1651
1893
|
};
|
1652
1894
|
|
1895
|
+
/**
|
1896
|
+
* @public
|
1897
|
+
*/
|
1898
|
+
export declare type TivioJsBundleExposedApi = {
|
1899
|
+
AdSource: any;
|
1900
|
+
ChannelSource: any;
|
1901
|
+
VodTivioSource: any;
|
1902
|
+
/**
|
1903
|
+
* Get (or create) player wrapper instance
|
1904
|
+
* @param id - player wrapper id
|
1905
|
+
* @returns {Player} player wrapper instance
|
1906
|
+
*/
|
1907
|
+
getPlayer: (id: string) => Player;
|
1908
|
+
/**
|
1909
|
+
* Get tv channel by its id.
|
1910
|
+
* @param tvChannelId - tv channel id
|
1911
|
+
* @returns {Promise<TvChannel | null>} channel or null if tv channel does not exists
|
1912
|
+
*/
|
1913
|
+
getTvChannelById: (tvChannelId: string) => Promise<TvChannel | null>;
|
1914
|
+
/**
|
1915
|
+
* Get tag by its id.
|
1916
|
+
* @param tagId - tag id
|
1917
|
+
* @returns {Promise<Tag | null>} widget or null if tag does not exists
|
1918
|
+
*/
|
1919
|
+
getTagById: (tagId: string) => Promise<Tag | null>;
|
1920
|
+
createPlayerWrapper: (playerImplementation: PlayerInterfaceForPlayerWrapper) => TivioPlayerWrapper;
|
1921
|
+
destroy: () => Promise<void>;
|
1922
|
+
} & Pick<TivioGetters, 'getVideoById'> & Pick<TivioSubscriptions, 'subscribeToVideo' | 'subscribeToItemsInRow'> & Pick<TivioAuth, 'createUserWithEmailAndPassword' | 'signInWithEmailAndPassword'> & Pick<TivioSetters, 'setBundleVersion' | 'setUser' | 'setLanguage' | 'setStorageManager'>;
|
1923
|
+
|
1924
|
+
/**
|
1925
|
+
* @public
|
1926
|
+
*/
|
1927
|
+
export declare interface TivioPlayerWrapper {
|
1928
|
+
addEventListener: (eventType: PlayerWrapperEventTypeType, listener: Listener) => void;
|
1929
|
+
reportError: (error: Error) => void;
|
1930
|
+
reportPlaybackEnded: () => void;
|
1931
|
+
reportTimeProgress: (ms: number) => void;
|
1932
|
+
seekTo: (ms: number) => void;
|
1933
|
+
/**
|
1934
|
+
* @param {Source} source - source to set
|
1935
|
+
* @param {string} calibrationId - id of calibration profile
|
1936
|
+
*/
|
1937
|
+
setSource: (source: Source | null, calibrationId?: string) => void;
|
1938
|
+
}
|
1939
|
+
|
1653
1940
|
/**
|
1654
1941
|
* @public
|
1655
1942
|
*/
|
@@ -1684,12 +1971,6 @@ export declare type TivioReactBundle = {
|
|
1684
1971
|
expirationDate: Date;
|
1685
1972
|
}) => Promise<QerkoPaymentInfo>;
|
1686
1973
|
cancelSubscriptionWithQerko: (subscriptionId: string) => Promise<QerkoCancellationInfo>;
|
1687
|
-
/**
|
1688
|
-
* Set tivio language.
|
1689
|
-
* @param language
|
1690
|
-
*/
|
1691
|
-
setLanguage: (language: LangCode) => void;
|
1692
|
-
setUser: (userId: string | null, userPayload?: UserPayload) => Promise<void>;
|
1693
1974
|
showConsentPreferences: () => void;
|
1694
1975
|
/**
|
1695
1976
|
* Contains hooks and providers for internal usages.
|
@@ -1698,6 +1979,20 @@ export declare type TivioReactBundle = {
|
|
1698
1979
|
*/
|
1699
1980
|
internal: TivioInternalBundle;
|
1700
1981
|
destroy: () => Promise<void>;
|
1982
|
+
} & Pick<TivioSetters, 'setBundleVersion' | 'setUser' | 'setLanguage' | 'setStorageManager'>;
|
1983
|
+
|
1984
|
+
/**
|
1985
|
+
* @public
|
1986
|
+
*/
|
1987
|
+
export declare type TivioSetters = {
|
1988
|
+
setBundleVersion: (bundleVersion: string | null) => void;
|
1989
|
+
/**
|
1990
|
+
* Set tivio language.
|
1991
|
+
* @param language
|
1992
|
+
*/
|
1993
|
+
setLanguage: (language: LangCode) => void;
|
1994
|
+
setStorageManager: (storageManager: StorageManager_2) => void;
|
1995
|
+
setUser: (userId: string | null, userPayload?: UserPayload) => Promise<void>;
|
1701
1996
|
};
|
1702
1997
|
|
1703
1998
|
/**
|
@@ -1730,6 +2025,17 @@ export declare type TivioSubscriptions = {
|
|
1730
2025
|
}) => void;
|
1731
2026
|
};
|
1732
2027
|
|
2028
|
+
/**
|
2029
|
+
* @public
|
2030
|
+
*/
|
2031
|
+
export declare type TivioVodSource = SourceBase & StartAndContinuePosition & {
|
2032
|
+
type: 'tivio_vod';
|
2033
|
+
/**
|
2034
|
+
* Allows Tivio to load monetization config an apply ads.
|
2035
|
+
*/
|
2036
|
+
videoPath: string;
|
2037
|
+
};
|
2038
|
+
|
1733
2039
|
/**
|
1734
2040
|
* @public
|
1735
2041
|
*/
|
@@ -1779,15 +2085,6 @@ export declare interface TivioWidgetRef {
|
|
1779
2085
|
});
|
1780
2086
|
}
|
1781
2087
|
|
1782
|
-
/**
|
1783
|
-
* @public
|
1784
|
-
*/
|
1785
|
-
export declare type TizenDeviceInfo = {
|
1786
|
-
type: 'tizen';
|
1787
|
-
model?: string;
|
1788
|
-
osVersion?: string;
|
1789
|
-
};
|
1790
|
-
|
1791
2088
|
declare type TransactionInfo = {
|
1792
2089
|
type: 'transaction';
|
1793
2090
|
name: string;
|
@@ -1828,6 +2125,35 @@ export declare interface TvChannel extends RowItem {
|
|
1828
2125
|
price: number;
|
1829
2126
|
}
|
1830
2127
|
|
2128
|
+
/**
|
2129
|
+
* @public
|
2130
|
+
*/
|
2131
|
+
export declare type TvProgramSource = SourceBase & StartAndContinuePosition & {
|
2132
|
+
type: 'tv_program';
|
2133
|
+
/**
|
2134
|
+
* If epgTo is wrong, Tivio cannot correctly guess if the video it startover or timeshift . For such cases
|
2135
|
+
* Tivio needs explicit tv mode.
|
2136
|
+
* null if source begins in the future.
|
2137
|
+
*/
|
2138
|
+
tvMode: 'startover' | 'timeshift' | null;
|
2139
|
+
/**
|
2140
|
+
* Tivio needs channel name in order to load markers.
|
2141
|
+
*/
|
2142
|
+
channelName: string;
|
2143
|
+
/**
|
2144
|
+
* Tivio needs EPG from in order to load markers.
|
2145
|
+
*/
|
2146
|
+
epgFrom: Date;
|
2147
|
+
/**
|
2148
|
+
* Tivio needs EPG to in order to load markers.
|
2149
|
+
*/
|
2150
|
+
epgTo: Date;
|
2151
|
+
/**
|
2152
|
+
* When the stream (provided in uri) really starts - typically few minutes before epgFrom.
|
2153
|
+
*/
|
2154
|
+
streamStart: Date;
|
2155
|
+
};
|
2156
|
+
|
1831
2157
|
/**
|
1832
2158
|
* @public
|
1833
2159
|
*/
|
@@ -1836,7 +2162,7 @@ export declare const TvTivioProvider: React_2.FC<TivioProviderProps>;
|
|
1836
2162
|
/**
|
1837
2163
|
* @public
|
1838
2164
|
*/
|
1839
|
-
export declare const useAd: () =>
|
2165
|
+
export declare const useAd: () => AdExternal | null;
|
1840
2166
|
|
1841
2167
|
/**
|
1842
2168
|
* @public
|
@@ -1988,9 +2314,23 @@ export declare const usePurchasesWithVideos: () => {
|
|
1988
2314
|
* @public
|
1989
2315
|
*/
|
1990
2316
|
export declare type User = {
|
2317
|
+
/**
|
2318
|
+
* Returns "active" (non-expired) purchases, so they give access to some content.
|
2319
|
+
* Does not return voucher purchases, because they give access to videos/subscriptions only for user who activates voucher,
|
2320
|
+
* not for user who purchases it.
|
2321
|
+
*/
|
1991
2322
|
purchases: Purchase[];
|
2323
|
+
/**
|
2324
|
+
* Returns all PAID or CANCELLED user purchases (expired and non-expired)
|
2325
|
+
*/
|
1992
2326
|
allPurchases: Purchase[];
|
2327
|
+
/**
|
2328
|
+
* Returns "active" (not CANCELLED) VoD purchases ("transaction" type)
|
2329
|
+
*/
|
1993
2330
|
purchasedVods: Purchase[];
|
2331
|
+
/**
|
2332
|
+
* Returns "active" (non-expired) subscription purchases
|
2333
|
+
*/
|
1994
2334
|
purchasedSubscriptions: Purchase[];
|
1995
2335
|
isPurchasesInitialized: boolean;
|
1996
2336
|
isSignedIn: boolean;
|
@@ -2167,7 +2507,8 @@ export declare enum VastProvider {
|
|
2167
2507
|
MALL_TV = "malltv",
|
2168
2508
|
MALL_TV_PREBID = "malltv-prebid",
|
2169
2509
|
PRIMA = "prima",
|
2170
|
-
TEST = "test"
|
2510
|
+
TEST = "test",
|
2511
|
+
TEST_VPAID = "test-vpaid"
|
2171
2512
|
}
|
2172
2513
|
|
2173
2514
|
/**
|
@@ -2249,18 +2590,7 @@ export declare enum VideoContentType {
|
|
2249
2590
|
/**
|
2250
2591
|
* @public
|
2251
2592
|
*/
|
2252
|
-
export declare
|
2253
|
-
tvProfiProgramId?: string;
|
2254
|
-
tvProfiContentId?: string;
|
2255
|
-
tvProfiSerialId?: string;
|
2256
|
-
contentId?: string;
|
2257
|
-
provysId?: string;
|
2258
|
-
mallTvEntityId?: string;
|
2259
|
-
/**
|
2260
|
-
* DRM content Key ID - should't be more connected with buyDRM or streamOnline? It is not general thing
|
2261
|
-
*/
|
2262
|
-
keyId?: string;
|
2263
|
-
}
|
2593
|
+
export declare type VideoExternals = JojExternals | MallTvExternals | OktagonExternals;
|
2264
2594
|
|
2265
2595
|
declare type VideoPath = string;
|
2266
2596
|
|
@@ -2277,7 +2607,11 @@ export declare enum VideoType {
|
|
2277
2607
|
* Video is a standard single video.
|
2278
2608
|
*/
|
2279
2609
|
VIDEO = "VIDEO",
|
2280
|
-
TV_PROGRAM = "TV_PROGRAM"
|
2610
|
+
TV_PROGRAM = "TV_PROGRAM",
|
2611
|
+
/**
|
2612
|
+
* Video object represents whole series, e.g. tv show.
|
2613
|
+
*/
|
2614
|
+
SERIES = "SERIES"
|
2281
2615
|
}
|
2282
2616
|
|
2283
2617
|
/**
|
@@ -2324,15 +2658,6 @@ declare type Voucher = {
|
|
2324
2658
|
voucherInfo: SubscriptionInfo | TransactionInfo;
|
2325
2659
|
};
|
2326
2660
|
|
2327
|
-
/**
|
2328
|
-
* @public
|
2329
|
-
*/
|
2330
|
-
export declare type WebosDeviceInfo = {
|
2331
|
-
type: 'webos';
|
2332
|
-
model?: string;
|
2333
|
-
osVersion?: string;
|
2334
|
-
};
|
2335
|
-
|
2336
2661
|
/**
|
2337
2662
|
* @public
|
2338
2663
|
*/
|