1.1.0 • Published 6 years ago

changecase-objects v1.1.0

Weekly downloads
165
License
MIT
Repository
github
Last release
6 years ago

changecase-objects

Convert an object's keys to different cases

Installation

$ npm install --save changecase-objects

Usage

var changeKeys = require('changecase-objects')

changeKeys.snakeCase({ fooBar: 'baz' })
// returns { foo_bar: 'baz' }

changeKeys.snakeCase({ 'foo-bar': true, nested: { fooBaz: 'bar' }})
// returns { foo_bar: true, nested: { foo_baz: 'bar' }}

or with imports

import { snakeCase } from 'changecase-objects'

snakeCase({ fooBar: 'baz' })
// returns { foo_bar: 'baz' }

snakeCase({ 'foo-bar': true, nested: { fooBaz: 'bar' }})
// returns { foo_bar: true, nested: { foo_baz: 'bar' }}

API

Extra Options

Every function accepts an optional options object. The following options are currently supported:

NameTypeDescription
excludearray<string>Array of key values to exclude from case change.
exclude
camelCase({ foo_bar: 'baz', 'filters[foo_bar]': 'val' }, { exclude: ['filters[foo_bar]'] })
// returns { fooBar: 'baz', 'filters[foo_bar]': 'val' }

camelCase

camelCase(obj, [options]) -> Object

Converts keys to a string with the separators denoted by having the next letter capitalized.

camelCase({ 'key name': 'val' })
// returns { keyName: 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into camel case.
optionsObjectNosee options

CONSTANT_CASE

constantCase(obj, [options]) -> Object

Converts keys to upper case, with an underscore separator.

constantCase({ 'key name': 'val' })
// returns { KEY_NAME: 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into constant case.
optionsObjectNosee options

dot.case

dotCase(obj, [options]) -> Object

Converts keys to lower case, with a period separator.

dotCase({ 'key name': 'val' })
// returns { 'key.name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into dot case.
optionsObjectNosee options

Header-Case

headerCase(obj, [options]) -> Object

Converts keys to title case, with a dash separator.

headerCase({ 'key name': 'val' })
// returns { 'Key-Name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into header case.
optionsObjectNosee options

kebab-case

kebabCase(obj, [options]) -> Object

Converts keys to lower case, with a dash separator.

kebabCase({ 'key name': 'val' })
// returns { 'key-name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into kebab case.
optionsObjectNosee options

lower case

lowerCase(obj, [options]) -> Object

Converts keys to lower case, with a space separator.

lowerCase({ 'Key Name': 'val' })
// returns { 'key name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into lower case.
optionsObjectNosee options

PascalCase

pascalCase(obj, [options]) -> Object

Converts keys to camel case, with the first character also capitalized.

pascalCase({ 'key name': 'val' })
// returns { KeyName: 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into pascal case.
optionsObjectNosee options

path/case

pathCase(obj, [options]) -> Object

Converts keys to lower case, with a slash separator.

pathCase({ 'key name': 'val' })
// returns { 'key/name': 'val' })
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into path case.
optionsObjectNosee options

Sentence case

sentenceCase(obj, [options]) -> Object

Converts keys to lower case, with a space separator, with the first letter capitalized.

sentenceCase({ 'key name': 'val' })
// returns { 'Key name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into sentence case.
optionsObjectNosee options

snake_case

snakeCase(obj, [options]) -> Object

Converts keys to lower case, with an underscore separator.

snakeCase({ 'key name': 'val' })
// returns { key_name: 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into snake case.
optionsObjectNosee options

Title Case

titleCase(obj, [options]) -> Object

Converts keys to lower case with the first letter of each word capitalized, with a space separator.

titleCase({ 'key name': 'val' })
// returns { 'Key Name': 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into title case.
optionsObjectNosee options

UPPER CASE

upperCase(obj, [options]) -> Object

Converts keys to upper case, with a space separator.

upperCase({ 'key name': 'val' })
// returns { 'KEY NAME: 'val' }
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into upper case.
optionsObjectNosee options

-cUsToM-cAsE-

customCase(obj, caseFn, [options]) -> Object

Allows for custom casing rules by converting keys according to given function.

customCase({ 'key name': 'val' }, key => transform(key))
// returns keys formatted by `caseFn`
Parameters
NameTypeRequiredDescription
objObject or array<Object>YesAn object to transform keys into upper case.
caseFnfunction(string) -> stringYesA function that returns a modified key.
optionsObjectNosee options
1.1.0

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago