@contentpass/react-native-contentpass 0.2.6 → 0.3.1

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.
Files changed (82) hide show
  1. package/README.md +10 -0
  2. package/lib/commonjs/Contentpass.js +98 -6
  3. package/lib/commonjs/Contentpass.js.map +1 -1
  4. package/lib/commonjs/{utils → contentpassTokenUtils}/fetchContentpassToken.js +3 -0
  5. package/lib/commonjs/contentpassTokenUtils/fetchContentpassToken.js.map +1 -0
  6. package/lib/commonjs/contentpassTokenUtils/parseContentpassToken.js.map +1 -0
  7. package/lib/commonjs/contentpassTokenUtils/validateSubscription.js.map +1 -0
  8. package/lib/commonjs/countImpressionUtils/sendPageViewEvent.js +24 -0
  9. package/lib/commonjs/countImpressionUtils/sendPageViewEvent.js.map +1 -0
  10. package/lib/commonjs/countImpressionUtils/sendStats.js +20 -0
  11. package/lib/commonjs/countImpressionUtils/sendStats.js.map +1 -0
  12. package/lib/commonjs/logger.js +27 -0
  13. package/lib/commonjs/logger.js.map +1 -0
  14. package/lib/commonjs/sentryIntegration.js +35 -12
  15. package/lib/commonjs/sentryIntegration.js.map +1 -1
  16. package/lib/module/Contentpass.js +97 -7
  17. package/lib/module/Contentpass.js.map +1 -1
  18. package/lib/module/{utils → contentpassTokenUtils}/fetchContentpassToken.js +3 -0
  19. package/lib/module/contentpassTokenUtils/fetchContentpassToken.js.map +1 -0
  20. package/lib/module/contentpassTokenUtils/parseContentpassToken.js.map +1 -0
  21. package/lib/module/contentpassTokenUtils/validateSubscription.js.map +1 -0
  22. package/lib/module/countImpressionUtils/sendPageViewEvent.js +20 -0
  23. package/lib/module/countImpressionUtils/sendPageViewEvent.js.map +1 -0
  24. package/lib/module/countImpressionUtils/sendStats.js +16 -0
  25. package/lib/module/countImpressionUtils/sendStats.js.map +1 -0
  26. package/lib/module/logger.js +22 -0
  27. package/lib/module/logger.js.map +1 -0
  28. package/lib/module/sentryIntegration.js +31 -10
  29. package/lib/module/sentryIntegration.js.map +1 -1
  30. package/lib/typescript/commonjs/src/Contentpass.d.ts +15 -1
  31. package/lib/typescript/commonjs/src/Contentpass.d.ts.map +1 -1
  32. package/lib/typescript/commonjs/src/contentpassTokenUtils/fetchContentpassToken.d.ts.map +1 -0
  33. package/lib/typescript/commonjs/src/contentpassTokenUtils/parseContentpassToken.d.ts.map +1 -0
  34. package/lib/typescript/commonjs/src/contentpassTokenUtils/validateSubscription.d.ts.map +1 -0
  35. package/lib/typescript/commonjs/src/countImpressionUtils/sendPageViewEvent.d.ts +8 -0
  36. package/lib/typescript/commonjs/src/countImpressionUtils/sendPageViewEvent.d.ts.map +1 -0
  37. package/lib/typescript/commonjs/src/countImpressionUtils/sendStats.d.ts +10 -0
  38. package/lib/typescript/commonjs/src/countImpressionUtils/sendStats.d.ts.map +1 -0
  39. package/lib/typescript/commonjs/src/logger.d.ts +8 -0
  40. package/lib/typescript/commonjs/src/logger.d.ts.map +1 -0
  41. package/lib/typescript/commonjs/src/sentryIntegration.d.ts +5 -1
  42. package/lib/typescript/commonjs/src/sentryIntegration.d.ts.map +1 -1
  43. package/lib/typescript/commonjs/src/types/ContentpassConfig.d.ts +4 -0
  44. package/lib/typescript/commonjs/src/types/ContentpassConfig.d.ts.map +1 -1
  45. package/lib/typescript/module/src/Contentpass.d.ts +15 -1
  46. package/lib/typescript/module/src/Contentpass.d.ts.map +1 -1
  47. package/lib/typescript/module/src/contentpassTokenUtils/fetchContentpassToken.d.ts.map +1 -0
  48. package/lib/typescript/module/src/contentpassTokenUtils/parseContentpassToken.d.ts.map +1 -0
  49. package/lib/typescript/module/src/contentpassTokenUtils/validateSubscription.d.ts.map +1 -0
  50. package/lib/typescript/module/src/countImpressionUtils/sendPageViewEvent.d.ts +8 -0
  51. package/lib/typescript/module/src/countImpressionUtils/sendPageViewEvent.d.ts.map +1 -0
  52. package/lib/typescript/module/src/countImpressionUtils/sendStats.d.ts +10 -0
  53. package/lib/typescript/module/src/countImpressionUtils/sendStats.d.ts.map +1 -0
  54. package/lib/typescript/module/src/logger.d.ts +8 -0
  55. package/lib/typescript/module/src/logger.d.ts.map +1 -0
  56. package/lib/typescript/module/src/sentryIntegration.d.ts +5 -1
  57. package/lib/typescript/module/src/sentryIntegration.d.ts.map +1 -1
  58. package/lib/typescript/module/src/types/ContentpassConfig.d.ts +4 -0
  59. package/lib/typescript/module/src/types/ContentpassConfig.d.ts.map +1 -1
  60. package/package.json +4 -2
  61. package/lib/commonjs/utils/fetchContentpassToken.js.map +0 -1
  62. package/lib/commonjs/utils/parseContentpassToken.js.map +0 -1
  63. package/lib/commonjs/utils/validateSubscription.js.map +0 -1
  64. package/lib/module/utils/fetchContentpassToken.js.map +0 -1
  65. package/lib/module/utils/parseContentpassToken.js.map +0 -1
  66. package/lib/module/utils/validateSubscription.js.map +0 -1
  67. package/lib/typescript/commonjs/src/utils/fetchContentpassToken.d.ts.map +0 -1
  68. package/lib/typescript/commonjs/src/utils/parseContentpassToken.d.ts.map +0 -1
  69. package/lib/typescript/commonjs/src/utils/validateSubscription.d.ts.map +0 -1
  70. package/lib/typescript/module/src/utils/fetchContentpassToken.d.ts.map +0 -1
  71. package/lib/typescript/module/src/utils/parseContentpassToken.d.ts.map +0 -1
  72. package/lib/typescript/module/src/utils/validateSubscription.d.ts.map +0 -1
  73. /package/lib/commonjs/{utils → contentpassTokenUtils}/parseContentpassToken.js +0 -0
  74. /package/lib/commonjs/{utils → contentpassTokenUtils}/validateSubscription.js +0 -0
  75. /package/lib/module/{utils → contentpassTokenUtils}/parseContentpassToken.js +0 -0
  76. /package/lib/module/{utils → contentpassTokenUtils}/validateSubscription.js +0 -0
  77. /package/lib/typescript/commonjs/src/{utils → contentpassTokenUtils}/fetchContentpassToken.d.ts +0 -0
  78. /package/lib/typescript/commonjs/src/{utils → contentpassTokenUtils}/parseContentpassToken.d.ts +0 -0
  79. /package/lib/typescript/commonjs/src/{utils → contentpassTokenUtils}/validateSubscription.d.ts +0 -0
  80. /package/lib/typescript/module/src/{utils → contentpassTokenUtils}/fetchContentpassToken.d.ts +0 -0
  81. /package/lib/typescript/module/src/{utils → contentpassTokenUtils}/parseContentpassToken.d.ts +0 -0
  82. /package/lib/typescript/module/src/{utils → contentpassTokenUtils}/validateSubscription.d.ts +0 -0
