topkat-utils 1.2.11 → 1.2.13
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 +7 -0
- package/dist/src/array-utils.d.ts +4 -2
- package/dist/src/array-utils.js +5 -2
- package/dist/src/array-utils.js.map +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/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/array-utils.ts +7 -3
- package/src/error-utils.ts +2 -0
- package/src/string-utils.ts +39 -16
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
### v1.2.13
|
|
2
|
+
* add ability to hide generated api code in errors by setting { code } value to undefined, null or option.doNotDisplayCode to true
|
|
3
|
+
* allow all casing function to receive an array of string as first argument OR rest param as a string array
|
|
4
|
+
|
|
5
|
+
### v1.2.12
|
|
6
|
+
* ADD returnValueIfUndefined for asArray function and improve type
|
|
7
|
+
|
|
1
8
|
### v1.2.11
|
|
2
9
|
* FIX on terminal noColor detection nodeJs env
|
|
3
10
|
|
|
@@ -10,10 +10,11 @@ export declare function shuffleArray(array: any): any;
|
|
|
10
10
|
export declare function ensureIsArrayAndPush(obj: object, addr: string, valToPush: any, onlyUniqueValues: Function): any;
|
|
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
|
+
declare type AsArrReturnVal<T, X> = T extends undefined ? (X extends undefined ? void : X) : T extends any[] ? T : T[];
|
|
13
14
|
/** If not an array provided, return the array with the value
|
|
14
15
|
* /!\ NOTE /!\ In case the value is null or undefined, it will return that value
|
|
15
16
|
*/
|
|
16
|
-
export declare function asArray<T extends any[] | any>(item: T
|
|
17
|
+
export declare function asArray<T extends any[] | any, X>(item: T, returnValueIfUndefined?: X): AsArrReturnVal<T, X>;
|
|
17
18
|
/** Array comparison
|
|
18
19
|
* @return {object} { inCommon, notInB, notInA }
|
|
19
20
|
*/
|
|
@@ -51,6 +52,7 @@ export declare function arrayToObjectSorted(array: any, getFieldFromItem: any):
|
|
|
51
52
|
/**
|
|
52
53
|
* @param {Function} comparisonFunction default: (itemToPush, itemAlreadyInArray) => itemToPush === itemAlreadyInArray; comparison function to consider the added item duplicate
|
|
53
54
|
*/
|
|
54
|
-
export declare function pushIfNotExist(arrayToPushInto: any, valueOrArrayOfValuesToBePushed: any, comparisonFunction?: (a: any, b: any) => boolean): any[];
|
|
55
|
+
export declare function pushIfNotExist(arrayToPushInto: any[], valueOrArrayOfValuesToBePushed: any, comparisonFunction?: (a: any, b: any) => boolean): any[];
|
|
55
56
|
export declare function isNotEmptyArray(arr: any): boolean;
|
|
56
57
|
export declare function randomItemInArray<T>(array: T[]): T;
|
|
58
|
+
export {};
|
package/dist/src/array-utils.js
CHANGED
|
@@ -46,8 +46,11 @@ exports.strAsArray = strAsArray;
|
|
|
46
46
|
/** If not an array provided, return the array with the value
|
|
47
47
|
* /!\ NOTE /!\ In case the value is null or undefined, it will return that value
|
|
48
48
|
*/
|
|
49
|
-
function asArray(item) {
|
|
50
|
-
|
|
49
|
+
function asArray(item, returnValueIfUndefined) {
|
|
50
|
+
if (typeof item === 'undefined')
|
|
51
|
+
return returnValueIfUndefined;
|
|
52
|
+
else
|
|
53
|
+
return Array.isArray(item) ? item : [item];
|
|
51
54
|
}
|
|
52
55
|
exports.asArray = asArray;
|
|
53
56
|
/** Array comparison
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../src/array-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,cAAc;AACd,0CAA0C;AAC1C,iDAAwE;AACxE,mCAA+B;AAE/B,SAAgB,YAAY,CAAC,KAAK;IAC9B,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;KAC9C;IACD,OAAO,KAAK,CAAA;AAChB,CAAC;AAND,oCAMC;AAGD;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAC,GAAW,EAAE,IAAY,EAAE,SAAS,EAAE,gBAA0B;IACjG,OAAO,IAAA,+BAAgB,EAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE;QAC9C,IAAI,IAAA,aAAK,EAAC,gBAAgB,CAAC,EAAE;YACzB,IAAI,cAAc,GAAG,KAAK,CAAA;YAC1B,IAAI,OAAO,gBAAgB,KAAK,UAAU;gBAAE,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAA;;gBAC1G,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YAClD,IAAI,CAAC,cAAc;gBAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;SAChD;;YAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACN,CAAC;AATD,oDASC;AAGD,wEAAwE;AACxE,SAAgB,UAAU,CAAC,QAAQ;IAC/B,OAAO,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AAC/D,CAAC;AAFD,gCAEC;
|
|
1
|
+
{"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../src/array-utils.ts"],"names":[],"mappings":"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"}
|
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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"}
|
|
@@ -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/array-utils.ts
CHANGED
|
@@ -38,11 +38,15 @@ export function strAsArray(arrOrStr) {
|
|
|
38
38
|
return typeof arrOrStr === 'string' ? [arrOrStr] : arrOrStr
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
type NotType<type, T> = Exclude<T, type>
|
|
42
|
+
|
|
43
|
+
type AsArrReturnVal<T, X> = T extends undefined ? (X extends undefined ? void : X) : T extends any[] ? T : T[]
|
|
41
44
|
/** If not an array provided, return the array with the value
|
|
42
45
|
* /!\ NOTE /!\ In case the value is null or undefined, it will return that value
|
|
43
46
|
*/
|
|
44
|
-
export function asArray<T extends any[] | any>(item: T
|
|
45
|
-
|
|
47
|
+
export function asArray<T extends any[] | any, X>(item: T, returnValueIfUndefined?: X): AsArrReturnVal<T, X> {
|
|
48
|
+
if (typeof item === 'undefined') return returnValueIfUndefined as any
|
|
49
|
+
else return Array.isArray(item) ? item : [item] as any
|
|
46
50
|
}
|
|
47
51
|
|
|
48
52
|
/** Array comparison
|
|
@@ -113,7 +117,7 @@ export function arrayToObjectSorted(array, getFieldFromItem) {
|
|
|
113
117
|
/**
|
|
114
118
|
* @param {Function} comparisonFunction default: (itemToPush, itemAlreadyInArray) => itemToPush === itemAlreadyInArray; comparison function to consider the added item duplicate
|
|
115
119
|
*/
|
|
116
|
-
export function pushIfNotExist(arrayToPushInto, valueOrArrayOfValuesToBePushed, comparisonFunction = (a, b) => a === b): any[] {
|
|
120
|
+
export function pushIfNotExist(arrayToPushInto: any[], valueOrArrayOfValuesToBePushed: any, comparisonFunction = (a, b) => a === b): any[] {
|
|
117
121
|
const valuesToPush = asArray(valueOrArrayOfValuesToBePushed).filter(a => !arrayToPushInto.some(b => comparisonFunction(a, b)))
|
|
118
122
|
arrayToPushInto.push(...valuesToPush)
|
|
119
123
|
return arrayToPushInto
|
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/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
|
|