@stigg/node-server-sdk 0.33.0 → 0.35.0

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.
package/dist/client.js CHANGED
@@ -34,26 +34,16 @@ const entitlementsService_1 = require("./services/entitlementsService");
34
34
  const loggerService_1 = require("./services/loggerService");
35
35
  const generateRandomSlug_1 = require("./services/generateRandomSlug");
36
36
  const apiErrorHandling_1 = require("./utils/apiErrorHandling");
37
+ let stiggInstance = null;
37
38
  /**
38
39
  * Stigg Node.js SDK client
39
40
  */
40
41
  class Stigg {
41
- /**
42
- * Create an instance of the Stigg SDK client.
43
- * @param graphClient
44
- * @param batchedGraphClient
45
- * @param entitlementsCacheService
46
- * @param loggerService
47
- * @param environmentId
48
- */
49
- constructor(graphClient, batchedGraphClient, entitlementsCacheService, loggerService, environmentId) {
50
- this.graphqlClient = graphClient;
51
- this.batchedGraphqlClient = batchedGraphClient;
52
- this.modelMapper = new ModelMapper_1.ModelMapper();
53
- this.cacheService = entitlementsCacheService;
42
+ constructor(entitlementsService, loggerService, managementApi) {
43
+ this.entitlementsService = entitlementsService;
54
44
  this.loggerService = loggerService;
55
- this.entitlementsService = new entitlementsService_1.EntitlementsService(this.cacheService, this.graphqlClient, this.batchedGraphqlClient, this.loggerService);
56
- this.managementApi = new managementApi_1.default(this.graphqlClient, environmentId);
45
+ this.managementApi = managementApi;
46
+ this.modelMapper = new ModelMapper_1.ModelMapper();
57
47
  }
58
48
  /**
59
49
  * Initialize an instance of the Stigg SDK client.
@@ -63,20 +53,31 @@ class Stigg {
63
53
  static async initialize(configuration) {
64
54
  const sdkConfiguration = (0, configuration_1.getConfiguration)(configuration);
65
55
  const loggerService = new loggerService_1.LoggerService(sdkConfiguration.logConfiguration.logger, sdkConfiguration.logConfiguration.logLevel);
56
+ if (stiggInstance) {
57
+ loggerService.error(`Stigg SDK is being initialized more than once, please reuse the same instance instead.`);
58
+ stiggInstance.entitlementsService.unsubscribeFromUpdates();
59
+ stiggInstance = null;
60
+ }
61
+ const isValid = (0, configuration_1.validateConfiguration)(configuration, loggerService);
62
+ if (!isValid) {
63
+ return null;
64
+ }
66
65
  try {
67
- const isValid = (0, configuration_1.validateConfiguration)(configuration, loggerService);
68
- if (!isValid) {
69
- return null;
70
- }
71
66
  const entitlementsCacheService = new inMemoryCacheService_1.InMemoryCacheService();
72
67
  const graphqlClient = (0, initApolloClient_1.default)(Object.assign(Object.assign({}, sdkConfiguration), { onConnected: entitlementsCacheService.clearCache, loggerService }));
73
- const batchedGraphClient = (0, initApolloClient_1.initBatchedApolloClient)(sdkConfiguration);
74
68
  const configurationApi = new configurationApi_1.default(graphqlClient);
75
- const environmentId = (await configurationApi.getEnvironment()).data.currentEnvironment;
76
- return new Stigg(graphqlClient, batchedGraphClient, entitlementsCacheService, loggerService, environmentId);
69
+ const environmentId = await configurationApi.getCurrentEnvironmentId();
70
+ const batchedGraphClient = (0, initApolloClient_1.initBatchedApolloClient)(sdkConfiguration);
71
+ const entitlementsService = new entitlementsService_1.EntitlementsService(entitlementsCacheService, graphqlClient, batchedGraphClient, loggerService);
72
+ const managementApi = new managementApi_1.default(graphqlClient, environmentId);
73
+ stiggInstance = new Stigg(entitlementsService, loggerService, managementApi);
74
+ if (sdkConfiguration.realtimeUpdatesEnabled) {
75
+ stiggInstance.entitlementsService.subscribeToUpdates();
76
+ }
77
+ return stiggInstance;
77
78
  }
78
79
  catch (err) {
79
- loggerService.error(`Failed to initialize api ${err}`);
80
+ loggerService.error(`Failed to initialize Stigg SDK. Error: ${err === null || err === void 0 ? void 0 : err.message}`);
80
81
  return null;
81
82
  }
82
83
  }
@@ -122,7 +123,12 @@ class Stigg {
122
123
  * @param {string} customerId
123
124
  */
124
125
  async getEntitlements(customerId) {
125
- return (0, apiErrorHandling_1.withErrorHandling)(() => this.entitlementsService.getCustomerEntitlements(customerId), this.loggerService, {
126
+ return (0, apiErrorHandling_1.withErrorHandling)(() => {
127
+ if (!customerId || typeof customerId !== 'string') {
128
+ throw new Error('Invalid argument: customerId');
129
+ }
130
+ return this.entitlementsService.getCustomerEntitlements(customerId);
131
+ }, this.loggerService, {
126
132
  errorMessagePrefix: 'Failed to get customer entitlements',
127
133
  rethrowError: false,
128
134
  });
@@ -218,9 +224,15 @@ class Stigg {
218
224
  */
219
225
  async getCustomer(customerId) {
220
226
  return (0, apiErrorHandling_1.withErrorHandling)(async () => {
221
- const { data } = await this.managementApi.getCustomer(customerId);
222
- const [{ node: rawCustomer }] = data.customers.edges;
223
- return this.modelMapper.mapFullCustomer(rawCustomer);
227
+ if (!customerId || typeof customerId !== 'string') {
228
+ throw new Error('Invalid argument: customerId');
229
+ }
230
+ const resp = await this.managementApi.getCustomer(customerId);
231
+ const [edge] = resp.data.customers.edges;
232
+ if (!edge) {
233
+ throw new Error('Customer not found');
234
+ }
235
+ return this.modelMapper.mapFullCustomer(edge.node);
224
236
  }, this.loggerService, { errorMessagePrefix: 'Failed to get customer', rethrowError: true });
225
237
  }
226
238
  /**
@@ -263,6 +275,17 @@ class Stigg {
263
275
  return this.modelMapper.mapCheckout(data.initiateCheckout);
264
276
  }, this.loggerService, { errorMessagePrefix: 'Failed to begin checkout', rethrowError: true });
265
277
  }
278
+ /**
279
+ * Get a list of plans for rendering the paywall
280
+ *
281
+ * @returns {Promise<Plan[]>}
282
+ */
283
+ async getPaywall({ productId } = {}) {
284
+ return (0, apiErrorHandling_1.withErrorHandling)(async () => {
285
+ const graphResponse = await this.managementApi.getPlans(productId);
286
+ return this.modelMapper.mapPlans(graphResponse.data);
287
+ }, this.loggerService, { errorMessagePrefix: 'Failed to get paywall', rethrowError: true });
288
+ }
266
289
  }
267
290
  exports.Stigg = Stigg;
268
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBc0JrQjtBQUNsQiwyRUFBbUY7QUFDbkYscURBQWtEO0FBQ2xELHdFQUFnRDtBQUNoRCxtREFBK0Y7QUFDL0YsOEVBQXNEO0FBQ3RELGdGQUE2RTtBQUM3RSx3RUFBcUU7QUFFckUsNERBQXlEO0FBQ3pELHNFQUFtRTtBQUNuRSwrREFBNkQ7QUFrQjdEOztHQUVHO0FBQ0gsTUFBYSxLQUFLO0lBU2hCOzs7Ozs7O09BT0c7SUFDSCxZQUNFLFdBQWdELEVBQ2hELGtCQUF1RCxFQUN2RCx3QkFBc0MsRUFDdEMsYUFBNEIsRUFDNUIsYUFBcUI7UUFFckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUM7UUFDakMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLGtCQUFrQixDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSx5QkFBVyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyx3QkFBd0IsQ0FBQztRQUM3QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSx5Q0FBbUIsQ0FDaEQsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLGFBQWEsRUFDbEIsSUFBSSxDQUFDLG9CQUFvQixFQUN6QixJQUFJLENBQUMsYUFBYSxDQUNuQixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHVCQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWtDO1FBQ3hELE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSxnQ0FBZ0IsRUFBQyxhQUFh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
291
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscUNBd0JrQjtBQUNsQiwyRUFBbUY7QUFDbkYscURBQWtEO0FBQ2xELHdFQUFnRDtBQUNoRCxtREFBK0Y7QUFDL0YsOEVBQXNEO0FBQ3RELGdGQUE2RTtBQUM3RSx3RUFBcUU7QUFFckUsNERBQXlEO0FBQ3pELHNFQUFtRTtBQUNuRSwrREFBNkQ7QUFtQjdELElBQUksYUFBYSxHQUFpQixJQUFJLENBQUM7QUFFdkM7O0dBRUc7QUFDSCxNQUFhLEtBQUs7SUFHaEIsWUFDbUIsbUJBQXdDLEVBQ3hDLGFBQTRCLEVBQzVCLGFBQTRCO1FBRjVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFFN0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLHlCQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQWtDO1FBQ3hELE1BQU0sZ0JBQWdCLEdBQUcsSUFBQSxnQ0FBZ0IsRUFBQyxhQUFhLENBQUMsQ0FBQztRQUN6RCxNQUFNLGFBQWEsR0FBRyxJQUFJLDZCQUFhLENBQ3JDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFDeEMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUMzQyxDQUFDO1FBRUYsSUFBSSxhQUFhLEVBQUU7WUFDakIsYUFBYSxDQUFDLEtBQUssQ0FBQyx3RkFBd0YsQ0FBQyxDQUFDO1lBQzlHLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzNELGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDdEI7UUFFRCxNQUFNLE9BQU8sR0FBRyxJ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
@@ -4,6 +4,7 @@ declare type ClientConfiguration = {
4
4
  baseUri?: string;
5
5
  wsUrl?: string;
6
6
  logConfiguration?: LogConfiguration;
7
+ realtimeUpdatesEnabled?: boolean;
7
8
  };
8
9
  declare function getConfiguration(configuration: Partial<ClientConfiguration>): Required<ClientConfiguration>;
9
10
  declare function validateConfiguration(configuration: Partial<ClientConfiguration>, loggerService: LoggerService): boolean;
@@ -1,10 +1,6 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.validateConfiguration = exports.getConfiguration = void 0;
7
- const lodash_1 = __importDefault(require("lodash"));
8
4
  const loggerService_1 = require("./services/loggerService");
9
5
  const defaults = () => {
10
6
  const baseUri = 'https://api.stigg.io';
@@ -15,6 +11,7 @@ const defaults = () => {
15
11
  logger: console,
16
12
  logLevel: loggerService_1.LogLevel.ERROR,
17
13
  },
14
+ realtimeUpdatesEnabled: true,
18
15
  };
19
16
  };
20
17
  function getConfiguration(configuration) {
@@ -24,7 +21,7 @@ function getConfiguration(configuration) {
24
21
  : configuration.baseUri
25
22
  ? getWsUrl(configuration.baseUri)
26
23
  : defaultConfig.wsUrl;
27
- return lodash_1.default.merge(defaultConfig, configuration, { wsUrl });
24
+ return Object.assign(Object.assign(Object.assign({}, defaultConfig), configuration), { wsUrl });
28
25
  }
29
26
  exports.getConfiguration = getConfiguration;
30
27
  function getWsUrl(apiUrl) {
@@ -47,4 +44,4 @@ function validateConfiguration(configuration, loggerService) {
47
44
  return isValid;
48
45
  }
49
46
  exports.validateConfiguration = validateConfiguration;
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUF1QjtBQUN2Qiw0REFBcUY7QUFTckYsTUFBTSxRQUFRLEdBQUcsR0FBaUMsRUFBRTtJQUNsRCxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQztJQUN2QyxPQUFPO1FBQ0wsT0FBTztRQUNQLEtBQUssRUFBRSxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQ3hCLGdCQUFnQixFQUFFO1lBQ2hCLE1BQU0sRUFBRSxPQUFPO1lBQ2YsUUFBUSxFQUFFLHdCQUFRLENBQUMsS0FBSztTQUN6QjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixTQUFTLGdCQUFnQixDQUFDLGFBQTJDO0lBQ25FLE1BQU0sYUFBYSxHQUFHLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxLQUFLO1FBQy9CLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSztRQUNyQixDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU87WUFDdkIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO1lBQ2pDLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBRXhCLE9BQU8sZ0JBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFrQyxDQUFDO0FBQzNGLENBQUM7QUF5QlEsNENBQWdCO0FBdkJ6QixTQUFTLFFBQVEsQ0FBQyxNQUFjO0lBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTVCLElBQUksR0FBRyxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUU7UUFDNUIsR0FBRyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7S0FDdEI7U0FBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFO1FBQ3BDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO0tBQ3ZCO0lBRUQsbUVBQW1FO0lBQ25FLE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsU0FBUyxxQkFBcUIsQ0FBQyxhQUEyQyxFQUFFLGFBQTRCO0lBQ3RHLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztJQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRTtRQUN6QixhQUFhLENBQUMsS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7UUFDckUsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUNqQjtJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFK0Msc0RBQXFCIn0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDREQUFxRjtBQVVyRixNQUFNLFFBQVEsR0FBRyxHQUFpQyxFQUFFO0lBQ2xELE1BQU0sT0FBTyxHQUFHLHNCQUFzQixDQUFDO0lBQ3ZDLE9BQU87UUFDTCxPQUFPO1FBQ1AsS0FBSyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDeEIsZ0JBQWdCLEVBQUU7WUFDaEIsTUFBTSxFQUFFLE9BQU87WUFDZixRQUFRLEVBQUUsd0JBQVEsQ0FBQyxLQUFLO1NBQ3pCO1FBQ0Qsc0JBQXNCLEVBQUUsSUFBSTtLQUM3QixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsU0FBUyxnQkFBZ0IsQ0FBQyxhQUEyQztJQUNuRSxNQUFNLGFBQWEsR0FBRyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSztRQUMvQixDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUs7UUFDckIsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPO1lBQ3ZCLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztZQUNqQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUV4QixPQUFPLDhDQUFLLGFBQWEsR0FBSyxhQUFhLEtBQUUsS0FBSyxHQUFtQyxDQUFDO0FBQ3hGLENBQUM7QUF5QlEsNENBQWdCO0FBdkJ6QixTQUFTLFFBQVEsQ0FBQyxNQUFjO0lBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTVCLElBQUksR0FBRyxDQUFDLFFBQVEsS0FBSyxPQUFPLEVBQUU7UUFDNUIsR0FBRyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7S0FDdEI7U0FBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFO1FBQ3BDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO0tBQ3ZCO0lBRUQsbUVBQW1FO0lBQ25FLE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsU0FBUyxxQkFBcUIsQ0FBQyxhQUEyQyxFQUFFLGFBQTRCO0lBQ3RHLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztJQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRTtRQUN6QixhQUFhLENBQUMsS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7UUFDckUsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUNqQjtJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFK0Msc0RBQXFCIn0=
package/dist/models.d.ts CHANGED
@@ -1,5 +1,11 @@
1
- import { BillingPeriod, SubscriptionCancellationTime, PromotionalEntitlementStatus, SubscriptionStatus, TrialPeriodUnits, EntitlementResetPeriod, BillingModel, PricingType } from './api/generated/types';
1
+ import { BillingPeriod, SubscriptionCancellationTime, PromotionalEntitlementStatus, SubscriptionStatus, TrialPeriodUnits, BillingModel, PricingType } from './api/generated/types';
2
2
  export { PricingType, ErrorCode, BillingPeriod, SubscriptionCancellationTime } from './api/generated/types';
3
+ export declare enum EntitlementResetPeriod {
4
+ Daily = "Daily",
5
+ Hourly = "Hourly",
6
+ Monthly = "Monthly",
7
+ Weekly = "Weekly"
8
+ }
3
9
  export declare enum AccessDeniedReason {
4
10
  InvalidFeatureType = "InvalidFeatureType",
5
11
  CustomerNotFound = "CustomerNotFound",
@@ -300,11 +306,15 @@ export declare type Plan = {
300
306
  export declare type Product = {
301
307
  id: string;
302
308
  displayName?: string | null;
309
+ description?: string | null;
303
310
  };
304
311
  export declare type DefaultTrialConfig = {
305
312
  duration: number;
306
313
  units: TrialPeriodUnits;
307
314
  };
315
+ export declare type GetPaywall = {
316
+ productId?: string;
317
+ };
308
318
  /** @hidden */
309
319
  export declare class CustomerModel implements FullCustomer {
310
320
  id: string;
package/dist/models.js CHANGED
@@ -1,12 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CustomerModel = exports.Currency = exports.METERED_DEFAULT_FALLBACK_ENTITLEMENT = exports.NUMERIC_DEFAULT_FALLBACK_ENTITLEMENT = exports.BOOLEAN_DEFAULT_FALLBACK_ENTITLEMENT = exports.MeterType = exports.FeatureType = exports.AccessDeniedReason = exports.SubscriptionCancellationTime = exports.BillingPeriod = exports.ErrorCode = exports.PricingType = void 0;
3
+ exports.CustomerModel = exports.Currency = exports.METERED_DEFAULT_FALLBACK_ENTITLEMENT = exports.NUMERIC_DEFAULT_FALLBACK_ENTITLEMENT = exports.BOOLEAN_DEFAULT_FALLBACK_ENTITLEMENT = exports.MeterType = exports.FeatureType = exports.AccessDeniedReason = exports.EntitlementResetPeriod = exports.SubscriptionCancellationTime = exports.BillingPeriod = exports.ErrorCode = exports.PricingType = void 0;
4
4
  const types_1 = require("./api/generated/types");
5
5
  var types_2 = require("./api/generated/types");
6
6
  Object.defineProperty(exports, "PricingType", { enumerable: true, get: function () { return types_2.PricingType; } });
7
7
  Object.defineProperty(exports, "ErrorCode", { enumerable: true, get: function () { return types_2.ErrorCode; } });
8
8
  Object.defineProperty(exports, "BillingPeriod", { enumerable: true, get: function () { return types_2.BillingPeriod; } });
9
9
  Object.defineProperty(exports, "SubscriptionCancellationTime", { enumerable: true, get: function () { return types_2.SubscriptionCancellationTime; } });
10
+ var EntitlementResetPeriod;
11
+ (function (EntitlementResetPeriod) {
12
+ EntitlementResetPeriod["Daily"] = "Daily";
13
+ EntitlementResetPeriod["Hourly"] = "Hourly";
14
+ EntitlementResetPeriod["Monthly"] = "Monthly";
15
+ EntitlementResetPeriod["Weekly"] = "Weekly";
16
+ })(EntitlementResetPeriod = exports.EntitlementResetPeriod || (exports.EntitlementResetPeriod = {}));
10
17
  var AccessDeniedReason;
11
18
  (function (AccessDeniedReason) {
12
19
  AccessDeniedReason["InvalidFeatureType"] = "InvalidFeatureType";
@@ -70,4 +77,4 @@ class CustomerModel {
70
77
  }
71
78
  }
72
79
  exports.CustomerModel = CustomerModel;
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFTK0I7QUFFL0IsK0NBQTRHO0FBQW5HLG9HQUFBLFdBQVcsT0FBQTtBQUFFLGtHQUFBLFNBQVMsT0FBQTtBQUFFLHNHQUFBLGFBQWEsT0FBQTtBQUFFLHFIQUFBLDRCQUE0QixPQUFBO0FBRTVFLElBQVksa0JBUVg7QUFSRCxXQUFZLGtCQUFrQjtJQUM1QiwrREFBeUMsQ0FBQTtJQUN6QywyREFBcUMsQ0FBQTtJQUNyQyx5REFBbUMsQ0FBQTtJQUNuQyxxRUFBK0MsQ0FBQTtJQUMvQyxxRkFBK0QsQ0FBQTtJQUMvRCwrRUFBeUQsQ0FBQTtJQUN6RCx5Q0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBUlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFRN0I7QUFFRCxJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsa0NBQW1CLENBQUE7SUFDbkIsa0NBQW1CLENBQUE7QUFDckIsQ0FBQyxFQUhXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBR3RCO0FBRUQsSUFBWSxTQUlYO0FBSkQsV0FBWSxTQUFTO0lBQ25CLHdDQUEyQixDQUFBO0lBQzNCLHdDQUEyQixDQUFBO0lBQzNCLDBCQUFhLENBQUE7QUFDZixDQUFDLEVBSlcsU0FBUyxHQUFULGlCQUFTLEtBQVQsaUJBQVMsUUFJcEI7QUE4Q0QsZ0JBQWdCO0FBQ0gsUUFBQSxvQ0FBb0MsR0FBdUI7SUFDdEUsVUFBVSxFQUFFLElBQUk7SUFDaEIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUMsT0FBTztDQUMvQyxDQUFDO0FBRUYsZ0JBQWdCO0FBQ0gsUUFBQSxvQ0FBb0MsR0FBdUI7SUFDdEUsVUFBVSxFQUFFLElBQUk7SUFDaEIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsV0FBVyxFQUFFLEtBQUs7SUFDbEIsa0JBQWtCLEVBQUUsa0JBQWtCLENBQUMsT0FBTztDQUMvQyxDQUFDO0FBRUYsZ0JBQWdCO0FBQ0gsUUFBQSxvQ0FBb0MsR0FBdUI7SUFDdEUsVUFBVSxFQUFFLElBQUk7SUFDaEIsU0FBUyxFQUFFLEtBQUs7SUFDaEIsV0FBVyxFQUFFLEtBQUs7SUFDbEIsWUFBWSxFQUFFLENBQUM7SUFDZixjQUFjLEVBQUUsQ0FBQztJQUNqQixrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO0NBQy9DLENBQUM7QUF1SEYsSUFBWSxRQUVYO0FBRkQsV0FBWSxRQUFRO0lBQ2xCLHVCQUFXLENBQUE7QUFDYixDQUFDLEVBRlcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFFbkI7QUF5S0QsY0FBYztBQUNkLE1BQWEsYUFBYTtJQVF4QixZQUFZLEtBQW9CO1FBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSywwQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssMEJBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELGdDQUFnQztRQUM5QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssb0NBQTRCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEcsQ0FBQztDQUNGO0FBdkJELHNDQXVCQyJ9
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFRK0I7QUFFL0IsK0NBQTRHO0FBQW5HLG9HQUFBLFdBQVcsT0FBQTtBQUFFLGtHQUFBLFNBQVMsT0FBQTtBQUFFLHNHQUFBLGFBQWEsT0FBQTtBQUFFLHFIQUFBLDRCQUE0QixPQUFBO0FBRTVFLElBQVksc0JBS1g7QUFMRCxXQUFZLHNCQUFzQjtJQUNoQyx5Q0FBZSxDQUFBO0lBQ2YsMkNBQWlCLENBQUE7SUFDakIsNkNBQW1CLENBQUE7SUFDbkIsMkNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLHNCQUFzQixHQUF0Qiw4QkFBc0IsS0FBdEIsOEJBQXNCLFFBS2pDO0FBRUQsSUFBWSxrQkFRWDtBQVJELFdBQVksa0JBQWtCO0lBQzVCLCtEQUF5QyxDQUFBO0lBQ3pDLDJEQUFxQyxDQUFBO0lBQ3JDLHlEQUFtQyxDQUFBO0lBQ25DLHFFQUErQyxDQUFBO0lBQy9DLHFGQUErRCxDQUFBO0lBQy9ELCtFQUF5RCxDQUFBO0lBQ3pELHlDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFSVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQVE3QjtBQUVELElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixrQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFHdEI7QUFFRCxJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDbkIsd0NBQTJCLENBQUE7SUFDM0Isd0NBQTJCLENBQUE7SUFDM0IsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUlwQjtBQThDRCxnQkFBZ0I7QUFDSCxRQUFBLG9DQUFvQyxHQUF1QjtJQUN0RSxVQUFVLEVBQUUsSUFBSTtJQUNoQixTQUFTLEVBQUUsS0FBSztJQUNoQixrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO0NBQy9DLENBQUM7QUFFRixnQkFBZ0I7QUFDSCxRQUFBLG9DQUFvQyxHQUF1QjtJQUN0RSxVQUFVLEVBQUUsSUFBSTtJQUNoQixTQUFTLEVBQUUsS0FBSztJQUNoQixXQUFXLEVBQUUsS0FBSztJQUNsQixrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO0NBQy9DLENBQUM7QUFFRixnQkFBZ0I7QUFDSCxRQUFBLG9DQUFvQyxHQUF1QjtJQUN0RSxVQUFVLEVBQUUsSUFBSTtJQUNoQixTQUFTLEVBQUUsS0FBSztJQUNoQixXQUFXLEVBQUUsS0FBSztJQUNsQixZQUFZLEVBQUUsQ0FBQztJQUNmLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLE9BQU87Q0FDL0MsQ0FBQztBQXVIRixJQUFZLFFBRVg7QUFGRCxXQUFZLFFBQVE7SUFDbEIsdUJBQVcsQ0FBQTtBQUNiLENBQUMsRUFGVyxRQUFRLEdBQVIsZ0JBQVEsS0FBUixnQkFBUSxRQUVuQjtBQThLRCxjQUFjO0FBQ2QsTUFBYSxhQUFhO0lBUXhCLFlBQVksS0FBb0I7UUFDOUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLDBCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSywwQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsZ0NBQWdDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxvQ0FBNEIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RyxDQUFDO0NBQ0Y7QUF2QkQsc0NBdUJDIn0=
@@ -1,5 +1,5 @@
1
- import { EntitlementFeature } from '../../models';
2
- import { EntitlementResetPeriod, ResetPeriodConfigurationFragment } from '../../api/generated/types';
1
+ import { EntitlementFeature, EntitlementResetPeriod } from '../../models';
2
+ import { ResetPeriodConfigurationFragment } from '../../api/generated/types';
3
3
  export interface CalculatedEntitlement {
4
4
  feature?: EntitlementFeature;
5
5
  usageLimit?: number | null;
@@ -5,5 +5,5 @@ export declare class EntitlementCheckReportingService {
5
5
  private readonly entitlementsApi;
6
6
  private readonly loggerService;
7
7
  constructor(entitlementsApi: EntitlementsApi, loggerService: LoggerService);
8
- reportEntitlementCheckRequested(featureId: string, customerId: string, entitlement: EntitlementCheckResult, requestedUsage?: number): Promise<void>;
8
+ reportEntitlementCheckRequested(featureId: string, customerId: string, entitlement: EntitlementCheckResult, requestedUsage?: number): void;
9
9
  }
@@ -6,13 +6,13 @@ class EntitlementCheckReportingService {
6
6
  this.entitlementsApi = entitlementsApi;
7
7
  this.loggerService = loggerService;
8
8
  }
9
- async reportEntitlementCheckRequested(featureId, customerId, entitlement, requestedUsage) {
9
+ reportEntitlementCheckRequested(featureId, customerId, entitlement, requestedUsage) {
10
10
  this.entitlementsApi.reportEntitlementRequested(featureId, customerId, entitlement, requestedUsage).then(() => {
11
11
  this.loggerService.debug('Successfully reported entitlement check requested');
12
12
  }, (error) => {
13
- this.loggerService.error('Failed to report entitlement check requested', error);
13
+ this.loggerService.error(`Failed to report entitlement check requested. Error: ${error.message}`, error);
14
14
  });
15
15
  }
16
16
  }
17
17
  exports.EntitlementCheckReportingService = EntitlementCheckReportingService;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRDaGVja1JlcG9ydGluZ1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvZW50aXRsZW1lbnRDaGVja1JlcG9ydGluZ1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsTUFBYSxnQ0FBZ0M7SUFDM0MsWUFBNkIsZUFBZ0MsRUFBbUIsYUFBNEI7UUFBL0Usb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQW1CLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVoSCxLQUFLLENBQUMsK0JBQStCLENBQ25DLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLFdBQW1DLEVBQ25DLGNBQXVCO1FBRXZCLElBQUksQ0FBQyxlQUFlLENBQUMsMEJBQTBCLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUN0RyxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1FBQ2hGLENBQUMsRUFDRCxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsOENBQThDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEYsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFsQkQsNEVBa0JDIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRDaGVja1JlcG9ydGluZ1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvZW50aXRsZW1lbnRDaGVja1JlcG9ydGluZ1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsTUFBYSxnQ0FBZ0M7SUFDM0MsWUFBNkIsZUFBZ0MsRUFBbUIsYUFBNEI7UUFBL0Usb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQW1CLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVoSCwrQkFBK0IsQ0FDN0IsU0FBaUIsRUFDakIsVUFBa0IsRUFDbEIsV0FBbUMsRUFDbkMsY0FBdUI7UUFFdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQ3RHLEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7UUFDaEYsQ0FBQyxFQUNELENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDYixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyx3REFBd0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzNHLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBbEJELDRFQWtCQyJ9
@@ -10,8 +10,11 @@ export declare class EntitlementsService {
10
10
  private readonly entitlementsApi;
11
11
  private readonly entitlementCheckReportingService;
12
12
  private readonly modelMapper;
13
+ private entitlementsSubscription;
14
+ private usageSubscription;
13
15
  constructor(cacheService: CacheService, client: ApolloClient<NormalizedCacheObject>, batchedGraphqlClient: ApolloClient<NormalizedCacheObject>, loggerService: LoggerService);
14
- private onEntitlementsUpdated;
16
+ subscribeToUpdates(): void;
17
+ unsubscribeFromUpdates(): void;
15
18
  refetchEntitlements(customerRefId: string): Promise<{
16
19
  entitlements: Map<string, CachedEntitlement> | null;
17
20
  customerExists: boolean;
@@ -20,9 +23,11 @@ export declare class EntitlementsService {
20
23
  getNumericEntitlement(customerRefId: string, featureRefId: string, fallbackEntitlement: NumericEntitlement, options?: NumericEntitlementOptions): Promise<NumericEntitlement>;
21
24
  getMeteredEntitlement(customerRefId: string, featureRefId: string, fallbackEntitlement: MeteredEntitlement, options?: MeteredEntitlementOptions): Promise<MeteredEntitlement>;
22
25
  getCustomerEntitlements(customerRefId: string): Promise<import("../models").Entitlement[]>;
26
+ private onEntitlementsUpdated;
23
27
  private onUsageUpdated;
24
28
  private tryGetCacheCustomerAndEntitlement;
25
29
  createUsageMeasurement(input: CreateUsageMeasurement): Promise<FetchResult<import("../api/generated/types").CreateUsageMeasurementMutation, Record<string, any>, Record<string, any>>>;
30
+ private tryTrackEntitlementCheck;
26
31
  }
27
32
  export declare type GetEntitlementResult = {
28
33
  entitlement: CachedEntitlement | null;
@@ -14,31 +14,66 @@ class EntitlementsService {
14
14
  constructor(cacheService, client, batchedGraphqlClient, loggerService) {
15
15
  this.cacheService = cacheService;
16
16
  this.loggerService = loggerService;
17
- this.onEntitlementsUpdated = (value) => {
18
- if (value.errors || !value.data) {
19
- this.loggerService.error(`Failed to handle entitlements updated with error ${value.errors}`, {
20
- error: JSON.stringify(value.errors),
17
+ this.entitlementsSubscription = null;
18
+ this.usageSubscription = null;
19
+ this.onEntitlementsUpdated = (result) => {
20
+ if (result.errors || !result.data) {
21
+ this.loggerService.error(`Failed to handle entitlements updated event. Errors: ${result.errors}`, {
22
+ errors: JSON.stringify(result.errors),
21
23
  });
22
24
  return;
23
25
  }
24
- const entitlementsUpdated = value.data.entitlementsUpdated;
26
+ const entitlementsUpdated = result.data.entitlementsUpdated;
27
+ this.loggerService.debug(`Entitlements updated event arrived.`, {
28
+ customerId: entitlementsUpdated.customerId,
29
+ entitlements: entitlementsUpdated.entitlements,
30
+ });
25
31
  const entitlements = this.modelMapper.mapCachedEntitlements(entitlementsUpdated.entitlements);
26
32
  this.cacheService.setCustomer(entitlementsUpdated.customerId, entitlements);
27
33
  };
28
- this.onUsageUpdated = (data) => {
29
- if (data.errors || !data.data) {
30
- this.loggerService.error(`Failed to handle usage updated with error ${data.errors}`, {
31
- error: JSON.stringify(data.errors),
34
+ this.onUsageUpdated = (result) => {
35
+ if (result.errors || !result.data) {
36
+ this.loggerService.error(`Failed to handle usage updated event. Errors: ${result.errors}`, {
37
+ errors: JSON.stringify(result.errors),
32
38
  });
33
39
  return;
34
40
  }
35
- const { usage: { customerId, featureId, currentUsage, nextResetDate }, entitlement, } = data.data.usageUpdated;
41
+ const { usage: { customerId, featureId, currentUsage, nextResetDate }, entitlement, } = result.data.usageUpdated;
42
+ this.loggerService.debug(`Usage updated event arrived.`, {
43
+ customerId: customerId,
44
+ featureId: featureId,
45
+ currentUsage: currentUsage,
46
+ nextResetDate: nextResetDate,
47
+ });
36
48
  this.cacheService.setEntitlement(customerId, featureId, this.modelMapper.mapCachedEntitlement(entitlement, currentUsage, nextResetDate));
37
49
  };
38
50
  this.entitlementsApi = new entitlementsApi_1.default(client);
39
51
  this.entitlementCheckReportingService = new entitlementCheckReportingService_1.EntitlementCheckReportingService(new entitlementsApi_1.default(batchedGraphqlClient), this.loggerService);
40
52
  this.modelMapper = new ModelMapper_1.ModelMapper();
41
- this.entitlementsApi.subscribeEntitlementsChanges(this.onEntitlementsUpdated, this.onUsageUpdated);
53
+ }
54
+ subscribeToUpdates() {
55
+ this.loggerService.log('Subscribing to real-time updates');
56
+ this.unsubscribeFromUpdates();
57
+ this.entitlementsSubscription = this.entitlementsApi.subscribeEntitlementsUpdated().subscribe((value) => this.onEntitlementsUpdated(value), (err) => {
58
+ this.loggerService.error(`Error while handling entitlements updated event. Error: ${err.message}`, {
59
+ stack: err.stack || '',
60
+ });
61
+ this.subscribeToUpdates();
62
+ });
63
+ this.usageSubscription = this.entitlementsApi.subscribeUsageUpdated().subscribe((value) => this.onUsageUpdated(value), (err) => {
64
+ this.loggerService.error(`Error while handling usage updated event. Error: ${err.message}`, {
65
+ stack: err.stack || '',
66
+ });
67
+ this.subscribeToUpdates();
68
+ });
69
+ }
70
+ unsubscribeFromUpdates() {
71
+ var _a, _b;
72
+ (_a = this.entitlementsSubscription) === null || _a === void 0 ? void 0 : _a.unsubscribe();
73
+ this.entitlementsSubscription = null;
74
+ (_b = this.usageSubscription) === null || _b === void 0 ? void 0 : _b.unsubscribe();
75
+ this.usageSubscription = null;
76
+ this.cacheService.clearCache();
42
77
  }
43
78
  async refetchEntitlements(customerRefId) {
44
79
  let cachedEntitlements = null;
@@ -56,6 +91,7 @@ class EntitlementsService {
56
91
  }
57
92
  async getBooleanEntitlement(customerRefId, featureRefId, fallbackEntitlement, options) {
58
93
  var _a, _b;
94
+ const shouldTrack = (options === null || options === void 0 ? void 0 : options.shouldTrack) || false;
59
95
  let { entitlement, customerExists } = this.tryGetCacheCustomerAndEntitlement(featureRefId, customerRefId);
60
96
  if (!entitlement) {
61
97
  const refetchResult = await this.refetchEntitlements(customerRefId);
@@ -65,21 +101,23 @@ class EntitlementsService {
65
101
  const decision = entitlementDecisionService_1.EntitlementDecisionService.decideEntitlementPolicy(customerExists, entitlement);
66
102
  if ((entitlement === null || entitlement === void 0 ? void 0 : entitlement.calculatedEntitlement.feature) &&
67
103
  ((_b = entitlement.calculatedEntitlement.feature) === null || _b === void 0 ? void 0 : _b.featureType) !== models_1.FeatureType.Boolean) {
68
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, this.modelMapper.mapFallbackBooleanEntitlementResult(fallbackEntitlement, decision));
104
+ const fallbackEntitlementResult = this.modelMapper.mapFallbackBooleanEntitlementResult(fallbackEntitlement, decision);
105
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, fallbackEntitlementResult);
69
106
  return fallbackEntitlement;
70
107
  }
71
108
  if (!entitlement) {
72
109
  this.loggerService.log(`Customer with id: ${customerRefId} not found in api`, { customerRefId });
73
110
  const entitlementResult = this.modelMapper.mapEntitlementResult(decision);
74
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
111
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
75
112
  return Object.assign(Object.assign({}, decision), { isFallback: false });
76
113
  }
77
114
  const entitlementResult = this.modelMapper.mapEntitlementResult(decision, entitlement);
78
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
115
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
79
116
  return this.modelMapper.mapBooleanEntitlement(entitlement, decision);
80
117
  }
81
118
  async getNumericEntitlement(customerRefId, featureRefId, fallbackEntitlement, options) {
82
119
  var _a, _b;
120
+ const shouldTrack = (options === null || options === void 0 ? void 0 : options.shouldTrack) || false;
83
121
  let { entitlement, customerExists } = this.tryGetCacheCustomerAndEntitlement(featureRefId, customerRefId);
84
122
  if (!entitlement) {
85
123
  const refetchResult = await this.refetchEntitlements(customerRefId);
@@ -90,52 +128,52 @@ class EntitlementsService {
90
128
  if ((entitlement === null || entitlement === void 0 ? void 0 : entitlement.calculatedEntitlement.feature) &&
91
129
  ((_b = entitlement.calculatedEntitlement.feature) === null || _b === void 0 ? void 0 : _b.featureType) !== models_1.FeatureType.Numeric) {
92
130
  const entitlementResult = this.modelMapper.mapFallbackNumericEntitlementResult(fallbackEntitlement, decision);
93
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
131
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
94
132
  return fallbackEntitlement;
95
133
  }
96
134
  if (!entitlement) {
97
135
  this.loggerService.log(`Customer with id: ${customerRefId} not found in api`, { customerRefId });
98
136
  const entitlementResult = this.modelMapper.mapEntitlementResult(decision);
99
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
137
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
100
138
  return Object.assign(Object.assign({}, decision), { isFallback: false, isUnlimited: false });
101
139
  }
102
140
  const entitlementResult = this.modelMapper.mapEntitlementResult(decision, entitlement);
103
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
141
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
104
142
  return this.modelMapper.mapNumericEntitlement(entitlement, decision);
105
143
  }
106
144
  async getMeteredEntitlement(customerRefId, featureRefId, fallbackEntitlement, options) {
107
145
  var _a, _b, _c;
146
+ const shouldTrack = (options === null || options === void 0 ? void 0 : options.shouldTrack) || false;
147
+ const requestUsage = options === null || options === void 0 ? void 0 : options.requestedUsage;
108
148
  let { entitlement, customerExists } = this.tryGetCacheCustomerAndEntitlement(featureRefId, customerRefId);
109
149
  if (!entitlement) {
110
150
  const refetchResult = await this.refetchEntitlements(customerRefId);
111
151
  entitlement = ((_a = refetchResult.entitlements) === null || _a === void 0 ? void 0 : _a.get(featureRefId)) || null;
112
152
  customerExists = refetchResult.customerExists;
113
153
  }
114
- const decision = entitlementDecisionService_1.EntitlementDecisionService.decideEntitlementPolicy(customerExists, entitlement, options === null || options === void 0 ? void 0 : options.requestedUsage);
154
+ const decision = entitlementDecisionService_1.EntitlementDecisionService.decideEntitlementPolicy(customerExists, entitlement, requestUsage);
115
155
  if ((entitlement === null || entitlement === void 0 ? void 0 : entitlement.calculatedEntitlement.feature) &&
116
156
  ((_b = entitlement.calculatedEntitlement.feature) === null || _b === void 0 ? void 0 : _b.meterType) !== models_1.MeterType.Fluctuating &&
117
157
  ((_c = entitlement.calculatedEntitlement.feature) === null || _c === void 0 ? void 0 : _c.meterType) !== models_1.MeterType.Incremental) {
118
- const entitlementResult = this.modelMapper.mapFallbackMeteredEntitlementResult(fallbackEntitlement, decision, options === null || options === void 0 ? void 0 : options.requestedUsage);
119
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
158
+ const entitlementResult = this.modelMapper.mapFallbackMeteredEntitlementResult(fallbackEntitlement, decision, requestUsage);
159
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult, requestUsage);
120
160
  return fallbackEntitlement;
121
161
  }
122
162
  if (!entitlement) {
123
163
  this.loggerService.log(`Customer with id: ${customerRefId} not found in api`, { customerRefId });
124
- const entitlementResult = this.modelMapper.mapEntitlementResult(decision, undefined, options === null || options === void 0 ? void 0 : options.requestedUsage);
125
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
126
- return Object.assign(Object.assign({}, decision), { currentUsage: 0, isFallback: false, isUnlimited: false, requestedUsage: (options === null || options === void 0 ? void 0 : options.requestedUsage) || 0 });
164
+ const entitlementResult = this.modelMapper.mapEntitlementResult(decision, undefined, requestUsage);
165
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult);
166
+ return Object.assign(Object.assign({}, decision), { currentUsage: 0, isFallback: false, isUnlimited: false, requestedUsage: requestUsage || 0 });
127
167
  }
128
- const entitlementResult = this.modelMapper.mapEntitlementResult(decision, entitlement, options === null || options === void 0 ? void 0 : options.requestedUsage);
129
- this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, entitlementResult);
130
- return this.modelMapper.mapMeteredEntitlement(entitlement, decision, options === null || options === void 0 ? void 0 : options.requestedUsage);
168
+ const entitlementResult = this.modelMapper.mapEntitlementResult(decision, entitlement, requestUsage);
169
+ this.tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, entitlementResult, requestUsage);
170
+ return this.modelMapper.mapMeteredEntitlement(entitlement, decision, requestUsage);
131
171
  }
132
172
  async getCustomerEntitlements(customerRefId) {
133
173
  const entitlements = this.cacheService.getCustomerEntitlements(customerRefId);
134
174
  if (!entitlements) {
135
- const { customerExists } = await this.refetchEntitlements(customerRefId);
136
- if (!customerExists) {
137
- throw new Error(`Customer with id: ${customerRefId} doesn't exist or doesn't have an active subscription`);
138
- }
175
+ await this.refetchEntitlements(customerRefId);
176
+ // todo currently there is no good way to find out if the customer exists or not
139
177
  }
140
178
  const cachedEntitlements = this.cacheService.getCustomerEntitlements(customerRefId) || [];
141
179
  return Array.from(cachedEntitlements.values()).map((entitlement) => {
@@ -154,6 +192,12 @@ class EntitlementsService {
154
192
  async createUsageMeasurement(input) {
155
193
  return this.entitlementsApi.createUsageMeasurement(input);
156
194
  }
195
+ tryTrackEntitlementCheck(shouldTrack, featureRefId, customerRefId, result, requestedUsage) {
196
+ if (!shouldTrack) {
197
+ return;
198
+ }
199
+ this.entitlementCheckReportingService.reportEntitlementCheckRequested(featureRefId, customerRefId, result, requestedUsage);
200
+ }
157
201
  }
158
202
  exports.EntitlementsService = EntitlementsService;
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLDBGQUFrRTtBQUNsRSxzREFBbUQ7QUFDbkQsc0NBVW1CO0FBQ25CLDZFQUFvRjtBQUlwRix5RkFBc0Y7QUFDdEYsbUNBQWlDO0FBRWpDLE1BQWEsbUJBQW1CO0lBSzlCLFlBQ21CLFlBQTBCLEVBQzNDLE1BQTJDLEVBQzNDLG9CQUF5RCxFQUN4QyxhQUE0QjtRQUg1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUcxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQVl2QywwQkFBcUIsR0FBRyxDQUFDLEtBQW1ELEVBQUUsRUFBRTtZQUN0RixJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxvREFBb0QsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFO29CQUMzRixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2lCQUNwQyxDQUFDLENBQUM7Z0JBQ0gsT0FBTzthQUNSO1lBRUQsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1lBQzNELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFOUYsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzlFLENBQUMsQ0FBQztRQXdNTSxtQkFBYyxHQUFHLENBQUMsSUFBMkMsRUFBRSxFQUFFO1lBQ3ZFLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFD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
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9lbnRpdGxlbWVudHNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBLDBGQUFrRTtBQUNsRSxzREFBbUQ7QUFDbkQsc0NBVW1CO0FBQ25CLDZFQUFvRjtBQVFwRix5RkFBc0Y7QUFDdEYsbUNBQWlDO0FBRWpDLE1BQWEsbUJBQW1CO0lBUTlCLFlBQ21CLFlBQTBCLEVBQzNDLE1BQTJDLEVBQzNDLG9CQUF5RCxFQUN4QyxhQUE0QjtRQUg1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUcxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQVB2Qyw2QkFBd0IsR0FBc0MsSUFBSSxDQUFDO1FBQ25FLHNCQUFpQixHQUFzQyxJQUFJLENBQUM7UUFzTjVELDBCQUFxQixHQUFHLENBQUMsTUFBb0QsRUFBRSxFQUFFO1lBQ3ZGLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLHdEQUF3RCxNQUFNLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQ2hHLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQ3RDLENBQUMsQ0FBQztnQkFDSCxPQUFPO2FBQ1I7WUFFRCxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7WUFFNUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMscUNBQXFDLEVBQUU7Z0JBQzlELFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxVQUFVO2dCQUMxQyxZQUFZLEVBQUUsbUJBQW1CLENBQUMsWUFBWTthQUMvQyxDQUFDLENBQUM7WUFFSCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFD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
@@ -1,7 +1,7 @@
1
1
  export interface Logger {
2
- log: (message: string, object?: Record<string, string>) => void;
3
- debug: (message: string, object?: Record<string, string>) => void;
4
- error: (message: string, error?: Record<string, string>) => void;
2
+ log: (message: string, object?: Record<string, any>) => void;
3
+ debug: (message: string, object?: Record<string, any>) => void;
4
+ error: (message: string, error?: Record<string, any>) => void;
5
5
  }
6
6
  export interface LogConfiguration {
7
7
  logger: Logger;
@@ -17,7 +17,7 @@ export declare class LoggerService implements Logger {
17
17
  private readonly logger;
18
18
  private readonly logLevel;
19
19
  constructor(logger: Logger, logLevel: LogLevel);
20
- error(message: string, error?: Record<string, string>): void;
21
- log(message: string, object?: Record<string, string>): void;
22
- debug(message: string, object?: Record<string, string> | undefined): void;
20
+ error(message: string, error?: Record<string, any>): void;
21
+ log(message: string, object?: Record<string, any>): void;
22
+ debug(message: string, object?: Record<string, any> | undefined): void;
23
23
  }