@launchdarkly/js-sdk-common 2.9.0 → 2.10.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.
- package/CHANGELOG.md +9 -0
- package/dist/api/platform/Requests.d.ts +5 -0
- package/dist/api/platform/Requests.d.ts.map +1 -1
- package/dist/datasource/DataSourceErrorKinds.d.ts +7 -0
- package/dist/datasource/DataSourceErrorKinds.d.ts.map +1 -0
- package/dist/datasource/errors.d.ts +17 -0
- package/dist/datasource/errors.d.ts.map +1 -0
- package/dist/datasource/index.d.ts +4 -0
- package/dist/datasource/index.d.ts.map +1 -0
- package/dist/errors.d.ts +0 -11
- package/dist/errors.d.ts.map +1 -1
- package/dist/index.cjs +2477 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +2430 -0
- package/dist/index.mjs.map +1 -0
- package/dist/internal/events/EventSender.d.ts.map +1 -1
- package/dist/internal/index.d.ts +1 -1
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/stream/StreamingProcessor.d.ts.map +1 -1
- package/dist/internal/stream/types.d.ts +1 -1
- package/dist/internal/stream/types.d.ts.map +1 -1
- package/package.json +18 -7
- package/dist/AttributeReference.js +0 -126
- package/dist/AttributeReference.js.map +0 -1
- package/dist/Context.js +0 -382
- package/dist/Context.js.map +0 -1
- package/dist/ContextFilter.js +0 -124
- package/dist/ContextFilter.js.map +0 -1
- package/dist/api/context/LDContext.js +0 -3
- package/dist/api/context/LDContext.js.map +0 -1
- package/dist/api/context/LDContextCommon.js +0 -3
- package/dist/api/context/LDContextCommon.js.map +0 -1
- package/dist/api/context/LDContextMeta.js +0 -3
- package/dist/api/context/LDContextMeta.js.map +0 -1
- package/dist/api/context/LDMultiKindContext.js +0 -3
- package/dist/api/context/LDMultiKindContext.js.map +0 -1
- package/dist/api/context/LDSingleKindContext.js +0 -3
- package/dist/api/context/LDSingleKindContext.js.map +0 -1
- package/dist/api/context/LDUser.js +0 -3
- package/dist/api/context/LDUser.js.map +0 -1
- package/dist/api/context/index.js +0 -23
- package/dist/api/context/index.js.map +0 -1
- package/dist/api/data/LDEvaluationDetail.js +0 -3
- package/dist/api/data/LDEvaluationDetail.js.map +0 -1
- package/dist/api/data/LDEvaluationReason.js +0 -3
- package/dist/api/data/LDEvaluationReason.js.map +0 -1
- package/dist/api/data/LDFlagSet.js +0 -3
- package/dist/api/data/LDFlagSet.js.map +0 -1
- package/dist/api/data/LDFlagValue.js +0 -3
- package/dist/api/data/LDFlagValue.js.map +0 -1
- package/dist/api/data/index.js +0 -21
- package/dist/api/data/index.js.map +0 -1
- package/dist/api/index.js +0 -24
- package/dist/api/index.js.map +0 -1
- package/dist/api/logging/BasicLoggerOptions.js +0 -3
- package/dist/api/logging/BasicLoggerOptions.js.map +0 -1
- package/dist/api/logging/LDLogLevel.js +0 -3
- package/dist/api/logging/LDLogLevel.js.map +0 -1
- package/dist/api/logging/LDLogger.js +0 -3
- package/dist/api/logging/LDLogger.js.map +0 -1
- package/dist/api/logging/index.js +0 -20
- package/dist/api/logging/index.js.map +0 -1
- package/dist/api/options/LDClientContext.js +0 -3
- package/dist/api/options/LDClientContext.js.map +0 -1
- package/dist/api/options/index.js +0 -4
- package/dist/api/options/index.js.map +0 -1
- package/dist/api/platform/AutoEnv.js +0 -20
- package/dist/api/platform/AutoEnv.js.map +0 -1
- package/dist/api/platform/Crypto.js +0 -3
- package/dist/api/platform/Crypto.js.map +0 -1
- package/dist/api/platform/Encoding.js +0 -3
- package/dist/api/platform/Encoding.js.map +0 -1
- package/dist/api/platform/EventSource.js +0 -3
- package/dist/api/platform/EventSource.js.map +0 -1
- package/dist/api/platform/Filesystem.js +0 -3
- package/dist/api/platform/Filesystem.js.map +0 -1
- package/dist/api/platform/Info.js +0 -3
- package/dist/api/platform/Info.js.map +0 -1
- package/dist/api/platform/Platform.js +0 -3
- package/dist/api/platform/Platform.js.map +0 -1
- package/dist/api/platform/Requests.js +0 -3
- package/dist/api/platform/Requests.js.map +0 -1
- package/dist/api/platform/Storage.js +0 -3
- package/dist/api/platform/Storage.js.map +0 -1
- package/dist/api/platform/index.js +0 -26
- package/dist/api/platform/index.js.map +0 -1
- package/dist/api/subsystem/LDContextDeduplicator.js +0 -3
- package/dist/api/subsystem/LDContextDeduplicator.js.map +0 -1
- package/dist/api/subsystem/LDEventProcessor.js +0 -3
- package/dist/api/subsystem/LDEventProcessor.js.map +0 -1
- package/dist/api/subsystem/LDEventSender.js +0 -15
- package/dist/api/subsystem/LDEventSender.js.map +0 -1
- package/dist/api/subsystem/LDStreamProcessor.js +0 -3
- package/dist/api/subsystem/LDStreamProcessor.js.map +0 -1
- package/dist/api/subsystem/index.js +0 -7
- package/dist/api/subsystem/index.js.map +0 -1
- package/dist/errors.js +0 -78
- package/dist/errors.js.map +0 -1
- package/dist/index.js +0 -31
- package/dist/index.js.map +0 -1
- package/dist/internal/context/index.js +0 -38
- package/dist/internal/context/index.js.map +0 -1
- package/dist/internal/diagnostics/DiagnosticsManager.js +0 -70
- package/dist/internal/diagnostics/DiagnosticsManager.js.map +0 -1
- package/dist/internal/diagnostics/index.js +0 -6
- package/dist/internal/diagnostics/index.js.map +0 -1
- package/dist/internal/diagnostics/types.js +0 -3
- package/dist/internal/diagnostics/types.js.map +0 -1
- package/dist/internal/evaluation/ErrorKinds.js +0 -15
- package/dist/internal/evaluation/ErrorKinds.js.map +0 -1
- package/dist/internal/evaluation/EventFactoryBase.js +0 -38
- package/dist/internal/evaluation/EventFactoryBase.js.map +0 -1
- package/dist/internal/evaluation/index.js +0 -8
- package/dist/internal/evaluation/index.js.map +0 -1
- package/dist/internal/events/ClientMessages.js +0 -14
- package/dist/internal/events/ClientMessages.js.map +0 -1
- package/dist/internal/events/EventProcessor.js +0 -263
- package/dist/internal/events/EventProcessor.js.map +0 -1
- package/dist/internal/events/EventSender.js +0 -77
- package/dist/internal/events/EventSender.js.map +0 -1
- package/dist/internal/events/EventSummarizer.js +0 -84
- package/dist/internal/events/EventSummarizer.js.map +0 -1
- package/dist/internal/events/InputClickEvent.js +0 -3
- package/dist/internal/events/InputClickEvent.js.map +0 -1
- package/dist/internal/events/InputCustomEvent.js +0 -22
- package/dist/internal/events/InputCustomEvent.js.map +0 -1
- package/dist/internal/events/InputEvalEvent.js +0 -38
- package/dist/internal/events/InputEvalEvent.js.map +0 -1
- package/dist/internal/events/InputEvent.js +0 -3
- package/dist/internal/events/InputEvent.js.map +0 -1
- package/dist/internal/events/InputEventBase.js +0 -11
- package/dist/internal/events/InputEventBase.js.map +0 -1
- package/dist/internal/events/InputIdentifyEvent.js +0 -12
- package/dist/internal/events/InputIdentifyEvent.js.map +0 -1
- package/dist/internal/events/InputMigrationEvent.js +0 -7
- package/dist/internal/events/InputMigrationEvent.js.map +0 -1
- package/dist/internal/events/InputPageViewEvent.js +0 -3
- package/dist/internal/events/InputPageViewEvent.js.map +0 -1
- package/dist/internal/events/LDInternalOptions.js +0 -3
- package/dist/internal/events/LDInternalOptions.js.map +0 -1
- package/dist/internal/events/LDInvalidSDKKeyError.js +0 -10
- package/dist/internal/events/LDInvalidSDKKeyError.js.map +0 -1
- package/dist/internal/events/NullEventProcessor.js +0 -11
- package/dist/internal/events/NullEventProcessor.js.map +0 -1
- package/dist/internal/events/SummaryCounter.js +0 -20
- package/dist/internal/events/SummaryCounter.js.map +0 -1
- package/dist/internal/events/guards.js +0 -20
- package/dist/internal/events/guards.js.map +0 -1
- package/dist/internal/events/index.js +0 -18
- package/dist/internal/events/index.js.map +0 -1
- package/dist/internal/events/sampling.js +0 -23
- package/dist/internal/events/sampling.js.map +0 -1
- package/dist/internal/index.js +0 -22
- package/dist/internal/index.js.map +0 -1
- package/dist/internal/stream/StreamingProcessor.js +0 -113
- package/dist/internal/stream/StreamingProcessor.js.map +0 -1
- package/dist/internal/stream/index.js +0 -6
- package/dist/internal/stream/index.js.map +0 -1
- package/dist/internal/stream/types.js +0 -3
- package/dist/internal/stream/types.js.map +0 -1
- package/dist/logging/BasicLogger.js +0 -97
- package/dist/logging/BasicLogger.js.map +0 -1
- package/dist/logging/SafeLogger.js +0 -63
- package/dist/logging/SafeLogger.js.map +0 -1
- package/dist/logging/createSafeLogger.js +0 -16
- package/dist/logging/createSafeLogger.js.map +0 -1
- package/dist/logging/format.js +0 -156
- package/dist/logging/format.js.map +0 -1
- package/dist/logging/index.js +0 -10
- package/dist/logging/index.js.map +0 -1
- package/dist/options/ApplicationTags.js +0 -55
- package/dist/options/ApplicationTags.js.map +0 -1
- package/dist/options/ClientContext.js +0 -20
- package/dist/options/ClientContext.js.map +0 -1
- package/dist/options/OptionMessages.js +0 -33
- package/dist/options/OptionMessages.js.map +0 -1
- package/dist/options/ServiceEndpoints.js +0 -77
- package/dist/options/ServiceEndpoints.js.map +0 -1
- package/dist/options/index.js +0 -15
- package/dist/options/index.js.map +0 -1
- package/dist/utils/VoidFunction.js +0 -3
- package/dist/utils/VoidFunction.js.map +0 -1
- package/dist/utils/cancelableTimedPromise.js +0 -30
- package/dist/utils/cancelableTimedPromise.js.map +0 -1
- package/dist/utils/clone.js +0 -10
- package/dist/utils/clone.js.map +0 -1
- package/dist/utils/date.js +0 -9
- package/dist/utils/date.js.map +0 -1
- package/dist/utils/debounce.js +0 -33
- package/dist/utils/debounce.js.map +0 -1
- package/dist/utils/deepCompact.js +0 -24
- package/dist/utils/deepCompact.js.map +0 -1
- package/dist/utils/fast-deep-equal/index.js +0 -90
- package/dist/utils/fast-deep-equal/index.js.map +0 -1
- package/dist/utils/http.js +0 -53
- package/dist/utils/http.js.map +0 -1
- package/dist/utils/index.js +0 -27
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/isEmptyObject.js +0 -5
- package/dist/utils/isEmptyObject.js.map +0 -1
- package/dist/utils/noop.js +0 -4
- package/dist/utils/noop.js.map +0 -1
- package/dist/utils/sleep.js +0 -7
- package/dist/utils/sleep.js.map +0 -1
- package/dist/utils/timedPromise.js +0 -17
- package/dist/utils/timedPromise.js.map +0 -1
- package/dist/validators.js +0 -175
- package/dist/validators.js.map +0 -1
package/dist/logging/format.js
DELETED
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const validators_1 = require("../validators");
|
|
4
|
-
/**
|
|
5
|
-
* Attempt to produce a string representation of a value.
|
|
6
|
-
* The format should be roughly comparable to `util.format`
|
|
7
|
-
* aside from object which will be JSON versus the `util.inspect`
|
|
8
|
-
* format.
|
|
9
|
-
* @param val
|
|
10
|
-
* @returns A string representation of the value if possible.
|
|
11
|
-
*/
|
|
12
|
-
function tryStringify(val) {
|
|
13
|
-
if (typeof val === 'string') {
|
|
14
|
-
return val;
|
|
15
|
-
}
|
|
16
|
-
if (val === undefined) {
|
|
17
|
-
return 'undefined';
|
|
18
|
-
}
|
|
19
|
-
if (val === null) {
|
|
20
|
-
return 'null';
|
|
21
|
-
}
|
|
22
|
-
if (Object.prototype.hasOwnProperty.call(val, 'toString')) {
|
|
23
|
-
try {
|
|
24
|
-
return val.toString();
|
|
25
|
-
}
|
|
26
|
-
catch (_a) {
|
|
27
|
-
/* Keep going */
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
if (typeof val === 'bigint') {
|
|
31
|
-
return `${val}n`;
|
|
32
|
-
}
|
|
33
|
-
try {
|
|
34
|
-
return JSON.stringify(val);
|
|
35
|
-
}
|
|
36
|
-
catch (error) {
|
|
37
|
-
if (error instanceof TypeError && error.message.indexOf('circular') >= 0) {
|
|
38
|
-
return '[Circular]';
|
|
39
|
-
}
|
|
40
|
-
return '[Not Stringifiable]';
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Attempt to produce a numeric representation.
|
|
45
|
-
* BigInts have an `n` suffix.
|
|
46
|
-
* @param val
|
|
47
|
-
* @returns The numeric representation or 'NaN' if not numeric.
|
|
48
|
-
*/
|
|
49
|
-
function toNumber(val) {
|
|
50
|
-
// Symbol has to be treated special because it will
|
|
51
|
-
// throw an exception if an attempt is made to convert it.
|
|
52
|
-
if (typeof val === 'symbol') {
|
|
53
|
-
return 'NaN';
|
|
54
|
-
}
|
|
55
|
-
if (typeof val === 'bigint') {
|
|
56
|
-
return `${val}n`;
|
|
57
|
-
}
|
|
58
|
-
return String(Number(val));
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Attempt to produce an integer representation.
|
|
62
|
-
* BigInts have an `n` suffix.
|
|
63
|
-
* @param val
|
|
64
|
-
* @returns The integer representation or 'NaN' if not numeric.
|
|
65
|
-
*/
|
|
66
|
-
function toInt(val) {
|
|
67
|
-
if (typeof val === 'symbol') {
|
|
68
|
-
return 'NaN';
|
|
69
|
-
}
|
|
70
|
-
if (typeof val === 'bigint') {
|
|
71
|
-
return `${val}n`;
|
|
72
|
-
}
|
|
73
|
-
return String(parseInt(val, 10));
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Attempt to produce a float representation.
|
|
77
|
-
* BigInts have an `n` suffix.
|
|
78
|
-
* @param val
|
|
79
|
-
* @returns The integer representation or 'NaN' if not numeric.
|
|
80
|
-
*/
|
|
81
|
-
function toFloat(val) {
|
|
82
|
-
if (typeof val === 'symbol') {
|
|
83
|
-
return 'NaN';
|
|
84
|
-
}
|
|
85
|
-
return String(parseFloat(val));
|
|
86
|
-
}
|
|
87
|
-
// Based on:
|
|
88
|
-
// https://nodejs.org/api/util.html#utilformatformat-args
|
|
89
|
-
// The result will not match node exactly, but it should get the
|
|
90
|
-
// right information through.
|
|
91
|
-
const escapes = {
|
|
92
|
-
s: (val) => tryStringify(val),
|
|
93
|
-
d: (val) => toNumber(val),
|
|
94
|
-
i: (val) => toInt(val),
|
|
95
|
-
f: (val) => toFloat(val),
|
|
96
|
-
j: (val) => tryStringify(val),
|
|
97
|
-
o: (val) => tryStringify(val),
|
|
98
|
-
O: (val) => tryStringify(val),
|
|
99
|
-
c: () => '',
|
|
100
|
-
};
|
|
101
|
-
/**
|
|
102
|
-
* A basic formatted for use where `util.format` is not available.
|
|
103
|
-
* This will not be as performant, but it will produce formatted
|
|
104
|
-
* messages.
|
|
105
|
-
*
|
|
106
|
-
* @internal
|
|
107
|
-
*
|
|
108
|
-
* @param args
|
|
109
|
-
* @returns Formatted string.
|
|
110
|
-
*/
|
|
111
|
-
function format(...args) {
|
|
112
|
-
var _a;
|
|
113
|
-
const formatString = args.shift();
|
|
114
|
-
if (validators_1.TypeValidators.String.is(formatString)) {
|
|
115
|
-
let out = '';
|
|
116
|
-
let i = 0;
|
|
117
|
-
while (i < formatString.length) {
|
|
118
|
-
const char = formatString.charAt(i);
|
|
119
|
-
if (char === '%') {
|
|
120
|
-
const nextIndex = i + 1;
|
|
121
|
-
if (nextIndex < formatString.length) {
|
|
122
|
-
const nextChar = formatString.charAt(i + 1);
|
|
123
|
-
if (nextChar in escapes && args.length) {
|
|
124
|
-
const value = args.shift();
|
|
125
|
-
// This rule is for math.
|
|
126
|
-
// eslint-disable-next-line no-unsafe-optional-chaining
|
|
127
|
-
out += (_a = escapes[nextChar]) === null || _a === void 0 ? void 0 : _a.call(escapes, value);
|
|
128
|
-
}
|
|
129
|
-
else if (nextChar === '%') {
|
|
130
|
-
out += '%';
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
out += `%${nextChar}`;
|
|
134
|
-
}
|
|
135
|
-
i += 2;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
out += char;
|
|
140
|
-
i += 1;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
// If there are any args left after we exhaust the format string
|
|
144
|
-
// then just stick those on the end.
|
|
145
|
-
if (args.length) {
|
|
146
|
-
if (out.length) {
|
|
147
|
-
out += ' ';
|
|
148
|
-
}
|
|
149
|
-
out += args.map(tryStringify).join(' ');
|
|
150
|
-
}
|
|
151
|
-
return out;
|
|
152
|
-
}
|
|
153
|
-
return args.map(tryStringify).join(' ');
|
|
154
|
-
}
|
|
155
|
-
exports.default = format;
|
|
156
|
-
//# sourceMappingURL=format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/logging/format.ts"],"names":[],"mappings":";;AAAA,8CAA+C;AAE/C;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,GAAQ;IAC5B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,KAAK,SAAS,EAAE;QACrB,OAAO,WAAW,CAAC;KACpB;IACD,IAAI,GAAG,KAAK,IAAI,EAAE;QAChB,OAAO,MAAM,CAAC;KACf;IACD,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE;QACzD,IAAI;YACF,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvB;QAAC,WAAM;YACN,gBAAgB;SACjB;KACF;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,GAAG,GAAG,GAAG,CAAC;KAClB;IACD,IAAI;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;KAC5B;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACxE,OAAO,YAAY,CAAC;SACrB;QACD,OAAO,qBAAqB,CAAC;KAC9B;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,GAAQ;IACxB,mDAAmD;IACnD,0DAA0D;IAC1D,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,GAAG,GAAG,GAAG,CAAC;KAClB;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAS,KAAK,CAAC,GAAQ;IACrB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,GAAG,GAAG,GAAG,CAAC;KAClB;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,GAAQ;IACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,YAAY;AACZ,yDAAyD;AACzD,gEAAgE;AAChE,6BAA6B;AAC7B,MAAM,OAAO,GAAyC;IACpD,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;IAClC,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;IAC9B,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;IAC3B,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC7B,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;IAClC,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;IAClC,CAAC,EAAE,CAAC,GAAQ,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC;IAClC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;CACZ,CAAC;AAEF;;;;;;;;;GASG;AACH,SAAwB,MAAM,CAAC,GAAG,IAAW;;IAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAClC,IAAI,2BAAc,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE;QAC1C,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE;YAC9B,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,IAAI,KAAK,GAAG,EAAE;gBAChB,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE;oBACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC5C,IAAI,QAAQ,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE;wBACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC3B,yBAAyB;wBACzB,uDAAuD;wBACvD,GAAG,IAAI,MAAA,OAAO,CAAC,QAAQ,CAAC,wDAAG,KAAK,CAAC,CAAC;qBACnC;yBAAM,IAAI,QAAQ,KAAK,GAAG,EAAE;wBAC3B,GAAG,IAAI,GAAG,CAAC;qBACZ;yBAAM;wBACL,GAAG,IAAI,IAAI,QAAQ,EAAE,CAAC;qBACvB;oBACD,CAAC,IAAI,CAAC,CAAC;iBACR;aACF;iBAAM;gBACL,GAAG,IAAI,IAAI,CAAC;gBACZ,CAAC,IAAI,CAAC,CAAC;aACR;SACF;QACD,gEAAgE;QAChE,oCAAoC;QACpC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,GAAG,CAAC,MAAM,EAAE;gBACd,GAAG,IAAI,GAAG,CAAC;aACZ;YACD,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACzC;QACD,OAAO,GAAG,CAAC;KACZ;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC;AAvCD,yBAuCC"}
|
package/dist/logging/index.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createSafeLogger = exports.SafeLogger = exports.BasicLogger = void 0;
|
|
4
|
-
const BasicLogger_1 = require("./BasicLogger");
|
|
5
|
-
exports.BasicLogger = BasicLogger_1.default;
|
|
6
|
-
const createSafeLogger_1 = require("./createSafeLogger");
|
|
7
|
-
exports.createSafeLogger = createSafeLogger_1.default;
|
|
8
|
-
const SafeLogger_1 = require("./SafeLogger");
|
|
9
|
-
exports.SafeLogger = SafeLogger_1.default;
|
|
10
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logging/index.ts"],"names":[],"mappings":";;;AAAA,+CAAwC;AAI/B,sBAJF,qBAAW,CAIE;AAHpB,yDAAkD;AAGhB,2BAH3B,0BAAgB,CAG2B;AAFlD,6CAAsC;AAEhB,qBAFf,oBAAU,CAEe"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const validators_1 = require("../validators");
|
|
4
|
-
const OptionMessages_1 = require("./OptionMessages");
|
|
5
|
-
/**
|
|
6
|
-
* Expression to validate characters that are allowed in tag keys and values.
|
|
7
|
-
*/
|
|
8
|
-
const allowedTagCharacters = /^(\w|\.|-)+$/;
|
|
9
|
-
const regexValidator = validators_1.TypeValidators.stringMatchingRegex(allowedTagCharacters);
|
|
10
|
-
const tagValidator = {
|
|
11
|
-
is: (u, name) => {
|
|
12
|
-
if (regexValidator.is(u)) {
|
|
13
|
-
if (u.length > 64) {
|
|
14
|
-
return { valid: false, message: OptionMessages_1.default.tagValueTooLong(name) };
|
|
15
|
-
}
|
|
16
|
-
return { valid: true };
|
|
17
|
-
}
|
|
18
|
-
return { valid: false, message: OptionMessages_1.default.invalidTagValue(name) };
|
|
19
|
-
},
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Class for managing tags.
|
|
23
|
-
*/
|
|
24
|
-
class ApplicationTags {
|
|
25
|
-
constructor(options) {
|
|
26
|
-
const tags = {};
|
|
27
|
-
const application = options === null || options === void 0 ? void 0 : options.application;
|
|
28
|
-
const logger = options === null || options === void 0 ? void 0 : options.logger;
|
|
29
|
-
if (application) {
|
|
30
|
-
Object.entries(application).forEach(([key, value]) => {
|
|
31
|
-
if (value !== null && value !== undefined) {
|
|
32
|
-
const { valid, message } = tagValidator.is(value, `application.${key}`);
|
|
33
|
-
if (!valid) {
|
|
34
|
-
logger === null || logger === void 0 ? void 0 : logger.warn(message);
|
|
35
|
-
}
|
|
36
|
-
else if (key === 'versionName') {
|
|
37
|
-
tags[`application-version-name`] = [value];
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
tags[`application-${key}`] = [value];
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
const tagKeys = Object.keys(tags);
|
|
46
|
-
if (tagKeys.length) {
|
|
47
|
-
this.value = tagKeys
|
|
48
|
-
.sort()
|
|
49
|
-
.flatMap((key) => tags[key].sort().map((value) => `${key}/${value}`))
|
|
50
|
-
.join(' ');
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
exports.default = ApplicationTags;
|
|
55
|
-
//# sourceMappingURL=ApplicationTags.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ApplicationTags.js","sourceRoot":"","sources":["../../src/options/ApplicationTags.ts"],"names":[],"mappings":";;AACA,8CAA+C;AAC/C,qDAA8C;AAE9C;;GAEG;AACH,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAE5C,MAAM,cAAc,GAAG,2BAAc,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;AAEhF,MAAM,YAAY,GAAG;IACnB,EAAE,EAAE,CAAC,CAAU,EAAE,IAAY,EAAwC,EAAE;QACrE,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YACxB,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE;gBACjB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAc,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;aACxE;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;SACxB;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAc,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IACzE,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAqB,eAAe;IAGlC,YAAY,OAGX;QACC,MAAM,IAAI,GAA6B,EAAE,CAAC;QAC1C,MAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAC;QACzC,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAC;QAE/B,IAAI,WAAW,EAAE;YACf,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACnD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;oBACzC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,GAAG,EAAE,CAAC,CAAC;oBAExE,IAAI,CAAC,KAAK,EAAE;wBACV,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,OAAO,CAAC,CAAC;qBACvB;yBAAM,IAAI,GAAG,KAAK,aAAa,EAAE;wBAChC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;qBAC5C;yBAAM;wBACL,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;qBACtC;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG,OAAO;iBACjB,IAAI,EAAE;iBACN,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;iBACpE,IAAI,CAAC,GAAG,CAAC,CAAC;SACd;IACH,CAAC;CACF;AAnCD,kCAmCC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* The client context provides basic configuration and platform support which are required
|
|
5
|
-
* when building SDK components.
|
|
6
|
-
*/
|
|
7
|
-
class ClientContext {
|
|
8
|
-
constructor(sdkKey, configuration, platform) {
|
|
9
|
-
this.platform = platform;
|
|
10
|
-
this.basicConfiguration = {
|
|
11
|
-
tags: configuration.tags,
|
|
12
|
-
logger: configuration.logger,
|
|
13
|
-
offline: configuration.offline,
|
|
14
|
-
serviceEndpoints: configuration.serviceEndpoints,
|
|
15
|
-
sdkKey,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.default = ClientContext;
|
|
20
|
-
//# sourceMappingURL=ClientContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ClientContext.js","sourceRoot":"","sources":["../../src/options/ClientContext.ts"],"names":[],"mappings":";;AAkCA;;;GAGG;AACH,MAAqB,aAAa;IAGhC,YACE,MAAc,EACd,aAKC,EACe,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;QAElC,IAAI,CAAC,kBAAkB,GAAG;YACxB,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,OAAO,EAAE,aAAa,CAAC,OAAO;YAC9B,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;YAChD,MAAM;SACP,CAAC;IACJ,CAAC;CACF;AArBD,gCAqBC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Messages for issues which can be encountered from processing the configuration options.
|
|
5
|
-
*/
|
|
6
|
-
class OptionMessages {
|
|
7
|
-
static deprecated(oldName, newName) {
|
|
8
|
-
return `"${oldName}" is deprecated, please use "${newName}"`;
|
|
9
|
-
}
|
|
10
|
-
static optionBelowMinimum(name, value, min) {
|
|
11
|
-
return `Config option "${name}" had invalid value of ${value}, using minimum of ${min} instead`;
|
|
12
|
-
}
|
|
13
|
-
static unknownOption(name) {
|
|
14
|
-
return `Ignoring unknown config option "${name}"`;
|
|
15
|
-
}
|
|
16
|
-
static wrongOptionType(name, expectedType, actualType) {
|
|
17
|
-
return `Config option "${name}" should be of type ${expectedType}, got ${actualType}, using default value`;
|
|
18
|
-
}
|
|
19
|
-
static wrongOptionTypeBoolean(name, actualType) {
|
|
20
|
-
return `Config option "${name}" should be a boolean, got ${actualType}, converting to boolean`;
|
|
21
|
-
}
|
|
22
|
-
static invalidTagValue(name) {
|
|
23
|
-
return `Config option "${name}" must only contain letters, numbers, ., _ or -.`;
|
|
24
|
-
}
|
|
25
|
-
static tagValueTooLong(name) {
|
|
26
|
-
return `Value of "${name}" was longer than 64 characters and was discarded.`;
|
|
27
|
-
}
|
|
28
|
-
static partialEndpoint(name) {
|
|
29
|
-
return `You have set custom uris without specifying the ${name} URI; connections may not work properly`;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
exports.default = OptionMessages;
|
|
33
|
-
//# sourceMappingURL=OptionMessages.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OptionMessages.js","sourceRoot":"","sources":["../../src/options/OptionMessages.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,MAAqB,cAAc;IACjC,MAAM,CAAC,UAAU,CAAC,OAAe,EAAE,OAAe;QAChD,OAAO,IAAI,OAAO,gCAAgC,OAAO,GAAG,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;QAChE,OAAO,kBAAkB,IAAI,0BAA0B,KAAK,sBAAsB,GAAG,UAAU,CAAC;IAClG,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,IAAY;QAC/B,OAAO,mCAAmC,IAAI,GAAG,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY,EAAE,YAAoB,EAAE,UAAkB;QAC3E,OAAO,kBAAkB,IAAI,uBAAuB,YAAY,SAAS,UAAU,uBAAuB,CAAC;IAC7G,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,IAAY,EAAE,UAAkB;QAC5D,OAAO,kBAAkB,IAAI,8BAA8B,UAAU,yBAAyB,CAAC;IACjG,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,OAAO,kBAAkB,IAAI,kDAAkD,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,OAAO,aAAa,IAAI,oDAAoD,CAAC;IAC/E,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,IAAY;QACjC,OAAO,mDAAmD,IAAI,yCAAyC,CAAC;IAC1G,CAAC;CACF;AAhCD,iCAgCC"}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEventsUri = exports.getPollingUri = exports.getStreamingUri = void 0;
|
|
4
|
-
function canonicalizeUri(uri) {
|
|
5
|
-
return uri.replace(/\/+$/, '');
|
|
6
|
-
}
|
|
7
|
-
function canonicalizePath(path) {
|
|
8
|
-
return path.replace(/^\/+/, '').replace(/\?$/, '');
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Specifies the base service URIs used by SDK components.
|
|
12
|
-
*/
|
|
13
|
-
class ServiceEndpoints {
|
|
14
|
-
constructor(streaming, polling, events = ServiceEndpoints.DEFAULT_EVENTS, analyticsEventPath = '/bulk', diagnosticEventPath = '/diagnostic', includeAuthorizationHeader = true, payloadFilterKey) {
|
|
15
|
-
this.streaming = canonicalizeUri(streaming);
|
|
16
|
-
this.polling = canonicalizeUri(polling);
|
|
17
|
-
this.events = canonicalizeUri(events);
|
|
18
|
-
this.analyticsEventPath = analyticsEventPath;
|
|
19
|
-
this.diagnosticEventPath = diagnosticEventPath;
|
|
20
|
-
this.includeAuthorizationHeader = includeAuthorizationHeader;
|
|
21
|
-
this.payloadFilterKey = payloadFilterKey;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
ServiceEndpoints.DEFAULT_EVENTS = 'https://events.launchdarkly.com';
|
|
25
|
-
exports.default = ServiceEndpoints;
|
|
26
|
-
function getWithParams(uri, parameters) {
|
|
27
|
-
if (parameters.length === 0) {
|
|
28
|
-
return uri;
|
|
29
|
-
}
|
|
30
|
-
const parts = parameters.map(({ key, value }) => `${key}=${value}`);
|
|
31
|
-
return `${uri}?${parts.join('&')}`;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Get the URI for the streaming endpoint.
|
|
35
|
-
*
|
|
36
|
-
* @param endpoints The service endpoints.
|
|
37
|
-
* @param path The path to the resource, devoid of any query parameters or hrefs.
|
|
38
|
-
* @param parameters The query parameters. These query parameters must already have the appropriate encoding applied. This function WILL NOT apply it for you.
|
|
39
|
-
*/
|
|
40
|
-
function getStreamingUri(endpoints, path, parameters) {
|
|
41
|
-
const canonicalizedPath = canonicalizePath(path);
|
|
42
|
-
const combinedParameters = [...parameters];
|
|
43
|
-
if (endpoints.payloadFilterKey) {
|
|
44
|
-
combinedParameters.push({ key: 'filter', value: endpoints.payloadFilterKey });
|
|
45
|
-
}
|
|
46
|
-
return getWithParams(`${endpoints.streaming}/${canonicalizedPath}`, combinedParameters);
|
|
47
|
-
}
|
|
48
|
-
exports.getStreamingUri = getStreamingUri;
|
|
49
|
-
/**
|
|
50
|
-
* Get the URI for the polling endpoint.
|
|
51
|
-
*
|
|
52
|
-
* @param endpoints The service endpoints.
|
|
53
|
-
* @param path The path to the resource, devoid of any query parameters or hrefs.
|
|
54
|
-
* @param parameters The query parameters. These query parameters must already have the appropriate encoding applied. This function WILL NOT apply it for you.
|
|
55
|
-
*/
|
|
56
|
-
function getPollingUri(endpoints, path, parameters) {
|
|
57
|
-
const canonicalizedPath = canonicalizePath(path);
|
|
58
|
-
const combinedParameters = [...parameters];
|
|
59
|
-
if (endpoints.payloadFilterKey) {
|
|
60
|
-
combinedParameters.push({ key: 'filter', value: endpoints.payloadFilterKey });
|
|
61
|
-
}
|
|
62
|
-
return getWithParams(`${endpoints.polling}/${canonicalizedPath}`, combinedParameters);
|
|
63
|
-
}
|
|
64
|
-
exports.getPollingUri = getPollingUri;
|
|
65
|
-
/**
|
|
66
|
-
* Get the URI for the events endpoint.
|
|
67
|
-
*
|
|
68
|
-
* @param endpoints The service endpoints.
|
|
69
|
-
* @param path The path to the resource, devoid of any query parameters or hrefs.
|
|
70
|
-
* @param parameters The query parameters. These query parameters must already have the appropriate encoding applied. This function WILL NOT apply it for you.
|
|
71
|
-
*/
|
|
72
|
-
function getEventsUri(endpoints, path, parameters) {
|
|
73
|
-
const canonicalizedPath = canonicalizePath(path);
|
|
74
|
-
return getWithParams(`${endpoints.events}/${canonicalizedPath}`, parameters);
|
|
75
|
-
}
|
|
76
|
-
exports.getEventsUri = getEventsUri;
|
|
77
|
-
//# sourceMappingURL=ServiceEndpoints.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceEndpoints.js","sourceRoot":"","sources":["../../src/options/ServiceEndpoints.ts"],"names":[],"mappings":"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"}
|
package/dist/options/index.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEventsUri = exports.getPollingUri = exports.getStreamingUri = exports.ClientContext = exports.ServiceEndpoints = exports.OptionMessages = exports.ApplicationTags = void 0;
|
|
4
|
-
const ApplicationTags_1 = require("./ApplicationTags");
|
|
5
|
-
exports.ApplicationTags = ApplicationTags_1.default;
|
|
6
|
-
const ClientContext_1 = require("./ClientContext");
|
|
7
|
-
exports.ClientContext = ClientContext_1.default;
|
|
8
|
-
const OptionMessages_1 = require("./OptionMessages");
|
|
9
|
-
exports.OptionMessages = OptionMessages_1.default;
|
|
10
|
-
const ServiceEndpoints_1 = require("./ServiceEndpoints");
|
|
11
|
-
exports.ServiceEndpoints = ServiceEndpoints_1.default;
|
|
12
|
-
Object.defineProperty(exports, "getEventsUri", { enumerable: true, get: function () { return ServiceEndpoints_1.getEventsUri; } });
|
|
13
|
-
Object.defineProperty(exports, "getPollingUri", { enumerable: true, get: function () { return ServiceEndpoints_1.getPollingUri; } });
|
|
14
|
-
Object.defineProperty(exports, "getStreamingUri", { enumerable: true, get: function () { return ServiceEndpoints_1.getStreamingUri; } });
|
|
15
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/options/index.ts"],"names":[],"mappings":";;;AAAA,uDAAgD;AAM9C,0BANK,yBAAe,CAML;AALjB,mDAA4C;AAQ1C,wBARK,uBAAa,CAQL;AAPf,qDAA8C;AAK5C,yBALK,wBAAc,CAKL;AAJhB,yDAAoG;AAKlG,2BALK,0BAAgB,CAKL;AAIhB,6FATyB,+BAAY,OASzB;AADZ,8FARuC,gCAAa,OAQvC;AADb,gGAPsD,kCAAe,OAOtD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VoidFunction.js","sourceRoot":"","sources":["../../src/utils/VoidFunction.ts"],"names":[],"mappings":""}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cancelableTimedPromise = void 0;
|
|
4
|
-
const errors_1 = require("../errors");
|
|
5
|
-
/**
|
|
6
|
-
* Returns a promise which errors after t seconds.
|
|
7
|
-
*
|
|
8
|
-
* @param t Timeout in seconds.
|
|
9
|
-
* @param taskName Name of task being timed for logging and error reporting.
|
|
10
|
-
*/
|
|
11
|
-
function cancelableTimedPromise(t, taskName) {
|
|
12
|
-
let timeout;
|
|
13
|
-
let resolve;
|
|
14
|
-
const promise = new Promise((_res, reject) => {
|
|
15
|
-
resolve = _res;
|
|
16
|
-
timeout = setTimeout(() => {
|
|
17
|
-
const e = `${taskName} timed out after ${t} seconds.`;
|
|
18
|
-
reject(new errors_1.LDTimeoutError(e));
|
|
19
|
-
}, t * 1000);
|
|
20
|
-
});
|
|
21
|
-
return {
|
|
22
|
-
promise,
|
|
23
|
-
cancel: () => {
|
|
24
|
-
resolve();
|
|
25
|
-
clearTimeout(timeout);
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
exports.cancelableTimedPromise = cancelableTimedPromise;
|
|
30
|
-
//# sourceMappingURL=cancelableTimedPromise.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cancelableTimedPromise.js","sourceRoot":"","sources":["../../src/utils/cancelableTimedPromise.ts"],"names":[],"mappings":";;;AAAA,sCAA2C;AAe3C;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,CAAS,EAAE,QAAgB;IAChE,IAAI,OAAsC,CAAC;IAC3C,IAAI,OAAqB,CAAC;IAC1B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACjD,OAAO,GAAG,IAAI,CAAC;QACf,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACxB,MAAM,CAAC,GAAG,GAAG,QAAQ,oBAAoB,CAAC,WAAW,CAAC;YACtD,MAAM,CAAC,IAAI,uBAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IACH,OAAO;QACL,OAAO;QACP,MAAM,EAAE,GAAG,EAAE;YACX,OAAO,EAAE,CAAC;YACV,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AAjBD,wDAiBC"}
|
package/dist/utils/clone.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
function clone(obj) {
|
|
4
|
-
if (obj === undefined || obj === null) {
|
|
5
|
-
return obj;
|
|
6
|
-
}
|
|
7
|
-
return JSON.parse(JSON.stringify(obj));
|
|
8
|
-
}
|
|
9
|
-
exports.default = clone;
|
|
10
|
-
//# sourceMappingURL=clone.js.map
|
package/dist/utils/clone.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clone.js","sourceRoot":"","sources":["../../src/utils/clone.ts"],"names":[],"mappings":";;AAAA,SAAwB,KAAK,CAAI,GAAQ;IACvC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;QACrC,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAM,CAAC;AAC9C,CAAC;AAND,wBAMC"}
|
package/dist/utils/date.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.secondsToMillis = void 0;
|
|
4
|
-
// eslint-disable-next-line import/prefer-default-export
|
|
5
|
-
function secondsToMillis(sec) {
|
|
6
|
-
return Math.trunc(sec * 1000);
|
|
7
|
-
}
|
|
8
|
-
exports.secondsToMillis = secondsToMillis;
|
|
9
|
-
//# sourceMappingURL=date.js.map
|
package/dist/utils/date.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;AAChC,CAAC;AAFD,0CAEC"}
|
package/dist/utils/debounce.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
/**
|
|
4
|
-
* Wait before calling the same function. Useful for expensive calls.
|
|
5
|
-
* Adapted from https://amitd.co/code/typescript/debounce.
|
|
6
|
-
*
|
|
7
|
-
* @return The debounced function.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
*
|
|
11
|
-
* ```js
|
|
12
|
-
* const debouncedFunction = debounce(e => {
|
|
13
|
-
* console.log(e);
|
|
14
|
-
* }, 5000);
|
|
15
|
-
*
|
|
16
|
-
* // Console logs 'Hello world again ' after 5 seconds
|
|
17
|
-
* debouncedFunction('Hello world');
|
|
18
|
-
* debouncedFunction('Hello world again');
|
|
19
|
-
* ```
|
|
20
|
-
* @param fn The function to be debounced.
|
|
21
|
-
* @param delayMs Defaults to 5 seconds.
|
|
22
|
-
*/
|
|
23
|
-
const debounce = (fn, delayMs = 5000) => {
|
|
24
|
-
let timer;
|
|
25
|
-
return (...args) => {
|
|
26
|
-
clearTimeout(timer);
|
|
27
|
-
timer = setTimeout(() => {
|
|
28
|
-
fn(...args);
|
|
29
|
-
}, delayMs);
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
exports.default = debounce;
|
|
33
|
-
//# sourceMappingURL=debounce.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../src/utils/debounce.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,QAAQ,GAAG,CACf,EAAK,EACL,UAAkB,IAAI,EACc,EAAE;IACtC,IAAI,KAAoC,CAAC;IAEzC,OAAO,CAAC,GAAG,IAAmB,EAAE,EAAE;QAChC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QACd,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const isEmptyObject_1 = require("./isEmptyObject");
|
|
4
|
-
/**
|
|
5
|
-
* Strips all falsy and empty {} from a given object. Returns a new object with only truthy values.
|
|
6
|
-
* Sourced from below but modified to include checks for empty object and ignoring keys.
|
|
7
|
-
* https://www.w3resource.com/javascript-exercises/javascript-array-exercise-47.php
|
|
8
|
-
*
|
|
9
|
-
* @param obj
|
|
10
|
-
* @param ignoreKeys
|
|
11
|
-
*/
|
|
12
|
-
const deepCompact = (obj, ignoreKeys) => {
|
|
13
|
-
if (!obj) {
|
|
14
|
-
return obj;
|
|
15
|
-
}
|
|
16
|
-
return Object.entries(obj).reduce((acc, [key, value]) => {
|
|
17
|
-
if (Boolean(value) && !(0, isEmptyObject_1.default)(value) && !(ignoreKeys === null || ignoreKeys === void 0 ? void 0 : ignoreKeys.includes(key))) {
|
|
18
|
-
acc[key] = typeof value === 'object' ? deepCompact(value, ignoreKeys) : value;
|
|
19
|
-
}
|
|
20
|
-
return acc;
|
|
21
|
-
}, {});
|
|
22
|
-
};
|
|
23
|
-
exports.default = deepCompact;
|
|
24
|
-
//# sourceMappingURL=deepCompact.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deepCompact.js","sourceRoot":"","sources":["../../src/utils/deepCompact.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAE5C;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,CAAmB,GAAO,EAAE,UAAqB,EAAE,EAAE;IACvE,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC3D,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAA,uBAAa,EAAC,KAAK,CAAC,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAE;YACzE,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;SAC/E;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAM,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
// Ripped from https://github.com/epoberezkin/fast-deep-fastDeepEqual
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
// {{? it.es6 }}
|
|
6
|
-
// var envHasBigInt64Array = typeof BigInt64Array !== 'undefined';
|
|
7
|
-
// {{?}}
|
|
8
|
-
function fastDeepEqual(a, b) {
|
|
9
|
-
if (a === b)
|
|
10
|
-
return true;
|
|
11
|
-
if (a && b && typeof a == 'object' && typeof b == 'object') {
|
|
12
|
-
if (a.constructor !== b.constructor)
|
|
13
|
-
return false;
|
|
14
|
-
var length, i, keys;
|
|
15
|
-
if (Array.isArray(a)) {
|
|
16
|
-
length = a.length;
|
|
17
|
-
if (length != b.length)
|
|
18
|
-
return false;
|
|
19
|
-
for (i = length; i-- !== 0;)
|
|
20
|
-
if (!fastDeepEqual(a[i], b[i]))
|
|
21
|
-
return false;
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
// {{? it.es6 }}
|
|
25
|
-
if (a instanceof Map && b instanceof Map) {
|
|
26
|
-
if (a.size !== b.size)
|
|
27
|
-
return false;
|
|
28
|
-
for (i of a.entries())
|
|
29
|
-
if (!b.has(i[0]))
|
|
30
|
-
return false;
|
|
31
|
-
for (i of a.entries())
|
|
32
|
-
if (!fastDeepEqual(i[1], b.get(i[0])))
|
|
33
|
-
return false;
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
if (a instanceof Set && b instanceof Set) {
|
|
37
|
-
if (a.size !== b.size)
|
|
38
|
-
return false;
|
|
39
|
-
for (i of a.entries())
|
|
40
|
-
if (!b.has(i[0]))
|
|
41
|
-
return false;
|
|
42
|
-
return true;
|
|
43
|
-
}
|
|
44
|
-
if (ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {
|
|
45
|
-
// @ts-ignore
|
|
46
|
-
length = a.length;
|
|
47
|
-
// @ts-ignore
|
|
48
|
-
if (length != b.length)
|
|
49
|
-
return false;
|
|
50
|
-
for (i = length; i-- !== 0;) {
|
|
51
|
-
// @ts-ignore
|
|
52
|
-
if (a[i] !== b[i])
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
return true;
|
|
56
|
-
}
|
|
57
|
-
// {{?}}
|
|
58
|
-
if (a.constructor === RegExp)
|
|
59
|
-
return a.source === b.source && a.flags === b.flags;
|
|
60
|
-
if (a.valueOf !== Object.prototype.valueOf)
|
|
61
|
-
return a.valueOf() === b.valueOf();
|
|
62
|
-
if (a.toString !== Object.prototype.toString)
|
|
63
|
-
return a.toString() === b.toString();
|
|
64
|
-
keys = Object.keys(a);
|
|
65
|
-
length = keys.length;
|
|
66
|
-
if (length !== Object.keys(b).length)
|
|
67
|
-
return false;
|
|
68
|
-
for (i = length; i-- !== 0;)
|
|
69
|
-
if (!Object.prototype.hasOwnProperty.call(b, keys[i]))
|
|
70
|
-
return false;
|
|
71
|
-
for (i = length; i-- !== 0;) {
|
|
72
|
-
var key = keys[i];
|
|
73
|
-
// {{? it.react }}
|
|
74
|
-
// if (key === '_owner' && a.$$typeof) {
|
|
75
|
-
// // React-specific: avoid traversing React elements' _owner.
|
|
76
|
-
// // _owner contains circular references
|
|
77
|
-
// // and is not needed when comparing the actual elements (and not their owners)
|
|
78
|
-
// continue;
|
|
79
|
-
// }
|
|
80
|
-
// {{?}}
|
|
81
|
-
if (!fastDeepEqual(a[key], b[key]))
|
|
82
|
-
return false;
|
|
83
|
-
}
|
|
84
|
-
return true;
|
|
85
|
-
}
|
|
86
|
-
// true if both NaN, false otherwise
|
|
87
|
-
return a !== a && b !== b;
|
|
88
|
-
}
|
|
89
|
-
exports.default = fastDeepEqual;
|
|
90
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/fast-deep-equal/index.ts"],"names":[],"mappings":"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"}
|