@tivio/sdk-react 5.0.1 → 5.0.3-alpha

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,5 +1,6 @@
1
1
  import { ComponentType } from 'react';
2
2
  import { FunctionComponentElement } from 'react';
3
+ import { GeoPoint } from '@firebase/firestore-types';
3
4
  import { OperatingSystem } from 'detect-browser';
4
5
  import { default as React_2 } from 'react';
5
6
 
@@ -1100,18 +1101,44 @@ export declare type LiveTvChannelSource = SourceBase & {
1100
1101
  };
1101
1102
 
1102
1103
  /**
1104
+ * If value of the field (only 1st level) is undefined it means that it was never saved
1105
+ * and might or might not be present in maxmind service.
1106
+ *
1107
+ * If it is null it means that maxmind does not have data for this field.
1108
+ *
1103
1109
  * @public
1104
1110
  */
1105
- export declare type LocationField = {
1111
+ export declare interface LocationField {
1106
1112
  /**
1107
- * Two-letter uppercase continent code (TODO not sure if this ISO-3166 format or something else, we get these from maxmind service)
1113
+ * Two-letter uppercase continent code (TODO not sure if this ISO-3166 format or something else, we get these from maxmind service).
1108
1114
  */
1109
- continentCode?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA';
1115
+ continentCode?: 'AF' | 'AN' | 'AS' | 'EU' | 'NA' | 'OC' | 'SA' | null;
1110
1116
  /**
1111
- * Two-letter uppercase country code according to ISO-3166 format (see https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)
1117
+ * Two-letter uppercase country code according to ISO-3166 format (see https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes).
1112
1118
  */
1113
- countryIsoCode?: string;
1114
- };
1119
+ countryIsoCode?: string | null;
1120
+ /**
1121
+ *
1122
+ */
1123
+ city?: {
1124
+ /**
1125
+ * Maxmind specific id, works as key for identifying cities
1126
+ * (see https://support.maxmind.com/hc/en-us/articles/4414877149467-IP-Geolocation-Data#h_01FRRNFD5Z5EWNCAXM6SZZ5H2C).
1127
+ */
1128
+ geonameId: number;
1129
+ /**
1130
+ * City name in english (see https://maxmind.github.io/GeoIP2-node/interfaces/CityRecord.html#names).
1131
+ */
1132
+ cityName?: string;
1133
+ } | null;
1134
+ /**
1135
+ * The approximate latitude and longitude of the location associated with the IP address.
1136
+ * This value is not precise and should not be used to identify a particular address or household.
1137
+ *
1138
+ * Source https://maxmind.github.io/GeoIP2-node/interfaces/LocationRecord.html#latitude.
1139
+ */
1140
+ geoPoint?: GeoPoint | null;
1141
+ }
1115
1142
 
1116
1143
  declare interface Logger {
1117
1144
  /** important messages */
@@ -2552,7 +2579,7 @@ export declare type TivioComponents = {
2552
2579
  onEnded?: () => any;
2553
2580
  }>;
2554
2581
  TvApp: React_2.ComponentType<TvAppProps>;
2555
- FeatureSupportCheck: React_2.ComponentType<{}>;
2582
+ FeatureSupportCheck: React_2.ComponentType;
2556
2583
  CustomerScreen: React_2.ComponentType<{
2557
2584
  screenId: string;
2558
2585
  }>;
@@ -2692,6 +2719,7 @@ export declare type TivioHooks = {
2692
2719
  applyInviteCode: (code: string) => void;
2693
2720
  inviteCodeReset: () => void;
2694
2721
  };
2722
+ useChannelSource: UseChannelSource;
2695
2723
  };
2696
2724
 
2697
2725
  /**
@@ -2751,7 +2779,6 @@ export declare type TivioInternalHooks = {
2751
2779
  loading: boolean;
2752
2780
  });
2753
2781
  useTvChannel: UseTvChannel;
2754
- useChannelSource: UseChannelSource;
2755
2782
  useUser: () => {
2756
2783
  user: User | null;
2757
2784
  error: string | null;
@@ -2948,6 +2975,11 @@ export declare type TivioVodSource = SourceBase & StartAndContinuePosition & {
2948
2975
  */
2949
2976
  export declare const TivioWidget: React_2.ForwardRefExoticComponent<Omit<TivioWidgetProps, "ref"> & React_2.RefAttributes<TivioWidgetRef>>;
2950
2977
 