package/README.md CHANGED
@@ -41,6 +41,8 @@ Wrap your app's root component with ContentpassSdkProvider. The provider require
41
41
  - `planId` - The ID of the plan you want to check the user's subscription status against (ask Contentpass team for details)
42
42
  - `issuer` - The OAuth 2.0 server URL (e.g. `https://my.contentpass.net`)
43
43
  - `redirectUrl` - the redirect URL of your app to which the OAuth2 server will redirect after the authentication
44
+ - `samplingRate` - Optional: The rate at which the SDK will send impression events for unauthenticated users. Default is 0.05 (5%)
45
+ - `logLevel` - Optional: The log level for the SDK. By default logger is disabled. Possible values are 'info', 'warn', 'error' and 'debug'
44
46
 
45
47
 
46
48
  ```jsx
@@ -52,6 +54,8 @@ const contentpassConfig = {
52
54
  planId: 'plan-id',
53
55
  issuer: 'https://my.contentpass.net',
54
56
  redirectUrl: 'com.yourapp://oauthredirect',
57
+ samplingRate: 0.1,
58
+ logLevel: 'info'
55
59
  };
56
60
 
57
61
  const App = () => {
@@ -72,6 +76,10 @@ The SDK exposes the following methods through the `useContentpassSdk` hook:
72
76
  Initiates the OAuth 2.0 authentication process via a modal interface. It validates the user’s active Contentpass subscriptions
73
77
  upon successful authentication.
74
78
 
79
+ ### countImpression
80
+ Tracks and increments the impression count for the current user. This method should be invoked whenever a user views a
81
+ piece of content. It applies to all users, whether authenticated or unauthenticated.
82
+
75
83
  ### registerObserver
76
84
  Registers a callback function to listen for changes in the user’s authentication and subscription status. The observer function
77
85
  receives a state object describing the current status (see the exported [ContentpassState](./src/types/ContentpassState.ts) type).
@@ -96,6 +104,7 @@ import { Button, View } from 'react-native';
96
104
  const YourApp = () => {
97
105
  const {
98
106
  authenticate,
107
+ countImpression,
99
108
  registerObserver,
100
109
  unregisterObserver,
101
110
  logout,
@@ -117,6 +126,7 @@ const YourApp = () => {
117
126
  return (
118
127
  <View>
119
128
  <Button onPress={authenticate} title={'Authenticate'} />
129
+ <Button onPress={countImpression} title={'Count Impression'} />
120
130
  </View>
121
131
  );
122
132
  };
@@ -4,15 +4,22 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _reactNativeUuid = _interopRequireDefault(require("react-native-uuid"));
7
8
  var _OidcAuthStateStorage = _interopRequireDefault(require("./OidcAuthStateStorage.js"));
8
9
  var _ContentpassState = require("./types/ContentpassState.js");
9
10
  var _reactNativeAppAuth = require("react-native-app-auth");
10
11
  var _oidcConsts = require("./consts/oidcConsts.js");
11
12
  var _RefreshTokenStrategy = require("./types/RefreshTokenStrategy.js");
12
- var _fetchContentpassToken = _interopRequireDefault(require("./utils/fetchContentpassToken.js"));
13
- var _validateSubscription = _interopRequireDefault(require("./utils/validateSubscription.js"));
13
+ var _fetchContentpassToken = _interopRequireDefault(require("./contentpassTokenUtils/fetchContentpassToken.js"));
14
+ var _validateSubscription = _interopRequireDefault(require("./contentpassTokenUtils/validateSubscription.js"));
14
15
  var _sentryIntegration = require("./sentryIntegration.js");
16
+ var _sendStats = _interopRequireDefault(require("./countImpressionUtils/sendStats.js"));
17
+ var _sendPageViewEvent = _interopRequireDefault(require("./countImpressionUtils/sendPageViewEvent.js"));
18
+ var _logger = _interopRequireWildcard(require("./logger.js"));
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ const DEFAULT_SAMPLING_RATE = 0.05;
16
23
  class Contentpass {
17
24
  contentpassState = {
18
25
  state: _ContentpassState.ContentpassStateType.INITIALISING
@@ -21,12 +28,24 @@ class Contentpass {
21
28
  oidcAuthState = null;
22
29
  refreshTimer = null;
23
30
  constructor(config) {
31
+ if (config.logLevel) {
32
+ (0, _logger.enableLogger)(config.logLevel);
33
+ }
34
+ _logger.default.debug('Contentpass initialised with config', config);
35
+ if (config.samplingRate && (config.samplingRate < 0 || config.samplingRate > 1)) {
36
+ _logger.default.error('Sampling rate must be between 0 and 1');
37
+ throw new Error('Sampling rate must be between 0 and 1');
38
+ }
39
+ this.samplingRate = config.samplingRate || DEFAULT_SAMPLING_RATE;
24
40
  this.authStateStorage = new _OidcAuthStateStorage.default(config.propertyId);
25
41
  this.config = config;
26
- (0, _sentryIntegration.setSentryExtraAttribute)('propertyId', config.propertyId);
42
+ (0, _sentryIntegration.initSentry)({
43
+ propertyId: config.propertyId
44
+ });
27
45
  this.initialiseAuthState();
28
46
  }
29
47
  authenticate = async () => {
48
+ _logger.default.info('Starting authentication flow');
30
49
  let result;
31
50
  try {
32
51
  result = await (0, _reactNativeAppAuth.authorize)({
@@ -51,9 +70,11 @@ class Contentpass {
51
70
  });
52
71
  throw err;
53
72
  }
73
+ _logger.default.info('Authentication flow finished, checking subscription...');
54
74
  await this.onNewAuthState(result);
55
75
  };
56
76
  registerObserver(observer) {
77
+ _logger.default.info('Registering observer');
57
78
  if (this.contentpassStateObservers.includes(observer)) {
58
79
  return;
59
80
  }
@@ -61,9 +82,11 @@ class Contentpass {
61
82
  this.contentpassStateObservers.push(observer);
62
83
  }
63
84
  unregisterObserver(observer) {
85
+ _logger.default.info('Unregistering observer');
64
86
  this.contentpassStateObservers = this.contentpassStateObservers.filter(o => o !== observer);
65
87
  }
66
88
  logout = async () => {
89
+ _logger.default.info('Logging out and clearing auth state');
67
90
  await this.authStateStorage.clearOidcAuthState();
68
91
  this.changeContentpassState({
69
92
  state: _ContentpassState.ContentpassStateType.UNAUTHENTICATED,
@@ -71,42 +94,97 @@ class Contentpass {
71
94
  });
72
95
  };
73
96
  recoverFromError = async () => {
97
+ _logger.default.info('Recovering from error');
74
98
  this.changeContentpassState({
75
99
  state: _ContentpassState.ContentpassStateType.INITIALISING
76
100
  });
77
101
  await this.initialiseAuthState();
78
102
  };
103
+ countImpression = async () => {
104
+ await Promise.all([this.countPaidImpressionWhenUserHasValidSub(), this.countSampledImpression()]);
105
+ };
106
+ countPaidImpressionWhenUserHasValidSub = async () => {
107
+ if (!this.hasValidSubscriptionAndAccessToken()) {
108
+ return;
109
+ }
110
+ _logger.default.info('Counting paid impression');
111
+ const impressionId = _reactNativeUuid.default.v4();
112
+ try {
113
+ await (0, _sendPageViewEvent.default)(this.config.apiUrl, {
114
+ propertyId: this.config.propertyId,
115
+ impressionId,
116
+ accessToken: this.oidcAuthState.accessToken
117
+ });
118
+ } catch (err) {
119
+ (0, _sentryIntegration.reportError)(err, {
120
+ msg: 'Failed to count paid impression'
121
+ });
122
+ }
123
+ };
124
+ countSampledImpression = async () => {
125
+ const generatedSample = Math.random();
126
+ const publicId = this.config.propertyId.slice(0, 8);
127
+ const instanceId = _reactNativeUuid.default.v4();
128
+ if (generatedSample >= this.samplingRate) {
129
+ return;
130
+ }
131
+ _logger.default.info('Counting sampled impression');
132
+ try {
133
+ await (0, _sendStats.default)(this.config.apiUrl, {
134
+ ea: 'load',
135
+ ec: 'tcf-sampled',
136
+ cpabid: instanceId,
137
+ cppid: publicId,
138
+ cpsr: this.samplingRate
139
+ });
140
+ } catch (err) {
141
+ (0, _sentryIntegration.reportError)(err, {
142
+ msg: 'Failed to count sampled impression'
143
+ });
144
+ }
145
+ };
79
146
  initialiseAuthState = async () => {
80
147
  const authState = await this.authStateStorage.getOidcAuthState();
81
148
  if (authState) {
149
+ _logger.default.debug('Found auth state in storage, initialising with it');
82
150
  await this.onNewAuthState(authState);
83
151
  return;
84
152
  }
153
+ _logger.default.debug('No auth state found in storage, initialising unauthenticated');
85
154
  this.changeContentpassState({
86
155
  state: _ContentpassState.ContentpassStateType.UNAUTHENTICATED,
87
156
  hasValidSubscription: false
88
157
  });
89
158
  };
90
159
  onNewAuthState = async authState => {
160
+ _logger.default.debug('New auth state received');
91
161
  this.oidcAuthState = authState;
92
162
  await this.authStateStorage.storeOidcAuthState(authState);
93
163
  const strategy = this.setupRefreshTimer();
94
164
  // if instant refresh, no need to check subscription as it will happen in the refresh
95
165
  if (strategy === _RefreshTokenStrategy.RefreshTokenStrategy.INSTANTLY) {
166
+ _logger.default.debug('Instant refresh, skipping subscription check');
96
167
  return;
97
168
  }
98
169
  try {
170
+ _logger.default.info('Checking subscription');
99
171
  const contentpassToken = await (0, _fetchContentpassToken.default)({
100
172
  issuer: this.config.issuer,
101
173
  propertyId: this.config.propertyId,
102
174
  idToken: this.oidcAuthState.idToken
103
175
  });
104
176
  const hasValidSubscription = (0, _validateSubscription.default)(contentpassToken);
177
+ _logger.default.info({
178
+ hasValidSubscription
179
+ }, 'Subscription check successful');
105
180
  this.changeContentpassState({
106
181
  state: _ContentpassState.ContentpassStateType.AUTHENTICATED,
107
182
  hasValidSubscription
108
183
  });
109
184
  } catch (err) {
185
+ (0, _sentryIntegration.reportError)(err, {
186
+ msg: 'Failed to fetch contentpass token and validate subscription'
187
+ });
110
188
  this.changeContentpassState({
111
189
  state: _ContentpassState.ContentpassStateType.ERROR,
112
190
  error: err
@@ -116,18 +194,23 @@ class Contentpass {
116
194
  setupRefreshTimer = () => {
117
195
  const accessTokenExpirationDate = this.oidcAuthState?.accessTokenExpirationDate;
118
196
  if (!accessTokenExpirationDate) {
197
+ _logger.default.warn('No access token expiration date provided');
119
198
  return _RefreshTokenStrategy.RefreshTokenStrategy.NO_REFRESH;
120
199
  }
121
200
  const now = new Date();
122
201
  const expirationDate = new Date(accessTokenExpirationDate);
123
202
  const timeDiff = expirationDate.getTime() - now.getTime();
124
203
  if (timeDiff <= 0) {
204
+ _logger.default.debug('Access token expired, refreshing instantly');
125
205
  this.refreshToken(0);
126
206
  return _RefreshTokenStrategy.RefreshTokenStrategy.INSTANTLY;
127
207
  }
128
208
  if (this.refreshTimer) {
129
209
  clearTimeout(this.refreshTimer);
130
210
  }
211
+ _logger.default.debug({
212
+ timeDiff
213
+ }, 'Setting up refresh timer');
131
214
  this.refreshTimer = setTimeout(async () => {
132
215
  await this.refreshToken(0);
133
216
  }, timeDiff);
@@ -139,6 +222,7 @@ class Contentpass {
139
222
  return;
140
223
  }
141
224
  try {
225
+ _logger.default.info('Refreshing token');
142
226
  const refreshResult = await (0, _reactNativeAppAuth.refresh)({
143
227
  clientId: this.config.propertyId,
144
228
  redirectUrl: this.config.redirectUrl,
@@ -148,27 +232,35 @@ class Contentpass {
148
232
  refreshToken: this.oidcAuthState.refreshToken
149
233
  });
150
234
  await this.onNewAuthState(refreshResult);
235
+ _logger.default.info('Token refreshed successfully');
151
236
  } catch (err) {
152
237
  await this.onRefreshTokenError(counter, err);
153
238
  }
154
239
  };
155
240
  onRefreshTokenError = async (counter, err) => {
156
- (0, _sentryIntegration.reportError)(err, {
157
- msg: `Failed to refresh token after ${counter} retries`
158
- });
159
241
  // FIXME: add handling for specific error to not retry in every case
160
242
  if (counter < _oidcConsts.REFRESH_TOKEN_RETRIES) {
243
+ _logger.default.warn({
244
+ err,
245
+ counter
246
+ }, 'Failed to refresh token, retrying');
161
247
  const delay = counter * 1000 * 10;
162
248
  await new Promise(resolve => setTimeout(resolve, delay));
163
249
  await this.refreshToken(counter + 1);
164
250
  return;
165
251
  }
252
+ (0, _sentryIntegration.reportError)(err, {
253
+ msg: `Failed to refresh token after ${counter} retries`
254
+ });
166
255
  await this.logout();
167
256
  };
168
257
  changeContentpassState = state => {
169
258
  this.contentpassState = state;
170
259
  this.contentpassStateObservers.forEach(observer => observer(state));
171
260
  };
261
+ hasValidSubscriptionAndAccessToken = () => {
262
+ return this.contentpassState.state === _ContentpassState.ContentpassStateType.AUTHENTICATED && this.contentpassState.hasValidSubscription && this.oidcAuthState?.accessToken;
263
+ };
172
264
  }
173
265
  exports.default = Contentpass;
174
266
  //# sourceMappingURL=Contentpass.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_OidcAuthStateStorage","_interopRequireDefault","require","_ContentpassState","_reactNativeAppAuth","_oidcConsts","_RefreshTokenStrategy","_fetchContentpassToken","_validateSubscription","_sentryIntegration","e","__esModule","default","Contentpass","contentpassState","state","ContentpassStateType","INITIALISING","contentpassStateObservers","oidcAuthState","refreshTimer","constructor","config","authStateStorage","OidcAuthStateStorage","propertyId","setSentryExtraAttribute","initialiseAuthState","authenticate","result","authorize","clientId","redirectUrl","issuer","scopes","SCOPES","additionalParameters","cp_route","prompt","cp_property","cp_plan","planId","err","reportError","msg","changeContentpassState","ERROR","error","onNewAuthState","registerObserver","observer","includes","push","unregisterObserver","filter","o","logout","clearOidcAuthState","UNAUTHENTICATED","hasValidSubscription","recoverFromError","authState","getOidcAuthState","storeOidcAuthState","strategy","setupRefreshTimer","RefreshTokenStrategy","INSTANTLY","contentpassToken","fetchContentpassToken","idToken","validateSubscription","AUTHENTICATED","accessTokenExpirationDate","NO_REFRESH","now","Date","expirationDate","timeDiff","getTime","refreshToken","clearTimeout","setTimeout","TIMER_SET","counter","Error","refreshResult","refresh","onRefreshTokenError","REFRESH_TOKEN_RETRIES","delay","Promise","resolve","forEach","exports"],"sourceRoot":"../../src","sources":["Contentpass.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeUuid","_interopRequireDefault","require","_OidcAuthStateStorage","_ContentpassState","_reactNativeAppAuth","_oidcConsts","_RefreshTokenStrategy","_fetchContentpassToken","_validateSubscription","_sentryIntegration","_sendStats","_sendPageViewEvent","_logger","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DEFAULT_SAMPLING_RATE","Contentpass","contentpassState","state","ContentpassStateType","INITIALISING","contentpassStateObservers","oidcAuthState","refreshTimer","constructor","config","logLevel","enableLogger","logger","debug","samplingRate","error","Error","authStateStorage","OidcAuthStateStorage","propertyId","initSentry","initialiseAuthState","authenticate","info","result","authorize","clientId","redirectUrl","issuer","scopes","SCOPES","additionalParameters","cp_route","prompt","cp_property","cp_plan","planId","err","reportError","msg","changeContentpassState","ERROR","onNewAuthState","registerObserver","observer","includes","push","unregisterObserver","filter","o","logout","clearOidcAuthState","UNAUTHENTICATED","hasValidSubscription","recoverFromError","countImpression","Promise","all","countPaidImpressionWhenUserHasValidSub","countSampledImpression","hasValidSubscriptionAndAccessToken","impressionId","uuid","v4","sendPageViewEvent","apiUrl","accessToken","generatedSample","Math","random","publicId","slice","instanceId","sendStats","ea","ec","cpabid","cppid","cpsr","authState","getOidcAuthState","storeOidcAuthState","strategy","setupRefreshTimer","RefreshTokenStrategy","INSTANTLY","contentpassToken","fetchContentpassToken","idToken","validateSubscription","AUTHENTICATED","accessTokenExpirationDate","warn","NO_REFRESH","now","Date","expirationDate","timeDiff","getTime","refreshToken","clearTimeout","setTimeout","TIMER_SET","counter","refreshResult","refresh","onRefreshTokenError","REFRESH_TOKEN_RETRIES","delay","resolve","forEach","exports"],"sourceRoot":"../../src","sources":["Contentpass.ts"],"mappings":"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","ignoreList":[]}
@@ -21,6 +21,9 @@ async function fetchContentpassToken({
21
21
  client_id: propertyId
22
22
  }).toString()
23
23
  });
24
+ if (!tokenEndpointResponse.ok) {
25
+ throw new Error(`Failed to fetch Contentpass token, status: ${tokenEndpointResponse.statusText}`);
26
+ }
24
27
  const {
25
28
  contentpass_token
26
29
  } = await tokenEndpointResponse.json();
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_oidcConsts","require","fetchContentpassToken","idToken","propertyId","issuer","tokenEndpointResponse","fetch","TOKEN_ENDPOINT","method","headers","body","URLSearchParams","grant_type","subject_token","client_id","toString","ok","Error","statusText","contentpass_token","json"],"sourceRoot":"../../../src","sources":["contentpassTokenUtils/fetchContentpassToken.ts"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEe,eAAeC,qBAAqBA,CAAC;EAClDC,OAAO;EACPC,UAAU;EACVC;AAKF,CAAC,EAAE;EACD,MAAMC,qBAAqB,GAAG,MAAMC,KAAK,CAAC,GAAGF,MAAM,GAAGG,0BAAc,EAAE,EAAE;IACtEC,MAAM,EAAE,MAAM;IACdC,OAAO,EAAE;MACP,cAAc,EAAE;IAClB,CAAC;IACDC,IAAI,EAAE,IAAIC,eAAe,CAAC;MACxBC,UAAU,EAAE,mBAAmB;MAC/BC,aAAa,EAAEX,OAAO;MACtBY,SAAS,EAAEX;IACb,CAAC,CAAC,CAACY,QAAQ,CAAC;EACd,CAAC,CAAC;EAEF,IAAI,CAACV,qBAAqB,CAACW,EAAE,EAAE;IAC7B,MAAM,IAAIC,KAAK,CACb,8CAA8CZ,qBAAqB,CAACa,UAAU,EAChF,CAAC;EACH;EAEA,MAAM;IAAEC;EAAkB,CAAC,GAAG,MAAMd,qBAAqB,CAACe,IAAI,CAAC,CAAC;EAEhE,OAAOD,iBAAiB;AAC1B","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["parseContentpassToken","contentpassToken","tokenParts","split","length","Error","header","JSON","parse","atob","body"],"sourceRoot":"../../../src","sources":["contentpassTokenUtils/parseContentpassToken.ts"],"mappings":";;;;;;AAee,SAASA,qBAAqBA,CAC3CC,gBAAwB,EACX;EACb,MAAMC,UAAU,GAAGD,gBAAgB,CAACE,KAAK,CAAC,GAAG,CAAC;EAC9C,IAAID,UAAU,CAACE,MAAM,GAAG,CAAC,EAAE;IACzB,MAAM,IAAIC,KAAK,CAAC,mDAAmD,CAAC;EACtE;EAEA,MAAMC,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACC,IAAI,CAACP,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC;EAC/C,MAAMQ,IAAI,GAAGH,IAAI,CAACC,KAAK,CAACC,IAAI,CAACP,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC;EAE7C,OAAO;IACLI,MAAM;IACNI;EACF,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_parseContentpassToken","_interopRequireDefault","require","_sentryIntegration","e","__esModule","default","validateSubscription","contentpassToken","body","parseContentpassToken","auth","plans","length","err","reportError","msg"],"sourceRoot":"../../../src","sources":["contentpassTokenUtils/validateSubscription.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AAAmD,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,SAASG,oBAAoBA,CAACC,gBAAwB,EAAE;EACrE,IAAI;IACF,MAAM;MAAEC;IAAK,CAAC,GAAG,IAAAC,8BAAqB,EAACF,gBAAgB,CAAC;IACxD,OAAO,CAAC,CAACC,IAAI,CAACE,IAAI,IAAI,CAAC,CAACF,IAAI,CAACG,KAAK,CAACC,MAAM;EAC3C,CAAC,CAAC,OAAOC,GAAQ,EAAE;IACjB,IAAAC,8BAAW,EAACD,GAAG,EAAE;MAAEE,GAAG,EAAE;IAAkC,CAAC,CAAC;IAC5D,OAAO,KAAK;EACd;AACF","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = sendPageViewEvent;
7
+ async function sendPageViewEvent(apiUrl, payload) {
8
+ const {
9
+ propertyId,
10
+ impressionId,
11
+ accessToken
12
+ } = payload;
13
+ const path = `pass/hit?pid=${propertyId}&iid=${impressionId}&t=pageview`;
14
+ const response = await fetch(`${apiUrl}/${path}`, {
15
+ headers: {
16
+ Authorization: `Bearer ${accessToken}`
17
+ }
18
+ });
19
+ if (!response.ok) {
20
+ throw new Error(`Failed send page view event, status: ${response.statusText}`);
21
+ }
22
+ return response;
23
+ }
24
+ //# sourceMappingURL=sendPageViewEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["sendPageViewEvent","apiUrl","payload","propertyId","impressionId","accessToken","path","response","fetch","headers","Authorization","ok","Error","statusText"],"sourceRoot":"../../../src","sources":["countImpressionUtils/sendPageViewEvent.ts"],"mappings":";;;;;;AAMe,eAAeA,iBAAiBA,CAC7CC,MAAc,EACdC,OAAwB,EACxB;EACA,MAAM;IAAEC,UAAU;IAAEC,YAAY;IAAEC;EAAY,CAAC,GAAGH,OAAO;EACzD,MAAMI,IAAI,GAAG,gBAAgBH,UAAU,QAAQC,YAAY,aAAa;EAExE,MAAMG,QAAQ,GAAG,MAAMC,KAAK,CAAC,GAAGP,MAAM,IAAIK,IAAI,EAAE,EAAE;IAChDG,OAAO,EAAE;MACPC,aAAa,EAAE,UAAUL,WAAW;IACtC;EACF,CAAC,CAAC;EAEF,IAAI,CAACE,QAAQ,CAACI,EAAE,EAAE;IAChB,MAAM,IAAIC,KAAK,CACb,wCAAwCL,QAAQ,CAACM,UAAU,EAC7D,CAAC;EACH;EAEA,OAAON,QAAQ;AACjB","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = sendStats;
7
+ async function sendStats(apiUrl, payload) {
8
+ const response = await fetch(`${apiUrl}/stats`, {
9
+ method: 'POST',
10
+ headers: {
11
+ 'Content-Type': 'application/json; charset=UTF-8'
12
+ },
13
+ body: JSON.stringify(payload)
14
+ });
15
+ if (!response.ok) {
16
+ throw new Error(`Failed to send stats, status: ${response.statusText}`);
17
+ }
18
+ return response;
19
+ }
20
+ //# sourceMappingURL=sendStats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["sendStats","apiUrl","payload","response","fetch","method","headers","body","JSON","stringify","ok","Error","statusText"],"sourceRoot":"../../../src","sources":["countImpressionUtils/sendStats.ts"],"mappings":";;;;;;AAQe,eAAeA,SAASA,CAACC,MAAc,EAAEC,OAAqB,EAAE;EAC7E,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAAC,GAAGH,MAAM,QAAQ,EAAE;IAC9CI,MAAM,EAAE,MAAM;IACdC,OAAO,EAAE;MACP,cAAc,EAAE;IAClB,CAAC;IACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACP,OAAO;EAC9B,CAAC,CAAC;EAEF,IAAI,CAACC,QAAQ,CAACO,EAAE,EAAE;IAChB,MAAM,IAAIC,KAAK,CAAC,iCAAiCR,QAAQ,CAACS,UAAU,EAAE,CAAC;EACzE;EAEA,OAAOT,QAAQ;AACjB","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.enableLogger = exports.default = void 0;
7
+ var _reactNativeLogs = require("react-native-logs");
8
+ const log = _reactNativeLogs.logger.createLogger({
9
+ // by default loggger is disabled
10
+ enabled: false,
11
+ transport: _reactNativeLogs.consoleTransport,
12
+ transportOptions: {
13
+ colors: {
14
+ info: 'blueBright',
15
+ warn: 'yellowBright',
16
+ error: 'redBright'
17
+ }
18
+ }
19
+ });
20
+ const enableLogger = severity => {
21
+ log.setSeverity(severity);
22
+ log.enable();
23
+ log.debug('Logger enabled with severity', severity);
24
+ };
25
+ exports.enableLogger = enableLogger;
26
+ var _default = exports.default = log;
27
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeLogs","require","log","logger","createLogger","enabled","transport","consoleTransport","transportOptions","colors","info","warn","error","enableLogger","severity","setSeverity","enable","debug","exports","_default","default"],"sourceRoot":"../../src","sources":["logger.ts"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAYA,MAAMC,GAAW,GAAGC,uBAAM,CAACC,YAAY,CAAC;EACtC;EACAC,OAAO,EAAE,KAAK;EACdC,SAAS,EAAEC,iCAAgB;EAC3BC,gBAAgB,EAAE;IAChBC,MAAM,EAAE;MACNC,IAAI,EAAE,YAAY;MAClBC,IAAI,EAAE,cAAc;MACpBC,KAAK,EAAE;IACT;EACF;AACF,CAAC,CAAC;AAEK,MAAMC,YAAY,GAAIC,QAAkB,IAAK;EAClDZ,GAAG,CAACa,WAAW,CAACD,QAAQ,CAAC;EACzBZ,GAAG,CAACc,MAAM,CAAC,CAAC;EAEZd,GAAG,CAACe,KAAK,CAAC,8BAA8B,EAAEH,QAAQ,CAAC;AACrD,CAAC;AAACI,OAAA,CAAAL,YAAA,GAAAA,YAAA;AAAA,IAAAM,QAAA,GAAAD,OAAA,CAAAE,OAAA,GAEalB,GAAG","ignoreList":[]}
@@ -3,10 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.setSentryExtraAttribute = exports.reportError = void 0;
6
+ exports.reportError = exports.initSentry = exports.__internal_reset_sentry_scope = void 0;
7
7
  var Sentry = _interopRequireWildcard(require("@sentry/react-native"));
8
8
  var _react = require("@sentry/react");
9
9
  var _default = require("@sentry/react-native/dist/js/integrations/default");
10
+ var _logger = _interopRequireDefault(require("./logger.js"));
11
+ var _reactNative2 = require("react-native");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
15
  // as it's only the open source package, we want to have minimal sentry configuration here to not override sentry instance,
@@ -32,18 +35,38 @@ const options = {
32
35
  sendClientReports: true,
33
36
  stackParser: _react.defaultStackParser,
34
37
  transport: _react.makeFetchTransport,
35
- integrations: []
38
+ integrations: [],
39
+ environment: __DEV__ ? 'development' : 'production'
36
40
  };
37
- const sentryClient = new Sentry.ReactNativeClient({
38
- ...options,
39
- integrations: (0, _default.getDefaultIntegrations)(options)
40
- });
41
- const sentryScope = new Sentry.Scope();
42
- sentryScope.setClient(sentryClient);
43
- sentryClient.init();
41
+ let sentryScope = null;
42
+ const initSentry = args => {
43
+ if (sentryScope) {
44
+ _logger.default.warn('Sentry already initialized');
45
+ return;
46
+ }
47
+ const sentryClient = new Sentry.ReactNativeClient({
48
+ ...options,
49
+ integrations: (0, _default.getDefaultIntegrations)(options)
50
+ });
51
+ sentryScope = new Sentry.Scope();
52
+ sentryScope.setClient(sentryClient);
53
+ sentryClient.init();
54
+ sentryScope.setTags({
55
+ propertyId: args.propertyId,
56
+ OS: _reactNative2.Platform.OS,
57
+ platformVersion: _reactNative2.Platform.Version
58
+ });
59
+ };
60
+ exports.initSentry = initSentry;
44
61
  const reportError = (err, {
45
62
  msg
46
63
  } = {}) => {
64
+ _logger.default.error({
65
+ err
66
+ }, msg || 'Unexpected error');
67
+ if (!sentryScope) {
68
+ return;
69
+ }
47
70
  if (msg) {
48
71
  sentryScope.addBreadcrumb({
49
72
  category: 'Error',
@@ -54,8 +77,8 @@ const reportError = (err, {
54
77
  sentryScope.captureException(err);
55
78
  };
56
79
  exports.reportError = reportError;
57
- const setSentryExtraAttribute = (key, value) => {
58
- sentryScope.setExtra(key, value);
80
+ const __internal_reset_sentry_scope = () => {
81
+ sentryScope = null;
59
82
  };
60
- exports.setSentryExtraAttribute = setSentryExtraAttribute;
83
+ exports.__internal_reset_sentry_scope = __internal_reset_sentry_scope;
61
84
  //# sourceMappingURL=sentryIntegration.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Sentry","_interopRequireWildcard","require","_react","_default","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","options","attachStacktrace","autoInitializeNativeSdk","dsn","enableAppStartTracking","enableAutoPerformanceTracing","enableCaptureFailedRequests","enableNative","enableNativeCrashHandling","enableNativeFramesTracking","enableNativeNagger","enableNdk","enableStallTracking","enableUserInteractionTracing","enableWatchdogTerminationTracking","maxQueueSize","parentSpanIsAlwaysRootSpan","patchGlobalPromise","sendClientReports","stackParser","defaultStackParser","transport","makeFetchTransport","integrations","sentryClient","ReactNativeClient","getDefaultIntegrations","sentryScope","Scope","setClient","init","reportError","err","msg","addBreadcrumb","category","message","level","captureException","exports","setSentryExtraAttribute","key","value","setExtra"],"sourceRoot":"../../src","sources":["sentryIntegration.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Sentry","_interopRequireWildcard","require","_react","_default","_logger","_interopRequireDefault","_reactNative2","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","options","attachStacktrace","autoInitializeNativeSdk","dsn","enableAppStartTracking","enableAutoPerformanceTracing","enableCaptureFailedRequests","enableNative","enableNativeCrashHandling","enableNativeFramesTracking","enableNativeNagger","enableNdk","enableStallTracking","enableUserInteractionTracing","enableWatchdogTerminationTracking","maxQueueSize","parentSpanIsAlwaysRootSpan","patchGlobalPromise","sendClientReports","stackParser","defaultStackParser","transport","makeFetchTransport","integrations","environment","__DEV__","sentryScope","initSentry","args","logger","warn","sentryClient","ReactNativeClient","getDefaultIntegrations","Scope","setClient","init","setTags","propertyId","OS","Platform","platformVersion","Version","exports","reportError","err","msg","error","addBreadcrumb","category","message","level","captureException","__internal_reset_sentry_scope"],"sourceRoot":"../../src","sources":["sentryIntegration.ts"],"mappings":"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","ignoreList":[]}