topkat-utils 1.2.12 → 1.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/src/array-utils.d.ts +1 -1
- package/dist/src/error-utils.d.ts +1 -0
- package/dist/src/error-utils.js +2 -0
- package/dist/src/error-utils.js.map +1 -1
- package/dist/src/object-utils.d.ts +10 -8
- package/dist/src/object-utils.js +4 -2
- package/dist/src/object-utils.js.map +1 -1
- package/dist/src/string-utils.d.ts +15 -8
- package/dist/src/string-utils.js +15 -19
- package/dist/src/string-utils.js.map +1 -1
- package/package.json +1 -1
- package/src/error-utils.ts +2 -0
- package/src/object-utils.ts +11 -10
- package/src/string-utils.ts +39 -16
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
### v1.2.14
|
|
2
|
+
* objForceWrite now return main object
|
|
3
|
+
* improve type on objectutils
|
|
4
|
+
|
|
5
|
+
### v1.2.13
|
|
6
|
+
* add ability to hide generated api code in errors by setting { code } value to undefined, null or option.doNotDisplayCode to true
|
|
7
|
+
* allow all casing function to receive an array of string as first argument OR rest param as a string array
|
|
8
|
+
|
|
1
9
|
### v1.2.12
|
|
2
10
|
* ADD returnValueIfUndefined for asArray function and improve type
|
|
3
11
|
|
|
@@ -7,7 +7,7 @@ export declare function shuffleArray(array: any): any;
|
|
|
7
7
|
* @param {Boolean} onlyUniqueValues default:false; may be true or a comparision function; (a,b) => return true if they are the same like (a, b) => a.name === b.name
|
|
8
8
|
* @return obj[addr] eventually processed by the callback
|
|
9
9
|
*/
|
|
10
|
-
export declare function ensureIsArrayAndPush(obj: object, addr: string, valToPush: any, onlyUniqueValues: Function):
|
|
10
|
+
export declare function ensureIsArrayAndPush(obj: object, addr: string, valToPush: any, onlyUniqueValues: Function): unknown;
|
|
11
11
|
/** If a string is provided, return it as array else return the value */
|
|
12
12
|
export declare function strAsArray(arrOrStr: any): any;
|
|
13
13
|
declare type AsArrReturnVal<T, X> = T extends undefined ? (X extends undefined ? void : X) : T extends any[] ? T : T[];
|
package/dist/src/error-utils.js
CHANGED
|
@@ -112,6 +112,8 @@ class DescriptiveError extends Error {
|
|
|
112
112
|
logger_utils_1.C.error(false, logger_utils_1.C.dim((0, clean_stack_trace_1.cleanStackTrace)(extraInfosRaw.stack || this.stack)));
|
|
113
113
|
}
|
|
114
114
|
this.code = code || 500;
|
|
115
|
+
if (this.options.doNotDisplayCode || (this.options.hasOwnProperty('code') && !(0, isset_1.isset)(this.options.code)))
|
|
116
|
+
delete this.code;
|
|
115
117
|
this.errorDescription = Object.assign({ msg: this.msg, code,
|
|
116
118
|
ressource }, extraInfos);
|
|
117
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-utils.js","sourceRoot":"","sources":["../../src/error-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,0CAA0C;AAC1C,cAAc;AACd,0CAA0C;AAC1C,mCAA+B;AAC/B,yCAAoC;AAEpC,2DAAqD;AACrD,iDAAkC;AAElC,SAAgB,WAAW,CAAC,uBAAuB,IAAI,OAAO,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,uBAAuB,CAAC,CAAA,CAAC,CAAC;AAAnH,kCAAmH;AAEnH,SAAgB,cAAc,CAAC,uBAAuB,IAAI,OAAO,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,uBAAuB,CAAC,CAAA,CAAC,CAAC;AAAtH,wCAAsH;AAEtH,SAAgB,kBAAkB,CAAC,uBAAuB,IAAI,OAAO,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAA,CAAC,CAAC;AAAzH,gDAAyH;AAEzH,SAAgB,qBAAqB,CAAC,uBAAuB,IAAI,OAAO,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAA,CAAC,CAAC;AAA5H,sDAA4H;AAE5H,SAAgB,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,uBAAuB;IACvE,IAAI,WAAW,GAAG,EAAE,CAAA;IACpB,KAAK,IAAI,IAAI,IAAI,uBAAuB,EAAE;QACtC,IAAI,CAAC,IAAA,aAAK,EAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAA,kBAAO,EAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC9H;IACD,IAAI,WAAW,CAAC,MAAM;QAAE,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACjK,CAAC;AAND,wCAMC;AAGD,SAAgB,cAAc,CAAC,CAAC;IAC5B,IAAI,CAAC,GAAG,EAAE,CAAA;IACV,KAAK,IAAI,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,IAAA,aAAK,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5C,IAAI,CAAC,CAAC,MAAM;QAAE,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACzI,CAAC;AAJD,wCAIC;AAEM,KAAK,UAAU,QAAQ,CAAC,QAAkB,EAAE,QAAkB,GAAG,EAAE,GAAG,CAAC;IAC1E,IAAI;QACA,OAAO,MAAM,QAAQ,EAAE,CAAA;KAC1B;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;KAC1B;AACL,CAAC;AAND,4BAMC;
|
|
1
|
+
{"version":3,"file":"error-utils.js","sourceRoot":"","sources":["../../src/error-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,32 +25,34 @@ export declare function findByAddressAll(obj: Record<string, any>, addr: string,
|
|
|
25
25
|
/** Enforce writing subItems. Eg: user.name.blah will ensure all are set until the writing of the last item
|
|
26
26
|
* NOTE: doesn't work with arrays
|
|
27
27
|
*/
|
|
28
|
-
export declare function objForceWrite(obj:
|
|
28
|
+
export declare function objForceWrite<MainObj extends Record<string, any>>(obj: MainObj, addr: string, item: any): MainObj;
|
|
29
29
|
/** Enforce writing subItems, only if obj.addr is empty.
|
|
30
30
|
* Eg: user.name.blah will ensure all are set until the writing of the last item
|
|
31
31
|
* if user.name.blah has a value it will not change it.
|
|
32
32
|
* NOTE: doesn't work with arrays
|
|
33
33
|
*/
|
|
34
|
-
export declare function objForceWriteIfNotSet(obj:
|
|
34
|
+
export declare function objForceWriteIfNotSet<MainObj extends Record<string, any>>(obj: MainObj, addr: string, item: any): MainObj;
|
|
35
35
|
/** Merge mixins into class. Use it in the constructor like: mergeMixins(this, {myMixin: true}) */
|
|
36
36
|
export declare function mergeMixins(that: any, ...mixins: any[]): void;
|
|
37
|
-
export declare function cloneObject(o:
|
|
37
|
+
export declare function cloneObject<MainObj extends Record<string, any>>(o: MainObj): MainObj;
|
|
38
38
|
/** Deep clone. WILL REMOVE circular references */
|
|
39
|
-
export declare function deepClone<
|
|
39
|
+
export declare function deepClone<MainObj extends Record<string, any>>(obj: MainObj, cache?: any[]): MainObj;
|
|
40
40
|
/**
|
|
41
41
|
* @param {Object} obj the object on which we want to filter the keys
|
|
42
42
|
* @param {function} filterFunc function that returns true if the key match the wanted criteria
|
|
43
43
|
*/
|
|
44
|
-
export declare function filterKeys(obj:
|
|
44
|
+
export declare function filterKeys<MainObj extends Record<string, any>>(obj: MainObj, filter: any): MainObj;
|
|
45
45
|
/**
|
|
46
46
|
* @param {Object} obj the object on which we want to delete a property
|
|
47
47
|
* @param {Array} addrArr addressArray on which to delete the property
|
|
48
48
|
*/
|
|
49
49
|
export declare function deleteByAddress(obj: object, addr: string | string[]): void;
|
|
50
50
|
/** Remove all key/values pair if value is undefined */
|
|
51
|
-
export declare function objFilterUndefined(o:
|
|
51
|
+
export declare function objFilterUndefined<MainObj extends Record<string, any>>(o: MainObj): MainObj;
|
|
52
52
|
/** Lock all 1st level props of an object to read only */
|
|
53
|
-
export declare function readOnly(o:
|
|
53
|
+
export declare function readOnly<MainObj extends Record<string, any>>(o: MainObj): {
|
|
54
|
+
readonly [AA in keyof MainObj]: MainObj[AA];
|
|
55
|
+
};
|
|
54
56
|
/** Fields of the object can be created BUT NOT reassignated */
|
|
55
57
|
export declare function reassignForbidden(o: any): any;
|
|
56
58
|
/** All fileds and subFields of the object will become readOnly */
|
|
@@ -65,7 +67,7 @@ export declare function sortObjKeyAccordingToValue(unorderedObj: any, ascending?
|
|
|
65
67
|
* @param {function} callback (obj[addr]) => processValue. Eg: myObjAddr => myObjAddr.push('bikou')
|
|
66
68
|
* @return obj[addr] eventually processed by the callback
|
|
67
69
|
*/
|
|
68
|
-
export declare function ensureObjectProp(obj:
|
|
70
|
+
export declare function ensureObjectProp<MainObj extends Record<string, any>, Addr extends string>(obj: MainObj, addr: Addr, defaultValue: any, callback: (o: any) => any): MainObj[Addr];
|
|
69
71
|
/** object and array merge
|
|
70
72
|
* @warn /!\ Array will be merged and duplicate values will be deleted /!\
|
|
71
73
|
* @return {Object} new object result from merge
|
package/dist/src/object-utils.js
CHANGED
|
@@ -108,6 +108,7 @@ function objForceWrite(obj, addr, item) {
|
|
|
108
108
|
throw new error_utils_2.DescriptiveError(`itemNotTypeObjectOrArrayInAddrChainForObjForceWrite`, { code: 500, origin: 'Validator', chunks: chunks.map(c => c.replace(/\[(\d+)/, '[$1]')), actualValueOfItem: lastItem[chunk], actualChunk: chunk, chunkIndex: i });
|
|
109
109
|
lastItem = lastItem[chunk];
|
|
110
110
|
});
|
|
111
|
+
return obj;
|
|
111
112
|
}
|
|
112
113
|
exports.objForceWrite = objForceWrite;
|
|
113
114
|
/** Enforce writing subItems, only if obj.addr is empty.
|
|
@@ -269,11 +270,12 @@ exports.sortObjKeyAccordingToValue = sortObjKeyAccordingToValue;
|
|
|
269
270
|
* @param {function} callback (obj[addr]) => processValue. Eg: myObjAddr => myObjAddr.push('bikou')
|
|
270
271
|
* @return obj[addr] eventually processed by the callback
|
|
271
272
|
*/
|
|
272
|
-
function ensureObjectProp(obj, addr, defaultValue, callback
|
|
273
|
+
function ensureObjectProp(obj, addr, defaultValue, callback) {
|
|
273
274
|
(0, error_utils_1.err500IfNotSet)({ obj, addr, defaultValue, callback });
|
|
274
275
|
if (!(0, isset_1.isset)(obj[addr]))
|
|
275
276
|
obj[addr] = defaultValue;
|
|
276
|
-
callback
|
|
277
|
+
if (callback)
|
|
278
|
+
callback(obj[addr]);
|
|
277
279
|
return obj[addr];
|
|
278
280
|
}
|
|
279
281
|
exports.ensureObjectProp = ensureObjectProp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../src/object-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,32 @@
|
|
|
1
1
|
import { ObjectGeneric } from "./types";
|
|
2
2
|
/**Eg: camelCase */
|
|
3
|
-
export declare function camelCase(
|
|
3
|
+
export declare function camelCase(wordBits: string[]): string;
|
|
4
|
+
export declare function camelCase(...wordBits: string[]): string;
|
|
4
5
|
/**Eg: snake_case
|
|
5
6
|
* trimmed but not lowerCased
|
|
6
7
|
*/
|
|
7
|
-
export declare function snakeCase(
|
|
8
|
+
export declare function snakeCase(wordBits: string[]): string;
|
|
9
|
+
export declare function snakeCase(...wordBits: string[]): string;
|
|
8
10
|
/**Eg: kebab-case
|
|
9
11
|
* trimmed AND lowerCased
|
|
10
12
|
* undefined, null... => ''
|
|
11
13
|
*/
|
|
12
|
-
export declare function kebabCase(
|
|
14
|
+
export declare function kebabCase(wordBits: string[]): string;
|
|
15
|
+
export declare function kebabCase(...wordBits: string[]): string;
|
|
13
16
|
/**Eg: PascalCase undefined, null... => '' */
|
|
14
|
-
export declare function pascalCase(
|
|
17
|
+
export declare function pascalCase(wordBits: string[]): string;
|
|
18
|
+
export declare function pascalCase(...wordBits: string[]): string;
|
|
15
19
|
/**Eg: Titlecase undefined, null... => '' */
|
|
16
|
-
export declare function titleCase(
|
|
20
|
+
export declare function titleCase(wordBits: string[]): string;
|
|
21
|
+
export declare function titleCase(...wordBits: string[]): string;
|
|
17
22
|
/**Eg: UPPERCASE undefined, null... => '' */
|
|
18
|
-
export declare function upperCase(
|
|
23
|
+
export declare function upperCase(wordBits: string[]): string;
|
|
24
|
+
export declare function upperCase(...wordBits: string[]): string;
|
|
19
25
|
/**Eg: lowercase undefined, null... => '' */
|
|
20
|
-
export declare function lowerCase(
|
|
26
|
+
export declare function lowerCase(wordBits: string[]): string;
|
|
27
|
+
export declare function lowerCase(...wordBits: string[]): string;
|
|
21
28
|
export declare function capitalize1st(str?: string): string;
|
|
22
|
-
export declare function camelCaseToWords(str:
|
|
29
|
+
export declare function camelCaseToWords(str: string): string[];
|
|
23
30
|
/** GIVEN A STRING '{ blah;2}, ['nested,(what,ever)']' AND A SEPARATOR ",""
|
|
24
31
|
* This will return the content separated by first level of separators
|
|
25
32
|
* @return ["{ blah;2}", "['nested,(what,ever)']"]
|
package/dist/src/string-utils.js
CHANGED
|
@@ -6,44 +6,40 @@ exports.cln = exports.miniTemplater = exports.urlPathJoin = exports.generateObje
|
|
|
6
6
|
//----------------------------------------
|
|
7
7
|
const error_utils_1 = require("./error-utils");
|
|
8
8
|
const isset_1 = require("./isset");
|
|
9
|
-
|
|
9
|
+
const getWordBits = wb => Array.isArray(wb[0]) ? wb[0] : wb;
|
|
10
10
|
function camelCase(...wordBits) {
|
|
11
|
-
|
|
11
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
12
|
+
return wordBitsReal.filter(e => e).map((w, i) => i === 0 ? w : capitalize1st(w)).join('');
|
|
12
13
|
}
|
|
13
14
|
exports.camelCase = camelCase;
|
|
14
|
-
/**Eg: snake_case
|
|
15
|
-
* trimmed but not lowerCased
|
|
16
|
-
*/
|
|
17
15
|
function snakeCase(...wordBits) {
|
|
18
|
-
|
|
16
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
17
|
+
return wordBitsReal.filter(e => e).map(w => w.trim()).join('_');
|
|
19
18
|
}
|
|
20
19
|
exports.snakeCase = snakeCase;
|
|
21
|
-
/**Eg: kebab-case
|
|
22
|
-
* trimmed AND lowerCased
|
|
23
|
-
* undefined, null... => ''
|
|
24
|
-
*/
|
|
25
20
|
function kebabCase(...wordBits) {
|
|
26
|
-
|
|
21
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
22
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toLowerCase()).join('-');
|
|
27
23
|
}
|
|
28
24
|
exports.kebabCase = kebabCase;
|
|
29
|
-
/**Eg: PascalCase undefined, null... => '' */
|
|
30
25
|
function pascalCase(...wordBits) {
|
|
31
|
-
|
|
26
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
27
|
+
return wordBitsReal.filter(e => e).map((w, i) => capitalize1st(w)).join('');
|
|
32
28
|
}
|
|
33
29
|
exports.pascalCase = pascalCase;
|
|
34
|
-
/**Eg: Titlecase undefined, null... => '' */
|
|
35
30
|
function titleCase(...wordBits) {
|
|
36
|
-
|
|
31
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
32
|
+
return capitalize1st(wordBitsReal.filter(e => e).map(w => w.trim()).join(''));
|
|
37
33
|
}
|
|
38
34
|
exports.titleCase = titleCase;
|
|
39
|
-
/**Eg: UPPERCASE undefined, null... => '' */
|
|
40
35
|
function upperCase(...wordBits) {
|
|
41
|
-
|
|
36
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
37
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toUpperCase()).join('');
|
|
42
38
|
}
|
|
43
39
|
exports.upperCase = upperCase;
|
|
44
|
-
/**Eg: lowercase undefined, null... => '' */
|
|
45
40
|
function lowerCase(...wordBits) {
|
|
46
|
-
|
|
41
|
+
const wordBitsReal = getWordBits(wordBits);
|
|
42
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toLowerCase()).join('');
|
|
47
43
|
}
|
|
48
44
|
exports.lowerCase = lowerCase;
|
|
49
45
|
function capitalize1st(str = '') { return str[0].toUpperCase() + str.slice(1); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string-utils.js","sourceRoot":"","sources":["../../src/string-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,eAAe;AACf,0CAA0C;AAC1C,+CAAqD;AAErD,mCAA+B;AAE/B,
|
|
1
|
+
{"version":3,"file":"string-utils.js","sourceRoot":"","sources":["../../src/string-utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/error-utils.ts
CHANGED
|
@@ -43,6 +43,7 @@ export type ErrorOptions = {
|
|
|
43
43
|
err?: any
|
|
44
44
|
doNotThrow?: boolean
|
|
45
45
|
code?: number
|
|
46
|
+
doNotDisplayCode?: boolean
|
|
46
47
|
notifyOnSlackChannel?: boolean
|
|
47
48
|
extraInfosRenderer?: (extraInfosObj: ObjectGeneric) => void
|
|
48
49
|
doNotWaitOneFrameForLog?: boolean
|
|
@@ -105,6 +106,7 @@ export class DescriptiveError extends Error {
|
|
|
105
106
|
if (!noStackTrace) C.error(false, C.dim(cleanStackTrace(extraInfosRaw.stack || this.stack)))
|
|
106
107
|
}
|
|
107
108
|
this.code = code || 500
|
|
109
|
+
if (this.options.doNotDisplayCode || (this.options.hasOwnProperty('code') && !isset(this.options.code))) delete this.code
|
|
108
110
|
this.errorDescription = {
|
|
109
111
|
msg: this.msg,
|
|
110
112
|
code,
|
package/src/object-utils.ts
CHANGED
|
@@ -87,9 +87,9 @@ export function findByAddressAll(obj, addr, returnAddresses = false) {
|
|
|
87
87
|
/** Enforce writing subItems. Eg: user.name.blah will ensure all are set until the writing of the last item
|
|
88
88
|
* NOTE: doesn't work with arrays
|
|
89
89
|
*/
|
|
90
|
-
export function objForceWrite(obj:
|
|
90
|
+
export function objForceWrite<MainObj extends Record<string, any>>(obj: MainObj, addr: string, item): MainObj {
|
|
91
91
|
const chunks = addr.replace(/\.?\[(\d+)\]/g, '.[$1').split('.')
|
|
92
|
-
let lastItem = obj
|
|
92
|
+
let lastItem: any = obj
|
|
93
93
|
chunks.forEach((chunkRaw, i) => {
|
|
94
94
|
const chunk = chunkRaw.replace(/^\[/, '')
|
|
95
95
|
if (i === chunks.length - 1) lastItem[chunk] = item
|
|
@@ -100,6 +100,7 @@ export function objForceWrite(obj: ObjectGeneric, addr: string, item) {
|
|
|
100
100
|
} else if (typeof lastItem[chunk] !== 'object') throw new DescriptiveError(`itemNotTypeObjectOrArrayInAddrChainForObjForceWrite`, { code: 500, origin: 'Validator', chunks: chunks.map(c => c.replace(/\[(\d+)/, '[$1]')), actualValueOfItem: lastItem[chunk], actualChunk: chunk, chunkIndex: i })
|
|
101
101
|
lastItem = lastItem[chunk]
|
|
102
102
|
})
|
|
103
|
+
return obj
|
|
103
104
|
}
|
|
104
105
|
|
|
105
106
|
/** Enforce writing subItems, only if obj.addr is empty.
|
|
@@ -107,7 +108,7 @@ export function objForceWrite(obj: ObjectGeneric, addr: string, item) {
|
|
|
107
108
|
* if user.name.blah has a value it will not change it.
|
|
108
109
|
* NOTE: doesn't work with arrays
|
|
109
110
|
*/
|
|
110
|
-
export function objForceWriteIfNotSet(obj:
|
|
111
|
+
export function objForceWriteIfNotSet<MainObj extends Record<string, any>>(obj: MainObj, addr: string, item): MainObj {
|
|
111
112
|
if (!isset(findByAddress(obj, addr))) return objForceWrite(obj, addr, item)
|
|
112
113
|
}
|
|
113
114
|
|
|
@@ -120,12 +121,12 @@ export function mergeMixins(that, ...mixins) {
|
|
|
120
121
|
})
|
|
121
122
|
}
|
|
122
123
|
|
|
123
|
-
export function cloneObject(o) {
|
|
124
|
+
export function cloneObject<MainObj extends Record<string, any>>(o: MainObj): MainObj {
|
|
124
125
|
return JSON.parse(JSON.stringify(o))
|
|
125
126
|
}
|
|
126
127
|
|
|
127
128
|
/** Deep clone. WILL REMOVE circular references */
|
|
128
|
-
export function deepClone<
|
|
129
|
+
export function deepClone<MainObj extends Record<string, any>>(obj: MainObj, cache = []): MainObj {
|
|
129
130
|
|
|
130
131
|
let copy
|
|
131
132
|
// usefull to not modify 1st level objet by lower levels
|
|
@@ -164,7 +165,7 @@ export function deepClone<T>(obj: T, cache = []): T {
|
|
|
164
165
|
* @param {Object} obj the object on which we want to filter the keys
|
|
165
166
|
* @param {function} filterFunc function that returns true if the key match the wanted criteria
|
|
166
167
|
*/
|
|
167
|
-
export function filterKeys(obj:
|
|
168
|
+
export function filterKeys<MainObj extends Record<string, any>>(obj: MainObj, filter): MainObj {
|
|
168
169
|
const clone = cloneObject(obj)
|
|
169
170
|
recursiveGenericFunctionSync(obj, (item, addr, lastElementKey) => {
|
|
170
171
|
if (!filter(lastElementKey)) deleteByAddress(clone, addr.split('.'))
|
|
@@ -188,13 +189,13 @@ export function deleteByAddress(obj: object, addr: string | string[]) {
|
|
|
188
189
|
|
|
189
190
|
|
|
190
191
|
/** Remove all key/values pair if value is undefined */
|
|
191
|
-
export function objFilterUndefined(o) {
|
|
192
|
+
export function objFilterUndefined<MainObj extends Record<string, any>>(o: MainObj): MainObj {
|
|
192
193
|
Object.keys(o).forEach(k => !isset(o[k]) && delete o[k])
|
|
193
194
|
return o
|
|
194
195
|
}
|
|
195
196
|
|
|
196
197
|
/** Lock all 1st level props of an object to read only */
|
|
197
|
-
export function readOnly(o) {
|
|
198
|
+
export function readOnly<MainObj extends Record<string, any>>(o: MainObj): { readonly [AA in keyof MainObj]: MainObj[AA] } {
|
|
198
199
|
const throwErr = () => { throw new DescriptiveError('Cannot modify object that is read only', { code: 500 }) }
|
|
199
200
|
return new Proxy(o, {
|
|
200
201
|
set: throwErr,
|
|
@@ -256,10 +257,10 @@ export function sortObjKeyAccordingToValue(unorderedObj, ascending = true) {
|
|
|
256
257
|
* @param {function} callback (obj[addr]) => processValue. Eg: myObjAddr => myObjAddr.push('bikou')
|
|
257
258
|
* @return obj[addr] eventually processed by the callback
|
|
258
259
|
*/
|
|
259
|
-
export function ensureObjectProp(obj:
|
|
260
|
+
export function ensureObjectProp<MainObj extends Record<string, any>, Addr extends string>(obj: MainObj, addr: Addr, defaultValue, callback: (o: any) => any): MainObj[Addr] {
|
|
260
261
|
err500IfNotSet({ obj, addr, defaultValue, callback })
|
|
261
262
|
if (!isset(obj[addr])) obj[addr] = defaultValue
|
|
262
|
-
callback(obj[addr])
|
|
263
|
+
if (callback) callback(obj[addr])
|
|
263
264
|
return obj[addr]
|
|
264
265
|
}
|
|
265
266
|
|
package/src/string-utils.ts
CHANGED
|
@@ -5,47 +5,70 @@ import { err500IfEmptyOrNotSet } from "./error-utils"
|
|
|
5
5
|
import { ObjectGeneric } from "./types"
|
|
6
6
|
import { isset } from "./isset"
|
|
7
7
|
|
|
8
|
+
const getWordBits = wb => Array.isArray(wb[0]) ? wb[0] : wb
|
|
9
|
+
|
|
8
10
|
/**Eg: camelCase */
|
|
9
|
-
export function camelCase(
|
|
10
|
-
|
|
11
|
+
export function camelCase(wordBits: string[]): string
|
|
12
|
+
export function camelCase(...wordBits: string[]): string
|
|
13
|
+
export function camelCase(...wordBits): string {
|
|
14
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
15
|
+
return wordBitsReal.filter(e => e).map((w, i) => i === 0 ? w : capitalize1st(w)).join('')
|
|
11
16
|
}
|
|
12
17
|
|
|
13
18
|
/**Eg: snake_case
|
|
14
19
|
* trimmed but not lowerCased
|
|
15
20
|
*/
|
|
16
|
-
export function snakeCase(
|
|
17
|
-
|
|
21
|
+
export function snakeCase(wordBits: string[]): string
|
|
22
|
+
export function snakeCase(...wordBits: string[]): string
|
|
23
|
+
export function snakeCase(...wordBits): string {
|
|
24
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
25
|
+
return wordBitsReal.filter(e => e).map(w => w.trim()).join('_')
|
|
18
26
|
}
|
|
19
27
|
/**Eg: kebab-case
|
|
20
28
|
* trimmed AND lowerCased
|
|
21
29
|
* undefined, null... => ''
|
|
22
30
|
*/
|
|
23
|
-
export function kebabCase(
|
|
24
|
-
|
|
31
|
+
export function kebabCase(wordBits: string[]): string
|
|
32
|
+
export function kebabCase(...wordBits: string[]): string
|
|
33
|
+
export function kebabCase(...wordBits): string {
|
|
34
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
35
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toLowerCase()).join('-')
|
|
25
36
|
}
|
|
26
37
|
/**Eg: PascalCase undefined, null... => '' */
|
|
27
|
-
export function pascalCase(
|
|
28
|
-
|
|
38
|
+
export function pascalCase(wordBits: string[]): string
|
|
39
|
+
export function pascalCase(...wordBits: string[]): string
|
|
40
|
+
export function pascalCase(...wordBits): string {
|
|
41
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
42
|
+
return wordBitsReal.filter(e => e).map((w, i) => capitalize1st(w)).join('')
|
|
29
43
|
}
|
|
30
44
|
|
|
31
45
|
/**Eg: Titlecase undefined, null... => '' */
|
|
32
|
-
export function titleCase(
|
|
33
|
-
|
|
46
|
+
export function titleCase(wordBits: string[]): string
|
|
47
|
+
export function titleCase(...wordBits: string[]): string
|
|
48
|
+
export function titleCase(...wordBits): string {
|
|
49
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
50
|
+
return capitalize1st(wordBitsReal.filter(e => e).map(w => w.trim()).join(''))
|
|
34
51
|
}
|
|
35
52
|
|
|
36
53
|
/**Eg: UPPERCASE undefined, null... => '' */
|
|
37
|
-
export function upperCase(
|
|
38
|
-
|
|
54
|
+
export function upperCase(wordBits: string[]): string
|
|
55
|
+
export function upperCase(...wordBits: string[]): string
|
|
56
|
+
export function upperCase(...wordBits): string {
|
|
57
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
58
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toUpperCase()).join('')
|
|
39
59
|
}
|
|
40
60
|
|
|
41
61
|
/**Eg: lowercase undefined, null... => '' */
|
|
42
|
-
export function lowerCase(
|
|
43
|
-
|
|
62
|
+
export function lowerCase(wordBits: string[]): string
|
|
63
|
+
export function lowerCase(...wordBits: string[]): string
|
|
64
|
+
export function lowerCase(...wordBits): string {
|
|
65
|
+
const wordBitsReal = getWordBits(wordBits)
|
|
66
|
+
return wordBitsReal.filter(e => e).map(w => w.trim().toLowerCase()).join('')
|
|
44
67
|
}
|
|
45
68
|
|
|
46
|
-
export function capitalize1st(str = '') { return str[0].toUpperCase() + str.slice(1) }
|
|
69
|
+
export function capitalize1st(str = ''): string { return str[0].toUpperCase() + str.slice(1) }
|
|
47
70
|
|
|
48
|
-
export function camelCaseToWords(str) {
|
|
71
|
+
export function camelCaseToWords(str: string): string[] {
|
|
49
72
|
return str ? str.trim().replace(/([A-Z])/g, '-$1').toLowerCase().split('-') : []
|
|
50
73
|
}
|
|
51
74
|
|