@launchdarkly/js-client-sdk-common 1.2.0 → 1.3.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.
Files changed (87) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/LDClientImpl.d.ts +40 -32
  3. package/dist/LDClientImpl.d.ts.map +1 -1
  4. package/dist/LDClientImpl.js +179 -127
  5. package/dist/LDClientImpl.js.map +1 -1
  6. package/dist/api/ConnectionMode.d.ts +3 -1
  7. package/dist/api/ConnectionMode.d.ts.map +1 -1
  8. package/dist/api/LDClient.d.ts +1 -1
  9. package/dist/api/LDClient.d.ts.map +1 -1
  10. package/dist/api/LDOptions.d.ts +13 -0
  11. package/dist/api/LDOptions.d.ts.map +1 -1
  12. package/dist/configuration/Configuration.d.ts +2 -1
  13. package/dist/configuration/Configuration.d.ts.map +1 -1
  14. package/dist/configuration/Configuration.js +3 -1
  15. package/dist/configuration/Configuration.js.map +1 -1
  16. package/dist/configuration/validators.d.ts.map +1 -1
  17. package/dist/configuration/validators.js +4 -2
  18. package/dist/configuration/validators.js.map +1 -1
  19. package/dist/context/addAutoEnv.d.ts.map +1 -0
  20. package/dist/{utils → context}/addAutoEnv.js +4 -2
  21. package/dist/context/addAutoEnv.js.map +1 -0
  22. package/dist/{utils → context}/ensureKey.d.ts +1 -2
  23. package/dist/context/ensureKey.d.ts.map +1 -0
  24. package/dist/{utils → context}/ensureKey.js +6 -3
  25. package/dist/context/ensureKey.js.map +1 -0
  26. package/dist/flag-manager/ContextIndex.d.ts +39 -0
  27. package/dist/flag-manager/ContextIndex.d.ts.map +1 -0
  28. package/dist/flag-manager/ContextIndex.js +64 -0
  29. package/dist/flag-manager/ContextIndex.js.map +1 -0
  30. package/dist/flag-manager/FlagManager.d.ts +58 -0
  31. package/dist/flag-manager/FlagManager.d.ts.map +1 -0
  32. package/dist/flag-manager/FlagManager.js +74 -0
  33. package/dist/flag-manager/FlagManager.js.map +1 -0
  34. package/dist/flag-manager/FlagPersistence.d.ts +42 -0
  35. package/dist/flag-manager/FlagPersistence.d.ts.map +1 -0
  36. package/dist/flag-manager/FlagPersistence.js +120 -0
  37. package/dist/flag-manager/FlagPersistence.js.map +1 -0
  38. package/dist/flag-manager/FlagStore.d.ts +29 -0
  39. package/dist/flag-manager/FlagStore.d.ts.map +1 -0
  40. package/dist/flag-manager/FlagStore.js +28 -0
  41. package/dist/flag-manager/FlagStore.js.map +1 -0
  42. package/dist/flag-manager/FlagUpdater.d.ts +39 -0
  43. package/dist/flag-manager/FlagUpdater.d.ts.map +1 -0
  44. package/dist/flag-manager/FlagUpdater.js +69 -0
  45. package/dist/flag-manager/FlagUpdater.js.map +1 -0
  46. package/dist/flag-manager/ItemDescriptor.d.ts +10 -0
  47. package/dist/flag-manager/ItemDescriptor.d.ts.map +1 -0
  48. package/dist/flag-manager/ItemDescriptor.js +3 -0
  49. package/dist/flag-manager/ItemDescriptor.js.map +1 -0
  50. package/dist/flag-manager/calculateChangedKeys.d.ts +6 -0
  51. package/dist/flag-manager/calculateChangedKeys.d.ts.map +1 -0
  52. package/dist/flag-manager/calculateChangedKeys.js +22 -0
  53. package/dist/flag-manager/calculateChangedKeys.js.map +1 -0
  54. package/dist/polling/PollingProcessor.d.ts +3 -0
  55. package/dist/polling/PollingProcessor.d.ts.map +1 -0
  56. package/dist/polling/PollingProcessor.js +79 -0
  57. package/dist/polling/PollingProcessor.js.map +1 -0
  58. package/dist/polling/Requestor.d.ts +6 -0
  59. package/dist/polling/Requestor.d.ts.map +1 -0
  60. package/dist/polling/Requestor.js +50 -0
  61. package/dist/polling/Requestor.js.map +1 -0
  62. package/dist/storage/getOrGenerateKey.d.ts +11 -0
  63. package/dist/storage/getOrGenerateKey.d.ts.map +1 -0
  64. package/dist/storage/getOrGenerateKey.js +21 -0
  65. package/dist/storage/getOrGenerateKey.js.map +1 -0
  66. package/dist/storage/namespaceUtils.d.ts +20 -0
  67. package/dist/storage/namespaceUtils.d.ts.map +1 -0
  68. package/dist/storage/namespaceUtils.js +61 -0
  69. package/dist/storage/namespaceUtils.js.map +1 -0
  70. package/package.json +2 -2
  71. package/dist/utils/addAutoEnv.d.ts.map +0 -1
  72. package/dist/utils/addAutoEnv.js.map +0 -1
  73. package/dist/utils/calculateFlagChanges.d.ts +0 -3
  74. package/dist/utils/calculateFlagChanges.d.ts.map +0 -1
  75. package/dist/utils/calculateFlagChanges.js +0 -23
  76. package/dist/utils/calculateFlagChanges.js.map +0 -1
  77. package/dist/utils/ensureKey.d.ts.map +0 -1
  78. package/dist/utils/ensureKey.js.map +0 -1
  79. package/dist/utils/getOrGenerateKey.d.ts +0 -5
  80. package/dist/utils/getOrGenerateKey.d.ts.map +0 -1
  81. package/dist/utils/getOrGenerateKey.js +0 -29
  82. package/dist/utils/getOrGenerateKey.js.map +0 -1
  83. package/dist/utils/index.d.ts +0 -5
  84. package/dist/utils/index.d.ts.map +0 -1
  85. package/dist/utils/index.js +0 -10
  86. package/dist/utils/index.js.map +0 -1
  87. /package/dist/{utils → context}/addAutoEnv.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"LDClientImpl.js","sourceRoot":"","sources":["../src/LDClientImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LDClientImpl.js","sourceRoot":"","sources":["../src/LDClientImpl.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,9 @@
8
8
  * analytic and diagnostic events.
9
9
  *
10
10
  * streaming - The SDK will use a streaming connection to receive updates from LaunchDarkly.
11
+ *
12
+ * polling - The SDK will make polling requests to receive updates from LaunchDarkly.
11
13
  */
12
- type ConnectionMode = 'offline' | 'streaming';
14
+ type ConnectionMode = 'offline' | 'streaming' | 'polling';
13
15
  export default ConnectionMode;
14
16
  //# sourceMappingURL=ConnectionMode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionMode.d.ts","sourceRoot":"","sources":["../../src/api/ConnectionMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,KAAK,cAAc,GAAG,SAAS,GAAG,WAAW,CAAC;AAE9C,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"ConnectionMode.d.ts","sourceRoot":"","sources":["../../src/api/ConnectionMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,KAAK,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1D,eAAe,cAAc,CAAC"}
@@ -151,7 +151,7 @@ export interface LDClient {
151
151
  *
152
152
  * @returns The configured {@link LDLogger}.
153
153
  */
154
- logger: LDLogger;
154
+ readonly logger: LDLogger;
155
155
  /**
156
156
  * Determines the numeric variation of a feature flag.
157
157
  *
@@ -1 +1 @@
1
- {"version":3,"file":"LDClient.d.ts","sourceRoot":"","sources":["../../src/api/LDClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LDClient.d.ts","sourceRoot":"","sources":["../../src/api/LDClient.ts"],"names":[],"mappings":"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"}
@@ -124,6 +124,13 @@ export interface LDOptions {
124
124
  * @defaultValue A {@link BasicLogger} which outputs to the console at `info` level.
125
125
  */
126
126
  logger?: LDLogger;
127
+ /**
128
+ * The maximum number of locally cached contexts. The cache is used to decrease initialization
129
+ * latency and to provide fallback when the SDK cannot reach LaunchDarkly services.
130
+ *
131
+ * @defaultValue 5
132
+ */
133
+ maxCachedContexts?: number;
127
134
  /**
128
135
  * Specifies a list of attribute names (either built-in or custom) which should be marked as
129
136
  * private, and not sent to LaunchDarkly in analytics events. You can also specify this on a
@@ -164,6 +171,12 @@ export interface LDOptions {
164
171
  * @defaultValue https://clientstream.launchdarkly.com.
165
172
  */
166
173
  streamUri?: string;
174
+ /**
175
+ * The time between polling requests, in seconds. Ignored in streaming mode.
176
+ *
177
+ * The minimum polling interval is 30 seconds.
178
+ */
179
+ pollInterval?: number;
167
180
  /**
168
181
  * Whether LaunchDarkly should provide additional information about how flag values were
169
182
  * calculated.
@@ -1 +1 @@
1
- {"version":3,"file":"LDOptions.d.ts","sourceRoot":"","sources":["../../src/api/LDOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,MAAM,WAAW,SAAS;IACxB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,eAAe,CAAC,EAAE;QAChB;;;;;;;WAOG;QACH,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ;;;;;;;WAOG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;;;;WAKG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;;;;WAKG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;;OAOG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB;;;;;;;;;;;;;;;;OAgBG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAElC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;OAQG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"LDOptions.d.ts","sourceRoot":"","sources":["../../src/api/LDOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,MAAM,WAAW,SAAS;IACxB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,eAAe,CAAC,EAAE;QAChB;;;;;;;WAOG;QACH,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ;;;;;;;WAOG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;;;;WAKG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;;;;WAKG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;;OAOG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;;;;;;;;;;;OAgBG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAElC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;OAQG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -8,6 +8,7 @@ export default class Configuration {
8
8
  readonly baseUri: string;
9
9
  readonly eventsUri: string;
10
10
  readonly streamUri: string;
11
+ readonly maxCachedContexts = 5;
11
12
  readonly capacity = 100;
12
13
  readonly diagnosticRecordingInterval = 900;
13
14
  readonly flushInterval = 30;
@@ -22,7 +23,6 @@ export default class Configuration {
22
23
  readonly inspectors: LDInspection[];
23
24
  readonly privateAttributes: string[];
24
25
  readonly initialConnectionMode: ConnectionMode;
25
- connectionMode: ConnectionMode;
26
26
  readonly tags: ApplicationTags;
27
27
  readonly applicationInfo?: {
28
28
  id?: string;
@@ -37,6 +37,7 @@ export default class Configuration {
37
37
  readonly wrapperName?: string;
38
38
  readonly wrapperVersion?: string;
39
39
  readonly serviceEndpoints: ServiceEndpoints;
40
+ readonly pollInterval: number;
40
41
  [index: string]: any;
41
42
  constructor(pristineOptions?: LDOptions, internalOptions?: internal.LDInternalOptions);
42
43
  validateTypesAndNames(pristineOptions: LDOptions): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"Configuration.d.ts","sourceRoot":"","sources":["../../src/configuration/Configuration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,QAAQ,EACR,SAAS,EAGT,gBAAgB,EAEjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,OAAc,eAAe,SAAwC;IACrE,OAAc,cAAc,SAA2C;IAEvE,SAAgB,MAAM,uGAAsB;IAE5C,SAAgB,OAAO,SAAiC;IACxD,SAAgB,SAAS,SAAmC;IAC5D,SAAgB,SAAS,SAAgC;IAEzD,SAAgB,QAAQ,OAAO;IAC/B,SAAgB,2BAA2B,OAAO;IAClD,SAAgB,aAAa,MAAM;IACnC,SAAgB,2BAA2B,KAAK;IAEhD,SAAgB,oBAAoB,SAAS;IAC7C,SAAgB,KAAK,SAAS;IAC9B,SAAgB,gBAAgB,SAAS;IACzC,SAAgB,UAAU,QAAQ;IAClC,SAAgB,aAAa,QAAQ;IAErC,SAAgB,SAAS,SAAS;IAClC,SAAgB,WAAW,SAAS;IAEpC,SAAgB,UAAU,EAAE,YAAY,EAAE,CAAM;IAChD,SAAgB,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAEjD,SAAgB,qBAAqB,EAAE,cAAc,CAAe;IAC7D,cAAc,EAAE,cAAc,CAAC;IAEtC,SAAgB,IAAI,EAAE,eAAe,CAAC;IACtC,SAAgB,eAAe,CAAC,EAAE;QAChC,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAgB,SAAS,CAAC,EAAE,SAAS,CAAC;IAGtC,SAAgB,sBAAsB,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/F,SAAgB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjC,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,SAAgB,gBAAgB,EAAE,gBAAgB,CAAC;IAGnD,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;gBAET,eAAe,GAAE,SAAc,EAAE,eAAe,GAAE,QAAQ,CAAC,iBAAsB;IAgB7F,qBAAqB,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,EAAE;CAqC5D"}
1
+ {"version":3,"file":"Configuration.d.ts","sourceRoot":"","sources":["../../src/configuration/Configuration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,QAAQ,EACR,SAAS,EAGT,gBAAgB,EAEjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKnD,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,OAAc,eAAe,SAAwC;IACrE,OAAc,cAAc,SAA2C;IAEvE,SAAgB,MAAM,uGAAsB;IAE5C,SAAgB,OAAO,SAAiC;IACxD,SAAgB,SAAS,SAAmC;IAC5D,SAAgB,SAAS,SAAgC;IAEzD,SAAgB,iBAAiB,KAAK;IAEtC,SAAgB,QAAQ,OAAO;IAC/B,SAAgB,2BAA2B,OAAO;IAClD,SAAgB,aAAa,MAAM;IACnC,SAAgB,2BAA2B,KAAK;IAEhD,SAAgB,oBAAoB,SAAS;IAC7C,SAAgB,KAAK,SAAS;IAC9B,SAAgB,gBAAgB,SAAS;IACzC,SAAgB,UAAU,QAAQ;IAClC,SAAgB,aAAa,QAAQ;IAErC,SAAgB,SAAS,SAAS;IAClC,SAAgB,WAAW,SAAS;IAEpC,SAAgB,UAAU,EAAE,YAAY,EAAE,CAAM;IAChD,SAAgB,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAEjD,SAAgB,qBAAqB,EAAE,cAAc,CAAe;IAEpE,SAAgB,IAAI,EAAE,eAAe,CAAC;IACtC,SAAgB,eAAe,CAAC,EAAE;QAChC,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAgB,SAAS,CAAC,EAAE,SAAS,CAAC;IAGtC,SAAgB,sBAAsB,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/F,SAAgB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjC,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,SAAgB,gBAAgB,EAAE,gBAAgB,CAAC;IAEnD,SAAgB,YAAY,EAAE,MAAM,CAA4B;IAGhE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC;gBAET,eAAe,GAAE,SAAc,EAAE,eAAe,GAAE,QAAQ,CAAC,iBAAsB;IAe7F,qBAAqB,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,EAAE;CAqC5D"}
@@ -2,12 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const js_sdk_common_1 = require("@launchdarkly/js-sdk-common");
4
4
  const validators_1 = require("./validators");
5
+ const DEFAULT_POLLING_INTERVAL = 60 * 5;
5
6
  class Configuration {
6
7
  constructor(pristineOptions = {}, internalOptions = {}) {
7
8
  this.logger = (0, js_sdk_common_1.createSafeLogger)();
8
9
  this.baseUri = Configuration.DEFAULT_POLLING;
9
10
  this.eventsUri = js_sdk_common_1.ServiceEndpoints.DEFAULT_EVENTS;
10
11
  this.streamUri = Configuration.DEFAULT_STREAM;
12
+ this.maxCachedContexts = 5;
11
13
  this.capacity = 100;
12
14
  this.diagnosticRecordingInterval = 900;
13
15
  this.flushInterval = 30;
@@ -22,11 +24,11 @@ class Configuration {
22
24
  this.inspectors = [];
23
25
  this.privateAttributes = [];
24
26
  this.initialConnectionMode = 'streaming';
27
+ this.pollInterval = DEFAULT_POLLING_INTERVAL;
25
28
  const errors = this.validateTypesAndNames(pristineOptions);
26
29
  errors.forEach((e) => this.logger.warn(e));
27
30
  this.serviceEndpoints = new js_sdk_common_1.ServiceEndpoints(this.streamUri, this.baseUri, this.eventsUri, internalOptions.analyticsEventPath, internalOptions.diagnosticEventPath, internalOptions.includeAuthorizationHeader);
28
31
  this.tags = new js_sdk_common_1.ApplicationTags({ application: this.applicationInfo, logger: this.logger });
29
- this.connectionMode = this.initialConnectionMode;
30
32
  }
31
33
  validateTypesAndNames(pristineOptions) {
32
34
  const errors = [];
@@ -1 +1 @@
1
- {"version":3,"file":"Configuration.js","sourceRoot":"","sources":["../../src/configuration/Configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Configuration.js","sourceRoot":"","sources":["../../src/configuration/Configuration.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/configuration/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAElF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAuBxC,QAAA,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,aAAa,CAmCtD,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/configuration/validators.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,aAAa,EAAkB,MAAM,6BAA6B,CAAC;AAElF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAuBxC,QAAA,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,SAAS,EAAE,aAAa,CAsCtD,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -12,15 +12,16 @@ class BootStrapValidator {
12
12
  }
13
13
  class ConnectionModeValidator {
14
14
  is(u) {
15
- return u === 'offline' || u === 'streaming';
15
+ return u === 'offline' || u === 'streaming' || u === 'polling';
16
16
  }
17
17
  getType() {
18
- return `'offline' | streaming`;
18
+ return `offline | streaming | polling`;
19
19
  }
20
20
  }
21
21
  const validators = {
22
22
  initialConnectionMode: new ConnectionModeValidator(),
23
23
  logger: js_sdk_common_1.TypeValidators.Object,
24
+ maxCachedContexts: js_sdk_common_1.TypeValidators.numberWithMin(0),
24
25
  baseUri: js_sdk_common_1.TypeValidators.String,
25
26
  streamUri: js_sdk_common_1.TypeValidators.String,
26
27
  eventsUri: js_sdk_common_1.TypeValidators.String,
@@ -33,6 +34,7 @@ const validators = {
33
34
  diagnosticOptOut: js_sdk_common_1.TypeValidators.Boolean,
34
35
  withReasons: js_sdk_common_1.TypeValidators.Boolean,
35
36
  sendEvents: js_sdk_common_1.TypeValidators.Boolean,
37
+ pollInterval: js_sdk_common_1.TypeValidators.numberWithMin(30),
36
38
  // TODO: inspectors
37
39
  // @ts-ignore
38
40
  inspectors: js_sdk_common_1.TypeValidators.createTypeArray('LDInspection[]', {
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/configuration/validators.ts"],"names":[],"mappings":";;AAAA,gDAAgD;AAChD,+DAAkF;AAKlF,MAAM,kBAAkB;IACtB,EAAE,CAAC,CAAU;QACX,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI,CAAC;IACzE,CAAC;IAED,OAAO;QACL,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAED,MAAM,uBAAuB;IAC3B,EAAE,CAAC,CAAU;QACX,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,WAAW,CAAC;IAC9C,CAAC;IAED,OAAO;QACL,OAAO,uBAAuB,CAAC;IACjC,CAAC;CACF;AAED,MAAM,UAAU,GAA2C;IACzD,qBAAqB,EAAE,IAAI,uBAAuB,EAAE;IACpD,MAAM,EAAE,8BAAc,CAAC,MAAM;IAE7B,OAAO,EAAE,8BAAc,CAAC,MAAM;IAC9B,SAAS,EAAE,8BAAc,CAAC,MAAM;IAChC,SAAS,EAAE,8BAAc,CAAC,MAAM;IAEhC,QAAQ,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IACzC,2BAA2B,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAC5D,aAAa,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9C,2BAA2B,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAE5D,oBAAoB,EAAE,8BAAc,CAAC,OAAO;IAC5C,KAAK,EAAE,8BAAc,CAAC,OAAO;IAC7B,gBAAgB,EAAE,8BAAc,CAAC,OAAO;IACxC,WAAW,EAAE,8BAAc,CAAC,OAAO;IACnC,UAAU,EAAE,8BAAc,CAAC,OAAO;IAElC,mBAAmB;IACnB,aAAa;IACb,UAAU,EAAE,8BAAc,CAAC,eAAe,CAAe,gBAAgB,EAAE;QACzE,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,oBAAI;QACZ,IAAI,EAAE,EAAE;KACT,CAAC;IACF,iBAAiB,EAAE,8BAAc,CAAC,WAAW;IAE7C,eAAe,EAAE,8BAAc,CAAC,MAAM;IACtC,kBAAkB;IAClB,SAAS,EAAE,IAAI,kBAAkB,EAAE;IACnC,WAAW,EAAE,8BAAc,CAAC,MAAM;IAClC,cAAc,EAAE,8BAAc,CAAC,MAAM;IACrC,aAAa;IACb,IAAI,EAAE,8BAAc,CAAC,MAAM;CAC5B,CAAC;AAEF,kBAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/configuration/validators.ts"],"names":[],"mappings":";;AAAA,gDAAgD;AAChD,+DAAkF;AAKlF,MAAM,kBAAkB;IACtB,EAAE,CAAC,CAAU;QACX,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI,CAAC;IACzE,CAAC;IAED,OAAO;QACL,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAED,MAAM,uBAAuB;IAC3B,EAAE,CAAC,CAAU;QACX,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,SAAS,CAAC;IACjE,CAAC;IAED,OAAO;QACL,OAAO,+BAA+B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,UAAU,GAA2C;IACzD,qBAAqB,EAAE,IAAI,uBAAuB,EAAE;IACpD,MAAM,EAAE,8BAAc,CAAC,MAAM;IAC7B,iBAAiB,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAElD,OAAO,EAAE,8BAAc,CAAC,MAAM;IAC9B,SAAS,EAAE,8BAAc,CAAC,MAAM;IAChC,SAAS,EAAE,8BAAc,CAAC,MAAM;IAEhC,QAAQ,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IACzC,2BAA2B,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAC5D,aAAa,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9C,2BAA2B,EAAE,8BAAc,CAAC,aAAa,CAAC,CAAC,CAAC;IAE5D,oBAAoB,EAAE,8BAAc,CAAC,OAAO;IAC5C,KAAK,EAAE,8BAAc,CAAC,OAAO;IAC7B,gBAAgB,EAAE,8BAAc,CAAC,OAAO;IACxC,WAAW,EAAE,8BAAc,CAAC,OAAO;IACnC,UAAU,EAAE,8BAAc,CAAC,OAAO;IAElC,YAAY,EAAE,8BAAc,CAAC,aAAa,CAAC,EAAE,CAAC;IAE9C,mBAAmB;IACnB,aAAa;IACb,UAAU,EAAE,8BAAc,CAAC,eAAe,CAAe,gBAAgB,EAAE;QACzE,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,oBAAI;QACZ,IAAI,EAAE,EAAE;KACT,CAAC;IACF,iBAAiB,EAAE,8BAAc,CAAC,WAAW;IAE7C,eAAe,EAAE,8BAAc,CAAC,MAAM;IACtC,kBAAkB;IAClB,SAAS,EAAE,IAAI,kBAAkB,EAAE;IACnC,WAAW,EAAE,8BAAc,CAAC,MAAM;IAClC,cAAc,EAAE,8BAAc,CAAC,MAAM;IACrC,aAAa;IACb,IAAI,EAAE,8BAAc,CAAC,MAAM;CAC5B,CAAC;AAEF,kBAAe,UAAU,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addAutoEnv.d.ts","sourceRoot":"","sources":["../../src/context/addAutoEnv.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,aAAa,EACb,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,EACN,QAAQ,EACT,MAAM,6BAA6B,CAAC;AAErC,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAO7C,eAAO,MAAM,OAAO,MAAO,mBAAmB;;;;;;;;;CAO7C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,qBACX,QAAQ,uBACL,aAAa,KACjC,aAAa,GAAG,SA4BlB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,aAAoB,QAAQ,kCA2BrD,CAAC;AAEF,eAAO,MAAM,UAAU,YAAmB,SAAS,YAAY,QAAQ,UAAU,aAAa,+DA2C7F,CAAC"}
@@ -14,7 +14,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.addAutoEnv = exports.addDeviceInfo = exports.addApplicationInfo = exports.toMulti = void 0;
15
15
  /* eslint-disable @typescript-eslint/naming-convention */
16
16
  const js_sdk_common_1 = require("@launchdarkly/js-sdk-common");
17
- const getOrGenerateKey_1 = require("./getOrGenerateKey");
17
+ const getOrGenerateKey_1 = require("../storage/getOrGenerateKey");
18
+ const namespaceUtils_1 = require("../storage/namespaceUtils");
18
19
  const { isLegacyUser, isSingleKind, isMultiKind } = js_sdk_common_1.internal;
19
20
  const defaultAutoEnvSchemaVersion = '1.0';
20
21
  const toMulti = (c) => {
@@ -72,7 +73,8 @@ const addDeviceInfo = async (platform) => {
72
73
  }
73
74
  // Check if device has any meaningful data before we return it.
74
75
  if (Object.keys(device).filter((k) => k !== 'key' && k !== 'envAttributesVersion').length) {
75
- device.key = await (0, getOrGenerateKey_1.getOrGenerateKey)('context', 'ld_device', platform);
76
+ const ldDeviceNamespace = (0, namespaceUtils_1.namespaceForGeneratedContextKey)('ld_device');
77
+ device.key = await (0, getOrGenerateKey_1.getOrGenerateKey)(ldDeviceNamespace, platform);
76
78
  device.envAttributesVersion = device.envAttributesVersion || defaultAutoEnvSchemaVersion;
77
79
  return device;
78
80
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addAutoEnv.js","sourceRoot":"","sources":["../../src/context/addAutoEnv.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,5 @@ import { LDContext, Platform } from '@launchdarkly/js-sdk-common';
6
6
  * @param context
7
7
  * @param platform
8
8
  */
9
- declare const ensureKey: (context: LDContext, platform: Platform) => Promise<any>;
10
- export default ensureKey;
9
+ export declare const ensureKey: (context: LDContext, platform: Platform) => Promise<any>;
11
10
  //# sourceMappingURL=ensureKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureKey.d.ts","sourceRoot":"","sources":["../../src/context/ensureKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EAKT,QAAQ,EACT,MAAM,6BAA6B,CAAC;AAiDrC;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,YAAmB,SAAS,YAAY,QAAQ,iBAgBrE,CAAC"}
@@ -11,8 +11,10 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  return t;
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.ensureKey = void 0;
14
15
  const js_sdk_common_1 = require("@launchdarkly/js-sdk-common");
15
- const getOrGenerateKey_1 = require("./getOrGenerateKey");
16
+ const getOrGenerateKey_1 = require("../storage/getOrGenerateKey");
17
+ const namespaceUtils_1 = require("../storage/namespaceUtils");
16
18
  const { isLegacyUser, isMultiKind, isSingleKind } = js_sdk_common_1.internal;
17
19
  /**
18
20
  * This is the root ensureKey function. All other ensureKey functions reduce to this.
@@ -30,9 +32,10 @@ const { isLegacyUser, isMultiKind, isSingleKind } = js_sdk_common_1.internal;
30
32
  const ensureKeyCommon = async (kind, c, platform) => {
31
33
  const { anonymous, key } = c;
32
34
  if (anonymous && !key) {
35
+ const storageKey = (0, namespaceUtils_1.namespaceForAnonymousGeneratedContextKey)(kind);
33
36
  // This mutates a cloned copy of the original context from ensureyKey so this is safe.
34
37
  // eslint-disable-next-line no-param-reassign
35
- c.key = await (0, getOrGenerateKey_1.getOrGenerateKey)('anonymous', kind, platform);
38
+ c.key = await (0, getOrGenerateKey_1.getOrGenerateKey)(storageKey, platform);
36
39
  }
37
40
  };
38
41
  const ensureKeySingle = async (c, platform) => {
@@ -65,5 +68,5 @@ const ensureKey = async (context, platform) => {
65
68
  }
66
69
  return cloned;
67
70
  };
68
- exports.default = ensureKey;
71
+ exports.ensureKey = ensureKey;
69
72
  //# sourceMappingURL=ensureKey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureKey.js","sourceRoot":"","sources":["../../src/context/ensureKey.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+DASqC;AAErC,kEAA+D;AAC/D,8DAAqF;AAErF,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,wBAAQ,CAAC;AAE7D;;;;;;;;;;;;GAYG;AACH,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAE,CAAkB,EAAE,QAAkB,EAAE,EAAE;IACrF,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAE7B,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE;QACrB,MAAM,UAAU,GAAG,IAAA,yDAAwC,EAAC,IAAI,CAAC,CAAC;QAClE,sFAAsF;QACtF,6CAA6C;QAC7C,CAAC,CAAC,GAAG,GAAG,MAAM,IAAA,mCAAgB,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;KACtD;AACH,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAAE,CAAsB,EAAE,QAAkB,EAAE,EAAE;IAC3E,MAAM,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,EAAE,YAAgC,EAAE,QAAkB,EAAE,EAAE;IACpF,MAAM,EAAE,IAAI,KAAwB,YAAY,EAA/B,cAAc,UAAK,YAAY,EAA1C,QAA2B,CAAe,CAAC;IAEjD,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5C,eAAe,CAAC,CAAC,EAAE,CAAoB,EAAE,QAAQ,CAAC,CACnD,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAAE,CAAS,EAAE,QAAkB,EAAE,EAAE;IAC9D,MAAM,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;;;GAMG;AACI,MAAM,SAAS,GAAG,KAAK,EAAE,OAAkB,EAAE,QAAkB,EAAE,EAAE;IACxE,MAAM,MAAM,GAAG,IAAA,qBAAK,EAAY,OAAO,CAAC,CAAC;IAEzC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;QACxB,MAAM,eAAe,CAAC,MAA6B,EAAE,QAAQ,CAAC,CAAC;KAChE;IAED,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,cAAc,CAAC,MAA4B,EAAE,QAAQ,CAAC,CAAC;KAC9D;IAED,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;QACxB,MAAM,eAAe,CAAC,MAAgB,EAAE,QAAQ,CAAC,CAAC;KACnD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAhBW,QAAA,SAAS,aAgBpB"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * An index for tracking the most recently used contexts by timestamp with the ability to
3
+ * update entry timestamps and prune out least used contexts above a max capacity provided.
4
+ */
5
+ export default class ContextIndex {
6
+ container: IndexContainer;
7
+ /**
8
+ * Creates a {@link ContextIndex} from its JSON representation (likely retrieved from persistence).
9
+ * @param json representation of the {@link ContextIndex}
10
+ * @returns the {@link ContextIndex}
11
+ */
12
+ static fromJson(json: string): ContextIndex;
13
+ /**
14
+ * @returns the JSON representation of the {@link ContextIndex} (like for saving to persistence)
15
+ */
16
+ toJson(): string;
17
+ /**
18
+ * Notice that a context has been used and when it was used. This will update an existing record
19
+ * with the given timestamp, or create a new record if one doesn't exist.
20
+ * @param id of the corresponding context
21
+ * @param timestamp in millis since epoch
22
+ */
23
+ notice(id: string, timestamp: number): void;
24
+ /**
25
+ * Prune the index to the specified max size and then return the IDs
26
+ * @param maxContexts the maximum number of contexts to retain after this prune
27
+ * @returns an array of removed entries
28
+ */
29
+ prune(maxContexts: number): Array<IndexEntry>;
30
+ }
31
+ export interface IndexContainer {
32
+ index: Array<IndexEntry>;
33
+ }
34
+ interface IndexEntry {
35
+ id: string;
36
+ timestamp: number;
37
+ }
38
+ export {};
39
+ //# sourceMappingURL=ContextIndex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextIndex.d.ts","sourceRoot":"","sources":["../../src/flag-manager/ContextIndex.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,YAAY;IAC/B,SAAS,EAAE,cAAc,CAAsC;IAE/D;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;IAW3C;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IASpC;;;;OAIG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;CAU9C;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;CAC1B;AAED,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * An index for tracking the most recently used contexts by timestamp with the ability to
5
+ * update entry timestamps and prune out least used contexts above a max capacity provided.
6
+ */
7
+ class ContextIndex {
8
+ constructor() {
9
+ this.container = { index: new Array() };
10
+ }
11
+ /**
12
+ * Creates a {@link ContextIndex} from its JSON representation (likely retrieved from persistence).
13
+ * @param json representation of the {@link ContextIndex}
14
+ * @returns the {@link ContextIndex}
15
+ */
16
+ static fromJson(json) {
17
+ const contextIndex = new ContextIndex();
18
+ try {
19
+ contextIndex.container = JSON.parse(json);
20
+ }
21
+ catch (e) {
22
+ /* ignoring error and returning empty index */
23
+ }
24
+ return contextIndex;
25
+ }
26
+ /**
27
+ * @returns the JSON representation of the {@link ContextIndex} (like for saving to persistence)
28
+ */
29
+ toJson() {
30
+ return JSON.stringify(this.container);
31
+ }
32
+ /**
33
+ * Notice that a context has been used and when it was used. This will update an existing record
34
+ * with the given timestamp, or create a new record if one doesn't exist.
35
+ * @param id of the corresponding context
36
+ * @param timestamp in millis since epoch
37
+ */
38
+ notice(id, timestamp) {
39
+ const entry = this.container.index.find((it) => it.id === id);
40
+ if (entry === undefined) {
41
+ this.container.index.push({ id, timestamp });
42
+ }
43
+ else {
44
+ entry.timestamp = timestamp;
45
+ }
46
+ }
47
+ /**
48
+ * Prune the index to the specified max size and then return the IDs
49
+ * @param maxContexts the maximum number of contexts to retain after this prune
50
+ * @returns an array of removed entries
51
+ */
52
+ prune(maxContexts) {
53
+ const clampedMax = Math.max(maxContexts, 0); // clamp to [0, infinity)
54
+ if (this.container.index.length > clampedMax) {
55
+ // sort by timestamp so that older timestamps appear first in the array
56
+ this.container.index.sort((a, b) => a.timestamp - b.timestamp);
57
+ // delete the first N many elements above capacity. splice returns removed elements
58
+ return this.container.index.splice(0, this.container.index.length - clampedMax);
59
+ }
60
+ return [];
61
+ }
62
+ }
63
+ exports.default = ContextIndex;
64
+ //# sourceMappingURL=ContextIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextIndex.js","sourceRoot":"","sources":["../../src/flag-manager/ContextIndex.ts"],"names":[],"mappings":";;AAAA;;;GAGG;AACH,MAAqB,YAAY;IAAjC;QACE,cAAS,GAAmB,EAAE,KAAK,EAAE,IAAI,KAAK,EAAc,EAAE,CAAC;IAuDjE,CAAC;IArDC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAY;QAC1B,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,IAAI;YACF,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC3C;QAAC,OAAO,CAAC,EAAE;YACV,8CAA8C;SAC/C;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,EAAU,EAAE,SAAiB;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9D,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;SAC9C;aAAM;YACL,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;SAC7B;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAmB;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,yBAAyB;QACtE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,EAAE;YAC5C,uEAAuE;YACvE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/D,oFAAoF;YACpF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;SACjF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAxDD,+BAwDC"}
@@ -0,0 +1,58 @@
1
+ import { Context, LDLogger, Platform } from '@launchdarkly/js-sdk-common';
2
+ import { FlagsChangeCallback } from './FlagUpdater';
3
+ import { ItemDescriptor } from './ItemDescriptor';
4
+ /**
5
+ * Top level manager of flags for the client. LDClient should be using this
6
+ * class and not any of the specific instances managed by it. Updates from
7
+ * data sources should be directed to the [init] and [upsert] methods of this
8
+ * class.
9
+ */
10
+ export default class FlagManager {
11
+ private readonly timeStamper;
12
+ private flagStore;
13
+ private flagUpdater;
14
+ private flagPersistence;
15
+ /**
16
+ * @param platform implementation of various platform provided functionality
17
+ * @param sdkKey that will be used to distinguish different environments
18
+ * @param maxCachedContexts that specifies the max number of contexts that will be cached in persistence
19
+ * @param logger used for logging various messages
20
+ * @param timeStamper exists for testing purposes
21
+ */
22
+ constructor(platform: Platform, sdkKey: string, maxCachedContexts: number, logger: LDLogger, timeStamper?: () => number);
23
+ /**
24
+ * Attempts to get a flag by key from the current flags.
25
+ */
26
+ get(key: string): ItemDescriptor | undefined;
27
+ /**
28
+ * Gets all the current flags.
29
+ */
30
+ getAll(): {
31
+ [key: string]: ItemDescriptor;
32
+ };
33
+ /**
34
+ * Initializes the flag manager with data from a data source.
35
+ * Persistence initialization is handled by {@link FlagPersistence}
36
+ */
37
+ init(context: Context, newFlags: {
38
+ [key: string]: ItemDescriptor;
39
+ }): Promise<void>;
40
+ /**
41
+ * Attempt to update a flag. If the flag is for the wrong context, or
42
+ * it is of an older version, then an update will not be performed.
43
+ */
44
+ upsert(context: Context, key: string, item: ItemDescriptor): Promise<boolean>;
45
+ /**
46
+ * Asynchronously load cached values from persistence.
47
+ */
48
+ loadCached(context: Context): Promise<boolean>;
49
+ /**
50
+ * Register a flag change callback.
51
+ */
52
+ on(callback: FlagsChangeCallback): void;
53
+ /**
54
+ * Unregister a flag change callback.
55
+ */
56
+ off(callback: FlagsChangeCallback): void;
57
+ }
58
+ //# sourceMappingURL=FlagManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlagManager.d.ts","sourceRoot":"","sources":["../../src/flag-manager/FlagManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAK1E,OAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAiB5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAhB9B,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,eAAe,CAAkB;IAEzC;;;;;;OAMG;gBAED,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,QAAQ,EACC,WAAW,GAAE,MAAM,MAAyB;IAgB/D;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAI5C;;OAEG;IACH,MAAM,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE;IAI3C;;;OAGG;IACG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxF;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAInF;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpD;;OAEG;IACH,EAAE,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAIvC;;OAEG;IACH,GAAG,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;CAGzC"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const namespaceUtils_1 = require("../storage/namespaceUtils");
4
+ const FlagPersistence_1 = require("./FlagPersistence");
5
+ const FlagStore_1 = require("./FlagStore");
6
+ const FlagUpdater_1 = require("./FlagUpdater");
7
+ /**
8
+ * Top level manager of flags for the client. LDClient should be using this
9
+ * class and not any of the specific instances managed by it. Updates from
10
+ * data sources should be directed to the [init] and [upsert] methods of this
11
+ * class.
12
+ */
13
+ class FlagManager {
14
+ /**
15
+ * @param platform implementation of various platform provided functionality
16
+ * @param sdkKey that will be used to distinguish different environments
17
+ * @param maxCachedContexts that specifies the max number of contexts that will be cached in persistence
18
+ * @param logger used for logging various messages
19
+ * @param timeStamper exists for testing purposes
20
+ */
21
+ constructor(platform, sdkKey, maxCachedContexts, logger, timeStamper = () => Date.now()) {
22
+ this.timeStamper = timeStamper;
23
+ this.flagStore = new FlagStore_1.DefaultFlagStore();
24
+ const environmentNamespace = (0, namespaceUtils_1.namespaceForEnvironment)(platform.crypto, sdkKey);
25
+ this.flagUpdater = new FlagUpdater_1.default(this.flagStore, logger);
26
+ this.flagPersistence = new FlagPersistence_1.default(platform, environmentNamespace, maxCachedContexts, this.flagStore, this.flagUpdater, logger, timeStamper);
27
+ }
28
+ /**
29
+ * Attempts to get a flag by key from the current flags.
30
+ */
31
+ get(key) {
32
+ return this.flagStore.get(key);
33
+ }
34
+ /**
35
+ * Gets all the current flags.
36
+ */
37
+ getAll() {
38
+ return this.flagStore.getAll();
39
+ }
40
+ /**
41
+ * Initializes the flag manager with data from a data source.
42
+ * Persistence initialization is handled by {@link FlagPersistence}
43
+ */
44
+ async init(context, newFlags) {
45
+ return this.flagPersistence.init(context, newFlags);
46
+ }
47
+ /**
48
+ * Attempt to update a flag. If the flag is for the wrong context, or
49
+ * it is of an older version, then an update will not be performed.
50
+ */
51
+ async upsert(context, key, item) {
52
+ return this.flagPersistence.upsert(context, key, item);
53
+ }
54
+ /**
55
+ * Asynchronously load cached values from persistence.
56
+ */
57
+ async loadCached(context) {
58
+ return this.flagPersistence.loadCached(context);
59
+ }
60
+ /**
61
+ * Register a flag change callback.
62
+ */
63
+ on(callback) {
64
+ this.flagUpdater.on(callback);
65
+ }
66
+ /**
67
+ * Unregister a flag change callback.
68
+ */
69
+ off(callback) {
70
+ this.flagUpdater.off(callback);
71
+ }
72
+ }
73
+ exports.default = FlagManager;
74
+ //# sourceMappingURL=FlagManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlagManager.js","sourceRoot":"","sources":["../../src/flag-manager/FlagManager.ts"],"names":[],"mappings":";;AAEA,8DAAoE;AACpE,uDAAgD;AAChD,2CAA+C;AAC/C,+CAAiE;AAGjE;;;;;GAKG;AACH,MAAqB,WAAW;IAK9B;;;;;;OAMG;IACH,YACE,QAAkB,EAClB,MAAc,EACd,iBAAyB,EACzB,MAAgB,EACC,cAA4B,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QAA5C,gBAAW,GAAX,WAAW,CAAiC;QAhBvD,cAAS,GAAG,IAAI,4BAAgB,EAAE,CAAC;QAkBzC,MAAM,oBAAoB,GAAG,IAAA,wCAAuB,EAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE9E,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,eAAe,GAAG,IAAI,yBAAe,CACxC,QAAQ,EACR,oBAAoB,EACpB,iBAAiB,EACjB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,WAAW,EAChB,MAAM,EACN,WAAW,CACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,OAAgB,EAAE,QAA2C;QACtE,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAgB,EAAE,GAAW,EAAE,IAAoB;QAC9D,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,QAA6B;QAC9B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,QAA6B;QAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CACF;AAnFD,8BAmFC"}