diff options
| author | ruki <waruqi@gmail.com> | 2018-11-08 00:38:48 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2018-11-07 21:53:09 +0800 |
| commit | 26105034da4fcce7ac883c899d781f016559310d (patch) | |
| tree | c459a5dc4e3aa0972d9919033ece511ce76dd129 /node_modules/decamelize-keys | |
| parent | 2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff) | |
| download | xmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip | |
switch to vuepress
Diffstat (limited to 'node_modules/decamelize-keys')
| -rw-r--r-- | node_modules/decamelize-keys/index.js | 19 | ||||
| -rw-r--r-- | node_modules/decamelize-keys/license | 21 | ||||
| -rw-r--r-- | node_modules/decamelize-keys/package.json | 62 | ||||
| -rw-r--r-- | node_modules/decamelize-keys/readme.md | 69 |
4 files changed, 171 insertions, 0 deletions
diff --git a/node_modules/decamelize-keys/index.js b/node_modules/decamelize-keys/index.js new file mode 100644 index 00000000..f731ca0a --- /dev/null +++ b/node_modules/decamelize-keys/index.js @@ -0,0 +1,19 @@ +'use strict'; +var mapObj = require('map-obj'); +var decamelize = require('decamelize'); + +module.exports = function (input, separator, options) { + if (typeof separator !== 'string') { + options = separator; + separator = null; + } + + options = options || {}; + separator = separator || options.separator; + var exclude = options.exclude || []; + + return mapObj(input, function (key, val) { + key = exclude.indexOf(key) === -1 ? decamelize(key, separator) : key; + return [key, val]; + }); +}; diff --git a/node_modules/decamelize-keys/license b/node_modules/decamelize-keys/license new file mode 100644 index 00000000..878ece4b --- /dev/null +++ b/node_modules/decamelize-keys/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com), Dmirty Sobolev <disobolev@icloud.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/decamelize-keys/package.json b/node_modules/decamelize-keys/package.json new file mode 100644 index 00000000..f8a9707a --- /dev/null +++ b/node_modules/decamelize-keys/package.json @@ -0,0 +1,62 @@ +{ + "name": "decamelize-keys", + "version": "1.1.0", + "description": "Convert object keys from camelCase to lowercase with a custom separator", + "license": "MIT", + "repository": "dsblv/decamelize-keys", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "http://sindresorhus.com" + }, + "contributors": [ + { + "name": "Dmirty Sobolev", + "email": "disobolev@icloud.com", + "url": "https://github.com/dsblv" + } + ], + "engines": { + "node": ">=0.10.0" + }, + "scripts": { + "test": "xo && ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "map", + "obj", + "object", + "key", + "keys", + "value", + "values", + "val", + "iterate", + "decamelize", + "decamelcase", + "lowercase", + "camelcase", + "camel-case", + "camel", + "case", + "dash", + "hyphen", + "dot", + "underscore", + "separator", + "string", + "text", + "convert" + ], + "devDependencies": { + "ava": "*", + "xo": "*" + }, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } +} diff --git a/node_modules/decamelize-keys/readme.md b/node_modules/decamelize-keys/readme.md new file mode 100644 index 00000000..7602a872 --- /dev/null +++ b/node_modules/decamelize-keys/readme.md @@ -0,0 +1,69 @@ +# decamelize-keys [](https://travis-ci.org/dsblv/decamelize-keys) + +> Convert object keys from camelCase to lowercase with a custom separator using [`decamelize`](https://github.com/sindresorhus/decamelize) + +*This project was forked from [`camelcase-keys`](https://github.com/sindresorhus/camelcase-keys) and converted to do the opposite* + + +## Install + +```sh +$ npm install --save decamelize-keys +``` + + +## Usage + +```js +const decamelizeKeys = require('decamelize-keys'); + +decamelizeKeys({fooBar: true}, '-'); +//=> {'foo-bar': true} +``` + + +## API + +### decamelizeKeys(input, [separator], [options]) + +### input + +Type: `object` +*Required* + +Object to decamelize. + +### separator + +Type: `string` +Default: `_` + +A string to insert between words. + +### options + +Type: `object` + +#### separator + +Type: `string` +Default: `_` + +Alternative way to specify [separator](#separator). + +#### exclude + +Type: `array` +Default: `[]` + +Exclude keys from being decamelized. + + +## Related + +See [`camelcase-keys`](https://github.com/sindresorhus/camelcase-keys) for the inverse. + + +## License + +MIT © [Sindre Sorhus](http://sindresorhus.com), [Dmirty Sobolev](https://github.com/dsblv) |
