@launchdarkly/js-server-sdk-common-edge 1.0.1 → 1.0.3

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 (38) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cjs/package.json +1 -1
  3. package/dist/cjs/src/api/EdgeFeatureStore.d.ts +21 -0
  4. package/dist/cjs/src/api/EdgeFeatureStore.d.ts.map +1 -0
  5. package/dist/cjs/src/api/EdgeFeatureStore.js +104 -0
  6. package/dist/cjs/src/api/EdgeFeatureStore.js.map +1 -0
  7. package/dist/cjs/src/api/createOptions.d.ts +1 -1
  8. package/dist/cjs/src/api/index.d.ts +1 -0
  9. package/dist/cjs/src/api/index.d.ts.map +1 -1
  10. package/dist/cjs/src/api/index.js +1 -0
  11. package/dist/cjs/src/api/index.js.map +1 -1
  12. package/dist/cjs/src/index.d.ts +3 -2
  13. package/dist/cjs/src/index.d.ts.map +1 -1
  14. package/dist/cjs/src/index.js +2 -1
  15. package/dist/cjs/src/index.js.map +1 -1
  16. package/dist/cjs/src/utils/mockEdgeProvider.d.ts +4 -0
  17. package/dist/cjs/src/utils/mockEdgeProvider.d.ts.map +1 -0
  18. package/dist/cjs/src/utils/mockEdgeProvider.js +7 -0
  19. package/dist/cjs/src/utils/mockEdgeProvider.js.map +1 -0
  20. package/dist/esm/package.json +1 -1
  21. package/dist/esm/src/api/EdgeFeatureStore.d.ts +21 -0
  22. package/dist/esm/src/api/EdgeFeatureStore.d.ts.map +1 -0
  23. package/dist/esm/src/api/EdgeFeatureStore.js +100 -0
  24. package/dist/esm/src/api/EdgeFeatureStore.js.map +1 -0
  25. package/dist/esm/src/api/createOptions.d.ts +1 -1
  26. package/dist/esm/src/api/index.d.ts +1 -0
  27. package/dist/esm/src/api/index.d.ts.map +1 -1
  28. package/dist/esm/src/api/index.js +1 -0
  29. package/dist/esm/src/api/index.js.map +1 -1
  30. package/dist/esm/src/index.d.ts +3 -2
  31. package/dist/esm/src/index.d.ts.map +1 -1
  32. package/dist/esm/src/index.js +2 -1
  33. package/dist/esm/src/index.js.map +1 -1
  34. package/dist/esm/src/utils/mockEdgeProvider.d.ts +4 -0
  35. package/dist/esm/src/utils/mockEdgeProvider.d.ts.map +1 -0
  36. package/dist/esm/src/utils/mockEdgeProvider.js +5 -0
  37. package/dist/esm/src/utils/mockEdgeProvider.js.map +1 -0
  38. package/package.json +4 -3
package/CHANGELOG.md CHANGED
@@ -6,6 +6,26 @@
6
6
  * dependencies
7
7
  * @launchdarkly/js-server-sdk-common bumped from 0.3.0 to 0.3.1
8
8
 
9
+ ### Dependencies
10
+
11
+ * The following workspace dependencies were updated
12
+ * dependencies
13
+ * @launchdarkly/js-server-sdk-common bumped from 1.0.2 to 1.0.3
14
+
15
+ ## [1.0.2](https://github.com/launchdarkly/js-core/compare/js-server-sdk-common-edge-v1.0.1...js-server-sdk-common-edge-v1.0.2) (2023-04-28)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * make vercel use EdgeProvider ([#114](https://github.com/launchdarkly/js-core/issues/114)) ([6705996](https://github.com/launchdarkly/js-core/commit/6705996929471ff8f72f97d58a665f75d4e5fecd))
21
+
22
+
23
+ ### Dependencies
24
+
25
+ * The following workspace dependencies were updated
26
+ * dependencies
27
+ * @launchdarkly/js-server-sdk-common bumped from 1.0.1 to 1.0.2
28
+
9
29
  ## [1.0.1](https://github.com/launchdarkly/js-core/compare/js-server-sdk-common-edge-v1.0.0...js-server-sdk-common-edge-v1.0.1) (2023-04-27)