2978
+ /**
2979
+ * @public
2980
+ */
2981
+ export declare const TivioWidgetApp: React_2.ForwardRefExoticComponent<Omit<TivioWidgetProps, "ref"> & React_2.RefAttributes<unknown>>;
2982
+
2951
2983
  /**
2952
2984
  * @public
2953
2985
  */
@@ -2974,6 +3006,7 @@ export declare interface TivioWidgetProps {
2974
3006
  width: number;
2975
3007
  x: number;
2976
3008
  }) => any;
3009
+ navigateFunction?: any;
2977
3010
  }
2978
3011
 
2979
3012
  /**
@@ -3149,6 +3182,16 @@ export declare type UseChannelSource = (tvChannelId: string) => {
3149
3182
  error: Error | null;
3150
3183
  };
3151
3184
 
3185
+ /**
3186
+ * Use channel source
3187
+ * @param tvChannelId
3188
+ * @public
3189
+ */
3190
+ export declare const useChannelSource: (tvChannelId: string) => {
3191
+ source: ChannelSourcePojo | null;
3192
+ error: Error | null;
3193
+ };
3194
+
3152
3195
  /**
3153
3196
  * @public
3154
3197
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tivio/sdk-react",
3
- "version": "5.0.1",
3
+ "version": "5.0.3-alpha",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "source": "src/index.ts",
@@ -13,7 +13,7 @@
13
13
  "build:dev": "cat ./.env.dev > ./.env && yarn build --config=webpack.config.dev.js && yarn typesRollup",
14
14
  "build:prod": "cat ./.env.prod > ./.env && yarn build --config=webpack.config.prod.js && yarn typesRollup",
15
15
  "build:local": "bash ./scripts/build_with_local_bundle.sh && yarn typesRollup",
16
- "release": "ts-node ./scripts/release.ts -p=sdk-react",
16
+ "release": "ts-node ./scripts/release.ts -p=sdk-react -c=README.md",
17
17
  "release:patch": "yarn release -r=patch",
18
18
  "release:minor": "yarn release -r=minor",
19
19
  "release:major": "yarn release -r=major",
@@ -33,7 +33,7 @@
33
33
  "@material-ui/core": "^4.11.2",
34
34
  "@material-ui/icons": "^4.11.2",
35
35
  "@sentry/browser": "^6.1.0",
36
- "@tivio/common": "1.1.103",
36
+ "@tivio/common": "1.1.105",
37
37
  "dayjs": "^1.11.0",
38
38
  "es7-object-polyfill": "^1.0.1",
39
39
  "firebase": "8.10.1",
package/changelog.md DELETED
@@ -1,224 +0,0 @@
1
- # Changelog @tivio/sdk-react
2
-
3
- * 5.0.0
4
- * major: upgrade to React 18, change react and react-dom peer dependencies to 17.x || 18.x
5
- * major: fix typing for useReferralInfo, now correctly showing that `null` can be returned
6
- * major: fix typing for `WebRowProps.onTileClick`, now correctly showing that `null` can be accepted
7
- * minor: add analytics
8
- * minor: add getSourceUrl function to video and tv channel types
9
- * minor: add uri property to tv channel type
10
- * minor: add useChannelSource to hooks
11
-
12
- * v4.5.0
13
- * minor: extend PurchaseEndpointPayload type with purchase previousStatus and newStatus fields
14
-
15
- * v4.4.1
16
- * patch: added waitForTags param in useSearch hook for videos
17
-
18
- * v4.4.0
19
- * minor: PrimaryButton component props type set to any for now
20
- * patch: isPurchasableAsVoucher added to PurchasableMonetization
21
- * patch: voucherPurchase flag added to purchase overlays
22
- * patch: item added to MonetizationsSelectOverlayData
23
- * minor: added hungarian language to `LangCode` enum
24
-
25
- * v4.3.0:
26
- * minor: add GetPurchaseInfoResponse and PurchaseEndpointPayload to exported types
27
- * minor: support for disabling purchase of specified subscriptions (new param in useOrganizationSubscriptions hook)
28
- * minor: more specific PurchasableMonetization type usage instead of Monetization
29
- * minor: monetization property deleted from Video type
30
- * minor: monetization now has originalPrice and promotion properties available
31
- * patch: remove not used OrganizationSubscriptionsContext, **this change requires bundle 3.20.0 or newer**
32
-
33
- * v4.2.0:
34
- * minor: fix useSearch loading type
35
- * patch: added italian language to `LangCode` enum
36
-
37
- * v4.1.0
38
- * patch: added italian language to `LangCode` enum
39
- * minor: fixed spanish language code in `LangCode` enum (`sp` -> `es`)
40
- * minor: other misc type changes
41
-
42
- * v4.0.1
43
- * patch: added setBundleVersion setter to bundle type
44
- * patch: added setStorageManager setter to bundle type
45
- * patch: `Purchase.isPurchased` is deprecated
46
- * patch: fill `useSearch` field `hasNextPage` with proper value
47
-
48
- * v4.0.0
49
- * minor: Types cleanup
50
- * MAJOR: Remove deprecated and unused stuff
51
- * auth
52
- * changePassword
53
- * changeUserPhoto
54
- * removeUserPhoto
55
- * getPurchasedVodsWithInitializedVideos
56
- * initializeUser
57
- * createFreePurchase
58
- * components
59
- * VideoAdBanner
60
- * getters
61
- * getExportedConfig
62
- * getChannelById
63
- * getSectionById
64
- * getWidgetById
65
- * hooks
66
- * useLastVideoByWidgetId
67
- * useScreen
68
- * useFreePurchase
69
- * useWidget
70
- * useChannel
71
- * useSection
72
- * useVideosInSection
73
- * useSectionsInChannel
74
- * useChannelsInWidget
75
- * subscriptions
76
- * subscribeToWidget
77
- * subscribeToChannel
78
- * subscribeToSection
79
- * subscribeToVideosInSection
80
- * subscribeToSectionsInChannel
81
- * subscribeToChannelsInWidget
82
- * subscribeToScreen
83
- ---
84
- _Versions <= v3.7.0 requires core-react-dom bundle < v3.0.0 (because sdk-react used some sdk API deleted in core-react-dom@4.0.0)_
85
-
86
- * v3.7.0
87
- * minor: purchase contains created and updated
88
-
89
- * v3.6.3
90
- * patch: improve README.md
91
-
92
- * v3.6.2
93
- * patch: Fix types
94
-
95
- * v3.6.1
96
- * patch: Fix README
97
-
98
- * v3.6.0
99
- * minor: Update types
100
-
101
- * v3.5.2
102
- * patch: All types are available again.
103
-
104
- * v3.5.1
105
- * patch: remove incorrect dependency (@tivio/types)
106
-
107
- * v3.5.0
108
- * minor: Types change - Video.price and Video.detailedPrice can be null
109
- * minor: Types change - Video.cover is marked as deprecated
110
-
111
- * v3.4.0
112
- * minor: more precise type for errors in usePurchaseRecovery and usePurchaseRecovery
113
- * patch: jsdocs for usePurchaseRecovery and usePurchaseRecovery
114
- * minor: inviteCodeReset in useApplyInviteCode
115
- * minor: Reset forgotten password
116
- * minor: Consolidating monetization logic
117
- * v3.3.2
118
- * patch: Adding new optional parameters (where, orderBy) to useTaggedVideos hook
119
- * v3.3.1
120
- * patch: Fixed types of `setUser`
121
- * v3.3.0
122
- * minor: Add getPlayerCapabilities to getters.
123
- * patch: Added option to log out via `setUser(null)`, requires @tivio/core-react-dom@2.17.9
124
- * v3.2.5
125
- * patch: added recovery flag to QerkoPaymentInfo type
126
- * patch: bundle.types changes - internal.components.WebVideoScreen
127
- * patch: types changes - add new onBack prop to WebPlayerProps
128
- * patch: Refactor useVideo hook, now uses hook from core-react
129
- * v3.2.4
130
- * minor: added useApplyInviteCode
131
- * minor: better errors from useVoucher
132
- * v3.2.3
133
- * minor: added usePurchaseRecovery hook
134
- * patch: deprecated `useLastVideoByWidgetId`
135
- * v3.2.2
136
- * minor: useRowsInScreen, useItemsInRow, useTaggedVideos - hasNextPage and loading added to pagination
137
- * minor: useRowsInScreen, useItemsInRow, useTaggedVideos - implementation moved to remote bundle
138
- * patch: Fixed Tivio startup on Tizen 6
139
- * minor: Added `forceCloudFnResolver` option
140
- * v3.2.1
141
- * patch: fix of @tivio/common version
142
- * v3.2.0
143
- * minor: Added `capabilitiesOptions` for finer configuration of device capabilities
144
- * minor: tag names are returned in correct language (the one from tivio config); language value should be one from enum "LangCode"
145
- * v3.1.3
146
- * patch: Hotfix made sure disabled Tivio does not break React Native
147
- * v3.1.2
148
- * patch: Allow `conf` prop of `TivioProvider` to be `null` or `undefined` in order to turn off Tivio
149
- * v3.1.1
150
- * patch: fixed `setUser()` crash when bundle fails to load
151
- * v3.1.0
152
- * patch: `useAdSegment()` now returns null if no monetization is configured, ad segments are not managed in that situation
153
- * minor: enriched `AdSegment` type from `useAdSegment()`
154
- * minor: Added `setUser()` function for login and logout
155
- * v3.0.0
156
- * minor: Added hook `useWatchWithoutAdsOffer` to trigger purchase dialog to "watch without ads", if available
157
- * patch: fix peerDependency declaration for react, react-dom
158
- * major: TivioProvider requires deviceCapabilities
159
- * major: TivioProvider requires currency
160
- * minor: add voucher support (see usePurchaseSubscription and useTransactionPayment hooks)
161
- * minor: device limit support
162
- * minor: drm (Widevine, PlayReady) support
163
- * minor: watermarking support
164
- * minor: add useSearch hook
165
- * patch: price on video is 0 when purchased
166
- * v2.4.2
167
- * patch: added back changelog
168
- * v2.4.1
169
- * patch: improved doc about player wrapper
170
- * v2.4.0
171
- * patch: improved Player wrapper types
172
- * minor: added Tivio DOM events `tivio_key_input_handling_change`, `tivio_context_switch` and `tivio_request_goto`
173
- * patch: added support for remote code on browsers that do not implement [indexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API)
174
- * patch: added support for browsers that do not implement [indexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API)
175
- * v2.3.4
176
- * patch: fix of usePurchaseSubscription not reactive
177
- * v2.3.3
178
- * patch: fix of useUser not updating
179
- * v2.3.2
180
- * patch: next app doesn't fail anymore due to "self is not defined"
181
- * v2.3.1
182
- * patch: fix of @tivio/common dependency
183
- * v2.3.0
184
- * minor: add useTaggedVideos that allows to fetch videos with given tags
185
- * minor: add option to fetch tags (on hook useItemsInRow), useVideo always fetching videos tags
186
- * v2.2.1
187
- * patch: disable Sentry when no config is supplied to `TivioProvider`
188
- * v2.2.0
189
- * patch: reduced bundle size
190
- * minor: disable Sentry when no config is supplied to `TivioProvider` or when Tivio is disabled `{ enable: false }`, or when Sentry is disabled via config `{ enableSentry: false }`
191
- * v2.1.5
192
- * patch fix of `useVideosInSection` hook (fetching video's monetizations)
193
- * v2.1.4
194
- * patch: fix re-rendering of `useAd` during non-skippable ads (requires core-react-dom@2.1.9)
195
- * v2.1.3
196
- * patch: fix changelog
197
- * v2.1.2
198
- * patch: Fixed exported types
199
- * v2.1.1
200
- * patch: TivioWidget now correctly reports `false` via `onEnabled` callback when in invalid internal state
201
- * v2.1.0
202
- * patch: fix of useItemsInRow hook
203
- * patch: fix of useScreen hook
204
- * add: useRowsInScreen hook
205
- * v2.0.3
206
- * patch: fix of useItemsInRow hook
207
- * v2.0.2
208
- * patch: screen and row IDs fixed
209
- * `TivioBundle.subscriptions.subscribeToItemsInRow` now accepts user-defined ID via studio.tiv.io
210
- * `TivioBundle.subscriptions.subscribeToScreen` now accepts user-defined ID via studio.tiv.io
211
- * `Screen` and `Row` types returned by `useScreen()` return their user-defined IDs (`.id`) correctly
212
- * v2.0.1
213
- * no changes
214
- * v2.0.0
215
- * major: video.channelId can now be `string | null` used to be `string`
216
- * minor: added data API and hooks for screens (screens, rows of screen and row items)
217
- * hooks: `useScreen()`, `useItemsInRow()`
218
- * api: `TivioBundle.subscriptions.subscribeToScreen`, `TivioBundle.subscriptions.subscribeToItemsInRow`
219
- * v1.3.6
220
- * ?
221
- * v1.3.5
222
- * minor: added WebPlayer props (canReplay, showMarkers, customShortcuts, enableKeyboardShortcuts, source.poster)
223
- * v1.3.4
224
- * ...