change-case-commonjs v5.4.4
Change Case
Transform a string between
camelCase,PascalCase,Capital Case,snake_case,kebab-case,CONSTANT_CASEand others.
Installation
npm install change-case --saveUsage
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?: stringThe character to use between words. Default depends on method, e.g._in snake case.locale?: string[] | string | falseLower/upper according to specified locale, defaults to host environment. Set tofalseto disable.split?: (value: string) => string[]A function to define how the input is split into words. Defaults tosplit.prefixCharacters?: stringRetain at the beginning of the string. Defaults to"". Example: use"_"to keep the underscores in__typename.suffixCharacters?: stringRetain 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 NOT a pure ESM package and ships with TypeScript definitions. It CAN be require'd or used with CommonJS module resolution in TypeScript.
License
MIT