change-case v5.4.4
Change Case
Transform a string between
camelCase
,PascalCase
,Capital Case
,snake_case
,kebab-case
,CONSTANT_CASE
and others.
Installation
npm install change-case --save
Usage
import * as changeCase from "change-case";
changeCase.camelCase("TEST_VALUE"); //=> "testValue"
Included case functions:
Method | Result |
---|---|
camelCase | twoWords |
capitalCase | Two Words |
constantCase | TWO_WORDS |
dotCase | two.words |
kebabCase | two-words |
noCase | two words |
pascalCase | TwoWords |
pascalSnakeCase | Two_Words |
pathCase | two/words |
sentenceCase | Two words |
snakeCase | two_words |
trainCase | Two-Words |
All methods accept an options
object as the second argument:
delimiter?: string
The character to use between words. Default depends on method, e.g._
in snake case.locale?: string[] | string | false
Lower/upper according to specified locale, defaults to host environment. Set tofalse
to disable.split?: (value: string) => string[]
A function to define how the input is split into words. Defaults tosplit
.prefixCharacters?: string
Retain at the beginning of the string. Defaults to""
. Example: use"_"
to keep the underscores in__typename
.suffixCharacters?: string
Retain at the end of the string. Defaults to""
. Example: use"_"
to keep the underscore intype_
.
By default, pascalCase
and snakeCase
separate ambiguous characters with _
. For example, V1.2
would become V1_2
instead of V12
. If you prefer them merged you can set mergeAmbiguousCharacters
to true
.
Split
Change case exports a split
utility which can be used to build other case functions. It accepts a string and returns each "word" as an array. For example:
split("fooBar")
.map((x) => x.toLowerCase())
.join("_"); //=> "foo_bar"
Change Case Keys
import * as changeKeys from "change-case/keys";
changeKeys.camelCase({ TEST_KEY: true }); //=> { testKey: true }
Change case keys wraps around the core methods to transform object keys to any case.
API
- input: any Any JavaScript value.
- depth: number Specify the depth to transfer for case transformation. Defaults to
1
. - options: object Same as base case library.
TypeScript and ESM
This package is a pure ESM package and ships with TypeScript definitions. It cannot be require
'd or used with CommonJS module resolution in TypeScript.
License
MIT
8 months ago
10 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
7 years ago
8 years ago
8 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
12 years ago
12 years ago
12 years ago