10
30
 
11
31
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@launchdarkly/js-server-sdk-common-edge",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "type": "commonjs"
5
5
  }
@@ -0,0 +1,21 @@
1
+ import type { DataKind, LDLogger, LDFeatureStore, LDFeatureStoreDataStorage, LDFeatureStoreItem, LDFeatureStoreKindData } from '@launchdarkly/js-server-sdk-common';
2
+ export interface EdgeProvider {
3
+ get: (rootKey: string) => Promise<string | null | undefined>;
4
+ }
5
+ export declare class EdgeFeatureStore implements LDFeatureStore {
6
+ private readonly edgeProvider;
7
+ private readonly sdkKey;
8
+ private readonly description;
9
+ private logger;
10
+ private readonly rootKey;
11
+ constructor(edgeProvider: EdgeProvider, sdkKey: string, description: string, logger: LDLogger);
12
+ get(kind: DataKind, dataKey: string, callback: (res: LDFeatureStoreItem | null) => void): Promise<void>;
13
+ all(kind: DataKind, callback?: (res: LDFeatureStoreKindData) => void): Promise<void>;
14
+ initialized(callback?: (isInitialized: boolean) => void): Promise<void>;
15
+ init(allData: LDFeatureStoreDataStorage, callback: () => void): void;
16
+ getDescription(): string;
17
+ close: () => void;
18
+ delete: () => void;
19
+ upsert: () => void;
20
+ }
21
+ //# sourceMappingURL=EdgeFeatureStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EdgeFeatureStore.d.ts","sourceRoot":"","sources":["../../../../src/api/EdgeFeatureStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC9D;AAED,qBAAa,gBAAiB,YAAW,cAAc;IAInD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,MAAM;IANhB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAGd,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EAC5B,MAAM,EAAE,QAAQ;IAKpB,GAAG,CACP,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,KAAK,IAAI,GACjD,OAAO,CAAC,IAAI,CAAC;IAiCV,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAE,CAAC,GAAG,EAAE,sBAAsB,KAAK,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B1F,WAAW,CAAC,QAAQ,GAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnF,IAAI,CAAC,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIpE,cAAc,IAAI,MAAM;IAKxB,KAAK,aAAQ;IAEb,MAAM,aAAQ;IAEd,MAAM,aAAQ;CACf"}
@@ -0,0 +1,104 @@
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.EdgeFeatureStore = void 0;
13
+ const js_server_sdk_common_1 = require("@launchdarkly/js-server-sdk-common");
14
+ class EdgeFeatureStore {
15
+ constructor(edgeProvider, sdkKey, description, logger) {
16
+ this.edgeProvider = edgeProvider;
17
+ this.sdkKey = sdkKey;
18
+ this.description = description;
19
+ this.logger = logger;
20
+ // unused
21
+ this.close = js_server_sdk_common_1.noop;
22
+ this.delete = js_server_sdk_common_1.noop;
23
+ this.upsert = js_server_sdk_common_1.noop;
24
+ this.rootKey = `LD-Env-${sdkKey}`;
25
+ }
26
+ get(kind, dataKey, callback) {
27
+ return __awaiter(this, void 0, void 0, function* () {
28
+ const { namespace } = kind;
29
+ const kindKey = namespace === 'features' ? 'flags' : namespace;
30
+ this.logger.debug(`Requesting ${dataKey} from ${this.rootKey}.${kindKey}`);
31
+ try {
32
+ const i = yield this.edgeProvider.get(this.rootKey);
33
+ if (!i) {
34
+ throw new Error(`${this.rootKey}.${kindKey} is not found in KV.`);
35
+ }
36
+ const item = (0, js_server_sdk_common_1.deserializePoll)(i);
37
+ if (!item) {
38
+ throw new Error(`Error deserializing ${kindKey}`);
39
+ }
40
+ switch (namespace) {
41
+ case 'features':
42
+ callback(item.flags[dataKey]);
43
+ break;
44
+ case 'segments':
45
+ callback(item.segments[dataKey]);
46
+ break;
47
+ default:
48
+ throw new Error(`Unsupported DataKind: ${namespace}`);
49
+ }
50
+ }
51
+ catch (err) {
52
+ this.logger.error(err);
53
+ callback(null);
54
+ }
55
+ });
56
+ }
57
+ all(kind, callback = js_server_sdk_common_1.noop) {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ const { namespace } = kind;
60
+ const kindKey = namespace === 'features' ? 'flags' : namespace;
61
+ this.logger.debug(`Requesting all from ${this.rootKey}.${kindKey}`);
62
+ try {
63
+ const i = yield this.edgeProvider.get(this.rootKey);
64
+ if (!i) {
65
+ throw new Error(`${this.rootKey}.${kindKey} is not found in KV.`);
66
+ }
67
+ const item = (0, js_server_sdk_common_1.deserializePoll)(i);
68
+ if (!item) {
69
+ throw new Error(`Error deserializing ${kindKey}`);
70
+ }
71
+ switch (namespace) {
72
+ case 'features':
73
+ callback(item.flags);
74
+ break;
75
+ case 'segments':
76
+ callback(item.segments);
77
+ break;
78
+ default:
79
+ throw new Error(`Unsupported DataKind: ${namespace}`);
80
+ }
81
+ }
82
+ catch (err) {
83
+ this.logger.error(err);
84
+ callback({});
85
+ }
86
+ });
87
+ }
88
+ initialized(callback = js_server_sdk_common_1.noop) {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ const config = yield this.edgeProvider.get(this.rootKey);
91
+ const result = config !== null;
92
+ this.logger.debug(`Is ${this.rootKey} initialized? ${result}`);
93
+ callback(result);
94
+ });
95
+ }
96
+ init(allData, callback) {
97
+ callback();
98
+ }
99
+ getDescription() {
100
+ return this.description;
101
+ }
102
+ }
103
+ exports.EdgeFeatureStore = EdgeFeatureStore;
104
+ //# sourceMappingURL=EdgeFeatureStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EdgeFeatureStore.js","sourceRoot":"","sources":["../../../../src/api/EdgeFeatureStore.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ declare const createOptions: (options: LDOptions) => {
9
9
  logger?: import("@launchdarkly/js-server-sdk-common").LDLogger | undefined;
