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:32 UTC
[14/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/pegjs/lib/peg.js
----------------------------------------------------------------------
diff --git a/node_modules/pegjs/lib/peg.js b/node_modules/pegjs/lib/peg.js
deleted file mode 100644
index 912cbe8..0000000
--- a/node_modules/pegjs/lib/peg.js
+++ /dev/null
@@ -1,55 +0,0 @@
-"use strict";
-
-var arrays = require("./utils/arrays"),
- objects = require("./utils/objects");
-
-var PEG = {
- /* PEG.js version (uses semantic versioning). */
- VERSION: "0.9.0",
-
- GrammarError: require("./grammar-error"),
- parser: require("./parser"),
- compiler: require("./compiler"),
-
- /*
- * Generates a parser from a specified grammar and returns it.
- *
- * The grammar must be a string in the format described by the metagramar in
- * the parser.pegjs file.
- *
- * Throws |PEG.parser.SyntaxError| if the grammar contains a syntax error or
- * |PEG.GrammarError| if it contains a semantic error. Note that not all
- * errors are detected during the generation and some may protrude to the
- * generated parser and cause its malfunction.
- */
- buildParser: function(grammar) {
- function convertPasses(passes) {
- var converted = {}, stage;
-
- for (stage in passes) {
- if (passes.hasOwnProperty(stage)) {
- converted[stage] = objects.values(passes[stage]);
- }
- }
-
- return converted;
- }
-
- var options = arguments.length > 1 ? objects.clone(arguments[1]) : {},
- plugins = "plugins" in options ? options.plugins : [],
- config = {
- parser: this.parser,
- passes: convertPasses(this.compiler.passes)
- };
-
- arrays.each(plugins, function(p) { p.use(config, options); });
-
- return this.compiler.compile(
- config.parser.parse(grammar),
- config.passes,
- options
- );
- }
-};
-
-module.exports = PEG;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/pegjs/lib/utils/arrays.js
----------------------------------------------------------------------
diff --git a/node_modules/pegjs/lib/utils/arrays.js b/node_modules/pegjs/lib/utils/arrays.js
deleted file mode 100644
index 93a833c..0000000
--- a/node_modules/pegjs/lib/utils/arrays.js
+++ /dev/null
@@ -1,108 +0,0 @@
-"use strict";
-
-/* Array utilities. */
-var arrays = {
- range: function(start, stop) {
- var length = stop - start,
- result = new Array(length),
- i, j;
-
- for (i = 0, j = start; i < length; i++, j++) {
- result[i] = j;
- }
-
- return result;
- },
-
- find: function(array, valueOrPredicate) {
- var length = array.length, i;
-
- if (typeof valueOrPredicate === "function") {
- for (i = 0; i < length; i++) {
- if (valueOrPredicate(array[i])) {
- return array[i];
- }
- }
- } else {
- for (i = 0; i < length; i++) {
- if (array[i] === valueOrPredicate) {
- return array[i];
- }
- }
- }
- },
-
- indexOf: function(array, valueOrPredicate) {
- var length = array.length, i;
-
- if (typeof valueOrPredicate === "function") {
- for (i = 0; i < length; i++) {
- if (valueOrPredicate(array[i])) {
- return i;
- }
- }
- } else {
- for (i = 0; i < length; i++) {
- if (array[i] === valueOrPredicate) {
- return i;
- }
- }
- }
-
- return -1;
- },
-
- contains: function(array, valueOrPredicate) {
- return arrays.indexOf(array, valueOrPredicate) !== -1;
- },
-
- each: function(array, iterator) {
- var length = array.length, i;
-
- for (i = 0; i < length; i++) {
- iterator(array[i], i);
- }
- },
-
- map: function(array, iterator) {
- var length = array.length,
- result = new Array(length),
- i;
-
- for (i = 0; i < length; i++) {
- result[i] = iterator(array[i], i);
- }
-
- return result;
- },
-
- pluck: function(array, key) {
- return arrays.map(array, function (e) { return e[key]; });
- },
-
- every: function(array, predicate) {
- var length = array.length, i;
-
- for (i = 0; i < length; i++) {
- if (!predicate(array[i])) {
- return false;
- }
- }
-
- return true;
- },
-
- some: function(array, predicate) {
- var length = array.length, i;
-
- for (i = 0; i < length; i++) {
- if (predicate(array[i])) {
- return true;
- }
- }
-
- return false;
- }
-};
-
-module.exports = arrays;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/pegjs/lib/utils/classes.js
----------------------------------------------------------------------
diff --git a/node_modules/pegjs/lib/utils/classes.js b/node_modules/pegjs/lib/utils/classes.js
deleted file mode 100644
index 1ad305e..0000000
--- a/node_modules/pegjs/lib/utils/classes.js
+++ /dev/null
@@ -1,12 +0,0 @@
-"use strict";
-
-/* Class utilities */
-var classes = {
- subclass: function(child, parent) {
- function ctor() { this.constructor = child; }
- ctor.prototype = parent.prototype;
- child.prototype = new ctor();
- }
-};
-
-module.exports = classes;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/pegjs/lib/utils/objects.js
----------------------------------------------------------------------
diff --git a/node_modules/pegjs/lib/utils/objects.js b/node_modules/pegjs/lib/utils/objects.js
deleted file mode 100644
index 09587c1..0000000
--- a/node_modules/pegjs/lib/utils/objects.js
+++ /dev/null
@@ -1,54 +0,0 @@
-"use strict";
-
-/* Object utilities. */
-var objects = {
- keys: function(object) {
- var result = [], key;
-
- for (key in object) {
- if (object.hasOwnProperty(key)) {
- result.push(key);
- }
- }
-
- return result;
- },
-
- values: function(object) {
- var result = [], key;
-
- for (key in object) {
- if (object.hasOwnProperty(key)) {
- result.push(object[key]);
- }
- }
-
- return result;
- },
-
- clone: function(object) {
- var result = {}, key;
-
- for (key in object) {
- if (object.hasOwnProperty(key)) {
- result[key] = object[key];
- }
- }
-
- return result;
- },
-
- defaults: function(object, defaults) {
- var key;
-
- for (key in defaults) {
- if (defaults.hasOwnProperty(key)) {
- if (!(key in object)) {
- object[key] = defaults[key];
- }
- }
- }
- }
-};
-
-module.exports = objects;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/pegjs/package.json
----------------------------------------------------------------------
diff --git a/node_modules/pegjs/package.json b/node_modules/pegjs/package.json
deleted file mode 100644
index 8117037..0000000
--- a/node_modules/pegjs/package.json
+++ /dev/null
@@ -1,111 +0,0 @@
-{
- "_args": [
- [
- "pegjs@0.9.0",
- "/Users/steveng/repo/cordova/cordova-ios/node_modules/xcode"
- ]
- ],
- "_from": "pegjs@0.9.0",
- "_id": "pegjs@0.9.0",
- "_inCache": true,
- "_installable": true,
- "_location": "/pegjs",
- "_npmUser": {
- "email": "david@majda.cz",
- "name": "dmajda"
- },
- "_npmVersion": "1.4.28",
- "_phantomChildren": {},
- "_requested": {
- "name": "pegjs",
- "raw": "pegjs@0.9.0",
- "rawSpec": "0.9.0",
- "scope": null,
- "spec": "0.9.0",
- "type": "version"
- },
- "_requiredBy": [
- "/xcode"
- ],
- "_resolved": "http://registry.npmjs.org/pegjs/-/pegjs-0.9.0.tgz",
- "_shasum": "f6aefa2e3ce56169208e52179dfe41f89141a369",
- "_shrinkwrap": null,
- "_spec": "pegjs@0.9.0",
- "_where": "/Users/steveng/repo/cordova/cordova-ios/node_modules/xcode",
- "author": {
- "email": "david@majda.cz",
- "name": "David Majda",
- "url": "http://majda.cz/"
- },
- "bin": {
- "pegjs": "bin/pegjs"
- },
- "bugs": {
- "url": "https://github.com/pegjs/pegjs/issues"
- },
- "dependencies": {},
- "description": "Parser generator for JavaScript",
- "devDependencies": {
- "jasmine-node": "= 1.14.5",
- "jshint": "= 2.8.0",
- "uglify-js": "= 2.4.24"
- },
- "directories": {},
- "dist": {
- "shasum": "f6aefa2e3ce56169208e52179dfe41f89141a369",
- "tarball": "https://registry.npmjs.org/pegjs/-/pegjs-0.9.0.tgz"
- },
- "engines": {
- "node": ">= 0.10.0"
- },
- "files": [
- "CHANGELOG.md",
- "LICENSE",
- "README.md",
- "VERSION",
- "bin/pegjs",
- "examples/arithmetics.pegjs",
- "examples/css.pegjs",
- "examples/javascript.pegjs",
- "examples/json.pegjs",
- "lib/compiler.js",
- "lib/compiler/asts.js",
- "lib/compiler/javascript.js",
- "lib/compiler/opcodes.js",
- "lib/compiler/visitor.js",
- "lib/compiler/passes/generate-bytecode.js",
- "lib/compiler/passes/generate-javascript.js",
- "lib/compiler/passes/remove-proxy-rules.js",
- "lib/compiler/passes/report-left-recursion.js",
- "lib/compiler/passes/report-infinite-loops.js",
- "lib/compiler/passes/report-missing-rules.js",
- "lib/grammar-error.js",
- "lib/parser.js",
- "lib/peg.js",
- "lib/utils/arrays.js",
- "lib/utils/classes.js",
- "lib/utils/objects.js",
- "package.json"
- ],
- "gitHead": "20a4fb2e7f70a0695bee4aef4984b24c06db3627",
- "homepage": "http://pegjs.org/",
- "license": "MIT",
- "main": "lib/peg",
- "maintainers": [
- {
- "email": "david@majda.cz",
- "name": "dmajda"
- }
- ],
- "name": "pegjs",
- "optionalDependencies": {},
- "readme": "ERROR: No README data found!",
- "repository": {
- "type": "git",
- "url": "git+ssh://git@github.com/pegjs/pegjs.git"
- },
- "scripts": {
- "test": "make hint && make spec"
- },
- "version": "0.9.0"
-}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/.travis.yml
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/.travis.yml b/node_modules/plist/node_modules/base64-js/.travis.yml
new file mode 100644
index 0000000..939cb51
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/.travis.yml
@@ -0,0 +1,5 @@
+language: node_js
+node_js:
+ - "0.8"
+ - "0.10"
+ - "0.11"
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/LICENSE.MIT
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/LICENSE.MIT b/node_modules/plist/node_modules/base64-js/LICENSE.MIT
new file mode 100644
index 0000000..96d3f68
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/LICENSE.MIT
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/README.md
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/README.md b/node_modules/plist/node_modules/base64-js/README.md
new file mode 100644
index 0000000..ed31d1a
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/README.md
@@ -0,0 +1,31 @@
+base64-js
+=========
+
+`base64-js` does basic base64 encoding/decoding in pure JS.
+
+[![build status](https://secure.travis-ci.org/beatgammit/base64-js.png)](http://travis-ci.org/beatgammit/base64-js)
+
+[![testling badge](https://ci.testling.com/beatgammit/base64-js.png)](https://ci.testling.com/beatgammit/base64-js)
+
+Many browsers already have base64 encoding/decoding functionality, but it is for text data, not all-purpose binary data.
+
+Sometimes encoding/decoding binary data in the browser is useful, and that is what this module does.
+
+## install
+
+With [npm](https://npmjs.org) do:
+
+`npm install base64-js`
+
+## methods
+
+`var base64 = require('base64-js')`
+
+`base64` has two exposed functions, `toByteArray` and `fromByteArray`, which both take a single argument.
+
+* `toByteArray` - Takes a base64 string and returns a byte array
+* `fromByteArray` - Takes a byte array and returns a base64 string
+
+## license
+
+MIT
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/bench/bench.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/bench/bench.js b/node_modules/plist/node_modules/base64-js/bench/bench.js
new file mode 100644
index 0000000..0689e08
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/bench/bench.js
@@ -0,0 +1,19 @@
+var random = require('crypto').pseudoRandomBytes
+
+var b64 = require('../')
+var fs = require('fs')
+var path = require('path')
+var data = random(1e6).toString('base64')
+//fs.readFileSync(path.join(__dirname, 'example.b64'), 'ascii').split('\n').join('')
+var start = Date.now()
+var raw = b64.toByteArray(data)
+var middle = Date.now()
+var data = b64.fromByteArray(raw)
+var end = Date.now()
+
+console.log('decode ms, decode ops/ms, encode ms, encode ops/ms')
+console.log(
+ middle - start, data.length / (middle - start),
+ end - middle, data.length / (end - middle))
+//console.log(data)
+
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/lib/b64.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/lib/b64.js b/node_modules/plist/node_modules/base64-js/lib/b64.js
new file mode 100644
index 0000000..46001d2
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/lib/b64.js
@@ -0,0 +1,124 @@
+var lookup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+
+;(function (exports) {
+ 'use strict';
+
+ var Arr = (typeof Uint8Array !== 'undefined')
+ ? Uint8Array
+ : Array
+
+ var PLUS = '+'.charCodeAt(0)
+ var SLASH = '/'.charCodeAt(0)
+ var NUMBER = '0'.charCodeAt(0)
+ var LOWER = 'a'.charCodeAt(0)
+ var UPPER = 'A'.charCodeAt(0)
+ var PLUS_URL_SAFE = '-'.charCodeAt(0)
+ var SLASH_URL_SAFE = '_'.charCodeAt(0)
+
+ function decode (elt) {
+ var code = elt.charCodeAt(0)
+ if (code === PLUS ||
+ code === PLUS_URL_SAFE)
+ return 62 // '+'
+ if (code === SLASH ||
+ code === SLASH_URL_SAFE)
+ return 63 // '/'
+ if (code < NUMBER)
+ return -1 //no match
+ if (code < NUMBER + 10)
+ return code - NUMBER + 26 + 26
+ if (code < UPPER + 26)
+ return code - UPPER
+ if (code < LOWER + 26)
+ return code - LOWER + 26
+ }
+
+ function b64ToByteArray (b64) {
+ var i, j, l, tmp, placeHolders, arr
+
+ if (b64.length % 4 > 0) {
+ throw new Error('Invalid string. Length must be a multiple of 4')
+ }
+
+ // the number of equal signs (place holders)
+ // if there are two placeholders, than the two characters before it
+ // represent one byte
+ // if there is only one, then the three characters before it represent 2 bytes
+ // this is just a cheap hack to not do indexOf twice
+ var len = b64.length
+ placeHolders = '=' === b64.charAt(len - 2) ? 2 : '=' === b64.charAt(len - 1) ? 1 : 0
+
+ // base64 is 4/3 + up to two characters of the original data
+ arr = new Arr(b64.length * 3 / 4 - placeHolders)
+
+ // if there are placeholders, only get up to the last complete 4 chars
+ l = placeHolders > 0 ? b64.length - 4 : b64.length
+
+ var L = 0
+
+ function push (v) {
+ arr[L++] = v
+ }
+
+ for (i = 0, j = 0; i < l; i += 4, j += 3) {
+ tmp = (decode(b64.charAt(i)) << 18) | (decode(b64.charAt(i + 1)) << 12) | (decode(b64.charAt(i + 2)) << 6) | decode(b64.charAt(i + 3))
+ push((tmp & 0xFF0000) >> 16)
+ push((tmp & 0xFF00) >> 8)
+ push(tmp & 0xFF)
+ }
+
+ if (placeHolders === 2) {
+ tmp = (decode(b64.charAt(i)) << 2) | (decode(b64.charAt(i + 1)) >> 4)
+ push(tmp & 0xFF)
+ } else if (placeHolders === 1) {
+ tmp = (decode(b64.charAt(i)) << 10) | (decode(b64.charAt(i + 1)) << 4) | (decode(b64.charAt(i + 2)) >> 2)
+ push((tmp >> 8) & 0xFF)
+ push(tmp & 0xFF)
+ }
+
+ return arr
+ }
+
+ function uint8ToBase64 (uint8) {
+ var i,
+ extraBytes = uint8.length % 3, // if we have 1 byte left, pad 2 bytes
+ output = "",
+ temp, length
+
+ function encode (num) {
+ return lookup.charAt(num)
+ }
+
+ function tripletToBase64 (num) {
+ return encode(num >> 18 & 0x3F) + encode(num >> 12 & 0x3F) + encode(num >> 6 & 0x3F) + encode(num & 0x3F)
+ }
+
+ // go through the array every three bytes, we'll deal with trailing stuff later
+ for (i = 0, length = uint8.length - extraBytes; i < length; i += 3) {
+ temp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2])
+ output += tripletToBase64(temp)
+ }
+
+ // pad the end with zeros, but make sure to not forget the extra bytes
+ switch (extraBytes) {
+ case 1:
+ temp = uint8[uint8.length - 1]
+ output += encode(temp >> 2)
+ output += encode((temp << 4) & 0x3F)
+ output += '=='
+ break
+ case 2:
+ temp = (uint8[uint8.length - 2] << 8) + (uint8[uint8.length - 1])
+ output += encode(temp >> 10)
+ output += encode((temp >> 4) & 0x3F)
+ output += encode((temp << 2) & 0x3F)
+ output += '='
+ break
+ }
+
+ return output
+ }
+
+ exports.toByteArray = b64ToByteArray
+ exports.fromByteArray = uint8ToBase64
+}(typeof exports === 'undefined' ? (this.base64js = {}) : exports))
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/package.json
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/package.json b/node_modules/plist/node_modules/base64-js/package.json
new file mode 100644
index 0000000..6c252bb
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/package.json
@@ -0,0 +1,68 @@
+{
+ "author": {
+ "name": "T. Jameson Little",
+ "email": "t.jameson.little@gmail.com"
+ },
+ "name": "base64-js",
+ "description": "Base64 encoding/decoding in pure JS",
+ "version": "0.0.8",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/beatgammit/base64-js.git"
+ },
+ "main": "lib/b64.js",
+ "scripts": {
+ "test": "tape test/*.js"
+ },
+ "testling": {
+ "files": "test/*.js",
+ "browsers": [
+ "ie/6..latest",
+ "chrome/4..latest",
+ "firefox/3..latest",
+ "safari/5.1..latest",
+ "opera/11.0..latest",
+ "iphone/6",
+ "ipad/6"
+ ]
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "license": "MIT",
+ "dependencies": {},
+ "devDependencies": {
+ "tape": "~2.3.2"
+ },
+ "gitHead": "b4a8a5fa9b0caeddb5ad94dd1108253d8f2a315f",
+ "bugs": {
+ "url": "https://github.com/beatgammit/base64-js/issues"
+ },
+ "homepage": "https://github.com/beatgammit/base64-js",
+ "_id": "base64-js@0.0.8",
+ "_shasum": "1101e9544f4a76b1bc3b26d452ca96d7a35e7978",
+ "_from": "base64-js@0.0.8",
+ "_npmVersion": "2.1.16",
+ "_nodeVersion": "0.10.35",
+ "_npmUser": {
+ "name": "feross",
+ "email": "feross@feross.org"
+ },
+ "maintainers": [
+ {
+ "name": "beatgammit",
+ "email": "t.jameson.little@gmail.com"
+ },
+ {
+ "name": "feross",
+ "email": "feross@feross.org"
+ }
+ ],
+ "dist": {
+ "shasum": "1101e9544f4a76b1bc3b26d452ca96d7a35e7978",
+ "tarball": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz"
+ },
+ "directories": {},
+ "_resolved": "http://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz",
+ "readme": "ERROR: No README data found!"
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/test/convert.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/test/convert.js b/node_modules/plist/node_modules/base64-js/test/convert.js
new file mode 100644
index 0000000..60b09c0
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/test/convert.js
@@ -0,0 +1,51 @@
+var test = require('tape'),
+ b64 = require('../lib/b64'),
+ checks = [
+ 'a',
+ 'aa',
+ 'aaa',
+ 'hi',
+ 'hi!',
+ 'hi!!',
+ 'sup',
+ 'sup?',
+ 'sup?!'
+ ];
+
+test('convert to base64 and back', function (t) {
+ t.plan(checks.length);
+
+ for (var i = 0; i < checks.length; i++) {
+ var check = checks[i],
+ b64Str,
+ arr,
+ str;
+
+ b64Str = b64.fromByteArray(map(check, function (char) { return char.charCodeAt(0); }));
+
+ arr = b64.toByteArray(b64Str);
+ str = map(arr, function (byte) { return String.fromCharCode(byte); }).join('');
+
+ t.equal(check, str, 'Checked ' + check);
+ }
+
+});
+
+function map (arr, callback) {
+ var res = [],
+ kValue,
+ mappedValue;
+
+ for (var k = 0, len = arr.length; k < len; k++) {
+ if ((typeof arr === 'string' && !!arr.charAt(k))) {
+ kValue = arr.charAt(k);
+ mappedValue = callback(kValue, k, arr);
+ res[k] = mappedValue;
+ } else if (typeof arr !== 'string' && k in arr) {
+ kValue = arr[k];
+ mappedValue = callback(kValue, k, arr);
+ res[k] = mappedValue;
+ }
+ }
+ return res;
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/base64-js/test/url-safe.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/base64-js/test/url-safe.js b/node_modules/plist/node_modules/base64-js/test/url-safe.js
new file mode 100644
index 0000000..dc437e9
--- /dev/null
+++ b/node_modules/plist/node_modules/base64-js/test/url-safe.js
@@ -0,0 +1,18 @@
+var test = require('tape'),
+ b64 = require('../lib/b64');
+
+test('decode url-safe style base64 strings', function (t) {
+ var expected = [0xff, 0xff, 0xbe, 0xff, 0xef, 0xbf, 0xfb, 0xef, 0xff];
+
+ var actual = b64.toByteArray('//++/++/++//');
+ for (var i = 0; i < actual.length; i++) {
+ t.equal(actual[i], expected[i])
+ }
+
+ actual = b64.toByteArray('__--_--_--__');
+ for (var i = 0; i < actual.length; i++) {
+ t.equal(actual[i], expected[i])
+ }
+
+ t.end();
+});
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/History.md
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/History.md b/node_modules/plist/node_modules/util-deprecate/History.md
new file mode 100644
index 0000000..acc8675
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/History.md
@@ -0,0 +1,16 @@
+
+1.0.2 / 2015-10-07
+==================
+
+ * use try/catch when checking `localStorage` (#3, @kumavis)
+
+1.0.1 / 2014-11-25
+==================
+
+ * browser: use `console.warn()` for deprecation calls
+ * browser: more jsdocs
+
+1.0.0 / 2014-04-30
+==================
+
+ * initial commit
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/LICENSE
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/LICENSE b/node_modules/plist/node_modules/util-deprecate/LICENSE
new file mode 100644
index 0000000..6a60e8c
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/LICENSE
@@ -0,0 +1,24 @@
+(The MIT License)
+
+Copyright (c) 2014 Nathan Rajlich <na...@tootallnate.net>
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/README.md
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/README.md b/node_modules/plist/node_modules/util-deprecate/README.md
new file mode 100644
index 0000000..75622fa
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/README.md
@@ -0,0 +1,53 @@
+util-deprecate
+==============
+### The Node.js `util.deprecate()` function with browser support
+
+In Node.js, this module simply re-exports the `util.deprecate()` function.
+
+In the web browser (i.e. via browserify), a browser-specific implementation
+of the `util.deprecate()` function is used.
+
+
+## API
+
+A `deprecate()` function is the only thing exposed by this module.
+
+``` javascript
+// setup:
+exports.foo = deprecate(foo, 'foo() is deprecated, use bar() instead');
+
+
+// users see:
+foo();
+// foo() is deprecated, use bar() instead
+foo();
+foo();
+```
+
+
+## License
+
+(The MIT License)
+
+Copyright (c) 2014 Nathan Rajlich <na...@tootallnate.net>
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/browser.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/browser.js b/node_modules/plist/node_modules/util-deprecate/browser.js
new file mode 100644
index 0000000..549ae2f
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/browser.js
@@ -0,0 +1,67 @@
+
+/**
+ * Module exports.
+ */
+
+module.exports = deprecate;
+
+/**
+ * Mark that a method should not be used.
+ * Returns a modified function which warns once by default.
+ *
+ * If `localStorage.noDeprecation = true` is set, then it is a no-op.
+ *
+ * If `localStorage.throwDeprecation = true` is set, then deprecated functions
+ * will throw an Error when invoked.
+ *
+ * If `localStorage.traceDeprecation = true` is set, then deprecated functions
+ * will invoke `console.trace()` instead of `console.error()`.
+ *
+ * @param {Function} fn - the function to deprecate
+ * @param {String} msg - the string to print to the console when `fn` is invoked
+ * @returns {Function} a new "deprecated" version of `fn`
+ * @api public
+ */
+
+function deprecate (fn, msg) {
+ if (config('noDeprecation')) {
+ return fn;
+ }
+
+ var warned = false;
+ function deprecated() {
+ if (!warned) {
+ if (config('throwDeprecation')) {
+ throw new Error(msg);
+ } else if (config('traceDeprecation')) {
+ console.trace(msg);
+ } else {
+ console.warn(msg);
+ }
+ warned = true;
+ }
+ return fn.apply(this, arguments);
+ }
+
+ return deprecated;
+}
+
+/**
+ * Checks `localStorage` for boolean values for the given `name`.
+ *
+ * @param {String} name
+ * @returns {Boolean}
+ * @api private
+ */
+
+function config (name) {
+ // accessing global.localStorage can trigger a DOMException in sandboxed iframes
+ try {
+ if (!global.localStorage) return false;
+ } catch (_) {
+ return false;
+ }
+ var val = global.localStorage[name];
+ if (null == val) return false;
+ return String(val).toLowerCase() === 'true';
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/node.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/node.js b/node_modules/plist/node_modules/util-deprecate/node.js
new file mode 100644
index 0000000..5e6fcff
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/node.js
@@ -0,0 +1,6 @@
+
+/**
+ * For Node.js, simply re-export the core `util.deprecate` function.
+ */
+
+module.exports = require('util').deprecate;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/util-deprecate/package.json
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/util-deprecate/package.json b/node_modules/plist/node_modules/util-deprecate/package.json
new file mode 100644
index 0000000..c1923c2
--- /dev/null
+++ b/node_modules/plist/node_modules/util-deprecate/package.json
@@ -0,0 +1,54 @@
+{
+ "name": "util-deprecate",
+ "version": "1.0.2",
+ "description": "The Node.js `util.deprecate()` function with browser support",
+ "main": "node.js",
+ "browser": "browser.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/TooTallNate/util-deprecate.git"
+ },
+ "keywords": [
+ "util",
+ "deprecate",
+ "browserify",
+ "browser",
+ "node"
+ ],
+ "author": {
+ "name": "Nathan Rajlich",
+ "email": "nathan@tootallnate.net",
+ "url": "http://n8.io/"
+ },
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/TooTallNate/util-deprecate/issues"
+ },
+ "homepage": "https://github.com/TooTallNate/util-deprecate",
+ "gitHead": "475fb6857cd23fafff20c1be846c1350abf8e6d4",
+ "_id": "util-deprecate@1.0.2",
+ "_shasum": "450d4dc9fa70de732762fbd2d4a28981419a0ccf",
+ "_from": "util-deprecate@1.0.2",
+ "_npmVersion": "2.14.4",
+ "_nodeVersion": "4.1.2",
+ "_npmUser": {
+ "name": "tootallnate",
+ "email": "nathan@tootallnate.net"
+ },
+ "maintainers": [
+ {
+ "name": "tootallnate",
+ "email": "nathan@tootallnate.net"
+ }
+ ],
+ "dist": {
+ "shasum": "450d4dc9fa70de732762fbd2d4a28981419a0ccf",
+ "tarball": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
+ },
+ "directories": {},
+ "_resolved": "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "readme": "ERROR: No README data found!"
+}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/.npmignore
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/.npmignore b/node_modules/plist/node_modules/xmlbuilder/.npmignore
new file mode 100644
index 0000000..b6ad1f6
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/.npmignore
@@ -0,0 +1,5 @@
+.travis.yml
+src
+test
+perf
+coverage
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/LICENSE
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/LICENSE b/node_modules/plist/node_modules/xmlbuilder/LICENSE
new file mode 100644
index 0000000..e7cbac9
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2013 Ozgur Ozcitak
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/README.md
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/README.md b/node_modules/plist/node_modules/xmlbuilder/README.md
new file mode 100644
index 0000000..13a5b12
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/README.md
@@ -0,0 +1,86 @@
+# xmlbuilder-js
+
+An XML builder for [node.js](https://nodejs.org/) similar to
+[java-xmlbuilder](https://github.com/jmurty/java-xmlbuilder).
+
+[![License](http://img.shields.io/npm/l/xmlbuilder.svg?style=flat-square)](http://opensource.org/licenses/MIT)
+[![NPM Version](http://img.shields.io/npm/v/xmlbuilder.svg?style=flat-square)](https://npmjs.com/package/xmlbuilder)
+[![NPM Downloads](https://img.shields.io/npm/dm/xmlbuilder.svg?style=flat-square)](https://npmjs.com/package/xmlbuilder)
+
+[![Build Status](http://img.shields.io/travis/oozcitak/xmlbuilder-js.svg?style=flat-square)](http://travis-ci.org/oozcitak/xmlbuilder-js)
+[![Dependency Status](http://img.shields.io/david/oozcitak/xmlbuilder-js.svg?style=flat-square)](https://david-dm.org/oozcitak/xmlbuilder-js)
+[![Dev Dependency Status](http://img.shields.io/david/dev/oozcitak/xmlbuilder-js.svg?style=flat-square)](https://david-dm.org/oozcitak/xmlbuilder-js)
+[![Code Coverage](https://img.shields.io/coveralls/oozcitak/xmlbuilder-js.svg?style=flat-square)](https://coveralls.io/github/oozcitak/xmlbuilder-js)
+
+### Installation:
+
+``` sh
+npm install xmlbuilder
+```
+
+### Usage:
+
+``` js
+var builder = require('xmlbuilder');
+var xml = builder.create('root')
+ .ele('xmlbuilder')
+ .ele('repo', {'type': 'git'}, 'git://github.com/oozcitak/xmlbuilder-js.git')
+ .end({ pretty: true});
+
+console.log(xml);
+```
+
+will result in:
+
+``` xml
+<?xml version="1.0"?>
+<root>
+ <xmlbuilder>
+ <repo type="git">git://github.com/oozcitak/xmlbuilder-js.git</repo>
+ </xmlbuilder>
+</root>
+```
+
+It is also possible to convert objects into nodes:
+
+``` js
+builder.create({
+ root: {
+ xmlbuilder: {
+ repo: {
+ '@type': 'git', // attributes start with @
+ '#text': 'git://github.com/oozcitak/xmlbuilder-js.git' // text node
+ }
+ }
+ }
+});
+```
+
+If you need to do some processing:
+
+``` js
+var root = builder.create('squares');
+root.com('f(x) = x^2');
+for(var i = 1; i <= 5; i++)
+{
+ var item = root.ele('data');
+ item.att('x', i);
+ item.att('y', i * i);
+}
+```
+
+This will result in:
+
+``` xml
+<?xml version="1.0"?>
+<squares>
+ <!-- f(x) = x^2 -->
+ <data x="1" y="1"/>
+ <data x="2" y="4"/>
+ <data x="3" y="9"/>
+ <data x="4" y="16"/>
+ <data x="5" y="25"/>
+</squares>
+```
+
+See the [wiki](https://github.com/oozcitak/xmlbuilder-js/wiki) for details.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLAttribute.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLAttribute.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLAttribute.js
new file mode 100644
index 0000000..247c9d1
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLAttribute.js
@@ -0,0 +1,32 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLAttribute, create;
+
+ create = require('lodash/object/create');
+
+ module.exports = XMLAttribute = (function() {
+ function XMLAttribute(parent, name, value) {
+ this.stringify = parent.stringify;
+ if (name == null) {
+ throw new Error("Missing attribute name of element " + parent.name);
+ }
+ if (value == null) {
+ throw new Error("Missing attribute value for attribute " + name + " of element " + parent.name);
+ }
+ this.name = this.stringify.attName(name);
+ this.value = this.stringify.attValue(value);
+ }
+
+ XMLAttribute.prototype.clone = function() {
+ return create(XMLAttribute.prototype, this);
+ };
+
+ XMLAttribute.prototype.toString = function(options, level) {
+ return ' ' + this.name + '="' + this.value + '"';
+ };
+
+ return XMLAttribute;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLBuilder.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLBuilder.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLBuilder.js
new file mode 100644
index 0000000..4282833
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLBuilder.js
@@ -0,0 +1,69 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLBuilder, XMLDeclaration, XMLDocType, XMLElement, XMLStringifier;
+
+ XMLStringifier = require('./XMLStringifier');
+
+ XMLDeclaration = require('./XMLDeclaration');
+
+ XMLDocType = require('./XMLDocType');
+
+ XMLElement = require('./XMLElement');
+
+ module.exports = XMLBuilder = (function() {
+ function XMLBuilder(name, options) {
+ var root, temp;
+ if (name == null) {
+ throw new Error("Root element needs a name");
+ }
+ if (options == null) {
+ options = {};
+ }
+ this.options = options;
+ this.stringify = new XMLStringifier(options);
+ temp = new XMLElement(this, 'doc');
+ root = temp.element(name);
+ root.isRoot = true;
+ root.documentObject = this;
+ this.rootObject = root;
+ if (!options.headless) {
+ root.declaration(options);
+ if ((options.pubID != null) || (options.sysID != null)) {
+ root.doctype(options);
+ }
+ }
+ }
+
+ XMLBuilder.prototype.root = function() {
+ return this.rootObject;
+ };
+
+ XMLBuilder.prototype.end = function(options) {
+ return this.toString(options);
+ };
+
+ XMLBuilder.prototype.toString = function(options) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ r = '';
+ if (this.xmldec != null) {
+ r += this.xmldec.toString(options);
+ }
+ if (this.doctype != null) {
+ r += this.doctype.toString(options);
+ }
+ r += this.rootObject.toString(options);
+ if (pretty && r.slice(-newline.length) === newline) {
+ r = r.slice(0, -newline.length);
+ }
+ return r;
+ };
+
+ return XMLBuilder;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLCData.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLCData.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLCData.js
new file mode 100644
index 0000000..00002f1
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLCData.js
@@ -0,0 +1,49 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLCData, XMLNode, create,
+ extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ hasProp = {}.hasOwnProperty;
+
+ create = require('lodash/object/create');
+
+ XMLNode = require('./XMLNode');
+
+ module.exports = XMLCData = (function(superClass) {
+ extend(XMLCData, superClass);
+
+ function XMLCData(parent, text) {
+ XMLCData.__super__.constructor.call(this, parent);
+ if (text == null) {
+ throw new Error("Missing CDATA text");
+ }
+ this.text = this.stringify.cdata(text);
+ }
+
+ XMLCData.prototype.clone = function() {
+ return create(XMLCData.prototype, this);
+ };
+
+ XMLCData.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<![CDATA[' + this.text + ']]>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLCData;
+
+ })(XMLNode);
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLComment.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLComment.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLComment.js
new file mode 100644
index 0000000..ca23e95
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLComment.js
@@ -0,0 +1,49 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLComment, XMLNode, create,
+ extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ hasProp = {}.hasOwnProperty;
+
+ create = require('lodash/object/create');
+
+ XMLNode = require('./XMLNode');
+
+ module.exports = XMLComment = (function(superClass) {
+ extend(XMLComment, superClass);
+
+ function XMLComment(parent, text) {
+ XMLComment.__super__.constructor.call(this, parent);
+ if (text == null) {
+ throw new Error("Missing comment text");
+ }
+ this.text = this.stringify.comment(text);
+ }
+
+ XMLComment.prototype.clone = function() {
+ return create(XMLComment.prototype, this);
+ };
+
+ XMLComment.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!-- ' + this.text + ' -->';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLComment;
+
+ })(XMLNode);
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDAttList.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDAttList.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDAttList.js
new file mode 100644
index 0000000..62e6d8a
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDAttList.js
@@ -0,0 +1,68 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLDTDAttList, create;
+
+ create = require('lodash/object/create');
+
+ module.exports = XMLDTDAttList = (function() {
+ function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {
+ this.stringify = parent.stringify;
+ if (elementName == null) {
+ throw new Error("Missing DTD element name");
+ }
+ if (attributeName == null) {
+ throw new Error("Missing DTD attribute name");
+ }
+ if (!attributeType) {
+ throw new Error("Missing DTD attribute type");
+ }
+ if (!defaultValueType) {
+ throw new Error("Missing DTD attribute default");
+ }
+ if (defaultValueType.indexOf('#') !== 0) {
+ defaultValueType = '#' + defaultValueType;
+ }
+ if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {
+ throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT");
+ }
+ if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {
+ throw new Error("Default value only applies to #FIXED or #DEFAULT");
+ }
+ this.elementName = this.stringify.eleName(elementName);
+ this.attributeName = this.stringify.attName(attributeName);
+ this.attributeType = this.stringify.dtdAttType(attributeType);
+ this.defaultValue = this.stringify.dtdAttDefault(defaultValue);
+ this.defaultValueType = defaultValueType;
+ }
+
+ XMLDTDAttList.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!ATTLIST ' + this.elementName + ' ' + this.attributeName + ' ' + this.attributeType;
+ if (this.defaultValueType !== '#DEFAULT') {
+ r += ' ' + this.defaultValueType;
+ }
+ if (this.defaultValue) {
+ r += ' "' + this.defaultValue + '"';
+ }
+ r += '>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLDTDAttList;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDElement.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDElement.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDElement.js
new file mode 100644
index 0000000..2d155e2
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDElement.js
@@ -0,0 +1,46 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLDTDElement, create;
+
+ create = require('lodash/object/create');
+
+ module.exports = XMLDTDElement = (function() {
+ function XMLDTDElement(parent, name, value) {
+ this.stringify = parent.stringify;
+ if (name == null) {
+ throw new Error("Missing DTD element name");
+ }
+ if (!value) {
+ value = '(#PCDATA)';
+ }
+ if (Array.isArray(value)) {
+ value = '(' + value.join(',') + ')';
+ }
+ this.name = this.stringify.eleName(name);
+ this.value = this.stringify.dtdElementValue(value);
+ }
+
+ XMLDTDElement.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!ELEMENT ' + this.name + ' ' + this.value + '>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLDTDElement;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDEntity.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDEntity.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDEntity.js
new file mode 100644
index 0000000..3201d19
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDEntity.js
@@ -0,0 +1,84 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLDTDEntity, create, isObject;
+
+ create = require('lodash/object/create');
+
+ isObject = require('lodash/lang/isObject');
+
+ module.exports = XMLDTDEntity = (function() {
+ function XMLDTDEntity(parent, pe, name, value) {
+ this.stringify = parent.stringify;
+ if (name == null) {
+ throw new Error("Missing entity name");
+ }
+ if (value == null) {
+ throw new Error("Missing entity value");
+ }
+ this.pe = !!pe;
+ this.name = this.stringify.eleName(name);
+ if (!isObject(value)) {
+ this.value = this.stringify.dtdEntityValue(value);
+ } else {
+ if (!value.pubID && !value.sysID) {
+ throw new Error("Public and/or system identifiers are required for an external entity");
+ }
+ if (value.pubID && !value.sysID) {
+ throw new Error("System identifier is required for a public external entity");
+ }
+ if (value.pubID != null) {
+ this.pubID = this.stringify.dtdPubID(value.pubID);
+ }
+ if (value.sysID != null) {
+ this.sysID = this.stringify.dtdSysID(value.sysID);
+ }
+ if (value.nData != null) {
+ this.nData = this.stringify.dtdNData(value.nData);
+ }
+ if (this.pe && this.nData) {
+ throw new Error("Notation declaration is not allowed in a parameter entity");
+ }
+ }
+ }
+
+ XMLDTDEntity.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!ENTITY';
+ if (this.pe) {
+ r += ' %';
+ }
+ r += ' ' + this.name;
+ if (this.value) {
+ r += ' "' + this.value + '"';
+ } else {
+ if (this.pubID && this.sysID) {
+ r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
+ } else if (this.sysID) {
+ r += ' SYSTEM "' + this.sysID + '"';
+ }
+ if (this.nData) {
+ r += ' NDATA ' + this.nData;
+ }
+ }
+ r += '>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLDTDEntity;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDNotation.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDNotation.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDNotation.js
new file mode 100644
index 0000000..cfbccf4
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDTDNotation.js
@@ -0,0 +1,56 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLDTDNotation, create;
+
+ create = require('lodash/object/create');
+
+ module.exports = XMLDTDNotation = (function() {
+ function XMLDTDNotation(parent, name, value) {
+ this.stringify = parent.stringify;
+ if (name == null) {
+ throw new Error("Missing notation name");
+ }
+ if (!value.pubID && !value.sysID) {
+ throw new Error("Public or system identifiers are required for an external entity");
+ }
+ this.name = this.stringify.eleName(name);
+ if (value.pubID != null) {
+ this.pubID = this.stringify.dtdPubID(value.pubID);
+ }
+ if (value.sysID != null) {
+ this.sysID = this.stringify.dtdSysID(value.sysID);
+ }
+ }
+
+ XMLDTDNotation.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!NOTATION ' + this.name;
+ if (this.pubID && this.sysID) {
+ r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
+ } else if (this.pubID) {
+ r += ' PUBLIC "' + this.pubID + '"';
+ } else if (this.sysID) {
+ r += ' SYSTEM "' + this.sysID + '"';
+ }
+ r += '>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLDTDNotation;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDeclaration.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDeclaration.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDeclaration.js
new file mode 100644
index 0000000..b2d8435
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDeclaration.js
@@ -0,0 +1,65 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLDeclaration, XMLNode, create, isObject,
+ extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ hasProp = {}.hasOwnProperty;
+
+ create = require('lodash/object/create');
+
+ isObject = require('lodash/lang/isObject');
+
+ XMLNode = require('./XMLNode');
+
+ module.exports = XMLDeclaration = (function(superClass) {
+ extend(XMLDeclaration, superClass);
+
+ function XMLDeclaration(parent, version, encoding, standalone) {
+ var ref;
+ XMLDeclaration.__super__.constructor.call(this, parent);
+ if (isObject(version)) {
+ ref = version, version = ref.version, encoding = ref.encoding, standalone = ref.standalone;
+ }
+ if (!version) {
+ version = '1.0';
+ }
+ this.version = this.stringify.xmlVersion(version);
+ if (encoding != null) {
+ this.encoding = this.stringify.xmlEncoding(encoding);
+ }
+ if (standalone != null) {
+ this.standalone = this.stringify.xmlStandalone(standalone);
+ }
+ }
+
+ XMLDeclaration.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<?xml';
+ r += ' version="' + this.version + '"';
+ if (this.encoding != null) {
+ r += ' encoding="' + this.encoding + '"';
+ }
+ if (this.standalone != null) {
+ r += ' standalone="' + this.standalone + '"';
+ }
+ r += '?>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLDeclaration;
+
+ })(XMLNode);
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLDocType.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLDocType.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDocType.js
new file mode 100644
index 0000000..eec6f36
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLDocType.js
@@ -0,0 +1,188 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLProcessingInstruction, create, isObject;
+
+ create = require('lodash/object/create');
+
+ isObject = require('lodash/lang/isObject');
+
+ XMLCData = require('./XMLCData');
+
+ XMLComment = require('./XMLComment');
+
+ XMLDTDAttList = require('./XMLDTDAttList');
+
+ XMLDTDEntity = require('./XMLDTDEntity');
+
+ XMLDTDElement = require('./XMLDTDElement');
+
+ XMLDTDNotation = require('./XMLDTDNotation');
+
+ XMLProcessingInstruction = require('./XMLProcessingInstruction');
+
+ module.exports = XMLDocType = (function() {
+ function XMLDocType(parent, pubID, sysID) {
+ var ref, ref1;
+ this.documentObject = parent;
+ this.stringify = this.documentObject.stringify;
+ this.children = [];
+ if (isObject(pubID)) {
+ ref = pubID, pubID = ref.pubID, sysID = ref.sysID;
+ }
+ if (sysID == null) {
+ ref1 = [pubID, sysID], sysID = ref1[0], pubID = ref1[1];
+ }
+ if (pubID != null) {
+ this.pubID = this.stringify.dtdPubID(pubID);
+ }
+ if (sysID != null) {
+ this.sysID = this.stringify.dtdSysID(sysID);
+ }
+ }
+
+ XMLDocType.prototype.element = function(name, value) {
+ var child;
+ child = new XMLDTDElement(this, name, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {
+ var child;
+ child = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.entity = function(name, value) {
+ var child;
+ child = new XMLDTDEntity(this, false, name, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.pEntity = function(name, value) {
+ var child;
+ child = new XMLDTDEntity(this, true, name, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.notation = function(name, value) {
+ var child;
+ child = new XMLDTDNotation(this, name, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.cdata = function(value) {
+ var child;
+ child = new XMLCData(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.comment = function(value) {
+ var child;
+ child = new XMLComment(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.instruction = function(target, value) {
+ var child;
+ child = new XMLProcessingInstruction(this, target, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLDocType.prototype.root = function() {
+ return this.documentObject.root();
+ };
+
+ XMLDocType.prototype.document = function() {
+ return this.documentObject;
+ };
+
+ XMLDocType.prototype.toString = function(options, level) {
+ var child, i, indent, len, newline, offset, pretty, r, ref, ref1, ref2, ref3, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<!DOCTYPE ' + this.root().name;
+ if (this.pubID && this.sysID) {
+ r += ' PUBLIC "' + this.pubID + '" "' + this.sysID + '"';
+ } else if (this.sysID) {
+ r += ' SYSTEM "' + this.sysID + '"';
+ }
+ if (this.children.length > 0) {
+ r += ' [';
+ if (pretty) {
+ r += newline;
+ }
+ ref3 = this.children;
+ for (i = 0, len = ref3.length; i < len; i++) {
+ child = ref3[i];
+ r += child.toString(options, level + 1);
+ }
+ r += ']';
+ }
+ r += '>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ XMLDocType.prototype.ele = function(name, value) {
+ return this.element(name, value);
+ };
+
+ XMLDocType.prototype.att = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {
+ return this.attList(elementName, attributeName, attributeType, defaultValueType, defaultValue);
+ };
+
+ XMLDocType.prototype.ent = function(name, value) {
+ return this.entity(name, value);
+ };
+
+ XMLDocType.prototype.pent = function(name, value) {
+ return this.pEntity(name, value);
+ };
+
+ XMLDocType.prototype.not = function(name, value) {
+ return this.notation(name, value);
+ };
+
+ XMLDocType.prototype.dat = function(value) {
+ return this.cdata(value);
+ };
+
+ XMLDocType.prototype.com = function(value) {
+ return this.comment(value);
+ };
+
+ XMLDocType.prototype.ins = function(target, value) {
+ return this.instruction(target, value);
+ };
+
+ XMLDocType.prototype.up = function() {
+ return this.root();
+ };
+
+ XMLDocType.prototype.doc = function() {
+ return this.document();
+ };
+
+ return XMLDocType;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLElement.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLElement.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLElement.js
new file mode 100644
index 0000000..d5814c8
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLElement.js
@@ -0,0 +1,212 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLAttribute, XMLElement, XMLNode, XMLProcessingInstruction, create, every, isFunction, isObject,
+ extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ hasProp = {}.hasOwnProperty;
+
+ create = require('lodash/object/create');
+
+ isObject = require('lodash/lang/isObject');
+
+ isFunction = require('lodash/lang/isFunction');
+
+ every = require('lodash/collection/every');
+
+ XMLNode = require('./XMLNode');
+
+ XMLAttribute = require('./XMLAttribute');
+
+ XMLProcessingInstruction = require('./XMLProcessingInstruction');
+
+ module.exports = XMLElement = (function(superClass) {
+ extend(XMLElement, superClass);
+
+ function XMLElement(parent, name, attributes) {
+ XMLElement.__super__.constructor.call(this, parent);
+ if (name == null) {
+ throw new Error("Missing element name");
+ }
+ this.name = this.stringify.eleName(name);
+ this.children = [];
+ this.instructions = [];
+ this.attributes = {};
+ if (attributes != null) {
+ this.attribute(attributes);
+ }
+ }
+
+ XMLElement.prototype.clone = function() {
+ var att, attName, clonedSelf, i, len, pi, ref, ref1;
+ clonedSelf = create(XMLElement.prototype, this);
+ if (clonedSelf.isRoot) {
+ clonedSelf.documentObject = null;
+ }
+ clonedSelf.attributes = {};
+ ref = this.attributes;
+ for (attName in ref) {
+ if (!hasProp.call(ref, attName)) continue;
+ att = ref[attName];
+ clonedSelf.attributes[attName] = att.clone();
+ }
+ clonedSelf.instructions = [];
+ ref1 = this.instructions;
+ for (i = 0, len = ref1.length; i < len; i++) {
+ pi = ref1[i];
+ clonedSelf.instructions.push(pi.clone());
+ }
+ clonedSelf.children = [];
+ this.children.forEach(function(child) {
+ var clonedChild;
+ clonedChild = child.clone();
+ clonedChild.parent = clonedSelf;
+ return clonedSelf.children.push(clonedChild);
+ });
+ return clonedSelf;
+ };
+
+ XMLElement.prototype.attribute = function(name, value) {
+ var attName, attValue;
+ if (name != null) {
+ name = name.valueOf();
+ }
+ if (isObject(name)) {
+ for (attName in name) {
+ if (!hasProp.call(name, attName)) continue;
+ attValue = name[attName];
+ this.attribute(attName, attValue);
+ }
+ } else {
+ if (isFunction(value)) {
+ value = value.apply();
+ }
+ if (!this.options.skipNullAttributes || (value != null)) {
+ this.attributes[name] = new XMLAttribute(this, name, value);
+ }
+ }
+ return this;
+ };
+
+ XMLElement.prototype.removeAttribute = function(name) {
+ var attName, i, len;
+ if (name == null) {
+ throw new Error("Missing attribute name");
+ }
+ name = name.valueOf();
+ if (Array.isArray(name)) {
+ for (i = 0, len = name.length; i < len; i++) {
+ attName = name[i];
+ delete this.attributes[attName];
+ }
+ } else {
+ delete this.attributes[name];
+ }
+ return this;
+ };
+
+ XMLElement.prototype.instruction = function(target, value) {
+ var i, insTarget, insValue, instruction, len;
+ if (target != null) {
+ target = target.valueOf();
+ }
+ if (value != null) {
+ value = value.valueOf();
+ }
+ if (Array.isArray(target)) {
+ for (i = 0, len = target.length; i < len; i++) {
+ insTarget = target[i];
+ this.instruction(insTarget);
+ }
+ } else if (isObject(target)) {
+ for (insTarget in target) {
+ if (!hasProp.call(target, insTarget)) continue;
+ insValue = target[insTarget];
+ this.instruction(insTarget, insValue);
+ }
+ } else {
+ if (isFunction(value)) {
+ value = value.apply();
+ }
+ instruction = new XMLProcessingInstruction(this, target, value);
+ this.instructions.push(instruction);
+ }
+ return this;
+ };
+
+ XMLElement.prototype.toString = function(options, level) {
+ var att, child, i, indent, instruction, j, len, len1, name, newline, offset, pretty, r, ref, ref1, ref2, ref3, ref4, ref5, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ ref3 = this.instructions;
+ for (i = 0, len = ref3.length; i < len; i++) {
+ instruction = ref3[i];
+ r += instruction.toString(options, level);
+ }
+ if (pretty) {
+ r += space;
+ }
+ r += '<' + this.name;
+ ref4 = this.attributes;
+ for (name in ref4) {
+ if (!hasProp.call(ref4, name)) continue;
+ att = ref4[name];
+ r += att.toString(options);
+ }
+ if (this.children.length === 0 || every(this.children, function(e) {
+ return e.value === '';
+ })) {
+ r += '/>';
+ if (pretty) {
+ r += newline;
+ }
+ } else if (pretty && this.children.length === 1 && (this.children[0].value != null)) {
+ r += '>';
+ r += this.children[0].value;
+ r += '</' + this.name + '>';
+ r += newline;
+ } else {
+ r += '>';
+ if (pretty) {
+ r += newline;
+ }
+ ref5 = this.children;
+ for (j = 0, len1 = ref5.length; j < len1; j++) {
+ child = ref5[j];
+ r += child.toString(options, level + 1);
+ }
+ if (pretty) {
+ r += space;
+ }
+ r += '</' + this.name + '>';
+ if (pretty) {
+ r += newline;
+ }
+ }
+ return r;
+ };
+
+ XMLElement.prototype.att = function(name, value) {
+ return this.attribute(name, value);
+ };
+
+ XMLElement.prototype.ins = function(target, value) {
+ return this.instruction(target, value);
+ };
+
+ XMLElement.prototype.a = function(name, value) {
+ return this.attribute(name, value);
+ };
+
+ XMLElement.prototype.i = function(target, value) {
+ return this.instruction(target, value);
+ };
+
+ return XMLElement;
+
+ })(XMLNode);
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLNode.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLNode.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLNode.js
new file mode 100644
index 0000000..592545a
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLNode.js
@@ -0,0 +1,331 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLElement, XMLNode, XMLRaw, XMLText, isEmpty, isFunction, isObject,
+ hasProp = {}.hasOwnProperty;
+
+ isObject = require('lodash/lang/isObject');
+
+ isFunction = require('lodash/lang/isFunction');
+
+ isEmpty = require('lodash/lang/isEmpty');
+
+ XMLElement = null;
+
+ XMLCData = null;
+
+ XMLComment = null;
+
+ XMLDeclaration = null;
+
+ XMLDocType = null;
+
+ XMLRaw = null;
+
+ XMLText = null;
+
+ module.exports = XMLNode = (function() {
+ function XMLNode(parent) {
+ this.parent = parent;
+ this.options = this.parent.options;
+ this.stringify = this.parent.stringify;
+ if (XMLElement === null) {
+ XMLElement = require('./XMLElement');
+ XMLCData = require('./XMLCData');
+ XMLComment = require('./XMLComment');
+ XMLDeclaration = require('./XMLDeclaration');
+ XMLDocType = require('./XMLDocType');
+ XMLRaw = require('./XMLRaw');
+ XMLText = require('./XMLText');
+ }
+ }
+
+ XMLNode.prototype.element = function(name, attributes, text) {
+ var childNode, item, j, k, key, lastChild, len, len1, ref, val;
+ lastChild = null;
+ if (attributes == null) {
+ attributes = {};
+ }
+ attributes = attributes.valueOf();
+ if (!isObject(attributes)) {
+ ref = [attributes, text], text = ref[0], attributes = ref[1];
+ }
+ if (name != null) {
+ name = name.valueOf();
+ }
+ if (Array.isArray(name)) {
+ for (j = 0, len = name.length; j < len; j++) {
+ item = name[j];
+ lastChild = this.element(item);
+ }
+ } else if (isFunction(name)) {
+ lastChild = this.element(name.apply());
+ } else if (isObject(name)) {
+ for (key in name) {
+ if (!hasProp.call(name, key)) continue;
+ val = name[key];
+ if (isFunction(val)) {
+ val = val.apply();
+ }
+ if ((isObject(val)) && (isEmpty(val))) {
+ val = null;
+ }
+ if (!this.options.ignoreDecorators && this.stringify.convertAttKey && key.indexOf(this.stringify.convertAttKey) === 0) {
+ lastChild = this.attribute(key.substr(this.stringify.convertAttKey.length), val);
+ } else if (!this.options.ignoreDecorators && this.stringify.convertPIKey && key.indexOf(this.stringify.convertPIKey) === 0) {
+ lastChild = this.instruction(key.substr(this.stringify.convertPIKey.length), val);
+ } else if (Array.isArray(val)) {
+ for (k = 0, len1 = val.length; k < len1; k++) {
+ item = val[k];
+ childNode = {};
+ childNode[key] = item;
+ lastChild = this.element(childNode);
+ }
+ } else if (isObject(val)) {
+ lastChild = this.element(key);
+ lastChild.element(val);
+ } else {
+ lastChild = this.element(key, val);
+ }
+ }
+ } else {
+ if (!this.options.ignoreDecorators && this.stringify.convertTextKey && name.indexOf(this.stringify.convertTextKey) === 0) {
+ lastChild = this.text(text);
+ } else if (!this.options.ignoreDecorators && this.stringify.convertCDataKey && name.indexOf(this.stringify.convertCDataKey) === 0) {
+ lastChild = this.cdata(text);
+ } else if (!this.options.ignoreDecorators && this.stringify.convertCommentKey && name.indexOf(this.stringify.convertCommentKey) === 0) {
+ lastChild = this.comment(text);
+ } else if (!this.options.ignoreDecorators && this.stringify.convertRawKey && name.indexOf(this.stringify.convertRawKey) === 0) {
+ lastChild = this.raw(text);
+ } else {
+ lastChild = this.node(name, attributes, text);
+ }
+ }
+ if (lastChild == null) {
+ throw new Error("Could not create any elements with: " + name);
+ }
+ return lastChild;
+ };
+
+ XMLNode.prototype.insertBefore = function(name, attributes, text) {
+ var child, i, removed;
+ if (this.isRoot) {
+ throw new Error("Cannot insert elements at root level");
+ }
+ i = this.parent.children.indexOf(this);
+ removed = this.parent.children.splice(i);
+ child = this.parent.element(name, attributes, text);
+ Array.prototype.push.apply(this.parent.children, removed);
+ return child;
+ };
+
+ XMLNode.prototype.insertAfter = function(name, attributes, text) {
+ var child, i, removed;
+ if (this.isRoot) {
+ throw new Error("Cannot insert elements at root level");
+ }
+ i = this.parent.children.indexOf(this);
+ removed = this.parent.children.splice(i + 1);
+ child = this.parent.element(name, attributes, text);
+ Array.prototype.push.apply(this.parent.children, removed);
+ return child;
+ };
+
+ XMLNode.prototype.remove = function() {
+ var i, ref;
+ if (this.isRoot) {
+ throw new Error("Cannot remove the root element");
+ }
+ i = this.parent.children.indexOf(this);
+ [].splice.apply(this.parent.children, [i, i - i + 1].concat(ref = [])), ref;
+ return this.parent;
+ };
+
+ XMLNode.prototype.node = function(name, attributes, text) {
+ var child, ref;
+ if (name != null) {
+ name = name.valueOf();
+ }
+ if (attributes == null) {
+ attributes = {};
+ }
+ attributes = attributes.valueOf();
+ if (!isObject(attributes)) {
+ ref = [attributes, text], text = ref[0], attributes = ref[1];
+ }
+ child = new XMLElement(this, name, attributes);
+ if (text != null) {
+ child.text(text);
+ }
+ this.children.push(child);
+ return child;
+ };
+
+ XMLNode.prototype.text = function(value) {
+ var child;
+ child = new XMLText(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLNode.prototype.cdata = function(value) {
+ var child;
+ child = new XMLCData(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLNode.prototype.comment = function(value) {
+ var child;
+ child = new XMLComment(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLNode.prototype.raw = function(value) {
+ var child;
+ child = new XMLRaw(this, value);
+ this.children.push(child);
+ return this;
+ };
+
+ XMLNode.prototype.declaration = function(version, encoding, standalone) {
+ var doc, xmldec;
+ doc = this.document();
+ xmldec = new XMLDeclaration(doc, version, encoding, standalone);
+ doc.xmldec = xmldec;
+ return doc.root();
+ };
+
+ XMLNode.prototype.doctype = function(pubID, sysID) {
+ var doc, doctype;
+ doc = this.document();
+ doctype = new XMLDocType(doc, pubID, sysID);
+ doc.doctype = doctype;
+ return doctype;
+ };
+
+ XMLNode.prototype.up = function() {
+ if (this.isRoot) {
+ throw new Error("The root node has no parent. Use doc() if you need to get the document object.");
+ }
+ return this.parent;
+ };
+
+ XMLNode.prototype.root = function() {
+ var child;
+ if (this.isRoot) {
+ return this;
+ }
+ child = this.parent;
+ while (!child.isRoot) {
+ child = child.parent;
+ }
+ return child;
+ };
+
+ XMLNode.prototype.document = function() {
+ return this.root().documentObject;
+ };
+
+ XMLNode.prototype.end = function(options) {
+ return this.document().toString(options);
+ };
+
+ XMLNode.prototype.prev = function() {
+ var i;
+ if (this.isRoot) {
+ throw new Error("Root node has no siblings");
+ }
+ i = this.parent.children.indexOf(this);
+ if (i < 1) {
+ throw new Error("Already at the first node");
+ }
+ return this.parent.children[i - 1];
+ };
+
+ XMLNode.prototype.next = function() {
+ var i;
+ if (this.isRoot) {
+ throw new Error("Root node has no siblings");
+ }
+ i = this.parent.children.indexOf(this);
+ if (i === -1 || i === this.parent.children.length - 1) {
+ throw new Error("Already at the last node");
+ }
+ return this.parent.children[i + 1];
+ };
+
+ XMLNode.prototype.importXMLBuilder = function(xmlbuilder) {
+ var clonedRoot;
+ clonedRoot = xmlbuilder.root().clone();
+ clonedRoot.parent = this;
+ clonedRoot.isRoot = false;
+ this.children.push(clonedRoot);
+ return this;
+ };
+
+ XMLNode.prototype.ele = function(name, attributes, text) {
+ return this.element(name, attributes, text);
+ };
+
+ XMLNode.prototype.nod = function(name, attributes, text) {
+ return this.node(name, attributes, text);
+ };
+
+ XMLNode.prototype.txt = function(value) {
+ return this.text(value);
+ };
+
+ XMLNode.prototype.dat = function(value) {
+ return this.cdata(value);
+ };
+
+ XMLNode.prototype.com = function(value) {
+ return this.comment(value);
+ };
+
+ XMLNode.prototype.doc = function() {
+ return this.document();
+ };
+
+ XMLNode.prototype.dec = function(version, encoding, standalone) {
+ return this.declaration(version, encoding, standalone);
+ };
+
+ XMLNode.prototype.dtd = function(pubID, sysID) {
+ return this.doctype(pubID, sysID);
+ };
+
+ XMLNode.prototype.e = function(name, attributes, text) {
+ return this.element(name, attributes, text);
+ };
+
+ XMLNode.prototype.n = function(name, attributes, text) {
+ return this.node(name, attributes, text);
+ };
+
+ XMLNode.prototype.t = function(value) {
+ return this.text(value);
+ };
+
+ XMLNode.prototype.d = function(value) {
+ return this.cdata(value);
+ };
+
+ XMLNode.prototype.c = function(value) {
+ return this.comment(value);
+ };
+
+ XMLNode.prototype.r = function(value) {
+ return this.raw(value);
+ };
+
+ XMLNode.prototype.u = function() {
+ return this.up();
+ };
+
+ return XMLNode;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js
new file mode 100644
index 0000000..f5d8c6c
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js
@@ -0,0 +1,51 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLProcessingInstruction, create;
+
+ create = require('lodash/object/create');
+
+ module.exports = XMLProcessingInstruction = (function() {
+ function XMLProcessingInstruction(parent, target, value) {
+ this.stringify = parent.stringify;
+ if (target == null) {
+ throw new Error("Missing instruction target");
+ }
+ this.target = this.stringify.insTarget(target);
+ if (value) {
+ this.value = this.stringify.insValue(value);
+ }
+ }
+
+ XMLProcessingInstruction.prototype.clone = function() {
+ return create(XMLProcessingInstruction.prototype, this);
+ };
+
+ XMLProcessingInstruction.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += '<?';
+ r += this.target;
+ if (this.value) {
+ r += ' ' + this.value;
+ }
+ r += '?>';
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLProcessingInstruction;
+
+ })();
+
+}).call(this);
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/222e5797/node_modules/plist/node_modules/xmlbuilder/lib/XMLRaw.js
----------------------------------------------------------------------
diff --git a/node_modules/plist/node_modules/xmlbuilder/lib/XMLRaw.js b/node_modules/plist/node_modules/xmlbuilder/lib/XMLRaw.js
new file mode 100644
index 0000000..499d0e2
--- /dev/null
+++ b/node_modules/plist/node_modules/xmlbuilder/lib/XMLRaw.js
@@ -0,0 +1,49 @@
+// Generated by CoffeeScript 1.9.1
+(function() {
+ var XMLNode, XMLRaw, create,
+ extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
+ hasProp = {}.hasOwnProperty;
+
+ create = require('lodash/object/create');
+
+ XMLNode = require('./XMLNode');
+
+ module.exports = XMLRaw = (function(superClass) {
+ extend(XMLRaw, superClass);
+
+ function XMLRaw(parent, text) {
+ XMLRaw.__super__.constructor.call(this, parent);
+ if (text == null) {
+ throw new Error("Missing raw text");
+ }
+ this.value = this.stringify.raw(text);
+ }
+
+ XMLRaw.prototype.clone = function() {
+ return create(XMLRaw.prototype, this);
+ };
+
+ XMLRaw.prototype.toString = function(options, level) {
+ var indent, newline, offset, pretty, r, ref, ref1, ref2, space;
+ pretty = (options != null ? options.pretty : void 0) || false;
+ indent = (ref = options != null ? options.indent : void 0) != null ? ref : ' ';
+ offset = (ref1 = options != null ? options.offset : void 0) != null ? ref1 : 0;
+ newline = (ref2 = options != null ? options.newline : void 0) != null ? ref2 : '\n';
+ level || (level = 0);
+ space = new Array(level + offset + 1).join(indent);
+ r = '';
+ if (pretty) {
+ r += space;
+ }
+ r += this.value;
+ if (pretty) {
+ r += newline;
+ }
+ return r;
+ };
+
+ return XMLRaw;
+
+ })(XMLNode);
+
+}).call(this);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org