You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by st...@apache.org on 2016/06/18 01:04:25 UTC
[07/51] [abbrv] [partial] ios commit: CB-11445 rechecked in
node_modules using npm 2
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/equalObjects.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/equalObjects.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/equalObjects.js
new file mode 100644
index 0000000..1297a3b
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/equalObjects.js
@@ -0,0 +1,67 @@
+var keys = require('../object/keys');
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A specialized version of `baseIsEqualDeep` for objects with support for
+ * partial deep comparisons.
+ *
+ * @private
+ * @param {Object} object The object to compare.
+ * @param {Object} other The other object to compare.
+ * @param {Function} equalFunc The function to determine equivalents of values.
+ * @param {Function} [customizer] The function to customize comparing values.
+ * @param {boolean} [isLoose] Specify performing partial comparisons.
+ * @param {Array} [stackA] Tracks traversed `value` objects.
+ * @param {Array} [stackB] Tracks traversed `other` objects.
+ * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
+ */
+function equalObjects(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
+ var objProps = keys(object),
+ objLength = objProps.length,
+ othProps = keys(other),
+ othLength = othProps.length;
+
+ if (objLength != othLength && !isLoose) {
+ return false;
+ }
+ var index = objLength;
+ while (index--) {
+ var key = objProps[index];
+ if (!(isLoose ? key in other : hasOwnProperty.call(other, key))) {
+ return false;
+ }
+ }
+ var skipCtor = isLoose;
+ while (++index < objLength) {
+ key = objProps[index];
+ var objValue = object[key],
+ othValue = other[key],
+ result = customizer ? customizer(isLoose ? othValue : objValue, isLoose? objValue : othValue, key) : undefined;
+
+ // Recursively compare objects (susceptible to call stack limits).
+ if (!(result === undefined ? equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB) : result)) {
+ return false;
+ }
+ skipCtor || (skipCtor = key == 'constructor');
+ }
+ if (!skipCtor) {
+ var objCtor = object.constructor,
+ othCtor = other.constructor;
+
+ // Non `Object` object instances with different constructors are not equal.
+ if (objCtor != othCtor &&
+ ('constructor' in object && 'constructor' in other) &&
+ !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
+ typeof othCtor == 'function' && othCtor instanceof othCtor)) {
+ return false;
+ }
+ }
+ return true;
+}
+
+module.exports = equalObjects;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeHtmlChar.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeHtmlChar.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeHtmlChar.js
new file mode 100644
index 0000000..b21e452
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeHtmlChar.js
@@ -0,0 +1,22 @@
+/** Used to map characters to HTML entities. */
+var htmlEscapes = {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": ''',
+ '`': '`'
+};
+
+/**
+ * Used by `_.escape` to convert characters to HTML entities.
+ *
+ * @private
+ * @param {string} chr The matched character to escape.
+ * @returns {string} Returns the escaped character.
+ */
+function escapeHtmlChar(chr) {
+ return htmlEscapes[chr];
+}
+
+module.exports = escapeHtmlChar;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeRegExpChar.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeRegExpChar.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeRegExpChar.js
new file mode 100644
index 0000000..8427de0
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeRegExpChar.js
@@ -0,0 +1,38 @@
+/** Used to escape characters for inclusion in compiled regexes. */
+var regexpEscapes = {
+ '0': 'x30', '1': 'x31', '2': 'x32', '3': 'x33', '4': 'x34',
+ '5': 'x35', '6': 'x36', '7': 'x37', '8': 'x38', '9': 'x39',
+ 'A': 'x41', 'B': 'x42', 'C': 'x43', 'D': 'x44', 'E': 'x45', 'F': 'x46',
+ 'a': 'x61', 'b': 'x62', 'c': 'x63', 'd': 'x64', 'e': 'x65', 'f': 'x66',
+ 'n': 'x6e', 'r': 'x72', 't': 'x74', 'u': 'x75', 'v': 'x76', 'x': 'x78'
+};
+
+/** Used to escape characters for inclusion in compiled string literals. */
+var stringEscapes = {
+ '\\': '\\',
+ "'": "'",
+ '\n': 'n',
+ '\r': 'r',
+ '\u2028': 'u2028',
+ '\u2029': 'u2029'
+};
+
+/**
+ * Used by `_.escapeRegExp` to escape characters for inclusion in compiled regexes.
+ *
+ * @private
+ * @param {string} chr The matched character to escape.
+ * @param {string} leadingChar The capture group for a leading character.
+ * @param {string} whitespaceChar The capture group for a whitespace character.
+ * @returns {string} Returns the escaped character.
+ */
+function escapeRegExpChar(chr, leadingChar, whitespaceChar) {
+ if (leadingChar) {
+ chr = regexpEscapes[chr];
+ } else if (whitespaceChar) {
+ chr = stringEscapes[chr];
+ }
+ return '\\' + chr;
+}
+
+module.exports = escapeRegExpChar;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeStringChar.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeStringChar.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeStringChar.js
new file mode 100644
index 0000000..44eca96
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/escapeStringChar.js
@@ -0,0 +1,22 @@
+/** Used to escape characters for inclusion in compiled string literals. */
+var stringEscapes = {
+ '\\': '\\',
+ "'": "'",
+ '\n': 'n',
+ '\r': 'r',
+ '\u2028': 'u2028',
+ '\u2029': 'u2029'
+};
+
+/**
+ * Used by `_.template` to escape characters for inclusion in compiled string literals.
+ *
+ * @private
+ * @param {string} chr The matched character to escape.
+ * @returns {string} Returns the escaped character.
+ */
+function escapeStringChar(chr) {
+ return '\\' + stringEscapes[chr];
+}
+
+module.exports = escapeStringChar;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getData.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getData.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getData.js
new file mode 100644
index 0000000..5bb4f46
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getData.js
@@ -0,0 +1,15 @@
+var metaMap = require('./metaMap'),
+ noop = require('../utility/noop');
+
+/**
+ * Gets metadata for `func`.
+ *
+ * @private
+ * @param {Function} func The function to query.
+ * @returns {*} Returns the metadata for `func`.
+ */
+var getData = !metaMap ? noop : function(func) {
+ return metaMap.get(func);
+};
+
+module.exports = getData;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getFuncName.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getFuncName.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getFuncName.js
new file mode 100644
index 0000000..ed92867
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getFuncName.js
@@ -0,0 +1,25 @@
+var realNames = require('./realNames');
+
+/**
+ * Gets the name of `func`.
+ *
+ * @private
+ * @param {Function} func The function to query.
+ * @returns {string} Returns the function name.
+ */
+function getFuncName(func) {
+ var result = (func.name + ''),
+ array = realNames[result],
+ length = array ? array.length : 0;
+
+ while (length--) {
+ var data = array[length],
+ otherFunc = data.func;
+ if (otherFunc == null || otherFunc == func) {
+ return data.name;
+ }
+ }
+ return result;
+}
+
+module.exports = getFuncName;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getLength.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getLength.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getLength.js
new file mode 100644
index 0000000..48d75ae
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getLength.js
@@ -0,0 +1,15 @@
+var baseProperty = require('./baseProperty');
+
+/**
+ * Gets the "length" property value of `object`.
+ *
+ * **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
+ * that affects Safari on at least iOS 8.1-8.3 ARM64.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {*} Returns the "length" value.
+ */
+var getLength = baseProperty('length');
+
+module.exports = getLength;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getMatchData.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getMatchData.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getMatchData.js
new file mode 100644
index 0000000..6d235b9
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getMatchData.js
@@ -0,0 +1,21 @@
+var isStrictComparable = require('./isStrictComparable'),
+ pairs = require('../object/pairs');
+
+/**
+ * Gets the propery names, values, and compare flags of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the match data of `object`.
+ */
+function getMatchData(object) {
+ var result = pairs(object),
+ length = result.length;
+
+ while (length--) {
+ result[length][2] = isStrictComparable(result[length][1]);
+ }
+ return result;
+}
+
+module.exports = getMatchData;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getNative.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getNative.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getNative.js
new file mode 100644
index 0000000..bceb317
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getNative.js
@@ -0,0 +1,16 @@
+var isNative = require('../lang/isNative');
+
+/**
+ * Gets the native function at `key` of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {string} key The key of the method to get.
+ * @returns {*} Returns the function if it's native, else `undefined`.
+ */
+function getNative(object, key) {
+ var value = object == null ? undefined : object[key];
+ return isNative(value) ? value : undefined;
+}
+
+module.exports = getNative;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getView.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getView.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getView.js
new file mode 100644
index 0000000..f49ec6d
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/getView.js
@@ -0,0 +1,33 @@
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeMax = Math.max,
+ nativeMin = Math.min;
+
+/**
+ * Gets the view, applying any `transforms` to the `start` and `end` positions.
+ *
+ * @private
+ * @param {number} start The start of the view.
+ * @param {number} end The end of the view.
+ * @param {Array} transforms The transformations to apply to the view.
+ * @returns {Object} Returns an object containing the `start` and `end`
+ * positions of the view.
+ */
+function getView(start, end, transforms) {
+ var index = -1,
+ length = transforms.length;
+
+ while (++index < length) {
+ var data = transforms[index],
+ size = data.size;
+
+ switch (data.type) {
+ case 'drop': start += size; break;
+ case 'dropRight': end -= size; break;
+ case 'take': end = nativeMin(end, start + size); break;
+ case 'takeRight': start = nativeMax(start, end - size); break;
+ }
+ }
+ return { 'start': start, 'end': end };
+}
+
+module.exports = getView;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/indexOfNaN.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/indexOfNaN.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/indexOfNaN.js
new file mode 100644
index 0000000..05b8207
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/indexOfNaN.js
@@ -0,0 +1,23 @@
+/**
+ * Gets the index at which the first occurrence of `NaN` is found in `array`.
+ *
+ * @private
+ * @param {Array} array The array to search.
+ * @param {number} fromIndex The index to search from.
+ * @param {boolean} [fromRight] Specify iterating from right to left.
+ * @returns {number} Returns the index of the matched `NaN`, else `-1`.
+ */
+function indexOfNaN(array, fromIndex, fromRight) {
+ var length = array.length,
+ index = fromIndex + (fromRight ? 0 : -1);
+
+ while ((fromRight ? index-- : ++index < length)) {
+ var other = array[index];
+ if (other !== other) {
+ return index;
+ }
+ }
+ return -1;
+}
+
+module.exports = indexOfNaN;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneArray.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneArray.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneArray.js
new file mode 100644
index 0000000..c92dfa2
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneArray.js
@@ -0,0 +1,26 @@
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Initializes an array clone.
+ *
+ * @private
+ * @param {Array} array The array to clone.
+ * @returns {Array} Returns the initialized clone.
+ */
+function initCloneArray(array) {
+ var length = array.length,
+ result = new array.constructor(length);
+
+ // Add array properties assigned by `RegExp#exec`.
+ if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
+ result.index = array.index;
+ result.input = array.input;
+ }
+ return result;
+}
+
+module.exports = initCloneArray;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneByTag.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneByTag.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneByTag.js
new file mode 100644
index 0000000..8e3afc6
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneByTag.js
@@ -0,0 +1,63 @@
+var bufferClone = require('./bufferClone');
+
+/** `Object#toString` result references. */
+var boolTag = '[object Boolean]',
+ dateTag = '[object Date]',
+ numberTag = '[object Number]',
+ regexpTag = '[object RegExp]',
+ stringTag = '[object String]';
+
+var arrayBufferTag = '[object ArrayBuffer]',
+ float32Tag = '[object Float32Array]',
+ float64Tag = '[object Float64Array]',
+ int8Tag = '[object Int8Array]',
+ int16Tag = '[object Int16Array]',
+ int32Tag = '[object Int32Array]',
+ uint8Tag = '[object Uint8Array]',
+ uint8ClampedTag = '[object Uint8ClampedArray]',
+ uint16Tag = '[object Uint16Array]',
+ uint32Tag = '[object Uint32Array]';
+
+/** Used to match `RegExp` flags from their coerced string values. */
+var reFlags = /\w*$/;
+
+/**
+ * Initializes an object clone based on its `toStringTag`.
+ *
+ * **Note:** This function only supports cloning values with tags of
+ * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
+ *
+ * @private
+ * @param {Object} object The object to clone.
+ * @param {string} tag The `toStringTag` of the object to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @returns {Object} Returns the initialized clone.
+ */
+function initCloneByTag(object, tag, isDeep) {
+ var Ctor = object.constructor;
+ switch (tag) {
+ case arrayBufferTag:
+ return bufferClone(object);
+
+ case boolTag:
+ case dateTag:
+ return new Ctor(+object);
+
+ case float32Tag: case float64Tag:
+ case int8Tag: case int16Tag: case int32Tag:
+ case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
+ var buffer = object.buffer;
+ return new Ctor(isDeep ? bufferClone(buffer) : buffer, object.byteOffset, object.length);
+
+ case numberTag:
+ case stringTag:
+ return new Ctor(object);
+
+ case regexpTag:
+ var result = new Ctor(object.source, reFlags.exec(object));
+ result.lastIndex = object.lastIndex;
+ }
+ return result;
+}
+
+module.exports = initCloneByTag;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneObject.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneObject.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneObject.js
new file mode 100644
index 0000000..48c4a23
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/initCloneObject.js
@@ -0,0 +1,16 @@
+/**
+ * Initializes an object clone.
+ *
+ * @private
+ * @param {Object} object The object to clone.
+ * @returns {Object} Returns the initialized clone.
+ */
+function initCloneObject(object) {
+ var Ctor = object.constructor;
+ if (!(typeof Ctor == 'function' && Ctor instanceof Ctor)) {
+ Ctor = Object;
+ }
+ return new Ctor;
+}
+
+module.exports = initCloneObject;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/invokePath.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/invokePath.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/invokePath.js
new file mode 100644
index 0000000..935110f
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/invokePath.js
@@ -0,0 +1,26 @@
+var baseGet = require('./baseGet'),
+ baseSlice = require('./baseSlice'),
+ isKey = require('./isKey'),
+ last = require('../array/last'),
+ toPath = require('./toPath');
+
+/**
+ * Invokes the method at `path` on `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @param {Array|string} path The path of the method to invoke.
+ * @param {Array} args The arguments to invoke the method with.
+ * @returns {*} Returns the result of the invoked method.
+ */
+function invokePath(object, path, args) {
+ if (object != null && !isKey(path, object)) {
+ path = toPath(path);
+ object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
+ path = last(path);
+ }
+ var func = object == null ? object : object[path];
+ return func == null ? undefined : func.apply(object, args);
+}
+
+module.exports = invokePath;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isArrayLike.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isArrayLike.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isArrayLike.js
new file mode 100644
index 0000000..72443cd
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isArrayLike.js
@@ -0,0 +1,15 @@
+var getLength = require('./getLength'),
+ isLength = require('./isLength');
+
+/**
+ * Checks if `value` is array-like.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
+ */
+function isArrayLike(value) {
+ return value != null && isLength(getLength(value));
+}
+
+module.exports = isArrayLike;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIndex.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIndex.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIndex.js
new file mode 100644
index 0000000..469164b
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIndex.js
@@ -0,0 +1,24 @@
+/** Used to detect unsigned integer values. */
+var reIsUint = /^\d+$/;
+
+/**
+ * Used as the [maximum length](http://ecma-international.org/ecma-262/6.0/#sec-number.max_safe_integer)
+ * of an array-like value.
+ */
+var MAX_SAFE_INTEGER = 9007199254740991;
+
+/**
+ * Checks if `value` is a valid array-like index.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
+ * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
+ */
+function isIndex(value, length) {
+ value = (typeof value == 'number' || reIsUint.test(value)) ? +value : -1;
+ length = length == null ? MAX_SAFE_INTEGER : length;
+ return value > -1 && value % 1 == 0 && value < length;
+}
+
+module.exports = isIndex;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIterateeCall.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIterateeCall.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIterateeCall.js
new file mode 100644
index 0000000..07490f2
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isIterateeCall.js
@@ -0,0 +1,28 @@
+var isArrayLike = require('./isArrayLike'),
+ isIndex = require('./isIndex'),
+ isObject = require('../lang/isObject');
+
+/**
+ * Checks if the provided arguments are from an iteratee call.
+ *
+ * @private
+ * @param {*} value The potential iteratee value argument.
+ * @param {*} index The potential iteratee index or key argument.
+ * @param {*} object The potential iteratee object argument.
+ * @returns {boolean} Returns `true` if the arguments are from an iteratee call, else `false`.
+ */
+function isIterateeCall(value, index, object) {
+ if (!isObject(object)) {
+ return false;
+ }
+ var type = typeof index;
+ if (type == 'number'
+ ? (isArrayLike(object) && isIndex(index, object.length))
+ : (type == 'string' && index in object)) {
+ var other = object[index];
+ return value === value ? (value === other) : (other !== other);
+ }
+ return false;
+}
+
+module.exports = isIterateeCall;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isKey.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isKey.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isKey.js
new file mode 100644
index 0000000..44ccfd4
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isKey.js
@@ -0,0 +1,28 @@
+var isArray = require('../lang/isArray'),
+ toObject = require('./toObject');
+
+/** Used to match property names within property paths. */
+var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,
+ reIsPlainProp = /^\w*$/;
+
+/**
+ * Checks if `value` is a property name and not a property path.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @param {Object} [object] The object to query keys on.
+ * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
+ */
+function isKey(value, object) {
+ var type = typeof value;
+ if ((type == 'string' && reIsPlainProp.test(value)) || type == 'number') {
+ return true;
+ }
+ if (isArray(value)) {
+ return false;
+ }
+ var result = !reIsDeepProp.test(value);
+ return result || (object != null && value in toObject(object));
+}
+
+module.exports = isKey;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLaziable.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLaziable.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLaziable.js
new file mode 100644
index 0000000..475fab1
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLaziable.js
@@ -0,0 +1,27 @@
+var LazyWrapper = require('./LazyWrapper'),
+ getData = require('./getData'),
+ getFuncName = require('./getFuncName'),
+ lodash = require('../chain/lodash');
+
+/**
+ * Checks if `func` has a lazy counterpart.
+ *
+ * @private
+ * @param {Function} func The function to check.
+ * @returns {boolean} Returns `true` if `func` has a lazy counterpart, else `false`.
+ */
+function isLaziable(func) {
+ var funcName = getFuncName(func),
+ other = lodash[funcName];
+
+ if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {
+ return false;
+ }
+ if (func === other) {
+ return true;
+ }
+ var data = getData(other);
+ return !!data && func === data[0];
+}
+
+module.exports = isLaziable;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLength.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLength.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLength.js
new file mode 100644
index 0000000..2092987
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isLength.js
@@ -0,0 +1,20 @@
+/**
+ * Used as the [maximum length](http://ecma-international.org/ecma-262/6.0/#sec-number.max_safe_integer)
+ * of an array-like value.
+ */
+var MAX_SAFE_INTEGER = 9007199254740991;
+
+/**
+ * Checks if `value` is a valid array-like length.
+ *
+ * **Note:** This function is based on [`ToLength`](http://ecma-international.org/ecma-262/6.0/#sec-tolength).
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
+ */
+function isLength(value) {
+ return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
+}
+
+module.exports = isLength;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isObjectLike.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isObjectLike.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isObjectLike.js
new file mode 100644
index 0000000..8ca0585
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isObjectLike.js
@@ -0,0 +1,12 @@
+/**
+ * Checks if `value` is object-like.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
+ */
+function isObjectLike(value) {
+ return !!value && typeof value == 'object';
+}
+
+module.exports = isObjectLike;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isSpace.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isSpace.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isSpace.js
new file mode 100644
index 0000000..16ea6f3
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isSpace.js
@@ -0,0 +1,14 @@
+/**
+ * Used by `trimmedLeftIndex` and `trimmedRightIndex` to determine if a
+ * character code is whitespace.
+ *
+ * @private
+ * @param {number} charCode The character code to inspect.
+ * @returns {boolean} Returns `true` if `charCode` is whitespace, else `false`.
+ */
+function isSpace(charCode) {
+ return ((charCode <= 160 && (charCode >= 9 && charCode <= 13) || charCode == 32 || charCode == 160) || charCode == 5760 || charCode == 6158 ||
+ (charCode >= 8192 && (charCode <= 8202 || charCode == 8232 || charCode == 8233 || charCode == 8239 || charCode == 8287 || charCode == 12288 || charCode == 65279)));
+}
+
+module.exports = isSpace;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isStrictComparable.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isStrictComparable.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isStrictComparable.js
new file mode 100644
index 0000000..0a53eba
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/isStrictComparable.js
@@ -0,0 +1,15 @@
+var isObject = require('../lang/isObject');
+
+/**
+ * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` if suitable for strict
+ * equality comparisons, else `false`.
+ */
+function isStrictComparable(value) {
+ return value === value && !isObject(value);
+}
+
+module.exports = isStrictComparable;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyClone.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyClone.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyClone.js
new file mode 100644
index 0000000..04c222b
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyClone.js
@@ -0,0 +1,23 @@
+var LazyWrapper = require('./LazyWrapper'),
+ arrayCopy = require('./arrayCopy');
+
+/**
+ * Creates a clone of the lazy wrapper object.
+ *
+ * @private
+ * @name clone
+ * @memberOf LazyWrapper
+ * @returns {Object} Returns the cloned `LazyWrapper` object.
+ */
+function lazyClone() {
+ var result = new LazyWrapper(this.__wrapped__);
+ result.__actions__ = arrayCopy(this.__actions__);
+ result.__dir__ = this.__dir__;
+ result.__filtered__ = this.__filtered__;
+ result.__iteratees__ = arrayCopy(this.__iteratees__);
+ result.__takeCount__ = this.__takeCount__;
+ result.__views__ = arrayCopy(this.__views__);
+ return result;
+}
+
+module.exports = lazyClone;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyReverse.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyReverse.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyReverse.js
new file mode 100644
index 0000000..c658402
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyReverse.js
@@ -0,0 +1,23 @@
+var LazyWrapper = require('./LazyWrapper');
+
+/**
+ * Reverses the direction of lazy iteration.
+ *
+ * @private
+ * @name reverse
+ * @memberOf LazyWrapper
+ * @returns {Object} Returns the new reversed `LazyWrapper` object.
+ */
+function lazyReverse() {
+ if (this.__filtered__) {
+ var result = new LazyWrapper(this);
+ result.__dir__ = -1;
+ result.__filtered__ = true;
+ } else {
+ result = this.clone();
+ result.__dir__ *= -1;
+ }
+ return result;
+}
+
+module.exports = lazyReverse;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyValue.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyValue.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyValue.js
new file mode 100644
index 0000000..8de68e6
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/lazyValue.js
@@ -0,0 +1,72 @@
+var baseWrapperValue = require('./baseWrapperValue'),
+ getView = require('./getView'),
+ isArray = require('../lang/isArray');
+
+/** Used as the size to enable large array optimizations. */
+var LARGE_ARRAY_SIZE = 200;
+
+/** Used to indicate the type of lazy iteratees. */
+var LAZY_FILTER_FLAG = 1,
+ LAZY_MAP_FLAG = 2;
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeMin = Math.min;
+
+/**
+ * Extracts the unwrapped value from its lazy wrapper.
+ *
+ * @private
+ * @name value
+ * @memberOf LazyWrapper
+ * @returns {*} Returns the unwrapped value.
+ */
+function lazyValue() {
+ var array = this.__wrapped__.value(),
+ dir = this.__dir__,
+ isArr = isArray(array),
+ isRight = dir < 0,
+ arrLength = isArr ? array.length : 0,
+ view = getView(0, arrLength, this.__views__),
+ start = view.start,
+ end = view.end,
+ length = end - start,
+ index = isRight ? end : (start - 1),
+ iteratees = this.__iteratees__,
+ iterLength = iteratees.length,
+ resIndex = 0,
+ takeCount = nativeMin(length, this.__takeCount__);
+
+ if (!isArr || arrLength < LARGE_ARRAY_SIZE || (arrLength == length && takeCount == length)) {
+ return baseWrapperValue(array, this.__actions__);
+ }
+ var result = [];
+
+ outer:
+ while (length-- && resIndex < takeCount) {
+ index += dir;
+
+ var iterIndex = -1,
+ value = array[index];
+
+ while (++iterIndex < iterLength) {
+ var data = iteratees[iterIndex],
+ iteratee = data.iteratee,
+ type = data.type,
+ computed = iteratee(value);
+
+ if (type == LAZY_MAP_FLAG) {
+ value = computed;
+ } else if (!computed) {
+ if (type == LAZY_FILTER_FLAG) {
+ continue outer;
+ } else {
+ break outer;
+ }
+ }
+ }
+ result[resIndex++] = value;
+ }
+ return result;
+}
+
+module.exports = lazyValue;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapDelete.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapDelete.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapDelete.js
new file mode 100644
index 0000000..8b7fd53
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapDelete.js
@@ -0,0 +1,14 @@
+/**
+ * Removes `key` and its value from the cache.
+ *
+ * @private
+ * @name delete
+ * @memberOf _.memoize.Cache
+ * @param {string} key The key of the value to remove.
+ * @returns {boolean} Returns `true` if the entry was removed successfully, else `false`.
+ */
+function mapDelete(key) {
+ return this.has(key) && delete this.__data__[key];
+}
+
+module.exports = mapDelete;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapGet.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapGet.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapGet.js
new file mode 100644
index 0000000..1f22295
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapGet.js
@@ -0,0 +1,14 @@
+/**
+ * Gets the cached value for `key`.
+ *
+ * @private
+ * @name get
+ * @memberOf _.memoize.Cache
+ * @param {string} key The key of the value to get.
+ * @returns {*} Returns the cached value.
+ */
+function mapGet(key) {
+ return key == '__proto__' ? undefined : this.__data__[key];
+}
+
+module.exports = mapGet;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapHas.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapHas.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapHas.js
new file mode 100644
index 0000000..6d94ce4
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapHas.js
@@ -0,0 +1,20 @@
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Checks if a cached value for `key` exists.
+ *
+ * @private
+ * @name has
+ * @memberOf _.memoize.Cache
+ * @param {string} key The key of the entry to check.
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
+ */
+function mapHas(key) {
+ return key != '__proto__' && hasOwnProperty.call(this.__data__, key);
+}
+
+module.exports = mapHas;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapSet.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapSet.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapSet.js
new file mode 100644
index 0000000..0434c3f
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mapSet.js
@@ -0,0 +1,18 @@
+/**
+ * Sets `value` to `key` of the cache.
+ *
+ * @private
+ * @name set
+ * @memberOf _.memoize.Cache
+ * @param {string} key The key of the value to cache.
+ * @param {*} value The value to cache.
+ * @returns {Object} Returns the cache object.
+ */
+function mapSet(key, value) {
+ if (key != '__proto__') {
+ this.__data__[key] = value;
+ }
+ return this;
+}
+
+module.exports = mapSet;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeData.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeData.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeData.js
new file mode 100644
index 0000000..29297c7
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeData.js
@@ -0,0 +1,89 @@
+var arrayCopy = require('./arrayCopy'),
+ composeArgs = require('./composeArgs'),
+ composeArgsRight = require('./composeArgsRight'),
+ replaceHolders = require('./replaceHolders');
+
+/** Used to compose bitmasks for wrapper metadata. */
+var BIND_FLAG = 1,
+ CURRY_BOUND_FLAG = 4,
+ CURRY_FLAG = 8,
+ ARY_FLAG = 128,
+ REARG_FLAG = 256;
+
+/** Used as the internal argument placeholder. */
+var PLACEHOLDER = '__lodash_placeholder__';
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeMin = Math.min;
+
+/**
+ * Merges the function metadata of `source` into `data`.
+ *
+ * Merging metadata reduces the number of wrappers required to invoke a function.
+ * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`
+ * may be applied regardless of execution order. Methods like `_.ary` and `_.rearg`
+ * augment function arguments, making the order in which they are executed important,
+ * preventing the merging of metadata. However, we make an exception for a safe
+ * common case where curried functions have `_.ary` and or `_.rearg` applied.
+ *
+ * @private
+ * @param {Array} data The destination metadata.
+ * @param {Array} source The source metadata.
+ * @returns {Array} Returns `data`.
+ */
+function mergeData(data, source) {
+ var bitmask = data[1],
+ srcBitmask = source[1],
+ newBitmask = bitmask | srcBitmask,
+ isCommon = newBitmask < ARY_FLAG;
+
+ var isCombo =
+ (srcBitmask == ARY_FLAG && bitmask == CURRY_FLAG) ||
+ (srcBitmask == ARY_FLAG && bitmask == REARG_FLAG && data[7].length <= source[8]) ||
+ (srcBitmask == (ARY_FLAG | REARG_FLAG) && bitmask == CURRY_FLAG);
+
+ // Exit early if metadata can't be merged.
+ if (!(isCommon || isCombo)) {
+ return data;
+ }
+ // Use source `thisArg` if available.
+ if (srcBitmask & BIND_FLAG) {
+ data[2] = source[2];
+ // Set when currying a bound function.
+ newBitmask |= (bitmask & BIND_FLAG) ? 0 : CURRY_BOUND_FLAG;
+ }
+ // Compose partial arguments.
+ var value = source[3];
+ if (value) {
+ var partials = data[3];
+ data[3] = partials ? composeArgs(partials, value, source[4]) : arrayCopy(value);
+ data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : arrayCopy(source[4]);
+ }
+ // Compose partial right arguments.
+ value = source[5];
+ if (value) {
+ partials = data[5];
+ data[5] = partials ? composeArgsRight(partials, value, source[6]) : arrayCopy(value);
+ data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : arrayCopy(source[6]);
+ }
+ // Use source `argPos` if available.
+ value = source[7];
+ if (value) {
+ data[7] = arrayCopy(value);
+ }
+ // Use source `ary` if it's smaller.
+ if (srcBitmask & ARY_FLAG) {
+ data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
+ }
+ // Use source `arity` if one is not provided.
+ if (data[9] == null) {
+ data[9] = source[9];
+ }
+ // Use source `func` and merge bitmasks.
+ data[0] = source[0];
+ data[1] = newBitmask;
+
+ return data;
+}
+
+module.exports = mergeData;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeDefaults.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeDefaults.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeDefaults.js
new file mode 100644
index 0000000..dcd967e
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/mergeDefaults.js
@@ -0,0 +1,15 @@
+var merge = require('../object/merge');
+
+/**
+ * Used by `_.defaultsDeep` to customize its `_.merge` use.
+ *
+ * @private
+ * @param {*} objectValue The destination object property value.
+ * @param {*} sourceValue The source object property value.
+ * @returns {*} Returns the value to assign to the destination object.
+ */
+function mergeDefaults(objectValue, sourceValue) {
+ return objectValue === undefined ? sourceValue : merge(objectValue, sourceValue, mergeDefaults);
+}
+
+module.exports = mergeDefaults;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/metaMap.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/metaMap.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/metaMap.js
new file mode 100644
index 0000000..59bfd5f
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/metaMap.js
@@ -0,0 +1,9 @@
+var getNative = require('./getNative');
+
+/** Native method references. */
+var WeakMap = getNative(global, 'WeakMap');
+
+/** Used to store function metadata. */
+var metaMap = WeakMap && new WeakMap;
+
+module.exports = metaMap;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByArray.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByArray.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByArray.js
new file mode 100644
index 0000000..0999d90
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByArray.js
@@ -0,0 +1,28 @@
+var toObject = require('./toObject');
+
+/**
+ * A specialized version of `_.pick` which picks `object` properties specified
+ * by `props`.
+ *
+ * @private
+ * @param {Object} object The source object.
+ * @param {string[]} props The property names to pick.
+ * @returns {Object} Returns the new object.
+ */
+function pickByArray(object, props) {
+ object = toObject(object);
+
+ var index = -1,
+ length = props.length,
+ result = {};
+
+ while (++index < length) {
+ var key = props[index];
+ if (key in object) {
+ result[key] = object[key];
+ }
+ }
+ return result;
+}
+
+module.exports = pickByArray;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByCallback.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByCallback.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByCallback.js
new file mode 100644
index 0000000..79d3cdc
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/pickByCallback.js
@@ -0,0 +1,22 @@
+var baseForIn = require('./baseForIn');
+
+/**
+ * A specialized version of `_.pick` which picks `object` properties `predicate`
+ * returns truthy for.
+ *
+ * @private
+ * @param {Object} object The source object.
+ * @param {Function} predicate The function invoked per iteration.
+ * @returns {Object} Returns the new object.
+ */
+function pickByCallback(object, predicate) {
+ var result = {};
+ baseForIn(object, function(value, key, object) {
+ if (predicate(value, key, object)) {
+ result[key] = value;
+ }
+ });
+ return result;
+}
+
+module.exports = pickByCallback;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEscape.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEscape.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEscape.js
new file mode 100644
index 0000000..7f47eda
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEscape.js
@@ -0,0 +1,4 @@
+/** Used to match template delimiters. */
+var reEscape = /<%-([\s\S]+?)%>/g;
+
+module.exports = reEscape;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEvaluate.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEvaluate.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEvaluate.js
new file mode 100644
index 0000000..6adfc31
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reEvaluate.js
@@ -0,0 +1,4 @@
+/** Used to match template delimiters. */
+var reEvaluate = /<%([\s\S]+?)%>/g;
+
+module.exports = reEvaluate;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reInterpolate.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reInterpolate.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reInterpolate.js
new file mode 100644
index 0000000..d02ff0b
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reInterpolate.js
@@ -0,0 +1,4 @@
+/** Used to match template delimiters. */
+var reInterpolate = /<%=([\s\S]+?)%>/g;
+
+module.exports = reInterpolate;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/realNames.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/realNames.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/realNames.js
new file mode 100644
index 0000000..aa0d529
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/realNames.js
@@ -0,0 +1,4 @@
+/** Used to lookup unminified function names. */
+var realNames = {};
+
+module.exports = realNames;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reorder.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reorder.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reorder.js
new file mode 100644
index 0000000..9424927
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/reorder.js
@@ -0,0 +1,29 @@
+var arrayCopy = require('./arrayCopy'),
+ isIndex = require('./isIndex');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeMin = Math.min;
+
+/**
+ * Reorder `array` according to the specified indexes where the element at
+ * the first index is assigned as the first element, the element at
+ * the second index is assigned as the second element, and so on.
+ *
+ * @private
+ * @param {Array} array The array to reorder.
+ * @param {Array} indexes The arranged array indexes.
+ * @returns {Array} Returns `array`.
+ */
+function reorder(array, indexes) {
+ var arrLength = array.length,
+ length = nativeMin(indexes.length, arrLength),
+ oldArray = arrayCopy(array);
+
+ while (length--) {
+ var index = indexes[length];
+ array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
+ }
+ return array;
+}
+
+module.exports = reorder;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/replaceHolders.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/replaceHolders.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/replaceHolders.js
new file mode 100644
index 0000000..3089e75
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/replaceHolders.js
@@ -0,0 +1,28 @@
+/** Used as the internal argument placeholder. */
+var PLACEHOLDER = '__lodash_placeholder__';
+
+/**
+ * Replaces all `placeholder` elements in `array` with an internal placeholder
+ * and returns an array of their indexes.
+ *
+ * @private
+ * @param {Array} array The array to modify.
+ * @param {*} placeholder The placeholder to replace.
+ * @returns {Array} Returns the new array of placeholder indexes.
+ */
+function replaceHolders(array, placeholder) {
+ var index = -1,
+ length = array.length,
+ resIndex = -1,
+ result = [];
+
+ while (++index < length) {
+ if (array[index] === placeholder) {
+ array[index] = PLACEHOLDER;
+ result[++resIndex] = index;
+ }
+ }
+ return result;
+}
+
+module.exports = replaceHolders;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/setData.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/setData.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/setData.js
new file mode 100644
index 0000000..7eb3f40
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/setData.js
@@ -0,0 +1,41 @@
+var baseSetData = require('./baseSetData'),
+ now = require('../date/now');
+
+/** Used to detect when a function becomes hot. */
+var HOT_COUNT = 150,
+ HOT_SPAN = 16;
+
+/**
+ * Sets metadata for `func`.
+ *
+ * **Note:** If this function becomes hot, i.e. is invoked a lot in a short
+ * period of time, it will trip its breaker and transition to an identity function
+ * to avoid garbage collection pauses in V8. See [V8 issue 2070](https://code.google.com/p/v8/issues/detail?id=2070)
+ * for more details.
+ *
+ * @private
+ * @param {Function} func The function to associate metadata with.
+ * @param {*} data The metadata.
+ * @returns {Function} Returns `func`.
+ */
+var setData = (function() {
+ var count = 0,
+ lastCalled = 0;
+
+ return function(key, value) {
+ var stamp = now(),
+ remaining = HOT_SPAN - (stamp - lastCalled);
+
+ lastCalled = stamp;
+ if (remaining > 0) {
+ if (++count >= HOT_COUNT) {
+ return key;
+ }
+ } else {
+ count = 0;
+ }
+ return baseSetData(key, value);
+ };
+}());
+
+module.exports = setData;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/shimKeys.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/shimKeys.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/shimKeys.js
new file mode 100644
index 0000000..189e492
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/shimKeys.js
@@ -0,0 +1,41 @@
+var isArguments = require('../lang/isArguments'),
+ isArray = require('../lang/isArray'),
+ isIndex = require('./isIndex'),
+ isLength = require('./isLength'),
+ keysIn = require('../object/keysIn');
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A fallback implementation of `Object.keys` which creates an array of the
+ * own enumerable property names of `object`.
+ *
+ * @private
+ * @param {Object} object The object to query.
+ * @returns {Array} Returns the array of property names.
+ */
+function shimKeys(object) {
+ var props = keysIn(object),
+ propsLength = props.length,
+ length = propsLength && object.length;
+
+ var allowIndexes = !!length && isLength(length) &&
+ (isArray(object) || isArguments(object));
+
+ var index = -1,
+ result = [];
+
+ while (++index < propsLength) {
+ var key = props[index];
+ if ((allowIndexes && isIndex(key, length)) || hasOwnProperty.call(object, key)) {
+ result.push(key);
+ }
+ }
+ return result;
+}
+
+module.exports = shimKeys;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/sortedUniq.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/sortedUniq.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/sortedUniq.js
new file mode 100644
index 0000000..3ede46a
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/sortedUniq.js
@@ -0,0 +1,29 @@
+/**
+ * An implementation of `_.uniq` optimized for sorted arrays without support
+ * for callback shorthands and `this` binding.
+ *
+ * @private
+ * @param {Array} array The array to inspect.
+ * @param {Function} [iteratee] The function invoked per iteration.
+ * @returns {Array} Returns the new duplicate free array.
+ */
+function sortedUniq(array, iteratee) {
+ var seen,
+ index = -1,
+ length = array.length,
+ resIndex = -1,
+ result = [];
+
+ while (++index < length) {
+ var value = array[index],
+ computed = iteratee ? iteratee(value, index, array) : value;
+
+ if (!index || seen !== computed) {
+ seen = computed;
+ result[++resIndex] = value;
+ }
+ }
+ return result;
+}
+
+module.exports = sortedUniq;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toIterable.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toIterable.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toIterable.js
new file mode 100644
index 0000000..c0a5b28
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toIterable.js
@@ -0,0 +1,22 @@
+var isArrayLike = require('./isArrayLike'),
+ isObject = require('../lang/isObject'),
+ values = require('../object/values');
+
+/**
+ * Converts `value` to an array-like object if it's not one.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {Array|Object} Returns the array-like object.
+ */
+function toIterable(value) {
+ if (value == null) {
+ return [];
+ }
+ if (!isArrayLike(value)) {
+ return values(value);
+ }
+ return isObject(value) ? value : Object(value);
+}
+
+module.exports = toIterable;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toObject.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toObject.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toObject.js
new file mode 100644
index 0000000..da4a008
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toObject.js
@@ -0,0 +1,14 @@
+var isObject = require('../lang/isObject');
+
+/**
+ * Converts `value` to an object if it's not one.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {Object} Returns the object.
+ */
+function toObject(value) {
+ return isObject(value) ? value : Object(value);
+}
+
+module.exports = toObject;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toPath.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toPath.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toPath.js
new file mode 100644
index 0000000..d29f1eb
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/toPath.js
@@ -0,0 +1,28 @@
+var baseToString = require('./baseToString'),
+ isArray = require('../lang/isArray');
+
+/** Used to match property names within property paths. */
+var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g;
+
+/** Used to match backslashes in property paths. */
+var reEscapeChar = /\\(\\)?/g;
+
+/**
+ * Converts `value` to property path array if it's not one.
+ *
+ * @private
+ * @param {*} value The value to process.
+ * @returns {Array} Returns the property path array.
+ */
+function toPath(value) {
+ if (isArray(value)) {
+ return value;
+ }
+ var result = [];
+ baseToString(value).replace(rePropName, function(match, number, quote, string) {
+ result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
+ });
+ return result;
+}
+
+module.exports = toPath;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedLeftIndex.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedLeftIndex.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedLeftIndex.js
new file mode 100644
index 0000000..08aeb13
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedLeftIndex.js
@@ -0,0 +1,19 @@
+var isSpace = require('./isSpace');
+
+/**
+ * Used by `_.trim` and `_.trimLeft` to get the index of the first non-whitespace
+ * character of `string`.
+ *
+ * @private
+ * @param {string} string The string to inspect.
+ * @returns {number} Returns the index of the first non-whitespace character.
+ */
+function trimmedLeftIndex(string) {
+ var index = -1,
+ length = string.length;
+
+ while (++index < length && isSpace(string.charCodeAt(index))) {}
+ return index;
+}
+
+module.exports = trimmedLeftIndex;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedRightIndex.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedRightIndex.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedRightIndex.js
new file mode 100644
index 0000000..71b9e38
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/trimmedRightIndex.js
@@ -0,0 +1,18 @@
+var isSpace = require('./isSpace');
+
+/**
+ * Used by `_.trim` and `_.trimRight` to get the index of the last non-whitespace
+ * character of `string`.
+ *
+ * @private
+ * @param {string} string The string to inspect.
+ * @returns {number} Returns the index of the last non-whitespace character.
+ */
+function trimmedRightIndex(string) {
+ var index = string.length;
+
+ while (index-- && isSpace(string.charCodeAt(index))) {}
+ return index;
+}
+
+module.exports = trimmedRightIndex;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/unescapeHtmlChar.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/unescapeHtmlChar.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/unescapeHtmlChar.js
new file mode 100644
index 0000000..28b3454
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/unescapeHtmlChar.js
@@ -0,0 +1,22 @@
+/** Used to map HTML entities to characters. */
+var htmlUnescapes = {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ ''': "'",
+ '`': '`'
+};
+
+/**
+ * Used by `_.unescape` to convert HTML entities to characters.
+ *
+ * @private
+ * @param {string} chr The matched character to unescape.
+ * @returns {string} Returns the unescaped character.
+ */
+function unescapeHtmlChar(chr) {
+ return htmlUnescapes[chr];
+}
+
+module.exports = unescapeHtmlChar;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/wrapperClone.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/wrapperClone.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/wrapperClone.js
new file mode 100644
index 0000000..e5e10da
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/internal/wrapperClone.js
@@ -0,0 +1,18 @@
+var LazyWrapper = require('./LazyWrapper'),
+ LodashWrapper = require('./LodashWrapper'),
+ arrayCopy = require('./arrayCopy');
+
+/**
+ * Creates a clone of `wrapper`.
+ *
+ * @private
+ * @param {Object} wrapper The wrapper to clone.
+ * @returns {Object} Returns the cloned wrapper.
+ */
+function wrapperClone(wrapper) {
+ return wrapper instanceof LazyWrapper
+ ? wrapper.clone()
+ : new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__, arrayCopy(wrapper.__actions__));
+}
+
+module.exports = wrapperClone;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang.js
new file mode 100644
index 0000000..8f0a364
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang.js
@@ -0,0 +1,32 @@
+module.exports = {
+ 'clone': require('./lang/clone'),
+ 'cloneDeep': require('./lang/cloneDeep'),
+ 'eq': require('./lang/eq'),
+ 'gt': require('./lang/gt'),
+ 'gte': require('./lang/gte'),
+ 'isArguments': require('./lang/isArguments'),
+ 'isArray': require('./lang/isArray'),
+ 'isBoolean': require('./lang/isBoolean'),
+ 'isDate': require('./lang/isDate'),
+ 'isElement': require('./lang/isElement'),
+ 'isEmpty': require('./lang/isEmpty'),
+ 'isEqual': require('./lang/isEqual'),
+ 'isError': require('./lang/isError'),
+ 'isFinite': require('./lang/isFinite'),
+ 'isFunction': require('./lang/isFunction'),
+ 'isMatch': require('./lang/isMatch'),
+ 'isNaN': require('./lang/isNaN'),
+ 'isNative': require('./lang/isNative'),
+ 'isNull': require('./lang/isNull'),
+ 'isNumber': require('./lang/isNumber'),
+ 'isObject': require('./lang/isObject'),
+ 'isPlainObject': require('./lang/isPlainObject'),
+ 'isRegExp': require('./lang/isRegExp'),
+ 'isString': require('./lang/isString'),
+ 'isTypedArray': require('./lang/isTypedArray'),
+ 'isUndefined': require('./lang/isUndefined'),
+ 'lt': require('./lang/lt'),
+ 'lte': require('./lang/lte'),
+ 'toArray': require('./lang/toArray'),
+ 'toPlainObject': require('./lang/toPlainObject')
+};
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/clone.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/clone.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/clone.js
new file mode 100644
index 0000000..85ee8fe
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/clone.js
@@ -0,0 +1,70 @@
+var baseClone = require('../internal/baseClone'),
+ bindCallback = require('../internal/bindCallback'),
+ isIterateeCall = require('../internal/isIterateeCall');
+
+/**
+ * Creates a clone of `value`. If `isDeep` is `true` nested objects are cloned,
+ * otherwise they are assigned by reference. If `customizer` is provided it's
+ * invoked to produce the cloned values. If `customizer` returns `undefined`
+ * cloning is handled by the method instead. The `customizer` is bound to
+ * `thisArg` and invoked with up to three argument; (value [, index|key, object]).
+ *
+ * **Note:** This method is loosely based on the
+ * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
+ * The enumerable properties of `arguments` objects and objects created by
+ * constructors other than `Object` are cloned to plain `Object` objects. An
+ * empty object is returned for uncloneable values such as functions, DOM nodes,
+ * Maps, Sets, and WeakMaps.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to clone.
+ * @param {boolean} [isDeep] Specify a deep clone.
+ * @param {Function} [customizer] The function to customize cloning values.
+ * @param {*} [thisArg] The `this` binding of `customizer`.
+ * @returns {*} Returns the cloned value.
+ * @example
+ *
+ * var users = [
+ * { 'user': 'barney' },
+ * { 'user': 'fred' }
+ * ];
+ *
+ * var shallow = _.clone(users);
+ * shallow[0] === users[0];
+ * // => true
+ *
+ * var deep = _.clone(users, true);
+ * deep[0] === users[0];
+ * // => false
+ *
+ * // using a customizer callback
+ * var el = _.clone(document.body, function(value) {
+ * if (_.isElement(value)) {
+ * return value.cloneNode(false);
+ * }
+ * });
+ *
+ * el === document.body
+ * // => false
+ * el.nodeName
+ * // => BODY
+ * el.childNodes.length;
+ * // => 0
+ */
+function clone(value, isDeep, customizer, thisArg) {
+ if (isDeep && typeof isDeep != 'boolean' && isIterateeCall(value, isDeep, customizer)) {
+ isDeep = false;
+ }
+ else if (typeof isDeep == 'function') {
+ thisArg = customizer;
+ customizer = isDeep;
+ isDeep = false;
+ }
+ return typeof customizer == 'function'
+ ? baseClone(value, isDeep, bindCallback(customizer, thisArg, 3))
+ : baseClone(value, isDeep);
+}
+
+module.exports = clone;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/cloneDeep.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/cloneDeep.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/cloneDeep.js
new file mode 100644
index 0000000..c4d2517
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/cloneDeep.js
@@ -0,0 +1,55 @@
+var baseClone = require('../internal/baseClone'),
+ bindCallback = require('../internal/bindCallback');
+
+/**
+ * Creates a deep clone of `value`. If `customizer` is provided it's invoked
+ * to produce the cloned values. If `customizer` returns `undefined` cloning
+ * is handled by the method instead. The `customizer` is bound to `thisArg`
+ * and invoked with up to three argument; (value [, index|key, object]).
+ *
+ * **Note:** This method is loosely based on the
+ * [structured clone algorithm](http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm).
+ * The enumerable properties of `arguments` objects and objects created by
+ * constructors other than `Object` are cloned to plain `Object` objects. An
+ * empty object is returned for uncloneable values such as functions, DOM nodes,
+ * Maps, Sets, and WeakMaps.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to deep clone.
+ * @param {Function} [customizer] The function to customize cloning values.
+ * @param {*} [thisArg] The `this` binding of `customizer`.
+ * @returns {*} Returns the deep cloned value.
+ * @example
+ *
+ * var users = [
+ * { 'user': 'barney' },
+ * { 'user': 'fred' }
+ * ];
+ *
+ * var deep = _.cloneDeep(users);
+ * deep[0] === users[0];
+ * // => false
+ *
+ * // using a customizer callback
+ * var el = _.cloneDeep(document.body, function(value) {
+ * if (_.isElement(value)) {
+ * return value.cloneNode(true);
+ * }
+ * });
+ *
+ * el === document.body
+ * // => false
+ * el.nodeName
+ * // => BODY
+ * el.childNodes.length;
+ * // => 20
+ */
+function cloneDeep(value, customizer, thisArg) {
+ return typeof customizer == 'function'
+ ? baseClone(value, true, bindCallback(customizer, thisArg, 3))
+ : baseClone(value, true);
+}
+
+module.exports = cloneDeep;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/eq.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/eq.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/eq.js
new file mode 100644
index 0000000..e6a5ce0
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/eq.js
@@ -0,0 +1 @@
+module.exports = require('./isEqual');
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gt.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gt.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gt.js
new file mode 100644
index 0000000..ddaf5ea
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gt.js
@@ -0,0 +1,25 @@
+/**
+ * Checks if `value` is greater than `other`.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @returns {boolean} Returns `true` if `value` is greater than `other`, else `false`.
+ * @example
+ *
+ * _.gt(3, 1);
+ * // => true
+ *
+ * _.gt(3, 3);
+ * // => false
+ *
+ * _.gt(1, 3);
+ * // => false
+ */
+function gt(value, other) {
+ return value > other;
+}
+
+module.exports = gt;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gte.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gte.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gte.js
new file mode 100644
index 0000000..4a5ffb5
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/gte.js
@@ -0,0 +1,25 @@
+/**
+ * Checks if `value` is greater than or equal to `other`.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @returns {boolean} Returns `true` if `value` is greater than or equal to `other`, else `false`.
+ * @example
+ *
+ * _.gte(3, 1);
+ * // => true
+ *
+ * _.gte(3, 3);
+ * // => true
+ *
+ * _.gte(1, 3);
+ * // => false
+ */
+function gte(value, other) {
+ return value >= other;
+}
+
+module.exports = gte;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArguments.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArguments.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArguments.js
new file mode 100644
index 0000000..ce9763d
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArguments.js
@@ -0,0 +1,34 @@
+var isArrayLike = require('../internal/isArrayLike'),
+ isObjectLike = require('../internal/isObjectLike');
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/** Used to check objects for own properties. */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/** Native method references. */
+var propertyIsEnumerable = objectProto.propertyIsEnumerable;
+
+/**
+ * Checks if `value` is classified as an `arguments` object.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
+ * @example
+ *
+ * _.isArguments(function() { return arguments; }());
+ * // => true
+ *
+ * _.isArguments([1, 2, 3]);
+ * // => false
+ */
+function isArguments(value) {
+ return isObjectLike(value) && isArrayLike(value) &&
+ hasOwnProperty.call(value, 'callee') && !propertyIsEnumerable.call(value, 'callee');
+}
+
+module.exports = isArguments;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArray.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArray.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArray.js
new file mode 100644
index 0000000..9ab023a
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isArray.js
@@ -0,0 +1,40 @@
+var getNative = require('../internal/getNative'),
+ isLength = require('../internal/isLength'),
+ isObjectLike = require('../internal/isObjectLike');
+
+/** `Object#toString` result references. */
+var arrayTag = '[object Array]';
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var objToString = objectProto.toString;
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeIsArray = getNative(Array, 'isArray');
+
+/**
+ * Checks if `value` is classified as an `Array` object.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
+ * @example
+ *
+ * _.isArray([1, 2, 3]);
+ * // => true
+ *
+ * _.isArray(function() { return arguments; }());
+ * // => false
+ */
+var isArray = nativeIsArray || function(value) {
+ return isObjectLike(value) && isLength(value.length) && objToString.call(value) == arrayTag;
+};
+
+module.exports = isArray;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isBoolean.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isBoolean.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isBoolean.js
new file mode 100644
index 0000000..460e6c5
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isBoolean.js
@@ -0,0 +1,35 @@
+var isObjectLike = require('../internal/isObjectLike');
+
+/** `Object#toString` result references. */
+var boolTag = '[object Boolean]';
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var objToString = objectProto.toString;
+
+/**
+ * Checks if `value` is classified as a boolean primitive or object.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
+ * @example
+ *
+ * _.isBoolean(false);
+ * // => true
+ *
+ * _.isBoolean(null);
+ * // => false
+ */
+function isBoolean(value) {
+ return value === true || value === false || (isObjectLike(value) && objToString.call(value) == boolTag);
+}
+
+module.exports = isBoolean;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isDate.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isDate.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isDate.js
new file mode 100644
index 0000000..29850d9
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isDate.js
@@ -0,0 +1,35 @@
+var isObjectLike = require('../internal/isObjectLike');
+
+/** `Object#toString` result references. */
+var dateTag = '[object Date]';
+
+/** Used for native method references. */
+var objectProto = Object.prototype;
+
+/**
+ * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
+ * of values.
+ */
+var objToString = objectProto.toString;
+
+/**
+ * Checks if `value` is classified as a `Date` object.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
+ * @example
+ *
+ * _.isDate(new Date);
+ * // => true
+ *
+ * _.isDate('Mon April 23 2012');
+ * // => false
+ */
+function isDate(value) {
+ return isObjectLike(value) && objToString.call(value) == dateTag;
+}
+
+module.exports = isDate;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isElement.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isElement.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isElement.js
new file mode 100644
index 0000000..2e9c970
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isElement.js
@@ -0,0 +1,24 @@
+var isObjectLike = require('../internal/isObjectLike'),
+ isPlainObject = require('./isPlainObject');
+
+/**
+ * Checks if `value` is a DOM element.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.
+ * @example
+ *
+ * _.isElement(document.body);
+ * // => true
+ *
+ * _.isElement('<body>');
+ * // => false
+ */
+function isElement(value) {
+ return !!value && value.nodeType === 1 && isObjectLike(value) && !isPlainObject(value);
+}
+
+module.exports = isElement;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEmpty.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEmpty.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEmpty.js
new file mode 100644
index 0000000..6b344a0
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEmpty.js
@@ -0,0 +1,47 @@
+var isArguments = require('./isArguments'),
+ isArray = require('./isArray'),
+ isArrayLike = require('../internal/isArrayLike'),
+ isFunction = require('./isFunction'),
+ isObjectLike = require('../internal/isObjectLike'),
+ isString = require('./isString'),
+ keys = require('../object/keys');
+
+/**
+ * Checks if `value` is empty. A value is considered empty unless it's an
+ * `arguments` object, array, string, or jQuery-like collection with a length
+ * greater than `0` or an object with own enumerable properties.
+ *
+ * @static
+ * @memberOf _
+ * @category Lang
+ * @param {Array|Object|string} value The value to inspect.
+ * @returns {boolean} Returns `true` if `value` is empty, else `false`.
+ * @example
+ *
+ * _.isEmpty(null);
+ * // => true
+ *
+ * _.isEmpty(true);
+ * // => true
+ *
+ * _.isEmpty(1);
+ * // => true
+ *
+ * _.isEmpty([1, 2, 3]);
+ * // => false
+ *
+ * _.isEmpty({ 'a': 1 });
+ * // => false
+ */
+function isEmpty(value) {
+ if (value == null) {
+ return true;
+ }
+ if (isArrayLike(value) && (isArray(value) || isString(value) || isArguments(value) ||
+ (isObjectLike(value) && isFunction(value.splice)))) {
+ return !value.length;
+ }
+ return !keys(value).length;
+}
+
+module.exports = isEmpty;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEqual.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEqual.js b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEqual.js
new file mode 100644
index 0000000..41bf568
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash/lang/isEqual.js
@@ -0,0 +1,54 @@
+var baseIsEqual = require('../internal/baseIsEqual'),
+ bindCallback = require('../internal/bindCallback');
+
+/**
+ * Performs a deep comparison between two values to determine if they are
+ * equivalent. If `customizer` is provided it's invoked to compare values.
+ * If `customizer` returns `undefined` comparisons are handled by the method
+ * instead. The `customizer` is bound to `thisArg` and invoked with up to
+ * three arguments: (value, other [, index|key]).
+ *
+ * **Note:** This method supports comparing arrays, booleans, `Date` objects,
+ * numbers, `Object` objects, regexes, and strings. Objects are compared by
+ * their own, not inherited, enumerable properties. Functions and DOM nodes
+ * are **not** supported. Provide a customizer function to extend support
+ * for comparing other values.
+ *
+ * @static
+ * @memberOf _
+ * @alias eq
+ * @category Lang
+ * @param {*} value The value to compare.
+ * @param {*} other The other value to compare.
+ * @param {Function} [customizer] The function to customize value comparisons.
+ * @param {*} [thisArg] The `this` binding of `customizer`.
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
+ * @example
+ *
+ * var object = { 'user': 'fred' };
+ * var other = { 'user': 'fred' };
+ *
+ * object == other;
+ * // => false
+ *
+ * _.isEqual(object, other);
+ * // => true
+ *
+ * // using a customizer callback
+ * var array = ['hello', 'goodbye'];
+ * var other = ['hi', 'goodbye'];
+ *
+ * _.isEqual(array, other, function(value, other) {
+ * if (_.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/)) {
+ * return true;
+ * }
+ * });
+ * // => true
+ */
+function isEqual(value, other, customizer, thisArg) {
+ customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
+ var result = customizer ? customizer(value, other) : undefined;
+ return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
+}
+
+module.exports = isEqual;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org