@bitblit/ratchet-common 4.0.116-alpha → 4.0.119-alpha
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/lib/index.d.ts +73 -1
- package/lib/index.mjs +4 -0
- package/lib/index.mjs.map +1 -0
- package/lib/lang/base64-ratchet.d.ts +1 -1
- package/lib/stream/buffer-writable.d.ts +2 -2
- package/lib/stream/multi-stream.d.ts +1 -1
- package/lib/stream/stream-ratchet.d.ts +2 -2
- package/lib/stream/string-writable.d.ts +1 -1
- package/package.json +9 -5
- package/lib/2d/line-2d.js +0 -2
- package/lib/2d/line-2d.js.map +0 -1
- package/lib/2d/plane-2d.js +0 -2
- package/lib/2d/plane-2d.js.map +0 -1
- package/lib/2d/point-2d.js +0 -2
- package/lib/2d/point-2d.js.map +0 -1
- package/lib/2d/poly-line-2d.js +0 -2
- package/lib/2d/poly-line-2d.js.map +0 -1
- package/lib/2d/ratchet-2d.js +0 -246
- package/lib/2d/ratchet-2d.js.map +0 -1
- package/lib/2d/ratchet-2d.spec.js +0 -118
- package/lib/2d/ratchet-2d.spec.js.map +0 -1
- package/lib/build/build-information.js +0 -2
- package/lib/build/build-information.js.map +0 -1
- package/lib/build/ratchet-common-info.js +0 -15
- package/lib/build/ratchet-common-info.js.map +0 -1
- package/lib/histogram/histogram-entry.js +0 -2
- package/lib/histogram/histogram-entry.js.map +0 -1
- package/lib/histogram/histogram.js +0 -49
- package/lib/histogram/histogram.js.map +0 -1
- package/lib/histogram/histogram.spec.js +0 -20
- package/lib/histogram/histogram.spec.js.map +0 -1
- package/lib/index.js +0 -2
- package/lib/index.js.map +0 -1
- package/lib/jwt/common-jwt-token.js +0 -2
- package/lib/jwt/common-jwt-token.js.map +0 -1
- package/lib/jwt/expired-jwt-handling.js +0 -7
- package/lib/jwt/expired-jwt-handling.js.map +0 -1
- package/lib/jwt/jwt-ratchet-like.js +0 -2
- package/lib/jwt/jwt-ratchet-like.js.map +0 -1
- package/lib/jwt/jwt-ratchet.js +0 -166
- package/lib/jwt/jwt-ratchet.js.map +0 -1
- package/lib/jwt/jwt-ratchet.spec.js +0 -50
- package/lib/jwt/jwt-ratchet.spec.js.map +0 -1
- package/lib/jwt/jwt-token-base.js +0 -2
- package/lib/jwt/jwt-token-base.js.map +0 -1
- package/lib/lang/array-ratchet.js +0 -84
- package/lib/lang/array-ratchet.js.map +0 -1
- package/lib/lang/array-ratchet.spec.js +0 -69
- package/lib/lang/array-ratchet.spec.js.map +0 -1
- package/lib/lang/base64-ratchet.js +0 -46
- package/lib/lang/base64-ratchet.js.map +0 -1
- package/lib/lang/base64-ratchet.spec.js +0 -29
- package/lib/lang/base64-ratchet.spec.js.map +0 -1
- package/lib/lang/boolean-ratchet.js +0 -46
- package/lib/lang/boolean-ratchet.js.map +0 -1
- package/lib/lang/boolean-ratchet.spec.js +0 -82
- package/lib/lang/boolean-ratchet.spec.js.map +0 -1
- package/lib/lang/composite-last-success-provider.js +0 -27
- package/lib/lang/composite-last-success-provider.js.map +0 -1
- package/lib/lang/composite-last-success-provider.spec.js +0 -27
- package/lib/lang/composite-last-success-provider.spec.js.map +0 -1
- package/lib/lang/date-ratchet.js +0 -31
- package/lib/lang/date-ratchet.js.map +0 -1
- package/lib/lang/date-ratchet.spec.js +0 -22
- package/lib/lang/date-ratchet.spec.js.map +0 -1
- package/lib/lang/duration-ratchet.js +0 -43
- package/lib/lang/duration-ratchet.js.map +0 -1
- package/lib/lang/duration-ratchet.spec.js +0 -40
- package/lib/lang/duration-ratchet.spec.js.map +0 -1
- package/lib/lang/enum-ratchet.js +0 -31
- package/lib/lang/enum-ratchet.js.map +0 -1
- package/lib/lang/enum-ratchet.spec.js +0 -32
- package/lib/lang/enum-ratchet.spec.js.map +0 -1
- package/lib/lang/error-ratchet.js +0 -45
- package/lib/lang/error-ratchet.js.map +0 -1
- package/lib/lang/error-ratchet.spec.js +0 -21
- package/lib/lang/error-ratchet.spec.js.map +0 -1
- package/lib/lang/esm-ratchet.js +0 -18
- package/lib/lang/esm-ratchet.js.map +0 -1
- package/lib/lang/expiring-object.js +0 -73
- package/lib/lang/expiring-object.js.map +0 -1
- package/lib/lang/expiring-object.spec.js +0 -52
- package/lib/lang/expiring-object.spec.js.map +0 -1
- package/lib/lang/geolocation-ratchet.js +0 -264
- package/lib/lang/geolocation-ratchet.js.map +0 -1
- package/lib/lang/geolocation-ratchet.spec.js +0 -75
- package/lib/lang/geolocation-ratchet.spec.js.map +0 -1
- package/lib/lang/global-ratchet.js +0 -44
- package/lib/lang/global-ratchet.js.map +0 -1
- package/lib/lang/global-ratchet.spec.js +0 -15
- package/lib/lang/global-ratchet.spec.js.map +0 -1
- package/lib/lang/key-value.js +0 -5
- package/lib/lang/key-value.js.map +0 -1
- package/lib/lang/last-success-provider.js +0 -2
- package/lib/lang/last-success-provider.js.map +0 -1
- package/lib/lang/map-ratchet.js +0 -165
- package/lib/lang/map-ratchet.js.map +0 -1
- package/lib/lang/map-ratchet.spec.js +0 -91
- package/lib/lang/map-ratchet.spec.js.map +0 -1
- package/lib/lang/no.js +0 -5
- package/lib/lang/no.js.map +0 -1
- package/lib/lang/no.spec.js +0 -8
- package/lib/lang/no.spec.js.map +0 -1
- package/lib/lang/number-ratchet.js +0 -157
- package/lib/lang/number-ratchet.js.map +0 -1
- package/lib/lang/number-ratchet.spec.js +0 -119
- package/lib/lang/number-ratchet.spec.js.map +0 -1
- package/lib/lang/parsed-url.js +0 -2
- package/lib/lang/parsed-url.js.map +0 -1
- package/lib/lang/promise-ratchet.js +0 -139
- package/lib/lang/promise-ratchet.js.map +0 -1
- package/lib/lang/promise-ratchet.spec.js +0 -75
- package/lib/lang/promise-ratchet.spec.js.map +0 -1
- package/lib/lang/require-ratchet.js +0 -57
- package/lib/lang/require-ratchet.js.map +0 -1
- package/lib/lang/require-ratchet.spec.js +0 -81
- package/lib/lang/require-ratchet.spec.js.map +0 -1
- package/lib/lang/stop-watch.js +0 -115
- package/lib/lang/stop-watch.js.map +0 -1
- package/lib/lang/string-ratchet.js +0 -203
- package/lib/lang/string-ratchet.js.map +0 -1
- package/lib/lang/string-ratchet.spec.js +0 -159
- package/lib/lang/string-ratchet.spec.js.map +0 -1
- package/lib/lang/time-zone-ratchet.js +0 -79
- package/lib/lang/time-zone-ratchet.js.map +0 -1
- package/lib/lang/time-zone-ratchet.spec.js +0 -41
- package/lib/lang/time-zone-ratchet.spec.js.map +0 -1
- package/lib/lang/timeout-token.js +0 -18
- package/lib/lang/timeout-token.js.map +0 -1
- package/lib/lang/timeout-token.spec.js +0 -10
- package/lib/lang/timeout-token.spec.js.map +0 -1
- package/lib/lang/transform-ratchet.js +0 -67
- package/lib/lang/transform-ratchet.js.map +0 -1
- package/lib/lang/transform-ratchet.spec.js +0 -119
- package/lib/lang/transform-ratchet.spec.js.map +0 -1
- package/lib/logger/classic-single-line-log-message-formatter.js +0 -14
- package/lib/logger/classic-single-line-log-message-formatter.js.map +0 -1
- package/lib/logger/log-message-builder.js +0 -49
- package/lib/logger/log-message-builder.js.map +0 -1
- package/lib/logger/log-message-format-type.js +0 -7
- package/lib/logger/log-message-format-type.js.map +0 -1
- package/lib/logger/log-message-formatter.js +0 -2
- package/lib/logger/log-message-formatter.js.map +0 -1
- package/lib/logger/log-message-processor.js +0 -2
- package/lib/logger/log-message-processor.js.map +0 -1
- package/lib/logger/log-message.js +0 -2
- package/lib/logger/log-message.js.map +0 -1
- package/lib/logger/log-snapshot.js +0 -2
- package/lib/logger/log-snapshot.js.map +0 -1
- package/lib/logger/logger-instance.js +0 -209
- package/lib/logger/logger-instance.js.map +0 -1
- package/lib/logger/logger-level-name.js +0 -10
- package/lib/logger/logger-level-name.js.map +0 -1
- package/lib/logger/logger-meta.js +0 -2
- package/lib/logger/logger-meta.js.map +0 -1
- package/lib/logger/logger-options.js +0 -2
- package/lib/logger/logger-options.js.map +0 -1
- package/lib/logger/logger-output-function.js +0 -7
- package/lib/logger/logger-output-function.js.map +0 -1
- package/lib/logger/logger-ring-buffer.js +0 -74
- package/lib/logger/logger-ring-buffer.js.map +0 -1
- package/lib/logger/logger-util.js +0 -46
- package/lib/logger/logger-util.js.map +0 -1
- package/lib/logger/logger-util.spec.js +0 -10
- package/lib/logger/logger-util.spec.js.map +0 -1
- package/lib/logger/logger.js +0 -136
- package/lib/logger/logger.js.map +0 -1
- package/lib/logger/logger.spec.js +0 -135
- package/lib/logger/logger.spec.js.map +0 -1
- package/lib/logger/none-log-message-formatter.js +0 -6
- package/lib/logger/none-log-message-formatter.js.map +0 -1
- package/lib/logger/structured-json-log-message-formatter.js +0 -20
- package/lib/logger/structured-json-log-message-formatter.js.map +0 -1
- package/lib/network/browser-local-ip-provider.js +0 -22
- package/lib/network/browser-local-ip-provider.js.map +0 -1
- package/lib/network/browser-local-ip-provider.spec.js +0 -17
- package/lib/network/browser-local-ip-provider.spec.js.map +0 -1
- package/lib/network/fixed-local-ip-provider.js +0 -10
- package/lib/network/fixed-local-ip-provider.js.map +0 -1
- package/lib/network/local-ip-provider.js +0 -2
- package/lib/network/local-ip-provider.js.map +0 -1
- package/lib/network/network-ratchet.js +0 -104
- package/lib/network/network-ratchet.js.map +0 -1
- package/lib/network/network-ratchet.spec.js +0 -14
- package/lib/network/network-ratchet.spec.js.map +0 -1
- package/lib/stream/buffer-writable.js +0 -17
- package/lib/stream/buffer-writable.js.map +0 -1
- package/lib/stream/multi-stream.js +0 -13
- package/lib/stream/multi-stream.js.map +0 -1
- package/lib/stream/stream-ratchet.js +0 -69
- package/lib/stream/stream-ratchet.js.map +0 -1
- package/lib/stream/stream-ratchet.spec.js +0 -14
- package/lib/stream/stream-ratchet.spec.js.map +0 -1
- package/lib/stream/string-writable.js +0 -15
- package/lib/stream/string-writable.js.map +0 -1
- package/lib/stream/string-writable.spec.js +0 -13
- package/lib/stream/string-writable.spec.js.map +0 -1
- package/lib/third-party/google/google-recaptcha-ratchet.js +0 -30
- package/lib/third-party/google/google-recaptcha-ratchet.js.map +0 -1
- package/lib/third-party/google/google-recaptcha-ratchet.spec.js +0 -21
- package/lib/third-party/google/google-recaptcha-ratchet.spec.js.map +0 -1
- package/lib/third-party/twilio/twilio-ratchet.js +0 -75
- package/lib/third-party/twilio/twilio-ratchet.js.map +0 -1
- package/lib/transform/built-in-transforms.js +0 -192
- package/lib/transform/built-in-transforms.js.map +0 -1
- package/lib/transform/transform-rule.js +0 -2
- package/lib/transform/transform-rule.js.map +0 -1
- package/lib/tx/transaction-configuration.js +0 -2
- package/lib/tx/transaction-configuration.js.map +0 -1
- package/lib/tx/transaction-final-state.js +0 -7
- package/lib/tx/transaction-final-state.js.map +0 -1
- package/lib/tx/transaction-ratchet.js +0 -77
- package/lib/tx/transaction-ratchet.js.map +0 -1
- package/lib/tx/transaction-ratchet.spec.js +0 -131
- package/lib/tx/transaction-ratchet.spec.js.map +0 -1
- package/lib/tx/transaction-result.js +0 -2
- package/lib/tx/transaction-result.js.map +0 -1
- package/lib/tx/transaction-step.js +0 -2
- package/lib/tx/transaction-step.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"promise-ratchet.spec.js","sourceRoot":"","sources":["../../src/lang/promise-ratchet.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { ErrorRatchet } from './error-ratchet.js';
|
|
2
|
-
export class RequireRatchet {
|
|
3
|
-
static isNullOrUndefined(ob) {
|
|
4
|
-
return ob === null || ob === undefined;
|
|
5
|
-
}
|
|
6
|
-
static notNullOrUndefined(ob, name = 'object') {
|
|
7
|
-
if (RequireRatchet.isNullOrUndefined(ob)) {
|
|
8
|
-
throw new Error(name + ' may not be null or undefined');
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
static notNullUndefinedOrOnlyWhitespaceString(ob, name = 'string') {
|
|
12
|
-
if (RequireRatchet.isNullOrUndefined(ob) || ob.trim() === '') {
|
|
13
|
-
throw new Error(name + ' may not be null or undefined or only whitespace string');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
static notNullUndefinedOrEmptyArray(ob, name = 'string') {
|
|
17
|
-
if (RequireRatchet.isNullOrUndefined(ob) || ob.length === 0) {
|
|
18
|
-
throw new Error(name + ' may not be null or undefined or an empty array');
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
static equal(ob1, ob2, message = 'Values must be equal') {
|
|
22
|
-
if (ob1 !== ob2) {
|
|
23
|
-
throw new Error(message);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
static true(ob, message = 'Value must be true') {
|
|
27
|
-
RequireRatchet.equal(ob, true, message);
|
|
28
|
-
}
|
|
29
|
-
static noNullOrUndefinedValuesInArray(arr, expectedLength = null, customMsg = null) {
|
|
30
|
-
RequireRatchet.notNullOrUndefined(arr, 'Source array may not be null');
|
|
31
|
-
if (expectedLength !== null && arr.length !== expectedLength) {
|
|
32
|
-
ErrorRatchet.throwFormattedErr('Expected array of length %d but was %d %s', expectedLength, arr.length, customMsg);
|
|
33
|
-
}
|
|
34
|
-
for (let i = 0; i < arr.length; i++) {
|
|
35
|
-
if (RequireRatchet.isNullOrUndefined(arr[i])) {
|
|
36
|
-
ErrorRatchet.throwFormattedErr('Array index %d was null or undefined %s', i, customMsg);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
static noNullOrUndefinedValuesInRestArgs(expectedLength, ...restArgs) {
|
|
41
|
-
RequireRatchet.notNullOrUndefined(restArgs, 'Source array may not be null');
|
|
42
|
-
if (expectedLength !== null && restArgs.length !== expectedLength) {
|
|
43
|
-
ErrorRatchet.throwFormattedErr('Expected array of length %d but was %d', expectedLength, restArgs.length);
|
|
44
|
-
}
|
|
45
|
-
for (let i = 0; i < restArgs.length; i++) {
|
|
46
|
-
if (RequireRatchet.isNullOrUndefined(restArgs[i])) {
|
|
47
|
-
ErrorRatchet.throwFormattedErr('Array index %d was null or undefined', i);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
static constructorArgumentsMatchLengthAndAreNonNull() {
|
|
52
|
-
const args = Array.from(arguments);
|
|
53
|
-
const len = this.constructor.length;
|
|
54
|
-
return RequireRatchet.noNullOrUndefinedValuesInArray(args, len);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
//# sourceMappingURL=require-ratchet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"require-ratchet.js","sourceRoot":"","sources":["../../src/lang/require-ratchet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { RequireRatchet } from './require-ratchet.js';
|
|
2
|
-
import { fail } from 'assert';
|
|
3
|
-
import { Logger } from '../logger/logger.js';
|
|
4
|
-
describe('#standardCases', function () {
|
|
5
|
-
it('should throw exception on null value', function () {
|
|
6
|
-
try {
|
|
7
|
-
RequireRatchet.notNullOrUndefined(null, 'test1');
|
|
8
|
-
fail('Should have thrown exception');
|
|
9
|
-
}
|
|
10
|
-
catch (err) {
|
|
11
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
12
|
-
}
|
|
13
|
-
try {
|
|
14
|
-
RequireRatchet.notNullOrUndefined(undefined, 'test2');
|
|
15
|
-
fail('Should have thrown exception');
|
|
16
|
-
}
|
|
17
|
-
catch (err) {
|
|
18
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
it('should throw exception on whitespace value', function () {
|
|
22
|
-
try {
|
|
23
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString('', 'test1');
|
|
24
|
-
fail('Should have thrown exception');
|
|
25
|
-
}
|
|
26
|
-
catch (err) {
|
|
27
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
28
|
-
}
|
|
29
|
-
try {
|
|
30
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString(' ', 'test2');
|
|
31
|
-
fail('Should have thrown exception');
|
|
32
|
-
}
|
|
33
|
-
catch (err) {
|
|
34
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
describe('#noNullOrUndefinedValuesInArray', function () {
|
|
39
|
-
it('should throw exception on null value', function () {
|
|
40
|
-
const arr = [1, null, 'a'];
|
|
41
|
-
try {
|
|
42
|
-
RequireRatchet.noNullOrUndefinedValuesInArray(arr);
|
|
43
|
-
fail('Should have thrown exception');
|
|
44
|
-
}
|
|
45
|
-
catch (err) {
|
|
46
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
it('throw exception on bad length', function () {
|
|
50
|
-
const arr = [1, 2, 'a'];
|
|
51
|
-
try {
|
|
52
|
-
RequireRatchet.noNullOrUndefinedValuesInArray(arr, 4);
|
|
53
|
-
fail('Should have thrown exception');
|
|
54
|
-
}
|
|
55
|
-
catch (err) {
|
|
56
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
it('should not throw exception on good values', function () {
|
|
60
|
-
const arr = [1, 2, 'a'];
|
|
61
|
-
RequireRatchet.noNullOrUndefinedValuesInArray(arr, 3);
|
|
62
|
-
});
|
|
63
|
-
it('should not throw exception on good constructor values', function () {
|
|
64
|
-
const test = new ConstructorTester('a', 'b');
|
|
65
|
-
});
|
|
66
|
-
it('throw exception on null constructor param', function () {
|
|
67
|
-
try {
|
|
68
|
-
const test = new ConstructorTester('a', null);
|
|
69
|
-
fail('Should have thrown exception');
|
|
70
|
-
}
|
|
71
|
-
catch (err) {
|
|
72
|
-
Logger.debug('Correctly threw exception : %s', err);
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
export class ConstructorTester {
|
|
77
|
-
constructor(testVal1, testVal2) {
|
|
78
|
-
Logger.info('Args : %j', this.constructor);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=require-ratchet.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"require-ratchet.spec.js","sourceRoot":"","sources":["../../src/lang/require-ratchet.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/lang/stop-watch.js
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { DurationRatchet } from './duration-ratchet.js';
|
|
2
|
-
import { StringRatchet } from './string-ratchet.js';
|
|
3
|
-
import { RequireRatchet } from './require-ratchet.js';
|
|
4
|
-
import { LoggerLevelName } from '../logger/logger-level-name.js';
|
|
5
|
-
import { Logger } from '../logger/logger.js';
|
|
6
|
-
export class StopWatch {
|
|
7
|
-
label;
|
|
8
|
-
starts = new Map();
|
|
9
|
-
ends = new Map();
|
|
10
|
-
createTime = Date.now();
|
|
11
|
-
constructor(label = StringRatchet.createRandomHexString(4)) {
|
|
12
|
-
this.label = label;
|
|
13
|
-
}
|
|
14
|
-
start(name) {
|
|
15
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString(name, 'name');
|
|
16
|
-
const now = Date.now();
|
|
17
|
-
this.starts.set(StringRatchet.trimToNull(name), now);
|
|
18
|
-
return now;
|
|
19
|
-
}
|
|
20
|
-
stop(name) {
|
|
21
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString(name, 'name');
|
|
22
|
-
const now = Date.now();
|
|
23
|
-
this.ends.set(StringRatchet.trimToNull(name), now);
|
|
24
|
-
return now;
|
|
25
|
-
}
|
|
26
|
-
reset(name) {
|
|
27
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString(name, 'name');
|
|
28
|
-
this.starts.delete(StringRatchet.trimToNull(name));
|
|
29
|
-
this.ends.delete(StringRatchet.trimToNull(name));
|
|
30
|
-
}
|
|
31
|
-
hasTimer(name) {
|
|
32
|
-
RequireRatchet.notNullUndefinedOrOnlyWhitespaceString(name, 'name');
|
|
33
|
-
return this.starts.has(name);
|
|
34
|
-
}
|
|
35
|
-
log(name, shortForm, logLevel = LoggerLevelName.info) {
|
|
36
|
-
Logger.logByLevel(logLevel, this.dump(name, shortForm));
|
|
37
|
-
}
|
|
38
|
-
logExpected(pctComplete, name, shortForm, logLevel = LoggerLevelName.info) {
|
|
39
|
-
Logger.logByLevel(logLevel, this.dumpExpected(pctComplete, name, shortForm));
|
|
40
|
-
}
|
|
41
|
-
dump(name, shortForm) {
|
|
42
|
-
let rval = this.label + ' ';
|
|
43
|
-
const cleanName = StringRatchet.trimToNull(name);
|
|
44
|
-
if (cleanName && !this.hasTimer(cleanName)) {
|
|
45
|
-
rval += 'No such timer : ' + cleanName;
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
const start = name ? this.starts.get(cleanName) : this.createTime;
|
|
49
|
-
const end = name ? this.ends.get(cleanName) : Date.now();
|
|
50
|
-
rval += (cleanName || 'Default') + ' ';
|
|
51
|
-
if (!!start && !!end) {
|
|
52
|
-
rval += 'completed in ' + DurationRatchet.formatMsDuration(end - start, !shortForm);
|
|
53
|
-
}
|
|
54
|
-
else if (!!start) {
|
|
55
|
-
rval += 'running for ' + DurationRatchet.formatMsDuration(Date.now() - start, !shortForm);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return rval;
|
|
59
|
-
}
|
|
60
|
-
dumpExpected(pctComplete, name, shortForm) {
|
|
61
|
-
let rval = this.label + ' ';
|
|
62
|
-
const cleanName = StringRatchet.trimToNull(name);
|
|
63
|
-
if (cleanName && !this.hasTimer(cleanName)) {
|
|
64
|
-
rval += 'No such timer : ' + cleanName;
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
if (!pctComplete || pctComplete <= 0) {
|
|
68
|
-
rval += 'Cannot generate output for 0 percent complete';
|
|
69
|
-
}
|
|
70
|
-
else if (pctComplete > 1) {
|
|
71
|
-
rval += 'Cannot generate output for percent > 1';
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
rval += (cleanName || 'Default') + ' ';
|
|
75
|
-
const start = name ? this.starts.get(cleanName) : this.createTime;
|
|
76
|
-
const end = name ? this.ends.get(cleanName) : Date.now();
|
|
77
|
-
if (!!start && !!end) {
|
|
78
|
-
rval += 'completed in ' + DurationRatchet.formatMsDuration(end - start, !shortForm);
|
|
79
|
-
}
|
|
80
|
-
else if (!!start) {
|
|
81
|
-
const now = Date.now();
|
|
82
|
-
const elapsedMS = now - start;
|
|
83
|
-
const expectedTotalMS = elapsedMS / pctComplete;
|
|
84
|
-
const remainMS = expectedTotalMS - elapsedMS;
|
|
85
|
-
rval +=
|
|
86
|
-
'running for ' +
|
|
87
|
-
DurationRatchet.formatMsDuration(elapsedMS, !shortForm) +
|
|
88
|
-
' approx ' +
|
|
89
|
-
DurationRatchet.formatMsDuration(remainMS, !shortForm) +
|
|
90
|
-
' remaining';
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return rval;
|
|
95
|
-
}
|
|
96
|
-
elapsedMS(name) {
|
|
97
|
-
let rval = null;
|
|
98
|
-
const cleanName = StringRatchet.trimToNull(name);
|
|
99
|
-
if (cleanName && !this.hasTimer(cleanName)) {
|
|
100
|
-
rval = null;
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
const start = name ? this.starts.get(cleanName) : this.createTime;
|
|
104
|
-
const end = name ? this.ends.get(cleanName) : Date.now();
|
|
105
|
-
if (!!start && !!end) {
|
|
106
|
-
rval = end - start;
|
|
107
|
-
}
|
|
108
|
-
else if (!!start) {
|
|
109
|
-
rval = Date.now() - start;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return rval;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=stop-watch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stop-watch.js","sourceRoot":"","sources":["../../src/lang/stop-watch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
import { RequireRatchet } from './require-ratchet.js';
|
|
2
|
-
class StringRatchet {
|
|
3
|
-
static RFC_3986_RESERVED = ['!', '*', "'", '(', ')', ';', ':', '@', '&', '=', '+', '$', ',', '/', '?', '#', '[', ']', '%'];
|
|
4
|
-
static stringToUint8Array(val) {
|
|
5
|
-
return val ? new TextEncoder().encode(val) : null;
|
|
6
|
-
}
|
|
7
|
-
static uint8ArrayToString(val) {
|
|
8
|
-
return val ? new TextDecoder().decode(val) : null;
|
|
9
|
-
}
|
|
10
|
-
static attemptJsonParse(val) {
|
|
11
|
-
let rval = null;
|
|
12
|
-
if (StringRatchet.trimToNull(val)) {
|
|
13
|
-
try {
|
|
14
|
-
rval = JSON.parse(val);
|
|
15
|
-
}
|
|
16
|
-
catch (err) {
|
|
17
|
-
rval = null;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return rval;
|
|
21
|
-
}
|
|
22
|
-
static canParseAsJson(val) {
|
|
23
|
-
return !!StringRatchet.attemptJsonParse(val);
|
|
24
|
-
}
|
|
25
|
-
static allUnique(input) {
|
|
26
|
-
let rval = true;
|
|
27
|
-
if (input) {
|
|
28
|
-
const check = new Set();
|
|
29
|
-
for (let i = 0; i < input.length && rval; i++) {
|
|
30
|
-
const test = input.charAt(i);
|
|
31
|
-
rval = !check.has(test);
|
|
32
|
-
check.add(test);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return rval;
|
|
36
|
-
}
|
|
37
|
-
static allPermutationsOfLength(len, alphabet) {
|
|
38
|
-
const rval = [];
|
|
39
|
-
if (len > 0 && alphabet && alphabet.length > 0) {
|
|
40
|
-
RequireRatchet.true(StringRatchet.allUnique(alphabet), 'Alphabet must be unique');
|
|
41
|
-
const step = len === 1 ? [''] : StringRatchet.allPermutationsOfLength(len - 1, alphabet);
|
|
42
|
-
for (let i = 0; i < alphabet.length; i++) {
|
|
43
|
-
step.forEach((s) => rval.push(alphabet.charAt(i) + s));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return rval;
|
|
47
|
-
}
|
|
48
|
-
static createType4Guid() {
|
|
49
|
-
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
50
|
-
const r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8;
|
|
51
|
-
return v.toString(16);
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
static createRandomHexString(len = 10) {
|
|
55
|
-
let r = '';
|
|
56
|
-
for (let i = 0; i < len; i++) {
|
|
57
|
-
r += Math.floor(Math.random() * 16).toString(16);
|
|
58
|
-
}
|
|
59
|
-
return r;
|
|
60
|
-
}
|
|
61
|
-
static canonicalize(value) {
|
|
62
|
-
let rval = value ? value.toLowerCase() : '';
|
|
63
|
-
rval = rval.replace(' ', '-');
|
|
64
|
-
StringRatchet.RFC_3986_RESERVED.forEach((s) => {
|
|
65
|
-
rval = rval.replace(s, '');
|
|
66
|
-
});
|
|
67
|
-
return rval;
|
|
68
|
-
}
|
|
69
|
-
static formatBytes(bytes, decimals = 2) {
|
|
70
|
-
if (bytes == 0)
|
|
71
|
-
return '0 Bytes';
|
|
72
|
-
const k = 1024, dm = decimals || 2, sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'], i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
73
|
-
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
|
74
|
-
}
|
|
75
|
-
static safeString(input) {
|
|
76
|
-
let rval = null;
|
|
77
|
-
if (input != null) {
|
|
78
|
-
const type = typeof input;
|
|
79
|
-
if (type == 'string') {
|
|
80
|
-
rval = input;
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
rval = String(input);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return rval;
|
|
87
|
-
}
|
|
88
|
-
static stringContainsOnlyNumbers(input) {
|
|
89
|
-
const rval = /^[0-9]+$/.test(input);
|
|
90
|
-
return rval;
|
|
91
|
-
}
|
|
92
|
-
static stringContainsOnlyAlphanumeric(input) {
|
|
93
|
-
const rval = /^[0-9a-zA-Z]+$/.test(input);
|
|
94
|
-
return rval;
|
|
95
|
-
}
|
|
96
|
-
static stringContainsOnlyHex(input) {
|
|
97
|
-
const rval = /^[0-9a-fA-F]+$/.test(input);
|
|
98
|
-
return rval;
|
|
99
|
-
}
|
|
100
|
-
static stringContainsOnly(inVal, validCharsIn) {
|
|
101
|
-
const input = !inVal ? '' : inVal;
|
|
102
|
-
const validChars = !validCharsIn ? '' : validCharsIn;
|
|
103
|
-
let rval = true;
|
|
104
|
-
for (let i = 0; i < input.length && rval; i++) {
|
|
105
|
-
rval = validChars.indexOf(input.charAt(i)) >= 0;
|
|
106
|
-
}
|
|
107
|
-
return rval;
|
|
108
|
-
}
|
|
109
|
-
static obscure(input, prefixLength = 2, suffixLength = 2) {
|
|
110
|
-
if (!input) {
|
|
111
|
-
return input;
|
|
112
|
-
}
|
|
113
|
-
const len = input.length;
|
|
114
|
-
let pl = prefixLength;
|
|
115
|
-
let sl = suffixLength;
|
|
116
|
-
while (len > 0 && len < pl + sl + 1) {
|
|
117
|
-
pl = Math.max(0, pl - 1);
|
|
118
|
-
sl = Math.max(0, sl - 1);
|
|
119
|
-
}
|
|
120
|
-
const rem = len - (pl + sl);
|
|
121
|
-
let rval = '';
|
|
122
|
-
rval += input.substring(0, pl);
|
|
123
|
-
for (let i = 0; i < rem; i++) {
|
|
124
|
-
rval += '*';
|
|
125
|
-
}
|
|
126
|
-
rval += input.substring(len - sl);
|
|
127
|
-
return rval;
|
|
128
|
-
}
|
|
129
|
-
static leadingZeros(inVal, size) {
|
|
130
|
-
const pad = '00000000000000000000000000000000000000000000000000';
|
|
131
|
-
let negative = false;
|
|
132
|
-
let sVal = String(inVal);
|
|
133
|
-
if (sVal.startsWith('-')) {
|
|
134
|
-
negative = true;
|
|
135
|
-
sVal = sVal.substring(1);
|
|
136
|
-
}
|
|
137
|
-
if (size > pad.length) {
|
|
138
|
-
throw new Error('Cannot format number that large');
|
|
139
|
-
}
|
|
140
|
-
let rval = (pad + sVal).slice(-1 * size);
|
|
141
|
-
if (negative) {
|
|
142
|
-
rval = '-' + rval;
|
|
143
|
-
}
|
|
144
|
-
return rval;
|
|
145
|
-
}
|
|
146
|
-
static trimToEmpty(input) {
|
|
147
|
-
const t = input ? StringRatchet.safeString(input) : '';
|
|
148
|
-
return t.trim();
|
|
149
|
-
}
|
|
150
|
-
static trimToNull(input) {
|
|
151
|
-
const x = StringRatchet.trimToEmpty(input);
|
|
152
|
-
return x.length > 0 ? x : null;
|
|
153
|
-
}
|
|
154
|
-
static trimAllStringPropertiesToNullInPlace(input) {
|
|
155
|
-
return StringRatchet.trimAllStringPropertiesInPlace(input, false);
|
|
156
|
-
}
|
|
157
|
-
static trimAllStringPropertiesToEmptyInPlace(input) {
|
|
158
|
-
return StringRatchet.trimAllStringPropertiesInPlace(input, true);
|
|
159
|
-
}
|
|
160
|
-
static trimAllStringPropertiesInPlace(input, toEmpty) {
|
|
161
|
-
const dealKeys = Object.keys(input);
|
|
162
|
-
dealKeys.forEach((key) => {
|
|
163
|
-
const val = input[key];
|
|
164
|
-
if (val != null && typeof val === 'string') {
|
|
165
|
-
input[key] = toEmpty ? StringRatchet.trimToEmpty(input[key]) : StringRatchet.trimToNull(input[key]);
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
return input;
|
|
169
|
-
}
|
|
170
|
-
static stripNonNumeric(input) {
|
|
171
|
-
let rval = input;
|
|
172
|
-
if (input != null && !StringRatchet.stringContainsOnlyNumbers(input)) {
|
|
173
|
-
rval = '';
|
|
174
|
-
for (let i = 0; i < input.length; i++) {
|
|
175
|
-
const c = input.charAt(i);
|
|
176
|
-
if (StringRatchet.stringContainsOnlyNumbers(c) || (i === 0 && c === '-')) {
|
|
177
|
-
rval += c;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
return rval;
|
|
182
|
-
}
|
|
183
|
-
static csvSafe(input) {
|
|
184
|
-
let rval = StringRatchet.trimToEmpty(StringRatchet.safeString(input));
|
|
185
|
-
rval.split('"').join('\\"');
|
|
186
|
-
if (rval.indexOf(',') !== -1 || rval.indexOf('"') !== -1 || rval.indexOf("'") !== -1) {
|
|
187
|
-
rval = '"' + rval + '"';
|
|
188
|
-
}
|
|
189
|
-
return rval;
|
|
190
|
-
}
|
|
191
|
-
static stripNonAscii(value) {
|
|
192
|
-
const reduced = [...value].reduce((previousValue, currentValue) => {
|
|
193
|
-
const charCode = currentValue.charCodeAt(0);
|
|
194
|
-
if (charCode > 127) {
|
|
195
|
-
return previousValue;
|
|
196
|
-
}
|
|
197
|
-
return previousValue + currentValue;
|
|
198
|
-
});
|
|
199
|
-
return reduced;
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
export { StringRatchet };
|
|
203
|
-
//# sourceMappingURL=string-ratchet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"string-ratchet.js","sourceRoot":"","sources":["../../src/lang/string-ratchet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
import { StringRatchet } from './string-ratchet.js';
|
|
2
|
-
describe('#formatBytes', function () {
|
|
3
|
-
it('should format 0 bytes correctly', function () {
|
|
4
|
-
const result = StringRatchet.formatBytes(0);
|
|
5
|
-
expect(result).toEqual('0 Bytes');
|
|
6
|
-
});
|
|
7
|
-
it('should format less than a Kb correctly', function () {
|
|
8
|
-
const result = StringRatchet.formatBytes(123);
|
|
9
|
-
expect(result).toEqual('123 Bytes');
|
|
10
|
-
});
|
|
11
|
-
it('should format less than a Mb correctly', function () {
|
|
12
|
-
const result = StringRatchet.formatBytes(1024);
|
|
13
|
-
expect(result).toEqual('1 KB');
|
|
14
|
-
});
|
|
15
|
-
it('should format less than a Mb correctly with 3 decimals', function () {
|
|
16
|
-
const result = StringRatchet.formatBytes(1234, 3);
|
|
17
|
-
expect(result).toEqual('1.205 KB');
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
describe('#safeToString', function () {
|
|
21
|
-
it('should return "asdf"', function () {
|
|
22
|
-
const result = StringRatchet.safeString('asdf');
|
|
23
|
-
expect(result).toEqual('asdf');
|
|
24
|
-
});
|
|
25
|
-
it('should return "55"', function () {
|
|
26
|
-
const result = StringRatchet.safeString(55);
|
|
27
|
-
expect(result).toEqual('55');
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
describe('#obscure', function () {
|
|
31
|
-
it('should return "pa****rd"', function () {
|
|
32
|
-
const result = StringRatchet.obscure('password', 2, 2);
|
|
33
|
-
expect(result).toEqual('pa****rd');
|
|
34
|
-
});
|
|
35
|
-
it('should return null', function () {
|
|
36
|
-
const result = StringRatchet.obscure(null, 2, 2);
|
|
37
|
-
expect(result).toBeNull();
|
|
38
|
-
});
|
|
39
|
-
it('should return "p**s"', function () {
|
|
40
|
-
const result = StringRatchet.obscure('pass', 2, 2);
|
|
41
|
-
expect(result).toEqual('p**s');
|
|
42
|
-
});
|
|
43
|
-
it('should return "****"', function () {
|
|
44
|
-
const result = StringRatchet.obscure('pass', 0, 0);
|
|
45
|
-
expect(result).toEqual('****');
|
|
46
|
-
});
|
|
47
|
-
it('should return "p***"', function () {
|
|
48
|
-
const result = StringRatchet.obscure('pass', 1, 0);
|
|
49
|
-
expect(result).toEqual('p***');
|
|
50
|
-
});
|
|
51
|
-
it('should return "***s"', function () {
|
|
52
|
-
const result = StringRatchet.obscure('pass', 0, 1);
|
|
53
|
-
expect(result).toEqual('***s');
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
describe('#guid', function () {
|
|
57
|
-
it('should generate a guid"', function () {
|
|
58
|
-
const result = StringRatchet.createType4Guid();
|
|
59
|
-
expect(result).toBeTruthy();
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
describe('#randomHexString', function () {
|
|
63
|
-
it('should generate a random hex string"', function () {
|
|
64
|
-
const result = StringRatchet.createRandomHexString(12);
|
|
65
|
-
expect(result).toBeTruthy();
|
|
66
|
-
expect(result.length).toEqual(12);
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
describe('#leadingZeros', function () {
|
|
70
|
-
it('should generate string with leading zeros"', function () {
|
|
71
|
-
const result = StringRatchet.leadingZeros(25, 4);
|
|
72
|
-
expect(result).toEqual('0025');
|
|
73
|
-
});
|
|
74
|
-
it('should generate string with leading zeros and a negative sign"', function () {
|
|
75
|
-
const result = StringRatchet.leadingZeros(-8, 2);
|
|
76
|
-
expect(result).toEqual('-08');
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
describe('#stripNonNumeric', function () {
|
|
80
|
-
it('should return a string containing only numbers"', function () {
|
|
81
|
-
const result = StringRatchet.stripNonNumeric('702-555-1212');
|
|
82
|
-
expect(result).toEqual('7025551212');
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
describe('#stringContainsOnly', function () {
|
|
86
|
-
it('should check string contains only valid chars"', function () {
|
|
87
|
-
expect(StringRatchet.stringContainsOnly('test', 'tes')).toBeTruthy();
|
|
88
|
-
expect(StringRatchet.stringContainsOnly('test', 'teg')).toBeFalsy();
|
|
89
|
-
expect(StringRatchet.stringContainsOnlyAlphanumeric('test')).toBeTruthy();
|
|
90
|
-
expect(StringRatchet.stringContainsOnlyAlphanumeric('tes-')).toBeFalsy();
|
|
91
|
-
expect(StringRatchet.stringContainsOnlyHex('1a3')).toBeTruthy();
|
|
92
|
-
expect(StringRatchet.stringContainsOnlyHex('test')).toBeFalsy();
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
describe('#stringCsvSafe', function () {
|
|
96
|
-
it('should make values safe to place in a CSV"', function () {
|
|
97
|
-
expect(StringRatchet.csvSafe('test')).toEqual('test');
|
|
98
|
-
expect(StringRatchet.csvSafe('test,and 1')).toEqual('"test,and 1"');
|
|
99
|
-
expect(StringRatchet.csvSafe(1)).toEqual('1');
|
|
100
|
-
expect(StringRatchet.csvSafe("test'blah")).toEqual('"test\'blah"');
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
describe('#trimToEmpty', function () {
|
|
104
|
-
it('should return an empty string for null"', function () {
|
|
105
|
-
const result = StringRatchet.trimToEmpty(null);
|
|
106
|
-
expect(result).toEqual('');
|
|
107
|
-
});
|
|
108
|
-
it('should return an empty string for undefined"', function () {
|
|
109
|
-
const result = StringRatchet.trimToEmpty(undefined);
|
|
110
|
-
expect(result).toEqual('');
|
|
111
|
-
});
|
|
112
|
-
it('should return an empty string"', function () {
|
|
113
|
-
const result = StringRatchet.trimToEmpty(' ');
|
|
114
|
-
expect(result).toEqual('');
|
|
115
|
-
});
|
|
116
|
-
it('should return an abc"', function () {
|
|
117
|
-
const result = StringRatchet.trimToEmpty('abc ');
|
|
118
|
-
expect(result).toEqual('abc');
|
|
119
|
-
});
|
|
120
|
-
it('should return string "5"', function () {
|
|
121
|
-
const result = StringRatchet.trimToEmpty(5);
|
|
122
|
-
expect(result).toEqual('5');
|
|
123
|
-
});
|
|
124
|
-
});
|
|
125
|
-
describe('#trimStringPropertiesInPlace', function () {
|
|
126
|
-
it('should trim properties to null"', function () {
|
|
127
|
-
const test = {
|
|
128
|
-
a: 'test ',
|
|
129
|
-
b: 1,
|
|
130
|
-
c: ' test',
|
|
131
|
-
d: null,
|
|
132
|
-
e: ' ',
|
|
133
|
-
};
|
|
134
|
-
const nullResult = StringRatchet.trimAllStringPropertiesToNullInPlace(test);
|
|
135
|
-
expect(nullResult).not.toBeNull();
|
|
136
|
-
expect(nullResult['a']).toEqual('test');
|
|
137
|
-
expect(nullResult['b']).toEqual(1);
|
|
138
|
-
expect(nullResult['c']).toEqual('test');
|
|
139
|
-
expect(nullResult['d']).toEqual(null);
|
|
140
|
-
expect(nullResult['e']).toEqual(null);
|
|
141
|
-
});
|
|
142
|
-
it('should trim properties to empty"', function () {
|
|
143
|
-
const test = {
|
|
144
|
-
a: 'test ',
|
|
145
|
-
b: 1,
|
|
146
|
-
c: ' test',
|
|
147
|
-
d: null,
|
|
148
|
-
e: ' ',
|
|
149
|
-
};
|
|
150
|
-
const emptyResult = StringRatchet.trimAllStringPropertiesToEmptyInPlace(test);
|
|
151
|
-
expect(emptyResult).not.toBeNull();
|
|
152
|
-
expect(emptyResult['a']).toEqual('test');
|
|
153
|
-
expect(emptyResult['b']).toEqual(1);
|
|
154
|
-
expect(emptyResult['c']).toEqual('test');
|
|
155
|
-
expect(emptyResult['d']).toEqual(null);
|
|
156
|
-
expect(emptyResult['e']).toEqual('');
|
|
157
|
-
});
|
|
158
|
-
});
|
|
159
|
-
//# sourceMappingURL=string-ratchet.spec.js.map
|