@tivio/sdk-react 2.3.4-beta.1 → 2.3.4-beta.2
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/ContextProvider.d.ts +3 -0
- package/dist/components/PlayerProvider.d.ts +19 -0
- package/dist/components/TivioProvider.d.ts +17 -0
- package/dist/components/TivioWidget.d.ts +7 -0
- package/dist/components/TivioWidgetError.d.ts +10 -0
- package/dist/components/TivioWidgetLoader.d.ts +6 -0
- package/dist/components/TvTivioProvider.d.ts +7 -0
- package/dist/components/context/ChannelsContext.d.ts +6 -0
- package/dist/components/context/OrganizationSubscriptionsContext.d.ts +9 -0
- package/dist/components/context/PurchasesWithVideosContext.d.ts +9 -0
- package/dist/components/context/RowItemsContext.d.ts +7 -0
- package/dist/components/context/ScreensContext.d.ts +6 -0
- package/dist/components/context/SectionsContext.d.ts +6 -0
- package/dist/components/context/UserContext.d.ts +9 -0
- package/dist/components/context/VideosContext.d.ts +6 -0
- package/dist/components/context/index.d.ts +8 -0
- package/dist/components/context/types.d.ts +27 -0
- package/dist/components/hooks/contentHooks.d.ts +68 -0
- package/dist/components/hooks/index.d.ts +16 -0
- package/dist/components/hooks/playerHooks.d.ts +23 -0
- package/dist/components/hooks/useCancelSubscription.d.ts +2 -0
- package/dist/components/hooks/useError.d.ts +9 -0
- package/dist/components/hooks/useFreePurchase.d.ts +4 -0
- package/dist/components/hooks/useItemsInRow.d.ts +11 -0
- package/dist/components/hooks/useOrganizationSubscriptions.d.ts +4 -0
- package/dist/components/hooks/usePurchaseSubscription.d.ts +3 -0
- package/dist/components/hooks/usePurchasesWithVideos.d.ts +7 -0
- package/dist/components/hooks/useRowsInScreen.d.ts +6 -0
- package/dist/components/hooks/useScreen.d.ts +12 -0
- package/dist/components/hooks/useScreens.d.ts +5 -0
- package/dist/components/hooks/useSearch.d.ts +8 -0
- package/dist/components/hooks/useTaggedVideos.d.ts +11 -0
- package/dist/components/hooks/useTivio.d.ts +3 -0
- package/dist/components/hooks/useTransactionPayment.d.ts +3 -0
- package/dist/components/hooks/useUser.d.ts +5 -0
- package/dist/config.d.ts +17 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.js +1 -0
- package/dist/services/bundleLoader.d.ts +13 -0
- package/dist/services/bundlePromise.d.ts +4 -0
- package/dist/services/dependencyResolver.d.ts +23 -0
- package/dist/services/logger.d.ts +26 -0
- package/dist/services/packageLoader.d.ts +6 -0
- package/dist/services/pubSub.d.ts +13 -0
- package/dist/services/sentry.d.ts +4 -0
- package/dist/services/settings.d.ts +13 -0
- package/dist/types/bundle.types.d.ts +206 -0
- package/dist/types/common.d.ts +6 -0
- package/dist/types/config.types.d.ts +0 -0
- package/dist/types/customPlayer.types.d.ts +38 -0
- package/dist/types/types.d.ts +176 -0
- package/package.json +1 -1
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import React, { FunctionComponentElement } from 'react';
|
6
|
+
export declare type PlayerProviderProps = {
|
7
|
+
children: React.ReactNode;
|
8
|
+
playerWrapperId?: string;
|
9
|
+
};
|
10
|
+
export declare type Player = any;
|
11
|
+
/**
|
12
|
+
* value
|
13
|
+
* - undefined - you are trying to access this context but are not inside <PlayerContext /> that is a bug
|
14
|
+
* - null - we are waiting for remote code
|
15
|
+
* - Player - player is ready
|
16
|
+
*/
|
17
|
+
export declare const PlayerContext: React.Context<any>;
|
18
|
+
export declare const PlayerProvider: ({ children, playerWrapperId, }: PlayerProviderProps) => FunctionComponentElement<PlayerProviderProps>;
|
19
|
+
export declare function withPlayerContext(id: string): <P>(WrappedComponent: React.ComponentType<P>) => (props: P) => JSX.Element;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import React from 'react';
|
6
|
+
import { RemoteBundleState } from '../services/bundleLoader';
|
7
|
+
import { Config } from '../types/bundle.types';
|
8
|
+
export declare type TivioProviderProps = {
|
9
|
+
/**
|
10
|
+
* This prop must be set only once and not change value afterwards
|
11
|
+
*/
|
12
|
+
conf?: Config;
|
13
|
+
children: React.ReactNode;
|
14
|
+
};
|
15
|
+
declare const TivioContext: React.Context<RemoteBundleState | null>;
|
16
|
+
export declare const TivioProvider: React.FC<TivioProviderProps>;
|
17
|
+
export { TivioContext, };
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import React from 'react';
|
6
|
+
import type { TivioWidgetProps, TivioWidgetRef } from '../types/types';
|
7
|
+
export declare const TivioWidget: React.ForwardRefExoticComponent<Pick<TivioWidgetProps, "id" | "onEnabled" | "onBlur"> & React.RefAttributes<TivioWidgetRef>>;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import React from 'react';
|
6
|
+
declare type TivioWidgetErrorProps = {
|
7
|
+
error: string | null;
|
8
|
+
};
|
9
|
+
export declare const TivioWidgetError: React.FC<TivioWidgetErrorProps>;
|
10
|
+
export {};
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import React from 'react';
|
6
|
+
import { TivioProviderProps } from './TivioProvider';
|
7
|
+
export declare const TvTivioProvider: React.FC<TivioProviderProps>;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { Channel } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
import type { DataState } from './types';
|
4
|
+
declare const ChannelsContext: React.Context<DataState<Channel>>;
|
5
|
+
declare const ChannelsContextProvider: React.FC;
|
6
|
+
export { ChannelsContext, ChannelsContextProvider, };
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { Monetization } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
interface OrganizationSubscriptionsContextState {
|
4
|
+
subscriptions: Monetization[];
|
5
|
+
setSubscriptions: (subscriptions: Monetization[]) => void;
|
6
|
+
}
|
7
|
+
declare const OrganizationSubscriptionsContext: React.Context<OrganizationSubscriptionsContextState>;
|
8
|
+
declare const OrganizationSubscriptionsContextProvider: React.FC;
|
9
|
+
export { OrganizationSubscriptionsContextProvider, OrganizationSubscriptionsContext, };
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { Purchase } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
interface PurchasesWithVideosContextState {
|
4
|
+
purchases: Purchase[];
|
5
|
+
setPurchases: (purchases: Purchase[]) => void;
|
6
|
+
}
|
7
|
+
declare const PurchasesWithVideosContext: React.Context<PurchasesWithVideosContextState>;
|
8
|
+
declare const PurchasesWithVideosContextProvider: React.FC;
|
9
|
+
export { PurchasesWithVideosContext, PurchasesWithVideosContextProvider, };
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DataState } from './types';
|
3
|
+
import type { Tag, Video } from '@tivio/common';
|
4
|
+
declare type Item = Video | Tag;
|
5
|
+
declare const RowItemsContext: React.Context<DataState<Item> | null>;
|
6
|
+
declare const RowItemsContextProvider: React.FC;
|
7
|
+
export { RowItemsContext, RowItemsContextProvider, };
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { SingleDataState } from './types';
|
3
|
+
import type { Screen } from '@tivio/common';
|
4
|
+
declare const ScreensContext: React.Context<SingleDataState<Screen> | null>;
|
5
|
+
declare const ScreensContextProvider: React.FC;
|
6
|
+
export { ScreensContext, ScreensContextProvider, };
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { Section } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
import { DataState } from './types';
|
4
|
+
declare const SectionsContext: React.Context<DataState<Section>>;
|
5
|
+
declare const SectionsContextProvider: React.FC;
|
6
|
+
export { SectionsContext, SectionsContextProvider, };
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { User } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
interface UserContextState {
|
4
|
+
user: User | null;
|
5
|
+
setUser: (user: User) => void;
|
6
|
+
}
|
7
|
+
declare const UserContext: React.Context<UserContextState>;
|
8
|
+
declare const UserContextProvider: React.FC;
|
9
|
+
export { UserContextProvider, UserContext, };
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { Video } from '@tivio/common';
|
2
|
+
import React from 'react';
|
3
|
+
import { DataState } from './types';
|
4
|
+
declare const VideosContext: React.Context<DataState<Video>>;
|
5
|
+
declare const VideosContextProvider: React.FC;
|
6
|
+
export { VideosContext, VideosContextProvider, };
|
@@ -0,0 +1,8 @@
|
|
1
|
+
export * from './ChannelsContext';
|
2
|
+
export * from './OrganizationSubscriptionsContext';
|
3
|
+
export * from './PurchasesWithVideosContext';
|
4
|
+
export * from './ScreensContext';
|
5
|
+
export * from './SectionsContext';
|
6
|
+
export * from './UserContext';
|
7
|
+
export * from './VideosContext';
|
8
|
+
export * from './RowItemsContext';
|
@@ -0,0 +1,27 @@
|
|
1
|
+
export interface SingleHookData<T> {
|
2
|
+
data: T | null;
|
3
|
+
error: Error | null;
|
4
|
+
isLoading: boolean;
|
5
|
+
}
|
6
|
+
export interface SingleDataState<T> {
|
7
|
+
data: {
|
8
|
+
[key: string]: SingleHookData<T>;
|
9
|
+
};
|
10
|
+
setData: (key: string, data: SingleHookData<T>) => void;
|
11
|
+
}
|
12
|
+
export declare type PaginationData<T> = {
|
13
|
+
items: T[];
|
14
|
+
hasNextPage: boolean;
|
15
|
+
fetchMore: Function;
|
16
|
+
};
|
17
|
+
export interface HookData<T> {
|
18
|
+
data: PaginationData<T> | null;
|
19
|
+
error: Error | null;
|
20
|
+
isLoading: boolean;
|
21
|
+
}
|
22
|
+
export interface DataState<T> {
|
23
|
+
data: {
|
24
|
+
[key: string]: HookData<T>;
|
25
|
+
};
|
26
|
+
setData: (key: string, data: HookData<T>) => void;
|
27
|
+
}
|
@@ -0,0 +1,68 @@
|
|
1
|
+
import { Channel, Section, Video, Widget } from '../..';
|
2
|
+
import { ChannelsContext, SectionsContext, VideosContext } from '../context';
|
3
|
+
/**
|
4
|
+
* Use widget
|
5
|
+
* @param widgetId - widget id
|
6
|
+
*/
|
7
|
+
declare const useWidget: (widgetId: string) => {
|
8
|
+
error: string;
|
9
|
+
widget: Widget | null;
|
10
|
+
};
|
11
|
+
/**
|
12
|
+
* Use channel
|
13
|
+
* @param channelId - channel id
|
14
|
+
*/
|
15
|
+
declare const useChannel: (channelId: string) => {
|
16
|
+
error: string | null;
|
17
|
+
data: Channel | null;
|
18
|
+
};
|
19
|
+
/**
|
20
|
+
* Use section
|
21
|
+
* @param sectionId - section id
|
22
|
+
*/
|
23
|
+
declare const useSection: (sectionId: string) => {
|
24
|
+
error: string | null;
|
25
|
+
data: Section | null;
|
26
|
+
};
|
27
|
+
/**
|
28
|
+
* Use video
|
29
|
+
* @param videoId - video id
|
30
|
+
*/
|
31
|
+
declare const useVideo: (videoId?: string | undefined) => {
|
32
|
+
error: string | null;
|
33
|
+
data: Video | null;
|
34
|
+
};
|
35
|
+
/**
|
36
|
+
* Use videos in section
|
37
|
+
* @param sectionId - section id
|
38
|
+
* @param [limit] - videos count, defaults to 10
|
39
|
+
*/
|
40
|
+
declare const useVideosInSection: (sectionId?: string | undefined, limit?: number) => {
|
41
|
+
error: Error | null;
|
42
|
+
data: import("../context/types").PaginationData<Video> | null;
|
43
|
+
isLoading: boolean;
|
44
|
+
};
|
45
|
+
/**
|
46
|
+
* Use section in channel
|
47
|
+
* @param channelId - channel id
|
48
|
+
* @param [limit] - sections count, defaults to 10
|
49
|
+
*/
|
50
|
+
declare const useSectionsInChannel: (channelId: string, limit?: number) => {
|
51
|
+
error: Error | null;
|
52
|
+
data: import("../context/types").PaginationData<import("@tivio/common/dist/types/externalTypes/section").Section> | null;
|
53
|
+
isLoading: boolean;
|
54
|
+
};
|
55
|
+
/**
|
56
|
+
* Use channels in widget
|
57
|
+
* @param widgetId - widget id
|
58
|
+
* @param [limit] - channels count, defaults to 10
|
59
|
+
*/
|
60
|
+
declare const useChannelsInWidget: (widgetId: string, limit?: number) => {
|
61
|
+
error: Error | null;
|
62
|
+
data: import("../context/types").PaginationData<import("@tivio/common/dist/types/externalTypes/channel").Channel> | null;
|
63
|
+
isLoading: boolean;
|
64
|
+
};
|
65
|
+
declare const useIsLoaded: () => {
|
66
|
+
isTivioLoaded: boolean;
|
67
|
+
};
|
68
|
+
export { useWidget, useChannel, useIsLoaded, useSection, useVideo, useVideosInSection, useSectionsInChannel, useChannelsInWidget, VideosContext, SectionsContext, ChannelsContext, };
|
@@ -0,0 +1,16 @@
|
|
1
|
+
export * from './useUser';
|
2
|
+
export * from './useTaggedVideos';
|
3
|
+
export * from './useScreens';
|
4
|
+
export * from './useScreen';
|
5
|
+
export * from './useSearch';
|
6
|
+
export * from './useItemsInRow';
|
7
|
+
export * from './useCancelSubscription';
|
8
|
+
export * from './useTransactionPayment';
|
9
|
+
export * from './usePurchaseSubscription';
|
10
|
+
export * from './contentHooks';
|
11
|
+
export * from './playerHooks';
|
12
|
+
export * from './useOrganizationSubscriptions';
|
13
|
+
export * from './usePurchasesWithVideos';
|
14
|
+
export * from './useFreePurchase';
|
15
|
+
export * from './useRowsInScreen';
|
16
|
+
export * from './useTivio';
|
@@ -0,0 +1,23 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import type { AdSource, UsePlayerEvent } from '../../types/customPlayer.types';
|
6
|
+
import type { BetOffer, Marker } from '../../types/types';
|
7
|
+
export declare const usePlayerEvent: UsePlayerEvent;
|
8
|
+
export declare const useMarkers: () => Marker[] | null;
|
9
|
+
export declare const useBetOffer: () => BetOffer | null;
|
10
|
+
interface IntroMarker {
|
11
|
+
marker: Marker;
|
12
|
+
skip: () => void;
|
13
|
+
}
|
14
|
+
export declare const useIntro: () => IntroMarker | null;
|
15
|
+
export declare const useAd: () => AdSource | null;
|
16
|
+
export declare const useCurrentMarker: () => Marker | null;
|
17
|
+
export declare const useSeekState: () => boolean | null;
|
18
|
+
interface AdSegment {
|
19
|
+
remainingMs: number;
|
20
|
+
canSeek: boolean;
|
21
|
+
}
|
22
|
+
export declare const useAdSegment: () => AdSegment | null;
|
23
|
+
export {};
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { PaginationInterface, SubscribeToItemsInRowOptions, Tag, Video } from '@tivio/common';
|
2
|
+
/**
|
3
|
+
* Use row items
|
4
|
+
* @param rowId - row ID
|
5
|
+
* @param options - subscription options
|
6
|
+
*/
|
7
|
+
declare const useItemsInRow: (rowId: string, options?: SubscribeToItemsInRowOptions) => {
|
8
|
+
pagination: PaginationInterface<Video | Tag> | null;
|
9
|
+
error: Error | null;
|
10
|
+
};
|
11
|
+
export { useItemsInRow, };
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { ScreenOptions } from '@tivio/common';
|
2
|
+
/**
|
3
|
+
* Use app screen
|
4
|
+
* @param screenId - screen ID
|
5
|
+
* @param options - subscribe to screen options
|
6
|
+
*/
|
7
|
+
declare const useScreen: (screenId: string, options?: ScreenOptions | undefined) => {
|
8
|
+
error: Error | null;
|
9
|
+
data: import("@tivio/common").Screen | null;
|
10
|
+
isLoading: boolean;
|
11
|
+
};
|
12
|
+
export { useScreen, };
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { ALGOLIA_INDEX_NAME, UseSearch } from '@tivio/common';
|
2
|
+
/**
|
3
|
+
* Full text search that returns entities based on search query.
|
4
|
+
* @param indexName - index that search would be performed on ('videos', 'tags', etc.)
|
5
|
+
* @param options - pagination options
|
6
|
+
*/
|
7
|
+
export declare const useSearch: UseSearch;
|
8
|
+
export { ALGOLIA_INDEX_NAME };
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { PaginationInterface, SubscribeToItemsInRowOptions, Video } from '@tivio/common';
|
2
|
+
/**
|
3
|
+
* Returns videos with given tag ids
|
4
|
+
* @param tagIds - tag ids
|
5
|
+
* @param options - subscription options
|
6
|
+
*/
|
7
|
+
declare const useTaggedVideos: (tagIds: string[], options?: SubscribeToItemsInRowOptions) => {
|
8
|
+
pagination: PaginationInterface<Video> | null;
|
9
|
+
error: Error | null;
|
10
|
+
};
|
11
|
+
export { useTaggedVideos, };
|
package/dist/config.d.ts
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2021, nangu.TV, a.s. All rights reserved.
|
3
|
+
* nangu.TV, a.s PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
|
4
|
+
*/
|
5
|
+
import { Config as ExternalConfig, InternalConfig } from './types/bundle.types';
|
6
|
+
export declare const defaultConf: {
|
7
|
+
secret: null;
|
8
|
+
resolverUrl: string;
|
9
|
+
disableUnmounting: boolean;
|
10
|
+
fetchPackage: import("./services/packageLoader").FetchPackage;
|
11
|
+
pubSub: import("./types/bundle.types").PubSub;
|
12
|
+
LoaderComponent: import("react").FC<{}>;
|
13
|
+
ErrorComponent: import("react").FC<{
|
14
|
+
error: string | null;
|
15
|
+
}>;
|
16
|
+
};
|
17
|
+
export declare const createInternalConf: (conf: ExternalConfig | null) => InternalConfig;
|
package/dist/index.d.ts
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
export { PlayerProvider, withPlayerContext } from './components/PlayerProvider';
|
2
|
+
export type { PlayerProviderProps } from './components/PlayerProvider';
|
3
|
+
export { bundlePromise } from './services/bundlePromise';
|
4
|
+
export * from './components/hooks';
|
5
|
+
export * from './components/TivioProvider';
|
6
|
+
export * from './components/TivioWidget';
|
7
|
+
export * from './components/TivioWidgetError';
|
8
|
+
export * from './components/TvTivioProvider';
|
9
|
+
export * from './components/TivioWidgetLoader';
|
10
|
+
export * from './types/customPlayer.types';
|
11
|
+
export * from './services/bundleLoader';
|
12
|
+
export * from './services/pubSub';
|
13
|
+
export * from './types/types';
|
14
|
+
export { Disposer } from './types/common';
|
15
|
+
export { Empty } from './types/common';
|
16
|
+
export { Nullable } from './types/common';
|
17
|
+
export { Config } from './types/bundle.types';
|
18
|
+
export { TivioBundle } from './types/bundle.types';
|
19
|
+
export { TivioHooks } from './types/bundle.types';
|
20
|
+
export { TivioComponents } from './types/bundle.types';
|
21
|
+
export { TivioAuth } from './types/bundle.types';
|
22
|
+
export { TivioGetters } from './types/bundle.types';
|
23
|
+
export { TivioSubscriptions } from './types/bundle.types';
|