cordova-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From shaz...@apache.org
Subject [17/51] [partial] ios commit: CB-9827 Implement and expose PlatformApi for iOS
Date Thu, 03 Dec 2015 02:33:49 GMT
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/charAtCallback.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/charAtCallback.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/charAtCallback.js
new file mode 100644
index 0000000..b2ee65a
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/charAtCallback.js
@@ -0,0 +1,22 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Used by `_.max` and `_.min` as the default callback when a given
+ * collection is a string value.
+ *
+ * @private
+ * @param {string} value The character to inspect.
+ * @returns {number} Returns the code unit of given character.
+ */
+function charAtCallback(value) {
+  return value.charCodeAt(0);
+}
+
+module.exports = charAtCallback;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/compareAscending.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/compareAscending.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/compareAscending.js
new file mode 100644
index 0000000..4dd1a8f
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/compareAscending.js
@@ -0,0 +1,47 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Used by `sortBy` to compare transformed `collection` elements, stable sorting
+ * them in ascending order.
+ *
+ * @private
+ * @param {Object} a The object to compare to `b`.
+ * @param {Object} b The object to compare to `a`.
+ * @returns {number} Returns the sort order indicator of `1` or `-1`.
+ */
+function compareAscending(a, b) {
+  var ac = a.criteria,
+      bc = b.criteria,
+      index = -1,
+      length = ac.length;
+
+  while (++index < length) {
+    var value = ac[index],
+        other = bc[index];
+
+    if (value !== other) {
+      if (value > other || typeof value == 'undefined') {
+        return 1;
+      }
+      if (value < other || typeof other == 'undefined') {
+        return -1;
+      }
+    }
+  }
+  // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications
+  // that causes it, under certain circumstances, to return the same value for
+  // `a` and `b`. See https://github.com/jashkenas/underscore/pull/1247
+  //
+  // This also ensures a stable sort in V8 and other engines.
+  // See http://code.google.com/p/v8/issues/detail?id=90
+  return a.index - b.index;
+}
+
+module.exports = compareAscending;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createAggregator.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createAggregator.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createAggregator.js
new file mode 100644
index 0000000..3c99dba
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createAggregator.js
@@ -0,0 +1,45 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    forOwn = require('../objects/forOwn'),
+    isArray = require('../objects/isArray');
+
+/**
+ * Creates a function that aggregates a collection, creating an object composed
+ * of keys generated from the results of running each element of the collection
+ * through a callback. The given `setter` function sets the keys and values
+ * of the composed object.
+ *
+ * @private
+ * @param {Function} setter The setter function.
+ * @returns {Function} Returns the new aggregator function.
+ */
+function createAggregator(setter) {
+  return function(collection, callback, thisArg) {
+    var result = {};
+    callback = createCallback(callback, thisArg, 3);
+
+    var index = -1,
+        length = collection ? collection.length : 0;
+
+    if (typeof length == 'number') {
+      while (++index < length) {
+        var value = collection[index];
+        setter(result, value, callback(value, index, collection), collection);
+      }
+    } else {
+      forOwn(collection, function(value, key, collection) {
+        setter(result, value, callback(value, key, collection), collection);
+      });
+    }
+    return result;
+  };
+}
+
+module.exports = createAggregator;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createCache.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createCache.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createCache.js
new file mode 100644
index 0000000..e210516
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createCache.js
@@ -0,0 +1,45 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var cachePush = require('./cachePush'),
+    getObject = require('./getObject'),
+    releaseObject = require('./releaseObject');
+
+/**
+ * Creates a cache object to optimize linear searches of large arrays.
+ *
+ * @private
+ * @param {Array} [array=[]] The array to search.
+ * @returns {null|Object} Returns the cache object or `null` if caching should not be used.
+ */
+function createCache(array) {
+  var index = -1,
+      length = array.length,
+      first = array[0],
+      mid = array[(length / 2) | 0],
+      last = array[length - 1];
+
+  if (first && typeof first == 'object' &&
+      mid && typeof mid == 'object' && last && typeof last == 'object') {
+    return false;
+  }
+  var cache = getObject();
+  cache['false'] = cache['null'] = cache['true'] = cache['undefined'] = false;
+
+  var result = getObject();
+  result.array = array;
+  result.cache = cache;
+  result.push = cachePush;
+
+  while (++index < length) {
+    result.push(array[index]);
+  }
+  return result;
+}
+
+module.exports = createCache;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createWrapper.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createWrapper.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createWrapper.js
new file mode 100644
index 0000000..c39d340
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/createWrapper.js
@@ -0,0 +1,106 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseBind = require('./baseBind'),
+    baseCreateWrapper = require('./baseCreateWrapper'),
+    isFunction = require('../objects/isFunction'),
+    slice = require('./slice');
+
+/**
+ * Used for `Array` method references.
+ *
+ * Normally `Array.prototype` would suffice, however, using an array literal
+ * avoids issues in Narwhal.
+ */
+var arrayRef = [];
+
+/** Native method shortcuts */
+var push = arrayRef.push,
+    unshift = arrayRef.unshift;
+
+/**
+ * Creates a function that, when called, either curries or invokes `func`
+ * with an optional `this` binding and partially applied arguments.
+ *
+ * @private
+ * @param {Function|string} func The function or method name to reference.
+ * @param {number} bitmask The bitmask of method flags to compose.
+ *  The bitmask may be composed of the following flags:
+ *  1 - `_.bind`
+ *  2 - `_.bindKey`
+ *  4 - `_.curry`
+ *  8 - `_.curry` (bound)
+ *  16 - `_.partial`
+ *  32 - `_.partialRight`
+ * @param {Array} [partialArgs] An array of arguments to prepend to those
+ *  provided to the new function.
+ * @param {Array} [partialRightArgs] An array of arguments to append to those
+ *  provided to the new function.
+ * @param {*} [thisArg] The `this` binding of `func`.
+ * @param {number} [arity] The arity of `func`.
+ * @returns {Function} Returns the new function.
+ */
+function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) {
+  var isBind = bitmask & 1,
+      isBindKey = bitmask & 2,
+      isCurry = bitmask & 4,
+      isCurryBound = bitmask & 8,
+      isPartial = bitmask & 16,
+      isPartialRight = bitmask & 32;
+
+  if (!isBindKey && !isFunction(func)) {
+    throw new TypeError;
+  }
+  if (isPartial && !partialArgs.length) {
+    bitmask &= ~16;
+    isPartial = partialArgs = false;
+  }
+  if (isPartialRight && !partialRightArgs.length) {
+    bitmask &= ~32;
+    isPartialRight = partialRightArgs = false;
+  }
+  var bindData = func && func.__bindData__;
+  if (bindData && bindData !== true) {
+    // clone `bindData`
+    bindData = slice(bindData);
+    if (bindData[2]) {
+      bindData[2] = slice(bindData[2]);
+    }
+    if (bindData[3]) {
+      bindData[3] = slice(bindData[3]);
+    }
+    // set `thisBinding` is not previously bound
+    if (isBind && !(bindData[1] & 1)) {
+      bindData[4] = thisArg;
+    }
+    // set if previously bound but not currently (subsequent curried functions)
+    if (!isBind && bindData[1] & 1) {
+      bitmask |= 8;
+    }
+    // set curried arity if not yet set
+    if (isCurry && !(bindData[1] & 4)) {
+      bindData[5] = arity;
+    }
+    // append partial left arguments
+    if (isPartial) {
+      push.apply(bindData[2] || (bindData[2] = []), partialArgs);
+    }
+    // append partial right arguments
+    if (isPartialRight) {
+      unshift.apply(bindData[3] || (bindData[3] = []), partialRightArgs);
+    }
+    // merge flags
+    bindData[1] |= bitmask;
+    return createWrapper.apply(null, bindData);
+  }
+  // fast path for `_.bind`
+  var creater = (bitmask == 1 || bitmask === 17) ? baseBind : baseCreateWrapper;
+  return creater([func, bitmask, partialArgs, partialRightArgs, thisArg, arity]);
+}
+
+module.exports = createWrapper;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeHtmlChar.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeHtmlChar.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeHtmlChar.js
new file mode 100644
index 0000000..1d7b6f1
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeHtmlChar.js
@@ -0,0 +1,22 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var htmlEscapes = require('./htmlEscapes');
+
+/**
+ * Used by `escape` to convert characters to HTML entities.
+ *
+ * @private
+ * @param {string} match The matched character to escape.
+ * @returns {string} Returns the escaped character.
+ */
+function escapeHtmlChar(match) {
+  return htmlEscapes[match];
+}
+
+module.exports = escapeHtmlChar;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeStringChar.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeStringChar.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeStringChar.js
new file mode 100644
index 0000000..9cf267f
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/escapeStringChar.js
@@ -0,0 +1,33 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to escape characters for inclusion in compiled string literals */
+var stringEscapes = {
+  '\\': '\\',
+  "'": "'",
+  '\n': 'n',
+  '\r': 'r',
+  '\t': 't',
+  '\u2028': 'u2028',
+  '\u2029': 'u2029'
+};
+
+/**
+ * Used by `template` to escape characters for inclusion in compiled
+ * string literals.
+ *
+ * @private
+ * @param {string} match The matched character to escape.
+ * @returns {string} Returns the escaped character.
+ */
+function escapeStringChar(match) {
+  return '\\' + stringEscapes[match];
+}
+
+module.exports = escapeStringChar;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getArray.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getArray.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getArray.js
new file mode 100644
index 0000000..50fbc2f
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getArray.js
@@ -0,0 +1,21 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var arrayPool = require('./arrayPool');
+
+/**
+ * Gets an array from the array pool or creates a new one if the pool is empty.
+ *
+ * @private
+ * @returns {Array} The array from the pool.
+ */
+function getArray() {
+  return arrayPool.pop() || [];
+}
+
+module.exports = getArray;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getObject.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getObject.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getObject.js
new file mode 100644
index 0000000..ce1ee73
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/getObject.js
@@ -0,0 +1,35 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var objectPool = require('./objectPool');
+
+/**
+ * Gets an object from the object pool or creates a new one if the pool is empty.
+ *
+ * @private
+ * @returns {Object} The object from the pool.
+ */
+function getObject() {
+  return objectPool.pop() || {
+    'array': null,
+    'cache': null,
+    'criteria': null,
+    'false': false,
+    'index': 0,
+    'null': false,
+    'number': null,
+    'object': null,
+    'push': null,
+    'string': null,
+    'true': false,
+    'undefined': false,
+    'value': null
+  };
+}
+
+module.exports = getObject;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlEscapes.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlEscapes.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlEscapes.js
new file mode 100644
index 0000000..9933d60
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlEscapes.js
@@ -0,0 +1,26 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Used to convert characters to HTML entities:
+ *
+ * Though the `>` character is escaped for symmetry, characters like `>` and `/`
+ * don't require escaping in HTML and have no special meaning unless they're part
+ * of a tag or an unquoted attribute value.
+ * http://mathiasbynens.be/notes/ambiguous-ampersands (under "semi-related fun fact")
+ */
+var htmlEscapes = {
+  '&': '&amp;',
+  '<': '&lt;',
+  '>': '&gt;',
+  '"': '&quot;',
+  "'": '&#39;'
+};
+
+module.exports = htmlEscapes;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlUnescapes.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlUnescapes.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlUnescapes.js
new file mode 100644
index 0000000..eeaaa1f
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/htmlUnescapes.js
@@ -0,0 +1,15 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var htmlEscapes = require('./htmlEscapes'),
+    invert = require('../objects/invert');
+
+/** Used to convert HTML entities to characters */
+var htmlUnescapes = invert(htmlEscapes);
+
+module.exports = htmlUnescapes;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/isNative.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/isNative.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/isNative.js
new file mode 100644
index 0000000..4053eed
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/isNative.js
@@ -0,0 +1,34 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Used to resolve the internal [[Class]] of values */
+var toString = objectProto.toString;
+
+/** Used to detect if a method is native */
+var reNative = RegExp('^' +
+  String(toString)
+    .replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
+    .replace(/toString| for [^\]]+/g, '.*?') + '$'
+);
+
+/**
+ * Checks if `value` is a native function.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if the `value` is a native function, else `false`.
+ */
+function isNative(value) {
+  return typeof value == 'function' && reNative.test(value);
+}
+
+module.exports = isNative;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/keyPrefix.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/keyPrefix.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/keyPrefix.js
new file mode 100644
index 0000000..a23cf32
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/keyPrefix.js
@@ -0,0 +1,13 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to prefix keys to avoid issues with `__proto__` and properties on `Object.prototype` */
+var keyPrefix = +new Date + '';
+
+module.exports = keyPrefix;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/largeArraySize.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/largeArraySize.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/largeArraySize.js
new file mode 100644
index 0000000..c876188
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/largeArraySize.js
@@ -0,0 +1,13 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used as the size when optimizations are enabled for large arrays */
+var largeArraySize = 75;
+
+module.exports = largeArraySize;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/lodashWrapper.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/lodashWrapper.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/lodashWrapper.js
new file mode 100644
index 0000000..a820145
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/lodashWrapper.js
@@ -0,0 +1,23 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * A fast path for creating `lodash` wrapper objects.
+ *
+ * @private
+ * @param {*} value The value to wrap in a `lodash` instance.
+ * @param {boolean} chainAll A flag to enable chaining for all methods
+ * @returns {Object} Returns a `lodash` instance.
+ */
+function lodashWrapper(value, chainAll) {
+  this.__chain__ = !!chainAll;
+  this.__wrapped__ = value;
+}
+
+module.exports = lodashWrapper;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/maxPoolSize.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/maxPoolSize.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/maxPoolSize.js
new file mode 100644
index 0000000..86dafab
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/maxPoolSize.js
@@ -0,0 +1,13 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used as the max size of the `arrayPool` and `objectPool` */
+var maxPoolSize = 40;
+
+module.exports = maxPoolSize;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectPool.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectPool.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectPool.js
new file mode 100644
index 0000000..fea0bf0
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectPool.js
@@ -0,0 +1,13 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to pool arrays and objects used internally */
+var objectPool = [];
+
+module.exports = objectPool;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectTypes.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectTypes.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectTypes.js
new file mode 100644
index 0000000..a100109
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/objectTypes.js
@@ -0,0 +1,20 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to determine if values are of the language type Object */
+var objectTypes = {
+  'boolean': false,
+  'function': true,
+  'object': true,
+  'number': false,
+  'string': false,
+  'undefined': false
+};
+
+module.exports = objectTypes;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reEscapedHtml.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reEscapedHtml.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reEscapedHtml.js
new file mode 100644
index 0000000..a52d67d
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reEscapedHtml.js
@@ -0,0 +1,15 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var htmlUnescapes = require('./htmlUnescapes'),
+    keys = require('../objects/keys');
+
+/** Used to match HTML entities and HTML characters */
+var reEscapedHtml = RegExp('(' + keys(htmlUnescapes).join('|') + ')', 'g');
+
+module.exports = reEscapedHtml;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reInterpolate.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reInterpolate.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reInterpolate.js
new file mode 100644
index 0000000..bb4b865
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reInterpolate.js
@@ -0,0 +1,13 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used to match "interpolate" template delimiters */
+var reInterpolate = /<%=([\s\S]+?)%>/g;
+
+module.exports = reInterpolate;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reUnescapedHtml.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reUnescapedHtml.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reUnescapedHtml.js
new file mode 100644
index 0000000..75f6895
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/reUnescapedHtml.js
@@ -0,0 +1,15 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var htmlEscapes = require('./htmlEscapes'),
+    keys = require('../objects/keys');
+
+/** Used to match HTML entities and HTML characters */
+var reUnescapedHtml = RegExp('[' + keys(htmlEscapes).join('') + ']', 'g');
+
+module.exports = reUnescapedHtml;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseArray.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseArray.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseArray.js
new file mode 100644
index 0000000..5a75e51
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseArray.js
@@ -0,0 +1,25 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var arrayPool = require('./arrayPool'),
+    maxPoolSize = require('./maxPoolSize');
+
+/**
+ * Releases the given array back to the array pool.
+ *
+ * @private
+ * @param {Array} [array] The array to release.
+ */
+function releaseArray(array) {
+  array.length = 0;
+  if (arrayPool.length < maxPoolSize) {
+    arrayPool.push(array);
+  }
+}
+
+module.exports = releaseArray;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseObject.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseObject.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseObject.js
new file mode 100644
index 0000000..d2b9594
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/releaseObject.js
@@ -0,0 +1,29 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var maxPoolSize = require('./maxPoolSize'),
+    objectPool = require('./objectPool');
+
+/**
+ * Releases the given object back to the object pool.
+ *
+ * @private
+ * @param {Object} [object] The object to release.
+ */
+function releaseObject(object) {
+  var cache = object.cache;
+  if (cache) {
+    releaseObject(cache);
+  }
+  object.array = object.cache = object.criteria = object.object = object.number = object.string = object.value = null;
+  if (objectPool.length < maxPoolSize) {
+    objectPool.push(object);
+  }
+}
+
+module.exports = releaseObject;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/setBindData.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/setBindData.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/setBindData.js
new file mode 100644
index 0000000..0f800ee
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/setBindData.js
@@ -0,0 +1,43 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var isNative = require('./isNative'),
+    noop = require('../utilities/noop');
+
+/** Used as the property descriptor for `__bindData__` */
+var descriptor = {
+  'configurable': false,
+  'enumerable': false,
+  'value': null,
+  'writable': false
+};
+
+/** Used to set meta data on functions */
+var defineProperty = (function() {
+  // IE 8 only accepts DOM elements
+  try {
+    var o = {},
+        func = isNative(func = Object.defineProperty) && func,
+        result = func(o, o, o) && func;
+  } catch(e) { }
+  return result;
+}());
+
+/**
+ * Sets `this` binding data on a given function.
+ *
+ * @private
+ * @param {Function} func The function to set data on.
+ * @param {Array} value The data array to set.
+ */
+var setBindData = !defineProperty ? noop : function(func, value) {
+  descriptor.value = value;
+  defineProperty(func, '__bindData__', descriptor);
+};
+
+module.exports = setBindData;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimIsPlainObject.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimIsPlainObject.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimIsPlainObject.js
new file mode 100644
index 0000000..55c9875
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimIsPlainObject.js
@@ -0,0 +1,52 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var forIn = require('../objects/forIn'),
+    isFunction = require('../objects/isFunction');
+
+/** `Object#toString` result shortcuts */
+var objectClass = '[object Object]';
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Used to resolve the internal [[Class]] of values */
+var toString = objectProto.toString;
+
+/** Native method shortcuts */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A fallback implementation of `isPlainObject` which checks if a given value
+ * is an object created by the `Object` constructor, assuming objects created
+ * by the `Object` constructor have no inherited enumerable properties and that
+ * there are no `Object.prototype` extensions.
+ *
+ * @private
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
+ */
+function shimIsPlainObject(value) {
+  var ctor,
+      result;
+
+  // avoid non Object objects, `arguments` objects, and DOM elements
+  if (!(value && toString.call(value) == objectClass) ||
+      (ctor = value.constructor, isFunction(ctor) && !(ctor instanceof ctor))) {
+    return false;
+  }
+  // In most environments an object's own properties are iterated before
+  // its inherited properties. If the last iterated property is an object's
+  // own property then there are no inherited enumerable properties.
+  forIn(value, function(value, key) {
+    result = key;
+  });
+  return typeof result == 'undefined' || hasOwnProperty.call(value, result);
+}
+
+module.exports = shimIsPlainObject;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimKeys.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimKeys.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimKeys.js
new file mode 100644
index 0000000..31adba1
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/shimKeys.js
@@ -0,0 +1,38 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var objectTypes = require('./objectTypes');
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Native method shortcuts */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * A fallback implementation of `Object.keys` which produces an array of the
+ * given object's own enumerable property names.
+ *
+ * @private
+ * @type Function
+ * @param {Object} object The object to inspect.
+ * @returns {Array} Returns an array of property names.
+ */
+var shimKeys = function(object) {
+  var index, iterable = object, result = [];
+  if (!iterable) return result;
+  if (!(objectTypes[typeof object])) return result;
+    for (index in iterable) {
+      if (hasOwnProperty.call(iterable, index)) {
+        result.push(index);
+      }
+    }
+  return result
+};
+
+module.exports = shimKeys;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/slice.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/slice.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/slice.js
new file mode 100644
index 0000000..ae00390
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/slice.js
@@ -0,0 +1,38 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/**
+ * Slices the `collection` from the `start` index up to, but not including,
+ * the `end` index.
+ *
+ * Note: This function is used instead of `Array#slice` to support node lists
+ * in IE < 9 and to ensure dense arrays are returned.
+ *
+ * @private
+ * @param {Array|Object|string} collection The collection to slice.
+ * @param {number} start The start index.
+ * @param {number} end The end index.
+ * @returns {Array} Returns the new array.
+ */
+function slice(array, start, end) {
+  start || (start = 0);
+  if (typeof end == 'undefined') {
+    end = array ? array.length : 0;
+  }
+  var index = -1,
+      length = end - start || 0,
+      result = Array(length < 0 ? 0 : length);
+
+  while (++index < length) {
+    result[index] = array[start + index];
+  }
+  return result;
+}
+
+module.exports = slice;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/unescapeHtmlChar.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/unescapeHtmlChar.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/unescapeHtmlChar.js
new file mode 100644
index 0000000..b209f7a
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/internals/unescapeHtmlChar.js
@@ -0,0 +1,22 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var htmlUnescapes = require('./htmlUnescapes');
+
+/**
+ * Used by `unescape` to convert HTML entities to characters.
+ *
+ * @private
+ * @param {string} match The matched character to unescape.
+ * @returns {string} Returns the unescaped character.
+ */
+function unescapeHtmlChar(match) {
+  return htmlUnescapes[match];
+}
+
+module.exports = unescapeHtmlChar;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects.js
new file mode 100644
index 0000000..d600832
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects.js
@@ -0,0 +1,52 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+module.exports = {
+  'assign': require('./objects/assign'),
+  'clone': require('./objects/clone'),
+  'cloneDeep': require('./objects/cloneDeep'),
+  'create': require('./objects/create'),
+  'defaults': require('./objects/defaults'),
+  'extend': require('./objects/assign'),
+  'findKey': require('./objects/findKey'),
+  'findLastKey': require('./objects/findLastKey'),
+  'forIn': require('./objects/forIn'),
+  'forInRight': require('./objects/forInRight'),
+  'forOwn': require('./objects/forOwn'),
+  'forOwnRight': require('./objects/forOwnRight'),
+  'functions': require('./objects/functions'),
+  'has': require('./objects/has'),
+  'invert': require('./objects/invert'),
+  'isArguments': require('./objects/isArguments'),
+  'isArray': require('./objects/isArray'),
+  'isBoolean': require('./objects/isBoolean'),
+  'isDate': require('./objects/isDate'),
+  'isElement': require('./objects/isElement'),
+  'isEmpty': require('./objects/isEmpty'),
+  'isEqual': require('./objects/isEqual'),
+  'isFinite': require('./objects/isFinite'),
+  'isFunction': require('./objects/isFunction'),
+  'isNaN': require('./objects/isNaN'),
+  'isNull': require('./objects/isNull'),
+  'isNumber': require('./objects/isNumber'),
+  'isObject': require('./objects/isObject'),
+  'isPlainObject': require('./objects/isPlainObject'),
+  'isRegExp': require('./objects/isRegExp'),
+  'isString': require('./objects/isString'),
+  'isUndefined': require('./objects/isUndefined'),
+  'keys': require('./objects/keys'),
+  'mapValues': require('./objects/mapValues'),
+  'merge': require('./objects/merge'),
+  'methods': require('./objects/functions'),
+  'omit': require('./objects/omit'),
+  'pairs': require('./objects/pairs'),
+  'pick': require('./objects/pick'),
+  'transform': require('./objects/transform'),
+  'values': require('./objects/values')
+};

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/assign.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/assign.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/assign.js
new file mode 100644
index 0000000..36e0690
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/assign.js
@@ -0,0 +1,70 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback'),
+    keys = require('./keys'),
+    objectTypes = require('../internals/objectTypes');
+
+/**
+ * Assigns own enumerable properties of source object(s) to the destination
+ * object. Subsequent sources will overwrite property assignments of previous
+ * sources. If a callback is provided it will be executed to produce the
+ * assigned values. The callback is bound to `thisArg` and invoked with two
+ * arguments; (objectValue, sourceValue).
+ *
+ * @static
+ * @memberOf _
+ * @type Function
+ * @alias extend
+ * @category Objects
+ * @param {Object} object The destination object.
+ * @param {...Object} [source] The source objects.
+ * @param {Function} [callback] The function to customize assigning values.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Object} Returns the destination object.
+ * @example
+ *
+ * _.assign({ 'name': 'fred' }, { 'employer': 'slate' });
+ * // => { 'name': 'fred', 'employer': 'slate' }
+ *
+ * var defaults = _.partialRight(_.assign, function(a, b) {
+ *   return typeof a == 'undefined' ? b : a;
+ * });
+ *
+ * var object = { 'name': 'barney' };
+ * defaults(object, { 'name': 'fred', 'employer': 'slate' });
+ * // => { 'name': 'barney', 'employer': 'slate' }
+ */
+var assign = function(object, source, guard) {
+  var index, iterable = object, result = iterable;
+  if (!iterable) return result;
+  var args = arguments,
+      argsIndex = 0,
+      argsLength = typeof guard == 'number' ? 2 : args.length;
+  if (argsLength > 3 && typeof args[argsLength - 2] == 'function') {
+    var callback = baseCreateCallback(args[--argsLength - 1], args[argsLength--], 2);
+  } else if (argsLength > 2 && typeof args[argsLength - 1] == 'function') {
+    callback = args[--argsLength];
+  }
+  while (++argsIndex < argsLength) {
+    iterable = args[argsIndex];
+    if (iterable && objectTypes[typeof iterable]) {
+    var ownIndex = -1,
+        ownProps = objectTypes[typeof iterable] && keys(iterable),
+        length = ownProps ? ownProps.length : 0;
+
+    while (++ownIndex < length) {
+      index = ownProps[ownIndex];
+      result[index] = callback ? callback(result[index], iterable[index]) : iterable[index];
+    }
+    }
+  }
+  return result
+};
+
+module.exports = assign;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/clone.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/clone.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/clone.js
new file mode 100644
index 0000000..6932a81
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/clone.js
@@ -0,0 +1,63 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseClone = require('../internals/baseClone'),
+    baseCreateCallback = require('../internals/baseCreateCallback');
+
+/**
+ * Creates a clone of `value`. If `isDeep` is `true` nested objects will also
+ * be cloned, otherwise they will be assigned by reference. If a callback
+ * is provided it will be executed to produce the cloned values. If the
+ * callback returns `undefined` cloning will be handled by the method instead.
+ * The callback is bound to `thisArg` and invoked with one argument; (value).
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {*} value The value to clone.
+ * @param {boolean} [isDeep=false] Specify a deep clone.
+ * @param {Function} [callback] The function to customize cloning values.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {*} Returns the cloned value.
+ * @example
+ *
+ * var characters = [
+ *   { 'name': 'barney', 'age': 36 },
+ *   { 'name': 'fred',   'age': 40 }
+ * ];
+ *
+ * var shallow = _.clone(characters);
+ * shallow[0] === characters[0];
+ * // => true
+ *
+ * var deep = _.clone(characters, true);
+ * deep[0] === characters[0];
+ * // => false
+ *
+ * _.mixin({
+ *   'clone': _.partialRight(_.clone, function(value) {
+ *     return _.isElement(value) ? value.cloneNode(false) : undefined;
+ *   })
+ * });
+ *
+ * var clone = _.clone(document.body);
+ * clone.childNodes.length;
+ * // => 0
+ */
+function clone(value, isDeep, callback, thisArg) {
+  // allows working with "Collections" methods without using their `index`
+  // and `collection` arguments for `isDeep` and `callback`
+  if (typeof isDeep != 'boolean' && isDeep != null) {
+    thisArg = callback;
+    callback = isDeep;
+    isDeep = false;
+  }
+  return baseClone(value, isDeep, typeof callback == 'function' && baseCreateCallback(callback, thisArg, 1));
+}
+
+module.exports = clone;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/cloneDeep.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/cloneDeep.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/cloneDeep.js
new file mode 100644
index 0000000..7bd6866
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/cloneDeep.js
@@ -0,0 +1,57 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseClone = require('../internals/baseClone'),
+    baseCreateCallback = require('../internals/baseCreateCallback');
+
+/**
+ * Creates a deep clone of `value`. If a callback is provided it will be
+ * executed to produce the cloned values. If the callback returns `undefined`
+ * cloning will be handled by the method instead. The callback is bound to
+ * `thisArg` and invoked with one argument; (value).
+ *
+ * Note: This method is loosely based on the structured clone algorithm. Functions
+ * and DOM nodes are **not** cloned. The enumerable properties of `arguments` objects and
+ * objects created by constructors other than `Object` are cloned to plain `Object` objects.
+ * See http://www.w3.org/TR/html5/infrastructure.html#internal-structured-cloning-algorithm.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {*} value The value to deep clone.
+ * @param {Function} [callback] The function to customize cloning values.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {*} Returns the deep cloned value.
+ * @example
+ *
+ * var characters = [
+ *   { 'name': 'barney', 'age': 36 },
+ *   { 'name': 'fred',   'age': 40 }
+ * ];
+ *
+ * var deep = _.cloneDeep(characters);
+ * deep[0] === characters[0];
+ * // => false
+ *
+ * var view = {
+ *   'label': 'docs',
+ *   'node': element
+ * };
+ *
+ * var clone = _.cloneDeep(view, function(value) {
+ *   return _.isElement(value) ? value.cloneNode(true) : undefined;
+ * });
+ *
+ * clone.node == view.node;
+ * // => false
+ */
+function cloneDeep(value, callback, thisArg) {
+  return baseClone(value, true, typeof callback == 'function' && baseCreateCallback(callback, thisArg, 1));
+}
+
+module.exports = cloneDeep;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/create.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/create.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/create.js
new file mode 100644
index 0000000..fda6a94
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/create.js
@@ -0,0 +1,48 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var assign = require('./assign'),
+    baseCreate = require('../internals/baseCreate');
+
+/**
+ * Creates an object that inherits from the given `prototype` object. If a
+ * `properties` object is provided its own enumerable properties are assigned
+ * to the created object.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} prototype The object to inherit from.
+ * @param {Object} [properties] The properties to assign to the object.
+ * @returns {Object} Returns the new object.
+ * @example
+ *
+ * function Shape() {
+ *   this.x = 0;
+ *   this.y = 0;
+ * }
+ *
+ * function Circle() {
+ *   Shape.call(this);
+ * }
+ *
+ * Circle.prototype = _.create(Shape.prototype, { 'constructor': Circle });
+ *
+ * var circle = new Circle;
+ * circle instanceof Circle;
+ * // => true
+ *
+ * circle instanceof Shape;
+ * // => true
+ */
+function create(prototype, properties) {
+  var result = baseCreate(prototype);
+  return properties ? assign(result, properties) : result;
+}
+
+module.exports = create;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/defaults.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/defaults.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/defaults.js
new file mode 100644
index 0000000..6427fdc
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/defaults.js
@@ -0,0 +1,54 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var keys = require('./keys'),
+    objectTypes = require('../internals/objectTypes');
+
+/**
+ * Assigns own enumerable properties of source object(s) to the destination
+ * object for all destination properties that resolve to `undefined`. Once a
+ * property is set, additional defaults of the same property will be ignored.
+ *
+ * @static
+ * @memberOf _
+ * @type Function
+ * @category Objects
+ * @param {Object} object The destination object.
+ * @param {...Object} [source] The source objects.
+ * @param- {Object} [guard] Allows working with `_.reduce` without using its
+ *  `key` and `object` arguments as sources.
+ * @returns {Object} Returns the destination object.
+ * @example
+ *
+ * var object = { 'name': 'barney' };
+ * _.defaults(object, { 'name': 'fred', 'employer': 'slate' });
+ * // => { 'name': 'barney', 'employer': 'slate' }
+ */
+var defaults = function(object, source, guard) {
+  var index, iterable = object, result = iterable;
+  if (!iterable) return result;
+  var args = arguments,
+      argsIndex = 0,
+      argsLength = typeof guard == 'number' ? 2 : args.length;
+  while (++argsIndex < argsLength) {
+    iterable = args[argsIndex];
+    if (iterable && objectTypes[typeof iterable]) {
+    var ownIndex = -1,
+        ownProps = objectTypes[typeof iterable] && keys(iterable),
+        length = ownProps ? ownProps.length : 0;
+
+    while (++ownIndex < length) {
+      index = ownProps[ownIndex];
+      if (typeof result[index] == 'undefined') result[index] = iterable[index];
+    }
+    }
+  }
+  return result
+};
+
+module.exports = defaults;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findKey.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findKey.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findKey.js
new file mode 100644
index 0000000..6713253
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findKey.js
@@ -0,0 +1,65 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    forOwn = require('./forOwn');
+
+/**
+ * This method is like `_.findIndex` except that it returns the key of the
+ * first element that passes the callback check, instead of the element itself.
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to search.
+ * @param {Function|Object|string} [callback=identity] The function called per
+ *  iteration. If a property name or object is provided it will be used to
+ *  create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {string|undefined} Returns the key of the found element, else `undefined`.
+ * @example
+ *
+ * var characters = {
+ *   'barney': {  'age': 36, 'blocked': false },
+ *   'fred': {    'age': 40, 'blocked': true },
+ *   'pebbles': { 'age': 1,  'blocked': false }
+ * };
+ *
+ * _.findKey(characters, function(chr) {
+ *   return chr.age < 40;
+ * });
+ * // => 'barney' (property order is not guaranteed across environments)
+ *
+ * // using "_.where" callback shorthand
+ * _.findKey(characters, { 'age': 1 });
+ * // => 'pebbles'
+ *
+ * // using "_.pluck" callback shorthand
+ * _.findKey(characters, 'blocked');
+ * // => 'fred'
+ */
+function findKey(object, callback, thisArg) {
+  var result;
+  callback = createCallback(callback, thisArg, 3);
+  forOwn(object, function(value, key, object) {
+    if (callback(value, key, object)) {
+      result = key;
+      return false;
+    }
+  });
+  return result;
+}
+
+module.exports = findKey;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findLastKey.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findLastKey.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findLastKey.js
new file mode 100644
index 0000000..236c726
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/findLastKey.js
@@ -0,0 +1,65 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var createCallback = require('../functions/createCallback'),
+    forOwnRight = require('./forOwnRight');
+
+/**
+ * This method is like `_.findKey` except that it iterates over elements
+ * of a `collection` in the opposite order.
+ *
+ * If a property name is provided for `callback` the created "_.pluck" style
+ * callback will return the property value of the given element.
+ *
+ * If an object is provided for `callback` the created "_.where" style callback
+ * will return `true` for elements that have the properties of the given object,
+ * else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to search.
+ * @param {Function|Object|string} [callback=identity] The function called per
+ *  iteration. If a property name or object is provided it will be used to
+ *  create a "_.pluck" or "_.where" style callback, respectively.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {string|undefined} Returns the key of the found element, else `undefined`.
+ * @example
+ *
+ * var characters = {
+ *   'barney': {  'age': 36, 'blocked': true },
+ *   'fred': {    'age': 40, 'blocked': false },
+ *   'pebbles': { 'age': 1,  'blocked': true }
+ * };
+ *
+ * _.findLastKey(characters, function(chr) {
+ *   return chr.age < 40;
+ * });
+ * // => returns `pebbles`, assuming `_.findKey` returns `barney`
+ *
+ * // using "_.where" callback shorthand
+ * _.findLastKey(characters, { 'age': 40 });
+ * // => 'fred'
+ *
+ * // using "_.pluck" callback shorthand
+ * _.findLastKey(characters, 'blocked');
+ * // => 'pebbles'
+ */
+function findLastKey(object, callback, thisArg) {
+  var result;
+  callback = createCallback(callback, thisArg, 3);
+  forOwnRight(object, function(value, key, object) {
+    if (callback(value, key, object)) {
+      result = key;
+      return false;
+    }
+  });
+  return result;
+}
+
+module.exports = findLastKey;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forIn.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forIn.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forIn.js
new file mode 100644
index 0000000..2d827c3
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forIn.js
@@ -0,0 +1,54 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback'),
+    objectTypes = require('../internals/objectTypes');
+
+/**
+ * Iterates over own and inherited enumerable properties of an object,
+ * executing the callback for each property. The callback is bound to `thisArg`
+ * and invoked with three arguments; (value, key, object). Callbacks may exit
+ * iteration early by explicitly returning `false`.
+ *
+ * @static
+ * @memberOf _
+ * @type Function
+ * @category Objects
+ * @param {Object} object The object to iterate over.
+ * @param {Function} [callback=identity] The function called per iteration.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * function Shape() {
+ *   this.x = 0;
+ *   this.y = 0;
+ * }
+ *
+ * Shape.prototype.move = function(x, y) {
+ *   this.x += x;
+ *   this.y += y;
+ * };
+ *
+ * _.forIn(new Shape, function(value, key) {
+ *   console.log(key);
+ * });
+ * // => logs 'x', 'y', and 'move' (property order is not guaranteed across environments)
+ */
+var forIn = function(collection, callback, thisArg) {
+  var index, iterable = collection, result = iterable;
+  if (!iterable) return result;
+  if (!objectTypes[typeof iterable]) return result;
+  callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3);
+    for (index in iterable) {
+      if (callback(iterable[index], index, collection) === false) return result;
+    }
+  return result
+};
+
+module.exports = forIn;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forInRight.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forInRight.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forInRight.js
new file mode 100644
index 0000000..e9f077a
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forInRight.js
@@ -0,0 +1,57 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback'),
+    forIn = require('./forIn');
+
+/**
+ * This method is like `_.forIn` except that it iterates over elements
+ * of a `collection` in the opposite order.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to iterate over.
+ * @param {Function} [callback=identity] The function called per iteration.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * function Shape() {
+ *   this.x = 0;
+ *   this.y = 0;
+ * }
+ *
+ * Shape.prototype.move = function(x, y) {
+ *   this.x += x;
+ *   this.y += y;
+ * };
+ *
+ * _.forInRight(new Shape, function(value, key) {
+ *   console.log(key);
+ * });
+ * // => logs 'move', 'y', and 'x' assuming `_.forIn ` logs 'x', 'y', and 'move'
+ */
+function forInRight(object, callback, thisArg) {
+  var pairs = [];
+
+  forIn(object, function(value, key) {
+    pairs.push(key, value);
+  });
+
+  var length = pairs.length;
+  callback = baseCreateCallback(callback, thisArg, 3);
+  while (length--) {
+    if (callback(pairs[length--], pairs[length], object) === false) {
+      break;
+    }
+  }
+  return object;
+}
+
+module.exports = forInRight;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwn.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwn.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwn.js
new file mode 100644
index 0000000..33d2297
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwn.js
@@ -0,0 +1,50 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback'),
+    keys = require('./keys'),
+    objectTypes = require('../internals/objectTypes');
+
+/**
+ * Iterates over own enumerable properties of an object, executing the callback
+ * for each property. The callback is bound to `thisArg` and invoked with three
+ * arguments; (value, key, object). Callbacks may exit iteration early by
+ * explicitly returning `false`.
+ *
+ * @static
+ * @memberOf _
+ * @type Function
+ * @category Objects
+ * @param {Object} object The object to iterate over.
+ * @param {Function} [callback=identity] The function called per iteration.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * _.forOwn({ '0': 'zero', '1': 'one', 'length': 2 }, function(num, key) {
+ *   console.log(key);
+ * });
+ * // => logs '0', '1', and 'length' (property order is not guaranteed across environments)
+ */
+var forOwn = function(collection, callback, thisArg) {
+  var index, iterable = collection, result = iterable;
+  if (!iterable) return result;
+  if (!objectTypes[typeof iterable]) return result;
+  callback = callback && typeof thisArg == 'undefined' ? callback : baseCreateCallback(callback, thisArg, 3);
+    var ownIndex = -1,
+        ownProps = objectTypes[typeof iterable] && keys(iterable),
+        length = ownProps ? ownProps.length : 0;
+
+    while (++ownIndex < length) {
+      index = ownProps[ownIndex];
+      if (callback(iterable[index], index, collection) === false) return result;
+    }
+  return result
+};
+
+module.exports = forOwn;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwnRight.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwnRight.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwnRight.js
new file mode 100644
index 0000000..86e53e8
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/forOwnRight.js
@@ -0,0 +1,44 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var baseCreateCallback = require('../internals/baseCreateCallback'),
+    keys = require('./keys');
+
+/**
+ * This method is like `_.forOwn` except that it iterates over elements
+ * of a `collection` in the opposite order.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to iterate over.
+ * @param {Function} [callback=identity] The function called per iteration.
+ * @param {*} [thisArg] The `this` binding of `callback`.
+ * @returns {Object} Returns `object`.
+ * @example
+ *
+ * _.forOwnRight({ '0': 'zero', '1': 'one', 'length': 2 }, function(num, key) {
+ *   console.log(key);
+ * });
+ * // => logs 'length', '1', and '0' assuming `_.forOwn` logs '0', '1', and 'length'
+ */
+function forOwnRight(object, callback, thisArg) {
+  var props = keys(object),
+      length = props.length;
+
+  callback = baseCreateCallback(callback, thisArg, 3);
+  while (length--) {
+    var key = props[length];
+    if (callback(object[key], key, object) === false) {
+      break;
+    }
+  }
+  return object;
+}
+
+module.exports = forOwnRight;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/functions.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/functions.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/functions.js
new file mode 100644
index 0000000..4cfd478
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/functions.js
@@ -0,0 +1,37 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var forIn = require('./forIn'),
+    isFunction = require('./isFunction');
+
+/**
+ * Creates a sorted array of property names of all enumerable properties,
+ * own and inherited, of `object` that have function values.
+ *
+ * @static
+ * @memberOf _
+ * @alias methods
+ * @category Objects
+ * @param {Object} object The object to inspect.
+ * @returns {Array} Returns an array of property names that have function values.
+ * @example
+ *
+ * _.functions(_);
+ * // => ['all', 'any', 'bind', 'bindAll', 'clone', 'compact', 'compose', ...]
+ */
+function functions(object) {
+  var result = [];
+  forIn(object, function(value, key) {
+    if (isFunction(value)) {
+      result.push(key);
+    }
+  });
+  return result.sort();
+}
+
+module.exports = functions;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/has.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/has.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/has.js
new file mode 100644
index 0000000..e7f610c
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/has.js
@@ -0,0 +1,35 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Native method shortcuts */
+var hasOwnProperty = objectProto.hasOwnProperty;
+
+/**
+ * Checks if the specified property name exists as a direct property of `object`,
+ * instead of an inherited property.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to inspect.
+ * @param {string} key The name of the property to check.
+ * @returns {boolean} Returns `true` if key is a direct property, else `false`.
+ * @example
+ *
+ * _.has({ 'a': 1, 'b': 2, 'c': 3 }, 'b');
+ * // => true
+ */
+function has(object, key) {
+  return object ? hasOwnProperty.call(object, key) : false;
+}
+
+module.exports = has;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/invert.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/invert.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/invert.js
new file mode 100644
index 0000000..66d5949
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/invert.js
@@ -0,0 +1,37 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var keys = require('./keys');
+
+/**
+ * Creates an object composed of the inverted keys and values of the given object.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {Object} object The object to invert.
+ * @returns {Object} Returns the created inverted object.
+ * @example
+ *
+ * _.invert({ 'first': 'fred', 'second': 'barney' });
+ * // => { 'fred': 'first', 'barney': 'second' }
+ */
+function invert(object) {
+  var index = -1,
+      props = keys(object),
+      length = props.length,
+      result = {};
+
+  while (++index < length) {
+    var key = props[index];
+    result[object[key]] = key;
+  }
+  return result;
+}
+
+module.exports = invert;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArguments.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArguments.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArguments.js
new file mode 100644
index 0000000..eb87b80
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArguments.js
@@ -0,0 +1,40 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+
+/** `Object#toString` result shortcuts */
+var argsClass = '[object Arguments]';
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Used to resolve the internal [[Class]] of values */
+var toString = objectProto.toString;
+
+/**
+ * Checks if `value` is an `arguments` object.
+ *
+ * @static
+ * @memberOf _
+ * @category Objects
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if the `value` is an `arguments` object, else `false`.
+ * @example
+ *
+ * (function() { return _.isArguments(arguments); })(1, 2, 3);
+ * // => true
+ *
+ * _.isArguments([1, 2, 3]);
+ * // => false
+ */
+function isArguments(value) {
+  return value && typeof value == 'object' && typeof value.length == 'number' &&
+    toString.call(value) == argsClass || false;
+}
+
+module.exports = isArguments;

