@statsig/client-core 3.15.0 → 3.15.2
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 +1 -1
- package/src/$_StatsigGlobal.js +7 -1
- package/src/OverrideAdapter.d.ts +1 -0
- package/src/SessionID.js +8 -2
- package/src/StatsigClientBase.js +2 -1
- package/src/StatsigMetadata.d.ts +1 -1
- package/src/StatsigMetadata.js +1 -1
- package/src/index.js +2 -2
package/package.json
CHANGED
package/src/$_StatsigGlobal.js
CHANGED
|
@@ -5,7 +5,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
5
5
|
exports._getInstance = exports._getStatsigGlobalFlag = exports._getStatsigGlobal = void 0;
|
|
6
6
|
const Log_1 = require("./Log");
|
|
7
7
|
const _getStatsigGlobal = () => {
|
|
8
|
-
|
|
8
|
+
// Avoid ReferenceError, which is happening with Cloudflare pages
|
|
9
|
+
try {
|
|
10
|
+
return typeof __STATSIG__ !== 'undefined' ? __STATSIG__ : statsigGlobal;
|
|
11
|
+
}
|
|
12
|
+
catch (e) {
|
|
13
|
+
return statsigGlobal;
|
|
14
|
+
}
|
|
9
15
|
};
|
|
10
16
|
exports._getStatsigGlobal = _getStatsigGlobal;
|
|
11
17
|
const _getStatsigGlobalFlag = (flag) => {
|
package/src/OverrideAdapter.d.ts
CHANGED
package/src/SessionID.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StatsigSession = exports.SessionID = void 0;
|
|
4
|
+
const __StatsigGlobal_1 = require("./$_StatsigGlobal");
|
|
4
5
|
const CacheKey_1 = require("./CacheKey");
|
|
5
6
|
const Log_1 = require("./Log");
|
|
6
7
|
const StorageProvider_1 = require("./StorageProvider");
|
|
@@ -54,23 +55,28 @@ function _overrideSessionId(override, sdkKey) {
|
|
|
54
55
|
function _bumpSession(session) {
|
|
55
56
|
const now = Date.now();
|
|
56
57
|
const data = session.data;
|
|
58
|
+
const sdkKey = session.sdkKey;
|
|
57
59
|
if (_isIdle(data) || _hasRunTooLong(data)) {
|
|
58
60
|
data.sessionID = (0, UUID_1.getUUID)();
|
|
59
61
|
data.startTime = now;
|
|
62
|
+
const client = __STATSIG__ === null || __STATSIG__ === void 0 ? void 0 : __STATSIG__.instance(sdkKey);
|
|
63
|
+
if (client) {
|
|
64
|
+
client.$emt({ name: 'session_expired' });
|
|
65
|
+
}
|
|
60
66
|
}
|
|
61
67
|
data.lastUpdate = now;
|
|
62
68
|
_persistToStorage(data, session.sdkKey);
|
|
63
69
|
clearTimeout(session.idleTimeoutID);
|
|
64
70
|
clearTimeout(session.ageTimeoutID);
|
|
65
71
|
const lifetime = now - data.startTime;
|
|
66
|
-
const sdkKey = session.sdkKey;
|
|
67
72
|
session.idleTimeoutID = _createSessionTimeout(sdkKey, MAX_SESSION_IDLE_TIME);
|
|
68
73
|
session.ageTimeoutID = _createSessionTimeout(sdkKey, MAX_SESSION_AGE - lifetime);
|
|
69
74
|
return session;
|
|
70
75
|
}
|
|
71
76
|
function _createSessionTimeout(sdkKey, duration) {
|
|
72
77
|
return setTimeout(() => {
|
|
73
|
-
|
|
78
|
+
var _a;
|
|
79
|
+
const client = (_a = (0, __StatsigGlobal_1._getStatsigGlobal)()) === null || _a === void 0 ? void 0 : _a.instance(sdkKey);
|
|
74
80
|
if (client) {
|
|
75
81
|
client.$emt({ name: 'session_expired' });
|
|
76
82
|
}
|
package/src/StatsigClientBase.js
CHANGED
|
@@ -23,7 +23,7 @@ const StorageProvider_1 = require("./StorageProvider");
|
|
|
23
23
|
const MAX_MEMO_CACHE_SIZE = 3000;
|
|
24
24
|
class StatsigClientBase {
|
|
25
25
|
constructor(sdkKey, adapter, network, options) {
|
|
26
|
-
var _a;
|
|
26
|
+
var _a, _b, _c, _d;
|
|
27
27
|
this.loadingStatus = 'Uninitialized';
|
|
28
28
|
this._initializePromise = null;
|
|
29
29
|
this._listeners = {};
|
|
@@ -48,6 +48,7 @@ class StatsigClientBase {
|
|
|
48
48
|
this.dataAdapter = adapter;
|
|
49
49
|
this.dataAdapter.attach(sdkKey, options, network);
|
|
50
50
|
this.storageProvider = StorageProvider_1.Storage;
|
|
51
|
+
(_d = (_c = (_b = this.overrideAdapter) === null || _b === void 0 ? void 0 : _b.loadFromStorage) === null || _c === void 0 ? void 0 : _c.call(_b)) === null || _d === void 0 ? void 0 : _d.catch((e) => this._errorBoundary.logError('OA::loadFromStorage', e));
|
|
51
52
|
this._primeReadyRipcord();
|
|
52
53
|
_assignGlobalInstance(sdkKey, this);
|
|
53
54
|
}
|
package/src/StatsigMetadata.d.ts
CHANGED
package/src/StatsigMetadata.js
CHANGED
|
@@ -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.15.
|
|
4
|
+
exports.SDK_VERSION = '3.15.2';
|
|
5
5
|
let metadata = {
|
|
6
6
|
sdkVersion: exports.SDK_VERSION,
|
|
7
7
|
sdkType: 'js-mono', // js-mono is overwritten by Precomp and OnDevice clients
|
package/src/index.js
CHANGED
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.Storage = exports.Log = exports.EventLogger = exports.Diagnostics = void 0;
|
|
18
18
|
/** Statsig Global should go first */
|
|
19
19
|
require("./$_StatsigGlobal");
|
|
20
|
+
const __StatsigGlobal_1 = require("./$_StatsigGlobal");
|
|
20
21
|
const Diagnostics_1 = require("./Diagnostics");
|
|
21
22
|
Object.defineProperty(exports, "Diagnostics", { enumerable: true, get: function () { return Diagnostics_1.Diagnostics; } });
|
|
22
23
|
const EventLogger_1 = require("./EventLogger");
|
|
@@ -65,5 +66,4 @@ __exportStar(require("./UUID"), exports);
|
|
|
65
66
|
__exportStar(require("./VisibilityObserving"), exports);
|
|
66
67
|
__exportStar(require("./StatsigUpdateDetails"), exports);
|
|
67
68
|
__exportStar(require("./SDKFlags"), exports);
|
|
68
|
-
|
|
69
|
-
SDK_VERSION: StatsigMetadata_1.SDK_VERSION });
|
|
69
|
+
Object.assign((0, __StatsigGlobal_1._getStatsigGlobal)(), { Log: Log_1.Log, SDK_VERSION: StatsigMetadata_1.SDK_VERSION });
|