From 39cca7b0961f1ba4030bf614c2a3765efc989143 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E4=BA=91?= Date: Thu, 25 Sep 2014 12:26:28 +0800 Subject: [PATCH 01/21] Update mock.js --- dist/mock.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/mock.js b/dist/mock.js index ad3f781a..c373641c 100644 --- a/dist/mock.js +++ b/dist/mock.js @@ -3,7 +3,7 @@ /*! Mock - 模拟请求 & 模拟数据 https://github.com/nuysoft/Mock - 墨智 mozhi.gyy@taobao.com nuysoft@gmail.com + 墨智 nuysoft@gmail.com */ (function(undefined) { var Mock = { @@ -1616,4 +1616,4 @@ } }; }).call(this); -}).call(this); \ No newline at end of file +}).call(this); From e61ccf6a30d0f35d64a7fa0539322caaf62cff13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Thu, 30 Oct 2014 03:06:33 +0800 Subject: [PATCH 02/21] rebuild --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e748f445..a869f6f7 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ build PLAN.md xhr.js MockHttpRequest.js +coverage \ No newline at end of file From 233dc19f8754cf1679847d3de23de60629f9d78c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Thu, 30 Oct 2014 03:37:38 +0800 Subject: [PATCH 03/21] rebuild --- Gruntfile.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index f0e2b63b..8c69b977 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -34,10 +34,7 @@ module.exports = function(grunt) { }, qunit: { files: [ - 'test/**/*.html', - '!test/mock4xtpl.html', - '!test/**/noop.*', - '!test/xhr.html' + 'test/qunit.html' ] }, nodeunit: { From c1e23623c45d2b65cb9a2d11a50206ff7532f72f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Thu, 30 Oct 2014 10:56:15 +0800 Subject: [PATCH 04/21] rebuild --- Gruntfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gruntfile.js b/Gruntfile.js index 8c69b977..b2652733 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -34,7 +34,7 @@ module.exports = function(grunt) { }, qunit: { files: [ - 'test/qunit.html' + 'test/mock.html' ] }, nodeunit: { From 3f739197ea2a06fb4398707a391870e01e77c2b4 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 20 Dec 2014 15:24:38 +0800 Subject: [PATCH 05/21] Add Random.chineseName(), #41 --- src/random.js | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/src/random.js b/src/random.js index 2d989570..e1749f62 100644 --- a/src/random.js +++ b/src/random.js @@ -1284,6 +1284,38 @@ var Random = (function() { */ name: function(middle) { return this.first() + ' ' + (middle ? this.first() + ' ' : '') + this.last() + }, + /* + ##### Random.chineseName(count) + + 随机生成一个常见的中文姓名。 + + * Random.chineseName() + * Random.chineseName(count) + + 参数的含义和默认值如下所示: + + * 参数 count:可选。数字。指示姓名的字数,默认为 2 到 3 的随机姓名。 + + 使用示例如下所示: + + Random.chineseName() + // => "林则徐" + Random.chineseName(2) + // => "马云" + */ + chineseName: function(count) { + var familyNames = '赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐'.split(''); + var names = '贵福生龙元全国胜学祥才发武新利清飞彬富顺信子杰涛昌成康星光天达安岩中茂进林有坚和彪博绍功松善厚庆磊民友裕河哲江超浩亮政谦亨奇固之轮翰朗伯宏言若鸣朋斌梁栋维启克伦翔旭鹏月莺媛艳瑞凡佳嘉琼勤珍贞莉桂娣叶璧璐娅琦晶妍茜秋珊莎锦黛青倩婷姣婉娴瑾颖露瑶怡婵雁蓓'.split(''); + if (typeof count !== 'number') { + count = Math.random() > 0.66 ? 2 : 3; + } + var familyName = this.pick(familyNames); + var name = ''; + for (var i=0; i Date: Sat, 20 Dec 2014 15:28:17 +0800 Subject: [PATCH 06/21] Remove extra return --- src/random.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/random.js b/src/random.js index b0e32ecb..5d68c318 100644 --- a/src/random.js +++ b/src/random.js @@ -1243,7 +1243,6 @@ var Random = (function() { "Brenda", "Amy", "Anna" ]) return this.pick(names) - return this.capitalize(this.word()) }, /* ##### Random.last() @@ -1268,7 +1267,6 @@ var Random = (function() { "Young", "Allen" ] return this.pick(names) - return this.capitalize(this.word()) }, /* ##### Random.name(middle) @@ -1599,4 +1597,4 @@ var Random = (function() { })() // END(BROWSER) -module.exports = Random \ No newline at end of file +module.exports = Random From 6b7f1272d7aa2dbd845b8a161f910ecf8605bb8f Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 20 Dec 2014 15:34:42 +0800 Subject: [PATCH 07/21] documentation for Random.chineseName() --- doc/random.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/doc/random.md b/doc/random.md index b7896b56..bc9578db 100644 --- a/doc/random.md +++ b/doc/random.md @@ -730,6 +730,24 @@ TODO 统计 --> Random.name(true) // => "Helen Carol Martinez" +#### Random.chineseName() + +* Random.chineseName() +* Random.chineseName(count) + +随机生成一个常见的英文姓名。 + +**参数的含义和默认值**如下所示: + +* 参数 count:可选。数字。指示姓名的字数,默认为 2 到 3 的随机姓名。 + +**使用示例**如下所示: + + Random.chineseName() + // => "林则徐" + Random.chineseName(2) + // => "马云" + ### Web #### Random.url() @@ -852,4 +870,4 @@ TODO 统计 --> Random.increment(100) // => 101 Random.increment(1000) - // => 1101 \ No newline at end of file + // => 1101 From afbbb47c5b588df9e4f2c4d586d4a78bdd83ef72 Mon Sep 17 00:00:00 2001 From: afc163 Date: Sat, 20 Dec 2014 15:42:53 +0800 Subject: [PATCH 08/21] mistake for names --- src/random.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/random.js b/src/random.js index 8c9b1f6f..088dd82a 100644 --- a/src/random.js +++ b/src/random.js @@ -1320,7 +1320,7 @@ var Random = (function() { var familyName = this.pick(familyNames); var name = ''; for (var i=0; i Date: Mon, 22 Dec 2014 16:16:10 +0800 Subject: [PATCH 09/21] =?UTF-8?q?=E4=B8=BAbower.json=E5=A2=9E=E5=8A=A0main?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix #45 --- bower.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bower.json b/bower.json index eb4c1b0e..03e47e0b 100644 --- a/bower.json +++ b/bower.json @@ -5,6 +5,9 @@ "authors": [ "nuysoft " ], + "main": [ + "dist/mock.js" + ], "license": "MIT", "ignore": [ "**/.*", From 6ba948b4b570ea9d433b54ce39db862be85529b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Wed, 24 Dec 2014 11:40:53 +0800 Subject: [PATCH 10/21] + 0.1.6 #45 #46 --- Gruntfile.js | 3 ++- bower.json | 2 +- dist/mock-min.js | 5 +++-- dist/mock-min.map | 2 +- dist/mock.js | 4 ++-- package.json | 2 +- src/mock-prefix.js | 2 +- 7 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index b2652733..bc6230c0 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -26,7 +26,8 @@ module.exports = function(grunt) { jshint: { files: ['Gruntfile.js', 'package.json', 'src/**/*.js', 'test/**/*.js', '!src/xhr.js', '!src/MockHttpRequest.js', - '!**/*-prefix.js', '!**/*-suffix.js' + '!**/*-prefix.js', '!**/*-suffix.js', + '!**/node_modules/**/*.js', '!**/bower_components/**/*.js' ], options: { jshintrc: '.jshintrc' diff --git a/bower.json b/bower.json index 03e47e0b..bfa937cc 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "Mock.js", - "version": "0.0.0", + "version": "0.1.6", "homepage": "https://github.com/nuysoft/MockService", "authors": [ "nuysoft " diff --git a/dist/mock-min.js b/dist/mock-min.js index c085d1e4..5eba3672 100644 --- a/dist/mock-min.js +++ b/dist/mock-min.js @@ -1,3 +1,4 @@ -/*! mockjs 23-06-2014 15:57:38 */ -(function(undefined){function find(a){function b(a,b){return"string"===Util.type(a)?a===b:"regexp"===Util.type(a)?a.test(b):void 0}for(var c in Mock._mocked){var d=Mock._mocked[c];if(!(d.rurl&&!b(d.rurl,a.url)||d.rtype&&!b(d.rtype,a.type.toLowerCase())))return d}}function convert(a,b){return Util.isFunction(a.template)?a.template(b):Mock.mock(a.template)}var Mock={version:"0.1.5",_mocked:{}},Util=function(){var a={};return a.extend=function(){var b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length;for(1===i&&(g=this,h=0);i>h;h++)if(b=arguments[h])for(c in b)d=g[c],e=b[c],g!==e&&e!==undefined&&(a.isArray(e)||a.isObject(e)?(a.isArray(e)&&(f=d&&a.isArray(d)?d:[]),a.isObject(e)&&(f=d&&a.isObject(d)?d:{}),g[c]=a.extend(f,e)):g[c]=e);return g},a.each=function(a,b,c){var d,e;if("number"===this.type(a))for(d=0;a>d;d++)b(d,d);else if(a.length===+a.length)for(d=0;d1/(a+b)*a?!c:c):Math.random()>=.5},bool:function(a,b,c){return this.boolean(a,b,c)},natural:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):0,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},integer:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):-9007199254740992,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},"int":function(a,b){return this.integer(a,b)},"float":function(a,b,c,d){c=c===undefined?0:c,c=Math.max(Math.min(c,17),0),d=d===undefined?17:d,d=Math.max(Math.min(d,17),0);for(var e=this.integer(a,b)+".",f=0,g=this.natural(c,d);g>f;f++)e+=this.character("number");return parseFloat(e,10)},character:function(b){var c={lower:"abcdefghijklmnopqrstuvwxyz",upper:"ABCDEFGHIJKLMNOPQRSTUVWXYZ",number:"0123456789",symbol:"!@#$%^&*()[]"};return c.alpha=c.lower+c.upper,c.undefined=c.lower+c.upper+c.number+c.symbol,b=c[(""+b).toLowerCase()]||b,b.charAt(a.natural(0,b.length-1))},"char":function(a){return this.character(a)},string:function(b,c,d){var e;3===arguments.length&&(e=a.natural(c,d)),2===arguments.length&&("string"==typeof arguments[0]?e=c:(e=a.natural(b,c),b=undefined)),1===arguments.length&&(e=b,b=undefined),0===arguments.length&&(e=a.natural(3,7));for(var f="",g=0;e>g;g++)f+=a.character(b);return f},str:function(a,b,c){return this.string(a,b,c)},range:function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1,a=+a,b=+b,c=+c;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f}}),a.extend({patternLetters:{yyyy:"getFullYear",yy:function(a){return(""+a.getFullYear()).slice(2)},y:"yy",MM:function(a){var b=a.getMonth()+1;return 10>b?"0"+b:b},M:function(a){return a.getMonth()+1},dd:function(a){var b=a.getDate();return 10>b?"0"+b:b},d:"getDate",HH:function(a){var b=a.getHours();return 10>b?"0"+b:b},H:"getHours",hh:function(a){var b=a.getHours()%12;return 10>b?"0"+b:b},h:function(a){return a.getHours()%12},mm:function(a){var b=a.getMinutes();return 10>b?"0"+b:b},m:"getMinutes",ss:function(a){var b=a.getSeconds();return 10>b?"0"+b:b},s:"getSeconds",SS:function(a){var b=a.getMilliseconds();return 10>b&&"00"+b||100>b&&"0"+b||b},S:"getMilliseconds",A:function(a){return a.getHours()<12?"AM":"PM"},a:function(a){return a.getHours()<12?"am":"pm"},T:"getTime"}}),a.extend({rformat:new RegExp(function(){var b=[];for(var c in a.patternLetters)b.push(c);return"("+b.join("|")+")"}(),"g"),format:function(b,c){var d=a.patternLetters,e=a.rformat;return c.replace(e,function(a,c){return"function"==typeof d[c]?d[c](b):d[c]in d?arguments.callee(a,d[c]):b[d[c]]()})},randomDate:function(a,b){return a=a===undefined?new Date(0):a,b=b===undefined?new Date:b,new Date(Math.random()*(b.getTime()-a.getTime()))},date:function(a){return a=a||"yyyy-MM-dd",this.format(this.randomDate(),a)},time:function(a){return a=a||"HH:mm:ss",this.format(this.randomDate(),a)},datetime:function(a){return a=a||"yyyy-MM-dd HH:mm:ss",this.format(this.randomDate(),a)},now:function(a,b){1===arguments.length&&(/year|month|week|day|hour|minute|second|week/.test(a)||(b=a,a="")),a=(a||"").toLowerCase(),b=b||"yyyy-MM-dd HH:mm:ss";var c=new Date;switch(a){case"year":c.setMonth(0);case"month":c.setDate(1);case"week":case"day":c.setHours(0);case"hour":c.setMinutes(0);case"minute":c.setSeconds(0);case"second":c.setMilliseconds(0)}switch(a){case"week":c.setDate(c.getDate()-c.getDay())}return this.format(c,b)}}),a.extend({ad_size:["300x250","250x250","240x400","336x280","180x150","720x300","468x60","234x60","88x31","120x90","120x60","120x240","125x125","728x90","160x600","120x600","300x600"],screen_size:["320x200","320x240","640x480","800x480","800x480","1024x600","1024x768","1280x800","1440x900","1920x1200","2560x1600"],video_size:["720x480","768x576","1280x720","1920x1080"],image:function(a,b,c,d,e){return 4===arguments.length&&(e=d,d=undefined),3===arguments.length&&(e=c,c=undefined),a||(a=this.pick(this.ad_size)),b&&~b.indexOf("#")&&(b=b.slice(1)),c&&~c.indexOf("#")&&(c=c.slice(1)),"http://dummyimage.com/"+a+(b?"/"+b:"")+(c?"/"+c:"")+(d?"."+d:"")+(e?"&text="+e:"")},img:function(){return this.image.apply(this,arguments)}}),a.extend({brandColors:{"4ormat":"#fb0a2a","500px":"#02adea","About.me (blue)":"#00405d","About.me (yellow)":"#ffcc33",Addvocate:"#ff6138",Adobe:"#ff0000",Aim:"#fcd20b",Amazon:"#e47911",Android:"#a4c639","Angie's List":"#7fbb00",AOL:"#0060a3",Atlassian:"#003366",Behance:"#053eff","Big Cartel":"#97b538",bitly:"#ee6123",Blogger:"#fc4f08",Boeing:"#0039a6","Booking.com":"#003580",Carbonmade:"#613854",Cheddar:"#ff7243","Code School":"#3d4944",Delicious:"#205cc0",Dell:"#3287c1",Designmoo:"#e54a4f",Deviantart:"#4e6252","Designer News":"#2d72da",Devour:"#fd0001",DEWALT:"#febd17","Disqus (blue)":"#59a3fc","Disqus (orange)":"#db7132",Dribbble:"#ea4c89",Dropbox:"#3d9ae8",Drupal:"#0c76ab",Dunked:"#2a323a",eBay:"#89c507",Ember:"#f05e1b",Engadget:"#00bdf6",Envato:"#528036",Etsy:"#eb6d20",Evernote:"#5ba525","Fab.com":"#dd0017",Facebook:"#3b5998",Firefox:"#e66000","Flickr (blue)":"#0063dc","Flickr (pink)":"#ff0084",Forrst:"#5b9a68",Foursquare:"#25a0ca",Garmin:"#007cc3",GetGlue:"#2d75a2",Gimmebar:"#f70078",GitHub:"#171515","Google Blue":"#0140ca","Google Green":"#16a61e","Google Red":"#dd1812","Google Yellow":"#fcca03","Google+":"#dd4b39",Grooveshark:"#f77f00",Groupon:"#82b548","Hacker News":"#ff6600",HelloWallet:"#0085ca","Heroku (light)":"#c7c5e6","Heroku (dark)":"#6567a5",HootSuite:"#003366",Houzz:"#73ba37",HTML5:"#ec6231",IKEA:"#ffcc33",IMDb:"#f3ce13",Instagram:"#3f729b",Intel:"#0071c5",Intuit:"#365ebf",Kickstarter:"#76cc1e",kippt:"#e03500",Kodery:"#00af81",LastFM:"#c3000d",LinkedIn:"#0e76a8",Livestream:"#cf0005",Lumo:"#576396",Mixpanel:"#a086d3",Meetup:"#e51937",Nokia:"#183693",NVIDIA:"#76b900",Opera:"#cc0f16",Path:"#e41f11","PayPal (dark)":"#1e477a","PayPal (light)":"#3b7bbf",Pinboard:"#0000e6",Pinterest:"#c8232c",PlayStation:"#665cbe",Pocket:"#ee4056",Prezi:"#318bff",Pusha:"#0f71b4",Quora:"#a82400","QUOTE.fm":"#66ceff",Rdio:"#008fd5",Readability:"#9c0000","Red Hat":"#cc0000",Resource:"#7eb400",Rockpack:"#0ba6ab",Roon:"#62b0d9",RSS:"#ee802f",Salesforce:"#1798c1",Samsung:"#0c4da2",Shopify:"#96bf48",Skype:"#00aff0",Snagajob:"#f47a20",Softonic:"#008ace",SoundCloud:"#ff7700","Space Box":"#f86960",Spotify:"#81b71a",Sprint:"#fee100",Squarespace:"#121212",StackOverflow:"#ef8236",Staples:"#cc0000","Status Chart":"#d7584f",Stripe:"#008cdd",StudyBlue:"#00afe1",StumbleUpon:"#f74425","T-Mobile":"#ea0a8e",Technorati:"#40a800","The Next Web":"#ef4423",Treehouse:"#5cb868",Trulia:"#5eab1f",Tumblr:"#34526f","Twitch.tv":"#6441a5",Twitter:"#00acee",TYPO3:"#ff8700",Ubuntu:"#dd4814",Ustream:"#3388ff",Verizon:"#ef1d1d",Vimeo:"#86c9ef",Vine:"#00a478",Virb:"#06afd8","Virgin Media":"#cc0000",Wooga:"#5b009c","WordPress (blue)":"#21759b","WordPress (orange)":"#d54e21","WordPress (grey)":"#464646",Wunderlist:"#2b88d9",XBOX:"#9bc848",XING:"#126567","Yahoo!":"#720e9e",Yandex:"#ffcc00",Yelp:"#c41200",YouTube:"#c4302b",Zalongo:"#5498dc",Zendesk:"#78a300",Zerply:"#9dcc7a",Zootool:"#5e8b1d"},brands:function(){var a=[];for(var b in this.brandColors)a.push(b);return a},dataImage:function(a,b){var c="undefined"!=typeof document&&document.createElement("canvas"),d=c&&c.getContext&&c.getContext("2d");if(!c||!d)return"";a||(a=this.pick(this.ad_size)),b=b!==undefined?b:a,a=a.split("x");var e=parseInt(a[0],10),f=parseInt(a[1],10),g=this.brandColors[this.pick(this.brands())],h="#FFF",i=14,j="sans-serif";return c.width=e,c.height=f,d.textAlign="center",d.textBaseline="middle",d.fillStyle=g,d.fillRect(0,0,e,f),d.fillStyle=h,d.font="bold "+i+"px "+j,d.fillText(b,e/2,f/2,e),c.toDataURL("image/png")}}),a.extend({color:function(){var a=Math.floor(16777215*Math.random()).toString(16);return a="#"+("000000"+a).slice(-6)}}),a.extend({capitalize:function(a){return(a+"").charAt(0).toUpperCase()+(a+"").substr(1)},upper:function(a){return(a+"").toUpperCase()},lower:function(a){return(a+"").toLowerCase()},pick:function(a){return a=a||[],a[this.natural(0,a.length-1)]},shuffle:function(a){a=a||[];for(var b=a.slice(0),c=[],d=0,e=b.length,f=0;e>f;f++)d=this.natural(0,b.length-1),c.push(b[d]),b.splice(d,1);return c}}),a.extend({paragraph:function(b,c){var d;0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.sentence());return e.join(" ")},sentence:function(b,c){var d;0===arguments.length&&(d=a.natural(12,18)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.word());return a.capitalize(e.join(" "))+"."},word:function(b,c){var d;0===arguments.length&&(d=a.natural(3,10)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e="",f=0;d>f;f++)e+=a.character("lower");return e},title:function(b,c){var d,e=[];0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var f=0;d>f;f++)e.push(this.capitalize(this.word()));return e.join(" ")}}),a.extend({first:function(){var a=["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric"].concat(["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna"]);return this.pick(a)},last:function(){var a=["Smith","Johnson","Williams","Brown","Jones","Miller","Davis","Garcia","Rodriguez","Wilson","Martinez","Anderson","Taylor","Thomas","Hernandez","Moore","Martin","Jackson","Thompson","White","Lopez","Lee","Gonzalez","Harris","Clark","Lewis","Robinson","Walker","Perez","Hall","Young","Allen"];return this.pick(a)},name:function(a){return this.first()+" "+(a?this.first()+" ":"")+this.last()}}),a.extend({url:function(){return"http://"+this.domain()+"/"+this.word()},domain:function(a){return this.word()+"."+(a||this.tld())},email:function(a){return this.character("lower")+"."+this.last().toLowerCase()+"@"+this.last().toLowerCase()+"."+this.tld()},ip:function(){return this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)},tlds:["com","org","edu","gov","co.uk","net","io"],tld:function(){return this.pick(this.tlds)}}),a.extend({areas:["东北","华北","华东","华中","华南","西南","西北"],area:function(){return this.pick(this.areas)},regions:["110000 北京市","120000 天津市","130000 河北省","140000 山西省","150000 内蒙古自治区","210000 辽宁省","220000 吉林省","230000 黑龙江省","310000 上海市","320000 江苏省","330000 浙江省","340000 安徽省","350000 福建省","360000 江西省","370000 山东省","410000 河南省","420000 湖北省","430000 湖南省","440000 广东省","450000 广西壮族自治区","460000 海南省","500000 重庆市","510000 四川省","520000 贵州省","530000 云南省","540000 西藏自治区","610000 陕西省","620000 甘肃省","630000 青海省","640000 宁夏回族自治区","650000 新疆维吾尔自治区","650000 新疆维吾尔自治区","710000 台湾省","810000 香港特别行政区","820000 澳门特别行政区"],region:function(){return this.pick(this.regions).split(" ")[1]},address:function(){},city:function(){},phone:function(){},areacode:function(){},street:function(){},street_suffixes:function(){},street_suffix:function(){},states:function(){},state:function(){},zip:function(a){for(var b="",c=0;(a||6)>c;c++)b+=this.natural(0,9);return b}}),a.extend({todo:function(){return"todo"}}),a.extend({d4:function(){return this.natural(1,4)},d6:function(){return this.natural(1,6)},d8:function(){return this.natural(1,8)},d12:function(){return this.natural(1,12)},d20:function(){return this.natural(1,20)},d100:function(){return this.natural(1,100)},guid:function(){var a="ABCDEF1234567890",b=this.string(a,8)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,12);return b},id:function(){var a,b=0,c=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],d=["1","0","X","9","8","7","6","5","4","3","2"];a=this.pick(this.regions).split(" ")[0]+this.date("yyyyMMdd")+this.string("number",3);for(var e=0;e1)a.context.path.push(a.name),d=Random.pick(Handle.gen(a.template,undefined,{currentContext:d,templateCurrentContext:a.template,path:a.context.path})),a.context.path.pop();else for(b=0;b/g,g=a.match(f),h={};for(c=0;g&&ch&&b.splice(0,b.length-h)},c.block=function(a,b,c,e,f){var g,h,i,j,k,l=a.mustache.id.parts,m=b[0],n=b.length;if(a.inverse,a.mustache.isHelper||e&&e[a.mustache.id.string])k=l[0],j=(d[k]||d.custom).apply(this,arguments),m=b[0];else for(g=0;gg;g++)m.push("undefined"!=typeof j[g]?j[g]:{}),c.__path.push("[]"),b.unshift(m[m.length-1]),this.gen(a.program,b,c,e,f),c.__path.pop(),b.shift();else this.gen(a.program,b,c,e,f);b.length>n&&b.splice(0,b.length-n)},c.hash=function(a,b,c,d,e){var f,g,h,i=a.pairs;for(g=0;gd;d++)c.__path.push(m[d]),f=m[d],g=m[d-1],l=c[g],h=d===e-1?n[f]:{},i=this.val(f,c,b,h),j=Util.type(n[f]),k=Util.type(i),"undefined"===j?n[f]=e-1>d&&"object"!==k&&"array"!==k?{}:Util.isArray(i)&&[]||i:e-1>d&&"object"!==j&&"array"!==j&&(n[f]=Util.isArray(i)&&[]||{}),j=Util.type(n[f]),("object"===j||"array"===j)&&(n=n[f],b.unshift(n));else;b.length>o&&b.splice(0,b.length-o)},c.partial=function(a,b,d,e,f){var g=a.partialName.name,h=f&&f[g],i=b.length;h&&c.gen(h,b,d,e,f),b.length>i&&b.splice(0,b.length-i)},c.content=Util.noop,c.PARTIAL_NAME=Util.noop,c.DATA=Util.noop,c.STRING=Util.noop,c.INTEGER=Util.noop,c.BOOLEAN=Util.noop,c.comment=Util.noop;var d={};d.each=function(a,b,c){var d,e,f,g,h,i,j,k=b[0];for(h=a.mustache.params[0].parts,d=0,e=h.length;e>d;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g},d["if"]=d.unless=function(a,b,c){var d,e,f,g,h,i,j,k=a.mustache.params,l=b[0];for(d=0;dd;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g}}}.call(this),function(a){if("undefined"!=typeof KISSY){var b,c={debug:!1};KISSY.use("xtemplate",function(a,c){b=c}),this.Mock||(module.exports=c),Mock.xtpl=function(a,b,d,e){return c.mock(a,b,d,e)},Mock.xparse=function(a){return b.compiler.parse(a)},c.mock=function(a,c,d,e){return d=d?Util.extend({},d,b.RunTime.commands):b.RunTime.commands,e=e?Util.extend({},e,b.RunTime.subTpls):b.RunTime.subTpls,this.gen(a,null,c,d,e,{})},c.parse=function(a){return b.compiler.parse(a)},c.gen=function(a,b,d,e,f,g){if("string"==typeof a){c.debug&&console.log("[tpl ]\n",a);var h=this.parse(a);d=this.parseOptions(a,d);var i=this.gen(h,b,d,e,f,g);return i}if(b=b||[{}],d=d||{},a.type=a.type,this[a.type]!==Util.noop){d.__path=d.__path||[],c.debug&&(console.log(),console.group("["+a.type+"]",JSON.stringify(a)),console.log("[context]","[before]",b.length,JSON.stringify(b)),console.log("[options]","[before]",d.__path.length,JSON.stringify(d)),console.log("[other ]","[before]",JSON.stringify(g)));var j=d.__path.length;return this[a.type](a,b,d,e,f,g),c.debug&&console.log("[__path ]","[after ]",d.__path),(!g.hold||"function"==typeof g.hold&&!g.hold(a,d,b))&&d.__path.splice(j),c.debug&&(console.log("[context]","[after ]",b.length,JSON.stringify(b)),console.groupEnd()),b[b.length-1]}},c.parseOptions=function(a,b){var c,d,e,f=//g,g=a.match(f),h={};for(c=0;g&&c0)return h[0];if(b in g)return g[b]}return Util.isArray(e[0])?{}:f!==a?f:b},c.program=function(a,b,c,d,e,f){for(var g=0;gj;j++)l.push(i&&i[j]!==a?i[j]:{}),d.__path.push(j),c.unshift(l[l.length-1]),this.gen(b.program,c,d,e,f,g),d.__path.pop(),c.shift();else this.gen(b.program,c,d,e,f,g);(!g.hold||"function"==typeof g.hold&&!g.hold(b,d,c))&&c.splice(0,c.length-h)},c.tpl=function(a,b,c,d,e,f){if(a.params&&a.params.length){f=Util.extend({},f,{def:{each:[],"if":"@BOOL(2,1,true)",unless:"@BOOL(2,1,false)","with":{}}[a.path.string],hold:{each:!0,"if":function(a,b,c,d,e){return"object"==typeof e},unless:function(a,b,c,d,e){return"object"==typeof e},"with":!0,include:!1}[a.path.string]});for(var g,h=0;h-1?Random.float(-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()})),this.gen(b.op2,c,d,e,f,Util.extend({},g,{def:function(){return"number"===b.op1.type?b.op1.value.indexOf(".")>-1?Random.float(-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()}))},c.relationalExpression=function(a,b,c,d,e,f){this.gen(a.op1,b,c,d,e,f),this.gen(a.op2,b,c,d,e,f)},c.equalityExpression=Util.noop,c.conditionalAndExpression=Util.noop,c.conditionalOrExpression=Util.noop,c.string=Util.noop,c.number=Util.noop,c.boolean=Util.noop,c.hash=function(a,b,c,d,e,f){var g,h=a.value;for(g in h)this.gen(h[g],b,c,d,e,f)},c.id=function(b,d,e,f,g,h){function i(a,b,c,d,e){var f=Util.type(a[d]),g=Util.type(e);return e="true"===e?!0:"false"===e?!1:e,"undefined"===f?a[d]=c-1>b&&!Util.isObjectOrArray(e)?{}:Util.isArray(e)&&[]||e:c-1>b&&"object"!==f&&"array"!==f?a[d]=Util.isArray(e)&&[]||{}:"object"!==f&&"array"!==f&&"object"!==g&&"array"!==g&&(a[d]=e),a[d]}var j,k,l,m,n,o=d.length,p=b.parts,q=d[b.depth];for(Util.isArray(q)&&(q=d[b.depth+1]),j=0,k=p.length;k>j;j++)(0!==j||"this"!==p[j])&&(/^(xindex|xcount|xkey)$/.test(p[j])||0===j&&1===k&&p[j]in f||(e.__path.push(p[j]),l=p[j],m=j===k-1?h.def!==a?h.def:d[0][l]:{},n=this.val(l,e,d,m),c.debug&&(console.log("[def ]",JSON.stringify(m)),console.log("[val ]",JSON.stringify(n))),n=i(q,j,k,l,n),Util.isObjectOrArray(q[l])&&d.unshift(q=q[l])));(!h.hold||"function"==typeof h.hold&&!h.hold(b,e,d,l,n))&&d.splice(0,d.length-o)}}}.call(this)}).call(this); +/*! mockjs 24-12-2014 11:39:10 */ + +(function(undefined){function find(a){function b(a,b){return"string"===Util.type(a)?a===b:"regexp"===Util.type(a)?a.test(b):void 0}for(var c in Mock._mocked){var d=Mock._mocked[c];if(!(d.rurl&&!b(d.rurl,a.url)||d.rtype&&!b(d.rtype,a.type.toLowerCase())))return d}}function convert(a,b){return Util.isFunction(a.template)?a.template(b):Mock.mock(a.template)}var Mock={version:"0.1.5",_mocked:{}},Util=function(){var a={};return a.extend=function(){var b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length;for(1===i&&(g=this,h=0);i>h;h++)if(b=arguments[h])for(c in b)d=g[c],e=b[c],g!==e&&e!==undefined&&(a.isArray(e)||a.isObject(e)?(a.isArray(e)&&(f=d&&a.isArray(d)?d:[]),a.isObject(e)&&(f=d&&a.isObject(d)?d:{}),g[c]=a.extend(f,e)):g[c]=e);return g},a.each=function(a,b,c){var d,e;if("number"===this.type(a))for(d=0;a>d;d++)b(d,d);else if(a.length===+a.length)for(d=0;d1/(a+b)*a?!c:c):Math.random()>=.5},bool:function(a,b,c){return this["boolean"](a,b,c)},natural:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):0,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},integer:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):-9007199254740992,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},"int":function(a,b){return this.integer(a,b)},"float":function(a,b,c,d){c=c===undefined?0:c,c=Math.max(Math.min(c,17),0),d=d===undefined?17:d,d=Math.max(Math.min(d,17),0);for(var e=this.integer(a,b)+".",f=0,g=this.natural(c,d);g>f;f++)e+=this.character("number");return parseFloat(e,10)},character:function(b){var c={lower:"abcdefghijklmnopqrstuvwxyz",upper:"ABCDEFGHIJKLMNOPQRSTUVWXYZ",number:"0123456789",symbol:"!@#$%^&*()[]"};return c.alpha=c.lower+c.upper,c.undefined=c.lower+c.upper+c.number+c.symbol,b=c[(""+b).toLowerCase()]||b,b.charAt(a.natural(0,b.length-1))},"char":function(a){return this.character(a)},string:function(b,c,d){var e;3===arguments.length&&(e=a.natural(c,d)),2===arguments.length&&("string"==typeof arguments[0]?e=c:(e=a.natural(b,c),b=undefined)),1===arguments.length&&(e=b,b=undefined),0===arguments.length&&(e=a.natural(3,7));for(var f="",g=0;e>g;g++)f+=a.character(b);return f},str:function(a,b,c){return this.string(a,b,c)},range:function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1,a=+a,b=+b,c=+c;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f}}),a.extend({patternLetters:{yyyy:"getFullYear",yy:function(a){return(""+a.getFullYear()).slice(2)},y:"yy",MM:function(a){var b=a.getMonth()+1;return 10>b?"0"+b:b},M:function(a){return a.getMonth()+1},dd:function(a){var b=a.getDate();return 10>b?"0"+b:b},d:"getDate",HH:function(a){var b=a.getHours();return 10>b?"0"+b:b},H:"getHours",hh:function(a){var b=a.getHours()%12;return 10>b?"0"+b:b},h:function(a){return a.getHours()%12},mm:function(a){var b=a.getMinutes();return 10>b?"0"+b:b},m:"getMinutes",ss:function(a){var b=a.getSeconds();return 10>b?"0"+b:b},s:"getSeconds",SS:function(a){var b=a.getMilliseconds();return 10>b&&"00"+b||100>b&&"0"+b||b},S:"getMilliseconds",A:function(a){return a.getHours()<12?"AM":"PM"},a:function(a){return a.getHours()<12?"am":"pm"},T:"getTime"}}),a.extend({rformat:new RegExp(function(){var b=[];for(var c in a.patternLetters)b.push(c);return"("+b.join("|")+")"}(),"g"),format:function(b,c){var d=a.patternLetters,e=a.rformat;return c.replace(e,function(a,c){return"function"==typeof d[c]?d[c](b):d[c]in d?arguments.callee(a,d[c]):b[d[c]]()})},randomDate:function(a,b){return a=a===undefined?new Date(0):a,b=b===undefined?new Date:b,new Date(Math.random()*(b.getTime()-a.getTime()))},date:function(a){return a=a||"yyyy-MM-dd",this.format(this.randomDate(),a)},time:function(a){return a=a||"HH:mm:ss",this.format(this.randomDate(),a)},datetime:function(a){return a=a||"yyyy-MM-dd HH:mm:ss",this.format(this.randomDate(),a)},now:function(a,b){1===arguments.length&&(/year|month|week|day|hour|minute|second|week/.test(a)||(b=a,a="")),a=(a||"").toLowerCase(),b=b||"yyyy-MM-dd HH:mm:ss";var c=new Date;switch(a){case"year":c.setMonth(0);case"month":c.setDate(1);case"week":case"day":c.setHours(0);case"hour":c.setMinutes(0);case"minute":c.setSeconds(0);case"second":c.setMilliseconds(0)}switch(a){case"week":c.setDate(c.getDate()-c.getDay())}return this.format(c,b)}}),a.extend({ad_size:["300x250","250x250","240x400","336x280","180x150","720x300","468x60","234x60","88x31","120x90","120x60","120x240","125x125","728x90","160x600","120x600","300x600"],screen_size:["320x200","320x240","640x480","800x480","800x480","1024x600","1024x768","1280x800","1440x900","1920x1200","2560x1600"],video_size:["720x480","768x576","1280x720","1920x1080"],image:function(a,b,c,d,e){return 4===arguments.length&&(e=d,d=undefined),3===arguments.length&&(e=c,c=undefined),a||(a=this.pick(this.ad_size)),b&&~b.indexOf("#")&&(b=b.slice(1)),c&&~c.indexOf("#")&&(c=c.slice(1)),"http://dummyimage.com/"+a+(b?"/"+b:"")+(c?"/"+c:"")+(d?"."+d:"")+(e?"&text="+e:"")},img:function(){return this.image.apply(this,arguments)}}),a.extend({brandColors:{"4ormat":"#fb0a2a","500px":"#02adea","About.me (blue)":"#00405d","About.me (yellow)":"#ffcc33",Addvocate:"#ff6138",Adobe:"#ff0000",Aim:"#fcd20b",Amazon:"#e47911",Android:"#a4c639","Angie's List":"#7fbb00",AOL:"#0060a3",Atlassian:"#003366",Behance:"#053eff","Big Cartel":"#97b538",bitly:"#ee6123",Blogger:"#fc4f08",Boeing:"#0039a6","Booking.com":"#003580",Carbonmade:"#613854",Cheddar:"#ff7243","Code School":"#3d4944",Delicious:"#205cc0",Dell:"#3287c1",Designmoo:"#e54a4f",Deviantart:"#4e6252","Designer News":"#2d72da",Devour:"#fd0001",DEWALT:"#febd17","Disqus (blue)":"#59a3fc","Disqus (orange)":"#db7132",Dribbble:"#ea4c89",Dropbox:"#3d9ae8",Drupal:"#0c76ab",Dunked:"#2a323a",eBay:"#89c507",Ember:"#f05e1b",Engadget:"#00bdf6",Envato:"#528036",Etsy:"#eb6d20",Evernote:"#5ba525","Fab.com":"#dd0017",Facebook:"#3b5998",Firefox:"#e66000","Flickr (blue)":"#0063dc","Flickr (pink)":"#ff0084",Forrst:"#5b9a68",Foursquare:"#25a0ca",Garmin:"#007cc3",GetGlue:"#2d75a2",Gimmebar:"#f70078",GitHub:"#171515","Google Blue":"#0140ca","Google Green":"#16a61e","Google Red":"#dd1812","Google Yellow":"#fcca03","Google+":"#dd4b39",Grooveshark:"#f77f00",Groupon:"#82b548","Hacker News":"#ff6600",HelloWallet:"#0085ca","Heroku (light)":"#c7c5e6","Heroku (dark)":"#6567a5",HootSuite:"#003366",Houzz:"#73ba37",HTML5:"#ec6231",IKEA:"#ffcc33",IMDb:"#f3ce13",Instagram:"#3f729b",Intel:"#0071c5",Intuit:"#365ebf",Kickstarter:"#76cc1e",kippt:"#e03500",Kodery:"#00af81",LastFM:"#c3000d",LinkedIn:"#0e76a8",Livestream:"#cf0005",Lumo:"#576396",Mixpanel:"#a086d3",Meetup:"#e51937",Nokia:"#183693",NVIDIA:"#76b900",Opera:"#cc0f16",Path:"#e41f11","PayPal (dark)":"#1e477a","PayPal (light)":"#3b7bbf",Pinboard:"#0000e6",Pinterest:"#c8232c",PlayStation:"#665cbe",Pocket:"#ee4056",Prezi:"#318bff",Pusha:"#0f71b4",Quora:"#a82400","QUOTE.fm":"#66ceff",Rdio:"#008fd5",Readability:"#9c0000","Red Hat":"#cc0000",Resource:"#7eb400",Rockpack:"#0ba6ab",Roon:"#62b0d9",RSS:"#ee802f",Salesforce:"#1798c1",Samsung:"#0c4da2",Shopify:"#96bf48",Skype:"#00aff0",Snagajob:"#f47a20",Softonic:"#008ace",SoundCloud:"#ff7700","Space Box":"#f86960",Spotify:"#81b71a",Sprint:"#fee100",Squarespace:"#121212",StackOverflow:"#ef8236",Staples:"#cc0000","Status Chart":"#d7584f",Stripe:"#008cdd",StudyBlue:"#00afe1",StumbleUpon:"#f74425","T-Mobile":"#ea0a8e",Technorati:"#40a800","The Next Web":"#ef4423",Treehouse:"#5cb868",Trulia:"#5eab1f",Tumblr:"#34526f","Twitch.tv":"#6441a5",Twitter:"#00acee",TYPO3:"#ff8700",Ubuntu:"#dd4814",Ustream:"#3388ff",Verizon:"#ef1d1d",Vimeo:"#86c9ef",Vine:"#00a478",Virb:"#06afd8","Virgin Media":"#cc0000",Wooga:"#5b009c","WordPress (blue)":"#21759b","WordPress (orange)":"#d54e21","WordPress (grey)":"#464646",Wunderlist:"#2b88d9",XBOX:"#9bc848",XING:"#126567","Yahoo!":"#720e9e",Yandex:"#ffcc00",Yelp:"#c41200",YouTube:"#c4302b",Zalongo:"#5498dc",Zendesk:"#78a300",Zerply:"#9dcc7a",Zootool:"#5e8b1d"},brands:function(){var a=[];for(var b in this.brandColors)a.push(b);return a},dataImage:function(a,b){var c="undefined"!=typeof document&&document.createElement("canvas"),d=c&&c.getContext&&c.getContext("2d");if(!c||!d)return"";a||(a=this.pick(this.ad_size)),b=b!==undefined?b:a,a=a.split("x");var e=parseInt(a[0],10),f=parseInt(a[1],10),g=this.brandColors[this.pick(this.brands())],h="#FFF",i=14,j="sans-serif";return c.width=e,c.height=f,d.textAlign="center",d.textBaseline="middle",d.fillStyle=g,d.fillRect(0,0,e,f),d.fillStyle=h,d.font="bold "+i+"px "+j,d.fillText(b,e/2,f/2,e),c.toDataURL("image/png")}}),a.extend({color:function(){var a=Math.floor(16777215*Math.random()).toString(16);return a="#"+("000000"+a).slice(-6)}}),a.extend({capitalize:function(a){return(a+"").charAt(0).toUpperCase()+(a+"").substr(1)},upper:function(a){return(a+"").toUpperCase()},lower:function(a){return(a+"").toLowerCase()},pick:function(a){return a=a||[],a[this.natural(0,a.length-1)]},shuffle:function(a){a=a||[];for(var b=a.slice(0),c=[],d=0,e=b.length,f=0;e>f;f++)d=this.natural(0,b.length-1),c.push(b[d]),b.splice(d,1);return c}}),a.extend({paragraph:function(b,c){var d;0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.sentence());return e.join(" ")},sentence:function(b,c){var d;0===arguments.length&&(d=a.natural(12,18)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.word());return a.capitalize(e.join(" "))+"."},word:function(b,c){var d;0===arguments.length&&(d=a.natural(3,10)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e="",f=0;d>f;f++)e+=a.character("lower");return e},title:function(b,c){var d,e=[];0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var f=0;d>f;f++)e.push(this.capitalize(this.word()));return e.join(" ")}}),a.extend({first:function(){var a=["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric"].concat(["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna"]);return this.pick(a)},last:function(){var a=["Smith","Johnson","Williams","Brown","Jones","Miller","Davis","Garcia","Rodriguez","Wilson","Martinez","Anderson","Taylor","Thomas","Hernandez","Moore","Martin","Jackson","Thompson","White","Lopez","Lee","Gonzalez","Harris","Clark","Lewis","Robinson","Walker","Perez","Hall","Young","Allen"];return this.pick(a)},name:function(a){return this.first()+" "+(a?this.first()+" ":"")+this.last()}}),a.extend({url:function(){return"http://"+this.domain()+"/"+this.word()},domain:function(a){return this.word()+"."+(a||this.tld())},email:function(a){return this.character("lower")+"."+this.last().toLowerCase()+"@"+this.last().toLowerCase()+"."+this.tld()},ip:function(){return this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)},tlds:["com","org","edu","gov","co.uk","net","io"],tld:function(){return this.pick(this.tlds)}}),a.extend({areas:["东北","华北","华东","华中","华南","西南","西北"],area:function(){return this.pick(this.areas)},regions:["110000 北京市","120000 天津市","130000 河北省","140000 山西省","150000 内蒙古自治区","210000 辽宁省","220000 吉林省","230000 黑龙江省","310000 上海市","320000 江苏省","330000 浙江省","340000 安徽省","350000 福建省","360000 江西省","370000 山东省","410000 河南省","420000 湖北省","430000 湖南省","440000 广东省","450000 广西壮族自治区","460000 海南省","500000 重庆市","510000 四川省","520000 贵州省","530000 云南省","540000 西藏自治区","610000 陕西省","620000 甘肃省","630000 青海省","640000 宁夏回族自治区","650000 新疆维吾尔自治区","650000 新疆维吾尔自治区","710000 台湾省","810000 香港特别行政区","820000 澳门特别行政区"],region:function(){return this.pick(this.regions).split(" ")[1]},address:function(){},city:function(){},phone:function(){},areacode:function(){},street:function(){},street_suffixes:function(){},street_suffix:function(){},states:function(){},state:function(){},zip:function(a){for(var b="",c=0;(a||6)>c;c++)b+=this.natural(0,9);return b}}),a.extend({todo:function(){return"todo"}}),a.extend({d4:function(){return this.natural(1,4)},d6:function(){return this.natural(1,6)},d8:function(){return this.natural(1,8)},d12:function(){return this.natural(1,12)},d20:function(){return this.natural(1,20)},d100:function(){return this.natural(1,100)},guid:function(){var a="ABCDEF1234567890",b=this.string(a,8)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,12);return b},id:function(){var a,b=0,c=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],d=["1","0","X","9","8","7","6","5","4","3","2"];a=this.pick(this.regions).split(" ")[0]+this.date("yyyyMMdd")+this.string("number",3);for(var e=0;e1)a.context.path.push(a.name),d=Random.pick(Handle.gen(a.template,undefined,{currentContext:d,templateCurrentContext:a.template,path:a.context.path})),a.context.path.pop();else for(b=0;b/g,g=a.match(f),h={};for(c=0;g&&ch&&b.splice(0,b.length-h)},c.block=function(a,b,c,e,f){var g,h,i,j,k,l=a.mustache.id.parts,m=b[0],n=b.length;if(a.inverse,a.mustache.isHelper||e&&e[a.mustache.id.string])k=l[0],j=(d[k]||d.custom).apply(this,arguments),m=b[0];else for(g=0;gg;g++)m.push("undefined"!=typeof j[g]?j[g]:{}),c.__path.push("[]"),b.unshift(m[m.length-1]),this.gen(a.program,b,c,e,f),c.__path.pop(),b.shift();else this.gen(a.program,b,c,e,f);b.length>n&&b.splice(0,b.length-n)},c.hash=function(a,b,c,d,e){var f,g,h,i=a.pairs;for(g=0;gd;d++)c.__path.push(m[d]),f=m[d],g=m[d-1],l=c[g],h=d===e-1?n[f]:{},i=this.val(f,c,b,h),j=Util.type(n[f]),k=Util.type(i),"undefined"===j?n[f]=e-1>d&&"object"!==k&&"array"!==k?{}:Util.isArray(i)&&[]||i:e-1>d&&"object"!==j&&"array"!==j&&(n[f]=Util.isArray(i)&&[]||{}),j=Util.type(n[f]),("object"===j||"array"===j)&&(n=n[f],b.unshift(n));else;b.length>o&&b.splice(0,b.length-o)},c.partial=function(a,b,d,e,f){var g=a.partialName.name,h=f&&f[g],i=b.length;h&&c.gen(h,b,d,e,f),b.length>i&&b.splice(0,b.length-i)},c.content=Util.noop,c.PARTIAL_NAME=Util.noop,c.DATA=Util.noop,c.STRING=Util.noop,c.INTEGER=Util.noop,c.BOOLEAN=Util.noop,c.comment=Util.noop;var d={};d.each=function(a,b,c){var d,e,f,g,h,i,j,k=b[0];for(h=a.mustache.params[0].parts,d=0,e=h.length;e>d;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g},d["if"]=d.unless=function(a,b,c){var d,e,f,g,h,i,j,k=a.mustache.params,l=b[0];for(d=0;dd;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g}}}.call(this),function(a){if("undefined"!=typeof KISSY){var b,c={debug:!1};KISSY.use("xtemplate",function(a,c){b=c}),this.Mock||(module.exports=c),Mock.xtpl=function(a,b,d,e){return c.mock(a,b,d,e)},Mock.xparse=function(a){return b.compiler.parse(a)},c.mock=function(a,c,d,e){return d=d?Util.extend({},d,b.RunTime.commands):b.RunTime.commands,e=e?Util.extend({},e,b.RunTime.subTpls):b.RunTime.subTpls,this.gen(a,null,c,d,e,{})},c.parse=function(a){return b.compiler.parse(a)},c.gen=function(a,b,d,e,f,g){if("string"==typeof a){c.debug&&console.log("[tpl ]\n",a);var h=this.parse(a);d=this.parseOptions(a,d);var i=this.gen(h,b,d,e,f,g);return i}if(b=b||[{}],d=d||{},a.type=a.type,this[a.type]!==Util.noop){d.__path=d.__path||[],c.debug&&(console.log(),console.group("["+a.type+"]",JSON.stringify(a)),console.log("[context]","[before]",b.length,JSON.stringify(b)),console.log("[options]","[before]",d.__path.length,JSON.stringify(d)),console.log("[other ]","[before]",JSON.stringify(g)));var j=d.__path.length;return this[a.type](a,b,d,e,f,g),c.debug&&console.log("[__path ]","[after ]",d.__path),(!g.hold||"function"==typeof g.hold&&!g.hold(a,d,b))&&d.__path.splice(j),c.debug&&(console.log("[context]","[after ]",b.length,JSON.stringify(b)),console.groupEnd()),b[b.length-1]}},c.parseOptions=function(a,b){var c,d,e,f=//g,g=a.match(f),h={};for(c=0;g&&c0)return h[0];if(b in g)return g[b]}return Util.isArray(e[0])?{}:f!==a?f:b},c.program=function(a,b,c,d,e,f){for(var g=0;gj;j++)l.push(i&&i[j]!==a?i[j]:{}),d.__path.push(j),c.unshift(l[l.length-1]),this.gen(b.program,c,d,e,f,g),d.__path.pop(),c.shift();else this.gen(b.program,c,d,e,f,g);(!g.hold||"function"==typeof g.hold&&!g.hold(b,d,c))&&c.splice(0,c.length-h)},c.tpl=function(a,b,c,d,e,f){if(a.params&&a.params.length){f=Util.extend({},f,{def:{each:[],"if":"@BOOL(2,1,true)",unless:"@BOOL(2,1,false)","with":{}}[a.path.string],hold:{each:!0,"if":function(a,b,c,d,e){return"object"==typeof e},unless:function(a,b,c,d,e){return"object"==typeof e},"with":!0,include:!1}[a.path.string]});for(var g,h=0;h-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()})),this.gen(b.op2,c,d,e,f,Util.extend({},g,{def:function(){return"number"===b.op1.type?b.op1.value.indexOf(".")>-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()}))},c.relationalExpression=function(a,b,c,d,e,f){this.gen(a.op1,b,c,d,e,f),this.gen(a.op2,b,c,d,e,f)},c.equalityExpression=Util.noop,c.conditionalAndExpression=Util.noop,c.conditionalOrExpression=Util.noop,c.string=Util.noop,c.number=Util.noop,c["boolean"]=Util.noop,c.hash=function(a,b,c,d,e,f){var g,h=a.value;for(g in h)this.gen(h[g],b,c,d,e,f)},c.id=function(b,d,e,f,g,h){function i(a,b,c,d,e){var f=Util.type(a[d]),g=Util.type(e);return e="true"===e?!0:"false"===e?!1:e,"undefined"===f?a[d]=c-1>b&&!Util.isObjectOrArray(e)?{}:Util.isArray(e)&&[]||e:c-1>b&&"object"!==f&&"array"!==f?a[d]=Util.isArray(e)&&[]||{}:"object"!==f&&"array"!==f&&"object"!==g&&"array"!==g&&(a[d]=e),a[d]}var j,k,l,m,n,o=d.length,p=b.parts,q=d[b.depth];for(Util.isArray(q)&&(q=d[b.depth+1]),j=0,k=p.length;k>j;j++)(0!==j||"this"!==p[j])&&(/^(xindex|xcount|xkey)$/.test(p[j])||0===j&&1===k&&p[j]in f||(e.__path.push(p[j]),l=p[j],m=j===k-1?h.def!==a?h.def:d[0][l]:{},n=this.val(l,e,d,m),c.debug&&(console.log("[def ]",JSON.stringify(m)),console.log("[val ]",JSON.stringify(n))),n=i(q,j,k,l,n),Util.isObjectOrArray(q[l])&&d.unshift(q=q[l])));(!h.hold||"function"==typeof h.hold&&!h.hold(b,e,d,l,n))&&d.splice(0,d.length-o)}}}.call(this)}).call(this); //# sourceMappingURL=dist/mock-min.map \ No newline at end of file diff --git a/dist/mock-min.map b/dist/mock-min.map index 76ba5cda..a9b9ee17 100644 --- a/dist/mock-min.map +++ b/dist/mock-min.map @@ -1 +1 @@ -{"version":3,"file":"dist/mock-min.js","sources":["dist/mock.js"],"names":["undefined","find","options","match","expected","actual","Util","type","test","sUrlType","Mock","_mocked","item","rurl","url","rtype","toLowerCase","convert","isFunction","template","mock","version","extend","name","src","copy","clone","target","arguments","i","length","this","isArray","isObject","each","obj","iterator","context","key","call","String","Object","prototype","toString","split","value","isObjectOrArray","isNumeric","isNaN","parseFloat","isFinite","keys","hasOwnProperty","push","values","heredoc","fn","replace","noop","Random","boolean","min","max","cur","parseInt","Math","random","bool","natural","round","integer","int","float","dmin","dmax","ret","dcount","character","pool","pools","lower","upper","number","symbol","alpha","charAt","char","string","text","str","range","start","stop","step","len","ceil","idx","Array","patternLetters","yyyy","yy","date","getFullYear","slice","y","MM","m","getMonth","M","dd","d","getDate","HH","h","getHours","H","hh","mm","getMinutes","ss","s","getSeconds","SS","ms","getMilliseconds","S","A","a","T","rformat","RegExp","re","join","format","$0","flag","callee","randomDate","Date","getTime","time","datetime","now","unit","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getDay","ad_size","screen_size","video_size","image","size","background","foreground","pick","indexOf","img","apply","brandColors","4ormat","500px","About.me (blue)","About.me (yellow)","Addvocate","Adobe","Aim","Amazon","Android","Angie's List","AOL","Atlassian","Behance","Big Cartel","bitly","Blogger","Boeing","Booking.com","Carbonmade","Cheddar","Code School","Delicious","Dell","Designmoo","Deviantart","Designer News","Devour","DEWALT","Disqus (blue)","Disqus (orange)","Dribbble","Dropbox","Drupal","Dunked","eBay","Ember","Engadget","Envato","Etsy","Evernote","Fab.com","Facebook","Firefox","Flickr (blue)","Flickr (pink)","Forrst","Foursquare","Garmin","GetGlue","Gimmebar","GitHub","Google Blue","Google Green","Google Red","Google Yellow","Google+","Grooveshark","Groupon","Hacker News","HelloWallet","Heroku (light)","Heroku (dark)","HootSuite","Houzz","HTML5","IKEA","IMDb","Instagram","Intel","Intuit","Kickstarter","kippt","Kodery","LastFM","LinkedIn","Livestream","Lumo","Mixpanel","Meetup","Nokia","NVIDIA","Opera","Path","PayPal (dark)","PayPal (light)","Pinboard","Pinterest","PlayStation","Pocket","Prezi","Pusha","Quora","QUOTE.fm","Rdio","Readability","Red Hat","Resource","Rockpack","Roon","RSS","Salesforce","Samsung","Shopify","Skype","Snagajob","Softonic","SoundCloud","Space Box","Spotify","Sprint","Squarespace","StackOverflow","Staples","Status Chart","Stripe","StudyBlue","StumbleUpon","T-Mobile","Technorati","The Next Web","Treehouse","Trulia","Tumblr","Twitch.tv","Twitter","TYPO3","Ubuntu","Ustream","Verizon","Vimeo","Vine","Virb","Virgin Media","Wooga","WordPress (blue)","WordPress (orange)","WordPress (grey)","Wunderlist","XBOX","XING","Yahoo!","Yandex","Yelp","YouTube","Zalongo","Zendesk","Zerply","Zootool","brands","b","dataImage","canvas","document","createElement","ctx","getContext","width","height","text_height","font","textAlign","textBaseline","fillStyle","fillRect","fillText","toDataURL","color","colour","floor","capitalize","word","toUpperCase","substr","arr","shuffle","old","result","index","splice","paragraph","sentence","title","first","names","concat","last","middle","domain","tld","email","ip","tlds","areas","area","regions","region","address","city","phone","areacode","street","street_suffixes","street_suffix","states","state","zip","todo","d4","d6","d8","d12","d20","d100","guid","id","sum","rank","autoIncrementInteger","increment","inc","rkey","rrange","rplaceholder","Handle","gen","rule","parameters","count","decimal","point","path","templatePath","currentContext","templateCurrentContext","root","templateRoot","parsedName","array","j","pop","object","fnKeys","parsedKey","parts","placeholders","ph","phed","placeholder","function","_all","templateContext","exec","lkey","okey","params","eval","error","handle","mockjax","jQuery","mockxhr","readyState","status","statusText","open","send","onload","setRequestHeader","getAllResponseHeaders","getResponseHeader","statusCode","abort","prefilter","originalOptions","dataFilter","converters","xhr","dataType","ajaxPrefilter","Zepto","__original_ajax","ajax","responseText","responseXML","timeoutTimer","data","success","complete","KISSY","add","_original_ajax","io","module","exports","define","amd","cmd","requires","Mock4Tpl","tpl","input","helpers","partials","parse","Handlebars","debug","node","isString","ast","parseOptions","__path","console","log","group","JSON","stringify","preLength","groupEnd","ma","option","rComment","comments","lastIndex","Function","val","def","Error","mocked","program","statements","mustache","contextLength","unshift","isHelper","hash","block","inverse","Helpers","custom","shift","pair","pairs","ID","prev","valType","preOptions","depth","partial","partialName","content","PARTIAL_NAME","DATA","STRING","INTEGER","BOOLEAN","comment","unless","XTemplate","Mock4XTpl","use","xtpl","xparse","compiler","RunTime","commands","subTpls","other","hold","parseVal","expr","queryArray","prop","query","queryObject","set","if","with","_","__","___","include","tplExpression","expression","unaryExpression","multiplicativeExpression","additiveExpression","op1","op2","pow","relationalExpression","equalityExpression","conditionalAndExpression","conditionalOrExpression","fix"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"dist/mock-min.js","sources":["dist/mock.js"],"names":["undefined","find","options","match","expected","actual","Util","type","test","sUrlType","Mock","_mocked","item","rurl","url","rtype","toLowerCase","convert","isFunction","template","mock","version","extend","name","src","copy","clone","target","arguments","i","length","this","isArray","isObject","each","obj","iterator","context","key","call","String","Object","prototype","toString","split","value","isObjectOrArray","isNumeric","isNaN","parseFloat","isFinite","keys","hasOwnProperty","push","values","heredoc","fn","replace","noop","Random","boolean","min","max","cur","parseInt","Math","random","bool","natural","round","integer","int","float","dmin","dmax","ret","dcount","character","pool","pools","lower","upper","number","symbol","alpha","charAt","char","string","text","str","range","start","stop","step","len","ceil","idx","Array","patternLetters","yyyy","yy","date","getFullYear","slice","y","MM","m","getMonth","M","dd","d","getDate","HH","h","getHours","H","hh","mm","getMinutes","ss","s","getSeconds","SS","ms","getMilliseconds","S","A","a","T","rformat","RegExp","re","join","format","$0","flag","callee","randomDate","Date","getTime","time","datetime","now","unit","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getDay","ad_size","screen_size","video_size","image","size","background","foreground","pick","indexOf","img","apply","brandColors","4ormat","500px","About.me (blue)","About.me (yellow)","Addvocate","Adobe","Aim","Amazon","Android","Angie's List","AOL","Atlassian","Behance","Big Cartel","bitly","Blogger","Boeing","Booking.com","Carbonmade","Cheddar","Code School","Delicious","Dell","Designmoo","Deviantart","Designer News","Devour","DEWALT","Disqus (blue)","Disqus (orange)","Dribbble","Dropbox","Drupal","Dunked","eBay","Ember","Engadget","Envato","Etsy","Evernote","Fab.com","Facebook","Firefox","Flickr (blue)","Flickr (pink)","Forrst","Foursquare","Garmin","GetGlue","Gimmebar","GitHub","Google Blue","Google Green","Google Red","Google Yellow","Google+","Grooveshark","Groupon","Hacker News","HelloWallet","Heroku (light)","Heroku (dark)","HootSuite","Houzz","HTML5","IKEA","IMDb","Instagram","Intel","Intuit","Kickstarter","kippt","Kodery","LastFM","LinkedIn","Livestream","Lumo","Mixpanel","Meetup","Nokia","NVIDIA","Opera","Path","PayPal (dark)","PayPal (light)","Pinboard","Pinterest","PlayStation","Pocket","Prezi","Pusha","Quora","QUOTE.fm","Rdio","Readability","Red Hat","Resource","Rockpack","Roon","RSS","Salesforce","Samsung","Shopify","Skype","Snagajob","Softonic","SoundCloud","Space Box","Spotify","Sprint","Squarespace","StackOverflow","Staples","Status Chart","Stripe","StudyBlue","StumbleUpon","T-Mobile","Technorati","The Next Web","Treehouse","Trulia","Tumblr","Twitch.tv","Twitter","TYPO3","Ubuntu","Ustream","Verizon","Vimeo","Vine","Virb","Virgin Media","Wooga","WordPress (blue)","WordPress (orange)","WordPress (grey)","Wunderlist","XBOX","XING","Yahoo!","Yandex","Yelp","YouTube","Zalongo","Zendesk","Zerply","Zootool","brands","b","dataImage","canvas","document","createElement","ctx","getContext","width","height","text_height","font","textAlign","textBaseline","fillStyle","fillRect","fillText","toDataURL","color","colour","floor","capitalize","word","toUpperCase","substr","arr","shuffle","old","result","index","splice","paragraph","sentence","title","first","names","concat","last","middle","domain","tld","email","ip","tlds","areas","area","regions","region","address","city","phone","areacode","street","street_suffixes","street_suffix","states","state","zip","todo","d4","d6","d8","d12","d20","d100","guid","id","sum","rank","autoIncrementInteger","increment","inc","rkey","rrange","rplaceholder","Handle","gen","rule","parameters","count","decimal","point","path","templatePath","currentContext","templateCurrentContext","root","templateRoot","parsedName","array","j","pop","object","fnKeys","parsedKey","parts","placeholders","ph","phed","placeholder","function","_all","templateContext","exec","lkey","okey","params","eval","error","handle","mockjax","jQuery","mockxhr","readyState","status","statusText","open","send","onload","setRequestHeader","getAllResponseHeaders","getResponseHeader","statusCode","abort","prefilter","originalOptions","dataFilter","converters","xhr","dataType","ajaxPrefilter","Zepto","__original_ajax","ajax","responseText","responseXML","timeoutTimer","data","success","complete","KISSY","add","_original_ajax","io","module","exports","define","amd","cmd","requires","Mock4Tpl","tpl","input","helpers","partials","parse","Handlebars","debug","node","isString","ast","parseOptions","__path","console","log","group","JSON","stringify","preLength","groupEnd","ma","option","rComment","comments","lastIndex","Function","val","def","Error","mocked","program","statements","mustache","contextLength","unshift","isHelper","hash","block","inverse","Helpers","custom","shift","pair","pairs","ID","prev","valType","preOptions","depth","partial","partialName","content","PARTIAL_NAME","DATA","STRING","INTEGER","BOOLEAN","comment","unless","XTemplate","Mock4XTpl","use","xtpl","xparse","compiler","RunTime","commands","subTpls","other","hold","parseVal","expr","queryArray","prop","query","queryObject","set","if","with","_","__","___","include","tplExpression","expression","unaryExpression","multiplicativeExpression","additiveExpression","op1","op2","pow","relationalExpression","equalityExpression","conditionalAndExpression","conditionalOrExpression","fix"],"mappings":"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"} \ No newline at end of file diff --git a/dist/mock.js b/dist/mock.js index c373641c..5f1f0747 100644 --- a/dist/mock.js +++ b/dist/mock.js @@ -1,4 +1,4 @@ -/*! mockjs 23-06-2014 15:57:37 */ +/*! mockjs 24-12-2014 11:39:10 */ /*! src/mock-prefix.js */ /*! Mock - 模拟请求 & 模拟数据 @@ -1616,4 +1616,4 @@ } }; }).call(this); -}).call(this); +}).call(this); \ No newline at end of file diff --git a/package.json b/package.json index b8527bc9..9f483a92 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "mockjs", "title": "Mock.js", "description": "模拟请求 & 模拟数据", - "version": "0.1.5", + "version": "0.1.6", "homepage": "http://mockjs.com/", "keywords": [ "mock", diff --git a/src/mock-prefix.js b/src/mock-prefix.js index 29f5bc6b..744abb52 100644 --- a/src/mock-prefix.js +++ b/src/mock-prefix.js @@ -1,7 +1,7 @@ /*! Mock - 模拟请求 & 模拟数据 https://github.com/nuysoft/Mock - 墨智 mozhi.gyy@taobao.com nuysoft@gmail.com + 墨智 nuysoft@gmail.com */ (function(undefined) { var Mock = { From dc519b3cf9dfcc4ba0edcf6e5d097b2a20d3b968 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Mon, 19 Jan 2015 19:35:44 +0800 Subject: [PATCH 11/21] #49 --- Gruntfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gruntfile.js b/Gruntfile.js index bc6230c0..aed6a578 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -122,7 +122,7 @@ module.exports = function(grunt) { }, release: { options: { - sourceMap: 'dist/mock-min.map' + sourceMap: 'mock-min.map' }, files: [{ expand: true, From bb7368129a9958293bdf335a97d90892e6661dd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A2=A8=E6=99=BA?= Date: Thu, 5 Mar 2015 14:57:21 +0800 Subject: [PATCH 12/21] + chineseName, #50, #51, --- dist/mock-min.js | 6 +- dist/mock.js | 26 +++++---- doc/index.md | 19 ++++++ index.html | 149 ++++++++++++++++++++++++++--------------------- mock-min.map | 1 + src/mock.js | 20 +++---- src/random.js | 2 +- src/util.js | 10 ++-- 8 files changed, 135 insertions(+), 98 deletions(-) create mode 100644 mock-min.map diff --git a/dist/mock-min.js b/dist/mock-min.js index 5eba3672..be3bac22 100644 --- a/dist/mock-min.js +++ b/dist/mock-min.js @@ -1,4 +1,4 @@ -/*! mockjs 24-12-2014 11:39:10 */ +/*! mockjs 05-03-2015 14:55:44 */ -(function(undefined){function find(a){function b(a,b){return"string"===Util.type(a)?a===b:"regexp"===Util.type(a)?a.test(b):void 0}for(var c in Mock._mocked){var d=Mock._mocked[c];if(!(d.rurl&&!b(d.rurl,a.url)||d.rtype&&!b(d.rtype,a.type.toLowerCase())))return d}}function convert(a,b){return Util.isFunction(a.template)?a.template(b):Mock.mock(a.template)}var Mock={version:"0.1.5",_mocked:{}},Util=function(){var a={};return a.extend=function(){var b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length;for(1===i&&(g=this,h=0);i>h;h++)if(b=arguments[h])for(c in b)d=g[c],e=b[c],g!==e&&e!==undefined&&(a.isArray(e)||a.isObject(e)?(a.isArray(e)&&(f=d&&a.isArray(d)?d:[]),a.isObject(e)&&(f=d&&a.isObject(d)?d:{}),g[c]=a.extend(f,e)):g[c]=e);return g},a.each=function(a,b,c){var d,e;if("number"===this.type(a))for(d=0;a>d;d++)b(d,d);else if(a.length===+a.length)for(d=0;d1/(a+b)*a?!c:c):Math.random()>=.5},bool:function(a,b,c){return this["boolean"](a,b,c)},natural:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):0,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},integer:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):-9007199254740992,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},"int":function(a,b){return this.integer(a,b)},"float":function(a,b,c,d){c=c===undefined?0:c,c=Math.max(Math.min(c,17),0),d=d===undefined?17:d,d=Math.max(Math.min(d,17),0);for(var e=this.integer(a,b)+".",f=0,g=this.natural(c,d);g>f;f++)e+=this.character("number");return parseFloat(e,10)},character:function(b){var c={lower:"abcdefghijklmnopqrstuvwxyz",upper:"ABCDEFGHIJKLMNOPQRSTUVWXYZ",number:"0123456789",symbol:"!@#$%^&*()[]"};return c.alpha=c.lower+c.upper,c.undefined=c.lower+c.upper+c.number+c.symbol,b=c[(""+b).toLowerCase()]||b,b.charAt(a.natural(0,b.length-1))},"char":function(a){return this.character(a)},string:function(b,c,d){var e;3===arguments.length&&(e=a.natural(c,d)),2===arguments.length&&("string"==typeof arguments[0]?e=c:(e=a.natural(b,c),b=undefined)),1===arguments.length&&(e=b,b=undefined),0===arguments.length&&(e=a.natural(3,7));for(var f="",g=0;e>g;g++)f+=a.character(b);return f},str:function(a,b,c){return this.string(a,b,c)},range:function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1,a=+a,b=+b,c=+c;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f}}),a.extend({patternLetters:{yyyy:"getFullYear",yy:function(a){return(""+a.getFullYear()).slice(2)},y:"yy",MM:function(a){var b=a.getMonth()+1;return 10>b?"0"+b:b},M:function(a){return a.getMonth()+1},dd:function(a){var b=a.getDate();return 10>b?"0"+b:b},d:"getDate",HH:function(a){var b=a.getHours();return 10>b?"0"+b:b},H:"getHours",hh:function(a){var b=a.getHours()%12;return 10>b?"0"+b:b},h:function(a){return a.getHours()%12},mm:function(a){var b=a.getMinutes();return 10>b?"0"+b:b},m:"getMinutes",ss:function(a){var b=a.getSeconds();return 10>b?"0"+b:b},s:"getSeconds",SS:function(a){var b=a.getMilliseconds();return 10>b&&"00"+b||100>b&&"0"+b||b},S:"getMilliseconds",A:function(a){return a.getHours()<12?"AM":"PM"},a:function(a){return a.getHours()<12?"am":"pm"},T:"getTime"}}),a.extend({rformat:new RegExp(function(){var b=[];for(var c in a.patternLetters)b.push(c);return"("+b.join("|")+")"}(),"g"),format:function(b,c){var d=a.patternLetters,e=a.rformat;return c.replace(e,function(a,c){return"function"==typeof d[c]?d[c](b):d[c]in d?arguments.callee(a,d[c]):b[d[c]]()})},randomDate:function(a,b){return a=a===undefined?new Date(0):a,b=b===undefined?new Date:b,new Date(Math.random()*(b.getTime()-a.getTime()))},date:function(a){return a=a||"yyyy-MM-dd",this.format(this.randomDate(),a)},time:function(a){return a=a||"HH:mm:ss",this.format(this.randomDate(),a)},datetime:function(a){return a=a||"yyyy-MM-dd HH:mm:ss",this.format(this.randomDate(),a)},now:function(a,b){1===arguments.length&&(/year|month|week|day|hour|minute|second|week/.test(a)||(b=a,a="")),a=(a||"").toLowerCase(),b=b||"yyyy-MM-dd HH:mm:ss";var c=new Date;switch(a){case"year":c.setMonth(0);case"month":c.setDate(1);case"week":case"day":c.setHours(0);case"hour":c.setMinutes(0);case"minute":c.setSeconds(0);case"second":c.setMilliseconds(0)}switch(a){case"week":c.setDate(c.getDate()-c.getDay())}return this.format(c,b)}}),a.extend({ad_size:["300x250","250x250","240x400","336x280","180x150","720x300","468x60","234x60","88x31","120x90","120x60","120x240","125x125","728x90","160x600","120x600","300x600"],screen_size:["320x200","320x240","640x480","800x480","800x480","1024x600","1024x768","1280x800","1440x900","1920x1200","2560x1600"],video_size:["720x480","768x576","1280x720","1920x1080"],image:function(a,b,c,d,e){return 4===arguments.length&&(e=d,d=undefined),3===arguments.length&&(e=c,c=undefined),a||(a=this.pick(this.ad_size)),b&&~b.indexOf("#")&&(b=b.slice(1)),c&&~c.indexOf("#")&&(c=c.slice(1)),"http://dummyimage.com/"+a+(b?"/"+b:"")+(c?"/"+c:"")+(d?"."+d:"")+(e?"&text="+e:"")},img:function(){return this.image.apply(this,arguments)}}),a.extend({brandColors:{"4ormat":"#fb0a2a","500px":"#02adea","About.me (blue)":"#00405d","About.me (yellow)":"#ffcc33",Addvocate:"#ff6138",Adobe:"#ff0000",Aim:"#fcd20b",Amazon:"#e47911",Android:"#a4c639","Angie's List":"#7fbb00",AOL:"#0060a3",Atlassian:"#003366",Behance:"#053eff","Big Cartel":"#97b538",bitly:"#ee6123",Blogger:"#fc4f08",Boeing:"#0039a6","Booking.com":"#003580",Carbonmade:"#613854",Cheddar:"#ff7243","Code School":"#3d4944",Delicious:"#205cc0",Dell:"#3287c1",Designmoo:"#e54a4f",Deviantart:"#4e6252","Designer News":"#2d72da",Devour:"#fd0001",DEWALT:"#febd17","Disqus (blue)":"#59a3fc","Disqus (orange)":"#db7132",Dribbble:"#ea4c89",Dropbox:"#3d9ae8",Drupal:"#0c76ab",Dunked:"#2a323a",eBay:"#89c507",Ember:"#f05e1b",Engadget:"#00bdf6",Envato:"#528036",Etsy:"#eb6d20",Evernote:"#5ba525","Fab.com":"#dd0017",Facebook:"#3b5998",Firefox:"#e66000","Flickr (blue)":"#0063dc","Flickr (pink)":"#ff0084",Forrst:"#5b9a68",Foursquare:"#25a0ca",Garmin:"#007cc3",GetGlue:"#2d75a2",Gimmebar:"#f70078",GitHub:"#171515","Google Blue":"#0140ca","Google Green":"#16a61e","Google Red":"#dd1812","Google Yellow":"#fcca03","Google+":"#dd4b39",Grooveshark:"#f77f00",Groupon:"#82b548","Hacker News":"#ff6600",HelloWallet:"#0085ca","Heroku (light)":"#c7c5e6","Heroku (dark)":"#6567a5",HootSuite:"#003366",Houzz:"#73ba37",HTML5:"#ec6231",IKEA:"#ffcc33",IMDb:"#f3ce13",Instagram:"#3f729b",Intel:"#0071c5",Intuit:"#365ebf",Kickstarter:"#76cc1e",kippt:"#e03500",Kodery:"#00af81",LastFM:"#c3000d",LinkedIn:"#0e76a8",Livestream:"#cf0005",Lumo:"#576396",Mixpanel:"#a086d3",Meetup:"#e51937",Nokia:"#183693",NVIDIA:"#76b900",Opera:"#cc0f16",Path:"#e41f11","PayPal (dark)":"#1e477a","PayPal (light)":"#3b7bbf",Pinboard:"#0000e6",Pinterest:"#c8232c",PlayStation:"#665cbe",Pocket:"#ee4056",Prezi:"#318bff",Pusha:"#0f71b4",Quora:"#a82400","QUOTE.fm":"#66ceff",Rdio:"#008fd5",Readability:"#9c0000","Red Hat":"#cc0000",Resource:"#7eb400",Rockpack:"#0ba6ab",Roon:"#62b0d9",RSS:"#ee802f",Salesforce:"#1798c1",Samsung:"#0c4da2",Shopify:"#96bf48",Skype:"#00aff0",Snagajob:"#f47a20",Softonic:"#008ace",SoundCloud:"#ff7700","Space Box":"#f86960",Spotify:"#81b71a",Sprint:"#fee100",Squarespace:"#121212",StackOverflow:"#ef8236",Staples:"#cc0000","Status Chart":"#d7584f",Stripe:"#008cdd",StudyBlue:"#00afe1",StumbleUpon:"#f74425","T-Mobile":"#ea0a8e",Technorati:"#40a800","The Next Web":"#ef4423",Treehouse:"#5cb868",Trulia:"#5eab1f",Tumblr:"#34526f","Twitch.tv":"#6441a5",Twitter:"#00acee",TYPO3:"#ff8700",Ubuntu:"#dd4814",Ustream:"#3388ff",Verizon:"#ef1d1d",Vimeo:"#86c9ef",Vine:"#00a478",Virb:"#06afd8","Virgin Media":"#cc0000",Wooga:"#5b009c","WordPress (blue)":"#21759b","WordPress (orange)":"#d54e21","WordPress (grey)":"#464646",Wunderlist:"#2b88d9",XBOX:"#9bc848",XING:"#126567","Yahoo!":"#720e9e",Yandex:"#ffcc00",Yelp:"#c41200",YouTube:"#c4302b",Zalongo:"#5498dc",Zendesk:"#78a300",Zerply:"#9dcc7a",Zootool:"#5e8b1d"},brands:function(){var a=[];for(var b in this.brandColors)a.push(b);return a},dataImage:function(a,b){var c="undefined"!=typeof document&&document.createElement("canvas"),d=c&&c.getContext&&c.getContext("2d");if(!c||!d)return"";a||(a=this.pick(this.ad_size)),b=b!==undefined?b:a,a=a.split("x");var e=parseInt(a[0],10),f=parseInt(a[1],10),g=this.brandColors[this.pick(this.brands())],h="#FFF",i=14,j="sans-serif";return c.width=e,c.height=f,d.textAlign="center",d.textBaseline="middle",d.fillStyle=g,d.fillRect(0,0,e,f),d.fillStyle=h,d.font="bold "+i+"px "+j,d.fillText(b,e/2,f/2,e),c.toDataURL("image/png")}}),a.extend({color:function(){var a=Math.floor(16777215*Math.random()).toString(16);return a="#"+("000000"+a).slice(-6)}}),a.extend({capitalize:function(a){return(a+"").charAt(0).toUpperCase()+(a+"").substr(1)},upper:function(a){return(a+"").toUpperCase()},lower:function(a){return(a+"").toLowerCase()},pick:function(a){return a=a||[],a[this.natural(0,a.length-1)]},shuffle:function(a){a=a||[];for(var b=a.slice(0),c=[],d=0,e=b.length,f=0;e>f;f++)d=this.natural(0,b.length-1),c.push(b[d]),b.splice(d,1);return c}}),a.extend({paragraph:function(b,c){var d;0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.sentence());return e.join(" ")},sentence:function(b,c){var d;0===arguments.length&&(d=a.natural(12,18)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.word());return a.capitalize(e.join(" "))+"."},word:function(b,c){var d;0===arguments.length&&(d=a.natural(3,10)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e="",f=0;d>f;f++)e+=a.character("lower");return e},title:function(b,c){var d,e=[];0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var f=0;d>f;f++)e.push(this.capitalize(this.word()));return e.join(" ")}}),a.extend({first:function(){var a=["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric"].concat(["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna"]);return this.pick(a)},last:function(){var a=["Smith","Johnson","Williams","Brown","Jones","Miller","Davis","Garcia","Rodriguez","Wilson","Martinez","Anderson","Taylor","Thomas","Hernandez","Moore","Martin","Jackson","Thompson","White","Lopez","Lee","Gonzalez","Harris","Clark","Lewis","Robinson","Walker","Perez","Hall","Young","Allen"];return this.pick(a)},name:function(a){return this.first()+" "+(a?this.first()+" ":"")+this.last()}}),a.extend({url:function(){return"http://"+this.domain()+"/"+this.word()},domain:function(a){return this.word()+"."+(a||this.tld())},email:function(a){return this.character("lower")+"."+this.last().toLowerCase()+"@"+this.last().toLowerCase()+"."+this.tld()},ip:function(){return this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)},tlds:["com","org","edu","gov","co.uk","net","io"],tld:function(){return this.pick(this.tlds)}}),a.extend({areas:["东北","华北","华东","华中","华南","西南","西北"],area:function(){return this.pick(this.areas)},regions:["110000 北京市","120000 天津市","130000 河北省","140000 山西省","150000 内蒙古自治区","210000 辽宁省","220000 吉林省","230000 黑龙江省","310000 上海市","320000 江苏省","330000 浙江省","340000 安徽省","350000 福建省","360000 江西省","370000 山东省","410000 河南省","420000 湖北省","430000 湖南省","440000 广东省","450000 广西壮族自治区","460000 海南省","500000 重庆市","510000 四川省","520000 贵州省","530000 云南省","540000 西藏自治区","610000 陕西省","620000 甘肃省","630000 青海省","640000 宁夏回族自治区","650000 新疆维吾尔自治区","650000 新疆维吾尔自治区","710000 台湾省","810000 香港特别行政区","820000 澳门特别行政区"],region:function(){return this.pick(this.regions).split(" ")[1]},address:function(){},city:function(){},phone:function(){},areacode:function(){},street:function(){},street_suffixes:function(){},street_suffix:function(){},states:function(){},state:function(){},zip:function(a){for(var b="",c=0;(a||6)>c;c++)b+=this.natural(0,9);return b}}),a.extend({todo:function(){return"todo"}}),a.extend({d4:function(){return this.natural(1,4)},d6:function(){return this.natural(1,6)},d8:function(){return this.natural(1,8)},d12:function(){return this.natural(1,12)},d20:function(){return this.natural(1,20)},d100:function(){return this.natural(1,100)},guid:function(){var a="ABCDEF1234567890",b=this.string(a,8)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,12);return b},id:function(){var a,b=0,c=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],d=["1","0","X","9","8","7","6","5","4","3","2"];a=this.pick(this.regions).split(" ")[0]+this.date("yyyyMMdd")+this.string("number",3);for(var e=0;e1)a.context.path.push(a.name),d=Random.pick(Handle.gen(a.template,undefined,{currentContext:d,templateCurrentContext:a.template,path:a.context.path})),a.context.path.pop();else for(b=0;b/g,g=a.match(f),h={};for(c=0;g&&ch&&b.splice(0,b.length-h)},c.block=function(a,b,c,e,f){var g,h,i,j,k,l=a.mustache.id.parts,m=b[0],n=b.length;if(a.inverse,a.mustache.isHelper||e&&e[a.mustache.id.string])k=l[0],j=(d[k]||d.custom).apply(this,arguments),m=b[0];else for(g=0;gg;g++)m.push("undefined"!=typeof j[g]?j[g]:{}),c.__path.push("[]"),b.unshift(m[m.length-1]),this.gen(a.program,b,c,e,f),c.__path.pop(),b.shift();else this.gen(a.program,b,c,e,f);b.length>n&&b.splice(0,b.length-n)},c.hash=function(a,b,c,d,e){var f,g,h,i=a.pairs;for(g=0;gd;d++)c.__path.push(m[d]),f=m[d],g=m[d-1],l=c[g],h=d===e-1?n[f]:{},i=this.val(f,c,b,h),j=Util.type(n[f]),k=Util.type(i),"undefined"===j?n[f]=e-1>d&&"object"!==k&&"array"!==k?{}:Util.isArray(i)&&[]||i:e-1>d&&"object"!==j&&"array"!==j&&(n[f]=Util.isArray(i)&&[]||{}),j=Util.type(n[f]),("object"===j||"array"===j)&&(n=n[f],b.unshift(n));else;b.length>o&&b.splice(0,b.length-o)},c.partial=function(a,b,d,e,f){var g=a.partialName.name,h=f&&f[g],i=b.length;h&&c.gen(h,b,d,e,f),b.length>i&&b.splice(0,b.length-i)},c.content=Util.noop,c.PARTIAL_NAME=Util.noop,c.DATA=Util.noop,c.STRING=Util.noop,c.INTEGER=Util.noop,c.BOOLEAN=Util.noop,c.comment=Util.noop;var d={};d.each=function(a,b,c){var d,e,f,g,h,i,j,k=b[0];for(h=a.mustache.params[0].parts,d=0,e=h.length;e>d;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g},d["if"]=d.unless=function(a,b,c){var d,e,f,g,h,i,j,k=a.mustache.params,l=b[0];for(d=0;dd;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g}}}.call(this),function(a){if("undefined"!=typeof KISSY){var b,c={debug:!1};KISSY.use("xtemplate",function(a,c){b=c}),this.Mock||(module.exports=c),Mock.xtpl=function(a,b,d,e){return c.mock(a,b,d,e)},Mock.xparse=function(a){return b.compiler.parse(a)},c.mock=function(a,c,d,e){return d=d?Util.extend({},d,b.RunTime.commands):b.RunTime.commands,e=e?Util.extend({},e,b.RunTime.subTpls):b.RunTime.subTpls,this.gen(a,null,c,d,e,{})},c.parse=function(a){return b.compiler.parse(a)},c.gen=function(a,b,d,e,f,g){if("string"==typeof a){c.debug&&console.log("[tpl ]\n",a);var h=this.parse(a);d=this.parseOptions(a,d);var i=this.gen(h,b,d,e,f,g);return i}if(b=b||[{}],d=d||{},a.type=a.type,this[a.type]!==Util.noop){d.__path=d.__path||[],c.debug&&(console.log(),console.group("["+a.type+"]",JSON.stringify(a)),console.log("[context]","[before]",b.length,JSON.stringify(b)),console.log("[options]","[before]",d.__path.length,JSON.stringify(d)),console.log("[other ]","[before]",JSON.stringify(g)));var j=d.__path.length;return this[a.type](a,b,d,e,f,g),c.debug&&console.log("[__path ]","[after ]",d.__path),(!g.hold||"function"==typeof g.hold&&!g.hold(a,d,b))&&d.__path.splice(j),c.debug&&(console.log("[context]","[after ]",b.length,JSON.stringify(b)),console.groupEnd()),b[b.length-1]}},c.parseOptions=function(a,b){var c,d,e,f=//g,g=a.match(f),h={};for(c=0;g&&c0)return h[0];if(b in g)return g[b]}return Util.isArray(e[0])?{}:f!==a?f:b},c.program=function(a,b,c,d,e,f){for(var g=0;gj;j++)l.push(i&&i[j]!==a?i[j]:{}),d.__path.push(j),c.unshift(l[l.length-1]),this.gen(b.program,c,d,e,f,g),d.__path.pop(),c.shift();else this.gen(b.program,c,d,e,f,g);(!g.hold||"function"==typeof g.hold&&!g.hold(b,d,c))&&c.splice(0,c.length-h)},c.tpl=function(a,b,c,d,e,f){if(a.params&&a.params.length){f=Util.extend({},f,{def:{each:[],"if":"@BOOL(2,1,true)",unless:"@BOOL(2,1,false)","with":{}}[a.path.string],hold:{each:!0,"if":function(a,b,c,d,e){return"object"==typeof e},unless:function(a,b,c,d,e){return"object"==typeof e},"with":!0,include:!1}[a.path.string]});for(var g,h=0;h-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()})),this.gen(b.op2,c,d,e,f,Util.extend({},g,{def:function(){return"number"===b.op1.type?b.op1.value.indexOf(".")>-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()}))},c.relationalExpression=function(a,b,c,d,e,f){this.gen(a.op1,b,c,d,e,f),this.gen(a.op2,b,c,d,e,f)},c.equalityExpression=Util.noop,c.conditionalAndExpression=Util.noop,c.conditionalOrExpression=Util.noop,c.string=Util.noop,c.number=Util.noop,c["boolean"]=Util.noop,c.hash=function(a,b,c,d,e,f){var g,h=a.value;for(g in h)this.gen(h[g],b,c,d,e,f)},c.id=function(b,d,e,f,g,h){function i(a,b,c,d,e){var f=Util.type(a[d]),g=Util.type(e);return e="true"===e?!0:"false"===e?!1:e,"undefined"===f?a[d]=c-1>b&&!Util.isObjectOrArray(e)?{}:Util.isArray(e)&&[]||e:c-1>b&&"object"!==f&&"array"!==f?a[d]=Util.isArray(e)&&[]||{}:"object"!==f&&"array"!==f&&"object"!==g&&"array"!==g&&(a[d]=e),a[d]}var j,k,l,m,n,o=d.length,p=b.parts,q=d[b.depth];for(Util.isArray(q)&&(q=d[b.depth+1]),j=0,k=p.length;k>j;j++)(0!==j||"this"!==p[j])&&(/^(xindex|xcount|xkey)$/.test(p[j])||0===j&&1===k&&p[j]in f||(e.__path.push(p[j]),l=p[j],m=j===k-1?h.def!==a?h.def:d[0][l]:{},n=this.val(l,e,d,m),c.debug&&(console.log("[def ]",JSON.stringify(m)),console.log("[val ]",JSON.stringify(n))),n=i(q,j,k,l,n),Util.isObjectOrArray(q[l])&&d.unshift(q=q[l])));(!h.hold||"function"==typeof h.hold&&!h.hold(b,e,d,l,n))&&d.splice(0,d.length-o)}}}.call(this)}).call(this); -//# sourceMappingURL=dist/mock-min.map \ No newline at end of file +(function(undefined){function find(a){function b(a,b){return"string"===Util.type(a)?a===b:"regexp"===Util.type(a)?a.test(b):void 0}for(var c in Mock._mocked){var d=Mock._mocked[c];if(!(d.rurl&&!b(d.rurl,a.url)||d.rtype&&!b(d.rtype,a.type.toLowerCase())))return d}}function convert(a,b){return Util.isFunction(a.template)?a.template(b):Mock.mock(a.template)}var Mock={version:"0.1.5",_mocked:{}},Util=function(){var a={};return a.extend=function(){var b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length;for(1===i&&(g=this,h=0);i>h;h++)if(b=arguments[h])for(c in b)d=g[c],e=b[c],g!==e&&e!==undefined&&(a.isArray(e)||a.isObject(e)?(a.isArray(e)&&(f=d&&a.isArray(d)?d:[]),a.isObject(e)&&(f=d&&a.isObject(d)?d:{}),g[c]=a.extend(f,e)):g[c]=e);return g},a.each=function(a,b,c){var d,e;if("number"===this.type(a))for(d=0;a>d;d++)b(d,d);else if(a.length===+a.length)for(d=0;d1/(a+b)*a?!c:c):Math.random()>=.5},bool:function(a,b,c){return this["boolean"](a,b,c)},natural:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):0,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},integer:function(a,b){return a="undefined"!=typeof a?parseInt(a,10):-9007199254740992,b="undefined"!=typeof b?parseInt(b,10):9007199254740992,Math.round(Math.random()*(b-a))+a},"int":function(a,b){return this.integer(a,b)},"float":function(a,b,c,d){c=c===undefined?0:c,c=Math.max(Math.min(c,17),0),d=d===undefined?17:d,d=Math.max(Math.min(d,17),0);for(var e=this.integer(a,b)+".",f=0,g=this.natural(c,d);g>f;f++)e+=this.character("number");return parseFloat(e,10)},character:function(b){var c={lower:"abcdefghijklmnopqrstuvwxyz",upper:"ABCDEFGHIJKLMNOPQRSTUVWXYZ",number:"0123456789",symbol:"!@#$%^&*()[]"};return c.alpha=c.lower+c.upper,c.undefined=c.lower+c.upper+c.number+c.symbol,b=c[(""+b).toLowerCase()]||b,b.charAt(a.natural(0,b.length-1))},"char":function(a){return this.character(a)},string:function(b,c,d){var e;3===arguments.length&&(e=a.natural(c,d)),2===arguments.length&&("string"==typeof arguments[0]?e=c:(e=a.natural(b,c),b=undefined)),1===arguments.length&&(e=b,b=undefined),0===arguments.length&&(e=a.natural(3,7));for(var f="",g=0;e>g;g++)f+=a.character(b);return f},str:function(a,b,c){return this.string(a,b,c)},range:function(a,b,c){arguments.length<=1&&(b=a||0,a=0),c=arguments[2]||1,a=+a,b=+b,c=+c;for(var d=Math.max(Math.ceil((b-a)/c),0),e=0,f=new Array(d);d>e;)f[e++]=a,a+=c;return f}}),a.extend({patternLetters:{yyyy:"getFullYear",yy:function(a){return(""+a.getFullYear()).slice(2)},y:"yy",MM:function(a){var b=a.getMonth()+1;return 10>b?"0"+b:b},M:function(a){return a.getMonth()+1},dd:function(a){var b=a.getDate();return 10>b?"0"+b:b},d:"getDate",HH:function(a){var b=a.getHours();return 10>b?"0"+b:b},H:"getHours",hh:function(a){var b=a.getHours()%12;return 10>b?"0"+b:b},h:function(a){return a.getHours()%12},mm:function(a){var b=a.getMinutes();return 10>b?"0"+b:b},m:"getMinutes",ss:function(a){var b=a.getSeconds();return 10>b?"0"+b:b},s:"getSeconds",SS:function(a){var b=a.getMilliseconds();return 10>b&&"00"+b||100>b&&"0"+b||b},S:"getMilliseconds",A:function(a){return a.getHours()<12?"AM":"PM"},a:function(a){return a.getHours()<12?"am":"pm"},T:"getTime"}}),a.extend({rformat:new RegExp(function(){var b=[];for(var c in a.patternLetters)b.push(c);return"("+b.join("|")+")"}(),"g"),format:function(b,c){var d=a.patternLetters,e=a.rformat;return c.replace(e,function(a,c){return"function"==typeof d[c]?d[c](b):d[c]in d?arguments.callee(a,d[c]):b[d[c]]()})},randomDate:function(a,b){return a=a===undefined?new Date(0):a,b=b===undefined?new Date:b,new Date(Math.random()*(b.getTime()-a.getTime()))},date:function(a){return a=a||"yyyy-MM-dd",this.format(this.randomDate(),a)},time:function(a){return a=a||"HH:mm:ss",this.format(this.randomDate(),a)},datetime:function(a){return a=a||"yyyy-MM-dd HH:mm:ss",this.format(this.randomDate(),a)},now:function(a,b){1===arguments.length&&(/year|month|week|day|hour|minute|second|week/.test(a)||(b=a,a="")),a=(a||"").toLowerCase(),b=b||"yyyy-MM-dd HH:mm:ss";var c=new Date;switch(a){case"year":c.setMonth(0);case"month":c.setDate(1);case"week":case"day":c.setHours(0);case"hour":c.setMinutes(0);case"minute":c.setSeconds(0);case"second":c.setMilliseconds(0)}switch(a){case"week":c.setDate(c.getDate()-c.getDay())}return this.format(c,b)}}),a.extend({ad_size:["300x250","250x250","240x400","336x280","180x150","720x300","468x60","234x60","88x31","120x90","120x60","120x240","125x125","728x90","160x600","120x600","300x600"],screen_size:["320x200","320x240","640x480","800x480","800x480","1024x600","1024x768","1280x800","1440x900","1920x1200","2560x1600"],video_size:["720x480","768x576","1280x720","1920x1080"],image:function(a,b,c,d,e){return 4===arguments.length&&(e=d,d=undefined),3===arguments.length&&(e=c,c=undefined),a||(a=this.pick(this.ad_size)),b&&~b.indexOf("#")&&(b=b.slice(1)),c&&~c.indexOf("#")&&(c=c.slice(1)),"http://dummyimage.com/"+a+(b?"/"+b:"")+(c?"/"+c:"")+(d?"."+d:"")+(e?"&text="+e:"")},img:function(){return this.image.apply(this,arguments)}}),a.extend({brandColors:{"4ormat":"#fb0a2a","500px":"#02adea","About.me (blue)":"#00405d","About.me (yellow)":"#ffcc33",Addvocate:"#ff6138",Adobe:"#ff0000",Aim:"#fcd20b",Amazon:"#e47911",Android:"#a4c639","Angie's List":"#7fbb00",AOL:"#0060a3",Atlassian:"#003366",Behance:"#053eff","Big Cartel":"#97b538",bitly:"#ee6123",Blogger:"#fc4f08",Boeing:"#0039a6","Booking.com":"#003580",Carbonmade:"#613854",Cheddar:"#ff7243","Code School":"#3d4944",Delicious:"#205cc0",Dell:"#3287c1",Designmoo:"#e54a4f",Deviantart:"#4e6252","Designer News":"#2d72da",Devour:"#fd0001",DEWALT:"#febd17","Disqus (blue)":"#59a3fc","Disqus (orange)":"#db7132",Dribbble:"#ea4c89",Dropbox:"#3d9ae8",Drupal:"#0c76ab",Dunked:"#2a323a",eBay:"#89c507",Ember:"#f05e1b",Engadget:"#00bdf6",Envato:"#528036",Etsy:"#eb6d20",Evernote:"#5ba525","Fab.com":"#dd0017",Facebook:"#3b5998",Firefox:"#e66000","Flickr (blue)":"#0063dc","Flickr (pink)":"#ff0084",Forrst:"#5b9a68",Foursquare:"#25a0ca",Garmin:"#007cc3",GetGlue:"#2d75a2",Gimmebar:"#f70078",GitHub:"#171515","Google Blue":"#0140ca","Google Green":"#16a61e","Google Red":"#dd1812","Google Yellow":"#fcca03","Google+":"#dd4b39",Grooveshark:"#f77f00",Groupon:"#82b548","Hacker News":"#ff6600",HelloWallet:"#0085ca","Heroku (light)":"#c7c5e6","Heroku (dark)":"#6567a5",HootSuite:"#003366",Houzz:"#73ba37",HTML5:"#ec6231",IKEA:"#ffcc33",IMDb:"#f3ce13",Instagram:"#3f729b",Intel:"#0071c5",Intuit:"#365ebf",Kickstarter:"#76cc1e",kippt:"#e03500",Kodery:"#00af81",LastFM:"#c3000d",LinkedIn:"#0e76a8",Livestream:"#cf0005",Lumo:"#576396",Mixpanel:"#a086d3",Meetup:"#e51937",Nokia:"#183693",NVIDIA:"#76b900",Opera:"#cc0f16",Path:"#e41f11","PayPal (dark)":"#1e477a","PayPal (light)":"#3b7bbf",Pinboard:"#0000e6",Pinterest:"#c8232c",PlayStation:"#665cbe",Pocket:"#ee4056",Prezi:"#318bff",Pusha:"#0f71b4",Quora:"#a82400","QUOTE.fm":"#66ceff",Rdio:"#008fd5",Readability:"#9c0000","Red Hat":"#cc0000",Resource:"#7eb400",Rockpack:"#0ba6ab",Roon:"#62b0d9",RSS:"#ee802f",Salesforce:"#1798c1",Samsung:"#0c4da2",Shopify:"#96bf48",Skype:"#00aff0",Snagajob:"#f47a20",Softonic:"#008ace",SoundCloud:"#ff7700","Space Box":"#f86960",Spotify:"#81b71a",Sprint:"#fee100",Squarespace:"#121212",StackOverflow:"#ef8236",Staples:"#cc0000","Status Chart":"#d7584f",Stripe:"#008cdd",StudyBlue:"#00afe1",StumbleUpon:"#f74425","T-Mobile":"#ea0a8e",Technorati:"#40a800","The Next Web":"#ef4423",Treehouse:"#5cb868",Trulia:"#5eab1f",Tumblr:"#34526f","Twitch.tv":"#6441a5",Twitter:"#00acee",TYPO3:"#ff8700",Ubuntu:"#dd4814",Ustream:"#3388ff",Verizon:"#ef1d1d",Vimeo:"#86c9ef",Vine:"#00a478",Virb:"#06afd8","Virgin Media":"#cc0000",Wooga:"#5b009c","WordPress (blue)":"#21759b","WordPress (orange)":"#d54e21","WordPress (grey)":"#464646",Wunderlist:"#2b88d9",XBOX:"#9bc848",XING:"#126567","Yahoo!":"#720e9e",Yandex:"#ffcc00",Yelp:"#c41200",YouTube:"#c4302b",Zalongo:"#5498dc",Zendesk:"#78a300",Zerply:"#9dcc7a",Zootool:"#5e8b1d"},brands:function(){var a=[];for(var b in this.brandColors)a.push(b);return a},dataImage:function(a,b){var c="undefined"!=typeof document&&document.createElement("canvas"),d=c&&c.getContext&&c.getContext("2d");if(!c||!d)return"";a||(a=this.pick(this.ad_size)),b=b!==undefined?b:a,a=a.split("x");var e=parseInt(a[0],10),f=parseInt(a[1],10),g=this.brandColors[this.pick(this.brands())],h="#FFF",i=14,j="sans-serif";return c.width=e,c.height=f,d.textAlign="center",d.textBaseline="middle",d.fillStyle=g,d.fillRect(0,0,e,f),d.fillStyle=h,d.font="bold "+i+"px "+j,d.fillText(b,e/2,f/2,e),c.toDataURL("image/png")}}),a.extend({color:function(){var a=Math.floor(16777215*Math.random()).toString(16);return a="#"+("000000"+a).slice(-6)}}),a.extend({capitalize:function(a){return(a+"").charAt(0).toUpperCase()+(a+"").substr(1)},upper:function(a){return(a+"").toUpperCase()},lower:function(a){return(a+"").toLowerCase()},pick:function(a){return a=a||[],a[this.natural(0,a.length-1)]},shuffle:function(a){a=a||[];for(var b=a.slice(0),c=[],d=0,e=b.length,f=0;e>f;f++)d=this.natural(0,b.length-1),c.push(b[d]),b.splice(d,1);return c}}),a.extend({paragraph:function(b,c){var d;0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.sentence());return e.join(" ")},sentence:function(b,c){var d;0===arguments.length&&(d=a.natural(12,18)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e=[],f=0;d>f;f++)e.push(a.word());return a.capitalize(e.join(" "))+"."},word:function(b,c){var d;0===arguments.length&&(d=a.natural(3,10)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var e="",f=0;d>f;f++)e+=a.character("lower");return e},title:function(b,c){var d,e=[];0===arguments.length&&(d=a.natural(3,7)),1===arguments.length&&(d=c=b),2===arguments.length&&(b=parseInt(b,10),c=parseInt(c,10),d=a.natural(b,c));for(var f=0;d>f;f++)e.push(this.capitalize(this.word()));return e.join(" ")}}),a.extend({first:function(){var a=["James","John","Robert","Michael","William","David","Richard","Charles","Joseph","Thomas","Christopher","Daniel","Paul","Mark","Donald","George","Kenneth","Steven","Edward","Brian","Ronald","Anthony","Kevin","Jason","Matthew","Gary","Timothy","Jose","Larry","Jeffrey","Frank","Scott","Eric"].concat(["Mary","Patricia","Linda","Barbara","Elizabeth","Jennifer","Maria","Susan","Margaret","Dorothy","Lisa","Nancy","Karen","Betty","Helen","Sandra","Donna","Carol","Ruth","Sharon","Michelle","Laura","Sarah","Kimberly","Deborah","Jessica","Shirley","Cynthia","Angela","Melissa","Brenda","Amy","Anna"]);return this.pick(a)},last:function(){var a=["Smith","Johnson","Williams","Brown","Jones","Miller","Davis","Garcia","Rodriguez","Wilson","Martinez","Anderson","Taylor","Thomas","Hernandez","Moore","Martin","Jackson","Thompson","White","Lopez","Lee","Gonzalez","Harris","Clark","Lewis","Robinson","Walker","Perez","Hall","Young","Allen"];return this.pick(a)},name:function(a){return this.first()+" "+(a?this.first()+" ":"")+this.last()},chineseName:function(a){var b="赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐".split(""),c="贵福生龙元全国胜学祥才发武新利清飞彬富顺信子杰涛昌成康星光天达安岩中茂进林有坚和彪博绍功松善厚庆磊民友裕河哲江超浩亮政谦亨奇固之轮翰朗伯宏言若鸣朋斌梁栋维启克伦翔旭鹏月莺媛艳瑞凡佳嘉琼勤珍贞莉桂娣叶璧璐娅琦晶妍茜秋珊莎锦黛青倩婷姣婉娴瑾颖露瑶怡婵雁蓓".split("");"number"!=typeof a&&(a=Math.random()>.66?2:3);for(var d=this.pick(b),e="",f=0;a>f;f++)e+=this.pick(c);return d+e}}),a.extend({url:function(){return"http://"+this.domain()+"/"+this.word()},domain:function(a){return this.word()+"."+(a||this.tld())},email:function(){return this.character("lower")+"."+this.last().toLowerCase()+"@"+this.last().toLowerCase()+"."+this.tld()},ip:function(){return this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)+"."+this.natural(0,255)},tlds:["com","org","edu","gov","co.uk","net","io"],tld:function(){return this.pick(this.tlds)}}),a.extend({areas:["东北","华北","华东","华中","华南","西南","西北"],area:function(){return this.pick(this.areas)},regions:["110000 北京市","120000 天津市","130000 河北省","140000 山西省","150000 内蒙古自治区","210000 辽宁省","220000 吉林省","230000 黑龙江省","310000 上海市","320000 江苏省","330000 浙江省","340000 安徽省","350000 福建省","360000 江西省","370000 山东省","410000 河南省","420000 湖北省","430000 湖南省","440000 广东省","450000 广西壮族自治区","460000 海南省","500000 重庆市","510000 四川省","520000 贵州省","530000 云南省","540000 西藏自治区","610000 陕西省","620000 甘肃省","630000 青海省","640000 宁夏回族自治区","650000 新疆维吾尔自治区","650000 新疆维吾尔自治区","710000 台湾省","810000 香港特别行政区","820000 澳门特别行政区"],region:function(){return this.pick(this.regions).split(" ")[1]},address:function(){},city:function(){},phone:function(){},areacode:function(){},street:function(){},street_suffixes:function(){},street_suffix:function(){},states:function(){},state:function(){},zip:function(a){for(var b="",c=0;(a||6)>c;c++)b+=this.natural(0,9);return b}}),a.extend({todo:function(){return"todo"}}),a.extend({d4:function(){return this.natural(1,4)},d6:function(){return this.natural(1,6)},d8:function(){return this.natural(1,8)},d12:function(){return this.natural(1,12)},d20:function(){return this.natural(1,20)},d100:function(){return this.natural(1,100)},guid:function(){var a="ABCDEF1234567890",b=this.string(a,8)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,4)+"-"+this.string(a,12);return b},id:function(){var a,b=0,c=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],d=["1","0","X","9","8","7","6","5","4","3","2"];a=this.pick(this.regions).split(" ")[0]+this.date("yyyyMMdd")+this.string("number",3);for(var e=0;e1)a.context.path.push(a.name),d=Random.pick(Handle.gen(a.template,undefined,{currentContext:d,templateCurrentContext:a.template,path:a.context.path})),a.context.path.pop();else for(b=0;b/g,g=a.match(f),h={};for(c=0;g&&ch&&b.splice(0,b.length-h)},c.block=function(a,b,c,e,f){var g,h,i,j,k,l=a.mustache.id.parts,m=b[0],n=b.length;if(a.inverse,a.mustache.isHelper||e&&e[a.mustache.id.string])k=l[0],j=(d[k]||d.custom).apply(this,arguments),m=b[0];else for(g=0;gg;g++)m.push("undefined"!=typeof j[g]?j[g]:{}),c.__path.push("[]"),b.unshift(m[m.length-1]),this.gen(a.program,b,c,e,f),c.__path.pop(),b.shift();else this.gen(a.program,b,c,e,f);b.length>n&&b.splice(0,b.length-n)},c.hash=function(a,b,c,d,e){var f,g,h,i=a.pairs;for(g=0;gd;d++)c.__path.push(m[d]),f=m[d],g=m[d-1],l=c[g],h=d===e-1?n[f]:{},i=this.val(f,c,b,h),j=Util.type(n[f]),k=Util.type(i),"undefined"===j?n[f]=e-1>d&&"object"!==k&&"array"!==k?{}:Util.isArray(i)&&[]||i:e-1>d&&"object"!==j&&"array"!==j&&(n[f]=Util.isArray(i)&&[]||{}),j=Util.type(n[f]),("object"===j||"array"===j)&&(n=n[f],b.unshift(n));else;b.length>o&&b.splice(0,b.length-o)},c.partial=function(a,b,d,e,f){var g=a.partialName.name,h=f&&f[g],i=b.length;h&&c.gen(h,b,d,e,f),b.length>i&&b.splice(0,b.length-i)},c.content=Util.noop,c.PARTIAL_NAME=Util.noop,c.DATA=Util.noop,c.STRING=Util.noop,c.INTEGER=Util.noop,c.BOOLEAN=Util.noop,c.comment=Util.noop;var d={};d.each=function(a,b,c){var d,e,f,g,h,i,j,k=b[0];for(h=a.mustache.params[0].parts,d=0,e=h.length;e>d;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g},d["if"]=d.unless=function(a,b,c){var d,e,f,g,h,i,j,k=a.mustache.params,l=b[0];for(d=0;dd;d++)c.__path.push(h[d]),f=h[d],i=d===e-1?[]:{},g=this.val(f,c,b,i),k[f]=Util.isArray(g)&&[]||g,j=Util.type(k[f]),("object"===j||"array"===j)&&(k=k[f],b.unshift(k));return g}}}.call(this),function(a){if("undefined"!=typeof KISSY){var b,c={debug:!1};KISSY.use("xtemplate",function(a,c){b=c}),this.Mock||(module.exports=c),Mock.xtpl=function(a,b,d,e){return c.mock(a,b,d,e)},Mock.xparse=function(a){return b.compiler.parse(a)},c.mock=function(a,c,d,e){return d=d?Util.extend({},d,b.RunTime.commands):b.RunTime.commands,e=e?Util.extend({},e,b.RunTime.subTpls):b.RunTime.subTpls,this.gen(a,null,c,d,e,{})},c.parse=function(a){return b.compiler.parse(a)},c.gen=function(a,b,d,e,f,g){if("string"==typeof a){c.debug&&console.log("[tpl ]\n",a);var h=this.parse(a);d=this.parseOptions(a,d);var i=this.gen(h,b,d,e,f,g);return i}if(b=b||[{}],d=d||{},a.type=a.type,this[a.type]!==Util.noop){d.__path=d.__path||[],c.debug&&(console.log(),console.group("["+a.type+"]",JSON.stringify(a)),console.log("[context]","[before]",b.length,JSON.stringify(b)),console.log("[options]","[before]",d.__path.length,JSON.stringify(d)),console.log("[other ]","[before]",JSON.stringify(g)));var j=d.__path.length;return this[a.type](a,b,d,e,f,g),c.debug&&console.log("[__path ]","[after ]",d.__path),(!g.hold||"function"==typeof g.hold&&!g.hold(a,d,b))&&d.__path.splice(j),c.debug&&(console.log("[context]","[after ]",b.length,JSON.stringify(b)),console.groupEnd()),b[b.length-1]}},c.parseOptions=function(a,b){var c,d,e,f=//g,g=a.match(f),h={};for(c=0;g&&c0)return h[0];if(b in g)return g[b]}return Util.isArray(e[0])?{}:f!==a?f:b},c.program=function(a,b,c,d,e,f){for(var g=0;gj;j++)l.push(i&&i[j]!==a?i[j]:{}),d.__path.push(j),c.unshift(l[l.length-1]),this.gen(b.program,c,d,e,f,g),d.__path.pop(),c.shift();else this.gen(b.program,c,d,e,f,g);(!g.hold||"function"==typeof g.hold&&!g.hold(b,d,c))&&c.splice(0,c.length-h)},c.tpl=function(a,b,c,d,e,f){if(a.params&&a.params.length){f=Util.extend({},f,{def:{each:[],"if":"@BOOL(2,1,true)",unless:"@BOOL(2,1,false)","with":{}}[a.path.string],hold:{each:!0,"if":function(a,b,c,d,e){return"object"==typeof e},unless:function(a,b,c,d,e){return"object"==typeof e},"with":!0,include:!1}[a.path.string]});for(var g,h=0;h-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()})),this.gen(b.op2,c,d,e,f,Util.extend({},g,{def:function(){return"number"===b.op1.type?b.op1.value.indexOf(".")>-1?Random["float"](-Math.pow(10,10),Math.pow(10,10),1,Math.pow(10,6)):Random.integer():a}()}))},c.relationalExpression=function(a,b,c,d,e,f){this.gen(a.op1,b,c,d,e,f),this.gen(a.op2,b,c,d,e,f)},c.equalityExpression=Util.noop,c.conditionalAndExpression=Util.noop,c.conditionalOrExpression=Util.noop,c.string=Util.noop,c.number=Util.noop,c["boolean"]=Util.noop,c.hash=function(a,b,c,d,e,f){var g,h=a.value;for(g in h)this.gen(h[g],b,c,d,e,f)},c.id=function(b,d,e,f,g,h){function i(a,b,c,d,e){var f=Util.type(a[d]),g=Util.type(e);return e="true"===e?!0:"false"===e?!1:e,"undefined"===f?a[d]=c-1>b&&!Util.isObjectOrArray(e)?{}:Util.isArray(e)&&[]||e:c-1>b&&"object"!==f&&"array"!==f?a[d]=Util.isArray(e)&&[]||{}:"object"!==f&&"array"!==f&&"object"!==g&&"array"!==g&&(a[d]=e),a[d]}var j,k,l,m,n,o=d.length,p=b.parts,q=d[b.depth];for(Util.isArray(q)&&(q=d[b.depth+1]),j=0,k=p.length;k>j;j++)(0!==j||"this"!==p[j])&&(/^(xindex|xcount|xkey)$/.test(p[j])||0===j&&1===k&&p[j]in f||(e.__path.push(p[j]),l=p[j],m=j===k-1?h.def!==a?h.def:d[0][l]:{},n=this.val(l,e,d,m),c.debug&&(console.log("[def ]",JSON.stringify(m)),console.log("[val ]",JSON.stringify(n))),n=i(q,j,k,l,n),Util.isObjectOrArray(q[l])&&d.unshift(q=q[l])));(!h.hold||"function"==typeof h.hold&&!h.hold(b,e,d,l,n))&&d.splice(0,d.length-o)}}}.call(this)}).call(this); +//# sourceMappingURL=mock-min.map \ No newline at end of file diff --git a/dist/mock.js b/dist/mock.js index 5f1f0747..54eecd41 100644 --- a/dist/mock.js +++ b/dist/mock.js @@ -1,4 +1,4 @@ -/*! mockjs 24-12-2014 11:39:10 */ +/*! mockjs 05-03-2015 14:55:44 */ /*! src/mock-prefix.js */ /*! Mock - 模拟请求 & 模拟数据 @@ -607,15 +607,26 @@ first: function() { var names = [ "James", "John", "Robert", "Michael", "William", "David", "Richard", "Charles", "Joseph", "Thomas", "Christopher", "Daniel", "Paul", "Mark", "Donald", "George", "Kenneth", "Steven", "Edward", "Brian", "Ronald", "Anthony", "Kevin", "Jason", "Matthew", "Gary", "Timothy", "Jose", "Larry", "Jeffrey", "Frank", "Scott", "Eric" ].concat([ "Mary", "Patricia", "Linda", "Barbara", "Elizabeth", "Jennifer", "Maria", "Susan", "Margaret", "Dorothy", "Lisa", "Nancy", "Karen", "Betty", "Helen", "Sandra", "Donna", "Carol", "Ruth", "Sharon", "Michelle", "Laura", "Sarah", "Kimberly", "Deborah", "Jessica", "Shirley", "Cynthia", "Angela", "Melissa", "Brenda", "Amy", "Anna" ]); return this.pick(names); - return this.capitalize(this.word()); }, last: function() { var names = [ "Smith", "Johnson", "Williams", "Brown", "Jones", "Miller", "Davis", "Garcia", "Rodriguez", "Wilson", "Martinez", "Anderson", "Taylor", "Thomas", "Hernandez", "Moore", "Martin", "Jackson", "Thompson", "White", "Lopez", "Lee", "Gonzalez", "Harris", "Clark", "Lewis", "Robinson", "Walker", "Perez", "Hall", "Young", "Allen" ]; return this.pick(names); - return this.capitalize(this.word()); }, name: function(middle) { return this.first() + " " + (middle ? this.first() + " " : "") + this.last(); + }, + chineseName: function(count) { + var familyNames = "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐".split(""); + var names = "贵福生龙元全国胜学祥才发武新利清飞彬富顺信子杰涛昌成康星光天达安岩中茂进林有坚和彪博绍功松善厚庆磊民友裕河哲江超浩亮政谦亨奇固之轮翰朗伯宏言若鸣朋斌梁栋维启克伦翔旭鹏月莺媛艳瑞凡佳嘉琼勤珍贞莉桂娣叶璧璐娅琦晶妍茜秋珊莎锦黛青倩婷姣婉娴瑾颖露瑶怡婵雁蓓".split(""); + if (typeof count !== "number") { + count = Math.random() > .66 ? 2 : 3; + } + var familyName = this.pick(familyNames); + var name = ""; + for (var i = 0; i < count; i++) { + name += this.pick(names); + } + return familyName + name; } }); Random.extend({ @@ -627,7 +638,6 @@ }, email: function(domain) { return this.character("lower") + "." + this.last().toLowerCase() + "@" + this.last().toLowerCase() + "." + this.tld(); - return this.word() + "@" + (domain || this.domain()); }, ip: function() { return this.natural(0, 255) + "." + this.natural(0, 255) + "." + this.natural(0, 255) + "." + this.natural(0, 255); @@ -883,14 +893,6 @@ if (placeholders.length === 1 && ph === result && typeof phed !== typeof result) { result = phed; break; - if (Util.isNumeric(phed)) { - result = parseFloat(phed, 10); - break; - } - if (/^(true|false)$/.test(phed)) { - result = phed === "true" ? true : phed === "false" ? false : phed; - break; - } } result = result.replace(ph, phed); } diff --git a/doc/index.md b/doc/index.md index 4a7aabc7..80645bad 100644 --- a/doc/index.md +++ b/doc/index.md @@ -1234,6 +1234,24 @@ TODO 统计 --> Random.name(true) // => "Helen Carol Martinez" +#### Random.chineseName() + +* Random.chineseName() +* Random.chineseName(count) + +随机生成一个常见的英文姓名。 + +**参数的含义和默认值**如下所示: + +* 参数 count:可选。数字。指示姓名的字数,默认为 2 到 3 的随机姓名。 + +**使用示例**如下所示: + + Random.chineseName() + // => "林则徐" + Random.chineseName(2) + // => "马云" + ### Web #### Random.url() @@ -1358,6 +1376,7 @@ TODO 统计 --> Random.increment(1000) // => 1101 + --- ## 感谢 diff --git a/index.html b/index.html index 04654d8a..f2c330fe 100644 --- a/index.html +++ b/index.html @@ -113,7 +113,7 @@

  • 模拟 Ajax 请求,生成并返回模拟数据
  • 基于 HTML 模板生成模拟数据
  • -

    在线编辑器

    +

    在线编辑器

    -

    下载

    +

    下载

    Development Version (0.1.5) @@ -147,15 +147,15 @@

    下载

    -

    分享文档

    +

    分享文档

    -

    用法

    -

    浏览器

    +

    用法

    +

    浏览器

    -

    Node (CommonJS)

    +

    Node (CommonJS)

    // 安装
     npm install mockjs
     
    @@ -167,20 +167,20 @@ 

    Node (CommonJS)

    }] }); console.log(JSON.stringify(data, null, 4))
    -

    Bower

    +

    Bower

    npm install -g bower
     bower install --save mockjs
     
     <script type="text/javascript" src="./bower_components/mockjs/dist/mock.js"></script>
    -

    RequireJS (AMD)

    +

    RequireJS (AMD)

    -

    Sea.js (CMD)

    +

    Sea.js (CMD)

    -

    KISSY

    +

    KISSY

    -

    Random CLI

    +

    Random CLI

    // 安装
     npm install mockjs -g
     
    @@ -197,13 +197,13 @@ 

    Random CLI

    $ random url // => http://rmcpx.org/funzwc

    -

    语法规范

    +

    语法规范

    Mock.js 的语法规范包括两部分:

    1. 数据模板定义(Data Temaplte Definition,DTD)
    2. 数据占位符定义(Data Placeholder Definition,DPD)
    -

    数据模板定义 DTD

    +

    数据模板定义 DTD

    数据模板中的每个属性由 3 部分构成:属性名、生成规则、属性值:

    // 属性名   name
     // 生成规则 rule
    @@ -277,7 +277,7 @@ 

    数据模板定义 DTD

    'name': function(){} 执行函数 function(){},取其返回值作为最终的属性值,上下文为 'name' 所在的对象。

    -

    数据占位符定义 DPD

    +

    数据占位符定义 DPD

    占位符 只是在属性值字符串中占个位置,并不出现在最终的属性值中。占位符 的格式为:

    @占位符
     @占位符(参数 [, 参数])
    @@ -308,8 +308,8 @@

    数据占位符定义 DPD


    -

    Mock

    -

    Mock.mock( rurl?, rtype?, template|function(options) )

    +

    Mock

    +

    Mock.mock( rurl?, rtype?, template|function(options) )

    根据数据模板生成模拟数据。

    • Mock.mock( template )

      @@ -355,7 +355,7 @@

      Mock.mock( rurl?, rtype?, template|function(options) )

      -

      Mock.mockjax(library)

      +

      Mock.mockjax(library)

      覆盖(拦截) Ajax 请求,目前内置支持 jQuery、Zepto、KISSY。

      对 jQuery Ajax 请求的拦截和响应,通过覆盖前置过滤器、选项 dataFilter 以及数据转换器实现,实现代码请问这里

      对 KISSY Ajax 请求的拦截和响应,则通过粗鲁地覆盖 KISSY.io(options) 实现,实现代码请问这里

      @@ -372,7 +372,7 @@

      Mock.mockjax(library)

      -

      Mock.tpl(input, options, helpers, partials)

      +

      Mock.tpl(input, options, helpers, partials)

      • Mock.tpl(input)
      • Mock.tpl(input, options)
      • @@ -446,7 +446,7 @@

        Mock.tpl(input, options, helpers, partials)

        "email": "j.walker@brown.edu", "age": 83 }
    -

    Mock.xtpl(input, options, helpers, partials)

    +

    Mock.xtpl(input, options, helpers, partials)