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/20 22:10:07 UTC
[29/55] [abbrv] [partial] ios commit: Revert "CB-11445 rechecked in
node_modules using npm 2"
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/exec.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/exec.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/exec.js
deleted file mode 100644
index 7ccdbc0..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/exec.js
+++ /dev/null
@@ -1,181 +0,0 @@
-var common = require('./common');
-var _tempDir = require('./tempdir');
-var _pwd = require('./pwd');
-var path = require('path');
-var fs = require('fs');
-var child = require('child_process');
-
-// Hack to run child_process.exec() synchronously (sync avoids callback hell)
-// Uses a custom wait loop that checks for a flag file, created when the child process is done.
-// (Can't do a wait loop that checks for internal Node variables/messages as
-// Node is single-threaded; callbacks and other internal state changes are done in the
-// event loop).
-function execSync(cmd, opts) {
- var tempDir = _tempDir();
- var stdoutFile = path.resolve(tempDir+'/'+common.randomFileName()),
- codeFile = path.resolve(tempDir+'/'+common.randomFileName()),
- scriptFile = path.resolve(tempDir+'/'+common.randomFileName()),
- sleepFile = path.resolve(tempDir+'/'+common.randomFileName());
-
- var options = common.extend({
- silent: common.config.silent
- }, opts);
-
- var previousStdoutContent = '';
- // Echoes stdout changes from running process, if not silent
- function updateStdout() {
- if (options.silent || !fs.existsSync(stdoutFile))
- return;
-
- var stdoutContent = fs.readFileSync(stdoutFile, 'utf8');
- // No changes since last time?
- if (stdoutContent.length <= previousStdoutContent.length)
- return;
-
- process.stdout.write(stdoutContent.substr(previousStdoutContent.length));
- previousStdoutContent = stdoutContent;
- }
-
- function escape(str) {
- return (str+'').replace(/([\\"'])/g, "\\$1").replace(/\0/g, "\\0");
- }
-
- cmd += ' > '+stdoutFile+' 2>&1'; // works on both win/unix
-
- var script =
- "var child = require('child_process')," +
- " fs = require('fs');" +
- "child.exec('"+escape(cmd)+"', {env: process.env, maxBuffer: 20*1024*1024}, function(err) {" +
- " fs.writeFileSync('"+escape(codeFile)+"', err ? err.code.toString() : '0');" +
- "});";
-
- if (fs.existsSync(scriptFile)) common.unlinkSync(scriptFile);
- if (fs.existsSync(stdoutFile)) common.unlinkSync(stdoutFile);
- if (fs.existsSync(codeFile)) common.unlinkSync(codeFile);
-
- fs.writeFileSync(scriptFile, script);
- child.exec('"'+process.execPath+'" '+scriptFile, {
- env: process.env,
- cwd: _pwd(),
- maxBuffer: 20*1024*1024
- });
-
- // The wait loop
- // sleepFile is used as a dummy I/O op to mitigate unnecessary CPU usage
- // (tried many I/O sync ops, writeFileSync() seems to be only one that is effective in reducing
- // CPU usage, though apparently not so much on Windows)
- while (!fs.existsSync(codeFile)) { updateStdout(); fs.writeFileSync(sleepFile, 'a'); }
- while (!fs.existsSync(stdoutFile)) { updateStdout(); fs.writeFileSync(sleepFile, 'a'); }
-
- // At this point codeFile exists, but it's not necessarily flushed yet.
- // Keep reading it until it is.
- var code = parseInt('', 10);
- while (isNaN(code)) {
- code = parseInt(fs.readFileSync(codeFile, 'utf8'), 10);
- }
-
- var stdout = fs.readFileSync(stdoutFile, 'utf8');
-
- // No biggie if we can't erase the files now -- they're in a temp dir anyway
- try { common.unlinkSync(scriptFile); } catch(e) {}
- try { common.unlinkSync(stdoutFile); } catch(e) {}
- try { common.unlinkSync(codeFile); } catch(e) {}
- try { common.unlinkSync(sleepFile); } catch(e) {}
-
- // some shell return codes are defined as errors, per http://tldp.org/LDP/abs/html/exitcodes.html
- if (code === 1 || code === 2 || code >= 126) {
- common.error('', true); // unix/shell doesn't really give an error message after non-zero exit codes
- }
- // True if successful, false if not
- var obj = {
- code: code,
- output: stdout
- };
- return obj;
-} // execSync()
-
-// Wrapper around exec() to enable echoing output to console in real time
-function execAsync(cmd, opts, callback) {
- var output = '';
-
- var options = common.extend({
- silent: common.config.silent
- }, opts);
-
- var c = child.exec(cmd, {env: process.env, maxBuffer: 20*1024*1024}, function(err) {
- if (callback)
- callback(err ? err.code : 0, output);
- });
-
- c.stdout.on('data', function(data) {
- output += data;
- if (!options.silent)
- process.stdout.write(data);
- });
-
- c.stderr.on('data', function(data) {
- output += data;
- if (!options.silent)
- process.stdout.write(data);
- });
-
- return c;
-}
-
-//@
-//@ ### exec(command [, options] [, callback])
-//@ Available options (all `false` by default):
-//@
-//@ + `async`: Asynchronous execution. Defaults to true if a callback is provided.
-//@ + `silent`: Do not echo program output to console.
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ var version = exec('node --version', {silent:true}).output;
-//@
-//@ var child = exec('some_long_running_process', {async:true});
-//@ child.stdout.on('data', function(data) {
-//@ /* ... do something with data ... */
-//@ });
-//@
-//@ exec('some_long_running_process', function(code, output) {
-//@ console.log('Exit code:', code);
-//@ console.log('Program output:', output);
-//@ });
-//@ ```
-//@
-//@ Executes the given `command` _synchronously_, unless otherwise specified.
-//@ When in synchronous mode returns the object `{ code:..., output:... }`, containing the program's
-//@ `output` (stdout + stderr) and its exit `code`. Otherwise returns the child process object, and
-//@ the `callback` gets the arguments `(code, output)`.
-//@
-//@ **Note:** For long-lived processes, it's best to run `exec()` asynchronously as
-//@ the current synchronous implementation uses a lot of CPU. This should be getting
-//@ fixed soon.
-function _exec(command, options, callback) {
- if (!command)
- common.error('must specify command');
-
- // Callback is defined instead of options.
- if (typeof options === 'function') {
- callback = options;
- options = { async: true };
- }
-
- // Callback is defined with options.
- if (typeof options === 'object' && typeof callback === 'function') {
- options.async = true;
- }
-
- options = common.extend({
- silent: common.config.silent,
- async: false
- }, options);
-
- if (options.async)
- return execAsync(command, options, callback);
- else
- return execSync(command, options);
-}
-module.exports = _exec;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/find.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/find.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/find.js
deleted file mode 100644
index d9eeec2..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/find.js
+++ /dev/null
@@ -1,51 +0,0 @@
-var fs = require('fs');
-var common = require('./common');
-var _ls = require('./ls');
-
-//@
-//@ ### find(path [,path ...])
-//@ ### find(path_array)
-//@ Examples:
-//@
-//@ ```javascript
-//@ find('src', 'lib');
-//@ find(['src', 'lib']); // same as above
-//@ find('.').filter(function(file) { return file.match(/\.js$/); });
-//@ ```
-//@
-//@ Returns array of all files (however deep) in the given paths.
-//@
-//@ The main difference from `ls('-R', path)` is that the resulting file names
-//@ include the base directories, e.g. `lib/resources/file1` instead of just `file1`.
-function _find(options, paths) {
- if (!paths)
- common.error('no path specified');
- else if (typeof paths === 'object')
- paths = paths; // assume array
- else if (typeof paths === 'string')
- paths = [].slice.call(arguments, 1);
-
- var list = [];
-
- function pushFile(file) {
- if (common.platform === 'win')
- file = file.replace(/\\/g, '/');
- list.push(file);
- }
-
- // why not simply do ls('-R', paths)? because the output wouldn't give the base dirs
- // to get the base dir in the output, we need instead ls('-R', 'dir/*') for every directory
-
- paths.forEach(function(file) {
- pushFile(file);
-
- if (fs.statSync(file).isDirectory()) {
- _ls('-RA', file+'/*').forEach(function(subfile) {
- pushFile(subfile);
- });
- }
- });
-
- return list;
-}
-module.exports = _find;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/grep.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/grep.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/grep.js
deleted file mode 100644
index 00c7d6a..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/grep.js
+++ /dev/null
@@ -1,52 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-
-//@
-//@ ### grep([options ,] regex_filter, file [, file ...])
-//@ ### grep([options ,] regex_filter, file_array)
-//@ Available options:
-//@
-//@ + `-v`: Inverse the sense of the regex and print the lines not matching the criteria.
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ grep('-v', 'GLOBAL_VARIABLE', '*.js');
-//@ grep('GLOBAL_VARIABLE', '*.js');
-//@ ```
-//@
-//@ Reads input string from given files and returns a string containing all lines of the
-//@ file that match the given `regex_filter`. Wildcard `*` accepted.
-function _grep(options, regex, files) {
- options = common.parseOptions(options, {
- 'v': 'inverse'
- });
-
- if (!files)
- common.error('no paths given');
-
- if (typeof files === 'string')
- files = [].slice.call(arguments, 2);
- // if it's array leave it as it is
-
- files = common.expand(files);
-
- var grep = '';
- files.forEach(function(file) {
- if (!fs.existsSync(file)) {
- common.error('no such file or directory: ' + file, true);
- return;
- }
-
- var contents = fs.readFileSync(file, 'utf8'),
- lines = contents.split(/\r*\n/);
- lines.forEach(function(line) {
- var matched = line.match(regex);
- if ((options.inverse && !matched) || (!options.inverse && matched))
- grep += line + '\n';
- });
- });
-
- return common.ShellString(grep);
-}
-module.exports = _grep;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/ls.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/ls.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/ls.js
deleted file mode 100644
index 3345db4..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/ls.js
+++ /dev/null
@@ -1,126 +0,0 @@
-var path = require('path');
-var fs = require('fs');
-var common = require('./common');
-var _cd = require('./cd');
-var _pwd = require('./pwd');
-
-//@
-//@ ### ls([options ,] path [,path ...])
-//@ ### ls([options ,] path_array)
-//@ Available options:
-//@
-//@ + `-R`: recursive
-//@ + `-A`: all files (include files beginning with `.`, except for `.` and `..`)
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ ls('projs/*.js');
-//@ ls('-R', '/users/me', '/tmp');
-//@ ls('-R', ['/users/me', '/tmp']); // same as above
-//@ ```
-//@
-//@ Returns array of files in the given path, or in current directory if no path provided.
-function _ls(options, paths) {
- options = common.parseOptions(options, {
- 'R': 'recursive',
- 'A': 'all',
- 'a': 'all_deprecated'
- });
-
- if (options.all_deprecated) {
- // We won't support the -a option as it's hard to image why it's useful
- // (it includes '.' and '..' in addition to '.*' files)
- // For backwards compatibility we'll dump a deprecated message and proceed as before
- common.log('ls: Option -a is deprecated. Use -A instead');
- options.all = true;
- }
-
- if (!paths)
- paths = ['.'];
- else if (typeof paths === 'object')
- paths = paths; // assume array
- else if (typeof paths === 'string')
- paths = [].slice.call(arguments, 1);
-
- var list = [];
-
- // Conditionally pushes file to list - returns true if pushed, false otherwise
- // (e.g. prevents hidden files to be included unless explicitly told so)
- function pushFile(file, query) {
- // hidden file?
- if (path.basename(file)[0] === '.') {
- // not explicitly asking for hidden files?
- if (!options.all && !(path.basename(query)[0] === '.' && path.basename(query).length > 1))
- return false;
- }
-
- if (common.platform === 'win')
- file = file.replace(/\\/g, '/');
-
- list.push(file);
- return true;
- }
-
- paths.forEach(function(p) {
- if (fs.existsSync(p)) {
- var stats = fs.statSync(p);
- // Simple file?
- if (stats.isFile()) {
- pushFile(p, p);
- return; // continue
- }
-
- // Simple dir?
- if (stats.isDirectory()) {
- // Iterate over p contents
- fs.readdirSync(p).forEach(function(file) {
- if (!pushFile(file, p))
- return;
-
- // Recursive?
- if (options.recursive) {
- var oldDir = _pwd();
- _cd('', p);
- if (fs.statSync(file).isDirectory())
- list = list.concat(_ls('-R'+(options.all?'A':''), file+'/*'));
- _cd('', oldDir);
- }
- });
- return; // continue
- }
- }
-
- // p does not exist - possible wildcard present
-
- var basename = path.basename(p);
- var dirname = path.dirname(p);
- // Wildcard present on an existing dir? (e.g. '/tmp/*.js')
- if (basename.search(/\*/) > -1 && fs.existsSync(dirname) && fs.statSync(dirname).isDirectory) {
- // Escape special regular expression chars
- var regexp = basename.replace(/(\^|\$|\(|\)|<|>|\[|\]|\{|\}|\.|\+|\?)/g, '\\$1');
- // Translates wildcard into regex
- regexp = '^' + regexp.replace(/\*/g, '.*') + '$';
- // Iterate over directory contents
- fs.readdirSync(dirname).forEach(function(file) {
- if (file.match(new RegExp(regexp))) {
- if (!pushFile(path.normalize(dirname+'/'+file), basename))
- return;
-
- // Recursive?
- if (options.recursive) {
- var pp = dirname + '/' + file;
- if (fs.lstatSync(pp).isDirectory())
- list = list.concat(_ls('-R'+(options.all?'A':''), pp+'/*'));
- } // recursive
- } // if file matches
- }); // forEach
- return;
- }
-
- common.error('no such file or directory: ' + p, true);
- });
-
- return list;
-}
-module.exports = _ls;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mkdir.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mkdir.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mkdir.js
deleted file mode 100644
index 5a7088f..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mkdir.js
+++ /dev/null
@@ -1,68 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-var path = require('path');
-
-// Recursively creates 'dir'
-function mkdirSyncRecursive(dir) {
- var baseDir = path.dirname(dir);
-
- // Base dir exists, no recursion necessary
- if (fs.existsSync(baseDir)) {
- fs.mkdirSync(dir, parseInt('0777', 8));
- return;
- }
-
- // Base dir does not exist, go recursive
- mkdirSyncRecursive(baseDir);
-
- // Base dir created, can create dir
- fs.mkdirSync(dir, parseInt('0777', 8));
-}
-
-//@
-//@ ### mkdir([options ,] dir [, dir ...])
-//@ ### mkdir([options ,] dir_array)
-//@ Available options:
-//@
-//@ + `p`: full path (will create intermediate dirs if necessary)
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ mkdir('-p', '/tmp/a/b/c/d', '/tmp/e/f/g');
-//@ mkdir('-p', ['/tmp/a/b/c/d', '/tmp/e/f/g']); // same as above
-//@ ```
-//@
-//@ Creates directories.
-function _mkdir(options, dirs) {
- options = common.parseOptions(options, {
- 'p': 'fullpath'
- });
- if (!dirs)
- common.error('no paths given');
-
- if (typeof dirs === 'string')
- dirs = [].slice.call(arguments, 1);
- // if it's array leave it as it is
-
- dirs.forEach(function(dir) {
- if (fs.existsSync(dir)) {
- if (!options.fullpath)
- common.error('path already exists: ' + dir, true);
- return; // skip dir
- }
-
- // Base dir does not exist, and no -p option given
- var baseDir = path.dirname(dir);
- if (!fs.existsSync(baseDir) && !options.fullpath) {
- common.error('no such file or directory: ' + baseDir, true);
- return; // skip dir
- }
-
- if (options.fullpath)
- mkdirSyncRecursive(dir);
- else
- fs.mkdirSync(dir, parseInt('0777', 8));
- });
-} // mkdir
-module.exports = _mkdir;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mv.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mv.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mv.js
deleted file mode 100644
index 11f9607..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/mv.js
+++ /dev/null
@@ -1,80 +0,0 @@
-var fs = require('fs');
-var path = require('path');
-var common = require('./common');
-
-//@
-//@ ### mv(source [, source ...], dest')
-//@ ### mv(source_array, dest')
-//@ Available options:
-//@
-//@ + `f`: force
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ mv('-f', 'file', 'dir/');
-//@ mv('file1', 'file2', 'dir/');
-//@ mv(['file1', 'file2'], 'dir/'); // same as above
-//@ ```
-//@
-//@ Moves files. The wildcard `*` is accepted.
-function _mv(options, sources, dest) {
- options = common.parseOptions(options, {
- 'f': 'force'
- });
-
- // Get sources, dest
- if (arguments.length < 3) {
- common.error('missing <source> and/or <dest>');
- } else if (arguments.length > 3) {
- sources = [].slice.call(arguments, 1, arguments.length - 1);
- dest = arguments[arguments.length - 1];
- } else if (typeof sources === 'string') {
- sources = [sources];
- } else if ('length' in sources) {
- sources = sources; // no-op for array
- } else {
- common.error('invalid arguments');
- }
-
- sources = common.expand(sources);
-
- var exists = fs.existsSync(dest),
- stats = exists && fs.statSync(dest);
-
- // Dest is not existing dir, but multiple sources given
- if ((!exists || !stats.isDirectory()) && sources.length > 1)
- common.error('dest is not a directory (too many sources)');
-
- // Dest is an existing file, but no -f given
- if (exists && stats.isFile() && !options.force)
- common.error('dest file already exists: ' + dest);
-
- sources.forEach(function(src) {
- if (!fs.existsSync(src)) {
- common.error('no such file or directory: '+src, true);
- return; // skip file
- }
-
- // If here, src exists
-
- // When copying to '/path/dir':
- // thisDest = '/path/dir/file1'
- var thisDest = dest;
- if (fs.existsSync(dest) && fs.statSync(dest).isDirectory())
- thisDest = path.normalize(dest + '/' + path.basename(src));
-
- if (fs.existsSync(thisDest) && !options.force) {
- common.error('dest file already exists: ' + thisDest, true);
- return; // skip file
- }
-
- if (path.resolve(src) === path.dirname(path.resolve(thisDest))) {
- common.error('cannot move to self: '+src, true);
- return; // skip file
- }
-
- fs.renameSync(src, thisDest);
- }); // forEach(src)
-} // mv
-module.exports = _mv;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/popd.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/popd.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/popd.js
deleted file mode 100644
index 11ea24f..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/popd.js
+++ /dev/null
@@ -1 +0,0 @@
-// see dirs.js
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pushd.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pushd.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pushd.js
deleted file mode 100644
index 11ea24f..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pushd.js
+++ /dev/null
@@ -1 +0,0 @@
-// see dirs.js
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pwd.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pwd.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pwd.js
deleted file mode 100644
index 41727bb..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/pwd.js
+++ /dev/null
@@ -1,11 +0,0 @@
-var path = require('path');
-var common = require('./common');
-
-//@
-//@ ### pwd()
-//@ Returns the current directory.
-function _pwd(options) {
- var pwd = path.resolve(process.cwd());
- return common.ShellString(pwd);
-}
-module.exports = _pwd;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/rm.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/rm.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/rm.js
deleted file mode 100644
index 3abe6e1..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/rm.js
+++ /dev/null
@@ -1,145 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-
-// Recursively removes 'dir'
-// Adapted from https://github.com/ryanmcgrath/wrench-js
-//
-// Copyright (c) 2010 Ryan McGrath
-// Copyright (c) 2012 Artur Adib
-//
-// Licensed under the MIT License
-// http://www.opensource.org/licenses/mit-license.php
-function rmdirSyncRecursive(dir, force) {
- var files;
-
- files = fs.readdirSync(dir);
-
- // Loop through and delete everything in the sub-tree after checking it
- for(var i = 0; i < files.length; i++) {
- var file = dir + "/" + files[i],
- currFile = fs.lstatSync(file);
-
- if(currFile.isDirectory()) { // Recursive function back to the beginning
- rmdirSyncRecursive(file, force);
- }
-
- else if(currFile.isSymbolicLink()) { // Unlink symlinks
- if (force || isWriteable(file)) {
- try {
- common.unlinkSync(file);
- } catch (e) {
- common.error('could not remove file (code '+e.code+'): ' + file, true);
- }
- }
- }
-
- else // Assume it's a file - perhaps a try/catch belongs here?
- if (force || isWriteable(file)) {
- try {
- common.unlinkSync(file);
- } catch (e) {
- common.error('could not remove file (code '+e.code+'): ' + file, true);
- }
- }
- }
-
- // Now that we know everything in the sub-tree has been deleted, we can delete the main directory.
- // Huzzah for the shopkeep.
-
- var result;
- try {
- result = fs.rmdirSync(dir);
- } catch(e) {
- common.error('could not remove directory (code '+e.code+'): ' + dir, true);
- }
-
- return result;
-} // rmdirSyncRecursive
-
-// Hack to determine if file has write permissions for current user
-// Avoids having to check user, group, etc, but it's probably slow
-function isWriteable(file) {
- var writePermission = true;
- try {
- var __fd = fs.openSync(file, 'a');
- fs.closeSync(__fd);
- } catch(e) {
- writePermission = false;
- }
-
- return writePermission;
-}
-
-//@
-//@ ### rm([options ,] file [, file ...])
-//@ ### rm([options ,] file_array)
-//@ Available options:
-//@
-//@ + `-f`: force
-//@ + `-r, -R`: recursive
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ rm('-rf', '/tmp/*');
-//@ rm('some_file.txt', 'another_file.txt');
-//@ rm(['some_file.txt', 'another_file.txt']); // same as above
-//@ ```
-//@
-//@ Removes files. The wildcard `*` is accepted.
-function _rm(options, files) {
- options = common.parseOptions(options, {
- 'f': 'force',
- 'r': 'recursive',
- 'R': 'recursive'
- });
- if (!files)
- common.error('no paths given');
-
- if (typeof files === 'string')
- files = [].slice.call(arguments, 1);
- // if it's array leave it as it is
-
- files = common.expand(files);
-
- files.forEach(function(file) {
- if (!fs.existsSync(file)) {
- // Path does not exist, no force flag given
- if (!options.force)
- common.error('no such file or directory: '+file, true);
-
- return; // skip file
- }
-
- // If here, path exists
-
- var stats = fs.lstatSync(file);
- if (stats.isFile() || stats.isSymbolicLink()) {
-
- // Do not check for file writing permissions
- if (options.force) {
- common.unlinkSync(file);
- return;
- }
-
- if (isWriteable(file))
- common.unlinkSync(file);
- else
- common.error('permission denied: '+file, true);
-
- return;
- } // simple file
-
- // Path is an existing directory, but no -r flag given
- if (stats.isDirectory() && !options.recursive) {
- common.error('path is a directory', true);
- return; // skip path
- }
-
- // Recursively remove existing directory
- if (stats.isDirectory() && options.recursive) {
- rmdirSyncRecursive(file, options.force);
- }
- }); // forEach(file)
-} // rm
-module.exports = _rm;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/sed.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/sed.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/sed.js
deleted file mode 100644
index 9783252..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/sed.js
+++ /dev/null
@@ -1,43 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-
-//@
-//@ ### sed([options ,] search_regex, replace_str, file)
-//@ Available options:
-//@
-//@ + `-i`: Replace contents of 'file' in-place. _Note that no backups will be created!_
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ sed('-i', 'PROGRAM_VERSION', 'v0.1.3', 'source.js');
-//@ sed(/.*DELETE_THIS_LINE.*\n/, '', 'source.js');
-//@ ```
-//@
-//@ Reads an input string from `file` and performs a JavaScript `replace()` on the input
-//@ using the given search regex and replacement string. Returns the new string after replacement.
-function _sed(options, regex, replacement, file) {
- options = common.parseOptions(options, {
- 'i': 'inplace'
- });
-
- if (typeof replacement === 'string')
- replacement = replacement; // no-op
- else if (typeof replacement === 'number')
- replacement = replacement.toString(); // fallback
- else
- common.error('invalid replacement string');
-
- if (!file)
- common.error('no file given');
-
- if (!fs.existsSync(file))
- common.error('no such file or directory: ' + file);
-
- var result = fs.readFileSync(file, 'utf8').replace(regex, replacement);
- if (options.inplace)
- fs.writeFileSync(file, result, 'utf8');
-
- return common.ShellString(result);
-}
-module.exports = _sed;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/tempdir.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/tempdir.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/tempdir.js
deleted file mode 100644
index 45953c2..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/tempdir.js
+++ /dev/null
@@ -1,56 +0,0 @@
-var common = require('./common');
-var os = require('os');
-var fs = require('fs');
-
-// Returns false if 'dir' is not a writeable directory, 'dir' otherwise
-function writeableDir(dir) {
- if (!dir || !fs.existsSync(dir))
- return false;
-
- if (!fs.statSync(dir).isDirectory())
- return false;
-
- var testFile = dir+'/'+common.randomFileName();
- try {
- fs.writeFileSync(testFile, ' ');
- common.unlinkSync(testFile);
- return dir;
- } catch (e) {
- return false;
- }
-}
-
-
-//@
-//@ ### tempdir()
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ var tmp = tempdir(); // "/tmp" for most *nix platforms
-//@ ```
-//@
-//@ Searches and returns string containing a writeable, platform-dependent temporary directory.
-//@ Follows Python's [tempfile algorithm](http://docs.python.org/library/tempfile.html#tempfile.tempdir).
-function _tempDir() {
- var state = common.state;
- if (state.tempDir)
- return state.tempDir; // from cache
-
- state.tempDir = writeableDir(os.tempDir && os.tempDir()) || // node 0.8+
- writeableDir(process.env['TMPDIR']) ||
- writeableDir(process.env['TEMP']) ||
- writeableDir(process.env['TMP']) ||
- writeableDir(process.env['Wimp$ScrapDir']) || // RiscOS
- writeableDir('C:\\TEMP') || // Windows
- writeableDir('C:\\TMP') || // Windows
- writeableDir('\\TEMP') || // Windows
- writeableDir('\\TMP') || // Windows
- writeableDir('/tmp') ||
- writeableDir('/var/tmp') ||
- writeableDir('/usr/tmp') ||
- writeableDir('.'); // last resort
-
- return state.tempDir;
-}
-module.exports = _tempDir;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/test.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/test.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/test.js
deleted file mode 100644
index 8a4ac7d..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/test.js
+++ /dev/null
@@ -1,85 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-
-//@
-//@ ### test(expression)
-//@ Available expression primaries:
-//@
-//@ + `'-b', 'path'`: true if path is a block device
-//@ + `'-c', 'path'`: true if path is a character device
-//@ + `'-d', 'path'`: true if path is a directory
-//@ + `'-e', 'path'`: true if path exists
-//@ + `'-f', 'path'`: true if path is a regular file
-//@ + `'-L', 'path'`: true if path is a symboilc link
-//@ + `'-p', 'path'`: true if path is a pipe (FIFO)
-//@ + `'-S', 'path'`: true if path is a socket
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ if (test('-d', path)) { /* do something with dir */ };
-//@ if (!test('-f', path)) continue; // skip if it's a regular file
-//@ ```
-//@
-//@ Evaluates expression using the available primaries and returns corresponding value.
-function _test(options, path) {
- if (!path)
- common.error('no path given');
-
- // hack - only works with unary primaries
- options = common.parseOptions(options, {
- 'b': 'block',
- 'c': 'character',
- 'd': 'directory',
- 'e': 'exists',
- 'f': 'file',
- 'L': 'link',
- 'p': 'pipe',
- 'S': 'socket'
- });
-
- var canInterpret = false;
- for (var key in options)
- if (options[key] === true) {
- canInterpret = true;
- break;
- }
-
- if (!canInterpret)
- common.error('could not interpret expression');
-
- if (options.link) {
- try {
- return fs.lstatSync(path).isSymbolicLink();
- } catch(e) {
- return false;
- }
- }
-
- if (!fs.existsSync(path))
- return false;
-
- if (options.exists)
- return true;
-
- var stats = fs.statSync(path);
-
- if (options.block)
- return stats.isBlockDevice();
-
- if (options.character)
- return stats.isCharacterDevice();
-
- if (options.directory)
- return stats.isDirectory();
-
- if (options.file)
- return stats.isFile();
-
- if (options.pipe)
- return stats.isFIFO();
-
- if (options.socket)
- return stats.isSocket();
-} // test
-module.exports = _test;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/to.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/to.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/to.js
deleted file mode 100644
index f029999..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/to.js
+++ /dev/null
@@ -1,29 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-var path = require('path');
-
-//@
-//@ ### 'string'.to(file)
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ cat('input.txt').to('output.txt');
-//@ ```
-//@
-//@ Analogous to the redirection operator `>` in Unix, but works with JavaScript strings (such as
-//@ those returned by `cat`, `grep`, etc). _Like Unix redirections, `to()` will overwrite any existing file!_
-function _to(options, file) {
- if (!file)
- common.error('wrong arguments');
-
- if (!fs.existsSync( path.dirname(file) ))
- common.error('no such file or directory: ' + path.dirname(file));
-
- try {
- fs.writeFileSync(file, this.toString(), 'utf8');
- } catch(e) {
- common.error('could not write to file (code '+e.code+'): '+file, true);
- }
-}
-module.exports = _to;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/toEnd.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/toEnd.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/toEnd.js
deleted file mode 100644
index f6d099d..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/toEnd.js
+++ /dev/null
@@ -1,29 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-var path = require('path');
-
-//@
-//@ ### 'string'.toEnd(file)
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ cat('input.txt').toEnd('output.txt');
-//@ ```
-//@
-//@ Analogous to the redirect-and-append operator `>>` in Unix, but works with JavaScript strings (such as
-//@ those returned by `cat`, `grep`, etc).
-function _toEnd(options, file) {
- if (!file)
- common.error('wrong arguments');
-
- if (!fs.existsSync( path.dirname(file) ))
- common.error('no such file or directory: ' + path.dirname(file));
-
- try {
- fs.appendFileSync(file, this.toString(), 'utf8');
- } catch(e) {
- common.error('could not append to file (code '+e.code+'): '+file, true);
- }
-}
-module.exports = _toEnd;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/which.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/which.js b/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/which.js
deleted file mode 100644
index fadb96c..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/shelljs/src/which.js
+++ /dev/null
@@ -1,79 +0,0 @@
-var common = require('./common');
-var fs = require('fs');
-var path = require('path');
-
-// Cross-platform method for splitting environment PATH variables
-function splitPath(p) {
- for (i=1;i<2;i++) {}
-
- if (!p)
- return [];
-
- if (common.platform === 'win')
- return p.split(';');
- else
- return p.split(':');
-}
-
-//@
-//@ ### which(command)
-//@
-//@ Examples:
-//@
-//@ ```javascript
-//@ var nodeExec = which('node');
-//@ ```
-//@
-//@ Searches for `command` in the system's PATH. On Windows looks for `.exe`, `.cmd`, and `.bat` extensions.
-//@ Returns string containing the absolute path to the command.
-function _which(options, cmd) {
- if (!cmd)
- common.error('must specify command');
-
- var pathEnv = process.env.path || process.env.Path || process.env.PATH,
- pathArray = splitPath(pathEnv),
- where = null;
-
- // No relative/absolute paths provided?
- if (cmd.search(/\//) === -1) {
- // Search for command in PATH
- pathArray.forEach(function(dir) {
- if (where)
- return; // already found it
-
- var attempt = path.resolve(dir + '/' + cmd);
- if (fs.existsSync(attempt)) {
- where = attempt;
- return;
- }
-
- if (common.platform === 'win') {
- var baseAttempt = attempt;
- attempt = baseAttempt + '.exe';
- if (fs.existsSync(attempt)) {
- where = attempt;
- return;
- }
- attempt = baseAttempt + '.cmd';
- if (fs.existsSync(attempt)) {
- where = attempt;
- return;
- }
- attempt = baseAttempt + '.bat';
- if (fs.existsSync(attempt)) {
- where = attempt;
- return;
- }
- } // if 'win'
- });
- }
-
- // Command not found anywhere?
- if (!fs.existsSync(cmd) && !where)
- return null;
-
- where = where || path.resolve(cmd);
-
- return common.ShellString(where);
-}
-module.exports = _which;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/tail/README.md
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/README.md b/node_modules/ios-sim/node_modules/simctl/node_modules/tail/README.md
deleted file mode 100644
index eec282c..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/README.md
+++ /dev/null
@@ -1,72 +0,0 @@
-#tail
-
-To install:
-
-```bash
-npm install tail
-```
-
-#Use:
-```javascript
-Tail = require('tail').Tail;
-
-tail = new Tail("fileToTail");
-
-tail.on("line", function(data) {
- console.log(data);
-});
-
-tail.on("error", function(error) {
- console.log('ERROR: ', error);
-});
-````
-
-Tail constructor accepts few parameters:
-
-```javascript
-
-var fileToTail = "/path/to/fileToTail.txt";
-var lineSeparator= "\n";
-var fromBeginning = false;
-var watchOptions = {}; \\ as per node fs.watch documentations
-
-new Tail(fileToTail, lineSeparator, watchOptions,fromBeginning)
-```
-
-* `fileToTail` is the name (inclusive of the path) of the file to tail
-* `lineSeparator` is the line separator token (default "\n")
-* `watchOptions` is the full set of options that can be passed to `fs.watch` as per node documentation (default: {})
-* `fromBeginning` force the tail of the file from the very beginning of it instead of from the first new line that will be appended(default: "\n")
-
-The only mandatory one is the first, i.e. the the file you want to tail.
-
-Tail emits two type of events:
-
-* line
-```
-function(data){}
-```
-* error
-```
-function(exception){}
-```
-
-If you simply want to stop the tail:
-
-```javascript
-tail.unwatch()
-```
-
-And to start watching again:
-```javascript
-tail.watch()
-```
-
-#Want to fork ?
-
-Tail is written in [CoffeeScript](http://jashkenas.github.com/coffee-script/).
-
-The Cakefile generates the javascript that is then published to npm.
-
-#License
-MIT. Please see License file for more details.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/tail/package.json
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/package.json b/node_modules/ios-sim/node_modules/simctl/node_modules/tail/package.json
deleted file mode 100644
index 95e9edd..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/package.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "author": {
- "name": "Luca Grulla"
- },
- "contributors": [
- {
- "name": "Luca Grulla"
- },
- {
- "name": "Tom Hall"
- },
- {
- "name": "Andy Kent"
- }
- ],
- "name": "tail",
- "description": "tail a file in node",
- "version": "0.4.0",
- "repository": {
- "type": "git",
- "url": "git://github.com/lucagrulla/node-tail.git"
- },
- "main": "tail",
- "engines": {
- "node": ">= 0.4.0"
- },
- "dependencies": {},
- "devDependencies": {
- "coffee-script": "1.7.1"
- },
- "bugs": {
- "url": "https://github.com/lucagrulla/node-tail/issues"
- },
- "homepage": "https://github.com/lucagrulla/node-tail",
- "_id": "tail@0.4.0",
- "scripts": {},
- "_shasum": "d29de72750cc99db1e053aff13c359ecfb713002",
- "_from": "tail@>=0.4.0 <0.5.0",
- "_npmVersion": "1.4.15",
- "_npmUser": {
- "name": "lucagrulla",
- "email": "luca.grulla@gmail.com"
- },
- "maintainers": [
- {
- "name": "lucagrulla",
- "email": "luca.grulla@gmail.com"
- }
- ],
- "dist": {
- "shasum": "d29de72750cc99db1e053aff13c359ecfb713002",
- "tarball": "https://registry.npmjs.org/tail/-/tail-0.4.0.tgz"
- },
- "directories": {},
- "_resolved": "http://registry.npmjs.org/tail/-/tail-0.4.0.tgz",
- "readme": "ERROR: No README data found!"
-}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/node_modules/tail/tail.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/tail.js b/node_modules/ios-sim/node_modules/simctl/node_modules/tail/tail.js
deleted file mode 100644
index 061ceab..0000000
--- a/node_modules/ios-sim/node_modules/simctl/node_modules/tail/tail.js
+++ /dev/null
@@ -1,147 +0,0 @@
-// Generated by CoffeeScript 1.6.2
-var Tail, environment, events, fs,
- __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
- __hasProp = {}.hasOwnProperty,
- __extends = 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; };
-
-events = require("events");
-
-fs = require('fs');
-
-environment = process.env['NODE_ENV'] || 'development';
-
-Tail = (function(_super) {
- __extends(Tail, _super);
-
- Tail.prototype.readBlock = function() {
- var block, stream,
- _this = this;
-
- if (this.queue.length >= 1) {
- block = this.queue.shift();
- if (block.end > block.start) {
- stream = fs.createReadStream(this.filename, {
- start: block.start,
- end: block.end - 1,
- encoding: "utf-8"
- });
- stream.on('error', function(error) {
- console.log("Tail error:" + error);
- return _this.emit('error', error);
- });
- stream.on('end', function() {
- if (_this.queue.length >= 1) {
- return _this.internalDispatcher.emit("next");
- }
- });
- return stream.on('data', function(data) {
- var chunk, parts, _i, _len, _results;
-
- _this.buffer += data;
- parts = _this.buffer.split(_this.separator);
- _this.buffer = parts.pop();
- _results = [];
- for (_i = 0, _len = parts.length; _i < _len; _i++) {
- chunk = parts[_i];
- _results.push(_this.emit("line", chunk));
- }
- return _results;
- });
- }
- }
- };
-
- function Tail(filename, separator, fsWatchOptions, frombeginning) {
- var stats,
- _this = this;
-
- this.filename = filename;
- this.separator = separator != null ? separator : '\n';
- this.fsWatchOptions = fsWatchOptions != null ? fsWatchOptions : {};
- this.frombeginning = frombeginning != null ? frombeginning : false;
- this.readBlock = __bind(this.readBlock, this);
- this.buffer = '';
- this.internalDispatcher = new events.EventEmitter();
- this.queue = [];
- this.isWatching = false;
- stats = fs.statSync(this.filename);
- this.internalDispatcher.on('next', function() {
- return _this.readBlock();
- });
- this.pos = this.frombeginning ? 0 : stats.size;
- this.watch();
- }
-
- Tail.prototype.watch = function() {
- var _this = this;
-
- if (this.isWatching) {
- return;
- }
- this.isWatching = true;
- if (fs.watch) {
- return this.watcher = fs.watch(this.filename, this.fsWatchOptions, function(e) {
- return _this.watchEvent(e);
- });
- } else {
- return fs.watchFile(this.filename, this.fsWatchOptions, function(curr, prev) {
- return _this.watchFileEvent(curr, prev);
- });
- }
- };
-
- Tail.prototype.watchEvent = function(e) {
- var stats,
- _this = this;
-
- if (e === 'change') {
- stats = fs.statSync(this.filename);
- if (stats.size < this.pos) {
- this.pos = stats.size;
- }
- if (stats.size > this.pos) {
- this.queue.push({
- start: this.pos,
- end: stats.size
- });
- this.pos = stats.size;
- if (this.queue.length === 1) {
- return this.internalDispatcher.emit("next");
- }
- }
- } else if (e === 'rename') {
- this.unwatch();
- return setTimeout((function() {
- return _this.watch();
- }), 1000);
- }
- };
-
- Tail.prototype.watchFileEvent = function(curr, prev) {
- if (curr.size > prev.size) {
- this.queue.push({
- start: prev.size,
- end: curr.size
- });
- if (this.queue.length === 1) {
- return this.internalDispatcher.emit("next");
- }
- }
- };
-
- Tail.prototype.unwatch = function() {
- if (fs.watch && this.watcher) {
- this.watcher.close();
- this.pos = 0;
- } else {
- fs.unwatchFile(this.filename);
- }
- this.isWatching = false;
- return this.queue = [];
- };
-
- return Tail;
-
-})(events.EventEmitter);
-
-exports.Tail = Tail;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/package.json
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/package.json b/node_modules/ios-sim/node_modules/simctl/package.json
deleted file mode 100644
index 82b5432..0000000
--- a/node_modules/ios-sim/node_modules/simctl/package.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "name": "simctl",
- "version": "0.0.9",
- "description": "library for Xcode simctl utility on OS X",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/phonegap/simctl.git"
- },
- "main": "simctl.js",
- "dependencies": {
- "shelljs": "^0.2.6",
- "tail": "^0.4.0"
- },
- "keywords": [
- "simctl",
- "iOS Simulator"
- ],
- "author": {
- "name": "Shazron Abdullah"
- },
- "license": "MIT",
- "gitHead": "34426c719130a73b83af65f50a11a46267a5ad0b",
- "bugs": {
- "url": "https://github.com/phonegap/simctl/issues"
- },
- "homepage": "https://github.com/phonegap/simctl#readme",
- "_id": "simctl@0.0.9",
- "scripts": {},
- "_shasum": "cd36c9d3a1ae1709645f97e0ce205cc3cac6fd1b",
- "_from": "simctl@>=0.0.9 <0.0.10",
- "_npmVersion": "2.11.3",
- "_nodeVersion": "0.12.7",
- "_npmUser": {
- "name": "shazron",
- "email": "shazron@gmail.com"
- },
- "dist": {
- "shasum": "cd36c9d3a1ae1709645f97e0ce205cc3cac6fd1b",
- "tarball": "https://registry.npmjs.org/simctl/-/simctl-0.0.9.tgz"
- },
- "maintainers": [
- {
- "name": "shazron",
- "email": "shazron@gmail.com"
- }
- ],
- "_npmOperationalInternal": {
- "host": "packages-13-west.internal.npmjs.com",
- "tmp": "tmp/simctl-0.0.9.tgz_1458354134802_0.09800405637361109"
- },
- "directories": {},
- "_resolved": "http://registry.npmjs.org/simctl/-/simctl-0.0.9.tgz",
- "readme": "ERROR: No README data found!"
-}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/node_modules/simctl/simctl.js
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/node_modules/simctl/simctl.js b/node_modules/ios-sim/node_modules/simctl/simctl.js
deleted file mode 100644
index 91512ed..0000000
--- a/node_modules/ios-sim/node_modules/simctl/simctl.js
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
-The MIT License (MIT)
-
-Copyright (c) 2014 Shazron Abdullah.
-
-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.
-*/
-
-var shell = require('shelljs'),
- path = require('path'),
- util = require('util'),
- Tail = require('tail').Tail,
- SimCtlExtensions = require('./lib/simctl-extensions'),
- SimCtlListParser = require('./lib/simctl-list-parser');
-
-
-exports = module.exports = {
-
- set noxpc(b) {
- this._noxpc = b;
- },
-
- get noxpc() {
- return this._noxpc;
- },
-
- extensions : SimCtlExtensions,
-
- check_prerequisites : function() {
- var command = util.format('xcrun simctl help');
- var obj = shell.exec(command, {silent: true});
-
- if (obj.code !== 0) {
- obj.output = 'simctl was not found.\n';
- obj.output += 'Check that you have Xcode 6.x installed:\n';
- obj.output += '\txcodebuild --version';
- obj.output += 'Check that you have Xcode 6.x selected:\n';
- obj.output += '\txcode-select --print-path';
- }
-
- return obj;
- },
-
- create : function(name, device_type_id, runtime_id) {
- var command = util.format('xcrun simctl create "%s" "%s" "%s"', name, device_type_id, runtime_id);
- return shell.exec(command);
- },
-
- del : function(device) {
- var command = util.format('xcrun simctl delete "%s"', device);
- return shell.exec(command);
- },
-
- erase : function(device) {
- var command = util.format('xcrun simctl erase "%s"', device);
- return shell.exec(command);
- },
-
- boot : function(device) {
- var command = util.format('xcrun simctl boot "%s"', device);
- return shell.exec(command);
- },
-
- shutdown : function(device) {
- var command = util.format('xcrun simctl shutdown "%s"', device);
- return shell.exec(command);
- },
-
- rename : function(device, name) {
- var command = util.format('xcrun simctl rename "%s" "%s"', device, name);
- return shell.exec(command);
- },
-
- getenv : function(device, variable_name) {
- var command = util.format('xcrun simctl getenv "%s" "%s"', device, variable_name);
- return shell.exec(command);
- },
-
- openurl : function(device, url) {
- var command = util.format('xcrun simctl openurl "%s" "%s"', device, url);
- return shell.exec(command);
- },
-
- addphoto : function(device, path) {
- var command = util.format('xcrun simctl addphoto "%s" "%s"', device, path);
- return shell.exec(command);
- },
-
- install : function(device, path) {
- var command = util.format('xcrun simctl install "%s" "%s"', device, path);
- return shell.exec(command);
- },
-
- uninstall : function(device, app_identifier) {
- var command = util.format('xcrun simctl uninstall "%s" "%s"', device, app_identifier);
- return shell.exec(command);
- },
-
- launch : function(wait_for_debugger, device, app_identifier, argv) {
- var wait_flag = '';
- if (wait_for_debugger) {
- wait_flag = '--wait-for-debugger';
- }
-
- var argv_expanded = '';
- if (argv.length > 0) {
- argv_expanded = argv.map(function(arg){
- return "'" + arg + "'";
- }).join(" ");
- }
-
- var command = util.format('xcrun simctl launch %s "%s" "%s" %s', wait_flag, device, app_identifier, argv_expanded);
- return shell.exec(command);
- },
-
- spawn : function(wait_for_debugger, arch, device, path_to_executable, argv) {
- var wait_flag = '';
- if (wait_for_debugger) {
- wait_flag = '--wait-for-debugger';
- }
-
- var arch_flag = '';
- if (arch) {
- arch_flag = util.format('--arch="%s"', arch);
- }
-
- var argv_expanded = '';
- if (argv.length > 0) {
- argv_expanded = argv.map(function(arg){
- return "'" + arg + "'";
- }).join(" ");
- }
-
- var command = util.format('xcrun simctl spawn %s %s "%s" "%s" %s', wait_flag, arch_flag, device, path_to_executable, argv_expanded);
- return shell.exec(command);
- },
-
- list : function(options) {
- var sublist = '';
- options = options || {};
-
- if (options.devices) {
- sublist = 'devices';
- } else if (options.devicetypes) {
- sublist = 'devicetypes';
- } else if (options.runtimes) {
- sublist = 'runtimes';
- }
-
- var command = util.format('xcrun simctl list %s', sublist);
- var obj = shell.exec(command, { silent: options.silent });
-
- if (obj.code === 0) {
- try {
- var parser = new SimCtlListParser();
- obj.json = parser.parse(obj.output);
- } catch(err) {
- console.error(err.stack);
- }
- }
-
- return obj;
- },
-
- notify_post : function(device, notification_name) {
- var command = util.format('xcrun simctl notify_post "%s" "%s"', device, notification_name);
- return shell.exec(command);
- },
-
- icloud_sync : function(device) {
- var command = util.format('xcrun simctl icloud_sync "%s"', device);
- return shell.exec(command);
- },
-
- help : function(subcommand) {
- var command = util.format('xcrun simctl help "%s"', subcommand);
- return shell.exec(command);
- }
-};
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/ios-sim/package.json
----------------------------------------------------------------------
diff --git a/node_modules/ios-sim/package.json b/node_modules/ios-sim/package.json
index 32da874..60fb6cd 100644
--- a/node_modules/ios-sim/package.json
+++ b/node_modules/ios-sim/package.json
@@ -1,81 +1,108 @@
{
- "name": "ios-sim",
- "version": "5.0.8",
- "preferGlobal": "true",
- "description": "launch iOS apps into the iOS Simulator from the command line (Xcode 6.0+)",
- "main": "ios-sim.js",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/phonegap/ios-sim.git"
+ "_args": [
+ [
+ "ios-sim@^5.0.7",
+ "/Users/steveng/repo/cordova/cordova-ios"
+ ]
+ ],
+ "_from": "ios-sim@>=5.0.7 <6.0.0",
+ "_id": "ios-sim@5.0.8",
+ "_inCache": true,
+ "_installable": true,
+ "_location": "/ios-sim",
+ "_nodeVersion": "0.12.7",
+ "_npmOperationalInternal": {
+ "host": "packages-12-west.internal.npmjs.com",
+ "tmp": "tmp/ios-sim-5.0.8.tgz_1458757739978_0.3562360794749111"
},
- "engines": {
- "node": ">=0.10.0"
+ "_npmUser": {
+ "email": "shazron@gmail.com",
+ "name": "shazron"
},
- "keywords": [
- "ios-sim",
- "iOS Simulator"
+ "_npmVersion": "2.11.3",
+ "_phantomChildren": {
+ "abbrev": "1.0.9"
+ },
+ "_requested": {
+ "name": "ios-sim",
+ "raw": "ios-sim@^5.0.7",
+ "rawSpec": "^5.0.7",
+ "scope": null,
+ "spec": ">=5.0.7 <6.0.0",
+ "type": "range"
+ },
+ "_requiredBy": [
+ "/"
],
+ "_resolved": "http://registry.npmjs.org/ios-sim/-/ios-sim-5.0.8.tgz",
+ "_shasum": "20520bbcfdadb0b0cb08690b90969b6e60a9a796",
+ "_shrinkwrap": null,
+ "_spec": "ios-sim@^5.0.7",
+ "_where": "/Users/steveng/repo/cordova/cordova-ios",
+ "author": {
+ "name": "Shazron Abdullah"
+ },
"bin": {
"ios-sim": "./bin/ios-sim"
},
"bugs": {
"url": "https://github.com/phonegap/ios-sim/issues"
},
- "author": {
- "name": "Shazron Abdullah"
- },
- "license": "MIT",
"dependencies": {
- "plist": "^1.2.0",
- "simctl": "^0.0.9",
+ "bplist-parser": "^0.0.6",
"nopt": "1.0.9",
- "bplist-parser": "^0.0.6"
+ "plist": "^1.2.0",
+ "simctl": "^0.0.9"
},
+ "description": "launch iOS apps into the iOS Simulator from the command line (Xcode 6.0+)",
"devDependencies": {
"jshint": "^2.9.1"
},
- "scripts": {
- "test": "npm run jshint",
- "jshint": "jshint src ./ios-sim.js"
- },
- "gitHead": "f0fc8160c262fe86ccaf8eeef1ff4ef22eb19b5c",
- "homepage": "https://github.com/phonegap/ios-sim#readme",
- "_id": "ios-sim@5.0.8",
- "_shasum": "20520bbcfdadb0b0cb08690b90969b6e60a9a796",
- "_from": "ios-sim@>=5.0.7 <6.0.0",
- "_npmVersion": "2.11.3",
- "_nodeVersion": "0.12.7",
- "_npmUser": {
- "name": "shazron",
- "email": "shazron@gmail.com"
- },
+ "directories": {},
"dist": {
"shasum": "20520bbcfdadb0b0cb08690b90969b6e60a9a796",
"tarball": "https://registry.npmjs.org/ios-sim/-/ios-sim-5.0.8.tgz"
},
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "gitHead": "f0fc8160c262fe86ccaf8eeef1ff4ef22eb19b5c",
+ "homepage": "https://github.com/phonegap/ios-sim#readme",
+ "keywords": [
+ "ios-sim",
+ "iOS Simulator"
+ ],
+ "license": "MIT",
+ "main": "ios-sim.js",
"maintainers": [
{
- "name": "macdonst",
- "email": "simon.macdonald@gmail.com"
+ "email": "simon.macdonald@gmail.com",
+ "name": "macdonst"
},
{
- "name": "purplecabbage",
- "email": "purplecabbage@gmail.com"
+ "email": "purplecabbage@gmail.com",
+ "name": "purplecabbage"
},
{
- "name": "shazron",
- "email": "shazron@gmail.com"
+ "email": "shazron@gmail.com",
+ "name": "shazron"
},
{
- "name": "stevegill",
- "email": "stevengill97@gmail.com"
+ "email": "stevengill97@gmail.com",
+ "name": "stevegill"
}
],
- "_npmOperationalInternal": {
- "host": "packages-12-west.internal.npmjs.com",
- "tmp": "tmp/ios-sim-5.0.8.tgz_1458757739978_0.3562360794749111"
+ "name": "ios-sim",
+ "optionalDependencies": {},
+ "preferGlobal": "true",
+ "readme": "ERROR: No README data found!",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/phonegap/ios-sim.git"
},
- "directories": {},
- "_resolved": "http://registry.npmjs.org/ios-sim/-/ios-sim-5.0.8.tgz",
- "readme": "ERROR: No README data found!"
+ "scripts": {
+ "jshint": "jshint src ./ios-sim.js",
+ "test": "npm run jshint"
+ },
+ "version": "5.0.8"
}
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/LICENSE
----------------------------------------------------------------------
diff --git a/node_modules/lodash/LICENSE b/node_modules/lodash/LICENSE
new file mode 100644
index 0000000..9cd87e5
--- /dev/null
+++ b/node_modules/lodash/LICENSE
@@ -0,0 +1,22 @@
+Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/>
+Based on Underscore.js, copyright 2009-2015 Jeremy Ashkenas,
+DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/>
+
+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/55428f42/node_modules/lodash/README.md
----------------------------------------------------------------------
diff --git a/node_modules/lodash/README.md b/node_modules/lodash/README.md
new file mode 100644
index 0000000..fd98e5c
--- /dev/null
+++ b/node_modules/lodash/README.md
@@ -0,0 +1,121 @@
+# lodash v3.10.1
+
+The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash](https://lodash.com/) exported as [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) modules.
+
+Generated using [lodash-cli](https://www.npmjs.com/package/lodash-cli):
+```bash
+$ lodash modularize modern exports=node -o ./
+$ lodash modern -d -o ./index.js
+```
+
+## Installation
+
+Using npm:
+
+```bash
+$ {sudo -H} npm i -g npm
+$ npm i --save lodash
+```
+
+In Node.js/io.js:
+
+```js
+// load the modern build
+var _ = require('lodash');
+// or a method category
+var array = require('lodash/array');
+// or a method (great for smaller builds with browserify/webpack)
+var chunk = require('lodash/array/chunk');
+```
+
+See the [package source](https://github.com/lodash/lodash/tree/3.10.1-npm) for more details.
+
+**Note:**<br>
+Don\u2019t assign values to the [special variable](http://nodejs.org/api/repl.html#repl_repl_features) `_` when in the REPL.<br>
+Install [n_](https://www.npmjs.com/package/n_) for a REPL that includes lodash by default.
+
+## Module formats
+
+lodash is also available in a variety of other builds & module formats.
+
+ * npm packages for [modern](https://www.npmjs.com/package/lodash), [compatibility](https://www.npmjs.com/package/lodash-compat), & [per method](https://www.npmjs.com/browse/keyword/lodash-modularized) builds
+ * AMD modules for [modern](https://github.com/lodash/lodash/tree/3.10.1-amd) & [compatibility](https://github.com/lodash/lodash-compat/tree/3.10.1-amd) builds
+ * ES modules for the [modern](https://github.com/lodash/lodash/tree/3.10.1-es) build
+
+## Further Reading
+
+ * [API Documentation](https://lodash.com/docs)
+ * [Build Differences](https://github.com/lodash/lodash/wiki/Build-Differences)
+ * [Changelog](https://github.com/lodash/lodash/wiki/Changelog)
+ * [Roadmap](https://github.com/lodash/lodash/wiki/Roadmap)
+ * [More Resources](https://github.com/lodash/lodash/wiki/Resources)
+
+## Features
+
+ * ~100% [code coverage](https://coveralls.io/r/lodash)
+ * Follows [semantic versioning](http://semver.org/) for releases
+ * [Lazily evaluated](http://filimanjaro.com/blog/2014/introducing-lazy-evaluation/) chaining
+ * [_(\u2026)](https://lodash.com/docs#_) supports implicit chaining
+ * [_.ary](https://lodash.com/docs#ary) & [_.rearg](https://lodash.com/docs#rearg) to change function argument limits & order
+ * [_.at](https://lodash.com/docs#at) for cherry-picking collection values
+ * [_.attempt](https://lodash.com/docs#attempt) to execute functions which may error without a try-catch
+ * [_.before](https://lodash.com/docs#before) to complement [_.after](https://lodash.com/docs#after)
+ * [_.bindKey](https://lodash.com/docs#bindKey) for binding [*\u201clazy\u201d*](http://michaux.ca/articles/lazy-function-definition-pattern) defined methods
+ * [_.chunk](https://lodash.com/docs#chunk) for splitting an array into chunks of a given size
+ * [_.clone](https://lodash.com/docs#clone) supports shallow cloning of `Date` & `RegExp` objects
+ * [_.cloneDeep](https://lodash.com/docs#cloneDeep) for deep cloning arrays & objects
+ * [_.curry](https://lodash.com/docs#curry) & [_.curryRight](https://lodash.com/docs#curryRight) for creating [curried](http://hughfdjackson.com/javascript/why-curry-helps/) functions
+ * [_.debounce](https://lodash.com/docs#debounce) & [_.throttle](https://lodash.com/docs#throttle) are cancelable & accept options for more control
+ * [_.defaultsDeep](https://lodash.com/docs#defaultsDeep) for recursively assigning default properties
+ * [_.fill](https://lodash.com/docs#fill) to fill arrays with values
+ * [_.findKey](https://lodash.com/docs#findKey) for finding keys
+ * [_.flow](https://lodash.com/docs#flow) to complement [_.flowRight](https://lodash.com/docs#flowRight) (a.k.a `_.compose`)
+ * [_.forEach](https://lodash.com/docs#forEach) supports exiting early
+ * [_.forIn](https://lodash.com/docs#forIn) for iterating all enumerable properties
+ * [_.forOwn](https://lodash.com/docs#forOwn) for iterating own properties
+ * [_.get](https://lodash.com/docs#get) & [_.set](https://lodash.com/docs#set) for deep property getting & setting
+ * [_.gt](https://lodash.com/docs#gt), [_.gte](https://lodash.com/docs#gte), [_.lt](https://lodash.com/docs#lt), & [_.lte](https://lodash.com/docs#lte) relational methods
+ * [_.inRange](https://lodash.com/docs#inRange) for checking whether a number is within a given range
+ * [_.isNative](https://lodash.com/docs#isNative) to check for native functions
+ * [_.isPlainObject](https://lodash.com/docs#isPlainObject) & [_.toPlainObject](https://lodash.com/docs#toPlainObject) to check for & convert to `Object` objects
+ * [_.isTypedArray](https://lodash.com/docs#isTypedArray) to check for typed arrays
+ * [_.mapKeys](https://lodash.com/docs#mapKeys) for mapping keys to an object
+ * [_.matches](https://lodash.com/docs#matches) supports deep object comparisons
+ * [_.matchesProperty](https://lodash.com/docs#matchesProperty) to complement [_.matches](https://lodash.com/docs#matches) & [_.property](https://lodash.com/docs#property)
+ * [_.merge](https://lodash.com/docs#merge) for a deep [_.extend](https://lodash.com/docs#extend)
+ * [_.method](https://lodash.com/docs#method) & [_.methodOf](https://lodash.com/docs#methodOf) to create functions that invoke methods
+ * [_.modArgs](https://lodash.com/docs#modArgs) for more advanced functional composition
+ * [_.parseInt](https://lodash.com/docs#parseInt) for consistent cross-environment behavior
+ * [_.pull](https://lodash.com/docs#pull), [_.pullAt](https://lodash.com/docs#pullAt), & [_.remove](https://lodash.com/docs#remove) for mutating arrays
+ * [_.random](https://lodash.com/docs#random) supports returning floating-point numbers
+ * [_.restParam](https://lodash.com/docs#restParam) & [_.spread](https://lodash.com/docs#spread) for applying rest parameters & spreading arguments to functions
+ * [_.runInContext](https://lodash.com/docs#runInContext) for collisionless mixins & easier mocking
+ * [_.slice](https://lodash.com/docs#slice) for creating subsets of array-like values
+ * [_.sortByAll](https://lodash.com/docs#sortByAll) & [_.sortByOrder](https://lodash.com/docs#sortByOrder) for sorting by multiple properties & orders
+ * [_.support](https://lodash.com/docs#support) for flagging environment features
+ * [_.template](https://lodash.com/docs#template) supports [*\u201cimports\u201d*](https://lodash.com/docs#templateSettings-imports) options & [ES template delimiters](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-template-literal-lexical-components)
+ * [_.transform](https://lodash.com/docs#transform) as a powerful alternative to [_.reduce](https://lodash.com/docs#reduce) for transforming objects
+ * [_.unzipWith](https://lodash.com/docs#unzipWith) & [_.zipWith](https://lodash.com/docs#zipWith) to specify how grouped values should be combined
+ * [_.valuesIn](https://lodash.com/docs#valuesIn) for getting values of all enumerable properties
+ * [_.xor](https://lodash.com/docs#xor) to complement [_.difference](https://lodash.com/docs#difference), [_.intersection](https://lodash.com/docs#intersection), & [_.union](https://lodash.com/docs#union)
+ * [_.add](https://lodash.com/docs#add), [_.round](https://lodash.com/docs#round), [_.sum](https://lodash.com/docs#sum), &
+ [more](https://lodash.com/docs "_.ceil & _.floor") math methods
+ * [_.bind](https://lodash.com/docs#bind), [_.curry](https://lodash.com/docs#curry), [_.partial](https://lodash.com/docs#partial), &
+ [more](https://lodash.com/docs "_.bindKey, _.curryRight, _.partialRight") support customizable argument placeholders
+ * [_.capitalize](https://lodash.com/docs#capitalize), [_.trim](https://lodash.com/docs#trim), &
+ [more](https://lodash.com/docs "_.camelCase, _.deburr, _.endsWith, _.escapeRegExp, _.kebabCase, _.pad, _.padLeft, _.padRight, _.repeat, _.snakeCase, _.startCase, _.startsWith, _.trimLeft, _.trimRight, _.trunc, _.words") string methods
+ * [_.clone](https://lodash.com/docs#clone), [_.isEqual](https://lodash.com/docs#isEqual), &
+ [more](https://lodash.com/docs "_.assign, _.cloneDeep, _.merge") accept customizer callbacks
+ * [_.dropWhile](https://lodash.com/docs#dropWhile), [_.takeWhile](https://lodash.com/docs#takeWhile), &
+ [more](https://lodash.com/docs "_.drop, _.dropRight, _.dropRightWhile, _.take, _.takeRight, _.takeRightWhile") to complement [_.first](https://lodash.com/docs#first), [_.initial](https://lodash.com/docs#initial), [_.last](https://lodash.com/docs#last), & [_.rest](https://lodash.com/docs#rest)
+ * [_.findLast](https://lodash.com/docs#findLast), [_.findLastKey](https://lodash.com/docs#findLastKey), &
+ [more](https://lodash.com/docs "_.curryRight, _.dropRight, _.dropRightWhile, _.flowRight, _.forEachRight, _.forInRight, _.forOwnRight, _.padRight, partialRight, _.takeRight, _.trimRight, _.takeRightWhile") right-associative methods
+ * [_.includes](https://lodash.com/docs#includes), [_.toArray](https://lodash.com/docs#toArray), &
+ [more](https://lodash.com/docs "_.at, _.countBy, _.every, _.filter, _.find, _.findLast, _.findWhere, _.forEach, _.forEachRight, _.groupBy, _.indexBy, _.invoke, _.map, _.max, _.min, _.partition, _.pluck, _.reduce, _.reduceRight, _.reject, _.shuffle, _.size, _.some, _.sortBy, _.sortByAll, _.sortByOrder, _.sum, _.where") accept strings
+ * [_#commit](https://lodash.com/docs#prototype-commit) & [_#plant](https://lodash.com/docs#prototype-plant) for working with chain sequences
+ * [_#thru](https://lodash.com/docs#thru) to pass values thru a chain sequence
+
+## Support
+
+Tested in Chrome 43-44, Firefox 38-39, IE 6-11, MS Edge, Safari 5-8, ChakraNode 0.12.2, io.js 2.5.0, Node.js 0.8.28, 0.10.40, & 0.12.7, PhantomJS 1.9.8, RingoJS 0.11, & Rhino 1.7.6.
+Automated [browser](https://saucelabs.com/u/lodash) & [CI](https://travis-ci.org/lodash/lodash/) test runs are available. Special thanks to [Sauce Labs](https://saucelabs.com/) for providing automated browser testing.
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array.js b/node_modules/lodash/array.js
new file mode 100644
index 0000000..e5121fa
--- /dev/null
+++ b/node_modules/lodash/array.js
@@ -0,0 +1,44 @@
+module.exports = {
+ 'chunk': require('./array/chunk'),
+ 'compact': require('./array/compact'),
+ 'difference': require('./array/difference'),
+ 'drop': require('./array/drop'),
+ 'dropRight': require('./array/dropRight'),
+ 'dropRightWhile': require('./array/dropRightWhile'),
+ 'dropWhile': require('./array/dropWhile'),
+ 'fill': require('./array/fill'),
+ 'findIndex': require('./array/findIndex'),
+ 'findLastIndex': require('./array/findLastIndex'),
+ 'first': require('./array/first'),
+ 'flatten': require('./array/flatten'),
+ 'flattenDeep': require('./array/flattenDeep'),
+ 'head': require('./array/head'),
+ 'indexOf': require('./array/indexOf'),
+ 'initial': require('./array/initial'),
+ 'intersection': require('./array/intersection'),
+ 'last': require('./array/last'),
+ 'lastIndexOf': require('./array/lastIndexOf'),
+ 'object': require('./array/object'),
+ 'pull': require('./array/pull'),
+ 'pullAt': require('./array/pullAt'),
+ 'remove': require('./array/remove'),
+ 'rest': require('./array/rest'),
+ 'slice': require('./array/slice'),
+ 'sortedIndex': require('./array/sortedIndex'),
+ 'sortedLastIndex': require('./array/sortedLastIndex'),
+ 'tail': require('./array/tail'),
+ 'take': require('./array/take'),
+ 'takeRight': require('./array/takeRight'),
+ 'takeRightWhile': require('./array/takeRightWhile'),
+ 'takeWhile': require('./array/takeWhile'),
+ 'union': require('./array/union'),
+ 'uniq': require('./array/uniq'),
+ 'unique': require('./array/unique'),
+ 'unzip': require('./array/unzip'),
+ 'unzipWith': require('./array/unzipWith'),
+ 'without': require('./array/without'),
+ 'xor': require('./array/xor'),
+ 'zip': require('./array/zip'),
+ 'zipObject': require('./array/zipObject'),
+ 'zipWith': require('./array/zipWith')
+};
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/chunk.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/chunk.js b/node_modules/lodash/array/chunk.js
new file mode 100644
index 0000000..c8be1fb
--- /dev/null
+++ b/node_modules/lodash/array/chunk.js
@@ -0,0 +1,46 @@
+var baseSlice = require('../internal/baseSlice'),
+ isIterateeCall = require('../internal/isIterateeCall');
+
+/* Native method references for those with the same name as other `lodash` methods. */
+var nativeCeil = Math.ceil,
+ nativeFloor = Math.floor,
+ nativeMax = Math.max;
+
+/**
+ * Creates an array of elements split into groups the length of `size`.
+ * If `collection` can't be split evenly, the final chunk will be the remaining
+ * elements.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to process.
+ * @param {number} [size=1] The length of each chunk.
+ * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
+ * @returns {Array} Returns the new array containing chunks.
+ * @example
+ *
+ * _.chunk(['a', 'b', 'c', 'd'], 2);
+ * // => [['a', 'b'], ['c', 'd']]
+ *
+ * _.chunk(['a', 'b', 'c', 'd'], 3);
+ * // => [['a', 'b', 'c'], ['d']]
+ */
+function chunk(array, size, guard) {
+ if (guard ? isIterateeCall(array, size, guard) : size == null) {
+ size = 1;
+ } else {
+ size = nativeMax(nativeFloor(size) || 1, 1);
+ }
+ var index = 0,
+ length = array ? array.length : 0,
+ resIndex = -1,
+ result = Array(nativeCeil(length / size));
+
+ while (index < length) {
+ result[++resIndex] = baseSlice(array, index, (index += size));
+ }
+ return result;
+}
+
+module.exports = chunk;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/compact.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/compact.js b/node_modules/lodash/array/compact.js
new file mode 100644
index 0000000..1dc1c55
--- /dev/null
+++ b/node_modules/lodash/array/compact.js
@@ -0,0 +1,30 @@
+/**
+ * Creates an array with all falsey values removed. The values `false`, `null`,
+ * `0`, `""`, `undefined`, and `NaN` are falsey.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to compact.
+ * @returns {Array} Returns the new array of filtered values.
+ * @example
+ *
+ * _.compact([0, 1, false, 2, '', 3]);
+ * // => [1, 2, 3]
+ */
+function compact(array) {
+ var index = -1,
+ length = array ? array.length : 0,
+ resIndex = -1,
+ result = [];
+
+ while (++index < length) {
+ var value = array[index];
+ if (value) {
+ result[++resIndex] = value;
+ }
+ }
+ return result;
+}
+
+module.exports = compact;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/difference.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/difference.js b/node_modules/lodash/array/difference.js
new file mode 100644
index 0000000..128932a
--- /dev/null
+++ b/node_modules/lodash/array/difference.js
@@ -0,0 +1,29 @@
+var baseDifference = require('../internal/baseDifference'),
+ baseFlatten = require('../internal/baseFlatten'),
+ isArrayLike = require('../internal/isArrayLike'),
+ isObjectLike = require('../internal/isObjectLike'),
+ restParam = require('../function/restParam');
+
+/**
+ * Creates an array of unique `array` values not included in the other
+ * provided arrays using [`SameValueZero`](http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero)
+ * for equality comparisons.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to inspect.
+ * @param {...Array} [values] The arrays of values to exclude.
+ * @returns {Array} Returns the new array of filtered values.
+ * @example
+ *
+ * _.difference([1, 2, 3], [4, 2]);
+ * // => [1, 3]
+ */
+var difference = restParam(function(array, values) {
+ return (isObjectLike(array) && isArrayLike(array))
+ ? baseDifference(array, baseFlatten(values, false, true))
+ : [];
+});
+
+module.exports = difference;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/drop.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/drop.js b/node_modules/lodash/array/drop.js
new file mode 100644
index 0000000..039a0b5
--- /dev/null
+++ b/node_modules/lodash/array/drop.js
@@ -0,0 +1,39 @@
+var baseSlice = require('../internal/baseSlice'),
+ isIterateeCall = require('../internal/isIterateeCall');
+
+/**
+ * Creates a slice of `array` with `n` elements dropped from the beginning.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to query.
+ * @param {number} [n=1] The number of elements to drop.
+ * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
+ * @returns {Array} Returns the slice of `array`.
+ * @example
+ *
+ * _.drop([1, 2, 3]);
+ * // => [2, 3]
+ *
+ * _.drop([1, 2, 3], 2);
+ * // => [3]
+ *
+ * _.drop([1, 2, 3], 5);
+ * // => []
+ *
+ * _.drop([1, 2, 3], 0);
+ * // => [1, 2, 3]
+ */
+function drop(array, n, guard) {
+ var length = array ? array.length : 0;
+ if (!length) {
+ return [];
+ }
+ if (guard ? isIterateeCall(array, n, guard) : n == null) {
+ n = 1;
+ }
+ return baseSlice(array, n < 0 ? 0 : n);
+}
+
+module.exports = drop;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/dropRight.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/dropRight.js b/node_modules/lodash/array/dropRight.js
new file mode 100644
index 0000000..14b5eb6
--- /dev/null
+++ b/node_modules/lodash/array/dropRight.js
@@ -0,0 +1,40 @@
+var baseSlice = require('../internal/baseSlice'),
+ isIterateeCall = require('../internal/isIterateeCall');
+
+/**
+ * Creates a slice of `array` with `n` elements dropped from the end.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to query.
+ * @param {number} [n=1] The number of elements to drop.
+ * @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
+ * @returns {Array} Returns the slice of `array`.
+ * @example
+ *
+ * _.dropRight([1, 2, 3]);
+ * // => [1, 2]
+ *
+ * _.dropRight([1, 2, 3], 2);
+ * // => [1]
+ *
+ * _.dropRight([1, 2, 3], 5);
+ * // => []
+ *
+ * _.dropRight([1, 2, 3], 0);
+ * // => [1, 2, 3]
+ */
+function dropRight(array, n, guard) {
+ var length = array ? array.length : 0;
+ if (!length) {
+ return [];
+ }
+ if (guard ? isIterateeCall(array, n, guard) : n == null) {
+ n = 1;
+ }
+ n = length - (+n || 0);
+ return baseSlice(array, 0, n < 0 ? 0 : n);
+}
+
+module.exports = dropRight;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/dropRightWhile.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/dropRightWhile.js b/node_modules/lodash/array/dropRightWhile.js
new file mode 100644
index 0000000..be158bd
--- /dev/null
+++ b/node_modules/lodash/array/dropRightWhile.js
@@ -0,0 +1,59 @@
+var baseCallback = require('../internal/baseCallback'),
+ baseWhile = require('../internal/baseWhile');
+
+/**
+ * Creates a slice of `array` excluding elements dropped from the end.
+ * Elements are dropped until `predicate` returns falsey. The predicate is
+ * bound to `thisArg` and invoked with three arguments: (value, index, array).
+ *
+ * If a property name is provided for `predicate` the created `_.property`
+ * style callback returns the property value of the given element.
+ *
+ * If a value is also provided for `thisArg` the created `_.matchesProperty`
+ * style callback returns `true` for elements that have a matching property
+ * value, else `false`.
+ *
+ * If an object is provided for `predicate` the created `_.matches` style
+ * callback returns `true` for elements that match the properties of the given
+ * object, else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to query.
+ * @param {Function|Object|string} [predicate=_.identity] The function invoked
+ * per iteration.
+ * @param {*} [thisArg] The `this` binding of `predicate`.
+ * @returns {Array} Returns the slice of `array`.
+ * @example
+ *
+ * _.dropRightWhile([1, 2, 3], function(n) {
+ * return n > 1;
+ * });
+ * // => [1]
+ *
+ * var users = [
+ * { 'user': 'barney', 'active': true },
+ * { 'user': 'fred', 'active': false },
+ * { 'user': 'pebbles', 'active': false }
+ * ];
+ *
+ * // using the `_.matches` callback shorthand
+ * _.pluck(_.dropRightWhile(users, { 'user': 'pebbles', 'active': false }), 'user');
+ * // => ['barney', 'fred']
+ *
+ * // using the `_.matchesProperty` callback shorthand
+ * _.pluck(_.dropRightWhile(users, 'active', false), 'user');
+ * // => ['barney']
+ *
+ * // using the `_.property` callback shorthand
+ * _.pluck(_.dropRightWhile(users, 'active'), 'user');
+ * // => ['barney', 'fred', 'pebbles']
+ */
+function dropRightWhile(array, predicate, thisArg) {
+ return (array && array.length)
+ ? baseWhile(array, baseCallback(predicate, thisArg, 3), true, true)
+ : [];
+}
+
+module.exports = dropRightWhile;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/dropWhile.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/dropWhile.js b/node_modules/lodash/array/dropWhile.js
new file mode 100644
index 0000000..d9eabae
--- /dev/null
+++ b/node_modules/lodash/array/dropWhile.js
@@ -0,0 +1,59 @@
+var baseCallback = require('../internal/baseCallback'),
+ baseWhile = require('../internal/baseWhile');
+
+/**
+ * Creates a slice of `array` excluding elements dropped from the beginning.
+ * Elements are dropped until `predicate` returns falsey. The predicate is
+ * bound to `thisArg` and invoked with three arguments: (value, index, array).
+ *
+ * If a property name is provided for `predicate` the created `_.property`
+ * style callback returns the property value of the given element.
+ *
+ * If a value is also provided for `thisArg` the created `_.matchesProperty`
+ * style callback returns `true` for elements that have a matching property
+ * value, else `false`.
+ *
+ * If an object is provided for `predicate` the created `_.matches` style
+ * callback returns `true` for elements that have the properties of the given
+ * object, else `false`.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to query.
+ * @param {Function|Object|string} [predicate=_.identity] The function invoked
+ * per iteration.
+ * @param {*} [thisArg] The `this` binding of `predicate`.
+ * @returns {Array} Returns the slice of `array`.
+ * @example
+ *
+ * _.dropWhile([1, 2, 3], function(n) {
+ * return n < 3;
+ * });
+ * // => [3]
+ *
+ * var users = [
+ * { 'user': 'barney', 'active': false },
+ * { 'user': 'fred', 'active': false },
+ * { 'user': 'pebbles', 'active': true }
+ * ];
+ *
+ * // using the `_.matches` callback shorthand
+ * _.pluck(_.dropWhile(users, { 'user': 'barney', 'active': false }), 'user');
+ * // => ['fred', 'pebbles']
+ *
+ * // using the `_.matchesProperty` callback shorthand
+ * _.pluck(_.dropWhile(users, 'active', false), 'user');
+ * // => ['pebbles']
+ *
+ * // using the `_.property` callback shorthand
+ * _.pluck(_.dropWhile(users, 'active'), 'user');
+ * // => ['barney', 'fred', 'pebbles']
+ */
+function dropWhile(array, predicate, thisArg) {
+ return (array && array.length)
+ ? baseWhile(array, baseCallback(predicate, thisArg, 3), true)
+ : [];
+}
+
+module.exports = dropWhile;
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/55428f42/node_modules/lodash/array/fill.js
----------------------------------------------------------------------
diff --git a/node_modules/lodash/array/fill.js b/node_modules/lodash/array/fill.js
new file mode 100644
index 0000000..2c8f6da
--- /dev/null
+++ b/node_modules/lodash/array/fill.js
@@ -0,0 +1,44 @@
+var baseFill = require('../internal/baseFill'),
+ isIterateeCall = require('../internal/isIterateeCall');
+
+/**
+ * Fills elements of `array` with `value` from `start` up to, but not
+ * including, `end`.
+ *
+ * **Note:** This method mutates `array`.
+ *
+ * @static
+ * @memberOf _
+ * @category Array
+ * @param {Array} array The array to fill.
+ * @param {*} value The value to fill `array` with.
+ * @param {number} [start=0] The start position.
+ * @param {number} [end=array.length] The end position.
+ * @returns {Array} Returns `array`.
+ * @example
+ *
+ * var array = [1, 2, 3];
+ *
+ * _.fill(array, 'a');
+ * console.log(array);
+ * // => ['a', 'a', 'a']
+ *
+ * _.fill(Array(3), 2);
+ * // => [2, 2, 2]
+ *
+ * _.fill([4, 6, 8], '*', 1, 2);
+ * // => [4, '*', 8]
+ */
+function fill(array, value, start, end) {
+ var length = array ? array.length : 0;
+ if (!length) {
+ return [];
+ }
+ if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {
+ start = 0;
+ end = length;
+ }
+ return baseFill(array, value, start, end);
+}
+
+module.exports = fill;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org