http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/26cca47e/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArray.js
----------------------------------------------------------------------
diff --git a/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArray.js b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArray.js
new file mode 100644
index 0000000..c50e72c
--- /dev/null
+++ b/bin/node_modules/plist/node_modules/xmlbuilder/node_modules/lodash-node/modern/objects/isArray.js
@@ -0,0 +1,45 @@
+/**
+ * Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/>
+ * Build: `lodash modularize modern exports="node" -o ./modern/`
+ * Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/>
+ * Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE>
+ * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ * Available under MIT license <http://lodash.com/license>
+ */
+var isNative = require('../internals/isNative');
+
+/** `Object#toString` result shortcuts */
+var arrayClass = '[object Array]';
+
+/** Used for native method references */
+var objectProto = Object.prototype;
+
+/** Used to resolve the internal [[Class]] of values */
+var toString = objectProto.toString;
+
+/* Native method shortcuts for methods with the same name as other `lodash` methods */
+var nativeIsArray = isNative(nativeIsArray = Array.isArray) && nativeIsArray;
+
+/**
+ * Checks if `value` is an array.
+ *
+ * @static
+ * @memberOf _
+ * @type Function
+ * @category Objects
+ * @param {*} value The value to check.
+ * @returns {boolean} Returns `true` if the `value` is an array, else `false`.
+ * @example
+ *
+ * (function() { return _.isArray(arguments); })();
+ * // => false
+ *
+ * _.isArray([1, 2, 3]);
+ * // => true
+ */
+var isArray = nativeIsArray || function(value) {
+  return value && typeof value == 'object' && typeof value.length == 'number' &&
+    toString.call(value) == arrayClass || false;
+};
+
+module.exports = isArray;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org


Mime
View raw message