Node.js bindings for convert_case. This project was created using neon.
npm install node-convert-case
import { Case, Boundary, Pattern, CS } from "node-convert-case";
// Using toCase
let marioTitle: string = CS("super_mario_64").toCase(Case.Title).toString();
assert("Super Mario 64" === marioTitle);
// Using toCase with the optional argument 'fromCase'
marioTitle = CS("super_mario_64").toCase(Case.Title, Case.Lower).toString();
assert("Super_mario_64" === marioTitle);
// Using isCase
let pascalStr = "ExceptionHandler";
assert(CS(pascalStr).isCase(Case.Pascal));
// Using mutate
let characterCode: string = CS("567N9854G321K").mutate(
{
boundaries: [Boundary.UpperDigit],
delim: "-",
pattern: Pattern.Lowercase
}
).toString();
assert("567n-9854g-321k" === characterCode);
The included declaration file has extensive documentation on how to use just about everything included, this is just a quick example. For more examples, check out the tests.
This is list of cases that node-convert-case supports. Some cases are simply aliases of others.
Case | Example |
---|---|
Upper | MY VARIABLE NAME |
Lower | my variable name |
Title | My Variable Name |
Toggle | mY vARIABLE nAME |
Alternating | mY vArIaBlE nAmE |
Camel | myVariableName |
Pascal | MyVariableName |
UpperCamel | MyVariableName |
Snake | my_variable_name |
UpperSnake | MY_VARIABLE_NAME |
ScreamingSnake | MY_VARIABLE_NAME |
Kebab | my-variable-name |
Cobol | MY-VARIABLE-NAME |
Train | My-Variable-Name |
Flat | myvariablename |
UpperFlat | MYVARIABLENAME |
Random | MY vaRiabLe nAME |
PseudoRandom | mY VaRiAblE nAMe |
Building node-convert-case requires a supported version of Node and Rust.
First, download this repo's source code, then you can install the project with npm. In the project directory, run:
npm install
This fully installs the project, including installing any dependencies and running the build.
To build after you've already installed, run:
npm run build
This command builds and copies the built library into ./index.node
.
To run tests:
npm test
To learn more about Neon, see the Neon documentation.
To learn more about Rust, see the Rust documentation.
To learn more about Node, see the Node documentation.