Socket
Socket
Sign inDemoInstall

faker

Package Overview
Dependencies
0
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 3.0.1 to 3.1.0

.versions

2

.npm/package/npm-shrinkwrap.json
{
"dependencies": {
"faker": {
"version": "2.1.1"
"version": "3.0.1"
}
}
}

@@ -18,33 +18,60 @@ var faker = require('../');

schema.modules = {
"type": "string",
"enum": []
};
schema.methodSchemas = {
};
items.forEach(function(item){
// schema[item] = {};
for(var q in faker[item]) {
console.log(item + '.' + q);
schema.modules.enum.push(item);
for (var q in faker[item]) {
//console.log(item + '.' + q);
// check to see if an existing schema existing on the function
var fnLine = faker[item][q].toString().split('\n').slice(0,1)[0];
var prop;
fnLine = fnLine.replace('function (', '');
fnLine = fnLine.replace(') {', '');
if (fnLine === "") {
console.log('no arguments')
prop = {
};
if (typeof faker[item][q].schema === "object") {
// if so, we'll want to merge that onto the exported schemas here
prop = faker[item][q].schema;
} else {
console.log(fnLine);
fnLine = fnLine.split(' ');
prop = {};
fnLine.forEach(function(arg){
prop[arg] = {
type: "any"
// if not, fall back to the ones we can parse from the method itself
// find first (
var start = fnLine.search(/\(/);
// find first )
var end = fnLine.search(/\)/);
// substr on those positions
fnLine = fnLine.substr(start + 1, end - start - 1)
if (fnLine === "") {
//console.log(item + '.' + q, 'no arguments')
prop = {
};
});
} else {
// split on ,
fnLine = fnLine.split(',');
//console.log(item + '.' + q, fnLine);
prop = {};
prop.properties = {};
fnLine.forEach(function(arg){
prop.properties[arg] = {
type: "any"
};
});
}
}
schema.methods.enum.push(item + '.' + q);
// if ()
// schema
schema.methodSchemas[item + '.' + q] = prop;
}
});
console.log(schema);
var util = require('util');
console.log(util.inspect(schema, false, null));

@@ -17,4 +17,6 @@ /*

var gulp = require('gulp');
var jsdoc = require('gulp-jsdoc3');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var ghPages = require('gulp-gh-pages');
var mustache = require('gulp-mustache');

@@ -60,3 +62,14 @@ var browserify = require('browserify');

// pushes jsdoc changes to gh-pages branch
gulp.task('gh-pages', function(cb) {
return gulp.src('../doc/**/*')
.pipe(ghPages());
});
gulp.task('jsdoc', function (cb) {
var config = require('../conf.json');
gulp.src(['../README.md', '../lib/*.js'], {read: false})
.pipe(jsdoc(config, cb));
});
// builds Readme.md file from docs.md and exported faker methods

@@ -109,4 +122,3 @@ gulp.task('documentation', function(cb) {

var tasks = ['nodeLocalRequires', 'browser-package', 'documentation'];
// var tasks = [];
var tasks = ['documentation', 'jsdoc', 'nodeLocalRequires', 'browser-package', 'gh-pages'];

@@ -113,0 +125,0 @@ var locales = require('../lib/locales');

@@ -48,13 +48,19 @@ # faker.js - generate massive amounts of fake data in the browser and node.js

As of version `v3.0.0` faker.js contains a super useful generator method `Faker.fake` for combining faker API methods using a mustache string format.
faker.js contains a super useful generator method `Faker.fake` for combining faker API methods using a mustache string format.
**Example:**
{{=<% %>=}}
``` js
console.log(faker.fake('{{name.lastName}}, {{name.firstName}} {{name.suffix}}'));
console.log(faker.fake("{{name.lastName}}, {{name.firstName}} {{name.suffix}}"));
// outputs: "Marks, Dean Sr."
```
<%={{ }}=%>
This will interpolate the format string with the value of methods `name.lastName()`, `name.firstName()`, and `name.suffix()`
### JSDoc API Browser
[http://marak.github.io/faker.js/](http://marak.github.io/faker.js/)
### API Methods

@@ -66,5 +72,5 @@

As of version `v2.0.0` faker.js supports over 27 different language definition packs.
As of version `v2.0.0` faker.js has support for multiple localities.
The default language is set to English.
The default language locale is set to English.

@@ -116,12 +122,30 @@ Setting a new locale is simple:

#### Meteor installation
#### Meteor Installation
meteor add practicalmeteor:faker
```
meteor add practicalmeteor:faker
```
#### meteor usage, both client and server
#### Meteor Usage, both client and server
var randomName = faker.name.findName(); // Rowan Nikolaus
var randomEmail = faker.internet.email(); // Kassandra.Haley@erich.biz
var randomCard = faker.helpers.createCard(); // random contact card containing many properties
```js
var randomName = faker.name.findName(); // Rowan Nikolaus
var randomEmail = faker.internet.email(); // Kassandra.Haley@erich.biz
var randomCard = faker.helpers.createCard(); // random contact card containing many properties
```
## Building faker.js
faker uses [gulp](http://gulpjs.com/) to automate it's build process. Running the following build command will generate new browser builds, documentation, and code examples for the project.
```
npm run-script build
```
## Building JSDocs
```
npm run-script doc
```
## Version Release Schedule

@@ -133,7 +157,7 @@

## Authors
## Maintainer
#### Matthew Bergman & Marak Squires
#### Marak Squires
faker.js - Copyright (c) 2014-2015
faker.js - Copyright (c) 2016
Matthew Bergman & Marak Squires

@@ -140,0 +164,0 @@ http://github.com/marak/faker.js/

@@ -1,3 +0,36 @@

#CHANGELOG
# CHANGELOG
See commit history on Github for change history
http://github.com/marak/faker.js
## v3.1.0
( partial change log see: https://github.com/Marak/faker.js/commits/master for full details )
```
[docs] Added JSDocs
[fix] Prevent apostrophes in return value of internet#domainWords
[Fix] Display first month as 1 not 0.
[fix] random.uuid not using seeded number generator
[fix] image api size check
[fix] update bower
[fix] implement street suffix
[fix] hacker.phrase - generate random string for each lexical instance
[api] Added safe_email method
[api] Added method for getting random locale
[api] Added semver method
[api] Added parameters to fake method
[api] Added randomness to image generation
[api] adjust findName method to allow for gender based prefixes
[api] [locale] Added basic support for generating UK postcodes
[api] [locale] Added LV (Latvian) locale
[api] [locale] Added date for Swedish locale
[api] Added better lorem methods
[api] Added system module
[api] Added finance.bitcoinAddress
```
## v3.0.0 - v2.0.0 - Missing

@@ -4,0 +37,0 @@

@@ -6,2 +6,6 @@ #!/usr/bin/env node

//console.log(faker.lorem.sentences())
console.log(faker.name.findName())
return;
//console.log(faker.address)

@@ -8,0 +12,0 @@ console.log(faker.internet.email())

@@ -0,1 +1,5 @@

/**
*
* @namespace faker.address
*/
function Address (faker) {

@@ -5,2 +9,9 @@ var f = faker.fake,

/**
* Generates random zipcode from format. If format is not specified, the
* locale's zip format is used.
*
* @method faker.address.zipCode
* @param {String} format
*/
this.zipCode = function(format) {

@@ -19,8 +30,23 @@ // if zip format is not specified, use the zip format defined for the locale

/**
* Generates a random localized city name. The format string can contain any
* method provided by faker wrapped in `{{}}`, e.g. `{{name.firstName}}` in
* order to build the city name.
*
* If no format string is provided one of the following is randomly used:
*
* * `{{address.cityPrefix}} {{name.firstName}}{{address.citySuffix}}`
* * `{{address.cityPrefix}} {{name.firstName}}`
* * `{{name.firstName}}{{address.citySuffix}}`
* * `{{name.lastName}}{{address.citySuffix}}`
*
* @method faker.address.city
* @param {String} format
*/
this.city = function (format) {
var formats = [
'{{address.cityPrefix}} {{name.firstName}} {{address.citySuffix}}',
'{{address.cityPrefix}} {{name.firstName}}{{address.citySuffix}}',
'{{address.cityPrefix}} {{name.firstName}}',
'{{name.firstName}} {{address.citySuffix}}',
'{{name.lastName}} {{address.citySuffix}}'
'{{name.firstName}}{{address.citySuffix}}',
'{{name.lastName}}{{address.citySuffix}}'
];

@@ -36,2 +62,6 @@

/**
* Return a random localized city prefix
* @method faker.address.cityPrefix
*/
this.cityPrefix = function () {

@@ -41,2 +71,7 @@ return faker.random.arrayElement(faker.definitions.address.city_prefix);

/**
* Return a random localized city suffix
*
* @method faker.address.citySuffix
*/
this.citySuffix = function () {

@@ -46,2 +81,7 @@ return faker.random.arrayElement(faker.definitions.address.city_suffix);

/**
* Returns a random localized street name
*
* @method faker.address.streetName
*/
this.streetName = function () {

@@ -68,2 +108,8 @@ var result;

//
/**
* Returns a random localized street address
*
* @method faker.address.streetAddress
* @param {Boolean} useFullAddress
*/
this.streetAddress = function (useFullAddress) {

@@ -86,2 +132,7 @@ if (useFullAddress === undefined) { useFullAddress = false; }

/**
* streetSuffix
*
* @method faker.address.streetSuffix
*/
this.streetSuffix = function () {

@@ -91,2 +142,7 @@ return faker.random.arrayElement(faker.definitions.address.street_suffix);

/**
* streetPrefix
*
* @method faker.address.streetPrefix
*/
this.streetPrefix = function () {

@@ -96,2 +152,7 @@ return faker.random.arrayElement(faker.definitions.address.street_prefix);

/**
* secondaryAddress
*
* @method faker.address.secondaryAddress
*/
this.secondaryAddress = function () {

@@ -106,2 +167,7 @@ return Helpers.replaceSymbolWithNumber(faker.random.arrayElement(

/**
* county
*
* @method faker.address.county
*/
this.county = function () {

@@ -111,2 +177,7 @@ return faker.random.arrayElement(faker.definitions.address.county);

/**
* country
*
* @method faker.address.country
*/
this.country = function () {

@@ -116,2 +187,7 @@ return faker.random.arrayElement(faker.definitions.address.country);

/**
* countryCode
*
* @method faker.address.countryCode
*/
this.countryCode = function () {

@@ -121,2 +197,8 @@ return faker.random.arrayElement(faker.definitions.address.country_code);

/**
* state
*
* @method faker.address.state
* @param {Boolean} useAbbr
*/
this.state = function (useAbbr) {

@@ -126,2 +208,7 @@ return faker.random.arrayElement(faker.definitions.address.state);

/**
* stateAbbr
*
* @method faker.address.stateAbbr
*/
this.stateAbbr = function () {

@@ -131,2 +218,7 @@ return faker.random.arrayElement(faker.definitions.address.state_abbr);

/**
* latitude
*
* @method faker.address.latitude
*/
this.latitude = function () {

@@ -136,2 +228,7 @@ return (faker.random.number(180 * 10000) / 10000.0 - 90.0).toFixed(4);

/**
* longitude
*
* @method faker.address.longitude
*/
this.longitude = function () {

@@ -138,0 +235,0 @@ return (faker.random.number(360 * 10000) / 10000.0 - 180.0).toFixed(4);

@@ -0,4 +1,13 @@

/**
*
* @namespace faker.commerce
*/
var Commerce = function (faker) {
var self = this;
/**
* color
*
* @method faker.commerce.color
*/
self.color = function() {

@@ -8,23 +17,18 @@ return faker.random.arrayElement(faker.definitions.commerce.color);

/**
* department
*
* @method faker.commerce.department
* @param {number} max
* @param {number} fixedAmount
*/
self.department = function(max, fixedAmount) {
return faker.random.arrayElement(faker.definitions.commerce.department);
/*
max = max || 3;
var num = Math.floor((Math.random() * max) + 1);
if (fixedAmount) {
num = max;
}
var categories = faker.commerce.categories(num);
if(num > 1) {
return faker.commerce.mergeCategories(categories);
}
return categories[0];
*/
};
/**
* productName
*
* @method faker.commerce.productName
*/
self.productName = function() {

@@ -36,2 +40,11 @@ return faker.commerce.productAdjective() + " " +

/**
* price
*
* @method faker.commerce.price
* @param {number} min
* @param {number} max
* @param {number} dec
* @param {string} symbol
*/
self.price = function(min, max, dec, symbol) {

@@ -47,3 +60,5 @@ min = min || 0;

return symbol + (Math.round((Math.random() * (max - min) + min) * Math.pow(10, dec)) / Math.pow(10, dec)).toFixed(dec);
var randValue = faker.random.number({ max: max, min: min });
return symbol + (Math.round(randValue * Math.pow(10, dec)) / Math.pow(10, dec)).toFixed(dec);
};

@@ -77,2 +92,7 @@

/**
* productAdjective
*
* @method faker.commerce.productAdjective
*/
self.productAdjective = function() {

@@ -82,2 +102,7 @@ return faker.random.arrayElement(faker.definitions.commerce.product_name.adjective);

/**
* productMaterial
*
* @method faker.commerce.productMaterial
*/
self.productMaterial = function() {

@@ -87,2 +112,7 @@ return faker.random.arrayElement(faker.definitions.commerce.product_name.material);

/**
* product
*
* @method faker.commerce.product
*/
self.product = function() {

@@ -95,2 +125,2 @@ return faker.random.arrayElement(faker.definitions.commerce.product_name.product);

module['exports'] = Commerce;
module['exports'] = Commerce;

@@ -0,1 +1,5 @@

/**
*
* @namespace faker.company
*/
var Company = function (faker) {

@@ -6,2 +10,7 @@

/**
* suffixes
*
* @method faker.company.suffixes
*/
this.suffixes = function () {

@@ -12,2 +21,8 @@ // Don't want the source array exposed to modification, so return a copy

/**
* companyName
*
* @method faker.company.companyName
* @param {string} format
*/
this.companyName = function (format) {

@@ -28,2 +43,7 @@

/**
* companySuffix
*
* @method faker.company.companySuffix
*/
this.companySuffix = function () {

@@ -33,2 +53,7 @@ return faker.random.arrayElement(faker.company.suffixes());

/**
* catchPhrase
*
* @method faker.company.catchPhrase
*/
this.catchPhrase = function () {

@@ -38,2 +63,7 @@ return f('{{company.catchPhraseAdjective}} {{company.catchPhraseDescriptor}} {{company.catchPhraseNoun}}')

/**
* bs
*
* @method faker.company.bs
*/
this.bs = function () {

@@ -43,2 +73,7 @@ return f('{{company.bsAdjective}} {{company.bsBuzz}} {{company.bsNoun}}');

/**
* catchPhraseAdjective
*
* @method faker.company.catchPhraseAdjective
*/
this.catchPhraseAdjective = function () {

@@ -48,2 +83,7 @@ return faker.random.arrayElement(faker.definitions.company.adjective);

/**
* catchPhraseDescriptor
*
* @method faker.company.catchPhraseDescriptor
*/
this.catchPhraseDescriptor = function () {

@@ -53,2 +93,7 @@ return faker.random.arrayElement(faker.definitions.company.descriptor);

/**
* catchPhraseNoun
*
* @method faker.company.catchPhraseNoun
*/
this.catchPhraseNoun = function () {

@@ -58,2 +103,7 @@ return faker.random.arrayElement(faker.definitions.company.noun);

/**
* bsAdjective
*
* @method faker.company.bsAdjective
*/
this.bsAdjective = function () {

@@ -63,2 +113,7 @@ return faker.random.arrayElement(faker.definitions.company.bs_adjective);

/**
* bsBuzz
*
* @method faker.company.bsBuzz
*/
this.bsBuzz = function () {

@@ -68,2 +123,7 @@ return faker.random.arrayElement(faker.definitions.company.bs_verb);

/**
* bsNoun
*
* @method faker.company.bsNoun
*/
this.bsNoun = function () {

@@ -70,0 +130,0 @@ return faker.random.arrayElement(faker.definitions.company.bs_noun);

@@ -0,3 +1,14 @@

/**
*
* @namespace faker.date
*/
var _Date = function (faker) {
var self = this;
/**
* past
*
* @method faker.date.past
* @param {number} years
* @param {date} refDate
*/
self.past = function (years, refDate) {

@@ -17,2 +28,9 @@ var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();

/**
* future
*
* @method faker.date.future
* @param {number} years
* @param {date} refDate
*/
self.future = function (years, refDate) {

@@ -32,2 +50,9 @@ var date = (refDate) ? new Date(Date.parse(refDate)) : new Date();

/**
* between
*
* @method faker.date.between
* @param {date} from
* @param {date} to
*/
self.between = function (from, to) {

@@ -42,2 +67,8 @@ var fromMilli = Date.parse(from);

/**
* recent
*
* @method faker.date.recent
* @param {number} days
*/
self.recent = function (days) {

@@ -57,2 +88,8 @@ var date = new Date();

/**
* month
*
* @method faker.date.month
* @param {object} options
*/
self.month = function (options) {

@@ -74,2 +111,8 @@ options = options || {};

/**
* weekday
*
* @param {object} options
* @method faker.date.weekday
*/
self.weekday = function (options) {

@@ -76,0 +119,0 @@ options = options || {};

@@ -8,2 +8,19 @@ /*

/**
* Generator method for combining faker methods based on string input
*
* __Example:__
*
* ```
* console.log(faker.fake('{{name.lastName}}, {{name.firstName}} {{name.suffix}}'));
* //outputs: "Marks, Dean Sr."
* ```
*
* This will interpolate the format string with the value of methods
* [name.lastName]{@link faker.name.lastName}, [name.firstName]{@link faker.name.firstName},
* and [name.suffix]{@link faker.name.suffix}
*
* @method faker.fake
* @param {string} str
*/
this.fake = function fake (str) {

@@ -32,8 +49,16 @@ // setup default response as empty string

// for example: {{name.firstName}}
var method = str.substr(start + 2, end - start - 2);
method = method.replace('}}', '');
method = method.replace('{{', '');
var token = str.substr(start + 2, end - start - 2);
var method = token.replace('}}', '').replace('{{', '');
// console.log('method', method)
// extract method parameters
var regExp = /\(([^)]+)\)/;
var matches = regExp.exec(method);
var parameters = '';
if (matches) {
method = method.replace(regExp, '');
parameters = matches[1];
}
// split the method into module and function

@@ -53,4 +78,24 @@ var parts = method.split('.');

// If parameters are populated here, they are always going to be of string type
// since we might actually be dealing with an object or array,
// we always attempt to the parse the incoming parameters into JSON
var params;
// Note: we experience a small performance hit here due to JSON.parse try / catch
// If anyone actually needs to optimize this specific code path, please open a support issue on github
try {
params = JSON.parse(parameters)
} catch (err) {
// since JSON.parse threw an error, assume parameters was actually a string
params = parameters;
}
var result;
if (typeof params === "string" && params.length === 0) {
result = fn.call(this);
} else {
result = fn.call(this, params);
}
// replace the found tag with the returned fake value
res = str.replace('{{' + method + '}}', fn());
res = str.replace('{{' + token + '}}', result);

@@ -57,0 +102,0 @@ // return the response recursively until we are done finding all tags

@@ -0,1 +1,5 @@

/**
*
* @namespace faker.finance
*/
var Finance = function (faker) {

@@ -5,2 +9,8 @@ var Helpers = faker.helpers,

/**
* account
*
* @method faker.finance.account
* @param {number} length
*/
self.account = function (length) {

@@ -19,2 +29,7 @@

/**
* accountName
*
* @method faker.finance.accountName
*/
self.accountName = function () {

@@ -25,2 +40,10 @@

/**
* mask
*
* @method faker.finance.mask
* @param {number} length
* @param {boolean} parens
* @param {boolean} elipsis
*/
self.mask = function (length, parens, elipsis) {

@@ -56,2 +79,11 @@

/**
* amount
*
* @method faker.finance.amount
* @param {number} min
* @param {number} max
* @param {number} dec
* @param {string} symbol
*/
self.amount = function (min, max, dec, symbol) {

@@ -63,7 +95,13 @@

symbol = symbol || '';
var randValue = faker.random.number({ max: max, min: min });
return symbol + (Math.round((Math.random() * (max - min) + min) * Math.pow(10, dec)) / Math.pow(10, dec)).toFixed(dec);
return symbol + (Math.round(randValue * Math.pow(10, dec)) / Math.pow(10, dec)).toFixed(dec);
}
/**
* transactionType
*
* @method faker.finance.transactionType
*/
self.transactionType = function () {

@@ -73,2 +111,7 @@ return Helpers.randomize(faker.definitions.finance.transaction_type);

/**
* currencyCode
*
* @method faker.finance.currencyCode
*/
self.currencyCode = function () {

@@ -78,2 +121,7 @@ return faker.random.objectElement(faker.definitions.finance.currency)['code'];

/**
* currencyName
*
* @method faker.finance.currencyName
*/
self.currencyName = function () {

@@ -83,2 +131,7 @@ return faker.random.objectElement(faker.definitions.finance.currency, 'key');

/**
* currencySymbol
*
* @method faker.finance.currencySymbol
*/
self.currencySymbol = function () {

@@ -92,4 +145,20 @@ var symbol;

}
/**
* bitcoinAddress
*
* @method faker.finance.bitcoinAddress
*/
self.bitcoinAddress = function () {
var addressLength = faker.random.number({ min: 27, max: 34 });
var address = faker.random.arrayElement(['1', '3']);
for (var i = 0; i < addressLength - 1; i++)
address += faker.random.alphaNumeric().toUpperCase();
return address;
}
}
module['exports'] = Finance;
module['exports'] = Finance;

@@ -0,4 +1,13 @@

/**
*
* @namespace faker.hacker
*/
var Hacker = function (faker) {
var self = this;
/**
* abbreviation
*
* @method faker.hacker.abbreviation
*/
self.abbreviation = function () {

@@ -8,2 +17,7 @@ return faker.random.arrayElement(faker.definitions.hacker.abbreviation);

/**
* adjective
*
* @method faker.hacker.adjective
*/
self.adjective = function () {

@@ -13,2 +27,7 @@ return faker.random.arrayElement(faker.definitions.hacker.adjective);

/**
* noun
*
* @method faker.hacker.noun
*/
self.noun = function () {

@@ -18,2 +37,7 @@ return faker.random.arrayElement(faker.definitions.hacker.noun);

/**
* verb
*
* @method faker.hacker.verb
*/
self.verb = function () {

@@ -23,2 +47,7 @@ return faker.random.arrayElement(faker.definitions.hacker.verb);

/**
* ingverb
*
* @method faker.hacker.ingverb
*/
self.ingverb = function () {

@@ -28,10 +57,15 @@ return faker.random.arrayElement(faker.definitions.hacker.ingverb);

/**
* phrase
*
* @method faker.hacker.phrase
*/
self.phrase = function () {
var data = {
abbreviation: self.abbreviation(),
adjective: self.adjective(),
ingverb: self.ingverb(),
noun: self.noun(),
verb: self.verb()
abbreviation: self.abbreviation,
adjective: self.adjective,
ingverb: self.ingverb,
noun: self.noun,
verb: self.verb
};

@@ -38,0 +72,0 @@

@@ -0,1 +1,5 @@

/**
*
* @namespace faker.helpers
*/
var Helpers = function (faker) {

@@ -5,3 +9,8 @@

// backword-compatibility
/**
* backword-compatibility
*
* @method faker.helpers.randomize
* @param {array} array
*/
self.randomize = function (array) {

@@ -12,3 +21,8 @@ array = array || ["a", "b", "c"];

// slugifies string
/**
* slugifies string
*
* @method faker.helpers.slugify
* @param {string} string
*/
self.slugify = function (string) {

@@ -19,3 +33,9 @@ string = string || "";

// parses string for a symbol and replace it with a random number from 1-10
/**
* parses string for a symbol and replace it with a random number from 1-10
*
* @method faker.helpers.replaceSymbolWithNumber
* @param {string} string
* @param {string} symbol defaults to `"#"`
*/
self.replaceSymbolWithNumber = function (string, symbol) {

@@ -39,3 +59,8 @@ string = string || "";

// parses string for symbols (numbers or letters) and replaces them appropriately
/**
* parses string for symbols (numbers or letters) and replaces them appropriately
*
* @method faker.helpers.replaceSymbols
* @param {string} string
*/
self.replaceSymbols = function (string) {

@@ -50,3 +75,3 @@ string = string || "";

} else if (string.charAt(i) == "?") {
str += alpha[Math.floor(Math.random() * alpha.length)];
str += faker.random.arrayElement(alpha);
} else {

@@ -59,3 +84,8 @@ str += string.charAt(i);

// takes an array and returns it randomized
/**
* takes an array and returns it randomized
*
* @method faker.helpers.shuffle
* @param {array} o
*/
self.shuffle = function (o) {

@@ -67,2 +97,9 @@ o = o || ["a", "b", "c"];

/**
* mustache
*
* @method faker.helpers.mustache
* @param {string} str
* @param {object} data
*/
self.mustache = function (str, data) {

@@ -79,2 +116,7 @@ if (typeof str === 'undefined') {

/**
* createCard
*
* @method faker.helpers.createCard
*/
self.createCard = function () {

@@ -130,2 +172,7 @@ return {

/**
* contextualCard
*
* @method faker.helpers.contextualCard
*/
self.contextualCard = function () {

@@ -161,2 +208,7 @@ var name = faker.name.firstName(),

/**
* userCard
*
* @method faker.helpers.userCard
*/
self.userCard = function () {

@@ -187,2 +239,7 @@ return {

/**
* createTransaction
*
* @method faker.helpers.createTransaction
*/
self.createTransaction = function(){

@@ -198,5 +255,5 @@ return {

};
return self;
};

@@ -213,2 +270,2 @@

module['exports'] = Helpers;
module['exports'] = Helpers;

@@ -0,1 +1,5 @@

/**
*
* @namespace faker.image
*/
var Image = function (faker) {

@@ -5,10 +9,32 @@

self.image = function () {
/**
* image
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.image
*/
self.image = function (width, height, randomize) {
var categories = ["abstract", "animals", "business", "cats", "city", "food", "nightlife", "fashion", "people", "nature", "sports", "technics", "transport"];
return self[faker.random.arrayElement(categories)]();
return self[faker.random.arrayElement(categories)](width, height, randomize);
};
/**
* avatar
*
* @method faker.image.avatar
*/
self.avatar = function () {
return faker.internet.avatar();
};
self.imageUrl = function (width, height, category) {
/**
* imageUrl
*
* @param {number} width
* @param {number} height
* @param {string} category
* @param {boolean} randomize
* @method faker.image.imageUrl
*/
self.imageUrl = function (width, height, category, randomize) {
var width = width || 640;

@@ -21,42 +47,151 @@ var height = height || 480;

}
if (randomize) {
url += '?' + faker.random.number()
}
return url;
};
self.abstract = function (width, height) {
return faker.image.imageUrl(width, height, 'abstract');
/**
* abstract
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.abstract
*/
self.abstract = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'abstract', randomize);
};
self.animals = function (width, height) {
return faker.image.imageUrl(width, height, 'animals');
/**
* animals
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.animals
*/
self.animals = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'animals', randomize);
};
self.business = function (width, height) {
return faker.image.imageUrl(width, height, 'business');
/**
* business
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.business
*/
self.business = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'business', randomize);
};
self.cats = function (width, height) {
return faker.image.imageUrl(width, height, 'cats');
/**
* cats
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.cats
*/
self.cats = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'cats', randomize);
};
self.city = function (width, height) {
return faker.image.imageUrl(width, height, 'city');
/**
* city
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.city
*/
self.city = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'city', randomize);
};
self.food = function (width, height) {
return faker.image.imageUrl(width, height, 'food');
/**
* food
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.food
*/
self.food = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'food', randomize);
};
self.nightlife = function (width, height) {
return faker.image.imageUrl(width, height, 'nightlife');
/**
* nightlife
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.nightlife
*/
self.nightlife = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'nightlife', randomize);
};
self.fashion = function (width, height) {
return faker.image.imageUrl(width, height, 'fashion');
/**
* fashion
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.fashion
*/
self.fashion = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'fashion', randomize);
};
self.people = function (width, height) {
return faker.image.imageUrl(width, height, 'people');
/**
* people
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.people
*/
self.people = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'people', randomize);
};
self.nature = function (width, height) {
return faker.image.imageUrl(width, height, 'nature');
/**
* nature
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.nature
*/
self.nature = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'nature', randomize);
};
self.sports = function (width, height) {
return faker.image.imageUrl(width, height, 'sports');
/**
* sports
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.sports
*/
self.sports = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'sports', randomize);
};
self.technics = function (width, height) {
return faker.image.imageUrl(width, height, 'technics');
/**
* technics
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.technics
*/
self.technics = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'technics', randomize);
};
self.transport = function (width, height) {
return faker.image.imageUrl(width, height, 'transport');
/**
* transport
*
* @param {number} width
* @param {number} height
* @param {boolean} randomize
* @method faker.image.transport
*/
self.transport = function (width, height, randomize) {
return faker.image.imageUrl(width, height, 'transport', randomize);
}

@@ -63,0 +198,0 @@ }

@@ -20,2 +20,6 @@ /*

/**
*
* @namespace faker
*/
function Faker (opts) {

@@ -82,3 +86,4 @@

// TODO: fix self.commerce = require('./commerce');
var System = require('./system');
self.system = new System(self);

@@ -93,4 +98,5 @@ var _definitions = {

"finance": ["account_type", "transaction_type", "currency"],
"internet": ["avatar_uri", "domain_suffix", "free_email", "password"],
"internet": ["avatar_uri", "domain_suffix", "free_email", "example_email", "password"],
"commerce": ["color", "department", "product_name", "price", "categories"],
"system": ["mimeTypes"],
"date": ["month", "weekday"],

@@ -97,0 +103,0 @@ "title": "",

var password_generator = require('../vendor/password-generator.js'),
random_ua = require('../vendor/user-agent');
/**
*
* @namespace faker.internet
*/
var Internet = function (faker) {
var self = this;
/**
* avatar
*
* @method faker.internet.avatar
*/
self.avatar = function () {

@@ -10,2 +19,15 @@ return faker.random.arrayElement(faker.definitions.internet.avatar_uri);

self.avatar.schema = {
"description": "Generates a URL for an avatar.",
"sampleResults": ["https://s3.amazonaws.com/uifaces/faces/twitter/igorgarybaldi/128.jpg"]
};
/**
* email
*
* @method faker.internet.email
* @param {string} firstName
* @param {string} lastName
* @param {string} provider
*/
self.email = function (firstName, lastName, provider) {

@@ -16,2 +38,42 @@ provider = provider || faker.random.arrayElement(faker.definitions.internet.free_email);

self.email.schema = {
"description": "Generates a valid email address based on optional input criteria",
"sampleResults": ["foo.bar@gmail.com"],
"properties": {
"firstName": {
"type": "string",
"required": false,
"description": "The first name of the user"
},
"lastName": {
"type": "string",
"required": false,
"description": "The last name of the user"
},
"provider": {
"type": "string",
"required": false,
"description": "The domain of the user"
}
}
};
/**
* exampleEmail
*
* @method faker.internet.exampleEmail
* @param {string} firstName
* @param {string} lastName
*/
self.exampleEmail = function (firstName, lastName) {
var provider = faker.random.arrayElement(faker.definitions.internet.example_email);
return self.email(firstName, lastName, provider);
};
/**
* userName
*
* @method faker.internet.userName
* @param {string} firstName
* @param {string} lastName
*/
self.userName = function (firstName, lastName) {

@@ -37,2 +99,30 @@ var result;

self.userName.schema = {
"description": "Generates a username based on one of several patterns. The pattern is chosen randomly.",
"sampleResults": [
"Kirstin39",
"Kirstin.Smith",
"Kirstin.Smith39",
"KirstinSmith",
"KirstinSmith39",
],
"properties": {
"firstName": {
"type": "string",
"required": false,
"description": "The first name of the user"
},
"lastName": {
"type": "string",
"required": false,
"description": "The last name of the user"
}
}
};
/**
* protocol
*
* @method faker.internet.protocol
*/
self.protocol = function () {

@@ -43,2 +133,12 @@ var protocols = ['http','https'];

self.protocol.schema = {
"description": "Randomly generates http or https",
"sampleResults": ["https", "http"]
};
/**
* url
*
* @method faker.internet.url
*/
self.url = function () {

@@ -48,2 +148,15 @@ return faker.internet.protocol() + '://' + faker.internet.domainName();

self.url.schema = {
"description": "Generates a random URL. The URL could be secure or insecure.",
"sampleResults": [
"http://rashawn.name",
"https://rashawn.name"
]
};
/**
* domainName
*
* @method faker.internet.domainName
*/
self.domainName = function () {

@@ -53,2 +166,12 @@ return faker.internet.domainWord() + "." + faker.internet.domainSuffix();

self.domainName.schema = {
"description": "Generates a random domain name.",
"sampleResults": ["marvin.org"]
};
/**
* domainSuffix
*
* @method faker.internet.domainSuffix
*/
self.domainSuffix = function () {

@@ -58,6 +181,26 @@ return faker.random.arrayElement(faker.definitions.internet.domain_suffix);

self.domainSuffix.schema = {
"description": "Generates a random domain suffix.",
"sampleResults": ["net"]
};
/**
* domainWord
*
* @method faker.internet.domainWord
*/
self.domainWord = function () {
return faker.name.firstName().replace(/([\\~#&*{}/:<>?|\"])/ig, '').toLowerCase();
return faker.name.firstName().replace(/([\\~#&*{}/:<>?|\"'])/ig, '').toLowerCase();
};
self.domainWord.schema = {
"description": "Generates a random domain word.",
"sampleResults": ["alyce"]
};
/**
* ip
*
* @method faker.internet.ip
*/
self.ip = function () {

@@ -76,2 +219,12 @@ var randNum = function () {

self.ip.schema = {
"description": "Generates a random IP.",
"sampleResults": ["97.238.241.11"]
};
/**
* userAgent
*
* @method faker.internet.userAgent
*/
self.userAgent = function () {

@@ -81,2 +234,15 @@ return random_ua.generate();

self.userAgent.schema = {
"description": "Generates a random user agent.",
"sampleResults": ["Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_7_5 rv:6.0; SL) AppleWebKit/532.0.1 (KHTML, like Gecko) Version/7.1.6 Safari/532.0.1"]
};
/**
* color
*
* @method faker.internet.color
* @param {number} baseRed255
* @param {number} baseGreen255
* @param {number} baseBlue255
*/
self.color = function (baseRed255, baseGreen255, baseBlue255) {

@@ -100,6 +266,33 @@ baseRed255 = baseRed255 || 0;

self.color.schema = {
"description": "Generates a random hexadecimal color.",
"sampleResults": ["#06267f"],
"properties": {
"baseRed255": {
"type": "number",
"required": false,
"description": "The red value. Valid values are 0 - 255."
},
"baseGreen255": {
"type": "number",
"required": false,
"description": "The green value. Valid values are 0 - 255."
},
"baseBlue255": {
"type": "number",
"required": false,
"description": "The blue value. Valid values are 0 - 255."
}
}
};
/**
* mac
*
* @method faker.internet.mac
*/
self.mac = function(){
var i, mac = "";
for (i=0; i < 12; i++) {
mac+= parseInt(Math.random()*16).toString(16);
mac+= faker.random.number(15).toString(16);
if (i%2==1 && i != 11) {

@@ -112,2 +305,16 @@ mac+=":";

self.mac.schema = {
"description": "Generates a random mac address.",
"sampleResults": ["78:06:cc:ae:b3:81"]
};
/**
* password
*
* @method faker.internet.password
* @param {number} len
* @param {boolean} memorable
* @param {string} pattern
* @param {string} prefix
*/
self.password = function (len, memorable, pattern, prefix) {

@@ -120,3 +327,33 @@ len = len || 15;

}
self.password.schema = {
"description": "Generates a random password.",
"sampleResults": [
"AM7zl6Mg",
"susejofe"
],
"properties": {
"length": {
"type": "number",
"required": false,
"description": "The number of characters in the password."
},
"memorable": {
"type": "boolean",
"required": false,
"description": "Whether a password should be easy to remember."
},
"pattern": {
"type": "regex",
"required": false,
"description": "A regex to match each character of the password against. This parameter will be negated if the memorable setting is turned on."
},
"prefix": {
"type": "string",
"required": false,
"description": "A value to prepend to the generated password. The prefix counts towards the length of the password."
}
}
};
};

@@ -123,0 +360,0 @@

@@ -19,2 +19,3 @@ exports['de'] = require('./locales/de');

exports['ge'] = require('./locales/ge');
exports['id_ID'] = require('./locales/id_ID');
exports['it'] = require('./locales/it');

@@ -21,0 +22,0 @@ exports['ja'] = require('./locales/ja');

@@ -7,2 +7,3 @@ var de_CH = {};

de_CH.internet = require("./internet");
de_CH.name = require("./name");
de_CH.phone_number = require("./phone_number");

@@ -6,1 +6,2 @@ var address = {};

address.default_country = require("./default_country");
address.postcode = require("./postcode");

@@ -20,1 +20,2 @@ var en = {};

en.date = require("./date");
en.system = require("./system");
var internet = {};
module['exports'] = internet;
internet.free_email = require("./free_email");
internet.example_email = require("./example_email");
internet.domain_suffix = require("./domain_suffix");
internet.avatar_uri = require("./avatar_uri");
module["exports"] = [
"rojo",
   "verde",
   "azul",
   "amarillo",
   "morado",
   "Menta verde",
   "teal",
   "blanco",
   "negro",
   "Naranja",
   "Rosa",
   "gris",
   "marrón",
   "violeta",
   "turquesa",
   "tan",
   "cielo azul",
   "salmón",
   "ciruela",
   "orquídea",
   "aceituna",
   "magenta",
   "Lima",
   "marfil",
   "índigo",
   "oro",
   "fucsia",
   "cian",
   "azul",
   "lavanda",
   "plata"
"verde",
"azul",
"amarillo",
"morado",
"Menta verde",
"teal",
"blanco",
"negro",
"Naranja",
"Rosa",
"gris",
"marrón",
"violeta",
"turquesa",
"tan",
"cielo azul",
"salmón",
"ciruela",
"orquídea",
"aceituna",
"magenta",
"Lima",
"marfil",
"índigo",
"oro",
"fucsia",
"cian",
"azul",
"lavanda",
"plata"
];
module["exports"] = [
"Libros",
   "Películas",
   "Música",
   "Juegos",
   "Electrónica",
   "Ordenadores",
   "Hogar",
   "Jardín",
   "Herramientas",
   "Ultramarinos",
   "Salud",
   "Belleza",
   "Juguetes",
   "Kids",
   "Baby",
   "Ropa",
   "Zapatos",
   "Joyería",
   "Deportes",
   "Aire libre",
   "Automoción",
   "Industrial"
"Películas",
"Música",
"Juegos",
"Electrónica",
"Ordenadores",
"Hogar",
"Jardín",
"Herramientas",
"Ultramarinos",
"Salud",
"Belleza",
"Juguetes",
"Kids",
"Baby",
"Ropa",
"Zapatos",
"Joyería",
"Deportes",
"Aire libre",
"Automoción",
"Industrial"
];
module["exports"] = {
"adjective": [
     "Pequeño",
     "Ergonómico",
     "Rústico",
     "Inteligente",
     "Gorgeous",
     "Increíble",
     "Fantástico",
     "Práctica",
     "Elegante",
     "Increíble",
     "Genérica",
     "Artesanal",
     "Hecho a mano",
     "Licencia",
     "Refinado",
     "Sin marca",
     "Sabrosa"
   ],
"Pequeño",
"Ergonómico",
"Rústico",
"Inteligente",
"Gorgeous",
"Increíble",
"Fantástico",
"Práctica",
"Elegante",
"Increíble",
"Genérica",
"Artesanal",
"Hecho a mano",
"Licencia",
"Refinado",
"Sin marca",
"Sabrosa"
],
"material": [
     "Acero",
     "Madera",
     "Hormigón",
     "Plástico",
     "Cotton",
     "Granito",
     "Caucho",
     "Metal",
     "Soft",
     "Fresco",
     "Frozen"
   ],
"Acero",
"Madera",
"Hormigón",
"Plástico",
"Cotton",
"Granito",
"Caucho",
"Metal",
"Soft",
"Fresco",
"Frozen"
],
"product": [
     "Presidente",
     "Auto",
     "Computadora",
     "Teclado",
     "Ratón",
     "Bike",
     "Pelota",
     "Guantes",
     "Pantalones",
     "Camisa",
     "Mesa",
     "Zapatos",
     "Sombrero",
     "Toallas",
     "Jabón",
     "Tuna",
     "Pollo",
     "Pescado",
     "Queso",
     "Tocino",
     "Pizza",
     "Ensalada",
     "Embutidos"
"Presidente",
"Auto",
"Computadora",
"Teclado",
"Ratón",
"Bike",
"Pelota",
"Guantes",
"Pantalones",
"Camisa",
"Mesa",
"Zapatos",
"Sombrero",
"Toallas",
"Jabón",
"Tuna",
"Pollo",
"Pescado",
"Queso",
"Tocino",
"Pizza",
"Ensalada",
"Embutidos"
]
};
module["exports"] = [
"Clics y mortero",
  "Valor añadido",
  "Vertical",
  "Proactivo",
  "Robusto",
  "Revolucionario",
  "Escalable",
  "De vanguardia",
  "Innovador",
  "Intuitivo",
  "Estratégico",
  "E-business",
  "Misión crítica",
  "Pegajosa",
  "Doce y cincuenta y nueve de la noche",
  "24/7",
  "De extremo a extremo",
  "Global",
  "B2B",
  "B2C",
  "Granular",
  "Fricción",
  "Virtual",
  "Viral",
  "Dinámico",
  "24/365",
  "Mejor de su clase",
  "Asesino",
  "Magnética",
  "Filo sangriento",
  "Habilitado web",
  "Interactiva",
  "Punto com",
  "Sexy",
  "Back-end",
  "Tiempo real",
  "Eficiente",
  "Frontal",
  "Distribuida",
  "Sin costura",
  "Extensible",
  "Llave en mano",
  "Clase mundial",
  "Código abierto",
  "Multiplataforma",
  "Cross-media",
  "Sinérgico",
  "ladrillos y clics",
  "Fuera de la caja",
  "Empresa",
  "Integrado",
  "Impactante",
  "Inalámbrico",
  "Transparente",
  "Próxima generación",
  "Innovador",
  "User-centric",
  "Visionario",
  "A medida",
  "Ubicua",
  "Enchufa y juega",
  "Colaboración",
  "Convincente",
  "Holístico",
  "Ricos"
];
"Valor añadido",
"Vertical",
"Proactivo",
"Robusto",
"Revolucionario",
"Escalable",
"De vanguardia",
"Innovador",
"Intuitivo",
"Estratégico",
"E-business",
"Misión crítica",
"Pegajosa",
"Doce y cincuenta y nueve de la noche",
"24/7",
"De extremo a extremo",
"Global",
"B2B",
"B2C",
"Granular",
"Fricción",
"Virtual",
"Viral",
"Dinámico",
"24/365",
"Mejor de su clase",
"Asesino",
"Magnética",
"Filo sangriento",
"Habilitado web",
"Interactiva",
"Punto com",
"Sexy",
"Back-end",
"Tiempo real",
"Eficiente",
"Frontal",
"Distribuida",
"Sin costura",
"Extensible",
"Llave en mano",
"Clase mundial",
"Código abierto",
"Multiplataforma",
"Cross-media",
"Sinérgico",
"ladrillos y clics",
"Fuera de la caja",
"Empresa",
"Integrado",
"Impactante",
"Inalámbrico",
"Transparente",
"Próxima generación",
"Innovador",
"User-centric",
"Visionario",
"A medida",
"Ubicua",
"Enchufa y juega",
"Colaboración",
"Convincente",
"Holístico",
"Ricos"
];
module["exports"] = [
"sinergias",
   "web-readiness",
   "paradigmas",
   "mercados",
   "asociaciones",
   "infraestructuras",
   "plataformas",
   "iniciativas",
   "canales",
   "ojos",
   "comunidades",
   "ROI",
   "soluciones",
   "minoristas electrónicos",
   "e-servicios",
   "elementos de acción",
   "portales",
   "nichos",
   "tecnologías",
   "contenido",
   "vortales",
   "cadenas de suministro",
   "convergencia",
   "relaciones",
   "arquitecturas",
   "interfaces",
   "mercados electrónicos",
   "e-commerce",
   "sistemas",
   "ancho de banda",
   "infomediarios",
   "modelos",
   "Mindshare",
   "entregables",
   "usuarios",
   "esquemas",
   "redes",
   "aplicaciones",
   "métricas",
   "e-business",
   "funcionalidades",
   "experiencias",
   "servicios web",
   "metodologías"
];
"web-readiness",
"paradigmas",
"mercados",
"asociaciones",
"infraestructuras",
"plataformas",
"iniciativas",
"canales",
"ojos",
"comunidades",
"ROI",
"soluciones",
"minoristas electrónicos",
"e-servicios",
"elementos de acción",
"portales",
"nichos",
"tecnologías",
"contenido",
"vortales",
"cadenas de suministro",
"convergencia",
"relaciones",
"arquitecturas",
"interfaces",
"mercados electrónicos",
"e-commerce",
"sistemas",
"ancho de banda",
"infomediarios",
"modelos",
"Mindshare",
"entregables",
"usuarios",
"esquemas",
"redes",
"aplicaciones",
"métricas",
"e-business",
"funcionalidades",
"experiencias",
"servicios web",
"metodologías"
];
module["exports"] = [
"poner en práctica",
   "utilizar",
   "integrar",
   "racionalizar",
   "optimizar",
   "evolucionar",
   "transformar",
   "abrazar",
   "habilitar",
   "orquestar",
   "apalancamiento",
   "reinventar",
   "agregado",
   "arquitecto",
   "mejorar",
   "incentivar",
   "transformarse",
   "empoderar",
   "Envisioneer",
   "monetizar",
   "arnés",
   "facilitar",
   "aprovechar",
   "desintermediar",
   "sinergia",
   "estrategias",
   "desplegar",
   "marca",
   "crecer",
   "objetivo",
   "sindicato",
   "sintetizar",
   "entregue",
   "malla",
   "incubar",
   "enganchar",
   "maximizar",
   "punto de referencia",
   "acelerar",
   "reintermediate",
   "pizarra",
   "visualizar",
   "reutilizar",
   "innovar",
   "escala",
   "desatar",
   "conducir",
   "extender",
   "ingeniero",
   "revolucionar",
   "generar",
   "explotar",
   "transición",
   "e-enable",
   "repetir",
   "cultivar",
   "matriz",
   "productize",
   "redefinir",
   "recontextualizar"
]
"utilizar",
"integrar",
"racionalizar",
"optimizar",
"evolucionar",
"transformar",
"abrazar",
"habilitar",
"orquestar",
"apalancamiento",
"reinventar",
"agregado",
"arquitecto",
"mejorar",
"incentivar",
"transformarse",
"empoderar",
"Envisioneer",
"monetizar",
"arnés",
"facilitar",
"aprovechar",
"desintermediar",
"sinergia",
"estrategias",
"desplegar",
"marca",
"crecer",
"objetivo",
"sindicato",
"sintetizar",
"entregue",
"malla",
"incubar",
"enganchar",
"maximizar",
"punto de referencia",
"acelerar",
"reintermediate",
"pizarra",
"visualizar",
"reutilizar",
"innovar",
"escala",
"desatar",
"conducir",
"extender",
"ingeniero",
"revolucionar",
"generar",
"explotar",
"transición",
"e-enable",
"repetir",
"cultivar",
"matriz",
"productize",
"redefinir",
"recontextualizar"
]
module["exports"] = [
"hormigas",
   "murciélagos",
   "osos",
   "abejas",
   "pájaros",
   "búfalo",
   "gatos",
   "pollos",
   "ganado",
   "perros",
   "delfines",
   "patos",
   "elefantes",
   "peces",
   "zorros",
   "ranas",
   "gansos",
   "cabras",
   "caballos",
   "canguros",
   "leones",
   "monos",
   "búhos",
   "bueyes",
   "pingüinos",
   "pueblo",
   "cerdos",
   "conejos",
   "ovejas",
   "tigres",
   "ballenas",
   "lobos",
   "cebras",
   "almas en pena",
   "cuervos",
   "gatos negros",
   "quimeras",
   "fantasmas",
   "conspiradores",
   "dragones",
   "enanos",
   "duendes",
   "encantadores",
   "exorcistas",
   "hijos",
   "enemigos",
   "gigantes",
   "gnomos",
   "duendes",
   "gansos",
   "grifos",
   "licántropos",
   "némesis",
   "ogros",
   "oráculos",
   "profetas",
   "hechiceros",
   "arañas",
   "espíritus",
   "vampiros",
   "brujos",
   "zorras",
   "hombres lobo",
   "brujas",
   "adoradores",
   "zombies",
   "druidas"
"murciélagos",
"osos",
"abejas",
"pájaros",
"búfalo",
"gatos",
"pollos",
"ganado",
"perros",
"delfines",
"patos",
"elefantes",
"peces",
"zorros",
"ranas",
"gansos",
"cabras",
"caballos",
"canguros",
"leones",
"monos",
"búhos",
"bueyes",
"pingüinos",
"pueblo",
"cerdos",
"conejos",
"ovejas",
"tigres",
"ballenas",
"lobos",
"cebras",
"almas en pena",
"cuervos",
"gatos negros",
"quimeras",
"fantasmas",
"conspiradores",
"dragones",
"enanos",
"duendes",
"encantadores",
"exorcistas",
"hijos",
"enemigos",
"gigantes",
"gnomos",
"duendes",
"gansos",
"grifos",
"licántropos",
"némesis",
"ogros",
"oráculos",
"profetas",
"hechiceros",
"arañas",
"espíritus",
"vampiros",
"brujos",
"zorras",
"hombres lobo",
"brujas",
"adoradores",
"zombies",
"druidas"
];
var name = {};
module['exports'] = name;
name.man_first_name = require("./man_first_name");
name.woman_first_name = require("./woman_first_name");
name.man_last_name = require("./man_last_name");
name.woman_last_name = require("./woman_last_name");
name.male_first_name = require("./male_first_name");
name.female_first_name = require("./female_first_name");
name.male_last_name = require("./male_last_name");
name.female_last_name = require("./female_last_name");
name.prefix = require("./prefix");

@@ -8,0 +8,0 @@ name.suffix = require("./suffix");

@@ -12,1 +12,2 @@ var sv = {};

sv.team = require("./team");
sv.date = require("./date");
/**
*
* @namespace faker.lorem
*/
var Lorem = function (faker) {

@@ -6,10 +10,37 @@ var self = this;

/**
* word
*
* @method faker.lorem.word
* @param {number} num
*/
self.word = function (num) {
return faker.random.arrayElement(faker.definitions.lorem.words);
};
/**
* generates a space separated list of words
*
* @method faker.lorem.words
* @param {number} num number of words, defaults to 3
*/
self.words = function (num) {
if (typeof num == 'undefined') { num = 3; }
return Helpers.shuffle(faker.definitions.lorem.words).slice(0, num);
var words = [];
for (var i = 0; i < num; i++) {
words.push(faker.lorem.word());
}
return words.join(' ');
};
/**
* sentence
*
* @method faker.lorem.sentence
* @param {number} wordCount defaults to a random number between 3 and 10
* @param {number} range
*/
self.sentence = function (wordCount, range) {
if (typeof wordCount == 'undefined') { wordCount = 3; }
if (typeof range == 'undefined') { range = 7; }
if (typeof wordCount == 'undefined') { wordCount = faker.random.number({ min: 3, max: 10 }); }
// if (typeof range == 'undefined') { range = 7; }

@@ -19,8 +50,16 @@ // strange issue with the node_min_test failing for captialize, please fix and add faker.lorem.back

var sentence = faker.lorem.words(wordCount + faker.random.number(range)).join(' ');
var sentence = faker.lorem.words(wordCount);
return sentence.charAt(0).toUpperCase() + sentence.slice(1) + '.';
};
self.sentences = function (sentenceCount) {
if (typeof sentenceCount == 'undefined') { sentenceCount = 3; }
/**
* sentences
*
* @method faker.lorem.sentences
* @param {number} sentenceCount defautls to a random number between 2 and 6
* @param {string} separator defaults to `' '`
*/
self.sentences = function (sentenceCount, separator) {
if (typeof sentenceCount === 'undefined') { sentenceCount = faker.random.number({ min: 2, max: 6 });}
if (typeof separator == 'undefined') { separator = " "; }
var sentences = [];

@@ -30,5 +69,11 @@ for (sentenceCount; sentenceCount > 0; sentenceCount--) {

}
return sentences.join("\n");
return sentences.join(separator);
};
/**
* paragraph
*
* @method faker.lorem.paragraph
* @param {number} sentenceCount defaults to 3
*/
self.paragraph = function (sentenceCount) {

@@ -39,2 +84,9 @@ if (typeof sentenceCount == 'undefined') { sentenceCount = 3; }

/**
* paragraphs
*
* @method faker.lorem.paragraphs
* @param {number} paragraphCount defaults to 3
* @param {string} separatora defaults to `'\n \r'`
*/
self.paragraphs = function (paragraphCount, separator) {

@@ -51,3 +103,26 @@ if (typeof separator === "undefined") {

}
/**
* returns random text based on a random lorem method
*
* @method faker.lorem.text
* @param {number} times
*/
self.text = function loremText (times) {
var loremMethods = ['lorem.word', 'lorem.words', 'lorem.sentence', 'lorem.sentences', 'lorem.paragraph', 'lorem.paragraphs', 'lorem.lines'];
var randomLoremMethod = faker.random.arrayElement(loremMethods);
return faker.fake('{{' + randomLoremMethod + '}}');
};
/**
* returns lines of lorem separated by `'\n'`
*
* @method faker.lorem.lines
* @param {number} lineCount defaults to a random number between 1 and 5
*/
self.lines = function lines (lineCount) {
if (typeof lineCount === 'undefined') { lineCount = faker.random.number({ min: 1, max: 5 });}
return faker.lorem.sentences(lineCount, '\n')
};
return self;

@@ -54,0 +129,0 @@ };

@@ -0,3 +1,14 @@

/**
*
* @namespace faker.name
*/
function Name (faker) {
/**
* firstName
*
* @method firstName
* @param {mixed} gender
* @memberof faker.name
*/
this.firstName = function (gender) {

@@ -19,2 +30,9 @@ if (typeof faker.definitions.name.male_first_name !== "undefined" && typeof faker.definitions.name.female_first_name !== "undefined") {

/**
* lastName
*
* @method lastName
* @param {mixed} gender
* @memberof faker.name
*/
this.lastName = function (gender) {

@@ -36,2 +54,11 @@ if (typeof faker.definitions.name.male_last_name !== "undefined" && typeof faker.definitions.name.female_last_name !== "undefined") {

/**
* findName
*
* @method findName
* @param {string} firstName
* @param {string} lastName
* @param {mixed} gender
* @memberof faker.name
*/
this.findName = function (firstName, lastName, gender) {

@@ -49,3 +76,3 @@ var r = faker.random.number(8);

case 0:
prefix = faker.name.prefix();
prefix = faker.name.prefix(gender);
if (prefix) {

@@ -55,3 +82,3 @@ return prefix + " " + firstName + " " + lastName;

case 1:
suffix = faker.name.prefix();
suffix = faker.name.suffix(gender);
if (suffix) {

@@ -65,2 +92,8 @@ return firstName + " " + lastName + " " + suffix;

/**
* jobTitle
*
* @method jobTitle
* @memberof faker.name
*/
this.jobTitle = function () {

@@ -71,7 +104,30 @@ return faker.name.jobDescriptor() + " " +

};
this.prefix = function () {
return faker.random.arrayElement(faker.definitions.name.prefix);
/**
* prefix
*
* @method prefix
* @param {mixed} gender
* @memberof faker.name
*/
this.prefix = function (gender) {
if (typeof faker.definitions.name.male_prefix !== "undefined" && typeof faker.definitions.name.female_prefix !== "undefined") {
if (typeof gender !== 'number') {
gender = faker.random.number(1);
}
if (gender === 0) {
return faker.random.arrayElement(faker.locales[faker.locale].name.male_prefix);
} else {
return faker.random.arrayElement(faker.locales[faker.locale].name.female_prefix);
}
}
return faker.random.arrayElement(faker.definitions.name.prefix);
};
/**
* suffix
*
* @method suffix
* @memberof faker.name
*/
this.suffix = function () {

@@ -81,2 +137,8 @@ return faker.random.arrayElement(faker.definitions.name.suffix);

/**
* title
*
* @method title
* @memberof faker.name
*/
this.title = function() {

@@ -90,2 +152,8 @@ var descriptor = faker.random.arrayElement(faker.definitions.name.title.descriptor),

/**
* jobDescriptor
*
* @method jobDescriptor
* @memberof faker.name
*/
this.jobDescriptor = function () {

@@ -95,2 +163,8 @@ return faker.random.arrayElement(faker.definitions.name.title.descriptor);

/**
* jobArea
*
* @method jobArea
* @memberof faker.name
*/
this.jobArea = function () {

@@ -100,2 +174,8 @@ return faker.random.arrayElement(faker.definitions.name.title.level);

/**
* jobType
*
* @method jobType
* @memberof faker.name
*/
this.jobType = function () {

@@ -107,2 +187,2 @@ return faker.random.arrayElement(faker.definitions.name.title.job);

module['exports'] = Name;
module['exports'] = Name;

@@ -0,4 +1,14 @@

/**
*
* @namespace faker.phone
*/
var Phone = function (faker) {
var self = this;
/**
* phoneNumber
*
* @method faker.phone.phoneNumber
* @param {string} format
*/
self.phoneNumber = function (format) {

@@ -10,2 +20,8 @@ format = format || faker.phone.phoneFormats();

// FIXME: this is strange passing in an array index.
/**
* phoneNumberFormat
*
* @method faker.phone.phoneFormatsArrayIndex
* @param phoneFormatsArrayIndex
*/
self.phoneNumberFormat = function (phoneFormatsArrayIndex) {

@@ -16,2 +32,7 @@ phoneFormatsArrayIndex = phoneFormatsArrayIndex || 0;

/**
* phoneFormats
*
* @method faker.phone.phoneFormats
*/
self.phoneFormats = function () {

@@ -18,0 +39,0 @@ return faker.random.arrayElement(faker.definitions.phone_number.formats);

var mersenne = require('../vendor/mersenne');
/**
*
* @namespace faker.random
*/
function Random (faker, seed) {

@@ -13,3 +17,8 @@ // Use a user provided seed if it exists

}
// returns a single random number based on a max number or range
/**
* returns a single random number based on a max number or range
*
* @method faker.random.number
* @param {mixed} options
*/
this.number = function (options) {

@@ -49,3 +58,8 @@

// takes an array and returns a random element of the array
/**
* takes an array and returns a random element of the array
*
* @method faker.random.arrayElement
* @param {array} array
*/
this.arrayElement = function (array) {

@@ -57,3 +71,9 @@ array = array || ["a", "b", "c"];

// takes an object and returns the randomly key or value
/**
* takes an object and returns the randomly key or value
*
* @method faker.random.objectElement
* @param {object} object
* @param {mixed} field
*/
this.objectElement = function (object, field) {

@@ -67,6 +87,12 @@ object = object || { "foo": "bar", "too": "car" };

/**
* uuid
*
* @method faker.random.uuid
*/
this.uuid = function () {
var self = this;
var RFC4122_TEMPLATE = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';
var replacePlaceholders = function (placeholder) {
var random = Math.random()*16|0;
var random = self.number({ min: 0, max: 15 });
var value = placeholder == 'x' ? random : (random &0x3 | 0x8);

@@ -78,6 +104,103 @@ return value.toString(16);

this.boolean =function () {
/**
* boolean
*
* @method faker.random.boolean
*/
this.boolean = function () {
return !!faker.random.number(1)
}
// TODO: have ability to return specific type of word? As in: noun, adjective, verb, etc
/**
* word
*
* @method faker.random.word
* @param {string} type
*/
this.word = function randomWord (type) {
var wordMethods = [
'commerce.department',
'commerce.productName',
'commerce.productAdjective',
'commerce.productMaterial',
'commerce.product',
'commerce.color',
'company.catchPhraseAdjective',
'company.catchPhraseDescriptor',
'company.catchPhraseNoun',
'company.bsAdjective',
'company.bsBuzz',
'company.bsNoun',
'address.streetSuffix',
'address.county',
'address.country',
'address.state',
'finance.accountName',
'finance.transactionType',
'finance.currencyName',
'hacker.noun',
'hacker.verb',
'hacker.adjective',
'hacker.ingverb',
'hacker.abbreviation',
'name.jobDescriptor',
'name.jobArea',
'name.jobType'];
// randomly pick from the many faker methods that can generate words
var randomWordMethod = faker.random.arrayElement(wordMethods);
return faker.fake('{{' + randomWordMethod + '}}');
}
/**
* randomWords
*
* @method faker.random.words
* @param {number} count defaults to a random value between 1 and 3
*/
this.words = function randomWords (count) {
var words = [];
if (typeof count === "undefined") {
count = faker.random.number({min:1, max: 3});
}
for (var i = 0; i<count; i++) {
words.push(faker.random.word());
}
return words.join(' ');
}
/**
* locale
*
* @method faker.random.image
*/
this.image = function randomImage () {
return faker.image.image();
}
/**
* locale
*
* @method faker.random.locale
*/
this.locale = function randomLocale () {
return faker.random.arrayElement(Object.keys(faker.locales));
};
/**
* alphaNumeric
*
* @method faker.random.alphaNumeric
*/
this.alphaNumeric = function alphaNumeric() {
return faker.random.arrayElement(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]);
}
return this;

@@ -88,5 +211,1 @@

module['exports'] = Random;
// module.exports = random;

@@ -5,2 +5,2 @@ var Faker = require('../lib');

faker.locales['en'] = require('../lib/locales/en');
module['exports'] = faker;
module['exports'] = faker;
Npm.depends({
'faker': '2.1.1'
'faker': '3.0.1'
});

@@ -9,4 +9,5 @@

name: "practicalmeteor:faker",
version: "2.1.1_1",
git: "https://github.com/practicalmeteor/faker.js.git"
version: "3.0.1_1",
git: "https://github.com/practicalmeteor/meteor-faker.git",
documentation: 'Readme.md'
});

@@ -13,0 +14,0 @@

{
"name": "faker",
"description": "Generate massive amounts of fake contextual data",
"version": "3.0.1",
"version": "3.1.0",
"contributors": [

@@ -14,3 +14,6 @@ "Marak Squires <marak.squires@gmail.com>",

"scripts": {
"test": "node_modules/.bin/mocha test/*.*.js"
"lint": "node_modules/.bin/jshint ./lib --config ./.jshintrc",
"test": "node_modules/.bin/mocha test/*.*.js",
"build": "cd build && ../node_modules/.bin/gulp && cd ../",
"doc": "jsdoc -c conf.json -t ./node_modules/ink-docstrap/template -R README.md lib"
},

@@ -20,8 +23,11 @@ "devDependencies": {

"gulp": "3.8.8",
"gulp-gh-pages": "^0.5.4",
"gulp-jsdoc3": "^0.2.1",
"gulp-mustache": "0.4.0",
"gulp-rename": "1.2.0",
"gulp-uglify": "1.0.1",
"istanbul": "0.1.25",
"ink-docstrap": "1.1.4",
"jsdoc": "^3.4.0",
"jshint": "0.9.0",
"lodash": "^2.4.1",
"lodash": "^4.6.1",
"mocha": "1.8.x",

@@ -31,7 +37,8 @@ "node-minify": "*",

"sinon": "1.4.2",
"vinyl-transform": "0.0.1",
"through2": "2.0.0"
"through2": "2.0.0",
"vinyl-transform": "0.0.1"
},
"license": "MIT",
"main": "index.js"
"main": "index.js",
"dependencies": {}
}

@@ -48,3 +48,3 @@ # faker.js - generate massive amounts of fake data in the browser and node.js

As of version `v3.0.0` faker.js contains a super useful generator method `Faker.fake` for combining faker API methods using a mustache string format.
faker.js contains a super useful generator method `Faker.fake` for combining faker API methods using a mustache string format.

@@ -54,3 +54,3 @@ **Example:**

``` js
console.log(faker.fake(', '));
console.log(faker.fake("{{name.lastName}}, {{name.firstName}} {{name.suffix}}"));
// outputs: "Marks, Dean Sr."

@@ -61,2 +61,6 @@ ```

### JSDoc API Browser
[http://marak.github.io/faker.js/](http://marak.github.io/faker.js/)
### API Methods

@@ -118,2 +122,3 @@

* currencySymbol
* bitcoinAddress
* hacker

@@ -157,2 +162,3 @@ * abbreviation

* email
* exampleEmail
* userName

@@ -170,2 +176,3 @@ * protocol

* lorem
* word
* words

@@ -176,2 +183,4 @@ * sentence

* paragraphs
* text
* lines
* name

@@ -198,2 +207,18 @@ * firstName

* boolean
* word
* words
* image
* locale
* alphaNumeric
* system
* fileName
* commonFileName
* mimeType
* commonFileType
* commonFileExt
* fileType
* fileExt
* directoryPath
* filePath
* semver

@@ -203,5 +228,5 @@

As of version `v2.0.0` faker.js supports over 27 different language definition packs.
As of version `v2.0.0` faker.js has support for multiple localities.
The default language is set to English.
The default language locale is set to English.

@@ -233,2 +258,3 @@ Setting a new locale is simple:

* ge
* id_ID
* it

@@ -288,12 +314,30 @@ * ja

#### Meteor installation
#### Meteor Installation
meteor add practicalmeteor:faker
```
meteor add practicalmeteor:faker
```
#### meteor usage, both client and server
#### Meteor Usage, both client and server
var randomName = faker.name.findName(); // Rowan Nikolaus
var randomEmail = faker.internet.email(); // Kassandra.Haley@erich.biz
var randomCard = faker.helpers.createCard(); // random contact card containing many properties
```js
var randomName = faker.name.findName(); // Rowan Nikolaus
var randomEmail = faker.internet.email(); // Kassandra.Haley@erich.biz
var randomCard = faker.helpers.createCard(); // random contact card containing many properties
```
## Building faker.js
faker uses [gulp](http://gulpjs.com/) to automate it's build process. Running the following build command will generate new browser builds, documentation, and code examples for the project.
```
npm run-script build
```
## Building JSDocs
```
npm run-script doc
```
## Version Release Schedule

@@ -305,7 +349,7 @@

## Authors
## Maintainer
#### Matthew Bergman & Marak Squires
#### Marak Squires
faker.js - Copyright (c) 2014-2015
faker.js - Copyright (c) 2016
Matthew Bergman & Marak Squires

@@ -312,0 +356,0 @@ http://github.com/marak/faker.js/

@@ -205,2 +205,10 @@ if (typeof module !== 'undefined') {

})
describe("bitcoinAddress()", function(){
it("returns a random bitcoin address", function(){
var bitcoinAddress = faker.finance.bitcoinAddress();
assert.ok(bitcoinAddress.match(/^[A-Z0-9.]{27,34}$/));
});
});
});

@@ -24,2 +24,10 @@ if (typeof module !== 'undefined') {

});
/*
it.only("returns a random image url from lorempixel with a randomizer", function () {
var imageUrl = faker.image.imageUrl(100, 100, undefined, true);
console.log(imageUrl);
assert.ok(imageUrl.match(/^http:\/\/lorempixel.com\/100\/100\?[\d]+$/));
});
*/
});

@@ -26,0 +34,0 @@ describe("avatar()", function () {

@@ -19,2 +19,18 @@ if (typeof module !== 'undefined') {

describe("exampleEmail", function () {
it("returns an email with the correct name", function () {
sinon.stub(faker.internet, 'userName').returns('Aiden.Harann55');
var email = faker.internet.email("Aiden.Harann55");
var res = email.split("@");
res = res[0];
assert.equal(res, 'Aiden.Harann55');
faker.internet.userName.restore();
});
it("uses the example.[org|com|net] host", function () {
var email = faker.internet.exampleEmail();
assert.ok(email.match(/@example\.(org|com|net)$/));
});
});
describe("userName()", function () {

@@ -76,2 +92,12 @@ it("occasionally returns a single firstName", function () {

});
describe("when the firstName used contains a apostrophe", function () {
sinon.stub(faker.name, 'firstName').returns('d\'angelo');
var domain_word = faker.internet.domainWord();
it("should remove the apostrophe", function () {
assert.strictEqual(domain_word, 'dangelo');
});
faker.name.firstName.restore();
});
});

@@ -78,0 +104,0 @@

@@ -19,7 +19,7 @@ if (typeof module !== 'undefined') {

it("returns three words", function () {
var words = faker.lorem.words();
var str = faker.lorem.words();
var words = str.split(' ');
assert.ok(Array.isArray(words));
assert.equal(words.length, 3);
assert.ok(faker.helpers.shuffle.called);
assert.equal(true, words.length >= 3);
// assert.ok(faker.helpers.shuffle.called);
});

@@ -30,4 +30,4 @@ });

it("returns requested number of words", function () {
var words = faker.lorem.words(7);
var str = faker.lorem.words(7);
var words = str.split(' ');
assert.ok(Array.isArray(words));

@@ -39,2 +39,3 @@ assert.equal(words.length, 7);

/*
describe("sentence()", function () {

@@ -46,3 +47,2 @@ context("when no 'wordCount' or 'range' param passed in", function () {

var sentence = faker.lorem.sentence();
assert.ok(typeof sentence === 'string');

@@ -94,3 +94,4 @@ var parts = sentence.split(' ');

});
*/
/*
describe("sentences()", function () {

@@ -124,3 +125,4 @@ context("when no 'sentenceCount' param passed in", function () {

});
*/
/*
describe("paragraph()", function () {

@@ -159,2 +161,5 @@ context("when no 'wordCount' param passed in", function () {

});
*/
/*

@@ -189,2 +194,3 @@ describe("paragraphs()", function () {

});
*/
});

@@ -56,2 +56,3 @@ if (typeof module !== 'undefined') {

sinon.stub(faker.random, 'number').returns(1);
sinon.stub(faker.name, 'suffix').returns('Jr.');
var name = faker.name.findName();

@@ -61,3 +62,5 @@ var parts = name.split(' ');

assert.ok(parts.length >= 3);
assert.equal(parts[parts.length-1], 'Jr.');
faker.name.suffix.restore();
faker.random.number.restore();

@@ -64,0 +67,0 @@ });

@@ -51,4 +51,4 @@ if (typeof module !== 'undefined') {

assert.ok(_.contains(results, 0.5));
assert.ok(_.contains(results, 1.0));
assert.ok(_.includes(results, 0.5));
assert.ok(_.includes(results, 1.0));

@@ -107,2 +107,14 @@ assert.equal(results[0], 0);

});
describe('semver', function() {
var semver = faker.system.semver();
it('should generate a string', function() {
assert.ok(typeof semver === 'string');
});
it('should generate a valid semver', function() {
assert.ok(/^\d+\.\d+\.\d+$/.test(semver));
});
});
});

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc