@reflag/node-sdk 1.0.0 → 1.1.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/README.md CHANGED
@@ -54,22 +54,6 @@ Other supported languages/frameworks are in the [Supported languages](https://do
54
54
 
55
55
  You can also [use the HTTP API directly](https://docs.reflag.com/api/http-api)
56
56
 
57
- ## Migrating from Bucket SDK
58
-
59
- If you have been using the Bucket SDKs, the following list will help you migrate to Reflag SDK:
60
-
61
- - `Bucket*` classes, and types have been renamed to `Reflag*` (e.g. `BucketClient` is now `ReflagClient`)
62
- - `Feature*` classes, and types have been renamed to `Feature*` (e.g. `Feature` is now `Flag`, `RawFeatures` is now `RawFlags`)
63
- - When using strongly-typed flags, the new `Flags` interface replaced `Features` interface
64
- - All methods that contained `feature` in the name have been renamed to use the `flag` terminology (e.g. `getFeature` is `getFlag`)
65
- - All environment variables that were prefixed with `BUCKET_` are now prefixed with `REFLAG_`
66
- - The `BUCKET_HOST` environment variable and `host` option have been removed from `ReflagClient` constructor, use `REFLAG_API_BASE_URL` instead
67
- - The `BUCKET_FEATURES_ENABLED` and `BUCKET_FEATURES_DISABLED` have been renamed to `REFLAG_FLAGS_ENABLED` and `REFLAG_FLAGS_DISABLED`
68
- - The default configuration file has been renamed from `bucketConfig.json` to `reflag.config.json`
69
- - The `fallbackFeatures` property in client constructor and configuration files has been renamed to `fallbackFlags`
70
- - `featureKey` has been renamed to `flagKey` in all methods that accepts that argument
71
- - The SDKs will not emit `evaluate` and `evaluate-config` events anymore
72
-
73
57
  ## Basic usage
74
58
 
75
59
  To get started you need to obtain your secret key from the [environment settings](https://app.reflag.com/env-current/settings/app-environments)
@@ -98,9 +82,9 @@ export const reflagClient = new ReflagClient();
98
82
  // Initialize the client and begin fetching flag targeting definitions.
99
83
  // You must call this method prior to any calls to `getFlags()`,
100
84
  // otherwise an empty object will be returned.
101
- reflagClient.initialize().then({
102
- console.log("Reflag initialized!")
103
- })
85
+ reflagClient.initialize().then(() => {
86
+ console.log("Reflag initialized!");
87
+ });
104
88
  ```
105
89
 
106
90
  Once the client is initialized, you can obtain flags along with the `isEnabled`
@@ -222,6 +206,64 @@ const flagDefs = await client.getFlagDefinitions();
222
206
  // }]
223
207
  ```
224
208
 
209
+ ## Bootstrapping client-side applications
210
+
211
+ The `getFlagsForBootstrap()` method is designed for server-side rendering (SSR) scenarios where you need to pass flag data to client-side applications. This method returns raw flag data without wrapper functions, making it suitable for serialization and client-side hydration.
212
+
213
+ ```typescript
214
+ const client = new ReflagClient();
215
+ await client.initialize();
216
+
217
+ // Get flags for bootstrapping with full context
218
+ const { context, flags } = client.getFlagsForBootstrap({
219
+ user: {
220
+ id: "user123",
221
+ name: "John Doe",
222
+ email: "john@acme.com",
223
+ },
224
+ company: {
225
+ id: "company456",
226
+ name: "Acme Inc",
227
+ plan: "enterprise",
228
+ },
229
+ other: {
230
+ source: "web",
231
+ platform: "desktop",
232
+ },
233
+ });
234
+
235
+ // Pass this data to your client-side application
236
+ // The flags object contains raw flag data suitable for JSON serialization
237
+ console.log(flags);
238
+ // {
239
+ // "huddle": {
240
+ // "key": "huddle",
241
+ // "isEnabled": true,
242
+ // "config": {
243
+ // "key": "enhanced",
244
+ // "payload": { "maxParticipants": 50, "videoQuality": "hd" },
245
+ // }
246
+ // }
247
+ // }
248
+ ```
249
+
250
+ You can also use a bound client for simpler API:
251
+
252
+ ```typescript
253
+ const boundClient = client.bindClient({
254
+ user: { id: "user123", name: "John Doe", email: "john@acme.com" },
255
+ company: { id: "company456", name: "Acme Inc", plan: "enterprise" },
256
+ });
257
+
258
+ const { context, flags } = boundClient.getFlagsForBootstrap();
259
+ ```
260
+
261
+ ### Key differences from `getFlags()`
262
+
263
+ - **Raw data**: Returns plain objects without `track()` functions, making them JSON serializable
264
+ - **Context included**: Returns both the evaluated flags and the context used for evaluation
265
+ - **Bootstrapping focus**: Designed specifically for passing data to client-side applications
266
+
225
267
  ## Edge-runtimes like Cloudflare Workers
226
268
 
227
269
  To use the Reflag NodeSDK with Cloudflare workers, set the `node_compat` flag [in your wrangler file](https://developers.cloudflare.com/workers/runtime-apis/nodejs/#get-started).
@@ -255,7 +297,7 @@ export default {
255
297
  };
256
298
  ```
257
299
 
258
- See [examples/cloudflare-worker](examples/cloudflare-worker/src/index.ts) for a deployable example.
300
+ See [examples/cloudflare-worker](https://github.com/reflagcom/javascript/tree/main/packages/node-sdk/examples/cloudflare-worker/src/index.ts) for a deployable example.
259
301
 
260
302
  Reflag maintains a cached set of flag definitions in the memory of your worker which it uses to decide which flags to turn on for which users/companies.
261
303
 
@@ -277,14 +319,11 @@ fallback behavior:
277
319
 
278
320
  ```typescript
279
321
  // Network errors during tracking are logged but don't affect your application
280
- const { track } = client.getFlag("my-flag");
322
+ const { isEnabled, track } = client.getFlag("my-flag");
281
323
  if (isEnabled) {
282
- try {
283
- await track();
284
- } catch (error) {
285
- // The SDK already logged this error
286
- // Your application can continue normally
287
- }
324
+ // network errors are caught internally and logged and never bubbled up to your application
325
+ // no need to try/catch around "track" or "getFlag"
326
+ await track();
288
327
  }
289
328
  ```
290
329
 
@@ -633,12 +672,12 @@ app.use((req, res, next) => {
633
672
  // mechanism in a real-world application
634
673
  const user = {
635
674
  id: req.user?.id,
636
- name: req.user?.name
675
+ name: req.user?.name,
637
676
  email: req.user?.email
638
677
  }
639
678
 
640
679
  const company = {
641
- id: req.user?.companyId
680
+ id: req.user?.companyId,
642
681
  name: req.user?.companyName
643
682
  }
644
683
 
@@ -655,7 +694,7 @@ app.use((req, res, next) => {
655
694
 
656
695
  // Now use res.locals.boundReflagClient in your handlers
657
696
  app.get("/todos", async (_req, res) => {
658
- const { track, isEnabled } = res.locals.reflagUser.getFlag("show-todos");
697
+ const { track, isEnabled } = res.locals.boundReflagClient.getFlag("show-todos");
659
698
 
660
699
  if (!isEnabled) {
661
700
  res.status(403).send({"error": "flag inaccessible"})
@@ -835,6 +874,22 @@ import { sha256 } from 'crypto-hash';
835
874
  client.updateUser({ userId: await sha256("john_doe"), ... });
836
875
  ```
837
876
 
877
+ ## Migrating from Bucket SDK
878
+
879
+ If you have been using the Bucket SDKs previously, the following list will help you migrate to Reflag SDK:
880
+
881
+ - `Bucket*` classes, and types have been renamed to `Reflag*` (e.g. `BucketClient` is now `ReflagClient`)
882
+ - `Feature*` classes, and types have been renamed to `Flag*` (e.g. `Feature` is now `Flag`, `RawFeatures` is now `RawFlags`)
883
+ - When using strongly-typed flags, the new `Flags` interface replaced `Features` interface
884
+ - All methods that contained `feature` in the name have been renamed to use the `flag` terminology (e.g. `getFeature` is `getFlag`)
885
+ - All environment variables that were prefixed with `BUCKET_` are now prefixed with `REFLAG_`
886
+ - The `BUCKET_HOST` environment variable and `host` option have been removed from `ReflagClient` constructor, use `REFLAG_API_BASE_URL` instead
887
+ - The `BUCKET_FEATURES_ENABLED` and `BUCKET_FEATURES_DISABLED` have been renamed to `REFLAG_FLAGS_ENABLED` and `REFLAG_FLAGS_DISABLED`
888
+ - The default configuration file has been renamed from `bucketConfig.json` to `reflag.config.json`
889
+ - The `fallbackFeatures` property in client constructor and configuration files has been renamed to `fallbackFlags`
890
+ - `featureKey` has been renamed to `flagKey` in all methods that accepts that argument
891
+ - The SDKs will not emit `evaluate` and `evaluate-config` events anymore
892
+
838
893
  ## Typescript
839
894
 
840
895
  Types are bundled together with the library and exposed automatically when importing
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reflag/node-sdk",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -10,14 +10,15 @@
10
10
  "dev": "vite",
11
11
  "start": "vite",
12
12
  "build": "tsc --project tsconfig.build.json",
13
- "test": "vitest -c vite.config.js",
14
- "test:ci": "vitest run -c vite.config.js --reporter=default --reporter=junit --outputFile=junit.xml",
15
- "coverage": "vitest run --coverage",
13
+ "test": "vitest run",
14
+ "test:watch": "vitest",
15
+ "test:ci": "yarn test --reporter=default --reporter=junit --outputFile=junit.xml",
16
+ "coverage": "yarn test --coverage",
16
17
  "lint": "eslint .",
17
18
  "lint:ci": "eslint --output-file eslint-report.json --format json .",
18
19
  "prettier": "prettier --check .",
19
20
  "format": "yarn lint --fix && yarn prettier --write",
20
- "preversion": "yarn lint && yarn prettier && yarn vitest run -c vite.config.js && yarn build"
21
+ "preversion": "yarn lint && yarn prettier && yarn test && yarn build"
21
22
  },
22
23
  "files": [
23
24
  "dist"
@@ -80,6 +80,16 @@ class BatchBuffer {
80
80
  }
81
81
  });
82
82
  }
83
+ /**
84
+ * Destroys the buffer, clearing any pending timer and discarding buffered items.
85
+ */
86
+ destroy() {
87
+ if (this.timer) {
88
+ clearTimeout(this.timer);
89
+ this.timer = null;
90
+ }
91
+ this.buffer = [];
92
+ }
83
93
  }
