@giveback007/util-lib 0.23.0 → 0.24.2
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/dist/general.d.ts +11 -5
- package/dist/general.js +26 -13
- package/dist/general.js.map +1 -1
- package/dist/test.d.ts +3 -1
- package/dist/test.js +7 -3
- package/dist/test.js.map +1 -1
- package/dist/time.js +0 -1
- package/dist/time.js.map +1 -1
- package/package.json +2 -2
- package/src/general.ts +27 -12
- package/src/test.ts +4 -1
- package/src/time.ts +0 -1
package/dist/general.d.ts
CHANGED
|
@@ -2,11 +2,17 @@ import type { AnyObj, JsType } from '.';
|
|
|
2
2
|
/**
|
|
3
3
|
* @example
|
|
4
4
|
* ```js
|
|
5
|
-
* interval((i) => console.log('
|
|
6
|
-
*
|
|
5
|
+
* interval((i) => console.log('idx: ' + i), 1000, 2))
|
|
6
|
+
* // (log =>) "idx: 0"
|
|
7
|
+
* // (log =>) "idx: 1"
|
|
8
|
+
* // only ran twice because maxTimes was set to: `2` (third parameter)
|
|
9
|
+
*
|
|
10
|
+
* interval((i, stop) => i === 10 && stop());
|
|
11
|
+
* // when i is 10 will stop the interval
|
|
7
12
|
* ```
|
|
8
13
|
*/
|
|
9
|
-
export declare const interval: (funct: (i: number) => any, ms: number,
|
|
14
|
+
export declare const interval: (funct: (i: number, stop: () => void) => any, ms: number, maxTimes?: number | undefined) => {
|
|
15
|
+
/** Stop the interval */
|
|
10
16
|
stop: () => void;
|
|
11
17
|
};
|
|
12
18
|
/** A promise that waits `ms` amount of milliseconds to execute */
|
|
@@ -22,9 +28,9 @@ export declare const cloneLog: (x: any) => void;
|
|
|
22
28
|
/** An improved version of native `typeof` */
|
|
23
29
|
export declare function type(val: any): JsType;
|
|
24
30
|
export declare function assertType<T extends JsType>(val: any, types: T | T[]): asserts val is T;
|
|
25
|
-
export declare const
|
|
31
|
+
export declare const uuid: () => string;
|
|
26
32
|
export declare const randomColorHex: () => string;
|
|
27
|
-
export declare function debounceTimeOut(): (fct: Function, ms
|
|
33
|
+
export declare function debounceTimeOut(): (fct: Function | 'cancel', ms?: number | undefined) => void;
|
|
28
34
|
export declare function promiseOut<T = any>(): {
|
|
29
35
|
resolve: (value: T) => void;
|
|
30
36
|
promise: Promise<unknown>;
|
package/dist/general.js
CHANGED
|
@@ -1,25 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.promiseOut = exports.debounceTimeOut = exports.randomColorHex = exports.
|
|
3
|
+
exports.promiseOut = exports.debounceTimeOut = exports.randomColorHex = exports.uuid = exports.assertType = exports.type = exports.cloneLog = exports.unsubAll = exports.wait = exports.interval = void 0;
|
|
4
4
|
const _1 = require(".");
|
|
5
5
|
/**
|
|
6
6
|
* @example
|
|
7
7
|
* ```js
|
|
8
|
-
* interval((i) => console.log('
|
|
9
|
-
*
|
|
8
|
+
* interval((i) => console.log('idx: ' + i), 1000, 2))
|
|
9
|
+
* // (log =>) "idx: 0"
|
|
10
|
+
* // (log =>) "idx: 1"
|
|
11
|
+
* // only ran twice because maxTimes was set to: `2` (third parameter)
|
|
12
|
+
*
|
|
13
|
+
* interval((i, stop) => i === 10 && stop());
|
|
14
|
+
* // when i is 10 will stop the interval
|
|
10
15
|
* ```
|
|
11
16
|
*/
|
|
12
|
-
const interval = (funct, ms,
|
|
13
|
-
|
|
17
|
+
const interval = (funct, ms,
|
|
18
|
+
/** */
|
|
19
|
+
maxTimes) => {
|
|
20
|
+
if (_1.isType(maxTimes, 'number') && maxTimes < 1)
|
|
14
21
|
throw Error('argument "times" can\'t be less than 1');
|
|
15
22
|
let i = 0;
|
|
16
|
-
|
|
17
|
-
|
|
23
|
+
/** stops the interval */
|
|
24
|
+
const stop = () => clearInterval(itv);
|
|
25
|
+
const itv = setInterval(() => {
|
|
26
|
+
funct(i, stop);
|
|
18
27
|
i++;
|
|
19
|
-
if (
|
|
20
|
-
|
|
28
|
+
if (maxTimes && i >= maxTimes)
|
|
29
|
+
stop();
|
|
21
30
|
}, ms);
|
|
22
|
-
return {
|
|
31
|
+
return {
|
|
32
|
+
/** Stop the interval */
|
|
33
|
+
stop
|
|
34
|
+
};
|
|
23
35
|
};
|
|
24
36
|
exports.interval = interval;
|
|
25
37
|
/** A promise that waits `ms` amount of milliseconds to execute */
|
|
@@ -73,7 +85,7 @@ function assertType(val, types) {
|
|
|
73
85
|
throw Error(`value needs to be of type ${types.join(' || ')}`);
|
|
74
86
|
}
|
|
75
87
|
exports.assertType = assertType;
|
|
76
|
-
const
|
|
88
|
+
const uuid = () => {
|
|
77
89
|
let d = new Date().getTime();
|
|
78
90
|
let d2 = (performance
|
|
79
91
|
&&
|
|
@@ -94,7 +106,7 @@ const uiid = () => {
|
|
|
94
106
|
return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
|
|
95
107
|
});
|
|
96
108
|
};
|
|
97
|
-
exports.
|
|
109
|
+
exports.uuid = uuid;
|
|
98
110
|
const randomColorHex = () => '#' + ((1 << 24) * Math.random() | 0).toString(16);
|
|
99
111
|
exports.randomColorHex = randomColorHex;
|
|
100
112
|
// export const jsonp = async <T = any>(
|
|
@@ -114,7 +126,8 @@ function debounceTimeOut() {
|
|
|
114
126
|
return (fct, ms) => {
|
|
115
127
|
if (timeoutId)
|
|
116
128
|
clearTimeout(timeoutId);
|
|
117
|
-
|
|
129
|
+
if (fct !== 'cancel')
|
|
130
|
+
timeoutId = setTimeout(fct, ms || 0);
|
|
118
131
|
};
|
|
119
132
|
}
|
|
120
133
|
exports.debounceTimeOut = debounceTimeOut;
|
package/dist/general.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":";;;AAEA,wBAAkD;AAElD
|
|
1
|
+
{"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":"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"}
|
package/dist/test.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { JsType } from '.';
|
|
2
2
|
import { JsTypeFind } from '.';
|
|
3
|
+
/** Check if `x` is equal to any of the values in the array. */
|
|
4
|
+
export declare const equalAny: (x: any, equals: any[]) => boolean;
|
|
3
5
|
/**
|
|
4
6
|
* Checks if object has the key, made as a function for type transfer.
|
|
5
7
|
*
|
package/dist/test.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isValidEmail = exports.nonValue = exports.nullOrEmpty = exports.isType = exports.hasKeys = exports.hasKey = void 0;
|
|
3
|
+
exports.isValidEmail = exports.nonValue = exports.nullOrEmpty = exports.isType = exports.hasKeys = exports.hasKey = exports.equalAny = void 0;
|
|
4
4
|
const _1 = require(".");
|
|
5
|
+
const _2 = require(".");
|
|
6
|
+
/** Check if `x` is equal to any of the values in the array. */
|
|
7
|
+
const equalAny = (x, equals) => !!equals.find((y) => _1.equal(x, y));
|
|
8
|
+
exports.equalAny = equalAny;
|
|
5
9
|
/**
|
|
6
10
|
* Checks if object has the key, made as a function for type transfer.
|
|
7
11
|
*
|
|
@@ -34,7 +38,7 @@ exports.hasKeys = hasKeys;
|
|
|
34
38
|
* isType(null, 'undefined') //=> false
|
|
35
39
|
* ```
|
|
36
40
|
*/
|
|
37
|
-
const isType = (val, testType) =>
|
|
41
|
+
const isType = (val, testType) => _2.type(val) === testType;
|
|
38
42
|
exports.isType = isType;
|
|
39
43
|
/** any of the values in the first "example" return `true`
|
|
40
44
|
* @example
|
|
@@ -52,7 +56,7 @@ function nullOrEmpty(x) {
|
|
|
52
56
|
return !x.length;
|
|
53
57
|
// object // { key: 'val' } => false, { } => true
|
|
54
58
|
if (exports.isType(x, 'object'))
|
|
55
|
-
return !
|
|
59
|
+
return !_2.objVals(x).length;
|
|
56
60
|
return false;
|
|
57
61
|
}
|
|
58
62
|
exports.nullOrEmpty = nullOrEmpty;
|
package/dist/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;;AAAA,wBAAkC;AAClC,wBAA8C;AAE9C,+DAA+D;AACxD,MAAM,QAAQ,GAAG,CAAC,CAAM,EAAE,MAAa,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAAxE,QAAA,QAAQ,YAAgE;AAErF;;;;;;GAMG;AACI,MAAM,MAAM,GAAG,CAEpB,GAAQ,EAAE,GAAM,EAA4B,EAAE,CAC9C,cAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAHtC,QAAA,MAAM,UAGgC;AAEnD,4FAA4F;AAC5F,SAAgB,OAAO,CAErB,GAAQ,EAAE,IAAS;IACnB,IAAI,CAAC,cAAM,CAAC,GAAG,EAAE,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAEzC,KAAK,MAAM,GAAG,IAAI,IAAI;QACpB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;IAE7C,OAAO,IAAI,CAAC;AACd,CAAC;AATD,0BASC;AAED;;;;;;;;;;;;GAYG;AACI,MAAM,MAAM,GAAG,CACpB,GAAQ,EAAE,QAAW,EACC,EAAE,CAAC,OAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC;AAFrC,QAAA,MAAM,UAE+B;AAElD;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,CAAM;IAEhC,oBAAoB;IACpB,IAAI,gBAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7B,iCAAiC;IACjC,IAAI,cAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,cAAM,CAAC,CAAC,EAAE,OAAO,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAEhE,iDAAiD;IACjD,IAAI,cAAM,CAAC,CAAC,EAAE,QAAQ,CAAC;QAAE,OAAO,CAAC,UAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAEnD,OAAO,KAAK,CAAC;AACf,CAAC;AAZD,kCAYC;AAED,mCAAmC;AAC5B,MAAM,QAAQ,GAAG,CAAC,GAAQ,EAA6B,EAAE,CAC9D,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC;AADvB,QAAA,QAAQ,YACe;AAE7B,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE,CAC5C,2JAA2J,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAD5J,QAAA,YAAY,gBACgJ"}
|
package/dist/time.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.yearStartEnd = exports.monthStartEnd = exports.weekStartEnd = exports.getDayStartEnd = exports.wks = exports.weeks = exports.dys = exports.days = exports.hrs = exports.hours = exports.min = exports.minutes = exports.sec = exports.seconds = exports.msToTime = exports.msToWks = exports.msToDys = exports.msToHrs = exports.msToMin = exports.msToSec = exports.dateTimeToString = exports.weekTuple = exports.msTime = void 0;
|
|
4
|
-
// import * as moment from 'moment-timezone';
|
|
5
4
|
const _1 = require(".");
|
|
6
5
|
exports.msTime = {
|
|
7
6
|
s: 1000,
|
package/dist/time.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@giveback007/util-lib",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.2",
|
|
4
4
|
"description": "Small util function library",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"
|
|
8
|
+
"pub": "del dist /s /f /q && npm run lint && npm run build && npm publish",
|
|
9
9
|
"test": "jest --watch",
|
|
10
10
|
"build": "tsc",
|
|
11
11
|
"build:watch": "tsc --watch",
|
package/src/general.ts
CHANGED
|
@@ -5,27 +5,39 @@ import { isType, objMap, hasKey, clone } from '.';
|
|
|
5
5
|
/**
|
|
6
6
|
* @example
|
|
7
7
|
* ```js
|
|
8
|
-
* interval((i) => console.log('
|
|
9
|
-
*
|
|
8
|
+
* interval((i) => console.log('idx: ' + i), 1000, 2))
|
|
9
|
+
* // (log =>) "idx: 0"
|
|
10
|
+
* // (log =>) "idx: 1"
|
|
11
|
+
* // only ran twice because maxTimes was set to: `2` (third parameter)
|
|
12
|
+
*
|
|
13
|
+
* interval((i, stop) => i === 10 && stop());
|
|
14
|
+
* // when i is 10 will stop the interval
|
|
10
15
|
* ```
|
|
11
16
|
*/
|
|
12
17
|
export const interval = (
|
|
13
|
-
funct: (i: number) => any,
|
|
18
|
+
funct: (i: number, stop: () => void) => any,
|
|
14
19
|
ms: number,
|
|
15
|
-
|
|
20
|
+
|
|
21
|
+
/** */
|
|
22
|
+
maxTimes?: number
|
|
16
23
|
) => {
|
|
17
|
-
if (isType(
|
|
24
|
+
if (isType(maxTimes, 'number') && maxTimes < 1)
|
|
18
25
|
throw Error('argument "times" can\'t be less than 1');
|
|
19
26
|
|
|
20
27
|
let i = 0;
|
|
21
|
-
|
|
22
|
-
|
|
28
|
+
/** stops the interval */
|
|
29
|
+
const stop = () => clearInterval(itv);
|
|
30
|
+
const itv = setInterval(() => {
|
|
31
|
+
funct(i, stop);
|
|
23
32
|
i++;
|
|
24
33
|
|
|
25
|
-
if (
|
|
34
|
+
if (maxTimes && i >= maxTimes) stop();
|
|
26
35
|
}, ms);
|
|
27
36
|
|
|
28
|
-
return {
|
|
37
|
+
return {
|
|
38
|
+
/** Stop the interval */
|
|
39
|
+
stop
|
|
40
|
+
};
|
|
29
41
|
}
|
|
30
42
|
|
|
31
43
|
/** A promise that waits `ms` amount of milliseconds to execute */
|
|
@@ -78,7 +90,7 @@ export function assertType<T extends JsType>(
|
|
|
78
90
|
throw Error(`value needs to be of type ${types.join(' || ')}`)
|
|
79
91
|
}
|
|
80
92
|
|
|
81
|
-
export const
|
|
93
|
+
export const uuid = () =>
|
|
82
94
|
{
|
|
83
95
|
let d = new Date().getTime();
|
|
84
96
|
let d2 = (
|
|
@@ -124,9 +136,12 @@ export const randomColorHex = () =>
|
|
|
124
136
|
|
|
125
137
|
export function debounceTimeOut() {
|
|
126
138
|
let timeoutId: ReturnType<typeof setTimeout> | null = null;
|
|
127
|
-
|
|
139
|
+
|
|
140
|
+
return (fct: Function | 'cancel', ms?: number) => {
|
|
128
141
|
if (timeoutId) clearTimeout(timeoutId);
|
|
129
|
-
|
|
142
|
+
|
|
143
|
+
if (fct !== 'cancel')
|
|
144
|
+
timeoutId = setTimeout(fct, ms || 0) as any;
|
|
130
145
|
}
|
|
131
146
|
}
|
|
132
147
|
|
package/src/test.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { equal, JsType } from '.';
|
|
2
2
|
import { JsTypeFind, objVals, type } from '.';
|
|
3
3
|
|
|
4
|
+
/** Check if `x` is equal to any of the values in the array. */
|
|
5
|
+
export const equalAny = (x: any, equals: any[]) => !!equals.find((y) => equal(x, y));
|
|
6
|
+
|
|
4
7
|
/**
|
|
5
8
|
* Checks if object has the key, made as a function for type transfer.
|
|
6
9
|
*
|
package/src/time.ts
CHANGED