@flopflip/launchdarkly-adapter 12.5.3 → 12.5.5
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.
|
@@ -129,14 +129,12 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
129
129
|
var _value = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(nextUser) {
|
|
130
130
|
var _classPrivateFieldLoo;
|
|
131
131
|
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
|
|
132
|
-
while (1) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
return _context.stop();
|
|
139
|
-
}
|
|
132
|
+
while (1) switch (_context.prev = _context.next) {
|
|
133
|
+
case 0:
|
|
134
|
+
return _context.abrupt("return", (_classPrivateFieldLoo = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) !== null && _classPrivateFieldLoo !== void 0 && _classPrivateFieldLoo.identify ? _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.identify(nextUser) : Promise.reject(new Error('Can not change user context: client not yet initialized.')));
|
|
135
|
+
case 1:
|
|
136
|
+
case "end":
|
|
137
|
+
return _context.stop();
|
|
140
138
|
}
|
|
141
139
|
}, _callee);
|
|
142
140
|
}));
|
|
@@ -152,78 +150,72 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
152
150
|
var _value2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee4(_ref5) {
|
|
153
151
|
var flags, throwOnInitializationFailure;
|
|
154
152
|
return _regeneratorRuntime__default["default"].wrap(function _callee4$(_context4) {
|
|
155
|
-
while (1) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
if (flagsFromSdk) {
|
|
183
|
-
normalizedFlags = adapterUtilities.normalizeFlags(flagsFromSdk);
|
|
184
|
-
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
185
|
-
_this.updateFlags(_flags);
|
|
186
|
-
}
|
|
187
|
-
_this.setConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
188
|
-
return _context2.abrupt("return", Promise.resolve({
|
|
189
|
-
flagsFromSdk: flagsFromSdk,
|
|
190
|
-
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
191
|
-
}));
|
|
192
|
-
case 4:
|
|
193
|
-
case "end":
|
|
194
|
-
return _context2.stop();
|
|
153
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
154
|
+
case 0:
|
|
155
|
+
flags = _ref5.flags, throwOnInitializationFailure = _ref5.throwOnInitializationFailure;
|
|
156
|
+
if (!_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
157
|
+
_context4.next = 3;
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
return _context4.abrupt("return", _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.waitForInitialization().then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee2() {
|
|
161
|
+
var flagsFromSdk, _i, _Object$entries, _ref7, _ref8, requestedFlagName, defaultFlagValue, denormalizedRequestedFlagName, normalizedFlags, _flags;
|
|
162
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee2$(_context2) {
|
|
163
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
164
|
+
case 0:
|
|
165
|
+
if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && !flags) {
|
|
166
|
+
flagsFromSdk = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.allFlags();
|
|
167
|
+
} else if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && flags) {
|
|
168
|
+
flagsFromSdk = {};
|
|
169
|
+
for (_i = 0, _Object$entries = Object.entries(flags); _i < _Object$entries.length; _i++) {
|
|
170
|
+
_ref7 = _Object$entries[_i];
|
|
171
|
+
_ref8 = _slicedToArray(_ref7, 2);
|
|
172
|
+
requestedFlagName = _ref8[0];
|
|
173
|
+
defaultFlagValue = _ref8[1];
|
|
174
|
+
denormalizedRequestedFlagName = adapterUtilities.denormalizeFlagName(requestedFlagName);
|
|
175
|
+
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
176
|
+
}
|
|
195
177
|
}
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
while (1) {
|
|
201
|
-
switch (_context3.prev = _context3.next) {
|
|
202
|
-
case 0:
|
|
203
|
-
if (!throwOnInitializationFailure) {
|
|
204
|
-
_context3.next = 2;
|
|
205
|
-
break;
|
|
206
|
-
}
|
|
207
|
-
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
208
|
-
case 2:
|
|
209
|
-
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
210
|
-
return _context3.abrupt("return", Promise.resolve({
|
|
211
|
-
flagsFromSdk: undefined,
|
|
212
|
-
initializationStatus: types.AdapterInitializationStatus.Failed
|
|
213
|
-
}));
|
|
214
|
-
case 4:
|
|
215
|
-
case "end":
|
|
216
|
-
return _context3.stop();
|
|
178
|
+
if (flagsFromSdk) {
|
|
179
|
+
normalizedFlags = adapterUtilities.normalizeFlags(flagsFromSdk);
|
|
180
|
+
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
181
|
+
_this.updateFlags(_flags);
|
|
217
182
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
183
|
+
_this.setConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
184
|
+
return _context2.abrupt("return", Promise.resolve({
|
|
185
|
+
flagsFromSdk: flagsFromSdk,
|
|
186
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
187
|
+
}));
|
|
188
|
+
case 4:
|
|
189
|
+
case "end":
|
|
190
|
+
return _context2.stop();
|
|
191
|
+
}
|
|
192
|
+
}, _callee2);
|
|
193
|
+
}))).catch( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee3() {
|
|
194
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee3$(_context3) {
|
|
195
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
196
|
+
case 0:
|
|
197
|
+
if (!throwOnInitializationFailure) {
|
|
198
|
+
_context3.next = 2;
|
|
199
|
+
break;
|
|
200
|
+
}
|
|
201
|
+
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
202
|
+
case 2:
|
|
203
|
+
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
204
|
+
return _context3.abrupt("return", Promise.resolve({
|
|
205
|
+
flagsFromSdk: undefined,
|
|
206
|
+
initializationStatus: types.AdapterInitializationStatus.Failed
|
|
207
|
+
}));
|
|
208
|
+
case 4:
|
|
209
|
+
case "end":
|
|
210
|
+
return _context3.stop();
|
|
211
|
+
}
|
|
212
|
+
}, _callee3);
|
|
213
|
+
}))));
|
|
214
|
+
case 3:
|
|
215
|
+
return _context4.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: can not subscribe with non initialized client.')));
|
|
216
|
+
case 4:
|
|
217
|
+
case "end":
|
|
218
|
+
return _context4.stop();
|
|
227
219
|
}
|
|
228
220
|
}, _callee4);
|
|
229
221
|
}));
|
|
@@ -243,9 +235,9 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
243
235
|
});
|
|
244
236
|
Object.defineProperty(this, _setupFlagSubcription, {
|
|
245
237
|
writable: true,
|
|
246
|
-
value: function value(
|
|
247
|
-
var flagsFromSdk =
|
|
248
|
-
flagsUpdateDelayMs =
|
|
238
|
+
value: function value(_ref10) {
|
|
239
|
+
var flagsFromSdk = _ref10.flagsFromSdk,
|
|
240
|
+
flagsUpdateDelayMs = _ref10.flagsUpdateDelayMs;
|
|
249
241
|
var _loop = function _loop(flagName) {
|
|
250
242
|
// Dispatch whenever a configured flag value changes
|
|
251
243
|
if (Object.prototype.hasOwnProperty.call(flagsFromSdk, flagName) && _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
@@ -319,50 +311,48 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
319
311
|
_sdk$clientOptions;
|
|
320
312
|
var handleFlagsChange, handleStatusChange, sdk, user, flags, _adapterArgs$subscrib, subscribeToFlagChanges, _adapterArgs$throwOnI, throwOnInitializationFailure, flagsUpdateDelayMs;
|
|
321
313
|
return _regeneratorRuntime__default["default"].wrap(function _callee5$(_context5) {
|
|
322
|
-
while (1) {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
id: _this2.id
|
|
330
|
-
});
|
|
331
|
-
};
|
|
332
|
-
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
333
|
-
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
334
|
-
adapterEventHandlers.onStatusStateChange({
|
|
335
|
-
status: nextStatus,
|
|
336
|
-
id: _this2.id
|
|
337
|
-
});
|
|
338
|
-
};
|
|
339
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = types.AdapterConfigurationStatus.Configuring;
|
|
340
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
341
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
342
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
343
|
-
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
314
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
315
|
+
case 0:
|
|
316
|
+
handleFlagsChange = function handleFlagsChange(nextFlags) {
|
|
317
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
318
|
+
adapterEventHandlers.onFlagsStateChange({
|
|
319
|
+
flags: nextFlags,
|
|
320
|
+
id: _this2.id
|
|
344
321
|
});
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
})
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
322
|
+
};
|
|
323
|
+
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
324
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
325
|
+
adapterEventHandlers.onStatusStateChange({
|
|
326
|
+
status: nextStatus,
|
|
327
|
+
id: _this2.id
|
|
328
|
+
});
|
|
329
|
+
};
|
|
330
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = types.AdapterConfigurationStatus.Configuring;
|
|
331
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
332
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
333
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
334
|
+
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
335
|
+
});
|
|
336
|
+
sdk = adapterArgs.sdk, user = adapterArgs.user, flags = adapterArgs.flags, _adapterArgs$subscrib = adapterArgs.subscribeToFlagChanges, subscribeToFlagChanges = _adapterArgs$subscrib === void 0 ? true : _adapterArgs$subscrib, _adapterArgs$throwOnI = adapterArgs.throwOnInitializationFailure, throwOnInitializationFailure = _adapterArgs$throwOnI === void 0 ? false : _adapterArgs$throwOnI, flagsUpdateDelayMs = adapterArgs.flagsUpdateDelayMs;
|
|
337
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](user);
|
|
338
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].client = _classPrivateFieldLooseBase(this, _initializeClient)[_initializeClient](sdk.clientSideId, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, (_sdk$clientOptions = sdk.clientOptions) !== null && _sdk$clientOptions !== void 0 ? _sdk$clientOptions : {});
|
|
339
|
+
return _context5.abrupt("return", _classPrivateFieldLooseBase(this, _getInitialFlags)[_getInitialFlags]({
|
|
340
|
+
flags: flags,
|
|
341
|
+
throwOnInitializationFailure: throwOnInitializationFailure
|
|
342
|
+
}).then(function (_ref11) {
|
|
343
|
+
var flagsFromSdk = _ref11.flagsFromSdk,
|
|
344
|
+
initializationStatus = _ref11.initializationStatus;
|
|
345
|
+
if (subscribeToFlagChanges && flagsFromSdk) _classPrivateFieldLooseBase(_this2, _setupFlagSubcription)[_setupFlagSubcription]({
|
|
346
|
+
flagsFromSdk: flagsFromSdk,
|
|
347
|
+
flagsUpdateDelayMs: flagsUpdateDelayMs
|
|
348
|
+
});
|
|
349
|
+
return {
|
|
350
|
+
initializationStatus: initializationStatus
|
|
351
|
+
};
|
|
352
|
+
}));
|
|
353
|
+
case 10:
|
|
354
|
+
case "end":
|
|
355
|
+
return _context5.stop();
|
|
366
356
|
}
|
|
367
357
|
}, _callee5, this);
|
|
368
358
|
}));
|
|
@@ -377,35 +367,33 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
377
367
|
var _reconfigure = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee6(adapterArgs, _adapterEventHandlers) {
|
|
378
368
|
var nextUser;
|
|
379
369
|
return _regeneratorRuntime__default["default"].wrap(function _callee6$(_context6) {
|
|
380
|
-
while (1) {
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
return _context6.stop();
|
|
408
|
-
}
|
|
370
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
371
|
+
case 0:
|
|
372
|
+
if (this.getIsConfigurationStatus(types.AdapterConfigurationStatus.Configured)) {
|
|
373
|
+
_context6.next = 2;
|
|
374
|
+
break;
|
|
375
|
+
}
|
|
376
|
+
return _context6.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: please configure adapter before reconfiguring.')));
|
|
377
|
+
case 2:
|
|
378
|
+
nextUser = adapterArgs.user;
|
|
379
|
+
if (isEqual__default["default"](_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, nextUser)) {
|
|
380
|
+
_context6.next = 8;
|
|
381
|
+
break;
|
|
382
|
+
}
|
|
383
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](nextUser);
|
|
384
|
+
_context6.next = 7;
|
|
385
|
+
return _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user);
|
|
386
|
+
case 7:
|
|
387
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
388
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
389
|
+
}));
|
|
390
|
+
case 8:
|
|
391
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
392
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
393
|
+
}));
|
|
394
|
+
case 9:
|
|
395
|
+
case "end":
|
|
396
|
+
return _context6.stop();
|
|
409
397
|
}
|
|
410
398
|
}, _callee6, this);
|
|
411
399
|
}));
|
|
@@ -443,22 +431,20 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
443
431
|
var _updateUserContext = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee7(updatedUserProps) {
|
|
444
432
|
var isAdapterConfigured;
|
|
445
433
|
return _regeneratorRuntime__default["default"].wrap(function _callee7$(_context7) {
|
|
446
|
-
while (1) {
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
return _context7.stop();
|
|
461
|
-
}
|
|
434
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
435
|
+
case 0:
|
|
436
|
+
isAdapterConfigured = this.getIsConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
437
|
+
warning__default["default"](isAdapterConfigured, '@flopflip/launchdarkly-adapter: adapter not configured. User context can not be updated before.');
|
|
438
|
+
if (isAdapterConfigured) {
|
|
439
|
+
_context7.next = 4;
|
|
440
|
+
break;
|
|
441
|
+
}
|
|
442
|
+
return _context7.abrupt("return", Promise.reject(new Error('Can not update user context: adapter not yet configured.')));
|
|
443
|
+
case 4:
|
|
444
|
+
return _context7.abrupt("return", _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_objectSpread(_objectSpread({}, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user), updatedUserProps)));
|
|
445
|
+
case 5:
|
|
446
|
+
case "end":
|
|
447
|
+
return _context7.stop();
|
|
462
448
|
}
|
|
463
449
|
}, _callee7, this);
|
|
464
450
|
}));
|
|
@@ -473,7 +459,7 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
473
459
|
var adapter = new LaunchDarklyAdapter();
|
|
474
460
|
adapterUtilities.exposeGlobally(adapter);
|
|
475
461
|
|
|
476
|
-
var version = "12.5.
|
|
462
|
+
var version = "12.5.5";
|
|
477
463
|
|
|
478
464
|
exports["default"] = adapter;
|
|
479
465
|
exports.version = version;
|
|
@@ -129,14 +129,12 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
129
129
|
var _value = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(nextUser) {
|
|
130
130
|
var _classPrivateFieldLoo;
|
|
131
131
|
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
|
|
132
|
-
while (1) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
return _context.stop();
|
|
139
|
-
}
|
|
132
|
+
while (1) switch (_context.prev = _context.next) {
|
|
133
|
+
case 0:
|
|
134
|
+
return _context.abrupt("return", (_classPrivateFieldLoo = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) !== null && _classPrivateFieldLoo !== void 0 && _classPrivateFieldLoo.identify ? _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.identify(nextUser) : Promise.reject(new Error('Can not change user context: client not yet initialized.')));
|
|
135
|
+
case 1:
|
|
136
|
+
case "end":
|
|
137
|
+
return _context.stop();
|
|
140
138
|
}
|
|
141
139
|
}, _callee);
|
|
142
140
|
}));
|
|
@@ -152,78 +150,72 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
152
150
|
var _value2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee4(_ref5) {
|
|
153
151
|
var flags, throwOnInitializationFailure;
|
|
154
152
|
return _regeneratorRuntime__default["default"].wrap(function _callee4$(_context4) {
|
|
155
|
-
while (1) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
if (flagsFromSdk) {
|
|
183
|
-
normalizedFlags = adapterUtilities.normalizeFlags(flagsFromSdk);
|
|
184
|
-
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
185
|
-
_this.updateFlags(_flags);
|
|
186
|
-
}
|
|
187
|
-
_this.setConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
188
|
-
return _context2.abrupt("return", Promise.resolve({
|
|
189
|
-
flagsFromSdk: flagsFromSdk,
|
|
190
|
-
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
191
|
-
}));
|
|
192
|
-
case 4:
|
|
193
|
-
case "end":
|
|
194
|
-
return _context2.stop();
|
|
153
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
154
|
+
case 0:
|
|
155
|
+
flags = _ref5.flags, throwOnInitializationFailure = _ref5.throwOnInitializationFailure;
|
|
156
|
+
if (!_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
157
|
+
_context4.next = 3;
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
return _context4.abrupt("return", _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.waitForInitialization().then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee2() {
|
|
161
|
+
var flagsFromSdk, _i, _Object$entries, _ref7, _ref8, requestedFlagName, defaultFlagValue, denormalizedRequestedFlagName, normalizedFlags, _flags;
|
|
162
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee2$(_context2) {
|
|
163
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
164
|
+
case 0:
|
|
165
|
+
if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && !flags) {
|
|
166
|
+
flagsFromSdk = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.allFlags();
|
|
167
|
+
} else if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && flags) {
|
|
168
|
+
flagsFromSdk = {};
|
|
169
|
+
for (_i = 0, _Object$entries = Object.entries(flags); _i < _Object$entries.length; _i++) {
|
|
170
|
+
_ref7 = _Object$entries[_i];
|
|
171
|
+
_ref8 = _slicedToArray(_ref7, 2);
|
|
172
|
+
requestedFlagName = _ref8[0];
|
|
173
|
+
defaultFlagValue = _ref8[1];
|
|
174
|
+
denormalizedRequestedFlagName = adapterUtilities.denormalizeFlagName(requestedFlagName);
|
|
175
|
+
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
176
|
+
}
|
|
195
177
|
}
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
while (1) {
|
|
201
|
-
switch (_context3.prev = _context3.next) {
|
|
202
|
-
case 0:
|
|
203
|
-
if (!throwOnInitializationFailure) {
|
|
204
|
-
_context3.next = 2;
|
|
205
|
-
break;
|
|
206
|
-
}
|
|
207
|
-
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
208
|
-
case 2:
|
|
209
|
-
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
210
|
-
return _context3.abrupt("return", Promise.resolve({
|
|
211
|
-
flagsFromSdk: undefined,
|
|
212
|
-
initializationStatus: types.AdapterInitializationStatus.Failed
|
|
213
|
-
}));
|
|
214
|
-
case 4:
|
|
215
|
-
case "end":
|
|
216
|
-
return _context3.stop();
|
|
178
|
+
if (flagsFromSdk) {
|
|
179
|
+
normalizedFlags = adapterUtilities.normalizeFlags(flagsFromSdk);
|
|
180
|
+
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
181
|
+
_this.updateFlags(_flags);
|
|
217
182
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
183
|
+
_this.setConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
184
|
+
return _context2.abrupt("return", Promise.resolve({
|
|
185
|
+
flagsFromSdk: flagsFromSdk,
|
|
186
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
187
|
+
}));
|
|
188
|
+
case 4:
|
|
189
|
+
case "end":
|
|
190
|
+
return _context2.stop();
|
|
191
|
+
}
|
|
192
|
+
}, _callee2);
|
|
193
|
+
}))).catch( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee3() {
|
|
194
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee3$(_context3) {
|
|
195
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
196
|
+
case 0:
|
|
197
|
+
if (!throwOnInitializationFailure) {
|
|
198
|
+
_context3.next = 2;
|
|
199
|
+
break;
|
|
200
|
+
}
|
|
201
|
+
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
202
|
+
case 2:
|
|
203
|
+
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
204
|
+
return _context3.abrupt("return", Promise.resolve({
|
|
205
|
+
flagsFromSdk: undefined,
|
|
206
|
+
initializationStatus: types.AdapterInitializationStatus.Failed
|
|
207
|
+
}));
|
|
208
|
+
case 4:
|
|
209
|
+
case "end":
|
|
210
|
+
return _context3.stop();
|
|
211
|
+
}
|
|
212
|
+
}, _callee3);
|
|
213
|
+
}))));
|
|
214
|
+
case 3:
|
|
215
|
+
return _context4.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: can not subscribe with non initialized client.')));
|
|
216
|
+
case 4:
|
|
217
|
+
case "end":
|
|
218
|
+
return _context4.stop();
|
|
227
219
|
}
|
|
228
220
|
}, _callee4);
|
|
229
221
|
}));
|
|
@@ -243,9 +235,9 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
243
235
|
});
|
|
244
236
|
Object.defineProperty(this, _setupFlagSubcription, {
|
|
245
237
|
writable: true,
|
|
246
|
-
value: function value(
|
|
247
|
-
var flagsFromSdk =
|
|
248
|
-
flagsUpdateDelayMs =
|
|
238
|
+
value: function value(_ref10) {
|
|
239
|
+
var flagsFromSdk = _ref10.flagsFromSdk,
|
|
240
|
+
flagsUpdateDelayMs = _ref10.flagsUpdateDelayMs;
|
|
249
241
|
var _loop = function _loop(flagName) {
|
|
250
242
|
// Dispatch whenever a configured flag value changes
|
|
251
243
|
if (Object.prototype.hasOwnProperty.call(flagsFromSdk, flagName) && _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
@@ -319,50 +311,48 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
319
311
|
_sdk$clientOptions;
|
|
320
312
|
var handleFlagsChange, handleStatusChange, sdk, user, flags, _adapterArgs$subscrib, subscribeToFlagChanges, _adapterArgs$throwOnI, throwOnInitializationFailure, flagsUpdateDelayMs;
|
|
321
313
|
return _regeneratorRuntime__default["default"].wrap(function _callee5$(_context5) {
|
|
322
|
-
while (1) {
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
id: _this2.id
|
|
330
|
-
});
|
|
331
|
-
};
|
|
332
|
-
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
333
|
-
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
334
|
-
adapterEventHandlers.onStatusStateChange({
|
|
335
|
-
status: nextStatus,
|
|
336
|
-
id: _this2.id
|
|
337
|
-
});
|
|
338
|
-
};
|
|
339
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = types.AdapterConfigurationStatus.Configuring;
|
|
340
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
341
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
342
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
343
|
-
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
314
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
315
|
+
case 0:
|
|
316
|
+
handleFlagsChange = function handleFlagsChange(nextFlags) {
|
|
317
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
318
|
+
adapterEventHandlers.onFlagsStateChange({
|
|
319
|
+
flags: nextFlags,
|
|
320
|
+
id: _this2.id
|
|
344
321
|
});
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
})
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
322
|
+
};
|
|
323
|
+
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
324
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
325
|
+
adapterEventHandlers.onStatusStateChange({
|
|
326
|
+
status: nextStatus,
|
|
327
|
+
id: _this2.id
|
|
328
|
+
});
|
|
329
|
+
};
|
|
330
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = types.AdapterConfigurationStatus.Configuring;
|
|
331
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
332
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
333
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
334
|
+
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
335
|
+
});
|
|
336
|
+
sdk = adapterArgs.sdk, user = adapterArgs.user, flags = adapterArgs.flags, _adapterArgs$subscrib = adapterArgs.subscribeToFlagChanges, subscribeToFlagChanges = _adapterArgs$subscrib === void 0 ? true : _adapterArgs$subscrib, _adapterArgs$throwOnI = adapterArgs.throwOnInitializationFailure, throwOnInitializationFailure = _adapterArgs$throwOnI === void 0 ? false : _adapterArgs$throwOnI, flagsUpdateDelayMs = adapterArgs.flagsUpdateDelayMs;
|
|
337
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](user);
|
|
338
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].client = _classPrivateFieldLooseBase(this, _initializeClient)[_initializeClient](sdk.clientSideId, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, (_sdk$clientOptions = sdk.clientOptions) !== null && _sdk$clientOptions !== void 0 ? _sdk$clientOptions : {});
|
|
339
|
+
return _context5.abrupt("return", _classPrivateFieldLooseBase(this, _getInitialFlags)[_getInitialFlags]({
|
|
340
|
+
flags: flags,
|
|
341
|
+
throwOnInitializationFailure: throwOnInitializationFailure
|
|
342
|
+
}).then(function (_ref11) {
|
|
343
|
+
var flagsFromSdk = _ref11.flagsFromSdk,
|
|
344
|
+
initializationStatus = _ref11.initializationStatus;
|
|
345
|
+
if (subscribeToFlagChanges && flagsFromSdk) _classPrivateFieldLooseBase(_this2, _setupFlagSubcription)[_setupFlagSubcription]({
|
|
346
|
+
flagsFromSdk: flagsFromSdk,
|
|
347
|
+
flagsUpdateDelayMs: flagsUpdateDelayMs
|
|
348
|
+
});
|
|
349
|
+
return {
|
|
350
|
+
initializationStatus: initializationStatus
|
|
351
|
+
};
|
|
352
|
+
}));
|
|
353
|
+
case 10:
|
|
354
|
+
case "end":
|
|
355
|
+
return _context5.stop();
|
|
366
356
|
}
|
|
367
357
|
}, _callee5, this);
|
|
368
358
|
}));
|
|
@@ -377,35 +367,33 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
377
367
|
var _reconfigure = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee6(adapterArgs, _adapterEventHandlers) {
|
|
378
368
|
var nextUser;
|
|
379
369
|
return _regeneratorRuntime__default["default"].wrap(function _callee6$(_context6) {
|
|
380
|
-
while (1) {
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
return _context6.stop();
|
|
408
|
-
}
|
|
370
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
371
|
+
case 0:
|
|
372
|
+
if (this.getIsConfigurationStatus(types.AdapterConfigurationStatus.Configured)) {
|
|
373
|
+
_context6.next = 2;
|
|
374
|
+
break;
|
|
375
|
+
}
|
|
376
|
+
return _context6.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: please configure adapter before reconfiguring.')));
|
|
377
|
+
case 2:
|
|
378
|
+
nextUser = adapterArgs.user;
|
|
379
|
+
if (isEqual__default["default"](_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, nextUser)) {
|
|
380
|
+
_context6.next = 8;
|
|
381
|
+
break;
|
|
382
|
+
}
|
|
383
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](nextUser);
|
|
384
|
+
_context6.next = 7;
|
|
385
|
+
return _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user);
|
|
386
|
+
case 7:
|
|
387
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
388
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
389
|
+
}));
|
|
390
|
+
case 8:
|
|
391
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
392
|
+
initializationStatus: types.AdapterInitializationStatus.Succeeded
|
|
393
|
+
}));
|
|
394
|
+
case 9:
|
|
395
|
+
case "end":
|
|
396
|
+
return _context6.stop();
|
|
409
397
|
}
|
|
410
398
|
}, _callee6, this);
|
|
411
399
|
}));
|
|
@@ -443,22 +431,20 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
443
431
|
var _updateUserContext = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee7(updatedUserProps) {
|
|
444
432
|
var isAdapterConfigured;
|
|
445
433
|
return _regeneratorRuntime__default["default"].wrap(function _callee7$(_context7) {
|
|
446
|
-
while (1) {
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
return _context7.stop();
|
|
461
|
-
}
|
|
434
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
435
|
+
case 0:
|
|
436
|
+
isAdapterConfigured = this.getIsConfigurationStatus(types.AdapterConfigurationStatus.Configured);
|
|
437
|
+
warning__default["default"](isAdapterConfigured, '@flopflip/launchdarkly-adapter: adapter not configured. User context can not be updated before.');
|
|
438
|
+
if (isAdapterConfigured) {
|
|
439
|
+
_context7.next = 4;
|
|
440
|
+
break;
|
|
441
|
+
}
|
|
442
|
+
return _context7.abrupt("return", Promise.reject(new Error('Can not update user context: adapter not yet configured.')));
|
|
443
|
+
case 4:
|
|
444
|
+
return _context7.abrupt("return", _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_objectSpread(_objectSpread({}, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user), updatedUserProps)));
|
|
445
|
+
case 5:
|
|
446
|
+
case "end":
|
|
447
|
+
return _context7.stop();
|
|
462
448
|
}
|
|
463
449
|
}, _callee7, this);
|
|
464
450
|
}));
|
|
@@ -473,7 +459,7 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
473
459
|
var adapter = new LaunchDarklyAdapter();
|
|
474
460
|
adapterUtilities.exposeGlobally(adapter);
|
|
475
461
|
|
|
476
|
-
var version = "12.5.
|
|
462
|
+
var version = "12.5.5";
|
|
477
463
|
|
|
478
464
|
exports["default"] = adapter;
|
|
479
465
|
exports.version = version;
|
|
@@ -116,14 +116,12 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
116
116
|
var _value = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(nextUser) {
|
|
117
117
|
var _classPrivateFieldLoo;
|
|
118
118
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
119
|
-
while (1) {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
return _context.stop();
|
|
126
|
-
}
|
|
119
|
+
while (1) switch (_context.prev = _context.next) {
|
|
120
|
+
case 0:
|
|
121
|
+
return _context.abrupt("return", (_classPrivateFieldLoo = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) !== null && _classPrivateFieldLoo !== void 0 && _classPrivateFieldLoo.identify ? _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.identify(nextUser) : Promise.reject(new Error('Can not change user context: client not yet initialized.')));
|
|
122
|
+
case 1:
|
|
123
|
+
case "end":
|
|
124
|
+
return _context.stop();
|
|
127
125
|
}
|
|
128
126
|
}, _callee);
|
|
129
127
|
}));
|
|
@@ -139,78 +137,72 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
139
137
|
var _value2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(_ref5) {
|
|
140
138
|
var flags, throwOnInitializationFailure;
|
|
141
139
|
return _regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
142
|
-
while (1) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
if (flagsFromSdk) {
|
|
170
|
-
normalizedFlags = normalizeFlags(flagsFromSdk);
|
|
171
|
-
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
172
|
-
_this.updateFlags(_flags);
|
|
173
|
-
}
|
|
174
|
-
_this.setConfigurationStatus(AdapterConfigurationStatus.Configured);
|
|
175
|
-
return _context2.abrupt("return", Promise.resolve({
|
|
176
|
-
flagsFromSdk: flagsFromSdk,
|
|
177
|
-
initializationStatus: AdapterInitializationStatus.Succeeded
|
|
178
|
-
}));
|
|
179
|
-
case 4:
|
|
180
|
-
case "end":
|
|
181
|
-
return _context2.stop();
|
|
140
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
141
|
+
case 0:
|
|
142
|
+
flags = _ref5.flags, throwOnInitializationFailure = _ref5.throwOnInitializationFailure;
|
|
143
|
+
if (!_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
144
|
+
_context4.next = 3;
|
|
145
|
+
break;
|
|
146
|
+
}
|
|
147
|
+
return _context4.abrupt("return", _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.waitForInitialization().then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
148
|
+
var flagsFromSdk, _i, _Object$entries, _ref7, _ref8, requestedFlagName, defaultFlagValue, denormalizedRequestedFlagName, normalizedFlags, _flags;
|
|
149
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
150
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
151
|
+
case 0:
|
|
152
|
+
if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && !flags) {
|
|
153
|
+
flagsFromSdk = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.allFlags();
|
|
154
|
+
} else if (_classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client && flags) {
|
|
155
|
+
flagsFromSdk = {};
|
|
156
|
+
for (_i = 0, _Object$entries = Object.entries(flags); _i < _Object$entries.length; _i++) {
|
|
157
|
+
_ref7 = _Object$entries[_i];
|
|
158
|
+
_ref8 = _slicedToArray(_ref7, 2);
|
|
159
|
+
requestedFlagName = _ref8[0];
|
|
160
|
+
defaultFlagValue = _ref8[1];
|
|
161
|
+
denormalizedRequestedFlagName = denormalizeFlagName(requestedFlagName);
|
|
162
|
+
flagsFromSdk[denormalizedRequestedFlagName] = _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client.variation(denormalizedRequestedFlagName, defaultFlagValue);
|
|
163
|
+
}
|
|
182
164
|
}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
while (1) {
|
|
188
|
-
switch (_context3.prev = _context3.next) {
|
|
189
|
-
case 0:
|
|
190
|
-
if (!throwOnInitializationFailure) {
|
|
191
|
-
_context3.next = 2;
|
|
192
|
-
break;
|
|
193
|
-
}
|
|
194
|
-
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
195
|
-
case 2:
|
|
196
|
-
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
197
|
-
return _context3.abrupt("return", Promise.resolve({
|
|
198
|
-
flagsFromSdk: undefined,
|
|
199
|
-
initializationStatus: AdapterInitializationStatus.Failed
|
|
200
|
-
}));
|
|
201
|
-
case 4:
|
|
202
|
-
case "end":
|
|
203
|
-
return _context3.stop();
|
|
165
|
+
if (flagsFromSdk) {
|
|
166
|
+
normalizedFlags = normalizeFlags(flagsFromSdk);
|
|
167
|
+
_flags = _classPrivateFieldLooseBase(_this, _withoutUnsubscribedOrLockedFlags)[_withoutUnsubscribedOrLockedFlags](normalizedFlags);
|
|
168
|
+
_this.updateFlags(_flags);
|
|
204
169
|
}
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
170
|
+
_this.setConfigurationStatus(AdapterConfigurationStatus.Configured);
|
|
171
|
+
return _context2.abrupt("return", Promise.resolve({
|
|
172
|
+
flagsFromSdk: flagsFromSdk,
|
|
173
|
+
initializationStatus: AdapterInitializationStatus.Succeeded
|
|
174
|
+
}));
|
|
175
|
+
case 4:
|
|
176
|
+
case "end":
|
|
177
|
+
return _context2.stop();
|
|
178
|
+
}
|
|
179
|
+
}, _callee2);
|
|
180
|
+
}))).catch( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
|
|
181
|
+
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
182
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
183
|
+
case 0:
|
|
184
|
+
if (!throwOnInitializationFailure) {
|
|
185
|
+
_context3.next = 2;
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
return _context3.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: adapter failed to initialize.')));
|
|
189
|
+
case 2:
|
|
190
|
+
console.warn('@flopflip/launchdarkly-adapter: adapter failed to initialize.');
|
|
191
|
+
return _context3.abrupt("return", Promise.resolve({
|
|
192
|
+
flagsFromSdk: undefined,
|
|
193
|
+
initializationStatus: AdapterInitializationStatus.Failed
|
|
194
|
+
}));
|
|
195
|
+
case 4:
|
|
196
|
+
case "end":
|
|
197
|
+
return _context3.stop();
|
|
198
|
+
}
|
|
199
|
+
}, _callee3);
|
|
200
|
+
}))));
|
|
201
|
+
case 3:
|
|
202
|
+
return _context4.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: can not subscribe with non initialized client.')));
|
|
203
|
+
case 4:
|
|
204
|
+
case "end":
|
|
205
|
+
return _context4.stop();
|
|
214
206
|
}
|
|
215
207
|
}, _callee4);
|
|
216
208
|
}));
|
|
@@ -230,9 +222,9 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
230
222
|
});
|
|
231
223
|
Object.defineProperty(this, _setupFlagSubcription, {
|
|
232
224
|
writable: true,
|
|
233
|
-
value: function value(
|
|
234
|
-
var flagsFromSdk =
|
|
235
|
-
flagsUpdateDelayMs =
|
|
225
|
+
value: function value(_ref10) {
|
|
226
|
+
var flagsFromSdk = _ref10.flagsFromSdk,
|
|
227
|
+
flagsUpdateDelayMs = _ref10.flagsUpdateDelayMs;
|
|
236
228
|
var _loop = function _loop(flagName) {
|
|
237
229
|
// Dispatch whenever a configured flag value changes
|
|
238
230
|
if (Object.prototype.hasOwnProperty.call(flagsFromSdk, flagName) && _classPrivateFieldLooseBase(_this, _adapterState)[_adapterState].client) {
|
|
@@ -306,50 +298,48 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
306
298
|
_sdk$clientOptions;
|
|
307
299
|
var handleFlagsChange, handleStatusChange, sdk, user, flags, _adapterArgs$subscrib, subscribeToFlagChanges, _adapterArgs$throwOnI, throwOnInitializationFailure, flagsUpdateDelayMs;
|
|
308
300
|
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
309
|
-
while (1) {
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
id: _this2.id
|
|
317
|
-
});
|
|
318
|
-
};
|
|
319
|
-
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
320
|
-
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
321
|
-
adapterEventHandlers.onStatusStateChange({
|
|
322
|
-
status: nextStatus,
|
|
323
|
-
id: _this2.id
|
|
324
|
-
});
|
|
325
|
-
};
|
|
326
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = AdapterConfigurationStatus.Configuring;
|
|
327
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
328
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
329
|
-
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
330
|
-
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
301
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
302
|
+
case 0:
|
|
303
|
+
handleFlagsChange = function handleFlagsChange(nextFlags) {
|
|
304
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
305
|
+
adapterEventHandlers.onFlagsStateChange({
|
|
306
|
+
flags: nextFlags,
|
|
307
|
+
id: _this2.id
|
|
331
308
|
});
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
})
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
309
|
+
};
|
|
310
|
+
handleStatusChange = function handleStatusChange(nextStatus) {
|
|
311
|
+
if (_classPrivateFieldLooseBase(_this2, _getIsAdapterUnsubscribed)[_getIsAdapterUnsubscribed]()) return;
|
|
312
|
+
adapterEventHandlers.onStatusStateChange({
|
|
313
|
+
status: nextStatus,
|
|
314
|
+
id: _this2.id
|
|
315
|
+
});
|
|
316
|
+
};
|
|
317
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus = AdapterConfigurationStatus.Configuring;
|
|
318
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('flagsStateChange', handleFlagsChange);
|
|
319
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.on('statusStateChange', handleStatusChange);
|
|
320
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].emitter.emit('statusStateChange', {
|
|
321
|
+
configurationStatus: _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].configurationStatus
|
|
322
|
+
});
|
|
323
|
+
sdk = adapterArgs.sdk, user = adapterArgs.user, flags = adapterArgs.flags, _adapterArgs$subscrib = adapterArgs.subscribeToFlagChanges, subscribeToFlagChanges = _adapterArgs$subscrib === void 0 ? true : _adapterArgs$subscrib, _adapterArgs$throwOnI = adapterArgs.throwOnInitializationFailure, throwOnInitializationFailure = _adapterArgs$throwOnI === void 0 ? false : _adapterArgs$throwOnI, flagsUpdateDelayMs = adapterArgs.flagsUpdateDelayMs;
|
|
324
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](user);
|
|
325
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].client = _classPrivateFieldLooseBase(this, _initializeClient)[_initializeClient](sdk.clientSideId, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, (_sdk$clientOptions = sdk.clientOptions) !== null && _sdk$clientOptions !== void 0 ? _sdk$clientOptions : {});
|
|
326
|
+
return _context5.abrupt("return", _classPrivateFieldLooseBase(this, _getInitialFlags)[_getInitialFlags]({
|
|
327
|
+
flags: flags,
|
|
328
|
+
throwOnInitializationFailure: throwOnInitializationFailure
|
|
329
|
+
}).then(function (_ref11) {
|
|
330
|
+
var flagsFromSdk = _ref11.flagsFromSdk,
|
|
331
|
+
initializationStatus = _ref11.initializationStatus;
|
|
332
|
+
if (subscribeToFlagChanges && flagsFromSdk) _classPrivateFieldLooseBase(_this2, _setupFlagSubcription)[_setupFlagSubcription]({
|
|
333
|
+
flagsFromSdk: flagsFromSdk,
|
|
334
|
+
flagsUpdateDelayMs: flagsUpdateDelayMs
|
|
335
|
+
});
|
|
336
|
+
return {
|
|
337
|
+
initializationStatus: initializationStatus
|
|
338
|
+
};
|
|
339
|
+
}));
|
|
340
|
+
case 10:
|
|
341
|
+
case "end":
|
|
342
|
+
return _context5.stop();
|
|
353
343
|
}
|
|
354
344
|
}, _callee5, this);
|
|
355
345
|
}));
|
|
@@ -364,35 +354,33 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
364
354
|
var _reconfigure = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(adapterArgs, _adapterEventHandlers) {
|
|
365
355
|
var nextUser;
|
|
366
356
|
return _regeneratorRuntime.wrap(function _callee6$(_context6) {
|
|
367
|
-
while (1) {
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
return _context6.stop();
|
|
395
|
-
}
|
|
357
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
358
|
+
case 0:
|
|
359
|
+
if (this.getIsConfigurationStatus(AdapterConfigurationStatus.Configured)) {
|
|
360
|
+
_context6.next = 2;
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
return _context6.abrupt("return", Promise.reject(new Error('@flopflip/launchdarkly-adapter: please configure adapter before reconfiguring.')));
|
|
364
|
+
case 2:
|
|
365
|
+
nextUser = adapterArgs.user;
|
|
366
|
+
if (isEqual(_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user, nextUser)) {
|
|
367
|
+
_context6.next = 8;
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
370
|
+
_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user = _classPrivateFieldLooseBase(this, _ensureUser)[_ensureUser](nextUser);
|
|
371
|
+
_context6.next = 7;
|
|
372
|
+
return _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user);
|
|
373
|
+
case 7:
|
|
374
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
375
|
+
initializationStatus: AdapterInitializationStatus.Succeeded
|
|
376
|
+
}));
|
|
377
|
+
case 8:
|
|
378
|
+
return _context6.abrupt("return", Promise.resolve({
|
|
379
|
+
initializationStatus: AdapterInitializationStatus.Succeeded
|
|
380
|
+
}));
|
|
381
|
+
case 9:
|
|
382
|
+
case "end":
|
|
383
|
+
return _context6.stop();
|
|
396
384
|
}
|
|
397
385
|
}, _callee6, this);
|
|
398
386
|
}));
|
|
@@ -430,22 +418,20 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
430
418
|
var _updateUserContext = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7(updatedUserProps) {
|
|
431
419
|
var isAdapterConfigured;
|
|
432
420
|
return _regeneratorRuntime.wrap(function _callee7$(_context7) {
|
|
433
|
-
while (1) {
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
return _context7.stop();
|
|
448
|
-
}
|
|
421
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
422
|
+
case 0:
|
|
423
|
+
isAdapterConfigured = this.getIsConfigurationStatus(AdapterConfigurationStatus.Configured);
|
|
424
|
+
warning(isAdapterConfigured, '@flopflip/launchdarkly-adapter: adapter not configured. User context can not be updated before.');
|
|
425
|
+
if (isAdapterConfigured) {
|
|
426
|
+
_context7.next = 4;
|
|
427
|
+
break;
|
|
428
|
+
}
|
|
429
|
+
return _context7.abrupt("return", Promise.reject(new Error('Can not update user context: adapter not yet configured.')));
|
|
430
|
+
case 4:
|
|
431
|
+
return _context7.abrupt("return", _classPrivateFieldLooseBase(this, _changeUserContext)[_changeUserContext](_objectSpread(_objectSpread({}, _classPrivateFieldLooseBase(this, _adapterState)[_adapterState].user), updatedUserProps)));
|
|
432
|
+
case 5:
|
|
433
|
+
case "end":
|
|
434
|
+
return _context7.stop();
|
|
449
435
|
}
|
|
450
436
|
}, _callee7, this);
|
|
451
437
|
}));
|
|
@@ -460,6 +446,6 @@ var LaunchDarklyAdapter = /*#__PURE__*/function () {
|
|
|
460
446
|
var adapter = new LaunchDarklyAdapter();
|
|
461
447
|
exposeGlobally(adapter);
|
|
462
448
|
|
|
463
|
-
var version = "12.5.
|
|
449
|
+
var version = "12.5.5";
|
|
464
450
|
|
|
465
451
|
export { adapter as default, version };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flopflip/launchdarkly-adapter",
|
|
3
|
-
"version": "12.5.
|
|
3
|
+
"version": "12.5.5",
|
|
4
4
|
"description": "A adapter around the LaunchDarkly client for flipflop",
|
|
5
5
|
"main": "dist/flopflip-launchdarkly-adapter.cjs.js",
|
|
6
6
|
"module": "dist/flopflip-launchdarkly-adapter.esm.js",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"globalthis": "1.0.3"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@babel/runtime": "7.20.
|
|
30
|
-
"@flopflip/adapter-utilities": "12.5.
|
|
31
|
-
"@flopflip/types": "12.5.
|
|
29
|
+
"@babel/runtime": "7.20.7",
|
|
30
|
+
"@flopflip/adapter-utilities": "12.5.5",
|
|
31
|
+
"@flopflip/types": "12.5.5",
|
|
32
32
|
"debounce-fn": "4.0.0",
|
|
33
33
|
"launchdarkly-js-client-sdk": "2.24.2",
|
|
34
34
|
"lodash": "4.17.21",
|