@umatch/utils
Advanced tools
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.isString = exports.isPrimitive = exports.isPlainObject = exports.isObject = exports.isNumber = exports.isNullOrUndefined = exports.isKeyOf = exports.isFunction = exports.isDate = exports.isBoolean = exports.isArray = void 0; | ||
| /** | ||
| * Returns whether obj is an array. | ||
| * | ||
| * Uses Array.isArray(). | ||
| */ | ||
| function isArray(obj) { | ||
| return Array.isArray(obj); | ||
| } | ||
| exports.isArray = isArray; | ||
| /** | ||
| * Returns whether obj is a boolean. | ||
| */ | ||
| function isBoolean(obj) { | ||
| return typeof obj === 'boolean'; | ||
| } | ||
| exports.isBoolean = isBoolean; | ||
| /** | ||
| * Returns whether obj is a Date. | ||
| */ | ||
| function isDate(obj) { | ||
| return obj?.constructor?.name === 'Date'; | ||
| } | ||
| exports.isDate = isDate; | ||
| /** | ||
| * Returns whether obj is a function. | ||
| */ | ||
| // eslint-disable-next-line @typescript-eslint/ban-types | ||
| function isFunction(obj) { | ||
| return typeof obj === 'function'; | ||
| } | ||
| exports.isFunction = isFunction; | ||
| /** | ||
| * Returns whether obj is a plain object. | ||
| */ | ||
| function isPlainObject(obj) { | ||
| if (!isObject(obj)) | ||
| return false; | ||
| // if it has no constructor | ||
| if (obj.constructor === undefined) | ||
| return true; | ||
| // if it has modified prototype | ||
| // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment | ||
| const proto = obj.constructor.prototype; | ||
| if (!isObject(proto)) | ||
| return false; | ||
| // if its constructor does not have an Object-specific method | ||
| return proto.hasOwnProperty('isPrototypeOf'); | ||
| } | ||
| exports.isPlainObject = isPlainObject; | ||
| /** | ||
| * Returns whether key is a key of obj. | ||
| */ | ||
| function isKeyOf(obj, key) { | ||
| return key in obj; | ||
| } | ||
| exports.isKeyOf = isKeyOf; | ||
| /** | ||
| * Returns whether obj is null or undefined. | ||
| */ | ||
| function isNullOrUndefined(obj) { | ||
| return obj === null || obj === undefined; | ||
| } | ||
| exports.isNullOrUndefined = isNullOrUndefined; | ||
| /** | ||
| * Returns whether obj is a number. | ||
| */ | ||
| function isNumber(obj) { | ||
| return typeof obj === 'number'; | ||
| } | ||
| exports.isNumber = isNumber; | ||
| /** | ||
| * Returns whether obj is NOT one of the primitive data types. It may | ||
| * still be any kind of object, including the instance of some class. | ||
| * To narrow this down to only plain objects, use [isPlainObject]{@link isPlainObject}. | ||
| */ | ||
| function isObject(obj) { | ||
| return Object.prototype.toString.call(obj) === '[object Object]'; | ||
| } | ||
| exports.isObject = isObject; | ||
| /** | ||
| * Returns whether obj is a primitive data type. | ||
| */ | ||
| function isPrimitive(obj) { | ||
| return (isNullOrUndefined(obj) || | ||
| ['boolean', 'number', 'string', 'bigint'].includes(typeof obj)); | ||
| } | ||
| exports.isPrimitive = isPrimitive; | ||
| /** | ||
| * Returns whether obj is a string. | ||
| */ | ||
| function isString(obj) { | ||
| return typeof obj === 'string'; | ||
| } | ||
| exports.isString = isString; |
+10
-10
| import { type DeepArray, type Dictionary, type Merge, type ValueOf } from '../index'; | ||
| import { type CamelToSnakeCase, type SnakeToCamelCase } from '../string'; | ||
| import { type SnakeCase, type CamelCase } from '../string'; | ||
| /** | ||
@@ -13,6 +13,6 @@ * Copies an object and applies a function to all values. If keys is | ||
| /** | ||
| * Applies SnakeToCamelCase on the keys of an object. | ||
| * Applies camelCase on the keys of an object. | ||
| */ | ||
| type SnakeToCamelCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as SnakeToCamelCase<K & string>]: T[K]; | ||
| type CamelCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as CamelCase<K & string>]: T[K]; | ||
| }; | ||
@@ -22,3 +22,3 @@ /** | ||
| */ | ||
| declare function camelCaseKeys<T extends Dictionary>(obj: T): SnakeToCamelCaseKeys<T>; | ||
| declare function camelCaseKeys<T extends Dictionary>(obj: T): CamelCaseKeys<T>; | ||
| /** | ||
@@ -164,6 +164,6 @@ * Returns a deep clone of the object. | ||
| /** | ||
| * Applies CamelToSnakeCase on the keys of an object. | ||
| * Applies snake_case on the keys of an object. | ||
| */ | ||
| type CamelToSnakeCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as CamelToSnakeCase<K & string>]: T[K]; | ||
| type SnakeCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as SnakeCase<K & string>]: T[K]; | ||
| }; | ||
@@ -173,3 +173,3 @@ /** | ||
| */ | ||
| declare function snakeCaseKeys<T extends Dictionary>(obj: T): CamelToSnakeCaseKeys<T>; | ||
| declare function snakeCaseKeys<T extends Dictionary>(obj: T): SnakeCaseKeys<T>; | ||
| /** | ||
@@ -191,3 +191,3 @@ * Similar to JSON.stringify(), but optionally pads entries between | ||
| }, inheritedIndent?: string): string; | ||
| export { apply, camelCaseKeys, deepClone, deepMap, extract, getDeepProperty, hasOwnProperty, isDeepEmpty, merge, omit, pick, rename, setDeepProperty, snakeCaseKeys, stringify, type CamelToSnakeCaseKeys, type DeepEmpty, type SnakeToCamelCaseKeys, }; | ||
| export { apply, camelCaseKeys, deepClone, deepMap, extract, getDeepProperty, hasOwnProperty, isDeepEmpty, merge, omit, pick, rename, setDeepProperty, snakeCaseKeys, stringify, type CamelCaseKeys, type DeepEmpty, type SnakeCaseKeys, }; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/object/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/object/index.ts"],"names":[],"mappings":"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"} |
+31
-18
@@ -218,7 +218,27 @@ import { type ForegroundColor } from 'chalk'; | ||
| /** | ||
| * Converts a string from snake to camel case. | ||
| * Returns the last letter of a string. | ||
| */ | ||
| type SnakeToCamelCase<S extends string, Acc extends string = ''> = S extends `${infer H}_${infer T}` ? SnakeToCamelCase<Capitalize<T>, `${Acc}${H}`> : S extends `${infer H}${infer T}` ? SnakeToCamelCase<T, `${Acc}${H}`> : Acc; | ||
| type LastLetter<S extends string, Previous extends string = ''> = S extends `${infer First}${infer Rest}` ? Rest extends '' ? S : LastLetter<Rest, First> : Previous; | ||
| /** | ||
| * Converts a string to camelCase. | ||
| */ | ||
| type CamelCase<S extends string, Acc extends string = ''> = S extends `${infer First}${infer Rest}` ? Acc extends '' ? CamelCase<Rest, Lowercase<First>> : First extends '_' | ' ' | '-' ? CamelCase<Capitalize<Rest>, Acc> : CamelCase<Rest, `${Acc}${First}`> : Acc; | ||
| /** | ||
| * Converts a string to PascalCase. | ||
| */ | ||
| type PascalCase<S extends string, Acc extends string = ''> = S extends `${infer First}${infer Rest}` ? Acc extends '' ? PascalCase<Rest, Uppercase<First>> : First extends '_' | ' ' | '-' ? PascalCase<Capitalize<Rest>, Acc> : PascalCase<Rest, `${Acc}${First}`> : Acc; | ||
| /** | ||
| * Converts a string to Sentence case. | ||
| */ | ||
| type SentenceCase<S extends string, Acc extends string = ''> = S extends `${infer First}${infer Rest}` ? Acc extends '' ? SentenceCase<Rest, Uppercase<First>> : First extends '_' | ' ' | '-' ? SentenceCase<Rest, `${Acc} `> : First extends Uppercase<First> ? LastLetter<Acc> extends ' ' ? SentenceCase<Rest, `${Acc}${Lowercase<First>}`> : SentenceCase<Rest, `${Acc} ${Lowercase<First>}`> : SentenceCase<Rest, `${Acc}${First}`> : Acc; | ||
| /** | ||
| * Converts a string to snake_case. | ||
| */ | ||
| type SnakeCase<S extends string, Acc extends string = ''> = S extends `${infer First}${infer Rest}` ? Acc extends '' ? SnakeCase<Rest, Lowercase<First>> : First extends '_' | ' ' | '-' ? SnakeCase<Capitalize<Rest>, `${Acc}_`> : First extends Uppercase<First> ? LastLetter<Acc> extends '_' ? SnakeCase<Rest, `${Acc}${Lowercase<First>}`> : SnakeCase<Rest, `${Acc}_${Lowercase<First>}`> : SnakeCase<Rest, `${Acc}${First}`> : Acc; | ||
| /** | ||
| * Converts a string to Title Case. | ||
| */ | ||
| type TitleCase<S extends string, Acc extends string = ''> = S extends `${infer First}${infer Rest}` ? Acc extends '' ? TitleCase<Rest, Uppercase<First>> : First extends '_' | ' ' | '-' ? TitleCase<Capitalize<Rest>, `${Acc} `> : First extends Uppercase<First> ? LastLetter<Acc> extends ' ' ? TitleCase<Rest, `${Acc}${First}`> : TitleCase<Rest, `${Acc} ${First}`> : TitleCase<Rest, `${Acc}${First}`> : Acc; | ||
| /** | ||
| * Converts a string to camelCase. | ||
| * | ||
@@ -229,5 +249,5 @@ * *Warning*: the whole string is considered as one, so if you want to | ||
| */ | ||
| declare function camelCase<S extends string>(str: S): SnakeToCamelCase<S>; | ||
| declare function camelCase<S extends string>(str: S): CamelCase<S>; | ||
| /** | ||
| * Converts a string to camelCase. | ||
| * Converts a string to PascalCase. | ||
| * | ||
@@ -238,15 +258,8 @@ * *Warning*: the whole string is considered as one, so if you want to | ||
| */ | ||
| declare function pascalCase(str: string): string; | ||
| declare function pascalCase<S extends string>(str: S): PascalCase<S>; | ||
| /** | ||
| * Converts a string to Sentence case. | ||
| */ | ||
| declare function sentenceCase(str: string): string; | ||
| declare function sentenceCase<S extends string>(str: S): SentenceCase<S>; | ||
| /** | ||
| * Converts a string from camel to snake case. | ||
| * | ||
| * Iterates one letter at a time, keeping the result in an | ||
| * accumulator and consecutive uppercase letters in a buffer. | ||
| */ | ||
| type CamelToSnakeCase<S extends string, Acc extends string = '', Buffer extends string = ''> = S extends `${infer First}${infer Rest}` ? CamelToSnakeCase<Rest, First extends Uppercase<First> ? Rest extends `${infer Second}${infer _}` ? Second extends Lowercase<Second> ? JoinNonEmpty<[Acc, Buffer, Lowercase<First>], '_'> : Acc : JoinNonEmpty<[Acc, Buffer, Lowercase<First>], '_'> : `${Acc}${First}`, First extends Uppercase<First> ? `${Buffer}${Lowercase<First>}` : ''> : Acc & string; | ||
| /** | ||
| * Converts a string to snake_case. | ||
@@ -258,3 +271,3 @@ * | ||
| */ | ||
| declare function snakeCase<S extends string>(str: S): CamelToSnakeCase<S>; | ||
| declare function snakeCase<S extends string>(str: S): SnakeCase<S>; | ||
| /** | ||
@@ -265,7 +278,7 @@ * Converts a string to Title Case. | ||
| * | ||
| * @param {string} str | ||
| * @param {string[]} [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| * @param str | ||
| * @param [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| */ | ||
| declare function titleCase(str: string, skipWords?: readonly string[]): string; | ||
| export { basicPluralizer, capitalize, center, formatStr, formatTime, getCountDown, join, joinNonEmpty, joinUrl, pad, parseBool, parseFunctionCall, parseNumber, removeAccents, rsplit, split, uncapitalize, camelCase, pascalCase, sentenceCase, snakeCase, titleCase, type CamelToSnakeCase, type DateTimeDict, type JoinNonEmpty, type Pluralizer, type Replace, type SnakeToCamelCase, type Trim, type Unquote, }; | ||
| declare function titleCase<S extends string>(str: S, skipWords?: readonly string[]): TitleCase<S>; | ||
| export { basicPluralizer, capitalize, center, formatStr, formatTime, getCountDown, join, joinNonEmpty, joinUrl, pad, parseBool, parseFunctionCall, parseNumber, removeAccents, rsplit, split, uncapitalize, type DateTimeDict, type JoinNonEmpty, type LastLetter, type Pluralizer, type Replace, type Trim, type Unquote, camelCase, pascalCase, sentenceCase, snakeCase, titleCase, type CamelCase, type PascalCase, type SentenceCase, type SnakeCase, type TitleCase, }; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/string/index.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/string/index.ts"],"names":[],"mappings":"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"} |
+10
-9
@@ -198,2 +198,4 @@ "use strict"; | ||
| function join(parts, and = '&') { | ||
| if (!parts.length) | ||
| return ''; | ||
| const firstParts = parts.slice(0, -1); | ||
@@ -448,4 +450,2 @@ const lastPart = parts.slice(-1)[0]; | ||
| const _camelCase = toCase(uncapitalize, capitalize, ''); | ||
| const _pascalCase = toCase(capitalize, capitalize, ''); | ||
| const _snakeCase = toCase(uncapitalize, uncapitalize, '_'); | ||
| /** | ||
@@ -462,4 +462,5 @@ * Converts a string to camelCase. | ||
| exports.camelCase = camelCase; | ||
| const _pascalCase = toCase(capitalize, capitalize, ''); | ||
| /** | ||
| * Converts a string to camelCase. | ||
| * Converts a string to PascalCase. | ||
| * | ||
@@ -474,2 +475,3 @@ * *Warning*: the whole string is considered as one, so if you want to | ||
| exports.pascalCase = pascalCase; | ||
| const _sentenceCase = toCase(capitalize, uncapitalize, ' '); | ||
| /** | ||
@@ -479,6 +481,6 @@ * Converts a string to Sentence case. | ||
| function sentenceCase(str) { | ||
| const [first, ...rest] = str.split(/(\s)/); | ||
| return [capitalize(first), ...rest.map(uncapitalize)].join(''); | ||
| return _sentenceCase(str); | ||
| } | ||
| exports.sentenceCase = sentenceCase; | ||
| const _snakeCase = toCase(uncapitalize, uncapitalize, '_'); | ||
| /** | ||
@@ -523,10 +525,9 @@ * Converts a string to snake_case. | ||
| * | ||
| * @param {string} str | ||
| * @param {string[]} [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| * @param str | ||
| * @param [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| */ | ||
| function titleCase(str, skipWords = ENGLISH_SKIP_WORDS) { | ||
| const otherWordsFunction = (word) => skipWords.includes(word.toLowerCase()) ? word : capitalize(word); | ||
| const [first, ...rest] = str.split(/(\s)/); | ||
| return [capitalize(first), ...rest.map(otherWordsFunction)].join(''); | ||
| return toCase(capitalize, otherWordsFunction, ' ')(str); | ||
| } | ||
| exports.titleCase = titleCase; |
+1
-1
| { | ||
| "name": "@umatch/utils", | ||
| "version": "13.0.1", | ||
| "version": "14.0.0", | ||
| "description": "Math, array, string, object & time-related functions and types.", | ||
@@ -5,0 +5,0 @@ "author": "Gabriel Okamoto <gabrielokamoto@hotmail.com>", |
+11
-16
@@ -13,8 +13,3 @@ import { | ||
| } from '../index'; | ||
| import { | ||
| camelCase, | ||
| snakeCase, | ||
| type CamelToSnakeCase, | ||
| type SnakeToCamelCase, | ||
| } from '../string'; | ||
| import { camelCase, snakeCase, type SnakeCase, type CamelCase } from '../string'; | ||
@@ -46,6 +41,6 @@ /** | ||
| /** | ||
| * Applies SnakeToCamelCase on the keys of an object. | ||
| * Applies camelCase on the keys of an object. | ||
| */ | ||
| type SnakeToCamelCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as SnakeToCamelCase<K & string>]: T[K]; | ||
| type CamelCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as CamelCase<K & string>]: T[K]; | ||
| }; | ||
@@ -56,3 +51,3 @@ | ||
| */ | ||
| function camelCaseKeys<T extends Dictionary>(obj: T): SnakeToCamelCaseKeys<T>; | ||
| function camelCaseKeys<T extends Dictionary>(obj: T): CamelCaseKeys<T>; | ||
| function camelCaseKeys(obj: Dictionary): Dictionary { | ||
@@ -428,6 +423,6 @@ return rename(obj, camelCase); | ||
| /** | ||
| * Applies CamelToSnakeCase on the keys of an object. | ||
| * Applies snake_case on the keys of an object. | ||
| */ | ||
| type CamelToSnakeCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as CamelToSnakeCase<K & string>]: T[K]; | ||
| type SnakeCaseKeys<T extends Dictionary> = { | ||
| [K in keyof T as SnakeCase<K & string>]: T[K]; | ||
| }; | ||
@@ -438,3 +433,3 @@ | ||
| */ | ||
| function snakeCaseKeys<T extends Dictionary>(obj: T): CamelToSnakeCaseKeys<T>; | ||
| function snakeCaseKeys<T extends Dictionary>(obj: T): SnakeCaseKeys<T>; | ||
| function snakeCaseKeys(obj: Dictionary): Dictionary { | ||
@@ -519,5 +514,5 @@ return rename(obj, snakeCase); | ||
| stringify, | ||
| type CamelToSnakeCaseKeys, | ||
| type CamelCaseKeys, | ||
| type DeepEmpty, | ||
| type SnakeToCamelCaseKeys, | ||
| type SnakeCaseKeys, | ||
| }; |
+120
-60
@@ -285,2 +285,4 @@ import chalk, { type Chalk, type ForegroundColor } from 'chalk'; | ||
| function join(parts: readonly string[], and = '&'): string { | ||
| if (!parts.length) return ''; | ||
| const firstParts = parts.slice(0, -1); | ||
@@ -567,19 +569,98 @@ const lastPart = parts.slice(-1)[0]; | ||
| const _camelCase = toCase(uncapitalize, capitalize, ''); | ||
| const _pascalCase = toCase(capitalize, capitalize, ''); | ||
| const _snakeCase = toCase(uncapitalize, uncapitalize, '_'); | ||
| /** | ||
| * Returns the last letter of a string. | ||
| */ | ||
| type LastLetter< | ||
| S extends string, | ||
| Previous extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Rest extends '' | ||
| ? S | ||
| : LastLetter<Rest, First> | ||
| : Previous; | ||
| /** | ||
| * Converts a string from snake to camel case. | ||
| * Converts a string to camelCase. | ||
| */ | ||
| type SnakeToCamelCase< | ||
| type CamelCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| > = S extends `${infer H}_${infer T}` | ||
| ? SnakeToCamelCase<Capitalize<T>, `${Acc}${H}`> | ||
| : S extends `${infer H}${infer T}` | ||
| ? SnakeToCamelCase<T, `${Acc}${H}`> | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Acc extends '' | ||
| ? CamelCase<Rest, Lowercase<First>> | ||
| : First extends '_' | ' ' | '-' | ||
| ? CamelCase<Capitalize<Rest>, Acc> | ||
| : CamelCase<Rest, `${Acc}${First}`> | ||
| : Acc; | ||
| /** | ||
| * Converts a string to PascalCase. | ||
| */ | ||
| type PascalCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Acc extends '' | ||
| ? PascalCase<Rest, Uppercase<First>> | ||
| : First extends '_' | ' ' | '-' | ||
| ? PascalCase<Capitalize<Rest>, Acc> | ||
| : PascalCase<Rest, `${Acc}${First}`> | ||
| : Acc; | ||
| /** | ||
| * Converts a string to Sentence case. | ||
| */ | ||
| type SentenceCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Acc extends '' | ||
| ? SentenceCase<Rest, Uppercase<First>> | ||
| : First extends '_' | ' ' | '-' | ||
| ? SentenceCase<Rest, `${Acc} `> | ||
| : First extends Uppercase<First> | ||
| ? LastLetter<Acc> extends ' ' | ||
| ? SentenceCase<Rest, `${Acc}${Lowercase<First>}`> | ||
| : SentenceCase<Rest, `${Acc} ${Lowercase<First>}`> | ||
| : SentenceCase<Rest, `${Acc}${First}`> | ||
| : Acc; | ||
| /** | ||
| * Converts a string to snake_case. | ||
| */ | ||
| type SnakeCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Acc extends '' | ||
| ? SnakeCase<Rest, Lowercase<First>> | ||
| : First extends '_' | ' ' | '-' | ||
| ? SnakeCase<Capitalize<Rest>, `${Acc}_`> | ||
| : First extends Uppercase<First> | ||
| ? LastLetter<Acc> extends '_' | ||
| ? SnakeCase<Rest, `${Acc}${Lowercase<First>}`> | ||
| : SnakeCase<Rest, `${Acc}_${Lowercase<First>}`> | ||
| : SnakeCase<Rest, `${Acc}${First}`> | ||
| : Acc; | ||
| /** | ||
| * Converts a string to Title Case. | ||
| */ | ||
| type TitleCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? Acc extends '' | ||
| ? TitleCase<Rest, Uppercase<First>> | ||
| : First extends '_' | ' ' | '-' | ||
| ? TitleCase<Capitalize<Rest>, `${Acc} `> | ||
| : First extends Uppercase<First> | ||
| ? LastLetter<Acc> extends ' ' | ||
| ? TitleCase<Rest, `${Acc}${First}`> | ||
| : TitleCase<Rest, `${Acc} ${First}`> | ||
| : TitleCase<Rest, `${Acc}${First}`> | ||
| : Acc; | ||
| const _camelCase = toCase(uncapitalize, capitalize, ''); | ||
| /** | ||
| * Converts a string to camelCase. | ||
@@ -591,8 +672,9 @@ * | ||
| */ | ||
| function camelCase<S extends string>(str: S): SnakeToCamelCase<S> { | ||
| return _camelCase(str) as SnakeToCamelCase<S>; | ||
| function camelCase<S extends string>(str: S): CamelCase<S> { | ||
| return _camelCase(str) as CamelCase<S>; | ||
| } | ||
| const _pascalCase = toCase(capitalize, capitalize, ''); | ||
| /** | ||
| * Converts a string to camelCase. | ||
| * Converts a string to PascalCase. | ||
| * | ||
@@ -603,41 +685,16 @@ * *Warning*: the whole string is considered as one, so if you want to | ||
| */ | ||
| function pascalCase(str: string): string { | ||
| return _pascalCase(str); | ||
| function pascalCase<S extends string>(str: S): PascalCase<S> { | ||
| return _pascalCase(str) as PascalCase<S>; | ||
| } | ||
| const _sentenceCase = toCase(capitalize, uncapitalize, ' '); | ||
| /** | ||
| * Converts a string to Sentence case. | ||
| */ | ||
| function sentenceCase(str: string): string { | ||
| const [first, ...rest] = str.split(/(\s)/); | ||
| return [capitalize(first), ...rest.map(uncapitalize)].join(''); | ||
| function sentenceCase<S extends string>(str: S): SentenceCase<S> { | ||
| return _sentenceCase(str) as SentenceCase<S>; | ||
| } | ||
| const _snakeCase = toCase(uncapitalize, uncapitalize, '_'); | ||
| /** | ||
| * Converts a string from camel to snake case. | ||
| * | ||
| * Iterates one letter at a time, keeping the result in an | ||
| * accumulator and consecutive uppercase letters in a buffer. | ||
| */ | ||
| type CamelToSnakeCase< | ||
| S extends string, | ||
| Acc extends string = '', | ||
| Buffer extends string = '', | ||
| > = S extends `${infer First}${infer Rest}` | ||
| ? CamelToSnakeCase< | ||
| Rest, | ||
| First extends Uppercase<First> | ||
| ? Rest extends `${infer Second}${infer _}` | ||
| ? Second extends Lowercase<Second> | ||
| ? JoinNonEmpty<[Acc, Buffer, Lowercase<First>], '_'> | ||
| : Acc | ||
| : JoinNonEmpty<[Acc, Buffer, Lowercase<First>], '_'> | ||
| : `${Acc}${First}`, | ||
| // if the first letter is uppercase, add it to the buffer, | ||
| // otherwise reset the buffer | ||
| First extends Uppercase<First> ? `${Buffer}${Lowercase<First>}` : '' | ||
| > | ||
| : Acc & string; | ||
| /** | ||
| * Converts a string to snake_case. | ||
@@ -649,4 +706,4 @@ * | ||
| */ | ||
| function snakeCase<S extends string>(str: S): CamelToSnakeCase<S> { | ||
| return _snakeCase(str) as CamelToSnakeCase<S>; | ||
| function snakeCase<S extends string>(str: S): SnakeCase<S> { | ||
| return _snakeCase(str) as SnakeCase<S>; | ||
| } | ||
@@ -682,14 +739,13 @@ | ||
| * | ||
| * @param {string} str | ||
| * @param {string[]} [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| * @param str | ||
| * @param [skipWords] Words to skip. Default: english skip words (articles, prepositions, etc.) | ||
| */ | ||
| function titleCase( | ||
| str: string, | ||
| function titleCase<S extends string>( | ||
| str: S, | ||
| skipWords: readonly string[] = ENGLISH_SKIP_WORDS, | ||
| ): string { | ||
| ): TitleCase<S> { | ||
| const otherWordsFunction = (word: string) => | ||
| skipWords.includes(word.toLowerCase()) ? word : capitalize(word); | ||
| const [first, ...rest] = str.split(/(\s)/); | ||
| return [capitalize(first), ...rest.map(otherWordsFunction)].join(''); | ||
| return toCase(capitalize, otherWordsFunction, ' ')(str) as TitleCase<S>; | ||
| } | ||
@@ -715,2 +771,9 @@ | ||
| uncapitalize, | ||
| type DateTimeDict, | ||
| type JoinNonEmpty, | ||
| type LastLetter, | ||
| type Pluralizer, | ||
| type Replace, | ||
| type Trim, | ||
| type Unquote, | ||
| // case functions | ||
@@ -722,10 +785,7 @@ camelCase, | ||
| titleCase, | ||
| type CamelToSnakeCase, | ||
| type DateTimeDict, | ||
| type JoinNonEmpty, | ||
| type Pluralizer, | ||
| type Replace, | ||
| type SnakeToCamelCase, | ||
| type Trim, | ||
| type Unquote, | ||
| type CamelCase, | ||
| type PascalCase, | ||
| type SentenceCase, | ||
| type SnakeCase, | ||
| type TitleCase, | ||
| }; |
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
204053
3.56%31
3.33%5085
3.33%