@statsig/client-core 3.17.1 → 3.18.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@statsig/client-core",
3
- "version": "3.17.1",
3
+ "version": "3.18.0",
4
4
  "license": "ISC",
5
5
  "homepage": "https://github.com/statsig-io/js-client-monorepo",
6
6
  "repository": {
@@ -193,7 +193,7 @@ class EventLogger {
193
193
  events,
194
194
  });
195
195
  const response = shouldUseBeacon
196
- ? yield this._sendEventsViaBeacon(events)
196
+ ? this._sendEventsViaBeacon(events)
197
197
  : yield this._sendEventsViaPost(events);
198
198
  if (response.success) {
199
199
  this._emitter({
@@ -223,11 +223,9 @@ class EventLogger {
223
223
  });
224
224
  }
225
225
  _sendEventsViaBeacon(events) {
226
- return __awaiter(this, void 0, void 0, function* () {
227
- return {
228
- success: yield this._network.beacon(this._getRequestData(events)),
229
- };
230
- });
226
+ return {
227
+ success: this._network.beacon(this._getRequestData(events)),
228
+ };
231
229
  }
232
230
  _getRequestData(events) {
233
231
  return {
@@ -41,7 +41,7 @@ export declare class NetworkCore {
41
41
  setErrorBoundary(errorBoundary: ErrorBoundary): void;
42
42
  isBeaconSupported(): boolean;
43
43
  getLastUsedInitUrlAndReset(): string | null;
44
- beacon(args: BeaconRequestArgs): Promise<boolean>;
44
+ beacon(args: BeaconRequestArgs): boolean;
45
45
  post(args: RequestArgsWithData): Promise<NetworkResponse | null>;
46
46
  get(args: RequestArgs): Promise<NetworkResponse | null>;
47
47
  private _sendRequest;
@@ -72,16 +72,13 @@ class NetworkCore {
72
72
  return tempUrl;
73
73
  }
74
74
  beacon(args) {
75
- return __awaiter(this, void 0, void 0, function* () {
76
- if (!_ensureValidSdkKey(args)) {
77
- return false;
78
- }
79
- const argsInternal = this._getInternalRequestArgs('POST', args);
80
- yield this._tryToCompressBody(argsInternal);
81
- const url = yield this._getPopulatedURL(argsInternal);
82
- const nav = navigator;
83
- return nav.sendBeacon.bind(nav)(url, argsInternal.body);
84
- });
75
+ if (!_ensureValidSdkKey(args)) {
76
+ return false;
77
+ }
78
+ const argsInternal = this._getInternalRequestArgs('POST', args);
79
+ const url = this._getPopulatedURL(argsInternal);
80
+ const nav = navigator;
81
+ return nav.sendBeacon.bind(nav)(url, argsInternal.body);
85
82
  }
86
83
  post(args) {
87
84
  return __awaiter(this, void 0, void 0, function* () {
@@ -115,7 +112,7 @@ class NetworkCore {
115
112
  const timeoutHandle = setTimeout(() => {
116
113
  abortController === null || abortController === void 0 ? void 0 : abortController.abort(`Timeout of ${this._timeout}ms expired.`);
117
114
  }, this._timeout);
118
- const populatedUrl = yield this._getPopulatedURL(args);
115
+ const populatedUrl = this._getPopulatedURL(args);
119
116
  let response = null;
120
117
  const keepalive = (0, VisibilityObserving_1._isUnloading)();
121
118
  try {
@@ -209,20 +206,18 @@ class NetworkCore {
209
206
  }
210
207
  _getPopulatedURL(args) {
211
208
  var _a;
212
- return __awaiter(this, void 0, void 0, function* () {
213
- const url = (_a = args.fallbackUrl) !== null && _a !== void 0 ? _a : args.urlConfig.getUrl();
214
- if (args.urlConfig.endpoint === NetworkConfig_1.Endpoint._initialize ||
215
- args.urlConfig.endpoint === NetworkConfig_1.Endpoint._download_config_specs) {
216
- this._lastUsedInitUrl = url;
217
- }
218
- const params = Object.assign({ [NetworkConfig_1.NetworkParam.SdkKey]: args.sdkKey, [NetworkConfig_1.NetworkParam.SdkType]: SDKType_1.SDKType._get(args.sdkKey), [NetworkConfig_1.NetworkParam.SdkVersion]: StatsigMetadata_1.SDK_VERSION, [NetworkConfig_1.NetworkParam.Time]: String(Date.now()), [NetworkConfig_1.NetworkParam.SessionID]: SessionID_1.SessionID.get(args.sdkKey) }, args.params);
219
- const query = Object.keys(params)
220
- .map((key) => {
221
- return `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`;
222
- })
223
- .join('&');
224
- return `${url}${query ? `?${query}` : ''}`;
225
- });
209
+ const url = (_a = args.fallbackUrl) !== null && _a !== void 0 ? _a : args.urlConfig.getUrl();
210
+ if (args.urlConfig.endpoint === NetworkConfig_1.Endpoint._initialize ||
211
+ args.urlConfig.endpoint === NetworkConfig_1.Endpoint._download_config_specs) {
212
+ this._lastUsedInitUrl = url;
213
+ }
214
+ const params = Object.assign({ [NetworkConfig_1.NetworkParam.SdkKey]: args.sdkKey, [NetworkConfig_1.NetworkParam.SdkType]: SDKType_1.SDKType._get(args.sdkKey), [NetworkConfig_1.NetworkParam.SdkVersion]: StatsigMetadata_1.SDK_VERSION, [NetworkConfig_1.NetworkParam.Time]: String(Date.now()), [NetworkConfig_1.NetworkParam.SessionID]: SessionID_1.SessionID.get(args.sdkKey) }, args.params);
215
+ const query = Object.keys(params)
216
+ .map((key) => {
217
+ return `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`;
218
+ })
219
+ .join('&');
220
+ return `${url}${query ? `?${query}` : ''}`;
226
221
  }
227
222
  _tryEncodeBody(args) {
228
223
  var _a;
@@ -1,4 +1,4 @@
1
- export declare const SDK_VERSION = "3.17.1";
1
+ export declare const SDK_VERSION = "3.18.0";
2
2
  export type StatsigMetadata = {
3
3
  readonly [key: string]: string | undefined | null;
4
4
  readonly appVersion?: string;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StatsigMetadataProvider = exports.SDK_VERSION = void 0;
4
- exports.SDK_VERSION = '3.17.1';
4
+ exports.SDK_VERSION = '3.18.0';
5
5
  let metadata = {
6
6
  sdkVersion: exports.SDK_VERSION,
7
7
  sdkType: 'js-mono', // js-mono is overwritten by Precomp and OnDevice clients