@statsig/client-core 0.0.1-beta.2 → 0.0.1-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/src/$_StatsigGlobal.d.ts +2 -1
  4. package/src/$_StatsigGlobal.js +10 -12
  5. package/src/ClientInterfaces.d.ts +20 -13
  6. package/src/DataAdapterCore.d.ts +32 -0
  7. package/src/DataAdapterCore.js +167 -0
  8. package/src/Diagnostics.js +21 -26
  9. package/src/ErrorBoundary.d.ts +1 -0
  10. package/src/ErrorBoundary.js +39 -86
  11. package/src/EvaluationOptions.d.ts +20 -0
  12. package/src/EvaluationTypes.d.ts +39 -0
  13. package/src/EvaluationTypes.js +2 -0
  14. package/src/EventLogger.d.ts +17 -4
  15. package/src/EventLogger.js +186 -225
  16. package/src/Hashing.d.ts +1 -0
  17. package/src/Hashing.js +23 -4
  18. package/src/Log.js +15 -34
  19. package/src/Monitoring.d.ts +1 -2
  20. package/src/Monitoring.js +68 -27
  21. package/src/NetworkCore.d.ts +13 -5
  22. package/src/NetworkCore.js +96 -164
  23. package/src/OverrideAdapter.d.ts +16 -0
  24. package/src/OverrideAdapter.js +24 -0
  25. package/src/SessionID.js +3 -3
  26. package/src/StableID.js +23 -52
  27. package/src/StatsigClientBase.d.ts +20 -29
  28. package/src/StatsigClientBase.js +58 -248
  29. package/src/StatsigClientEventEmitter.d.ts +55 -28
  30. package/src/StatsigDataAdapter.d.ts +89 -0
  31. package/src/StatsigDataAdapter.js +4 -0
  32. package/src/StatsigEvent.d.ts +9 -18
  33. package/src/StatsigEvent.js +40 -31
  34. package/src/StatsigMetadata.js +5 -16
  35. package/src/StatsigOptionsCommon.d.ts +42 -12
  36. package/src/StatsigTypes.d.ts +23 -15
  37. package/src/StatsigTypes.js +23 -16
  38. package/src/StatsigUser.d.ts +1 -0
  39. package/src/StatsigUser.js +12 -20
  40. package/src/StorageProvider.d.ts +7 -2
  41. package/src/StorageProvider.js +53 -62
  42. package/src/TypedJsonParse.d.ts +8 -0
  43. package/src/TypedJsonParse.js +27 -0
  44. package/src/UUID.js +9 -5
  45. package/src/UrlOverrides.d.ts +1 -0
  46. package/src/UrlOverrides.js +15 -0
  47. package/src/UtitlityTypes.d.ts +3 -0
  48. package/src/UtitlityTypes.js +2 -0
  49. package/src/VisibilityChangeObserver.js +18 -24
  50. package/src/__tests__/MockLocalStorage.js +18 -19
  51. package/src/index.d.ts +12 -3
  52. package/src/index.js +18 -16
  53. package/src/StatsigDataProvider.d.ts +0 -9
  54. /package/src/{StatsigDataProvider.js → EvaluationOptions.js} +0 -0
@@ -1,37 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MockLocalStorage = void 0;
4
- var actualLocalStorage = window.localStorage;
4
+ const actualLocalStorage = window.localStorage;
5
5
  // todo: move to test-helpers (break circular dep)
6
- var MockLocalStorage = /** @class */ (function () {
7
- function MockLocalStorage() {
6
+ class MockLocalStorage {
7
+ constructor() {
8
8
  this.data = {};
9
9
  }
10
- MockLocalStorage.enabledMockStorage = function () {
11
- var value = new MockLocalStorage();
10
+ static enabledMockStorage() {
11
+ const value = new MockLocalStorage();
12
12
  Object.defineProperty(window, 'localStorage', {
13
- value: value,
13
+ value,
14
14
  });
15
15
  return value;
16
- };
17
- MockLocalStorage.disableMockStorage = function () {
16
+ }
17
+ static disableMockStorage() {
18
18
  Object.defineProperty(window, 'localStorage', {
19
19
  value: actualLocalStorage,
20
20
  });
21
- };
21
+ }
22
22
  // LocalStorage Functions
23
- MockLocalStorage.prototype.clear = function () {
23
+ clear() {
24
24
  this.data = {};
25
- };
26
- MockLocalStorage.prototype.getItem = function (key) {
25
+ }
26
+ getItem(key) {
27
27
  return this.data[key] ? this.data[key] : null;
28
- };
29
- MockLocalStorage.prototype.setItem = function (key, value) {
28
+ }
29
+ setItem(key, value) {
30
30
  this.data[key] = String(value);
31
- };
32
- MockLocalStorage.prototype.removeItem = function (key) {
31
+ }
32
+ removeItem(key) {
33
33
  delete this.data[key];
34
- };
35
- return MockLocalStorage;
36
- }());
34
+ }
35
+ }
37
36
  exports.MockLocalStorage = MockLocalStorage;
package/src/index.d.ts CHANGED
@@ -1,23 +1,32 @@
1
1
  /** Statsig Global should go first */
2
2
  import './$_StatsigGlobal';
3
3
  import { EventLogger } from './EventLogger';
4
+ import { Log } from './Log';
5
+ import { Storage } from './StorageProvider';
4
6
  export * from './$_StatsigGlobal';
5
7
  export * from './ClientInterfaces';
8
+ export * from './DataAdapterCore';
6
9
  export * from './ErrorBoundary';
10
+ export * from './EvaluationOptions';
11
+ export * from './EvaluationTypes';
7
12
  export * from './Hashing';
8
- export * from './StorageProvider';
9
13
  export * from './Log';
10
14
  export * from './Monitoring';
11
15
  export * from './NetworkCore';
16
+ export * from './OverrideAdapter';
12
17
  export * from './StableID';
13
18
  export * from './StatsigClientBase';
14
19
  export * from './StatsigClientEventEmitter';
15
- export * from './StatsigDataProvider';
20
+ export * from './StatsigDataAdapter';
16
21
  export * from './StatsigEvent';
17
22
  export * from './StatsigMetadata';
18
23
  export * from './StatsigOptionsCommon';
19
24
  export * from './StatsigTypes';
20
25
  export * from './StatsigUser';
26
+ export * from './StorageProvider';
27
+ export * from './TypedJsonParse';
28
+ export * from './UrlOverrides';
29
+ export * from './UtitlityTypes';
21
30
  export * from './UUID';
22
31
  export * from './VisibilityChangeObserver';
23
- export { EventLogger };
32
+ export { EventLogger, Storage, Log };
package/src/index.js CHANGED
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
3
  if (k2 === undefined) k2 = k;
15
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -25,28 +14,41 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
25
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
26
15
  };
