@spinajs/util 2.0.185 → 2.0.186
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/cjs/args.d.ts +52 -0
- package/lib/cjs/args.d.ts.map +1 -0
- package/lib/cjs/args.js +354 -0
- package/lib/cjs/args.js.map +1 -0
- package/lib/cjs/fp.d.ts +47 -0
- package/lib/cjs/fp.d.ts.map +1 -0
- package/lib/cjs/fp.js +106 -0
- package/lib/cjs/fp.js.map +1 -0
- package/lib/cjs/index.d.ts +3 -0
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +3 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/string.d.ts +2 -0
- package/lib/cjs/string.d.ts.map +1 -0
- package/lib/cjs/string.js +14 -0
- package/lib/cjs/string.js.map +1 -0
- package/lib/cjs/thread.d.ts +4 -0
- package/lib/cjs/thread.d.ts.map +1 -1
- package/lib/cjs/thread.js +22 -1
- package/lib/cjs/thread.js.map +1 -1
- package/lib/mjs/args.d.ts +52 -0
- package/lib/mjs/args.d.ts.map +1 -0
- package/lib/mjs/args.js +315 -0
- package/lib/mjs/args.js.map +1 -0
- package/lib/mjs/fp.d.ts +47 -0
- package/lib/mjs/fp.d.ts.map +1 -0
- package/lib/mjs/fp.js +93 -0
- package/lib/mjs/fp.js.map +1 -0
- package/lib/mjs/index.d.ts +3 -0
- package/lib/mjs/index.d.ts.map +1 -1
- package/lib/mjs/index.js +3 -0
- package/lib/mjs/index.js.map +1 -1
- package/lib/mjs/string.d.ts +2 -0
- package/lib/mjs/string.d.ts.map +1 -0
- package/lib/mjs/string.js +10 -0
- package/lib/mjs/string.js.map +1 -0
- package/lib/mjs/thread.d.ts +4 -0
- package/lib/mjs/thread.d.ts.map +1 -1
- package/lib/mjs/thread.js +20 -0
- package/lib/mjs/thread.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +5 -1
package/lib/cjs/thread.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.d.ts","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,aAAc,MAAM,kBAMrC,CAAC"}
|
|
1
|
+
{"version":3,"file":"thread.d.ts","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,aAAc,MAAM,kBAMrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,gBAAiB,MAAM,kCAkBxC,CAAA"}
|
package/lib/cjs/thread.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sleep = void 0;
|
|
3
|
+
exports.delay = exports.sleep = void 0;
|
|
4
4
|
/**
|
|
5
5
|
*
|
|
6
6
|
* Sleep for a given duration in ms
|
|
@@ -16,4 +16,25 @@ const sleep = (duration) => {
|
|
|
16
16
|
});
|
|
17
17
|
};
|
|
18
18
|
exports.sleep = sleep;
|
|
19
|
+
/**
|
|
20
|
+
* Delay execution of a function for a given duration
|
|
21
|
+
*/
|
|
22
|
+
const delay = (duration, callback) => {
|
|
23
|
+
return new Promise((resolve, reject) => {
|
|
24
|
+
setTimeout(() => {
|
|
25
|
+
try {
|
|
26
|
+
const result = callback();
|
|
27
|
+
if (result instanceof Promise) {
|
|
28
|
+
result.then(resolve).catch(reject);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
resolve(result);
|
|
32
|
+
}
|
|
33
|
+
catch (e) {
|
|
34
|
+
reject(e);
|
|
35
|
+
}
|
|
36
|
+
}, duration);
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
exports.delay = delay;
|
|
19
40
|
//# sourceMappingURL=thread.js.map
|
package/lib/cjs/thread.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":";;;AACA;;;;;;GAMG;AACI,MAAM,KAAK,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACnC,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AANW,QAAA,KAAK,SAMhB"}
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":";;;AACA;;;;;;GAMG;AACI,MAAM,KAAK,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QACnC,UAAU,CAAC,GAAG,EAAE;YACd,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AANW,QAAA,KAAK,SAMhB;AAEF;;GAEG;AACI,MAAM,KAAK,GAAG,CAAI,QAAgB,EAAE,QAAiB,EAAE,EAAE;IAC9D,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,UAAU,CAAC,GAAG,EAAE;YACd,IAAI;gBACF,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;gBAE1B,IAAI,MAAM,YAAY,OAAO,EAAE;oBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACnC,OAAO;iBACR;gBAED,OAAO,CAAC,MAAM,CAAC,CAAC;aACjB;YAAC,OAAO,CAAC,EAAE;gBACV,MAAM,CAAC,CAAC,CAAC,CAAC;aACX;QACH,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AAEL,CAAC,CAAA;AAlBY,QAAA,KAAK,SAkBjB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper function to validate arguments
|
|
3
|
+
*
|
|
4
|
+
* @param checks
|
|
5
|
+
* @returns validated argument
|
|
6
|
+
*/
|
|
7
|
+
export declare function _check_arg(...checks: ((arg: any, name: string) => any)[]): (arg: any, name: string) => any;
|
|
8
|
+
/**
|
|
9
|
+
* Validate number, if not number throws InvalidArgument
|
|
10
|
+
*
|
|
11
|
+
* @param checks
|
|
12
|
+
* @returns validated number
|
|
13
|
+
*/
|
|
14
|
+
export declare function _is_number(...checks: ((arg: number, name: string) => unknown)[]): (arg: unknown, name: string) => any;
|
|
15
|
+
export declare function _is_map<K, V>(...checks: ((arg: unknown, name: string) => unknown)[]): (arg: Map<K, V>, name: string) => Map<K, V>;
|
|
16
|
+
export declare function _contains_key<K, V>(key: K): (arg: unknown, name: string) => Map<K, V> | object;
|
|
17
|
+
export declare function _is_boolean(...checks: ((arg: unknown, name: string) => boolean)[]): (arg: unknown, name: string) => any;
|
|
18
|
+
/**
|
|
19
|
+
* Check if argument is string, if not throws InvalidArgument
|
|
20
|
+
*
|
|
21
|
+
* @param checks
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
export declare function _is_string(...checks: ((arg: string, name: string) => unknown)[]): (arg: unknown, name: string) => any;
|
|
25
|
+
export declare function _is_array(...checks: ((arg: any[], name: string) => any[])[]): (arg: any[], name: string) => any;
|
|
26
|
+
export declare function _is_object(...checks: ((arg: object, name: string) => object)[]): (arg: object, name: string) => any;
|
|
27
|
+
export declare function _or(...checks: ((arg: any, name: string) => any)[]): (arg: any, name: string) => any;
|
|
28
|
+
export declare function _to_upper(): (arg: unknown, _name: string) => unknown;
|
|
29
|
+
export declare function _to_array(): (arg: unknown) => any[];
|
|
30
|
+
export declare function _to_lower(): (arg: unknown, _name: string) => unknown;
|
|
31
|
+
export declare function _trim(char?: string): (arg: unknown, _name: string) => unknown;
|
|
32
|
+
export declare function _between(min: number, max: number, error?: Error): (arg: string | number | any[], name: string) => string | number | any[];
|
|
33
|
+
export declare function _min_length(length: number, error?: Error): (arg: string, name: string) => string;
|
|
34
|
+
export declare function _max_length(length: number, error?: Error): (arg: string, name: string) => string;
|
|
35
|
+
export declare function _min(value: number, error?: Error): (arg: number, name: string) => number;
|
|
36
|
+
export declare function _max(value: number, error?: Error): (arg: number, name: string) => number;
|
|
37
|
+
export declare function _non_null(error?: Error): (arg: any, name: string) => any;
|
|
38
|
+
export declare function _non_undefined(error?: Error): (arg: any, name: string) => any;
|
|
39
|
+
export declare function _non_NaN(error?: Error): (arg: any, name: string) => any;
|
|
40
|
+
export declare function _non_nil(error?: Error): (arg: any, name: string) => any;
|
|
41
|
+
export declare function _non_empty(error?: Error): (arg: string | any[], name: string) => string | any[];
|
|
42
|
+
export declare function _default<T>(value: T | (() => T)): (arg: T, name: string) => T;
|
|
43
|
+
export declare function _contains<T>(values: unknown, error?: Error): (arg: T, name: string) => T;
|
|
44
|
+
export declare function _lt(value: number, error?: Error): (arg: unknown, name: string) => unknown;
|
|
45
|
+
export declare function _gt(value: number, error?: Error): (arg: unknown, name: string) => unknown;
|
|
46
|
+
export declare function _reg_match(reg: RegExp, error?: Error): (arg: unknown, name: string) => unknown;
|
|
47
|
+
export declare function _glob_match(glob: string, error?: Error): (arg: unknown, name: string) => unknown;
|
|
48
|
+
export declare function _is_email(): (arg: unknown, name: string) => unknown;
|
|
49
|
+
export declare function _is_uuid(): (arg: unknown, name: string) => unknown;
|
|
50
|
+
export declare function _to_int(error?: Error): (arg: string, name: string) => number;
|
|
51
|
+
export declare function _to_float(error?: Error): (arg: string, name: string) => number;
|
|
52
|
+
//# sourceMappingURL=args.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/args.js
ADDED
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
import { InvalidArgument } from '@spinajs/exceptions';
|
|
2
|
+
import GlobToRegExp from 'glob-to-regexp';
|
|
3
|
+
import { trimChar } from './string.js';
|
|
4
|
+
/**
|
|
5
|
+
* Helper function to validate arguments
|
|
6
|
+
*
|
|
7
|
+
* @param checks
|
|
8
|
+
* @returns validated argument
|
|
9
|
+
*/
|
|
10
|
+
export function _check_arg(...checks) {
|
|
11
|
+
return function (arg, name) {
|
|
12
|
+
for (const check of checks) {
|
|
13
|
+
arg = check(arg, name);
|
|
14
|
+
}
|
|
15
|
+
return arg;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Validate number, if not number throws InvalidArgument
|
|
20
|
+
*
|
|
21
|
+
* @param checks
|
|
22
|
+
* @returns validated number
|
|
23
|
+
*/
|
|
24
|
+
export function _is_number(...checks) {
|
|
25
|
+
return function (arg, name) {
|
|
26
|
+
if (typeof arg !== 'number') {
|
|
27
|
+
throw new InvalidArgument(`${name} should be number`);
|
|
28
|
+
}
|
|
29
|
+
return _check_arg(...checks)(arg, name);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export function _is_map(...checks) {
|
|
33
|
+
return function (arg, name) {
|
|
34
|
+
if (!(arg instanceof Map)) {
|
|
35
|
+
throw new InvalidArgument(`${name} should be Map`);
|
|
36
|
+
}
|
|
37
|
+
return _check_arg(...checks)(arg, name);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export function _contains_key(key) {
|
|
41
|
+
return function (arg, name) {
|
|
42
|
+
if (arg instanceof Map) {
|
|
43
|
+
if (!arg.has(key)) {
|
|
44
|
+
throw new InvalidArgument(`${name} should contain key ${key}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
else if (typeof arg === 'object' && !Object.keys(arg).includes(key.toString())) {
|
|
48
|
+
throw new InvalidArgument(`${name} should contain key ${key}`);
|
|
49
|
+
}
|
|
50
|
+
return arg;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export function _is_boolean(...checks) {
|
|
54
|
+
return function (arg, name) {
|
|
55
|
+
if (typeof arg === 'number') {
|
|
56
|
+
if (arg !== 1 && arg !== 0) {
|
|
57
|
+
throw new InvalidArgument(`${name} should be boolean`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else if (typeof arg !== 'boolean') {
|
|
61
|
+
throw new InvalidArgument(`${name} should be boolean`);
|
|
62
|
+
}
|
|
63
|
+
return _check_arg(...checks)(arg, name);
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Check if argument is string, if not throws InvalidArgument
|
|
68
|
+
*
|
|
69
|
+
* @param checks
|
|
70
|
+
* @returns
|
|
71
|
+
*/
|
|
72
|
+
export function _is_string(...checks) {
|
|
73
|
+
return function (arg, name) {
|
|
74
|
+
if (typeof arg !== 'string') {
|
|
75
|
+
throw new InvalidArgument(`${name} should be string`);
|
|
76
|
+
}
|
|
77
|
+
return _check_arg(...checks)(arg, name);
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export function _is_array(...checks) {
|
|
81
|
+
return function (arg, name) {
|
|
82
|
+
if (!Array.isArray(arg)) {
|
|
83
|
+
throw new InvalidArgument(`${name} should be array`);
|
|
84
|
+
}
|
|
85
|
+
return _check_arg(...checks)(arg, name);
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export function _is_object(...checks) {
|
|
89
|
+
return function (arg, name) {
|
|
90
|
+
if (typeof arg !== 'object' || arg === null || arg === undefined || Array.isArray(arg)) {
|
|
91
|
+
throw new InvalidArgument(`${name} should be plain old object`);
|
|
92
|
+
}
|
|
93
|
+
return _check_arg(...checks)(arg, name);
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export function _or(...checks) {
|
|
97
|
+
return function (arg, name) {
|
|
98
|
+
for (const check of checks) {
|
|
99
|
+
try {
|
|
100
|
+
return check(arg, name);
|
|
101
|
+
}
|
|
102
|
+
catch (e) {
|
|
103
|
+
// ignore
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
throw new InvalidArgument(`${name} should pass at least one check: ${checks.map((c) => c.name).join(', ')}`);
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
export function _to_upper() {
|
|
110
|
+
return function (arg, _name) {
|
|
111
|
+
if (typeof arg !== 'string') {
|
|
112
|
+
return arg;
|
|
113
|
+
}
|
|
114
|
+
return arg.toUpperCase();
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
export function _to_array() {
|
|
118
|
+
return function (arg) {
|
|
119
|
+
if (Array.isArray(arg)) {
|
|
120
|
+
return arg;
|
|
121
|
+
}
|
|
122
|
+
return [arg];
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
export function _to_lower() {
|
|
126
|
+
return function (arg, _name) {
|
|
127
|
+
if (typeof arg !== 'string') {
|
|
128
|
+
return arg;
|
|
129
|
+
}
|
|
130
|
+
return arg.toLowerCase();
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
export function _trim(char) {
|
|
134
|
+
return function (arg, _name) {
|
|
135
|
+
if (typeof arg === 'string') {
|
|
136
|
+
return char ? trimChar(arg, char) : arg.trim();
|
|
137
|
+
}
|
|
138
|
+
return arg;
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
export function _between(min, max, error) {
|
|
142
|
+
return function (arg, name) {
|
|
143
|
+
if (Array.isArray(arg) || typeof arg === 'string') {
|
|
144
|
+
if (arg.length < min || arg.length > max) {
|
|
145
|
+
throw error ?? new InvalidArgument(`${name} should be between ${min} and ${max}`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else if (typeof arg === 'number') {
|
|
149
|
+
if (arg < min || arg > max) {
|
|
150
|
+
throw error ?? new InvalidArgument(`${name} should be between ${min} and ${max}`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return arg;
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
export function _min_length(length, error) {
|
|
157
|
+
return function (arg, name) {
|
|
158
|
+
if (arg.length < length) {
|
|
159
|
+
throw error ?? new InvalidArgument(`${name} should be at least ${length} characters`);
|
|
160
|
+
}
|
|
161
|
+
return arg;
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
export function _max_length(length, error) {
|
|
165
|
+
return function (arg, name) {
|
|
166
|
+
if (arg.length > length) {
|
|
167
|
+
throw error ?? new InvalidArgument(`${name} should be at most ${length} characters`);
|
|
168
|
+
}
|
|
169
|
+
return arg;
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
export function _min(value, error) {
|
|
173
|
+
return function (arg, name) {
|
|
174
|
+
if (arg < value) {
|
|
175
|
+
throw error ?? new InvalidArgument(`${name} should be at least ${value}`);
|
|
176
|
+
}
|
|
177
|
+
return arg;
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
export function _max(value, error) {
|
|
181
|
+
return function (arg, name) {
|
|
182
|
+
if (arg > value) {
|
|
183
|
+
throw error ?? new InvalidArgument(`${name} should be at most ${value}`);
|
|
184
|
+
}
|
|
185
|
+
return arg;
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
export function _non_null(error) {
|
|
189
|
+
return function (arg, name) {
|
|
190
|
+
if (arg === null) {
|
|
191
|
+
throw error ?? new InvalidArgument(`${name} should not be null`);
|
|
192
|
+
}
|
|
193
|
+
return arg;
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
export function _non_undefined(error) {
|
|
197
|
+
return function (arg, name) {
|
|
198
|
+
if (arg === undefined) {
|
|
199
|
+
throw error ?? new InvalidArgument(`${name} should not be undefined`);
|
|
200
|
+
}
|
|
201
|
+
return arg;
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
export function _non_NaN(error) {
|
|
205
|
+
return function (arg, name) {
|
|
206
|
+
if (isNaN(arg)) {
|
|
207
|
+
throw error ?? new InvalidArgument(`${name} is NaN`);
|
|
208
|
+
}
|
|
209
|
+
return arg;
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
export function _non_nil(error) {
|
|
213
|
+
return function (arg, name) {
|
|
214
|
+
if (arg === null || arg === undefined || arg === '' || (Array.isArray(arg) && arg.length === 0) || (typeof arg === 'object' && Object.keys(arg).length === 0)) {
|
|
215
|
+
throw error ?? new InvalidArgument(`${name} should not be null, undefined or empty`);
|
|
216
|
+
}
|
|
217
|
+
return arg;
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
export function _non_empty(error) {
|
|
221
|
+
return function (arg, name) {
|
|
222
|
+
if (arg.length === 0) {
|
|
223
|
+
throw error ?? new InvalidArgument(`${name} should not be empty`);
|
|
224
|
+
}
|
|
225
|
+
return arg;
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
export function _default(value) {
|
|
229
|
+
return function (arg, _name) {
|
|
230
|
+
if (arg === null || arg === undefined || arg === '' || (Array.isArray(arg) && arg.length === 0) || (typeof arg === 'object' && Object.keys(arg).length === 0)) {
|
|
231
|
+
if (value instanceof Function) {
|
|
232
|
+
return value();
|
|
233
|
+
}
|
|
234
|
+
return value;
|
|
235
|
+
}
|
|
236
|
+
return arg;
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
export function _contains(values, error) {
|
|
240
|
+
return function (arg, name) {
|
|
241
|
+
if (!Array.isArray(values)) {
|
|
242
|
+
throw new InvalidArgument(`${name} should be an array`);
|
|
243
|
+
}
|
|
244
|
+
if (!values.includes(arg)) {
|
|
245
|
+
throw error ?? new InvalidArgument(`${name} should be one of ${values.join(', ')}`);
|
|
246
|
+
}
|
|
247
|
+
return arg;
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
export function _lt(value, error) {
|
|
251
|
+
return function (arg, name) {
|
|
252
|
+
if (typeof arg !== 'number') {
|
|
253
|
+
return arg;
|
|
254
|
+
}
|
|
255
|
+
if (arg >= value) {
|
|
256
|
+
throw error ?? new InvalidArgument(`${name} should be less than ${value}`);
|
|
257
|
+
}
|
|
258
|
+
return arg;
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
export function _gt(value, error) {
|
|
262
|
+
return function (arg, name) {
|
|
263
|
+
if (typeof arg !== 'number') {
|
|
264
|
+
return arg;
|
|
265
|
+
}
|
|
266
|
+
if (arg <= value) {
|
|
267
|
+
throw error ?? new InvalidArgument(`${name} should be greater than ${value}`);
|
|
268
|
+
}
|
|
269
|
+
return arg;
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
export function _reg_match(reg, error) {
|
|
273
|
+
return function (arg, name) {
|
|
274
|
+
if (typeof arg !== 'string') {
|
|
275
|
+
return arg;
|
|
276
|
+
}
|
|
277
|
+
if (!reg.test(arg)) {
|
|
278
|
+
throw error ?? new InvalidArgument(`${name} should match ${reg}`);
|
|
279
|
+
}
|
|
280
|
+
return arg;
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
export function _glob_match(glob, error) {
|
|
284
|
+
return function (arg, name) {
|
|
285
|
+
if (typeof arg !== 'string') {
|
|
286
|
+
return arg;
|
|
287
|
+
}
|
|
288
|
+
return _reg_match(GlobToRegExp(glob), error)(arg, name);
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
export function _is_email() {
|
|
292
|
+
return _reg_match(/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/);
|
|
293
|
+
}
|
|
294
|
+
export function _is_uuid() {
|
|
295
|
+
return _reg_match(/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/);
|
|
296
|
+
}
|
|
297
|
+
export function _to_int(error) {
|
|
298
|
+
return function (arg, name) {
|
|
299
|
+
const res = parseInt(arg);
|
|
300
|
+
if (isNaN(res)) {
|
|
301
|
+
throw error ?? new InvalidArgument(`${name} should be integer`);
|
|
302
|
+
}
|
|
303
|
+
return res;
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
export function _to_float(error) {
|
|
307
|
+
return function (arg, name) {
|
|
308
|
+
const res = parseFloat(arg);
|
|
309
|
+
if (isNaN(res)) {
|
|
310
|
+
throw error ?? new InvalidArgument(`${name} should be float`);
|
|
311
|
+
}
|
|
312
|
+
return res;
|
|
313
|
+
};
|
|
314
|
+
}
|
|
315
|
+
//# sourceMappingURL=args.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/args.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,GAAG,MAA2C;IACvE,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACxB;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AAEH,MAAM,UAAU,UAAU,CAAC,GAAG,MAAkD;IAC9E,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,mBAAmB,CAAC,CAAC;SACvD;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAO,GAAG,MAAmD;IAClF,OAAO,UAAU,GAAc,EAAE,IAAY;QAC3C,IAAI,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE;YACzB,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,gBAAgB,CAAC,CAAC;SACpD;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAO,GAAM;IACxC,OAAO,UAAU,GAAuB,EAAE,IAAY;QACpD,IAAI,GAAG,YAAY,GAAG,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACjB,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,uBAAuB,GAAG,EAAE,CAAC,CAAC;aAChE;SACF;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;YAChF,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,uBAAuB,GAAG,EAAE,CAAC,CAAC;SAChE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAG,MAAmD;IAChF,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE;gBAC1B,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,oBAAoB,CAAC,CAAC;aACxD;SACF;aAAM,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE;YACnC,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,oBAAoB,CAAC,CAAC;SACxD;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,GAAG,MAAkD;IAC9E,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,mBAAmB,CAAC,CAAC;SACvD;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAG,MAA+C;IAC1E,OAAO,UAAU,GAAU,EAAE,IAAY;QACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,kBAAkB,CAAC,CAAC;SACtD;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAG,MAAiD;IAC7E,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtF,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,6BAA6B,CAAC,CAAC;SACjE;QAED,OAAO,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,GAAG,MAA2C;IAChE,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI;gBACF,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aACzB;YAAC,OAAO,CAAC,EAAE;gBACV,SAAS;aACV;SACF;QAED,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,oCAAoC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/G,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,UAAU,GAAY,EAAE,KAAa;QAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QACD,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,UAAU,GAAa;QAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,OAAO,GAAG,CAAC;SACZ;QAED,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,UAAU,GAAY,EAAE,KAAa;QAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QAED,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,IAAa;IACjC,OAAO,UAAU,GAAY,EAAE,KAAa;QAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;SAChD;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,GAAW,EAAE,KAAa;IAC9D,OAAO,UAAU,GAA4B,EAAE,IAAY;QACzD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACjD,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;gBACxC,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,sBAAsB,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC;aACnF;SACF;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE;gBAC1B,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,sBAAsB,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC;aACnF;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa;IACvD,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE;YACvB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,uBAAuB,MAAM,aAAa,CAAC,CAAC;SACvF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa;IACvD,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE;YACvB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,sBAAsB,MAAM,aAAa,CAAC,CAAC;SACtF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,KAAa,EAAE,KAAa;IAC/C,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,IAAI,GAAG,GAAG,KAAK,EAAE;YACf,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,uBAAuB,KAAK,EAAE,CAAC,CAAC;SAC3E;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,KAAa,EAAE,KAAa;IAC/C,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,IAAI,GAAG,GAAG,KAAK,EAAE;YACf,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,sBAAsB,KAAK,EAAE,CAAC,CAAC;SAC1E;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,IAAI,GAAG,KAAK,IAAI,EAAE;YAChB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC;SAClE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,0BAA0B,CAAC,CAAC;SACvE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;YACd,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,SAAS,CAAC,CAAC;SACtD;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,UAAU,GAAQ,EAAE,IAAY;QACrC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YAC7J,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,yCAAyC,CAAC,CAAC;SACtF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,UAAU,GAAmB,EAAE,IAAY;QAChD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,sBAAsB,CAAC,CAAC;SACnE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ,CAAI,KAAoB;IAC9C,OAAO,UAAU,GAAQ,EAAE,KAAa;QACtC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;YAC7J,IAAI,KAAK,YAAY,QAAQ,EAAE;gBAC7B,OAAO,KAAK,EAAE,CAAC;aAChB;YACD,OAAO,KAAK,CAAC;SACd;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,MAAe,EAAE,KAAa;IACzD,OAAO,UAAU,GAAM,EAAE,IAAY;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC1B,MAAM,IAAI,eAAe,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACzB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,qBAAqB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACrF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,KAAa;IAC9C,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QAED,IAAI,GAAG,IAAI,KAAK,EAAE;YAChB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,wBAAwB,KAAK,EAAE,CAAC,CAAC;SAC5E;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,KAAa;IAC9C,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QAED,IAAI,GAAG,IAAI,KAAK,EAAE;YAChB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,2BAA2B,KAAK,EAAE,CAAC,CAAC;SAC/E;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,KAAa;IACnD,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAClB,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,iBAAiB,GAAG,EAAE,CAAC,CAAC;SACnE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,KAAa;IACrD,OAAO,UAAU,GAAY,EAAE,IAAY;QACzC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,OAAO,GAAG,CAAC;SACZ;QACD,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,UAAU,CAAC,kDAAkD,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO,UAAU,CAAC,uEAAuE,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE1B,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;YACd,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,oBAAoB,CAAC,CAAC;SACjE;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,UAAU,GAAW,EAAE,IAAY;QACxC,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAE5B,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;YACd,MAAM,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,IAAI,kBAAkB,CAAC,CAAC;SAC/D;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC"}
|
package/lib/mjs/fp.d.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export type Constructor<T> = new (...args: any[]) => T;
|
|
2
|
+
/**
|
|
3
|
+
* Chains a list of functions together, passing the result of each function to the next.
|
|
4
|
+
*
|
|
5
|
+
* @param fns
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare function _chain<T>(...fns: (((arg?: any) => Promise<any>) | any | Promise<any>)[]): Promise<T>;
|
|
9
|
+
export declare function _zip(...fns: ((arg?: any) => Promise<any>)[]): (val: unknown) => Promise<any[]>;
|
|
10
|
+
export declare function _use(value: () => Promise<unknown>, name: string): (arg?: unknown) => Promise<{
|
|
11
|
+
[x: string]: unknown;
|
|
12
|
+
}>;
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* Catches errors from a promise and calls the provided error handler.
|
|
16
|
+
* If error occures, chained promise will be rejected with the error.
|
|
17
|
+
*
|
|
18
|
+
* It acts also like circuit breaker, if error occures, it will not call next promise in chain.
|
|
19
|
+
*
|
|
20
|
+
* @param promise
|
|
21
|
+
* @param onError
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
export declare function _catch(promise: (...arg: unknown[]) => Promise<unknown>, onError: (err: Error, ...arg: unknown[]) => Promise<void>): (...arg: unknown[]) => Promise<unknown>;
|
|
25
|
+
/**
|
|
26
|
+
* Catch errors from a promise and call the provided error handler if the error matches the filter.
|
|
27
|
+
*
|
|
28
|
+
* @param promise
|
|
29
|
+
* @param onError
|
|
30
|
+
* @param filter
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
export declare function _catchFilter(promise: (arg: unknown) => Promise<unknown>, onError: (err: Error) => void, filter: (err: Error) => boolean): (arg?: unknown) => Promise<unknown>;
|
|
34
|
+
export declare function _catchValue(promise: (arg: unknown) => Promise<unknown>, onError: (err: Error) => unknown, value: unknown): (arg?: unknown) => Promise<unknown>;
|
|
35
|
+
/**
|
|
36
|
+
* Cactches exception of specific type and calls provided error handler.
|
|
37
|
+
*
|
|
38
|
+
* @param promise
|
|
39
|
+
* @param onError
|
|
40
|
+
* @param exception
|
|
41
|
+
* @returns
|
|
42
|
+
*/
|
|
43
|
+
export declare function _catchException(promise: (arg: unknown) => Promise<unknown>, onError: (err: Error) => void, exception: Constructor<Error>): (arg?: unknown) => Promise<unknown>;
|
|
44
|
+
export declare function _fallback(promise: (arg: unknown) => Promise<unknown>, fallback: (err: Error) => unknown): (arg?: unknown) => Promise<unknown>;
|
|
45
|
+
export declare function _tap(promise: ((arg: unknown) => Promise<unknown>) | Promise<unknown>): (arg?: unknown) => Promise<unknown>;
|
|
46
|
+
export declare function _either(cond: (arg: unknown) => Promise<unknown>, onFulfilled: () => Promise<unknown>, onRejected: () => Promise<unknown>): (arg?: unknown) => Promise<unknown>;
|
|
47
|
+
//# sourceMappingURL=fp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fp.d.ts","sourceRoot":"","sources":["../../src/fp.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAGvD;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAUpG;AAED,wBAAgB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,SAC7C,OAAO,oBACrB;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,UAC1C,OAAO;;GAC5B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,YAChH,OAAO,EAAE,sBAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,UACxH,OAAO,sBAQtB;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,EAAE,KAAK,EAAE,OAAO,UACzG,OAAO,sBACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,UACzH,OAAO,sBAQtB;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,UACxF,OAAO,sBACtB;AAED,wBAAgB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,UACrE,OAAO,sBAOtB;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,UACzH,OAAO,sBACtB"}
|
package/lib/mjs/fp.js
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chains a list of functions together, passing the result of each function to the next.
|
|
3
|
+
*
|
|
4
|
+
* @param fns
|
|
5
|
+
* @returns
|
|
6
|
+
*/
|
|
7
|
+
export function _chain(...fns) {
|
|
8
|
+
return fns.reduce((prev, curr) => {
|
|
9
|
+
if (curr instanceof Promise) {
|
|
10
|
+
return prev.then(() => curr);
|
|
11
|
+
}
|
|
12
|
+
else if (typeof curr === 'function') {
|
|
13
|
+
return prev.then((res) => curr(res));
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
return prev.then(() => Promise.resolve(curr));
|
|
17
|
+
}
|
|
18
|
+
}, Promise.resolve(null));
|
|
19
|
+
}
|
|
20
|
+
export function _zip(...fns) {
|
|
21
|
+
return (val) => Promise.all(fns.map((fn) => fn(val)));
|
|
22
|
+
}
|
|
23
|
+
export function _use(value, name) {
|
|
24
|
+
return async (arg) => Object.assign({}, arg, { [name]: await value() });
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* Catches errors from a promise and calls the provided error handler.
|
|
29
|
+
* If error occures, chained promise will be rejected with the error.
|
|
30
|
+
*
|
|
31
|
+
* It acts also like circuit breaker, if error occures, it will not call next promise in chain.
|
|
32
|
+
*
|
|
33
|
+
* @param promise
|
|
34
|
+
* @param onError
|
|
35
|
+
* @returns
|
|
36
|
+
*/
|
|
37
|
+
export function _catch(promise, onError) {
|
|
38
|
+
return (...arg) => Promise.resolve(promise(...arg)).catch(async (err) => await onError(err, ...arg));
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Catch errors from a promise and call the provided error handler if the error matches the filter.
|
|
42
|
+
*
|
|
43
|
+
* @param promise
|
|
44
|
+
* @param onError
|
|
45
|
+
* @param filter
|
|
46
|
+
* @returns
|
|
47
|
+
*/
|
|
48
|
+
export function _catchFilter(promise, onError, filter) {
|
|
49
|
+
return (arg) => Promise.resolve(promise(arg)).catch((err) => {
|
|
50
|
+
if (filter(err)) {
|
|
51
|
+
return onError(err);
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
throw err;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
export function _catchValue(promise, onError, value) {
|
|
59
|
+
return (arg) => Promise.resolve(promise(arg)).catch((err) => (err === value ? onError(err) : Promise.reject(err)));
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Cactches exception of specific type and calls provided error handler.
|
|
63
|
+
*
|
|
64
|
+
* @param promise
|
|
65
|
+
* @param onError
|
|
66
|
+
* @param exception
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
export function _catchException(promise, onError, exception) {
|
|
70
|
+
return (arg) => Promise.resolve(promise(arg)).catch((err) => {
|
|
71
|
+
if (typeof err === 'object' && err instanceof exception) {
|
|
72
|
+
return onError(err);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
throw err;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
export function _fallback(promise, fallback) {
|
|
80
|
+
return (arg) => promise(arg).catch(fallback);
|
|
81
|
+
}
|
|
82
|
+
export function _tap(promise) {
|
|
83
|
+
return (arg) => {
|
|
84
|
+
if (promise instanceof Promise) {
|
|
85
|
+
return promise.then(() => arg);
|
|
86
|
+
}
|
|
87
|
+
return promise(arg).then(() => arg);
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export function _either(cond, onFulfilled, onRejected) {
|
|
91
|
+
return (arg) => cond(arg).then((res) => (res ? onFulfilled() : onRejected()));
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=fp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fp.js","sourceRoot":"","sources":["../../src/fp.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/index.d.ts
CHANGED
package/lib/mjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|
package/lib/mjs/index.js
CHANGED
package/lib/mjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../src/string.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAS/C"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function trimChar(s, char) {
|
|
2
|
+
var start = 0, end = s.length;
|
|
3
|
+
while (start < end && s[start] === char)
|
|
4
|
+
++start;
|
|
5
|
+
while (end > start && s[end - 1] === char)
|
|
6
|
+
--end;
|
|
7
|
+
return start > 0 || end < s.length ? s.substring(start, end) : s;
|
|
8
|
+
}
|
|
9
|
+
;
|
|
10
|
+
//# sourceMappingURL=string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/string.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,CAAS,EAAE,IAAY;IAC9C,IAAI,KAAK,GAAG,CAAC,EACX,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;IAEjB,OAAO,KAAK,GAAG,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI;QAAE,EAAE,KAAK,CAAC;IAEjD,OAAO,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,IAAI;QAAE,EAAE,GAAG,CAAC;IAEjD,OAAO,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAAA,CAAC"}
|
package/lib/mjs/thread.d.ts
CHANGED
|
@@ -6,4 +6,8 @@
|
|
|
6
6
|
* @returns
|
|
7
7
|
*/
|
|
8
8
|
export declare const sleep: (duration: number) => Promise<void>;
|
|
9
|
+
/**
|
|
10
|
+
* Delay execution of a function for a given duration
|
|
11
|
+
*/
|
|
12
|
+
export declare const delay: <T>(duration: number, callback: () => T) => Promise<T>;
|
|
9
13
|
//# sourceMappingURL=thread.d.ts.map
|
package/lib/mjs/thread.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.d.ts","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,aAAc,MAAM,kBAMrC,CAAC"}
|
|
1
|
+
{"version":3,"file":"thread.d.ts","sourceRoot":"","sources":["../../src/thread.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,aAAc,MAAM,kBAMrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,gBAAiB,MAAM,kCAkBxC,CAAA"}
|