@tivio/sdk-react 4.2.0 → 4.4.0
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +15 -0
- package/README.md.bak +15 -0
- package/dist/index.d.ts +420 -103
- package/dist/index.js +1 -1
- package/dist/sdk-react.d.ts +479 -104
- package/package.json +2 -2
package/dist/sdk-react.d.ts
CHANGED
@@ -55,6 +55,12 @@ export declare type AdMetadata = {
|
|
55
55
|
skip: () => void;
|
56
56
|
} | null;
|
57
57
|
|
58
|
+
/**
|
59
|
+
* @public
|
60
|
+
*/
|
61
|
+
export declare interface AdMonetization extends Monetization {
|
62
|
+
}
|
63
|
+
|
58
64
|
/**
|
59
65
|
* @public
|
60
66
|
*/
|
@@ -156,35 +162,6 @@ export declare type Assets = {
|
|
156
162
|
[assetName: string]: ScalableAsset;
|
157
163
|
};
|
158
164
|
|
159
|
-
/**
|
160
|
-
* @public
|
161
|
-
*/
|
162
|
-
export declare type AuthOverlayPayload = {
|
163
|
-
prefilledData?: {
|
164
|
-
email: string;
|
165
|
-
};
|
166
|
-
/**
|
167
|
-
* "Goto" function (see router.utils.ts) to run after the overlay is closed. Null if no redirect is required.
|
168
|
-
* Defaults to homepage.
|
169
|
-
*/
|
170
|
-
redirectAfterSubmit?: ((...args: any[]) => void) | null;
|
171
|
-
};
|
172
|
-
|
173
|
-
/**
|
174
|
-
* @public
|
175
|
-
*/
|
176
|
-
export declare type AuthOverlayState = {
|
177
|
-
type: AuthOverlayType;
|
178
|
-
closeAuthOverlay: () => void;
|
179
|
-
openAuthOverlay: (type: AuthOverlayType, payload?: AuthOverlayPayload) => void;
|
180
|
-
payload?: AuthOverlayPayload | null;
|
181
|
-
};
|
182
|
-
|
183
|
-
/**
|
184
|
-
* @public
|
185
|
-
*/
|
186
|
-
export declare type AuthOverlayType = 'login' | 'registration' | 'closed' | 'reset-password';
|
187
|
-
|
188
165
|
/**
|
189
166
|
* @public
|
190
167
|
*/
|
@@ -210,6 +187,11 @@ export declare type BadRequestError = Error & {
|
|
210
187
|
};
|
211
188
|
};
|
212
189
|
|
190
|
+
export declare enum BannerItemComponent {
|
191
|
+
CLASSIC = "CLASSIC",
|
192
|
+
SPLIT = "SPLIT"
|
193
|
+
}
|
194
|
+
|
213
195
|
/**
|
214
196
|
* @public
|
215
197
|
*/
|
@@ -380,6 +362,7 @@ export declare type CreateUserWithEmailAndPassword = (email: string, password: s
|
|
380
362
|
export declare const CURRENCIES: string[];
|
381
363
|
|
382
364
|
/**
|
365
|
+
* Three upper-case letters according to ISO-4217.
|
383
366
|
* @public
|
384
367
|
*/
|
385
368
|
export declare type Currency = 'CZK' | 'EUR' | 'USD';
|
@@ -415,6 +398,22 @@ export declare type Customizations = {
|
|
415
398
|
coverWidth: number;
|
416
399
|
fontWeight: string | number;
|
417
400
|
overlayWidth: string | number;
|
401
|
+
text: {
|
402
|
+
width: string;
|
403
|
+
location: 'center' | 'bottom';
|
404
|
+
/**
|
405
|
+
* Font size in px
|
406
|
+
*/
|
407
|
+
fontSize: number;
|
408
|
+
};
|
409
|
+
};
|
410
|
+
SplitBanner: {
|
411
|
+
height: string;
|
412
|
+
Image: {
|
413
|
+
mobile: {
|
414
|
+
height: string;
|
415
|
+
};
|
416
|
+
};
|
418
417
|
};
|
419
418
|
Row: {
|
420
419
|
/**
|
@@ -433,6 +432,35 @@ export declare type Customizations = {
|
|
433
432
|
logoHeight: string;
|
434
433
|
borderBottom: string;
|
435
434
|
};
|
435
|
+
VideoDetail: {
|
436
|
+
Banner: {
|
437
|
+
title: {
|
438
|
+
fontSize: string;
|
439
|
+
marginTop: number | string;
|
440
|
+
width: string;
|
441
|
+
};
|
442
|
+
overlays: {
|
443
|
+
left: {
|
444
|
+
width: string;
|
445
|
+
backgroundImage: string;
|
446
|
+
};
|
447
|
+
bottom: {
|
448
|
+
backgroundImage: string;
|
449
|
+
};
|
450
|
+
};
|
451
|
+
};
|
452
|
+
TagsRow: {
|
453
|
+
/**
|
454
|
+
* Tags of this tag type is shown in tags row on video detail screen.
|
455
|
+
* The same config is used for SplitBanner.
|
456
|
+
*/
|
457
|
+
tagTypeId: string;
|
458
|
+
/**
|
459
|
+
* Row title
|
460
|
+
*/
|
461
|
+
title: string;
|
462
|
+
};
|
463
|
+
};
|
436
464
|
Input: InputOptions;
|
437
465
|
landing: {
|
438
466
|
row: {
|
@@ -526,6 +554,22 @@ export declare type DocumentOptions = Partial<{
|
|
526
554
|
subscribeOnChanges: boolean;
|
527
555
|
}>;
|
528
556
|
|
557
|
+
/**
|
558
|
+
* @public
|
559
|
+
*/
|
560
|
+
export declare interface Duration {
|
561
|
+
units: DurationUnits;
|
562
|
+
value: number;
|
563
|
+
}
|
564
|
+
|
565
|
+
/**
|
566
|
+
* @public
|
567
|
+
*/
|
568
|
+
export declare enum DurationUnits {
|
569
|
+
DAY = "day",
|
570
|
+
MONTH = "month"
|
571
|
+
}
|
572
|
+
|
529
573
|
/**
|
530
574
|
* @public
|
531
575
|
*/
|
@@ -578,6 +622,28 @@ export declare interface GenericOnCallError {
|
|
578
622
|
*/
|
579
623
|
export declare const getPubSub: () => PubSub;
|
580
624
|
|
625
|
+
/**
|
626
|
+
* @public
|
627
|
+
*/
|
628
|
+
export declare type GetPurchasableMonetizationsOptions = {
|
629
|
+
includeMonetizationsWithPurchaseDisabled: boolean;
|
630
|
+
};
|
631
|
+
|
632
|
+
/**
|
633
|
+
* Response from Tivio getPurchaseInfo HTTP endpoint.
|
634
|
+
*
|
635
|
+
* @public
|
636
|
+
*/
|
637
|
+
export declare type GetPurchaseInfoResponse = {
|
638
|
+
monetizationId: string;
|
639
|
+
monetization: PurchaseMonetization;
|
640
|
+
status: PurchaseStatus;
|
641
|
+
video?: {
|
642
|
+
id: string;
|
643
|
+
name: string | Translation;
|
644
|
+
};
|
645
|
+
};
|
646
|
+
|
581
647
|
/**
|
582
648
|
* @public
|
583
649
|
*/
|
@@ -688,6 +754,11 @@ declare interface IntroMarker {
|
|
688
754
|
skip: () => void;
|
689
755
|
}
|
690
756
|
|
757
|
+
/**
|
758
|
+
* @public
|
759
|
+
*/
|
760
|
+
export declare type ItemComponent = RowItemComponent | BannerItemComponent;
|
761
|
+
|
691
762
|
/**
|
692
763
|
* @public
|
693
764
|
*/
|
@@ -724,7 +795,8 @@ export declare enum LangCode {
|
|
724
795
|
PL = "pl",
|
725
796
|
PT = "pt",
|
726
797
|
SK = "sk",
|
727
|
-
ES = "es"
|
798
|
+
ES = "es",
|
799
|
+
HU = "hu"
|
728
800
|
}
|
729
801
|
|
730
802
|
/**
|
@@ -775,6 +847,20 @@ export declare type LiveTvChannelSource = SourceBase & {
|
|
775
847
|
channelName: string;
|
776
848
|
};
|
777
849
|
|
850
|
+
/**
|
851
|
+
* @public
|
852
|
+
*/
|
853
|
+
export declare type LocationField = {
|
854
|
+
/**
|
855
|
+
* Two-letter uppercase continent code (TODO not sure if this ISO-3166 format or something else, we get these from maxmind service)
|
856
|
+
*/
|
857
|
+
continentCode?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA';
|
858
|
+
/**
|
859
|
+
* Two-letter uppercase country code according to ISO-3166 format (see https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)
|
860
|
+
*/
|
861
|
+
countryIsoCode?: string;
|
862
|
+
};
|
863
|
+
|
778
864
|
declare interface Logger {
|
779
865
|
/** important messages */
|
780
866
|
warn(...data: LoggerArgs): void;
|
@@ -830,14 +916,9 @@ export declare interface MigratedVideoExternals {
|
|
830
916
|
*/
|
831
917
|
export declare interface Monetization {
|
832
918
|
id: string;
|
833
|
-
price?: string | number;
|
834
919
|
type?: MonetizationType;
|
835
|
-
frequency?: MONETIZATION_FREQUENCY;
|
836
|
-
isPurchased?: boolean;
|
837
920
|
name?: string;
|
838
921
|
description?: string;
|
839
|
-
benefits?: Translation[];
|
840
|
-
localizedBenefits?: string[];
|
841
922
|
}
|
842
923
|
|
843
924
|
/**
|
@@ -848,9 +929,49 @@ export declare enum MONETIZATION_FREQUENCY {
|
|
848
929
|
DAILY = "DAILY",
|
849
930
|
WEEKLY = "WEEKLY",
|
850
931
|
MONTHLY = "MONTHLY",
|
932
|
+
HALF_ANNUALLY = "HALF_ANNUALLY",
|
851
933
|
ANNUALLY = "ANNUALLY"
|
852
934
|
}
|
853
935
|
|
936
|
+
/**
|
937
|
+
* @public
|
938
|
+
*/
|
939
|
+
export declare interface MonetizationCardProps {
|
940
|
+
subscription: PurchasableMonetization;
|
941
|
+
onClick: (subscription: PurchasableMonetization) => void;
|
942
|
+
buttonLabel: string;
|
943
|
+
purchased: boolean;
|
944
|
+
focused?: boolean;
|
945
|
+
}
|
946
|
+
|
947
|
+
/**
|
948
|
+
* @public
|
949
|
+
*/
|
950
|
+
export declare interface MonetizationsSelectOverlayData {
|
951
|
+
subscriptions?: PurchasableMonetization[];
|
952
|
+
/**
|
953
|
+
* Item from which monetization select was opened.
|
954
|
+
* Note: does not necessarily mean that result purchase will be transaction.
|
955
|
+
*/
|
956
|
+
item?: Video | TvChannel;
|
957
|
+
/**
|
958
|
+
* If set to true, user is buying voucher.
|
959
|
+
* Otherwise, user is making a purchase for himself.
|
960
|
+
*/
|
961
|
+
voucherPurchase?: boolean;
|
962
|
+
onPurchase?: () => void;
|
963
|
+
onClose?: () => void;
|
964
|
+
}
|
965
|
+
|
966
|
+
/**
|
967
|
+
* @public
|
968
|
+
*/
|
969
|
+
export declare type MonetizationsSelectOverlayState = {
|
970
|
+
data: MonetizationsSelectOverlayData | null;
|
971
|
+
closeMonetizationsSelectOverlay: () => void;
|
972
|
+
openMonetizationsSelectOverlay: (data: MonetizationsSelectOverlayData) => void;
|
973
|
+
};
|
974
|
+
|
854
975
|
/**
|
855
976
|
* @public
|
856
977
|
* @TODO change to enum
|
@@ -907,6 +1028,13 @@ export declare interface OrderBy {
|
|
907
1028
|
directionStr?: OrderByDirection;
|
908
1029
|
}
|
909
1030
|
|
1031
|
+
/**
|
1032
|
+
* The same as WhereFilter, but in array, for easier usage.
|
1033
|
+
* Format: [field, directionStr] or [field]
|
1034
|
+
* @public
|
1035
|
+
*/
|
1036
|
+
export declare type OrderByArray = [string, OrderByDirection] | [string];
|
1037
|
+
|
910
1038
|
declare type OrderByDirection = 'desc' | 'asc';
|
911
1039
|
|
912
1040
|
/**
|
@@ -1197,6 +1325,14 @@ export declare enum PlayerWrapperEventType {
|
|
1197
1325
|
*/
|
1198
1326
|
export declare type PlayerWrapperEventTypeType = `${PlayerWrapperEventType}`;
|
1199
1327
|
|
1328
|
+
/**
|
1329
|
+
* @public
|
1330
|
+
*/
|
1331
|
+
export declare interface Promotion {
|
1332
|
+
duration?: Duration;
|
1333
|
+
price?: number;
|
1334
|
+
}
|
1335
|
+
|
1200
1336
|
/**
|
1201
1337
|
* @public
|
1202
1338
|
*/
|
@@ -1205,6 +1341,43 @@ export declare interface PubSub {
|
|
1205
1341
|
subscribe: <K extends keyof Events>(triggerName: K, onMessage: (data: Events[K]) => Empty) => Disposer;
|
1206
1342
|
}
|
1207
1343
|
|
1344
|
+
/**
|
1345
|
+
* @public
|
1346
|
+
*/
|
1347
|
+
export declare interface PurchasableMonetization extends Monetization {
|
1348
|
+
/**
|
1349
|
+
* Price before any discounts (e.g. promotions).
|
1350
|
+
*/
|
1351
|
+
originalPrice: number;
|
1352
|
+
/**
|
1353
|
+
* Final price (after discounts).
|
1354
|
+
*/
|
1355
|
+
price?: string | number;
|
1356
|
+
promotion: Promotion | null;
|
1357
|
+
frequency?: MONETIZATION_FREQUENCY;
|
1358
|
+
/**
|
1359
|
+
* Returns TRUE if subscription is purchased (and not expired) by user.
|
1360
|
+
* Returns TRUE if transaction is purchased (and not expired) for transactionItemId.
|
1361
|
+
* Returns FALSE otherwise.
|
1362
|
+
*
|
1363
|
+
* @param transactionItemId id of item for which transaction purchase is checked
|
1364
|
+
* @param transactionField type of item (video or tvChannel)
|
1365
|
+
*/
|
1366
|
+
isPurchased(transactionItemId?: string, transactionField?: 'videoId' | 'tvChannelId'): boolean;
|
1367
|
+
benefits?: Translation[];
|
1368
|
+
localizedBenefits?: string[];
|
1369
|
+
/**
|
1370
|
+
* Set to true for subscriptions which is not possible to buy - typically for historical subscriptions which users
|
1371
|
+
* still have bought but can't be purchased anymore.
|
1372
|
+
*/
|
1373
|
+
purchaseDisabled?: boolean;
|
1374
|
+
/**
|
1375
|
+
* When set to true, users can buy this monetization as a voucher (e.g. to send it as a gift to a friend).
|
1376
|
+
* If not set or set to false, users cannot buy it as a voucher.
|
1377
|
+
*/
|
1378
|
+
isPurchasableAsVoucher?: boolean;
|
1379
|
+
}
|
1380
|
+
|
1208
1381
|
/**
|
1209
1382
|
* @public
|
1210
1383
|
*/
|
@@ -1236,6 +1409,135 @@ export declare type Purchase = {
|
|
1236
1409
|
voucherId?: string;
|
1237
1410
|
};
|
1238
1411
|
|
1412
|
+
/**
|
1413
|
+
* @public
|
1414
|
+
*/
|
1415
|
+
export declare enum PurchaseDocumentGateway {
|
1416
|
+
'qerko' = "qerko",
|
1417
|
+
'oktagon' = "oktagon",
|
1418
|
+
'voucher' = "voucher",
|
1419
|
+
'comgate' = "comgate"
|
1420
|
+
}
|
1421
|
+
|
1422
|
+
/**
|
1423
|
+
* Payload which is sent to organization's webhook (if provided). It is send only when purchase status changes to PAID,
|
1424
|
+
* it means that it is send also when user applies the voucher.
|
1425
|
+
*
|
1426
|
+
* @public
|
1427
|
+
*/
|
1428
|
+
export declare type PurchaseEndpointPayload = {
|
1429
|
+
/**
|
1430
|
+
* Information about the purchase which changes status to PAID.
|
1431
|
+
*/
|
1432
|
+
purchase: {
|
1433
|
+
/**
|
1434
|
+
* Two-letter upper-case continent code.
|
1435
|
+
*/
|
1436
|
+
continentCode?: LocationField['continentCode'];
|
1437
|
+
/**
|
1438
|
+
* Two-letter upper-case country code according to ISO-3166 format (see https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes).
|
1439
|
+
*/
|
1440
|
+
countryIsoCode?: LocationField['countryIsoCode'];
|
1441
|
+
/**
|
1442
|
+
* Gateway name or "voucher".
|
1443
|
+
*/
|
1444
|
+
gateway: PurchaseDocumentGateway;
|
1445
|
+
/**
|
1446
|
+
* Tivio ID of the purchase.
|
1447
|
+
*/
|
1448
|
+
id: string;
|
1449
|
+
/**
|
1450
|
+
* Timestamp of the last change of the purchase - in this case it is timestamp when it was paid.
|
1451
|
+
*/
|
1452
|
+
updated: number;
|
1453
|
+
/**
|
1454
|
+
* True if delayed payment is confirmed but not charged yet, undefined in all other cases.
|
1455
|
+
*/
|
1456
|
+
isDelayedPayment?: boolean;
|
1457
|
+
};
|
1458
|
+
/**
|
1459
|
+
* Information about the monetization which has been bought by this purchase. Monetization definition may change in time so information provided here
|
1460
|
+
* reflects monetization definition in time of the purchase.
|
1461
|
+
*/
|
1462
|
+
monetization: {
|
1463
|
+
/**
|
1464
|
+
* Currency in which the purchase has been made. Three upper-case letters according to ISO-4217.
|
1465
|
+
*/
|
1466
|
+
currency?: Currency;
|
1467
|
+
/**
|
1468
|
+
* Frequency in which the user will be charged.
|
1469
|
+
*/
|
1470
|
+
frequency?: MONETIZATION_FREQUENCY | null;
|
1471
|
+
/**
|
1472
|
+
* Tivio ID of the monetization.
|
1473
|
+
*/
|
1474
|
+
id: string;
|
1475
|
+
/**
|
1476
|
+
* Price of the purchase.
|
1477
|
+
*/
|
1478
|
+
price?: number;
|
1479
|
+
/**
|
1480
|
+
* Name of the monetization.
|
1481
|
+
*/
|
1482
|
+
title?: string;
|
1483
|
+
/**
|
1484
|
+
* Type of the monetization ("transaction" or "subscription").
|
1485
|
+
*/
|
1486
|
+
type: MonetizationType;
|
1487
|
+
};
|
1488
|
+
/**
|
1489
|
+
* Information about the video which has been bought by this purchase. Provided only for transaction purchases.
|
1490
|
+
*/
|
1491
|
+
video?: {
|
1492
|
+
/**
|
1493
|
+
* Tivio ID of the video.
|
1494
|
+
*/
|
1495
|
+
id: string;
|
1496
|
+
/**
|
1497
|
+
* Name of the video.
|
1498
|
+
*/
|
1499
|
+
name: string | Translation;
|
1500
|
+
};
|
1501
|
+
/**
|
1502
|
+
* Information about the user who made this purchase.
|
1503
|
+
*/
|
1504
|
+
user: {
|
1505
|
+
/**
|
1506
|
+
* User's e-mail.
|
1507
|
+
*/
|
1508
|
+
email: string;
|
1509
|
+
/**
|
1510
|
+
* External ID of the user.
|
1511
|
+
*/
|
1512
|
+
externalUserId: string;
|
1513
|
+
/**
|
1514
|
+
* Tivio ID of the user.
|
1515
|
+
*/
|
1516
|
+
id: string;
|
1517
|
+
/**
|
1518
|
+
* User's name.
|
1519
|
+
*/
|
1520
|
+
name: string;
|
1521
|
+
};
|
1522
|
+
/**
|
1523
|
+
* Information about the voucher. Provided only when purchase is purchase (not application) of the voucher.
|
1524
|
+
*/
|
1525
|
+
voucher?: {
|
1526
|
+
/**
|
1527
|
+
* Voucher code.
|
1528
|
+
*/
|
1529
|
+
code: string;
|
1530
|
+
/**
|
1531
|
+
* Voucher expiration timestamp.
|
1532
|
+
*/
|
1533
|
+
expiration: number;
|
1534
|
+
/**
|
1535
|
+
* Duration (in seconds) after which purchase is considered expired. If undefined, monetization's duration is used.
|
1536
|
+
*/
|
1537
|
+
purchaseDuration?: number;
|
1538
|
+
};
|
1539
|
+
};
|
1540
|
+
|
1239
1541
|
/**
|
1240
1542
|
* @public
|
1241
1543
|
*/
|
@@ -1289,8 +1591,13 @@ export declare interface QerkoCancellationInfo {
|
|
1289
1591
|
* @public
|
1290
1592
|
*/
|
1291
1593
|
export declare interface QerkoData {
|
1292
|
-
monetization:
|
1594
|
+
monetization: PurchasableMonetization;
|
1293
1595
|
item?: Video | TvChannel;
|
1596
|
+
/**
|
1597
|
+
* If set to true, user is buying voucher.
|
1598
|
+
* Otherwise, user is making a purchase for himself.
|
1599
|
+
*/
|
1600
|
+
voucherPurchase?: boolean;
|
1294
1601
|
onPurchase?: () => void;
|
1295
1602
|
onClose?: () => void;
|
1296
1603
|
}
|
@@ -1299,8 +1606,14 @@ export declare interface QerkoData {
|
|
1299
1606
|
* @public
|
1300
1607
|
*/
|
1301
1608
|
export declare interface QerkoOverlayState {
|
1609
|
+
isOpen: boolean;
|
1302
1610
|
data: QerkoData | null;
|
1303
|
-
|
1611
|
+
/**
|
1612
|
+
* Prepares data for
|
1613
|
+
* Use this in case when you need to split actions
|
1614
|
+
*/
|
1615
|
+
setData: (data: QerkoData) => void;
|
1616
|
+
openQerkoOverlay: (data?: QerkoData) => void;
|
1304
1617
|
closeQerkoOverlay: () => void;
|
1305
1618
|
}
|
1306
1619
|
|
@@ -1387,13 +1700,14 @@ export declare type RequiredNullable<T> = {
|
|
1387
1700
|
* @public
|
1388
1701
|
*/
|
1389
1702
|
export declare interface RouterOverrides {
|
1390
|
-
goToVideoDetailPage: (
|
1703
|
+
goToVideoDetailPage: (videoIdOrUrlName: string) => void;
|
1391
1704
|
goToSeriesDetailPage: (tagId: string) => void;
|
1392
1705
|
goToTagPage: (tagId: string) => void;
|
1393
|
-
|
1706
|
+
goToLoginPage: () => void;
|
1707
|
+
goToRegistrationPage: () => void;
|
1394
1708
|
goBack: () => void;
|
1395
|
-
goLivePlayer: (
|
1396
|
-
goVodPlayer: (
|
1709
|
+
goLivePlayer: (tvChannelId: string) => void;
|
1710
|
+
goVodPlayer: (videoIdOrUrlName: string) => void;
|
1397
1711
|
goToHome: () => void;
|
1398
1712
|
}
|
1399
1713
|
|
@@ -1407,17 +1721,7 @@ export declare interface RouterOverridesContextState {
|
|
1407
1721
|
/**
|
1408
1722
|
* @public
|
1409
1723
|
*/
|
1410
|
-
export declare
|
1411
|
-
id: string;
|
1412
|
-
rowId: string;
|
1413
|
-
name: string;
|
1414
|
-
description?: string;
|
1415
|
-
itemComponent: RowItemComponent;
|
1416
|
-
rowComponent: RowComponent;
|
1417
|
-
assets: Assets;
|
1418
|
-
type: ScreenRowType;
|
1419
|
-
isLiveRow: boolean;
|
1420
|
-
}
|
1724
|
+
export declare type Row = RowStandard | RowBanner;
|
1421
1725
|
|
1422
1726
|
/**
|
1423
1727
|
* @public
|
@@ -1428,6 +1732,27 @@ export declare enum ROW_ITEM_TYPES {
|
|
1428
1732
|
TV_CHANNEL = "TV_CHANNEL"
|
1429
1733
|
}
|
1430
1734
|
|
1735
|
+
/**
|
1736
|
+
* @private
|
1737
|
+
*/
|
1738
|
+
export declare interface RowBanner extends RowBase {
|
1739
|
+
rowComponent: RowComponent.BANNER;
|
1740
|
+
itemComponent: BannerItemComponent;
|
1741
|
+
}
|
1742
|
+
|
1743
|
+
/**
|
1744
|
+
* @private
|
1745
|
+
*/
|
1746
|
+
declare interface RowBase {
|
1747
|
+
id: string;
|
1748
|
+
rowId: string;
|
1749
|
+
name: string;
|
1750
|
+
description?: string;
|
1751
|
+
assets: Assets;
|
1752
|
+
type: ScreenRowType;
|
1753
|
+
isLiveRow: boolean;
|
1754
|
+
}
|
1755
|
+
|
1431
1756
|
/**
|
1432
1757
|
* @public
|
1433
1758
|
*/
|
@@ -1440,6 +1765,7 @@ export declare enum RowComponent {
|
|
1440
1765
|
* @public
|
1441
1766
|
*/
|
1442
1767
|
export declare interface RowItem extends RowItemAssets {
|
1768
|
+
created?: Date;
|
1443
1769
|
itemType: ROW_ITEM_TYPES;
|
1444
1770
|
name?: string;
|
1445
1771
|
description?: string;
|
@@ -1480,6 +1806,14 @@ export declare type RowItemsSubscription = (rowId: string, cb: (error: Error | n
|
|
1480
1806
|
hasNextPage: boolean;
|
1481
1807
|
} | null, fetchMore: null | ((count?: number) => void), isLoading: boolean) => void, limit?: number) => Disposer_2;
|
1482
1808
|
|
1809
|
+
/**
|
1810
|
+
* @private
|
1811
|
+
*/
|
1812
|
+
export declare interface RowStandard extends RowBase {
|
1813
|
+
rowComponent: RowComponent.ROW;
|
1814
|
+
itemComponent: RowItemComponent;
|
1815
|
+
}
|
1816
|
+
|
1483
1817
|
/**
|
1484
1818
|
* @public
|
1485
1819
|
*/
|
@@ -1567,6 +1901,12 @@ export declare interface Section {
|
|
1567
1901
|
videos: Video[];
|
1568
1902
|
}
|
1569
1903
|
|
1904
|
+
export declare enum SemanticDate {
|
1905
|
+
YESTERDAY = "Yesterday",
|
1906
|
+
TODAY = "Today",
|
1907
|
+
TOMORROW = "Tomorrow"
|
1908
|
+
}
|
1909
|
+
|
1570
1910
|
/**
|
1571
1911
|
* Used for entities, that can be global (e.g. asset presets, tag types).
|
1572
1912
|
* Non-global is stored under organizations (in sub-collection), and shown for organization's users and super-admin.
|
@@ -1686,17 +2026,6 @@ export declare type SubscribeToTaggedVideosOptions = SubscribeToItemsInRowOption
|
|
1686
2026
|
where?: WhereFilter[];
|
1687
2027
|
};
|
1688
2028
|
|
1689
|
-
/**
|
1690
|
-
* @public
|
1691
|
-
*/
|
1692
|
-
export declare interface SubscriptionCardProps {
|
1693
|
-
subscription: Monetization;
|
1694
|
-
onClick: (subscription: Monetization) => void;
|
1695
|
-
buttonLabel: string;
|
1696
|
-
purchased: boolean;
|
1697
|
-
focused?: boolean;
|
1698
|
-
}
|
1699
|
-
|
1700
2029
|
declare type SubscriptionInfo = {
|
1701
2030
|
type: 'subscription';
|
1702
2031
|
name: string;
|
@@ -1704,24 +2033,6 @@ declare type SubscriptionInfo = {
|
|
1704
2033
|
frequency: string;
|
1705
2034
|
};
|
1706
2035
|
|
1707
|
-
/**
|
1708
|
-
* @public
|
1709
|
-
*/
|
1710
|
-
export declare interface SubscriptionOverlayData {
|
1711
|
-
subscriptions?: Monetization[];
|
1712
|
-
onPurchase?: () => void;
|
1713
|
-
onClose?: () => void;
|
1714
|
-
}
|
1715
|
-
|
1716
|
-
/**
|
1717
|
-
* @public
|
1718
|
-
*/
|
1719
|
-
export declare type SubscriptionOverlayState = {
|
1720
|
-
data: SubscriptionOverlayData | null;
|
1721
|
-
closeSubscriptionOverlay: () => void;
|
1722
|
-
openSubscriptionOverlay: (data: SubscriptionOverlayData) => void;
|
1723
|
-
};
|
1724
|
-
|
1725
2036
|
/**
|
1726
2037
|
* @public
|
1727
2038
|
*/
|
@@ -1736,6 +2047,7 @@ export declare interface Tag extends RowItem {
|
|
1736
2047
|
isFavorite: boolean;
|
1737
2048
|
addToFavorites: () => void;
|
1738
2049
|
removeFromFavorites: () => void;
|
2050
|
+
cover: string;
|
1739
2051
|
}
|
1740
2052
|
|
1741
2053
|
/**
|
@@ -1753,6 +2065,9 @@ export declare type TileOptions = {
|
|
1753
2065
|
* This property is ignored for CIRCLED tiles, they always have border-radius: 50%;
|
1754
2066
|
*/
|
1755
2067
|
borderRadius: string | number;
|
2068
|
+
innerContainer: {
|
2069
|
+
margin: string;
|
2070
|
+
};
|
1756
2071
|
innerLabel: {
|
1757
2072
|
/**
|
1758
2073
|
* Font size in px
|
@@ -1770,6 +2085,12 @@ export declare type TileOptions = {
|
|
1770
2085
|
sizes: {
|
1771
2086
|
[variant in TileSizeVariant]: TileSizesMap;
|
1772
2087
|
};
|
2088
|
+
badge: {
|
2089
|
+
/**
|
2090
|
+
* Font size in px
|
2091
|
+
*/
|
2092
|
+
fontSize: number;
|
2093
|
+
};
|
1773
2094
|
};
|
1774
2095
|
|
1775
2096
|
/**
|
@@ -1779,6 +2100,7 @@ export declare type TileProps = {
|
|
1779
2100
|
cover: string;
|
1780
2101
|
bottomLabel: string;
|
1781
2102
|
bottomLabelAreaHeight: number;
|
2103
|
+
bottomLabelTextLinesCount: number;
|
1782
2104
|
innerLabel: string;
|
1783
2105
|
duration: string;
|
1784
2106
|
price: string | null;
|
@@ -1797,6 +2119,7 @@ export declare type TileProps = {
|
|
1797
2119
|
* Now used for backward compatibility for WebTileGrid. Consider to use it other way.
|
1798
2120
|
*/
|
1799
2121
|
containerMargin?: number | string;
|
2122
|
+
created?: Date;
|
1800
2123
|
};
|
1801
2124
|
|
1802
2125
|
/**
|
@@ -1813,7 +2136,11 @@ export declare type TileSizes = {
|
|
1813
2136
|
coverWidth: number;
|
1814
2137
|
coverHeight: number;
|
1815
2138
|
cellPaddingRight: number;
|
1816
|
-
|
2139
|
+
/**
|
2140
|
+
* Count of lines of label text.
|
2141
|
+
* Now only bottom label supports multiline text.
|
2142
|
+
*/
|
2143
|
+
labelLinesCount: number;
|
1817
2144
|
};
|
1818
2145
|
|
1819
2146
|
/**
|
@@ -1847,6 +2174,7 @@ export declare interface TivioAuth {
|
|
1847
2174
|
* @param password
|
1848
2175
|
*/
|
1849
2176
|
signInWithEmailAndPassword: (email: string, password: string) => Promise<string | null>;
|
2177
|
+
signInWithCustomToken: (token: string) => Promise<string | null>;
|
1850
2178
|
signOut: () => Promise<void>;
|
1851
2179
|
/**
|
1852
2180
|
* Used for reset forgotten password by user
|
@@ -2033,12 +2361,12 @@ export declare type TivioInternalBundle = {
|
|
2033
2361
|
* @public
|
2034
2362
|
*/
|
2035
2363
|
export declare type TivioInternalComponents = {
|
2036
|
-
PrimaryButton: React_2.ComponentType
|
2364
|
+
PrimaryButton: React_2.ComponentType<any>;
|
2037
2365
|
WebLandingScreen: React_2.ComponentType<{
|
2038
2366
|
logo?: string;
|
2039
2367
|
}>;
|
2040
2368
|
WebVideoScreen: React_2.ComponentType<{
|
2041
|
-
|
2369
|
+
videoIdOrUrlName: string;
|
2042
2370
|
}>;
|
2043
2371
|
WebSeriesDetailScreen: React_2.ComponentType<WebSeriesDetailScreenProps>;
|
2044
2372
|
};
|
@@ -2047,25 +2375,35 @@ export declare type TivioInternalComponents = {
|
|
2047
2375
|
* @public
|
2048
2376
|
*/
|
2049
2377
|
export declare type TivioInternalHooks = {
|
2050
|
-
|
2051
|
-
useSubscriptionsOverlay: () => SubscriptionOverlayState;
|
2378
|
+
useMonetizationsSelectOverlay: () => MonetizationsSelectOverlayState;
|
2052
2379
|
useQerkoOverlay: () => QerkoOverlayState;
|
2053
2380
|
usePurchasesWithVideos: () => {
|
2054
2381
|
purchases: Purchase[];
|
2055
2382
|
};
|
2056
|
-
useOrganizationSubscriptions: () => {
|
2057
|
-
subscriptions:
|
2383
|
+
useOrganizationSubscriptions: (onlyPurchasableSubscriptions?: boolean) => {
|
2384
|
+
subscriptions: PurchasableMonetization[];
|
2058
2385
|
};
|
2059
2386
|
useIsMonetizationPurchased: () => {
|
2060
2387
|
isOneOfSubscriptionPurchased: (subscriptionIds: string[]) => boolean;
|
2061
2388
|
};
|
2062
|
-
useReferralInfo:
|
2389
|
+
useReferralInfo: (referralToken: string) => ({
|
2390
|
+
data: {
|
2391
|
+
email: string;
|
2392
|
+
externalUserId: string;
|
2393
|
+
promotionId?: string;
|
2394
|
+
referralId: string;
|
2395
|
+
promotion?: any;
|
2396
|
+
};
|
2397
|
+
error: Error | null;
|
2398
|
+
loading: boolean;
|
2399
|
+
});
|
2063
2400
|
useTvChannel: UseTvChannel;
|
2064
2401
|
useChannelSource: UseChannelSource;
|
2065
2402
|
useUser: () => {
|
2066
2403
|
user: User | null;
|
2067
2404
|
error: string | null;
|
2068
2405
|
isInitialized: boolean;
|
2406
|
+
isSignedIn: boolean;
|
2069
2407
|
};
|
2070
2408
|
};
|
2071
2409
|
|
@@ -2074,7 +2412,6 @@ export declare type TivioInternalHooks = {
|
|
2074
2412
|
*/
|
2075
2413
|
export declare type TivioInternalProviders = {
|
2076
2414
|
AppThemeProvider: React_2.ComponentType;
|
2077
|
-
AuthOverlayContextProvider: React_2.ComponentType;
|
2078
2415
|
CustomerProvider: React_2.ComponentType<{
|
2079
2416
|
customer: CUSTOMER_BUILD;
|
2080
2417
|
platform: PLATFORM;
|
@@ -2082,9 +2419,12 @@ export declare type TivioInternalProviders = {
|
|
2082
2419
|
}>;
|
2083
2420
|
ConfigProvider: React_2.ComponentType;
|
2084
2421
|
UserContextProvider: React_2.ComponentType;
|
2085
|
-
|
2422
|
+
MonetizationsSelectOverlayContextProvider: React_2.ComponentType;
|
2086
2423
|
QerkoOverlayContextProvider: React_2.ComponentType;
|
2087
2424
|
PurchasesWithVideosContextProvider: React_2.ComponentType;
|
2425
|
+
/**
|
2426
|
+
* @deprecated not used in our app, can be removed when no sdk in production uses it
|
2427
|
+
*/
|
2088
2428
|
OrganizationSubscriptionsContextProvider: React_2.ComponentType;
|
2089
2429
|
RouterOverridesContextProvider: React_2.ComponentType<RouterOverridesContextState>;
|
2090
2430
|
};
|
@@ -2326,8 +2666,14 @@ export declare interface TvChannel extends RowItem {
|
|
2326
2666
|
logo?: string;
|
2327
2667
|
hls: string;
|
2328
2668
|
dash: string;
|
2669
|
+
/**
|
2670
|
+
* Returns all transactions and subscriptions applied to this tv channel.
|
2671
|
+
* Transactions before subscriptions, sorted by price ascending.
|
2672
|
+
*/
|
2673
|
+
getPurchasableMonetizations(options?: GetPurchasableMonetizationsOptions): PurchasableMonetization[];
|
2329
2674
|
purchasableMonetization: any | null;
|
2330
2675
|
price: number;
|
2676
|
+
cover: string;
|
2331
2677
|
}
|
2332
2678
|
|
2333
2679
|
/**
|
@@ -2472,8 +2818,8 @@ export declare const useMarkers: () => Marker[] | null;
|
|
2472
2818
|
/**
|
2473
2819
|
* @public
|
2474
2820
|
*/
|
2475
|
-
export declare const useOrganizationSubscriptions: () => {
|
2476
|
-
subscriptions:
|
2821
|
+
export declare const useOrganizationSubscriptions: (onlyPurchasableSubscriptions?: boolean | undefined) => {
|
2822
|
+
subscriptions: PurchasableMonetization[];
|
2477
2823
|
};
|
2478
2824
|
|
2479
2825
|
/**
|
@@ -2647,14 +2993,15 @@ export declare const useUser: () => {
|
|
2647
2993
|
user: User | null;
|
2648
2994
|
error: string | null;
|
2649
2995
|
isInitialized: boolean;
|
2996
|
+
isSignedIn: boolean;
|
2650
2997
|
};
|
2651
2998
|
|
2652
2999
|
/**
|
2653
3000
|
* Use video
|
2654
|
-
* @param
|
3001
|
+
* @param videoIdOrUrlName - video id or video nice url (e.g. some-interesting-video)
|
2655
3002
|
* @public
|
2656
3003
|
*/
|
2657
|
-
export declare const useVideo: (
|
3004
|
+
export declare const useVideo: (videoIdOrUrlName?: string | undefined) => {
|
2658
3005
|
data: Video | null;
|
2659
3006
|
error: string | null;
|
2660
3007
|
};
|
@@ -2716,7 +3063,10 @@ export declare enum VastProvider {
|
|
2716
3063
|
MALL_TV_PREBID = "malltv-prebid",
|
2717
3064
|
PRIMA = "prima",
|
2718
3065
|
TEST = "test",
|
2719
|
-
TEST_VPAID = "test-vpaid"
|
3066
|
+
TEST_VPAID = "test-vpaid",
|
3067
|
+
JOJ_TEST_AD_FORM_PROGRAMMATIC = "joj-test-ad-form-programmatic",
|
3068
|
+
JOJ_TEST_TESTER_VASTERIX = "joj-test-tester-vasterix",
|
3069
|
+
JOJ_TEST_TESTER_ADFORM_30 = "joj-test-tester-adform-30"
|
2720
3070
|
}
|
2721
3071
|
|
2722
3072
|
/**
|
@@ -2728,7 +3078,6 @@ export declare interface Video extends RowItem {
|
|
2728
3078
|
* @deprecated use assets instead
|
2729
3079
|
*/
|
2730
3080
|
cover: string | null;
|
2731
|
-
created: Date;
|
2732
3081
|
sectionId: string | null;
|
2733
3082
|
channelId: string | null;
|
2734
3083
|
/**
|
@@ -2740,14 +3089,19 @@ export declare interface Video extends RowItem {
|
|
2740
3089
|
image: string | null;
|
2741
3090
|
isPlayable: boolean;
|
2742
3091
|
monetizations: Monetization[];
|
2743
|
-
|
2744
|
-
|
2745
|
-
|
2746
|
-
|
2747
|
-
|
3092
|
+
/**
|
3093
|
+
* Returns all transactions and subscriptions applied to this video.
|
3094
|
+
* Transactions before subscriptions, sorted by price ascending.
|
3095
|
+
*/
|
3096
|
+
getPurchasableMonetizations(options?: GetPurchasableMonetizationsOptions): PurchasableMonetization[];
|
3097
|
+
purchasableMonetization: any | null;
|
3098
|
+
transaction: PurchasableMonetization | undefined;
|
3099
|
+
subscriptions: PurchasableMonetization[];
|
3100
|
+
sources?: any[];
|
2748
3101
|
isPlaylist: boolean;
|
2749
3102
|
name: string;
|
2750
|
-
|
3103
|
+
urlNames?: string[];
|
3104
|
+
urlName?: string;
|
2751
3105
|
price: number | null;
|
2752
3106
|
detailedPrice: DetailedPrice | null;
|
2753
3107
|
uri: string;
|
@@ -2758,7 +3112,6 @@ export declare interface Video extends RowItem {
|
|
2758
3112
|
detailBanner?: string;
|
2759
3113
|
linkedVideosRaw: any[];
|
2760
3114
|
linkedVideos: LinkedVideo[];
|
2761
|
-
purchasableMonetization: any | null;
|
2762
3115
|
contentType: VideoContentType | null;
|
2763
3116
|
year?: number;
|
2764
3117
|
episodeNumber?: number;
|
@@ -2815,6 +3168,14 @@ export declare enum VideoType {
|
|
2815
3168
|
* Video is a standard single video.
|
2816
3169
|
*/
|
2817
3170
|
VIDEO = "VIDEO",
|
3171
|
+
/**
|
3172
|
+
* Part of video original video like CUT.
|
3173
|
+
*/
|
3174
|
+
CUT = "CUT",
|
3175
|
+
/**
|
3176
|
+
* Part of video original video like TRAILER.
|
3177
|
+
*/
|
3178
|
+
TRAILER = "TRAILER",
|
2818
3179
|
TV_PROGRAM = "TV_PROGRAM",
|
2819
3180
|
/**
|
2820
3181
|
* Video object represents whole series, e.g. tv show.
|
@@ -2822,6 +3183,13 @@ export declare enum VideoType {
|
|
2822
3183
|
SERIES = "SERIES"
|
2823
3184
|
}
|
2824
3185
|
|
3186
|
+
/**
|
3187
|
+
* @public
|
3188
|
+
*/
|
3189
|
+
export declare type VideoUrlName = {
|
3190
|
+
[key in LangCode]?: string[];
|
3191
|
+
};
|
3192
|
+
|
2825
3193
|
/**
|
2826
3194
|
* @public
|
2827
3195
|
*/
|
@@ -2947,6 +3315,13 @@ export declare interface WhereFilter {
|
|
2947
3315
|
value: any;
|
2948
3316
|
}
|
2949
3317
|
|
3318
|
+
/**
|
3319
|
+
* The same as WhereFilter, but in array, for easier usage.
|
3320
|
+
* Format: [field, operator, value]
|
3321
|
+
* @public
|
3322
|
+
*/
|
3323
|
+
export declare type WhereFilterArray = [string, WhereFilterOp, any];
|
3324
|
+
|
2950
3325
|
declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';
|
2951
3326
|
|
2952
3327
|
/**
|