summary refs log tree commit diff
path: root/resources/app/node_modules/sort-keys
diff options
context:
space:
mode:
authorManuel Palenzuela <[email protected]>2019-08-19 12:17:51 +0200
committerManuel Palenzuela <[email protected]>2019-08-19 12:17:51 +0200
commitea7016bdb1d9fb7de1a66a94b3de3b3c9e0f32c9 (patch)
tree22a6413c757bb2cc709a51f851d5718298430c0d /resources/app/node_modules/sort-keys
download9anime-client-ea7016bdb1d9fb7de1a66a94b3de3b3c9e0f32c9.tar.gz
9anime-client-ea7016bdb1d9fb7de1a66a94b3de3b3c9e0f32c9.tar.bz2
9anime-client-ea7016bdb1d9fb7de1a66a94b3de3b3c9e0f32c9.zip
Initial Commit HEAD master
Diffstat (limited to 'resources/app/node_modules/sort-keys')
-rw-r--r--resources/app/node_modules/sort-keys/index.js44
-rw-r--r--resources/app/node_modules/sort-keys/license21
-rw-r--r--resources/app/node_modules/sort-keys/readme.md60
3 files changed, 125 insertions, 0 deletions
diff --git a/resources/app/node_modules/sort-keys/index.js b/resources/app/node_modules/sort-keys/index.js
new file mode 100644
index 0000000..f75a0e0
--- /dev/null
+++ b/resources/app/node_modules/sort-keys/index.js
@@ -0,0 +1,44 @@
+'use strict';
+var isPlainObj = require('is-plain-obj');
+
+module.exports = function (obj, opts) {
+	if (!isPlainObj(obj)) {
+		throw new TypeError('Expected a plain object');
+	}
+
+	opts = opts || {};
+
+	// DEPRECATED
+	if (typeof opts === 'function') {
+		opts = {compare: opts};
+	}
+
+	var deep = opts.deep;
+	var seenInput = [];
+	var seenOutput = [];
+
+	var sortKeys = function (x) {
+		var seenIndex = seenInput.indexOf(x);
+
+		if (seenIndex !== -1) {
+			return seenOutput[seenIndex];
+		}
+
+		var ret = {};
+		var keys = Object.keys(x).sort(opts.compare);
+
+		seenInput.push(x);
+		seenOutput.push(ret);
+
+		for (var i = 0; i < keys.length; i++) {
+			var key = keys[i];
+			var val = x[key];
+
+			ret[key] = deep && isPlainObj(val) ? sortKeys(val) : val;
+		}
+
+		return ret;
+	};
+
+	return sortKeys(obj);
+};
diff --git a/resources/app/node_modules/sort-keys/license b/resources/app/node_modules/sort-keys/license
new file mode 100644
index 0000000..654d0bf
--- /dev/null
+++ b/resources/app/node_modules/sort-keys/license
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) Sindre Sorhus <[email protected]> (sindresorhus.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/resources/app/node_modules/sort-keys/readme.md b/resources/app/node_modules/sort-keys/readme.md
new file mode 100644
index 0000000..a671ffb
--- /dev/null
+++ b/resources/app/node_modules/sort-keys/readme.md
@@ -0,0 +1,60 @@
+# sort-keys [![Build Status](https://travis-ci.org/sindresorhus/sort-keys.svg?branch=master)](https://travis-ci.org/sindresorhus/sort-keys)
+
+> Sort the keys of an object
+
+Useful to get a deterministically ordered object, as the order of keys can vary between engines.
+
+
+## Install
+
+```
+$ npm install --save sort-keys
+```
+
+
+## Usage
+
+```js
+const sortKeys = require('sort-keys');
+
+sortKeys({c: 0, a: 0, b: 0});
+//=> {a: 0, b: 0, c: 0}
+
+sortKeys({b: {b: 0, a: 0}, a: 0}, {deep: true});
+//=> {a: 0, b: {a: 0, b: 0}}
+
+sortKeys({c: 0, a: 0, b: 0}, {
+	compare: (a, b) => -a.localeCompare(b)
+});
+//=> {c: 0, b: 0, a: 0}
+```
+
+
+## API
+
+### sortKeys(input, [options])
+
+Returns a new object with sorted keys.
+
+#### input
+
+Type: `Object`
+
+#### options
+
+##### deep
+
+Type: `boolean`
+
+Recursively sort keys.
+
+##### compare
+
+Type: `Function`
+
+[Compare function.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)
+
+
+## License
+
+MIT © [Sindre Sorhus](https://sindresorhus.com)