unleash-client
Advanced tools
Comparing version 6.5.0-beta.0 to 6.5.0-beta.1
@@ -1,1 +0,1 @@ | ||
{ "name": "unleash-client-node", "version": "6.5.0-beta.0", "sdkVersion": "unleash-client-node:6.5.0-beta.0" } | ||
{ "name": "unleash-client-node", "version": "6.5.0-beta.1", "sdkVersion": "unleash-client-node:6.5.0-beta.1" } |
@@ -33,2 +33,3 @@ import { StrategyTransportInterface } from './strategy'; | ||
} | ||
export declare const parseClientFeaturesDelta: (delta: unknown) => ClientFeaturesDelta; | ||
export type DeltaEvent = FeatureUpdated | FeatureRemoved | SegmentUpdated | SegmentRemoved | Hydration; | ||
@@ -35,0 +36,0 @@ export type FeatureUpdated = { |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.parseClientFeaturesDelta = void 0; | ||
const parseClientFeaturesDelta = (delta) => { | ||
if (typeof delta === 'object' && | ||
delta !== null && | ||
'events' in delta && | ||
Array.isArray(delta.events)) { | ||
return delta; | ||
} | ||
throw new Error(`Invalid delta response: ${JSON.stringify(delta, null, 2)}`); | ||
}; | ||
exports.parseClientFeaturesDelta = parseClientFeaturesDelta; | ||
//# sourceMappingURL=feature.js.map |
@@ -5,2 +5,3 @@ "use strict"; | ||
const events_1 = require("events"); | ||
const feature_1 = require("../feature"); | ||
const request_1 = require("../request"); | ||
@@ -45,4 +46,4 @@ const url_utils_1 = require("../url-utils"); | ||
// On re-connect it guarantees catching up with the latest state. | ||
this.eventSource.addEventListener('unleash-connected', (event) => { | ||
this.handleFlagsFromStream(event); | ||
this.eventSource.addEventListener('unleash-connected', async (event) => { | ||
await this.handleFlagsFromStream(event); | ||
}); | ||
@@ -55,6 +56,6 @@ this.eventSource.addEventListener('unleash-updated', this.handleFlagsFromStream.bind(this)); | ||
} | ||
handleFlagsFromStream(event) { | ||
async handleFlagsFromStream(event) { | ||
try { | ||
const data = JSON.parse(event.data); | ||
this.saveDelta(data); | ||
const data = (0, feature_1.parseClientFeaturesDelta)(JSON.parse(event.data)); | ||
await this.saveDelta(data); | ||
} | ||
@@ -310,3 +311,3 @@ catch (err) { | ||
if (this.mode.type === 'polling' && this.mode.format === 'delta') { | ||
await this.saveDelta(data); | ||
await this.saveDelta((0, feature_1.parseClientFeaturesDelta)(data)); | ||
} | ||
@@ -313,0 +314,0 @@ else { |
{ | ||
"name": "unleash-client", | ||
"version": "6.5.0-beta.0", | ||
"version": "6.5.0-beta.1", | ||
"description": "Unleash Client for Node", | ||
@@ -5,0 +5,0 @@ "license": "Apache-2.0", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
252155
3202