84
94
  exports.default = BatchBuffer;
85
95
  //# sourceMappingURL=batch-buffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-buffer.js","sourceRoot":"","sources":["../../src/batch-buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-buffer.js","sourceRoot":"","sources":["../../src/batch-buffer.ts"],"names":[],"mappings":"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"}
@@ -110,7 +110,7 @@ class ReflagClient {
110
110
  * @throws An error if the options are invalid.
111
111
  **/
112
112
  constructor(options = {}) {
113
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
113
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
114
114
  this.initializationFinished = false;
115
115
  this._initialize = (0, utils_1.once)(() => __awaiter(this, void 0, void 0, function* () {
116
116
  const start = Date.now();
@@ -191,8 +191,7 @@ class ReflagClient {
191
191
  this.batchBuffer = new batch_buffer_1.default(Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.batchOptions), { flushHandler: (items) => this.sendBulkEvents(items), logger: this.logger }));
192
192
  this._config = {
193
193
  offline,
194
- emitEvaluationEvents: (_e = config.emitEvaluationEvents) !== null && _e !== void 0 ? _e : true,
195
- apiBaseUrl: ((_f = config.apiBaseUrl) !== null && _f !== void 0 ? _f : config.host) || config_1.API_BASE_URL,
194
+ apiBaseUrl: ((_e = config.apiBaseUrl) !== null && _e !== void 0 ? _e : config.host) || config_1.API_BASE_URL,
196
195
  headers: {
197
196
  "Content-Type": "application/json",
198
197
  [config_1.SDK_VERSION_HEADER_NAME]: config_1.SDK_VERSION,
@@ -204,11 +203,11 @@ class ReflagClient {
204
203
  flagOverrides: typeof config.flagOverrides === "function"
205
204
  ? config.flagOverrides
206
205
  : () => config.flagOverrides,
207
- flagsFetchRetries: (_g = options.flagsFetchRetries) !== null && _g !== void 0 ? _g : 3,
208
- fetchTimeoutMs: (_h = options.fetchTimeoutMs) !== null && _h !== void 0 ? _h : config_1.API_TIMEOUT_MS,
209
- cacheStrategy: (_j = options.cacheStrategy) !== null && _j !== void 0 ? _j : "periodically-update",
206
+ flagsFetchRetries: (_f = options.flagsFetchRetries) !== null && _f !== void 0 ? _f : 3,
207
+ fetchTimeoutMs: (_g = options.fetchTimeoutMs) !== null && _g !== void 0 ? _g : config_1.API_TIMEOUT_MS,
208
+ cacheStrategy: (_h = options.cacheStrategy) !== null && _h !== void 0 ? _h : "periodically-update",
210
209
  };
211
- if (((_l = (_k = config.batchOptions) === null || _k === void 0 ? void 0 : _k.flushOnExit) !== null && _l !== void 0 ? _l : true) && !this._config.offline) {
210
+ if (((_k = (_j = config.batchOptions) === null || _j === void 0 ? void 0 : _j.flushOnExit) !== null && _k !== void 0 ? _k : true) && !this._config.offline) {
212
211
  (0, flusher_1.subscribe)(() => this.flush());
213
212
  }
214
213
  if (!new URL(this._config.apiBaseUrl).pathname.endsWith("/")) {
@@ -439,6 +438,18 @@ class ReflagClient {
439
438
  yield this.flagsCache.waitRefresh();
440
439
  });
441
440
  }
441
+ /**
442
+ * Destroys the client and cleans up all resources including timers and background processes.
443
+ *
444
+ * @remarks
445
+ * After calling this method, the client should not be used anymore.
446
+ * This is particularly useful in development environments with hot reloading to prevent
447
+ * multiple background processes from running simultaneously.
448
+ */
449
+ destroy() {
450
+ this.flagsCache.destroy();
451
+ this.batchBuffer.destroy();
452
+ }
442
453
  /**
443
454
  * Gets the flag definitions, including all config values.
444
455
  * To evaluate which flags are enabled for a given user/company, use `getFlags`.
@@ -471,7 +482,12 @@ class ReflagClient {
471
482
  **/
472
483
  getFlags(_a) {
473
484
  var { enableTracking = true } = _a, context = __rest(_a, ["enableTracking"]);
474
- return this._getFlags(Object.assign({ enableTracking }, context));
485
+ const contextWithTracking = Object.assign({ enableTracking }, context);
486
+ const rawFlags = this._getFlags(contextWithTracking);
487
+ return Object.fromEntries(Object.entries(rawFlags).map(([key, rawFlag]) => [
488
+ key,
489
+ this._wrapRawFlag(contextWithTracking, rawFlag),
490
+ ]));
475
491
  }
476
492
  /**
477
493
  * Gets the evaluated flag for the current context which includes the user, company, and custom context.
@@ -485,7 +501,34 @@ class ReflagClient {
485
501
  **/
486
502
  getFlag(_a, key) {
487
503
  var { enableTracking = true } = _a, context = __rest(_a, ["enableTracking"]);
488
- return this._getFlags(Object.assign({ enableTracking }, context), key);
504
+ const contextWithTracking = Object.assign({ enableTracking }, context);
505
+ const rawFlag = this._getFlags(contextWithTracking, key);
506
+ return this._wrapRawFlag(Object.assign({ enableChecks: true }, contextWithTracking), rawFlag !== null && rawFlag !== void 0 ? rawFlag : { key });
507
+ }
508
+ /**
509
+ * Gets the evaluated flags for the current context without wrapping them in getters.
510
+ * This method returns raw flag data suitable for bootstrapping client-side applications.
511
+ *
512
+ * @param options - The options for the context.
513
+ * @param options.enableTracking - Whether to enable tracking for the context.
514
+ * @param options.meta - The meta context associated with the context.
515
+ * @param options.user - The user context.
516
+ * @param options.company - The company context.
517
+ * @param options.other - The other context.
518
+ *
519
+ * @returns The evaluated raw flags and the context.
520
+ *
521
+ * @remarks
522
+ * Call `initialize` before calling this method to ensure the flag definitions are cached, no flags will be returned otherwise.
523
+ * This method returns RawFlag objects without wrapping them in getters, making them suitable for serialization.
524
+ **/
525
+ getFlagsForBootstrap(_a) {
526
+ var { enableTracking = true } = _a, context = __rest(_a, ["enableTracking"]);
527
+ const contextWithTracking = Object.assign({ enableTracking }, context);
528
+ return {
529
+ context: contextWithTracking,
530
+ flags: this._getFlags(contextWithTracking),
531
+ };
489
532
  }
490
533
  /**
491
534
  * Gets evaluated flags with the usage of remote context.
@@ -631,10 +674,7 @@ class ReflagClient {
631
674
  return __awaiter(this, void 0, void 0, function* () {
632
675
  (0, utils_1.ok)(typeof event === "object", "event must be an object");
633
676
  (0, utils_1.ok)(typeof event.action === "string" &&
634
- (event.action === "evaluate" ||
635
- event.action === "evaluate-config" ||
636
- event.action === "check" ||
637
- event.action === "check-config"), "event must have an action");
677
+ (event.action === "check" || event.action === "check-config"), "event must have an action");
638
678
  (0, utils_1.ok)(typeof event.key === "string" && event.key.length > 0, "event must have a flag key");
639
679
  (0, utils_1.ok)(typeof event.targetingVersion === "number" ||
640
680
  event.targetingVersion === undefined, "event must have a targeting version");
@@ -648,10 +688,6 @@ class ReflagClient {
648
688
  if (this._config.offline) {
649
689
  return;
650
690
  }
651
- if (!this._config.emitEvaluationEvents &&
652
- (event.action === "evaluate" || event.action === "evaluate-config")) {
653
- return;
654
- }
655
691
  if (!this.rateLimiter.isAllowed((0, utils_1.hashObject)({
656
692
  action: event.action,
657
693
  key: event.key,
@@ -755,16 +791,13 @@ class ReflagClient {
755
791
  this.logger.warn("no flag definitions available, using fallback flags.");
756
792
  const fallbackFlags = this._config.fallbackFlags || {};
757
793
  if (key) {
758
- return this._wrapRawFlag(Object.assign(Object.assign({}, options), { enableChecks: true }), Object.assign({ key }, fallbackFlags[key]));
794
+ return fallbackFlags[key];
759
795
  }
760
- return Object.fromEntries(Object.entries(fallbackFlags).map(([k, v]) => [
761
- k,
762
- this._wrapRawFlag(options, v),
763
- ]));
796
+ return fallbackFlags;
764
797
  }
765
798
  flagDefinitions = flagDefs;
766
799
  }
767
- const { enableTracking = true, meta: _ } = options, context = __rest(options, ["enableTracking", "meta"]);
800
+ const { enableTracking: _, meta: __ } = options, context = __rest(options, ["enableTracking", "meta"]);
768
801
  const evaluated = flagDefinitions
769
802
  .filter(({ key: flagKey }) => (key ? key === flagKey : true))
770
803
  .map((flag) => {
@@ -783,46 +816,6 @@ class ReflagClient {
783
816
  },
784
817
  });
785
818
  });
786
- if (enableTracking) {
787
- const promises = evaluated
788
- .map((res) => {
789
- var _a;
790
- const outPromises = [];
791
- outPromises.push(this.sendFlagEvent({
792
- action: "evaluate",
793
- key: res.flagKey,
794
- targetingVersion: res.targetingVersion,
795
- evalResult: (_a = res.enabledResult.value) !== null && _a !== void 0 ? _a : false,
796
- evalContext: res.enabledResult.context,
797
- evalRuleResults: res.enabledResult.ruleEvaluationResults,
798
- evalMissingFields: res.enabledResult.missingContextFields,
799
- }));
800
- const config = res.configResult;
801
- if (config.value) {
802
- outPromises.push(this.sendFlagEvent({
803
- action: "evaluate-config",
804
- key: res.flagKey,
805
- targetingVersion: res.configVersion,
806
- evalResult: config.value,
807
- evalContext: config.context,
808
- evalRuleResults: config.ruleEvaluationResults,
809
- evalMissingFields: config.missingContextFields,
810
- }));
811
- }
812
- return outPromises;
813
- })
814
- .flat();
815
- void Promise.allSettled(promises).then((results) => {
816
- const failed = results
817
- .map((result) => result.status === "rejected" ? result.reason : undefined)
818
- .filter(Boolean);
819
- if (failed.length > 0) {
820
- this.logger.error(`failed to queue some evaluate events.`, {
821
- errors: failed,
822
- });
823
- }
824
- });
825
- }
826
819
  let evaluatedFlags = evaluated.reduce((acc, res) => {
827
820
  var _a, _b, _c, _d, _e, _f, _g;
828
821
  acc[res.flagKey] = {
@@ -841,7 +834,6 @@ class ReflagClient {
841
834
  };
842
835
  return acc;
843
836
  }, {});
844
- // apply flag overrides
845
837
  const overrides = Object.entries(this._config.flagOverrides(context))
846
838
  .filter(([flagKey]) => (key ? key === flagKey : true))
847
839
  .map(([flagKey, override]) => [
@@ -863,12 +855,9 @@ class ReflagClient {
863
855
  evaluatedFlags = Object.assign(Object.assign({}, evaluatedFlags), Object.fromEntries(overrides));
864
856
  }
865
857
  if (key) {
866
- return this._wrapRawFlag(Object.assign(Object.assign({}, options), { enableChecks: true }), Object.assign({ key }, evaluatedFlags[key]));
858
+ return evaluatedFlags[key];
867
859
  }
868
- return Object.fromEntries(Object.entries(evaluatedFlags).map(([k, v]) => [
869
- k,
870
- this._wrapRawFlag(options, v),
871
- ]));
860
+ return evaluatedFlags;
872
861
  }
873
862
  _wrapRawFlag(_a, _b) {
874
863
  var { enableTracking, enableChecks = false } = _a, context = __rest(_a, ["enableTracking", "enableChecks"]);
@@ -1026,6 +1015,15 @@ class BoundReflagClient {
1026
1015
  getFlags() {
1027
1016
  return this._client.getFlags(this._options);
1028
1017
  }
1018
+ /**
1019
+ * Get raw flags for the user/company/other context bound to this client without wrapping them in getters.
1020
+ * This method returns raw flag data suitable for bootstrapping client-side applications.
1021
+ *
1022
+ * @returns Raw flags for the given user/company and whether each one is enabled or not
1023
+ */
1024
+ getFlagsForBootstrap() {
1025
+ return this._client.getFlagsForBootstrap(Object.assign({}, this._options));
1026
+ }
1029
1027
  /**
1030
1028
  * Get a specific flag for the user/company/other context bound to this client.
1031
1029
  * Using the `isEnabled` property sends a `check` event to Reflag.
@@ -1123,7 +1121,7 @@ function checkMeta(meta) {
1123
1121
  (0, utils_1.ok)(typeof meta === "undefined" || (0, utils_1.isObject)(meta), "meta must be an object if given");
1124
1122
  (0, utils_1.ok)((meta === null || meta === void 0 ? void 0 : meta.active) === undefined || typeof (meta === null || meta === void 0 ? void 0 : meta.active) === "boolean", "meta.active must be a boolean if given");
1125
1123
  }
1126
- function checkContextWithTracking(context) {
1124
+ function checkContext(context) {
1127
1125
  var _a, _b;
1128
1126
  (0, utils_1.ok)((0, utils_1.isObject)(context), "context must be an object");
1129
1127
  (0, utils_1.ok)(typeof context.user === "undefined" || (0, utils_1.isObject)(context.user), "user must be an object if given");
@@ -1135,6 +1133,9 @@ function checkContextWithTracking(context) {
1135
1133
  (0, utils_1.idOk)(context.company.id, "company.id");
1136
1134
  }
1137
1135
  (0, utils_1.ok)(context.other === undefined || (0, utils_1.isObject)(context.other), "other must be an object if given");
1136
+ }
1137
+ function checkContextWithTracking(context) {
1138
+ checkContext(context);
1138
1139
  (0, utils_1.ok)(typeof context.enableTracking === "boolean", "enableTracking must be a boolean");
1139
1140
  checkMeta(context.meta);
1140
1141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,10 @@ const fetchClient = {
42
42
  method: "get",
43
43
  headers,
44
44
  signal: AbortSignal.timeout(timeoutMs),
45
+ // We must use no-cache to avoid services such as Next.js from caching the response indefinitely.
46
+ // We also can't use no-store because of Next.js error withRetry https://github.com/vercel/next.js/discussions/54036.
47
+ // We also have local caching in the SDKs, so we don't need to cache the response.
48
+ cache: "no-cache",
45
49
  });
46
50
  const json = yield response.json();
47
51
  return {
@@ -72,7 +76,7 @@ function withRetry(fn, onFailedTry, maxRetries, baseDelay, maxDelay) {
72
76
  if (attempt === maxRetries) {
73
77
  break;
74
78
  }
75
- onFailedTry();
79
+ onFailedTry(error);
76
80
  // Calculate exponential backoff with jitter
77
81
  const delay = Math.min(maxDelay, baseDelay * Math.pow(2, attempt) * (0.8 + Math.random() * 0.4));
78
82
  yield new Promise((resolve) => setTimeout(resolve, delay));
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-http-client.js","sourceRoot":"","sources":["../../src/fetch-http-client.ts"],"names":[],"mappings":";;;;;;;;;;;AAmEA,8BAgCC;AAnGD,qCAA0C;AAE1C,mCAA6B;AAE7B;;;;;IAKI;AACJ,MAAM,WAAW,GAAe;IAC9B,IAAI,EAAE,sCAKJ,EAAE,6EAJF,GAAW,EACX,OAA+B,EAC/B,IAAW,EACX,YAAoB,uBAAc;QAElC,IAAA,UAAE,EAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,sBAAsB,CAAC,CAAC;QACtE,IAAA,UAAE,EAAC,OAAO,OAAO,KAAK,QAAQ,EAAE,2BAA2B,CAAC,CAAC;QAE7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;SACvC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE,IAAiB;SACxB,CAAC;IACJ,CAAC,CAAA;IAED,GAAG,EAAE,8BAIH,EAAE,qEAHF,GAAW,EACX,OAA+B,EAC/B,YAAoB,uBAAc;QAElC,IAAA,UAAE,EAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,sBAAsB,CAAC,CAAC;QACtE,IAAA,UAAE,EAAC,OAAO,OAAO,KAAK,QAAQ,EAAE,2BAA2B,CAAC,CAAC;QAE7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,KAAK;YACb,OAAO;YACP,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;SACvC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE,IAAiB;SACxB,CAAC;IACJ,CAAC,CAAA;CACF,CAAC;AAEF;;;;;;;;GAQG;AACH,SAAsB,SAAS,CAC7B,EAAoB,EACpB,WAAuB,EACvB,UAAkB,EAClB,SAAiB,EACjB,QAAgB;;QAEhB,IAAI,SAAkB,CAAC;QAEvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,SAAS,GAAG,KAAK,CAAC;gBAElB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM;gBACR,CAAC;gBAED,WAAW,EAAE,CAAC;gBAEd,4CAA4C;gBAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,QAAQ,EACR,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAC/D,CAAC;gBAEF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,MAAM,SAAS,CAAC;IAClB,CAAC;CAAA;AAED,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"fetch-http-client.js","sourceRoot":"","sources":["../../src/fetch-http-client.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,11 @@ function inRequestCache(ttl, logger, fn) {
47
47
  if (fetching)
48
48
  yield fetching;
49
49
  });
50
+ const destroy = () => {
51
+ fetching = null;
52
+ value = undefined;
53
+ lastFetch = 0;
54
+ };
50
55
  return {
51
56
  get() {
52
57
  const now = Date.now();
@@ -67,6 +72,7 @@ function inRequestCache(ttl, logger, fn) {
67
72
  });
68
73
  },
69
74
  waitRefresh,
75
+ destroy,
70
76
  };
71
77
  }
72
78
  //# sourceMappingURL=inRequestCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inRequestCache.js","sourceRoot":"","sources":["../../src/inRequestCache.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,oGAAoG;;;;;;;;;;;AAIpG,iCA0DC;AA1DD,SAAwB,cAAc,CACpC,GAAW,EACX,MAA0B,EAC1B,EAAgC;IAEhC,IAAI,KAAK,GAAkB,SAAS,CAAC;IACrC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,QAAQ,GAAyB,IAAI,CAAC;IAE1C,SAAe,OAAO;;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,QAAQ,GAAG,CAAC,GAAS,EAAE;;oBACrB,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;wBAC1B,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;wBACvD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACzB,KAAK,GAAG,MAAM,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAI,MAAM,EAAE,CAAC;4BACX,MAAA,MAAM,CAAC,KAAK,uDAAG,wCAAwC,EAAE,GAAG,CAAC,CAAC;wBAChE,CAAC;oBACH,CAAC;4BAAS,CAAC;wBACT,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACvB,QAAQ,GAAG,IAAI,CAAC;oBAClB,CAAC;gBACH,CAAC,CAAA,CAAC,EAAE,CAAC;YACP,CAAC;YACD,MAAM,QAAQ,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;KAAA;IAED,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,QAAQ;YAAE,MAAM,QAAQ,CAAC;IAC/B,CAAC,CAAA,CAAC;IAEF,OAAO;QACL,GAAG;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,+CAA+C;YAC/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,gDAAgD;YAChD,IAAI,GAAG,GAAG,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC1B,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CACX,4DAA4D,CAC7D,CAAC;gBACF,KAAK,OAAO,EAAE,CAAC;YACjB,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QACK,OAAO;;gBACX,OAAO,MAAM,OAAO,EAAE,CAAC;YACzB,CAAC;SAAA;QACD,WAAW;KACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"inRequestCache.js","sourceRoot":"","sources":["../../src/inRequestCache.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,oGAAoG;;;;;;;;;;;AAIpG,iCAiEC;AAjED,SAAwB,cAAc,CACpC,GAAW,EACX,MAA0B,EAC1B,EAAgC;IAEhC,IAAI,KAAK,GAAkB,SAAS,CAAC;IACrC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,QAAQ,GAAyB,IAAI,CAAC;IAE1C,SAAe,OAAO;;YACpB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,QAAQ,GAAG,CAAC,GAAS,EAAE;;oBACrB,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;wBAC1B,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;wBACvD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACzB,KAAK,GAAG,MAAM,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAI,MAAM,EAAE,CAAC;4BACX,MAAA,MAAM,CAAC,KAAK,uDAAG,wCAAwC,EAAE,GAAG,CAAC,CAAC;wBAChE,CAAC;oBACH,CAAC;4BAAS,CAAC;wBACT,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACvB,QAAQ,GAAG,IAAI,CAAC;oBAClB,CAAC;gBACH,CAAC,CAAA,CAAC,EAAE,CAAC;YACP,CAAC;YACD,MAAM,QAAQ,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;KAAA;IAED,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,QAAQ;YAAE,MAAM,QAAQ,CAAC;IAC/B,CAAC,CAAA,CAAC;IAEF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,QAAQ,GAAG,IAAI,CAAC;QAChB,KAAK,GAAG,SAAS,CAAC;QAClB,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO;QACL,GAAG;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,+CAA+C;YAC/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,gDAAgD;YAChD,IAAI,GAAG,GAAG,SAAS,GAAG,GAAG,EAAE,CAAC;gBAC1B,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CACX,4DAA4D,CAC7D,CAAC;gBACF,KAAK,OAAO,EAAE,CAAC;YACjB,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QACK,OAAO;;gBACX,OAAO,MAAM,OAAO,EAAE,CAAC;YACzB,CAAC;SAAA;QACD,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -69,10 +69,18 @@ function periodicallyUpdatingCache(ttl, staleTtl, logger, fn) {
69
69
  const waitRefresh = () => __awaiter(this, void 0, void 0, function* () {
70
70
  // no-op
71
71
  });
72
+ const destroy = () => {
73
+ if (timeoutId) {
74
+ clearTimeout(timeoutId);
75
+ timeoutId = undefined;
76
+ }
77
+ refreshPromise = undefined;
78
+ };
72
79
  return {
73
80
  get,
74
81
  refresh,
75
82
  waitRefresh,
83
+ destroy,
76
84
  };
77
85
  }
78
86
  //# sourceMappingURL=periodicallyUpdatingCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"periodicallyUpdatingCache.js","sourceRoot":"","sources":["../../src/periodicallyUpdatingCache.ts"],"names":[],"mappings":";;;;;;;;;;;AAeA,4CAgEC;AA7ED;;;;;;;;;;;;IAYI;AACJ,SAAwB,yBAAyB,CAC/C,GAAW,EACX,QAAgB,EAChB,MAA0B,EAC1B,EAAgC;IAEhC,IAAI,WAA0B,CAAC;IAC/B,IAAI,UAA8B,CAAC;IACnC,IAAI,SAAqC,CAAC;IAC1C,IAAI,cAAyC,CAAC;IAE9C,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,EAAE,EAAE,CAAC;YAC5B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;YAE3C,WAAW,GAAG,QAAQ,CAAC;YAEvB,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAExB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;gBAAS,CAAC;YACT,cAAc,GAAG,SAAS,CAAC;YAC3B,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,EAAE;QACf,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAW,CAAC;YACrC,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,cAAc,CAAC;QACrB,OAAO,GAAG,EAAE,CAAC;IACf,CAAC,CAAA,CAAC;IAEF,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,QAAQ;IACV,CAAC,CAAA,CAAC;IAEF,OAAO;QACL,GAAG;QACH,OAAO;QACP,WAAW;KACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"periodicallyUpdatingCache.js","sourceRoot":"","sources":["../../src/periodicallyUpdatingCache.ts"],"names":[],"mappings":";;;;;;;;;;;AAeA,4CAyEC;AAtFD;;;;;;;;;;;;IAYI;AACJ,SAAwB,yBAAyB,CAC/C,GAAW,EACX,QAAgB,EAChB,MAA0B,EAC1B,EAAgC;IAEhC,IAAI,WAA0B,CAAC;IAC/B,IAAI,UAA8B,CAAC;IACnC,IAAI,SAAqC,CAAC;IAC1C,IAAI,cAAyC,CAAC;IAE9C,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,EAAE,EAAE,CAAC;YAC5B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,4BAA4B,CAAC,CAAC;YAE3C,WAAW,GAAG,QAAQ,CAAC;YAEvB,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAExB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;gBAAS,CAAC;YACT,cAAc,GAAG,SAAS,CAAC;YAC3B,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,EAAE;QACf,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAW,CAAC;YACrC,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,cAAc,CAAC;QACrB,OAAO,GAAG,EAAE,CAAC;IACf,CAAC,CAAA,CAAC;IAEF,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,QAAQ;IACV,CAAC,CAAA,CAAC;IAEF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,SAAS,GAAG,SAAS,CAAC;QACxB,CAAC;QACD,cAAc,GAAG,SAAS,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO;QACL,GAAG;QACH,OAAO;QACP,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AA0vB/C,QAAA,UAAU,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AA4wB/C,QAAA,UAAU,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC"}
@@ -23,5 +23,9 @@ export default class BatchBuffer<T> {
23
23
  */
24
24
  add(item: T): Promise<void>;
25
25
  flush(): Promise<void>;
26
+ /**
27
+ * Destroys the buffer, clearing any pending timer and discarding buffered items.
28
+ */
29
+ destroy(): void;
26
30
  }
27
31
  //# sourceMappingURL=batch-buffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"batch-buffer.d.ts","sourceRoot":"","sources":["../../../src/batch-buffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAU,MAAM,SAAS,CAAC;AAGrD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW,CAAC,CAAC;IAChC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAA+B;IAE5C;;;;OAIG;gBACS,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAwB1C;;;;OAIG;IACU,GAAG,CAAC,IAAI,EAAE,CAAC;IAUX,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CA2BpC"}
1
+ {"version":3,"file":"batch-buffer.d.ts","sourceRoot":"","sources":["../../../src/batch-buffer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAU,MAAM,SAAS,CAAC;AAGrD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW,CAAC,CAAC;IAChC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAA+B;IAE5C;;;;OAIG;gBACS,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAwB1C;;;;OAIG;IACU,GAAG,CAAC,IAAI,EAAE,CAAC;IAUX,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BnC;;OAEG;IACI,OAAO,IAAI,IAAI;CAOvB"}
@@ -1,4 +1,4 @@
1
- import type { FlagDefinition, FlagOverrides, FlagOverridesFn, IdType, TypedFlagKey } from "./types";
1
+ import type { BootstrappedFlags, FlagDefinition, FlagOverrides, FlagOverridesFn, IdType, TypedFlagKey } from "./types";
2
2
  import { ClientOptions, Context, ContextWithTracking, HttpClient, Logger, TrackOptions, TypedFlags } from "./types";
3
3
  /**
4
4
  * The SDK client.
@@ -166,6 +166,15 @@ export declare class ReflagClient {
166
166
  * This method is automatically called when the process exits if `batchOptions.flushOnExit` is `true` in the options (default).
167
167
  */
168
168
  flush(): Promise<void>;
169
+ /**
170
+ * Destroys the client and cleans up all resources including timers and background processes.
171
+ *
172
+ * @remarks
173
+ * After calling this method, the client should not be used anymore.
174
+ * This is particularly useful in development environments with hot reloading to prevent
175
+ * multiple background processes from running simultaneously.
176
+ */
177
+ destroy(): void;
169
178
  /**
170
179
  * Gets the flag definitions, including all config values.
171
180
  * To evaluate which flags are enabled for a given user/company, use `getFlags`.
@@ -200,6 +209,24 @@ export declare class ReflagClient {
200
209
  * Call `initialize` before calling this method to ensure the flag definitions are cached, no flags will be returned otherwise.
201
210
  **/
202
211
  getFlag<TKey extends TypedFlagKey>({ enableTracking, ...context }: ContextWithTracking, key: TKey): TypedFlags[TKey];
212
+ /**
213
+ * Gets the evaluated flags for the current context without wrapping them in getters.
214
+ * This method returns raw flag data suitable for bootstrapping client-side applications.
215
+ *
216
+ * @param options - The options for the context.
217
+ * @param options.enableTracking - Whether to enable tracking for the context.
218
+ * @param options.meta - The meta context associated with the context.
219
+ * @param options.user - The user context.
220
+ * @param options.company - The company context.
221
+ * @param options.other - The other context.
222
+ *
223
+ * @returns The evaluated raw flags and the context.
224
+ *
225
+ * @remarks
226
+ * Call `initialize` before calling this method to ensure the flag definitions are cached, no flags will be returned otherwise.
227
+ * This method returns RawFlag objects without wrapping them in getters, making them suitable for serialization.
228
+ **/
229
+ getFlagsForBootstrap({ enableTracking, ...context }: ContextWithTracking): BootstrappedFlags;
203
230
  /**
204
231
  * Gets evaluated flags with the usage of remote context.
205
232
  * This method triggers a network request every time it's called.
@@ -351,6 +378,13 @@ export declare class BoundReflagClient {
351
378
  * @returns Flags for the given user/company and whether each one is enabled or not
352
379
  */
353
380
  getFlags(): TypedFlags;
381
+ /**
382
+ * Get raw flags for the user/company/other context bound to this client without wrapping them in getters.
383
+ * This method returns raw flag data suitable for bootstrapping client-side applications.
384
+ *
385
+ * @returns Raw flags for the given user/company and whether each one is enabled or not
386
+ */
387
+ getFlagsForBootstrap(): BootstrappedFlags;
354
388
  /**
355
389
  * Get a specific flag for the user/company/other context bound to this client.
356
390
  * Using the `isEnabled` property sends a `check` event to Reflag.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/client.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,6 @@ declare const fetchClient: HttpClient;
15
15
  * @param maxDelay - Maximum delay in milliseconds.
16
16
  * @returns The result of the function call or throws an error if all retries fail.
17
17
  */
18
- export declare function withRetry<T>(fn: () => Promise<T>, onFailedTry: () => void, maxRetries: number, baseDelay: number, maxDelay: number): Promise<T>;
18
+ export declare function withRetry<T>(fn: () => Promise<T>, onFailedTry: (error: unknown) => void, maxRetries: number, baseDelay: number, maxDelay: number): Promise<T>;
19
19
  export default fetchClient;
20
20
  //# sourceMappingURL=fetch-http-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-http-client.d.ts","sourceRoot":"","sources":["../../../src/fetch-http-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC;;;;;IAKI;AACJ,QAAA,MAAM,WAAW,EAAE,UA8ClB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,WAAW,EAAE,MAAM,IAAI,EACvB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,CAAC,CA0BZ;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"fetch-http-client.d.ts","sourceRoot":"","sources":["../../../src/fetch-http-client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC;;;;;IAKI;AACJ,QAAA,MAAM,WAAW,EAAE,UAkDlB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,EACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,CAAC,CA0BZ;AAED,eAAe,WAAW,CAAC"}
@@ -3,5 +3,6 @@ export default function inRequestCache<T>(ttl: number, logger: Logger | undefine
3
3
  get(): T | undefined;
4
4
  refresh(): Promise<T | undefined>;
5
5
  waitRefresh: () => Promise<void>;
6
+ destroy: () => void;
6
7
  };
7
8
  //# sourceMappingURL=inRequestCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inRequestCache.d.ts","sourceRoot":"","sources":["../../../src/inRequestCache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EACtC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;WAkCvB,CAAC,GAAG,SAAS;eAgBH,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;;EAK1C"}
1
+ {"version":3,"file":"inRequestCache.d.ts","sourceRoot":"","sources":["../../../src/inRequestCache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EACtC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;WAwCvB,CAAC,GAAG,SAAS;eAgBH,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;;;EAM1C"}
@@ -1,4 +1,4 @@
1
1
  export { BoundReflagClient, ReflagClient } from "./client";
2
2
  export { EdgeClient, EdgeClientOptions } from "./edgeClient";
3
- export type { Attributes, BatchBufferOptions, CacheStrategy, ClientOptions, Context, ContextWithTracking, EmptyFlagRemoteConfig, Flag, FlagConfigVariant, FlagDefinition, FlagOverride, FlagOverrides, FlagOverridesFn, FlagRemoteConfig, Flags, FlagType, HttpClient, HttpClientResponse, IdType, LOG_LEVELS, Logger, LogLevel, RawFlag, RawFlagRemoteConfig, TrackingMeta, TrackOptions, TypedFlagKey, TypedFlags, } from "./types";
3
+ export type { Attributes, BatchBufferOptions, BootstrappedFlags, CacheStrategy, ClientOptions, Context, ContextWithTracking, EmptyFlagRemoteConfig, Flag, FlagConfigVariant, FlagDefinition, FlagOverride, FlagOverrides, FlagOverridesFn, FlagRemoteConfig, Flags, FlagType, HttpClient, HttpClientResponse, IdType, LOG_LEVELS, Logger, LogLevel, RawFlag, RawFlagRemoteConfig, RawFlags, TrackingMeta, TrackOptions, TypedFlagKey, TypedFlags, } from "./types";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7D,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,qBAAqB,EACrB,IAAI,EACJ,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,MAAM,EACN,UAAU,EACV,MAAM,EACN,QAAQ,EACR,OAAO,EACP,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,GACX,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7D,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,qBAAqB,EACrB,IAAI,EACJ,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,MAAM,EACN,UAAU,EACV,MAAM,EACN,QAAQ,EACR,OAAO,EACP,mBAAmB,EACnB,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,GACX,MAAM,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"periodicallyUpdatingCache.d.ts","sourceRoot":"","sources":["../../../src/periodicallyUpdatingCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;;;;;;;IAYI;AACJ,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,CAAC,EACjD,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAC/B,KAAK,CAAC,CAAC,CAAC,CA2DV"}
1
+ {"version":3,"file":"periodicallyUpdatingCache.d.ts","sourceRoot":"","sources":["../../../src/periodicallyUpdatingCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;;;;;;;IAYI;AACJ,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,CAAC,EACjD,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAC/B,KAAK,CAAC,CAAC,CAAC,CAoEV"}
@@ -13,15 +13,15 @@ export type TrackingMeta = {
13
13
  **/
14
14
  export type Attributes = Record<string, any>;
15
15
  /**
16
- * Describes a feature event. Can be "check" or "evaluate".
16
+ * Describes a flag event. Can be "check" or "check-config event".
17
17
  **/
18
18
  export type FlagEvent = {
19
19
  /**
20
20
  * The action that was performed.
21
21
  **/
22
- action: "evaluate" | "evaluate-config" | "check" | "check-config";
22
+ action: "check" | "check-config";
23
23
  /**
24
- * The feature key.
24
+ * The flag key.
25
25
  **/
26
26
  key: string;
27
27
  /**
@@ -105,6 +105,17 @@ export interface RawFlag {
105
105
  */
106
106
  missingContextFields?: string[];
107
107
  }
108
+ /**
109
+ * Describes a collection of evaluated raw flags.
110
+ */
111
+ export type RawFlags = Record<TypedFlagKey, RawFlag>;
112
+ /**
113
+ * Describes a collection of evaluated raw flags and the context for bootstrapping.
114
+ */
115
+ export type BootstrappedFlags = {
116
+ context: Context;
117
+ flags: RawFlags;
118
+ };
108
119
  export type EmptyFlagRemoteConfig = {
109
120
  key: undefined;
110
121
  payload: undefined;
@@ -325,7 +336,7 @@ export type EvaluatedFlagsAPIResponse = {
325
336
  /**
326
337
  * The feature definitions.
327
338
  */
328
- features: Record<string, RawFlag>;
339
+ features: RawFlags;
329
340
  };
330
341
  /**
331
342
  * Describes the response of a HTTP client.
@@ -428,6 +439,10 @@ export type Cache<T> = {
428
439
  * @returns A promise that resolves when the refresh is complete.
429
440
  **/
430
441
  waitRefresh: () => Promise<void> | undefined;
442
+ /**
443
+ * Cleanup and destroy the cache, stopping any background processes.
444
+ **/
445
+ destroy: () => void;
431
446
  };
432
447
  /**
433
448
  * Options for configuring the BatchBuffer.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reflag/node-sdk",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -10,14 +10,15 @@
10
10
  "dev": "vite",
11
11
  "start": "vite",
12
12
  "build": "tsc --project tsconfig.build.json",
13
- "test": "vitest -c vite.config.js",
14
- "test:ci": "vitest run -c vite.config.js --reporter=default --reporter=junit --outputFile=junit.xml",
15
- "coverage": "vitest run --coverage",
13
+ "test": "vitest run",
14
+ "test:watch": "vitest",
15
+ "test:ci": "yarn test --reporter=default --reporter=junit --outputFile=junit.xml",
16
+ "coverage": "yarn test --coverage",
16
17
  "lint": "eslint .",
17
18
  "lint:ci": "eslint --output-file eslint-report.json --format json .",
18
19
  "prettier": "prettier --check .",
19
20
  "format": "yarn lint --fix && yarn prettier --write",
20
- "preversion": "yarn lint && yarn prettier && yarn vitest run -c vite.config.js && yarn build"
21
+ "preversion": "yarn lint && yarn prettier && yarn test && yarn build"
21
22
  },
22
23
  "files": [
23
24
  "dist"
@@ -46,5 +47,5 @@
46
47
  "dependencies": {
47
48
  "@reflag/flag-evaluation": "1.0.0"
48
49
  },
49
- "gitHead": "bcd6258c6b7394b76dbf60f48dd63f0cad5cc231"
50
+ "gitHead": "445631de206a512db2793547ac451b75e3a9ee6a"
50
51
  }
package/dist/src/cache.js DELETED
@@ -1,71 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.default = cache;
13
- /**
14
- * Create a cached function that updates the value asynchronously.
15
- *
16
- * The value is updated every `ttl` milliseconds.
17
- * If the value is older than `staleTtl` milliseconds, a warning is logged.
18
- *
19
- * @typeParam T - The type of the value.
20
- * @param ttl - The time-to-live in milliseconds.
21
- * @param staleTtl - The time-to-live after which a warning is logged.
22
- * @param logger - The logger to use.
23
- * @param fn - The function to call to get the value.
24
- * @returns The cache object.
25
- **/
26
- function cache(ttl, staleTtl, logger, fn) {
27
- let cachedValue;
28
- let lastUpdate;
29
- let timeoutId;
30
- let refreshPromise;
31
- const update = () => __awaiter(this, void 0, void 0, function* () {
32
- if (timeoutId) {
33
- clearTimeout(timeoutId);
34
- }
35
- try {
36
- const newValue = yield fn();
37
- if (newValue === undefined) {
38
- return;
39
- }
40
- cachedValue = newValue;
41
- lastUpdate = Date.now();
42
- logger === null || logger === void 0 ? void 0 : logger.debug("updated cached value", cachedValue);
43
- }
44
- catch (e) {
45
- logger === null || logger === void 0 ? void 0 : logger.error("failed to update cached value", e);
46
- }
47
- finally {
48
- refreshPromise = undefined;
49
- timeoutId = setTimeout(update, ttl).unref();
50
- }
51
- });
52
- const get = () => {
53
- if (lastUpdate !== undefined) {
54
- const age = Date.now() - lastUpdate;
55
- if (age > staleTtl) {
56
- logger === null || logger === void 0 ? void 0 : logger.warn("cached value is stale", { age, cachedValue });
57
- }
58
- }
59
- return cachedValue;
60
- };
61
- const refresh = () => __awaiter(this, void 0, void 0, function* () {
62
- if (!refreshPromise) {
63
- refreshPromise = update();
64
- }
65
- yield refreshPromise;
66
- logger === null || logger === void 0 ? void 0 : logger.info("refreshed cached features");
67
- return get();
68
- });
69
- return { get, refresh };
70
- }
71
- //# sourceMappingURL=cache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/cache.ts"],"names":[],"mappings":";;;;;;;;;;;AAeA,wBAuDC;AApED;;;;;;;;;;;;IAYI;AACJ,SAAwB,KAAK,CAC3B,GAAW,EACX,QAAgB,EAChB,MAA0B,EAC1B,EAAgC;IAEhC,IAAI,WAA0B,CAAC;IAC/B,IAAI,UAA8B,CAAC;IACnC,IAAI,SAAqC,CAAC;IAC1C,IAAI,cAAyC,CAAC;IAE9C,MAAM,MAAM,GAAG,GAAS,EAAE;QACxB,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,EAAE,EAAE,CAAC;YAC5B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,WAAW,GAAG,QAAQ,CAAC;YAEvB,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAExB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;gBAAS,CAAC;YACT,cAAc,GAAG,SAAS,CAAC;YAC3B,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,EAAE;QACf,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAW,CAAC;YACrC,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACnB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,cAAc,CAAC;QACrB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC1C,OAAO,GAAG,EAAE,CAAC;IACf,CAAC,CAAA,CAAC;IAEF,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1B,CAAC"}
@@ -1,16 +0,0 @@
1
- import { Cache, Logger } from "./types";
2
- /**
3
- * Create a cached function that updates the value asynchronously.
4
- *
5
- * The value is updated every `ttl` milliseconds.
6
- * If the value is older than `staleTtl` milliseconds, a warning is logged.
7
- *
8
- * @typeParam T - The type of the value.
9
- * @param ttl - The time-to-live in milliseconds.
10
- * @param staleTtl - The time-to-live after which a warning is logged.
11
- * @param logger - The logger to use.
12
- * @param fn - The function to call to get the value.
13
- * @returns The cache object.
14
- **/
15
- export default function cache<T>(ttl: number, staleTtl: number, logger: Logger | undefined, fn: () => Promise<T | undefined>): Cache<T>;
16
- //# sourceMappingURL=cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAExC;;;;;;;;;;;;IAYI;AACJ,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,CAAC,EAC7B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAC/B,KAAK,CAAC,CAAC,CAAC,CAkDV"}