10
10
  featureStore?: import("@launchdarkly/js-server-sdk-common").LDFeatureStore | ((clientContext: import("@launchdarkly/js-server-sdk-common").LDClientContext) => import("@launchdarkly/js-server-sdk-common").LDFeatureStore) | undefined;
11
11
  bigSegments?: import("@launchdarkly/js-server-sdk-common").LDBigSegmentsOptions | undefined;
12
- updateProcessor?: object | undefined;
12
+ updateProcessor?: object | ((clientContext: import("@launchdarkly/js-server-sdk-common").LDClientContext, dataSourceUpdates: import("@launchdarkly/js-server-sdk-common/dist/api/subsystems").LDDataSourceUpdates) => import("@launchdarkly/js-server-sdk-common").LDStreamProcessor) | undefined;
13
13
  flushInterval?: number | undefined;
14
14
  pollInterval?: number | undefined;
15
15
  proxyOptions?: import("@launchdarkly/js-server-sdk-common").LDProxyOptions | undefined;
@@ -1,2 +1,3 @@
1
+ export * from './EdgeFeatureStore';
1
2
  export * from './LDClient';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
@@ -14,5 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./EdgeFeatureStore"), exports);
17
18
  __exportStar(require("./LDClient"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,6CAA2B"}
@@ -6,10 +6,11 @@
6
6
  *
7
7
  */
8
8
  import type { Info } from '@launchdarkly/js-server-sdk-common';
9
- import { LDClient } from './api';
9
+ import { LDClient, EdgeFeatureStore, EdgeProvider } from './api';
10
10
  import { LDOptions, LDOptionsInternal } from './utils/validateOptions';
11
11
  export * from '@launchdarkly/js-server-sdk-common';
12
- export type { LDClient, LDOptions };
12
+ export { EdgeFeatureStore };
13
+ export type { LDClient, LDOptions, EdgeProvider };
13
14
  /**
14
15
  * Do not use this function directly.
15
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAwB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AACnD,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAEpC;;;;GAIG;AACH,eAAO,MAAM,IAAI,WAAY,MAAM,gBAAgB,IAAI,WAAW,iBAAiB,aAKlF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACjE,OAAwB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,IAAI,WAAY,MAAM,gBAAgB,IAAI,WAAW,iBAAiB,aAKlF,CAAC"}
@@ -14,8 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.init = void 0;
17
+ exports.init = exports.EdgeFeatureStore = void 0;
18
18
  const api_1 = require("./api");
19
+ Object.defineProperty(exports, "EdgeFeatureStore", { enumerable: true, get: function () { return api_1.EdgeFeatureStore; } });
19
20
  const validateOptions_1 = require("./utils/validateOptions");
20
21
  __exportStar(require("@launchdarkly/js-server-sdk-common"), exports);
21
22
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,+BAAiC;AACjC,6DAAwF;AAExF,qEAAmD;AAGnD;;;;GAIG;AACI,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,YAAkB,EAAE,OAA0B,EAAE,EAAE;IACrF,qCAAqC;IACrC,IAAA,yBAAe,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,IAAI,cAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC,CAAC;AALW,QAAA,IAAI,QAKf"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAQA,+BAAiE;AAIxD,iGAJU,sBAAgB,OAIV;AAHzB,6DAAwF;AAExF,qEAAmD;AAInD;;;;GAIG;AACI,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,YAAkB,EAAE,OAA0B,EAAE,EAAE;IACrF,qCAAqC;IACrC,IAAA,yBAAe,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,IAAI,cAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC,CAAC;AALW,QAAA,IAAI,QAKf"}
@@ -0,0 +1,4 @@
1
+ import { EdgeProvider } from '../api';
2
+ declare const mockEdgeProvider: EdgeProvider;
3
+ export default mockEdgeProvider;
4
+ //# sourceMappingURL=mockEdgeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockEdgeProvider.d.ts","sourceRoot":"","sources":["../../../../src/utils/mockEdgeProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,QAAA,MAAM,gBAAgB,EAAE,YAEvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const mockEdgeProvider = {
4
+ get: jest.fn(),
5
+ };
6
+ exports.default = mockEdgeProvider;
7
+ //# sourceMappingURL=mockEdgeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockEdgeProvider.js","sourceRoot":"","sources":["../../../../src/utils/mockEdgeProvider.ts"],"names":[],"mappings":";;AAEA,MAAM,gBAAgB,GAAiB;IACrC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,kBAAe,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@launchdarkly/js-server-sdk-common-edge",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "type": "module"
5
5
  }
@@ -0,0 +1,21 @@
1
+ import type { DataKind, LDLogger, LDFeatureStore, LDFeatureStoreDataStorage, LDFeatureStoreItem, LDFeatureStoreKindData } from '@launchdarkly/js-server-sdk-common';
2
+ export interface EdgeProvider {
3
+ get: (rootKey: string) => Promise<string | null | undefined>;
4
+ }
5
+ export declare class EdgeFeatureStore implements LDFeatureStore {
6
+ private readonly edgeProvider;
7
+ private readonly sdkKey;
8
+ private readonly description;
9
+ private logger;
10
+ private readonly rootKey;
11
+ constructor(edgeProvider: EdgeProvider, sdkKey: string, description: string, logger: LDLogger);
12
+ get(kind: DataKind, dataKey: string, callback: (res: LDFeatureStoreItem | null) => void): Promise<void>;
13
+ all(kind: DataKind, callback?: (res: LDFeatureStoreKindData) => void): Promise<void>;
14
+ initialized(callback?: (isInitialized: boolean) => void): Promise<void>;
15
+ init(allData: LDFeatureStoreDataStorage, callback: () => void): void;
16
+ getDescription(): string;
17
+ close: () => void;
18
+ delete: () => void;
19
+ upsert: () => void;
20
+ }
21
+ //# sourceMappingURL=EdgeFeatureStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EdgeFeatureStore.d.ts","sourceRoot":"","sources":["../../../../src/api/EdgeFeatureStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC9D;AAED,qBAAa,gBAAiB,YAAW,cAAc;IAInD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,MAAM;IANhB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAGd,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EAC5B,MAAM,EAAE,QAAQ;IAKpB,GAAG,CACP,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,KAAK,IAAI,GACjD,OAAO,CAAC,IAAI,CAAC;IAiCV,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAE,CAAC,GAAG,EAAE,sBAAsB,KAAK,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B1F,WAAW,CAAC,QAAQ,GAAE,CAAC,aAAa,EAAE,OAAO,KAAK,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnF,IAAI,CAAC,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIpE,cAAc,IAAI,MAAM;IAKxB,KAAK,aAAQ;IAEb,MAAM,aAAQ;IAEd,MAAM,aAAQ;CACf"}
@@ -0,0 +1,100 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { deserializePoll, noop } from '@launchdarkly/js-server-sdk-common';
11
+ export class EdgeFeatureStore {
12
+ constructor(edgeProvider, sdkKey, description, logger) {
13
+ this.edgeProvider = edgeProvider;
14
+ this.sdkKey = sdkKey;
15
+ this.description = description;
16
+ this.logger = logger;
17
+ // unused
18
+ this.close = noop;
19
+ this.delete = noop;
20
+ this.upsert = noop;
21
+ this.rootKey = `LD-Env-${sdkKey}`;
22
+ }
23
+ get(kind, dataKey, callback) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ const { namespace } = kind;
26
+ const kindKey = namespace === 'features' ? 'flags' : namespace;
27
+ this.logger.debug(`Requesting ${dataKey} from ${this.rootKey}.${kindKey}`);
28
+ try {
29
+ const i = yield this.edgeProvider.get(this.rootKey);
30
+ if (!i) {
31
+ throw new Error(`${this.rootKey}.${kindKey} is not found in KV.`);
32
+ }
33
+ const item = deserializePoll(i);
34
+ if (!item) {
35
+ throw new Error(`Error deserializing ${kindKey}`);
36
+ }
37
+ switch (namespace) {
38
+ case 'features':
39
+ callback(item.flags[dataKey]);
40
+ break;
41
+ case 'segments':
42
+ callback(item.segments[dataKey]);
43
+ break;
44
+ default:
45
+ throw new Error(`Unsupported DataKind: ${namespace}`);
46
+ }
47
+ }
48
+ catch (err) {
49
+ this.logger.error(err);
50
+ callback(null);
51
+ }
52
+ });
53
+ }
54
+ all(kind, callback = noop) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const { namespace } = kind;
57
+ const kindKey = namespace === 'features' ? 'flags' : namespace;
58
+ this.logger.debug(`Requesting all from ${this.rootKey}.${kindKey}`);
59
+ try {
60
+ const i = yield this.edgeProvider.get(this.rootKey);
61
+ if (!i) {
62
+ throw new Error(`${this.rootKey}.${kindKey} is not found in KV.`);
63
+ }
64
+ const item = deserializePoll(i);
65
+ if (!item) {
66
+ throw new Error(`Error deserializing ${kindKey}`);
67
+ }
68
+ switch (namespace) {
69
+ case 'features':
70
+ callback(item.flags);
71
+ break;
72
+ case 'segments':
73
+ callback(item.segments);
74
+ break;
75
+ default:
76
+ throw new Error(`Unsupported DataKind: ${namespace}`);
77
+ }
78
+ }
79
+ catch (err) {
80
+ this.logger.error(err);
81
+ callback({});
82
+ }
83
+ });
84
+ }
85
+ initialized(callback = noop) {
86
+ return __awaiter(this, void 0, void 0, function* () {
87
+ const config = yield this.edgeProvider.get(this.rootKey);
88
+ const result = config !== null;
89
+ this.logger.debug(`Is ${this.rootKey} initialized? ${result}`);
90
+ callback(result);
91
+ });
92
+ }
93
+ init(allData, callback) {
94
+ callback();
95
+ }
96
+ getDescription() {
97
+ return this.description;
98
+ }
99
+ }
100
+ //# sourceMappingURL=EdgeFeatureStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EdgeFeatureStore.js","sourceRoot":"","sources":["../../../../src/api/EdgeFeatureStore.ts"],"names":[],"mappings":";;;;;;;;;AAQA,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAM3E,MAAM,OAAO,gBAAgB;IAG3B,YACmB,YAA0B,EAC1B,MAAc,EACd,WAAmB,EAC5B,MAAgB;QAHP,iBAAY,GAAZ,YAAY,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAQ;QAC5B,WAAM,GAAN,MAAM,CAAU;QAwF1B,SAAS;QACT,UAAK,GAAG,IAAI,CAAC;QAEb,WAAM,GAAG,IAAI,CAAC;QAEd,WAAM,GAAG,IAAI,CAAC;QA3FZ,IAAI,CAAC,OAAO,GAAG,UAAU,MAAM,EAAE,CAAC;IACpC,CAAC;IAEK,GAAG,CACP,IAAc,EACd,OAAe,EACf,QAAkD;;YAElD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;YAC3B,MAAM,OAAO,GAAG,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,SAAS,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC,CAAC;YAE3E,IAAI;gBACF,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAEpD,IAAI,CAAC,CAAC,EAAE;oBACN,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,sBAAsB,CAAC,CAAC;iBACnE;gBAED,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;iBACnD;gBAED,QAAQ,SAAS,EAAE;oBACjB,KAAK,UAAU;wBACb,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC9B,MAAM;oBACR,KAAK,UAAU;wBACb,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBACjC,MAAM;oBACR;wBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;iBACzD;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;aAChB;QACH,CAAC;KAAA;IAEK,GAAG,CAAC,IAAc,EAAE,WAAkD,IAAI;;YAC9E,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;YAC3B,MAAM,OAAO,GAAG,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC,CAAC;YACpE,IAAI;gBACF,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpD,IAAI,CAAC,CAAC,EAAE;oBACN,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,sBAAsB,CAAC,CAAC;iBACnE;gBAED,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;iBACnD;gBAED,QAAQ,SAAS,EAAE;oBACjB,KAAK,UAAU;wBACb,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACrB,MAAM;oBACR,KAAK,UAAU;wBACb,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACxB,MAAM;oBACR;wBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;iBACzD;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvB,QAAQ,CAAC,EAAE,CAAC,CAAC;aACd;QACH,CAAC;KAAA;IAEK,WAAW,CAAC,WAA6C,IAAI;;YACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,OAAO,iBAAiB,MAAM,EAAE,CAAC,CAAC;YAC/D,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;KAAA;IAED,IAAI,CAAC,OAAkC,EAAE,QAAoB;QAC3D,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;CAQF"}
@@ -9,7 +9,7 @@ declare const createOptions: (options: LDOptions) => {
9
9
  logger?: import("@launchdarkly/js-server-sdk-common").LDLogger | undefined;
10
10
  featureStore?: import("@launchdarkly/js-server-sdk-common").LDFeatureStore | ((clientContext: import("@launchdarkly/js-server-sdk-common").LDClientContext) => import("@launchdarkly/js-server-sdk-common").LDFeatureStore) | undefined;
11
11
  bigSegments?: import("@launchdarkly/js-server-sdk-common").LDBigSegmentsOptions | undefined;
12
- updateProcessor?: object | undefined;
12
+ updateProcessor?: object | ((clientContext: import("@launchdarkly/js-server-sdk-common").LDClientContext, dataSourceUpdates: import("@launchdarkly/js-server-sdk-common/dist/api/subsystems").LDDataSourceUpdates) => import("@launchdarkly/js-server-sdk-common").LDStreamProcessor) | undefined;
13
13
  flushInterval?: number | undefined;
14
14
  pollInterval?: number | undefined;
15
15
  proxyOptions?: import("@launchdarkly/js-server-sdk-common").LDProxyOptions | undefined;
@@ -1,2 +1,3 @@
1
+ export * from './EdgeFeatureStore';
1
2
  export * from './LDClient';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
@@ -1,2 +1,3 @@
1
+ export * from './EdgeFeatureStore';
1
2
  export * from './LDClient';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC"}
@@ -6,10 +6,11 @@
6
6
  *
7
7
  */
8
8
  import type { Info } from '@launchdarkly/js-server-sdk-common';
9
- import { LDClient } from './api';
9
+ import { LDClient, EdgeFeatureStore, EdgeProvider } from './api';
10
10
  import { LDOptions, LDOptionsInternal } from './utils/validateOptions';
11
11
  export * from '@launchdarkly/js-server-sdk-common';
12
- export type { LDClient, LDOptions };
12
+ export { EdgeFeatureStore };
13
+ export type { LDClient, LDOptions, EdgeProvider };
13
14
  /**
14
15
  * Do not use this function directly.
15
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAwB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AACnD,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;AAEpC;;;;GAIG;AACH,eAAO,MAAM,IAAI,WAAY,MAAM,gBAAgB,IAAI,WAAW,iBAAiB,aAKlF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACjE,OAAwB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,IAAI,WAAY,MAAM,gBAAgB,IAAI,WAAW,iBAAiB,aAKlF,CAAC"}
@@ -1,6 +1,7 @@
1
- import { LDClient } from './api';
1
+ import { LDClient, EdgeFeatureStore } from './api';
2
2
  import validateOptions from './utils/validateOptions';
3
3
  export * from '@launchdarkly/js-server-sdk-common';
4
+ export { EdgeFeatureStore };
4
5
  /**
5
6
  * Do not use this function directly.
6
7
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,eAAiD,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AAGnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,YAAkB,EAAE,OAA0B,EAAE,EAAE;IACrF,qCAAqC;IACrC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAgB,MAAM,OAAO,CAAC;AACjE,OAAO,eAAiD,MAAM,yBAAyB,CAAC;AAExF,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAG5B;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAc,EAAE,YAAkB,EAAE,OAA0B,EAAE,EAAE;IACrF,qCAAqC;IACrC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { EdgeProvider } from '../api';
2
+ declare const mockEdgeProvider: EdgeProvider;
3
+ export default mockEdgeProvider;
4
+ //# sourceMappingURL=mockEdgeProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockEdgeProvider.d.ts","sourceRoot":"","sources":["../../../../src/utils/mockEdgeProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,QAAA,MAAM,gBAAgB,EAAE,YAEvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ const mockEdgeProvider = {
2
+ get: jest.fn(),
3
+ };
4
+ export default mockEdgeProvider;
5
+ //# sourceMappingURL=mockEdgeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockEdgeProvider.js","sourceRoot":"","sources":["../../../../src/utils/mockEdgeProvider.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GAAiB;IACrC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE;CACf,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@launchdarkly/js-server-sdk-common-edge",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "homepage": "https://github.com/launchdarkly/js-core/tree/main/packages/shared/sdk-server-edge",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,11 +32,12 @@
32
32
  "start": "rimraf dist && yarn tsw",
33
33
  "lint": "eslint . --ext .ts",
34
34
  "prettier": "prettier --write '**/*.@(js|ts|tsx|json|css)' --ignore-path ../../../.prettierignore",
35
- "test": "NODE_OPTIONS=\"--experimental-vm-modules --no-warnings\" jest --ci --runInBand --coverage",
35
+ "test": "NODE_OPTIONS=\"--experimental-vm-modules --no-warnings\" jest --ci --runInBand",
36
+ "coverage": "yarn test --coverage",
36
37
  "check": "yarn prettier && yarn lint && yarn build && yarn test && yarn doc"
37
38
  },
38
39
  "dependencies": {
39
- "@launchdarkly/js-server-sdk-common": "1.0.1",
40
+ "@launchdarkly/js-server-sdk-common": "1.0.3",
40
41
  "crypto-js": "^4.1.1"
41
42
  },
42
43
  "devDependencies": {