@tivio/sdk-react 3.2.1 → 3.2.2

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.
@@ -1,4 +1,4 @@
1
- import { Currency, QerkoCancellationInfo, ROW_ITEM_TYPES, SubscribeToTaggedVideos, TileProps, UseCancelSubscription } from '@tivio/common';
1
+ import { Currency, ItemsInRow, PaginationInterface, PaginationOptions, QerkoCancellationInfo, Row, ROW_ITEM_TYPES, SubscribeToItemsInRowOptions, SubscribeToTaggedVideos, Tag, TilePropsPartial, UseCancelSubscription } from '@tivio/common';
2
2
  import { ComponentType } from 'react';
3
3
  import { Logger } from '../services/logger';
4
4
  import { FetchPackage } from '../services/packageLoader';
@@ -54,6 +54,10 @@ declare type InternalConfig = {
54
54
  sdkVersion: string;
55
55
  secret: string | null;
56
56
  verbose?: boolean;
57
+ /**
58
+ * @private
59
+ */
60
+ forceCloudFnResolver?: boolean;
57
61
  };
58
62
  declare type Events = {
59
63
  'on-ready': RemoteBundleState;
@@ -63,7 +67,7 @@ interface PubSub {
63
67
  publish: <K extends keyof Events>(triggerName: K, payload: Events[K]) => Empty;
64
68
  subscribe: <K extends keyof Events>(triggerName: K, onMessage: (data: Events[K]) => Empty) => Disposer;
65
69
  }
66
- declare type Config = Pick<InternalConfig, 'bundleUrlOverride' | 'currency' | 'disableUnmounting' | 'capabilitiesOptions' | 'enable' | 'enableSentry' | 'ErrorComponent' | 'language' | 'LoaderComponent' | 'logger' | 'secret' | 'verbose'> & {
70
+ declare type Config = Pick<InternalConfig, 'bundleUrlOverride' | 'currency' | 'disableUnmounting' | 'capabilitiesOptions' | 'enable' | 'enableSentry' | 'ErrorComponent' | 'language' | 'LoaderComponent' | 'logger' | 'secret' | 'verbose' | 'forceCloudFnResolver'> & {
67
71
  deviceCapabilities: PlayerCapability[] | 'auto';
68
72
  /**
69
73
  * @private
@@ -194,9 +198,14 @@ interface TivioAuth {
194
198
  signOut: () => Promise<void>;
195
199
  createFreePurchase: (monetizationId: string) => Promise<void>;
196
200
  }
197
- interface TileActionProps {
198
- goToPlayer?: (videoId: string, type: ROW_ITEM_TYPES, rowId?: string) => void;
199
- goToLoginScreen?: () => void;
201
+ export interface RouterOverrides {
202
+ goToPlayer: (videoId: string, type: ROW_ITEM_TYPES, rowId?: string) => void;
203
+ goToTagPage: (tagId: string) => void;
204
+ goToLoginScreen: () => void;
205
+ goBack: () => void;
206
+ }
207
+ export interface RouterOverridesContextState {
208
+ routerOverrides: RouterOverrides;
200
209
  }
201
210
  declare type TivioComponents = {
202
211
  AdIndicationButtonWeb: React.ReactNode;
@@ -205,6 +214,9 @@ declare type TivioComponents = {
205
214
  Provider: React.ComponentType<RemoteProviderProps>;
206
215
  Recommendation: React.ReactNode;
207
216
  SkipButtonWeb: React.ReactNode;
217
+ /**
218
+ * @deprecated will be removed in in @tivio/sdk-react@4
219
+ */
208
220
  VideoAdBanner: React.ReactNode;
209
221
  WebPlayer: React.ComponentType<WebPlayerProps>;
210
222
  Widget: React.ComponentType<TivioWidgetProps>;
@@ -222,9 +234,15 @@ declare type TivioComponents = {
222
234
  TvApp: React.ComponentType<TvAppProps>;
223
235
  CustomerScreen: React.ComponentType<{
224
236
  screenId: string;
225
- } & TileActionProps>;
226
- Row: React.ReactNode;
227
- AppTile: React.ComponentType<TileProps>;
237
+ }>;
238
+ WebTagScreen: React.ComponentType<{
239
+ tagId: string;
240
+ onError?: (error: Error) => void;
241
+ }>;
242
+ WebRow: React.ReactNode;
243
+ WebTile: React.ComponentType<{
244
+ item?: Video | Tag;
245
+ } & TilePropsPartial>;
228
246
  FeatureSupportCheck: React.ComponentType<{}>;
229
247
  };
230
248
  declare type AdSegment = {
@@ -250,6 +268,18 @@ declare type TivioHooks = {
250
268
  useAd: () => [(AdSource | null)];
251
269
  useAdSegment: () => AdSegment | null;
252
270
  useCancelSubscription: UseCancelSubscription;
271
+ useItemsInRow: (rowId: string, options: PaginationOptions) => {
272
+ pagination: PaginationInterface<ItemsInRow> | null;
273
+ error: Error | null;
274
+ };
275
+ useRowsInScreen: (screenId: string, options: PaginationOptions) => {
276
+ pagination: PaginationInterface<Row> | null;
277
+ error: Error | null;
278
+ };
279
+ useTaggedVideos: (tagIds: string[], options: SubscribeToItemsInRowOptions) => {
280
+ pagination: PaginationInterface<Video> | null;
281
+ error: Error | null;
282
+ };
253
283
  useSearch: UseSearch;
254
284
  useVoucher: (voucherId: string) => any;
255
285
  useLastVideoByWidgetId: (widgetId: string) => Video | null;
@@ -303,6 +333,7 @@ declare type TivioInternalProviders = {
303
333
  QerkoOverlayContextProvider: React.ComponentType;
304
334
  PurchasesWithVideosContextProvider: React.ComponentType;
305
335
  OrganizationSubscriptionsContextProvider: React.ComponentType;
336
+ RouterOverridesContextProvider: React.ComponentType<RouterOverridesContextState>;
306
337
  };
307
338
  declare type TivioBundleFile = {
308
339
  Tivio: TivioBundle;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tivio/sdk-react",
3
- "version": "3.2.1",
3
+ "version": "3.2.2",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "source": "src/index.ts",
@@ -27,7 +27,7 @@
27
27
  "@material-ui/core": "^4.11.2",
28
28
  "@material-ui/icons": "^4.11.2",
29
29
  "@sentry/browser": "^6.1.0",
30
- "@tivio/common": "1.1.77",
30
+ "@tivio/common": "1.1.78",
31
31
  "firebase": "^8.2.3",
32
32
  "formik": "^2.2.7",
33
33
  "i18next": "^19.8.4",