@tivio/sdk-react 3.2.3 → 3.3.0
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +14 -1
- package/README.md.bak +14 -1
- package/dist/components/ContextProvider.d.ts +1 -2
- package/dist/components/TivioProvider.d.ts +1 -2
- package/dist/components/hooks/contentHooks.d.ts +1 -1
- package/dist/components/hooks/index.d.ts +1 -0
- package/dist/components/hooks/useApplyInviteCode.d.ts +6 -0
- package/dist/components/hooks/usePurchaseRecovery.d.ts +1 -6
- package/dist/components/hooks/usePurchaseSubscription.d.ts +1 -1
- package/dist/components/hooks/useScreen.d.ts +3 -5
- package/dist/components/hooks/useTransactionPayment.d.ts +1 -6
- package/dist/components/hooks/useVoucher.d.ts +10 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.js +1 -1
- package/dist/services/bundleLoader.d.ts +1 -2
- package/dist/services/bundlePromise.d.ts +1 -1
- package/dist/services/login.d.ts +8 -1
- package/dist/types/bundle.types.d.ts +34 -6
- package/dist/types/types.d.ts +5 -15
- package/package.json +2 -3
@@ -2,7 +2,7 @@
|
|
2
2
|
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
3
|
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
4
|
*/
|
5
|
-
import { InternalConfig, RemoteBundleState, TivioBundle } from '../types/bundle.types';
|
5
|
+
import type { InternalConfig, RemoteBundleState, TivioBundle } from '../types/bundle.types';
|
6
6
|
/**
|
7
7
|
* @throws if fetch fails
|
8
8
|
*/
|
@@ -13,4 +13,3 @@ declare const fetchBundle: (secret: string, conf: InternalConfig) => Promise<str
|
|
13
13
|
declare const createRemotePackageLoader: () => (secret: string, conf: InternalConfig) => Promise<TivioBundle>;
|
14
14
|
declare const createUseRemoteBundle: () => (conf: InternalConfig) => RemoteBundleState;
|
15
15
|
export { fetchBundle, createRemotePackageLoader, createUseRemoteBundle, };
|
16
|
-
export type { RemoteBundleState, };
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { TivioBundle } from '../types/bundle.types';
|
2
|
-
import type { RemoteBundleState } from '
|
2
|
+
import type { RemoteBundleState } from '../types/bundle.types';
|
3
3
|
export declare let tivioBundle: TivioBundle | null;
|
4
4
|
/**
|
5
5
|
* rejects when bundle is not available
|
package/dist/services/login.d.ts
CHANGED
@@ -1,2 +1,9 @@
|
|
1
1
|
import type { UserPayload } from '../types/bundle.types';
|
2
|
-
|
2
|
+
/**
|
3
|
+
* Set user to sign in/out.
|
4
|
+
*
|
5
|
+
* Sign in - setUser('userID', { token: 'xxx' })
|
6
|
+
* Sign out - setUser(null)
|
7
|
+
*/
|
8
|
+
declare const setUser: (userId: string | null, payload: UserPayload) => Promise<void>;
|
9
|
+
export { setUser };
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Currency, ItemsInRow, PaginationInterface, PaginationOptions, QerkoCancellationInfo, Row, ROW_ITEM_TYPES, SubscribeToItemsInRowOptions, SubscribeToTaggedVideos, Tag, TilePropsPartial, UseCancelSubscription } from '@tivio/common';
|
1
|
+
import { Currency, ItemsInRow, PaginationInterface, PaginationOptions, QerkoCancellationInfo, Row, ROW_ITEM_TYPES, SubscribeToItemsInRowOptions, SubscribeToTaggedVideos, Tag, TilePropsPartial, UseCancelSubscription, CUSTOMER_BUILD, PLATFORM, WebRowProps } from '@tivio/common';
|
2
2
|
import { ComponentType } from 'react';
|
3
3
|
import { Logger } from '../services/logger';
|
4
4
|
import { FetchPackage } from '../services/packageLoader';
|
@@ -181,6 +181,11 @@ declare type TivioGetters = {
|
|
181
181
|
* @returns {Promise<Widget | null>} widget or null if widget does not exists
|
182
182
|
*/
|
183
183
|
getWidgetById: (widgetId: string) => Promise<Widget | null>;
|
184
|
+
/**
|
185
|
+
* Get player capabilities based on user's browser and OS as resolved by Tivio.
|
186
|
+
* @returns PlayerCapability[]
|
187
|
+
*/
|
188
|
+
getPlayerCapabilities: () => PlayerCapability[];
|
184
189
|
};
|
185
190
|
interface TivioAuth {
|
186
191
|
changePassword: (newPassword: string) => Promise<void>;
|
@@ -243,7 +248,7 @@ declare type TivioComponents = {
|
|
243
248
|
tagId: string;
|
244
249
|
onError?: (error: Error) => void;
|
245
250
|
}>;
|
246
|
-
WebRow: React.
|
251
|
+
WebRow: React.ComponentType<WebRowProps>;
|
247
252
|
WebTile: React.ComponentType<{
|
248
253
|
item?: Video | Tag;
|
249
254
|
} & TilePropsPartial>;
|
@@ -280,7 +285,7 @@ declare type TivioHooks = {
|
|
280
285
|
purchaseRecoveryResult?: string;
|
281
286
|
loading: boolean;
|
282
287
|
error?: any;
|
283
|
-
purchaseRecovery: (monetizationId: string) =>
|
288
|
+
purchaseRecovery: (monetizationId: string) => void;
|
284
289
|
};
|
285
290
|
useRowsInScreen: (screenId: string, options: PaginationOptions) => {
|
286
291
|
pagination: PaginationInterface<Row> | null;
|
@@ -291,6 +296,10 @@ declare type TivioHooks = {
|
|
291
296
|
error: Error | null;
|
292
297
|
};
|
293
298
|
useSearch: UseSearch;
|
299
|
+
useVideo: (videoId: string) => {
|
300
|
+
data: Video | null;
|
301
|
+
error: string | null;
|
302
|
+
};
|
294
303
|
useVoucher: (voucherId: string) => any;
|
295
304
|
/**
|
296
305
|
* @deprecated will be removed in version
|
@@ -300,6 +309,12 @@ declare type TivioHooks = {
|
|
300
309
|
canPurchaseWatchWithoutAds: boolean;
|
301
310
|
showPurchaseDialog: () => void;
|
302
311
|
};
|
312
|
+
useApplyInviteCode: () => {
|
313
|
+
applyInviteCodeResult?: boolean;
|
314
|
+
loading: boolean;
|
315
|
+
error?: any;
|
316
|
+
applyInviteCode: (code: string) => void;
|
317
|
+
};
|
303
318
|
};
|
304
319
|
export declare type UserPayload = Record<string, any>;
|
305
320
|
declare type TivioBundle = {
|
@@ -316,7 +331,7 @@ declare type TivioBundle = {
|
|
316
331
|
}) => Promise<QerkoPaymentInfo>;
|
317
332
|
cancelSubscriptionWithQerko: (subscriptionId: string) => Promise<QerkoCancellationInfo>;
|
318
333
|
setLanguage: (language: Language) => void;
|
319
|
-
setUser: (userId: string, userPayload: UserPayload
|
334
|
+
setUser: (userId: string | null, userPayload: UserPayload) => Promise<void>;
|
320
335
|
sources: TivioSources;
|
321
336
|
subscriptions: TivioSubscriptions;
|
322
337
|
internal: {
|
@@ -328,6 +343,9 @@ declare type TivioBundle = {
|
|
328
343
|
declare type TivioInternalComponents = {
|
329
344
|
CustomButton: React.ComponentType;
|
330
345
|
WebLandingScreen: React.ComponentType;
|
346
|
+
WebVideoScreen: React.ComponentType<{
|
347
|
+
videoId: string;
|
348
|
+
}>;
|
331
349
|
};
|
332
350
|
declare type TivioInternalHooks = {
|
333
351
|
useAuthOverlay: () => AuthOverlayState;
|
@@ -347,7 +365,11 @@ declare type TivioInternalHooks = {
|
|
347
365
|
declare type TivioInternalProviders = {
|
348
366
|
AppThemeProvider: React.ComponentType;
|
349
367
|
AuthOverlayContextProvider: React.ComponentType;
|
350
|
-
CustomerProvider: React.ComponentType
|
368
|
+
CustomerProvider: React.ComponentType<{
|
369
|
+
customer: CUSTOMER_BUILD;
|
370
|
+
platform: PLATFORM;
|
371
|
+
children: any;
|
372
|
+
}>;
|
351
373
|
ConfigProvider: React.ComponentType;
|
352
374
|
UserContextProvider: React.ComponentType;
|
353
375
|
SubscriptionOverlayContextProvider: React.ComponentType;
|
@@ -392,4 +414,10 @@ declare type RemoteBundleState = {
|
|
392
414
|
settings: Settings;
|
393
415
|
state: 'loading' | 'error' | 'ready';
|
394
416
|
} & Nullable<TivioBundle>;
|
395
|
-
|
417
|
+
/**
|
418
|
+
* TODO: Duplicate, because we can't import types from core-js.
|
419
|
+
*/
|
420
|
+
declare type NewVoucher = {
|
421
|
+
expirationDate: Date | number;
|
422
|
+
};
|
423
|
+
export type { RemoteBundleState, Config, Settings, InternalConfig, TivioBundle, TivioBundleFile, TivioHooks, TivioComponents, TivioAuth, TivioGetters, TivioSubscriptions, TivioInternalComponents, TivioInternalHooks, TivioInternalProviders, Events, PubSub, PlayerCapability, Currency, AuthOverlayState, AuthOverlayType, SubscriptionOverlayData, SubscriptionOverlayState, QerkoData, QerkoOverlayState, NewVoucher, };
|
package/dist/types/types.d.ts
CHANGED
@@ -5,8 +5,7 @@
|
|
5
5
|
/**
|
6
6
|
* Export public client side API
|
7
7
|
*/
|
8
|
-
import {
|
9
|
-
import type { Monetization, Video } from '@tivio/common';
|
8
|
+
import type { Monetization, Video, User } from '@tivio/common';
|
10
9
|
import type React from 'react';
|
11
10
|
declare type RemoteProviderProps = {
|
12
11
|
disableUnmounting?: boolean;
|
@@ -21,19 +20,6 @@ declare enum Language {
|
|
21
20
|
SK = "sk",
|
22
21
|
SP = "sp"
|
23
22
|
}
|
24
|
-
declare type User = {
|
25
|
-
purchases: Purchase[];
|
26
|
-
purchasedVods: Purchase[];
|
27
|
-
purchasedSubscriptions: Purchase[];
|
28
|
-
getPurchasedVodsWithInitializedVideos: () => Promise<Purchase[]>;
|
29
|
-
isPurchasesInitialized: boolean;
|
30
|
-
isSignedIn: boolean;
|
31
|
-
email: string;
|
32
|
-
type?: USER_TYPE;
|
33
|
-
photoURL: string | null;
|
34
|
-
name?: string;
|
35
|
-
authUserId?: string;
|
36
|
-
};
|
37
23
|
interface UserData {
|
38
24
|
name?: string;
|
39
25
|
}
|
@@ -135,6 +121,10 @@ interface WebPlayerProps {
|
|
135
121
|
id: string;
|
136
122
|
source?: VodTivioSourcePojo | ChannelSourcePojo | VideoPath | null;
|
137
123
|
onEnded?: () => any;
|
124
|
+
/**
|
125
|
+
* If this function is specified, then "Back" button is shown in top right corner.
|
126
|
+
*/
|
127
|
+
onBack?: () => void;
|
138
128
|
className?: string;
|
139
129
|
/**
|
140
130
|
* default false
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@tivio/sdk-react",
|
3
|
-
"version": "3.
|
3
|
+
"version": "3.3.0",
|
4
4
|
"main": "dist/index.js",
|
5
5
|
"typings": "dist/index.d.ts",
|
6
6
|
"source": "src/index.ts",
|
@@ -15,7 +15,6 @@
|
|
15
15
|
"start": "yarn ts-node ./scripts/start.ts",
|
16
16
|
"test": "jest --config=./jest.config.js --coverage",
|
17
17
|
"clean": "rm -rf dist",
|
18
|
-
"prepublishOnly": "yarn && yarn run build && yarn ts-node ./scripts/prepublish.ts",
|
19
18
|
"postpublish": "yarn ts-node ./scripts/postpublish.ts",
|
20
19
|
"publish:alpha": "npm publish --tag alpha",
|
21
20
|
"check:cycles": "npx madge --circular src/**/*"
|
@@ -28,7 +27,7 @@
|
|
28
27
|
"@material-ui/core": "^4.11.2",
|
29
28
|
"@material-ui/icons": "^4.11.2",
|
30
29
|
"@sentry/browser": "^6.1.0",
|
31
|
-
"@tivio/common": "1.1.
|
30
|
+
"@tivio/common": "1.1.82",
|
32
31
|
"es7-object-polyfill": "^1.0.1",
|
33
32
|
"firebase": "^8.2.3",
|
34
33
|
"formik": "^2.2.7",
|