27
16
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.EventLogger = void 0;
17
+ exports.Log = exports.Storage = exports.EventLogger = void 0;
29
18
  /** Statsig Global should go first */
30
19
  require("./$_StatsigGlobal");
31
- var EventLogger_1 = require("./EventLogger");
20
+ const EventLogger_1 = require("./EventLogger");
32
21
  Object.defineProperty(exports, "EventLogger", { enumerable: true, get: function () { return EventLogger_1.EventLogger; } });
22
+ const Log_1 = require("./Log");
23
+ Object.defineProperty(exports, "Log", { enumerable: true, get: function () { return Log_1.Log; } });
24
+ const StorageProvider_1 = require("./StorageProvider");
25
+ Object.defineProperty(exports, "Storage", { enumerable: true, get: function () { return StorageProvider_1.Storage; } });
33
26
  __exportStar(require("./$_StatsigGlobal"), exports);
34
27
  __exportStar(require("./ClientInterfaces"), exports);
28
+ __exportStar(require("./DataAdapterCore"), exports);
35
29
  __exportStar(require("./ErrorBoundary"), exports);
30
+ __exportStar(require("./EvaluationOptions"), exports);
31
+ __exportStar(require("./EvaluationTypes"), exports);
36
32
  __exportStar(require("./Hashing"), exports);
37
- __exportStar(require("./StorageProvider"), exports);
38
33
  __exportStar(require("./Log"), exports);
39
34
  __exportStar(require("./Monitoring"), exports);
40
35
  __exportStar(require("./NetworkCore"), exports);
36
+ __exportStar(require("./OverrideAdapter"), exports);
41
37
  __exportStar(require("./StableID"), exports);
42
38
  __exportStar(require("./StatsigClientBase"), exports);
43
39
  __exportStar(require("./StatsigClientEventEmitter"), exports);
44
- __exportStar(require("./StatsigDataProvider"), exports);
40
+ __exportStar(require("./StatsigDataAdapter"), exports);
45
41
  __exportStar(require("./StatsigEvent"), exports);
46
42
  __exportStar(require("./StatsigMetadata"), exports);
47
43
  __exportStar(require("./StatsigOptionsCommon"), exports);
48
44
  __exportStar(require("./StatsigTypes"), exports);
49
45
  __exportStar(require("./StatsigUser"), exports);
46
+ __exportStar(require("./StorageProvider"), exports);
47
+ __exportStar(require("./TypedJsonParse"), exports);
48
+ __exportStar(require("./UrlOverrides"), exports);
49
+ __exportStar(require("./UtitlityTypes"), exports);
50
50
  __exportStar(require("./UUID"), exports);
51
51
  __exportStar(require("./VisibilityChangeObserver"), exports);
52
- __STATSIG__ = __assign(__assign({}, (__STATSIG__ !== null && __STATSIG__ !== void 0 ? __STATSIG__ : {})), { EventLogger: EventLogger_1.EventLogger });
52
+ __STATSIG__ = Object.assign(Object.assign({}, (__STATSIG__ !== null && __STATSIG__ !== void 0 ? __STATSIG__ : {})), { EventLogger: EventLogger_1.EventLogger,
53
+ Log: Log_1.Log,
54
+ Storage: StorageProvider_1.Storage });
@@ -1,9 +0,0 @@
1
- import { StatsigUser } from './StatsigUser';
2
- export type DataSource = 'Uninitialized' | 'Loading' | 'NoValues' | 'Cache' | 'Network' | 'Bootstrap' | 'Prefetch';
3
- export type StatsigDataProvider = {
4
- readonly getData?: (sdkKey: string, user?: StatsigUser) => string | null;
5
- readonly getDataAsync?: (sdkKey: string, user?: StatsigUser) => Promise<string | null>;
6
- readonly getDataPostInit?: (sdkKey: string, user?: StatsigUser) => Promise<string | null>;
7
- readonly setDataPostInit?: (sdkKey: string, data: string, user?: StatsigUser) => Promise<void>;
8
- readonly source: DataSource;
9
- };