├── .gitignore ├── src ├── templates │ └── page.index.hbs ├── less │ └── less.less ├── css │ ├── css-display-flex.css │ ├── css-1.css │ └── css-2.css ├── sass │ └── sass.scss ├── images │ ├── nimo.jpg │ ├── gradient.png │ └── loading.gif ├── fonts │ ├── iconfont.eot │ ├── iconfont.ttf │ ├── iconfont.woff │ ├── iconfont.css │ ├── demo.html │ ├── demo.css │ └── iconfont.svg └── js │ ├── log.js │ ├── say.js │ └── handlebars.runtime.min.js ├── dist ├── css │ ├── less.css │ ├── css-2.css │ ├── css-1.css │ ├── sass.css │ ├── css-display-flex.css │ ├── less.css.map │ ├── css-1.css.map │ ├── css-2.css.map │ ├── css-display-flex.css.map │ └── sass.css.map ├── images │ ├── nimo.jpg │ ├── loading.gif │ └── gradient.png ├── fonts │ ├── iconfont.eot │ ├── iconfont.ttf │ ├── iconfont.woff │ ├── iconfont.css │ ├── demo.html │ ├── demo.css │ └── iconfont.svg ├── js │ ├── say.js │ ├── log.js │ ├── log.js.map │ ├── say.js.map │ ├── handlebars.runtime.min.js │ └── handlebars.runtime.min.js.map └── templates │ └── page.index.js ├── README.md ├── html ├── js.html ├── less.html ├── sass.html ├── templates.html └── css.html ├── package.json └── gulpfile.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .sass-cache -------------------------------------------------------------------------------- /src/templates/page.index.hbs: -------------------------------------------------------------------------------- 1 | This is {{name}} ! -------------------------------------------------------------------------------- /src/less/less.less: -------------------------------------------------------------------------------- 1 | body{ 2 | font-size:12px; 3 | } -------------------------------------------------------------------------------- /src/css/css-display-flex.css: -------------------------------------------------------------------------------- 1 | .demo { 2 | display:flex; 3 | } -------------------------------------------------------------------------------- /src/css/css-1.css: -------------------------------------------------------------------------------- 1 | body { 2 | border-top:1px solid #ABCDEF; 3 | } -------------------------------------------------------------------------------- /src/css/css-2.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-color: #F4F9FF; 3 | } -------------------------------------------------------------------------------- /src/sass/sass.scss: -------------------------------------------------------------------------------- 1 | a{ 2 | font-size:10px; 3 | display:flex; 4 | } -------------------------------------------------------------------------------- /dist/css/less.css: -------------------------------------------------------------------------------- 1 | body{font-size:12px} 2 | /*# sourceMappingURL=less.css.map */ -------------------------------------------------------------------------------- /dist/css/css-2.css: -------------------------------------------------------------------------------- 1 | body{background-color:#F4F9FF} 2 | /*# sourceMappingURL=css-2.css.map */ -------------------------------------------------------------------------------- /dist/images/nimo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/images/nimo.jpg -------------------------------------------------------------------------------- /src/images/nimo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/images/nimo.jpg -------------------------------------------------------------------------------- /dist/css/css-1.css: -------------------------------------------------------------------------------- 1 | body{border-top:1px solid #ABCDEF} 2 | /*# sourceMappingURL=css-1.css.map */ -------------------------------------------------------------------------------- /dist/fonts/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/fonts/iconfont.eot -------------------------------------------------------------------------------- /dist/fonts/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/fonts/iconfont.ttf -------------------------------------------------------------------------------- /dist/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/images/loading.gif -------------------------------------------------------------------------------- /src/fonts/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/fonts/iconfont.eot -------------------------------------------------------------------------------- /src/fonts/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/fonts/iconfont.ttf -------------------------------------------------------------------------------- /src/fonts/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/fonts/iconfont.woff -------------------------------------------------------------------------------- /src/images/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/images/gradient.png -------------------------------------------------------------------------------- /src/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/src/images/loading.gif -------------------------------------------------------------------------------- /dist/fonts/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/fonts/iconfont.woff -------------------------------------------------------------------------------- /dist/images/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nimoc/gulp-demo/HEAD/dist/images/gradient.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | gulp-demo 2 | ========= 3 | 4 | 请阅读 [使用 gulp 构建一个项目](https://github.com/nimojs/gulp-book/blob/master/chapter7.md) -------------------------------------------------------------------------------- /dist/css/sass.css: -------------------------------------------------------------------------------- 1 | a{font-size:10px;display:-webkit-flex;display:-ms-flexbox;display:flex} 2 | /*# sourceMappingURL=sass.css.map */ -------------------------------------------------------------------------------- /dist/css/css-display-flex.css: -------------------------------------------------------------------------------- 1 | .demo{display:-webkit-flex;display:-ms-flexbox;display:flex} 2 | /*# sourceMappingURL=css-display-flex.css.map */ -------------------------------------------------------------------------------- /dist/js/say.js: -------------------------------------------------------------------------------- 1 | var say=function(o){o>0&&(o--,console.log(o),say(o))};say(10),console.log("------------"),say(5); 2 | //# sourceMappingURL=say.js.map -------------------------------------------------------------------------------- /dist/js/log.js: -------------------------------------------------------------------------------- 1 | var log=function(o){console.log("--------"),console.log(o),console.log("--------")};log({a:1}),log("gulp-book"); 2 | //# sourceMappingURL=log.js.map -------------------------------------------------------------------------------- /src/js/log.js: -------------------------------------------------------------------------------- 1 | var log = function (msg) { 2 | console.log('--------'); 3 | console.log(msg) 4 | console.log('--------'); 5 | } 6 | log({a:1}) 7 | log('gulp-book') -------------------------------------------------------------------------------- /dist/css/less.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["less.less"],"names":[],"mappings":"AAAA,KACI","file":"less.css","sourcesContent":["body{\n font-size:12px;\n}"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /dist/css/css-1.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["css-1.css"],"names":[],"mappings":"AAAA,KACI","file":"css-1.css","sourcesContent":["body {\n border-top:1px solid #ABCDEF;\n}"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /dist/css/css-2.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["css-2.css"],"names":[],"mappings":"AAAA,KACI","file":"css-2.css","sourcesContent":["body {\n background-color: #F4F9FF;\n}"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /html/js.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | js 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /dist/css/css-display-flex.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["css-display-flex.css"],"names":[],"mappings":"AAAA,MACI,qBAAA,oBAAA","file":"css-display-flex.css","sourcesContent":[".demo {\n display:flex;\n}"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /src/js/say.js: -------------------------------------------------------------------------------- 1 | var say = function (number) { 2 | if (number > 0) { 3 | number-- 4 | console.log(number) 5 | say(number) 6 | } 7 | } 8 | 9 | say(10) 10 | console.log('------------') 11 | say(5) -------------------------------------------------------------------------------- /dist/css/sass.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["sass.css"],"names":[],"mappings":"AAAA,EACE,eACA,CAAA,oBAAA,CAAA,mBAAA,CAAA,YAAA,CAAA","file":"sass.css","sourcesContent":["a {\n font-size: 10px;\n display: flex; }\n"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /html/less.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | less 6 | 7 | 8 | 9 | file: ../dist/css/less.css 10 |
11 | font-size:12px; 12 | 13 | -------------------------------------------------------------------------------- /html/sass.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | sass 6 | 7 | 8 | 9 | file: ../dist/css/sass.css 10 |
11 | link 12 | 13 | -------------------------------------------------------------------------------- /dist/js/log.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["log.js"],"names":["log","msg","console","a"],"mappings":"AAAA,GAAIA,KAAM,SAAUC,GAChBC,QAAQF,IAAI,YACZE,QAAQF,IAAIC,GACZC,QAAQF,IAAI,YAEhBA,MAAKG,EAAE,IACPH,IAAI","file":"log.js","sourcesContent":["var log = function (msg) {\n console.log('--------');\n console.log(msg)\n console.log('--------');\n}\nlog({a:1})\nlog('gulp-book')"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /dist/js/say.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["say.js"],"names":["say","number","console","log"],"mappings":"AAAA,GAAIA,KAAM,SAAUC,GACZA,EAAS,IACTA,IACAC,QAAQC,IAAIF,GACZD,IAAIC,IAIZD,KAAI,IACJE,QAAQC,IAAI,gBACZH,IAAI","file":"say.js","sourcesContent":["var say = function (number) {\n if (number > 0) {\n number--\n console.log(number)\n say(number)\n }\n}\n\nsay(10)\nconsole.log('------------')\nsay(5)"],"sourceRoot":"/source/"} -------------------------------------------------------------------------------- /html/templates.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | templates 6 | 7 | 8 | file: ../dist/templates/page.index.js 9 |
10 |
11 |
12 | 13 | 14 | 18 | 19 | -------------------------------------------------------------------------------- /dist/templates/page.index.js: -------------------------------------------------------------------------------- 1 | this["S"] = this["S"] || {}; 2 | this["S"]["templates"] = this["S"]["templates"] || {}; 3 | this["S"]["templates"]["page"] = this["S"]["templates"]["page"] || {}; 4 | this["S"]["templates"]["page"]["index"] = Handlebars.template({"compiler":[6,">= 2.0.0-beta.1"],"main":function(depth0,helpers,partials,data) { 5 | var helper; 6 | 7 | return "This is " 8 | + this.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : helpers.helperMissing),(typeof helper === "function" ? helper.call(depth0,{"name":"name","hash":{},"data":data}) : helper))) 9 | + " !"; 10 | },"useData":true}); -------------------------------------------------------------------------------- /html/css.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | css 6 | 7 | 8 | 9 | 10 | 11 | file: ../dist/css/css-1.css 12 |
13 | file: ../dist/css/css-2.css 14 |
15 | file: ../dist/css/css-display-flex.css 16 |
17 |
18 |
.demo
19 | 20 | -------------------------------------------------------------------------------- /dist/fonts/iconfont.css: -------------------------------------------------------------------------------- 1 | 2 | @font-face {font-family: "iconfont"; 3 | src: url('iconfont.eot'); /* IE9*/ 4 | src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ 5 | url('iconfont.woff') format('woff'), /* chrome、firefox */ 6 | url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ 7 | url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */ 8 | } 9 | 10 | .iconfont { 11 | font-family:"iconfont" !important; 12 | font-size:16px; 13 | font-style:normal; 14 | -webkit-font-smoothing: antialiased; 15 | -webkit-text-stroke-width: 0.2px; 16 | -moz-osx-font-smoothing: grayscale; 17 | } 18 | .icon-add:before { content: "\e603"; } 19 | .icon-answer:before { content: "\e604"; } 20 | .icon-app:before { content: "\e605"; } 21 | .icon-browser:before { content: "\e606"; } 22 | -------------------------------------------------------------------------------- /src/fonts/iconfont.css: -------------------------------------------------------------------------------- 1 | 2 | @font-face {font-family: "iconfont"; 3 | src: url('iconfont.eot'); /* IE9*/ 4 | src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ 5 | url('iconfont.woff') format('woff'), /* chrome、firefox */ 6 | url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ 7 | url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */ 8 | } 9 | 10 | .iconfont { 11 | font-family:"iconfont" !important; 12 | font-size:16px; 13 | font-style:normal; 14 | -webkit-font-smoothing: antialiased; 15 | -webkit-text-stroke-width: 0.2px; 16 | -moz-osx-font-smoothing: grayscale; 17 | } 18 | .icon-add:before { content: "\e603"; } 19 | .icon-answer:before { content: "\e604"; } 20 | .icon-app:before { content: "\e605"; } 21 | .icon-browser:before { content: "\e606"; } 22 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gulp-demo", 3 | "version": "0.0.4", 4 | "description": "Using gulp build a project instance. Link: https://github.com/nimojs/gulp-book/blob/master/chapter7.md", 5 | "main": "gulpfile.js", 6 | "devDependencies": { 7 | "gulp": "^3.8.11", 8 | "gulp-autoprefixer": "^2.1.0", 9 | "gulp-declare": "^0.3.0", 10 | "gulp-handlebars": "^4.0.0", 11 | "gulp-imagemin": "^2.2.1", 12 | "gulp-less": "^3.0.2", 13 | "gulp-minify-css": "^1.0.0", 14 | "gulp-ruby-sass": "^1.0.1", 15 | "gulp-sourcemaps": "^1.5.1", 16 | "gulp-uglify": "^1.1.0", 17 | "gulp-util": "^3.0.4", 18 | "gulp-watch-path": "^0.1.0", 19 | "gulp-wrap": "^0.11.0", 20 | "stream-combiner2": "^1.0.2" 21 | }, 22 | "scripts": { 23 | "test": "echo \"Error: no test specified\" && exit 1" 24 | }, 25 | "repository": { 26 | "type": "git", 27 | "url": "https://github.com/nimojs/gulp-demo" 28 | }, 29 | "keywords": [ 30 | "gulpplugin", 31 | "gulp-book", 32 | "gulp" 33 | ], 34 | "author": "nimojs ", 35 | "license": "MIT", 36 | "bugs": { 37 | "url": "https://github.com/nimojs/gulp-demo/issues" 38 | }, 39 | "homepage": "https://github.com/nimojs/gulp-demo", 40 | "dependencies": { 41 | "handlebars": "^3.0.1" 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /dist/fonts/demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IconFont 6 | 7 | 8 | 9 | 10 |
11 |

IconFont 图标

12 | 43 | 44 | 45 |
46 | 第一步:使用font-face声明字体 47 |
48 | @font-face {font-family: 'iconfont';
49 |     src: url('iconfont.eot'); /* IE9*/
50 |     src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
51 |     url('iconfont.woff') format('woff'), /* chrome、firefox */
52 |     url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
53 |     url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */
54 | }
55 | 
56 | 第二步:定义使用iconfont的样式 57 |
58 | .iconfont{
59 |     font-family:"iconfont" !important;
60 |     font-size:16px;font-style:normal;
61 |     -webkit-font-smoothing: antialiased;
62 |     -webkit-text-stroke-width: 0.2px;
63 |     -moz-osx-font-smoothing: grayscale;}
64 | 
65 | 第三步:挑选相应图标并获取字体编码,应用于页面 66 |
67 | <i class="iconfont">&#x33;</i>
68 | 
69 |
70 | 71 |
72 | 73 | 74 | -------------------------------------------------------------------------------- /src/fonts/demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IconFont 6 | 7 | 8 | 9 | 10 |
11 |

IconFont 图标

12 | 43 | 44 | 45 |
46 | 第一步:使用font-face声明字体 47 |
48 | @font-face {font-family: 'iconfont';
49 |     src: url('iconfont.eot'); /* IE9*/
50 |     src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
51 |     url('iconfont.woff') format('woff'), /* chrome、firefox */
52 |     url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
53 |     url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */
54 | }
55 | 
56 | 第二步:定义使用iconfont的样式 57 |
58 | .iconfont{
59 |     font-family:"iconfont" !important;
60 |     font-size:16px;font-style:normal;
61 |     -webkit-font-smoothing: antialiased;
62 |     -webkit-text-stroke-width: 0.2px;
63 |     -moz-osx-font-smoothing: grayscale;}
64 | 
65 | 第三步:挑选相应图标并获取字体编码,应用于页面 66 |
67 | <i class="iconfont">&#x33;</i>
68 | 
69 |
70 | 71 |
72 | 73 | 74 | -------------------------------------------------------------------------------- /dist/fonts/demo.css: -------------------------------------------------------------------------------- 1 | *{margin: 0;padding: 0;list-style: none;} 2 | /* 3 | KISSY CSS Reset 4 | 理念:1. reset 的目的不是清除浏览器的默认样式,这仅是部分工作。清除和重置是紧密不可分的。 5 | 2. reset 的目的不是让默认样式在所有浏览器下一致,而是减少默认样式有可能带来的问题。 6 | 3. reset 期望提供一套普适通用的基础样式。但没有银弹,推荐根据具体需求,裁剪和修改后再使用。 7 | 特色:1. 适应中文;2. 基于最新主流浏览器。 8 | 维护:玉伯, 正淳 9 | */ 10 | 11 | /** 清除内外边距 **/ 12 | body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, /* structural elements 结构元素 */ 13 | dl, dt, dd, ul, ol, li, /* list elements 列表元素 */ 14 | pre, /* text formatting elements 文本格式元素 */ 15 | form, fieldset, legend, button, input, textarea, /* form elements 表单元素 */ 16 | th, td /* table elements 表格元素 */ { 17 | margin: 0; 18 | padding: 0; 19 | } 20 | 21 | /** 设置默认字体 **/ 22 | body, 23 | button, input, select, textarea /* for ie */ { 24 | font: 12px/1.5 tahoma, arial, \5b8b\4f53, sans-serif; 25 | } 26 | h1, h2, h3, h4, h5, h6 { font-size: 100%; } 27 | address, cite, dfn, em, var { font-style: normal; } /* 将斜体扶正 */ 28 | code, kbd, pre, samp { font-family: courier new, courier, monospace; } /* 统一等宽字体 */ 29 | small { font-size: 12px; } /* 小于 12px 的中文很难阅读,让 small 正常化 */ 30 | 31 | /** 重置列表元素 **/ 32 | ul, ol { list-style: none; } 33 | 34 | /** 重置文本格式元素 **/ 35 | a { text-decoration: none; } 36 | a:hover { text-decoration: underline; } 37 | 38 | 39 | /** 重置表单元素 **/ 40 | legend { color: #000; } /* for ie6 */ 41 | fieldset, img { border: 0; } /* img 搭车:让链接里的 img 无边框 */ 42 | button, input, select, textarea { font-size: 100%; } /* 使得表单元素在 ie 下能继承字体大小 */ 43 | /* 注:optgroup 无法扶正 */ 44 | 45 | /** 重置表格元素 **/ 46 | table { border-collapse: collapse; border-spacing: 0; } 47 | 48 | /* 清除浮动 */ 49 | .ks-clear:after, .clear:after { 50 | content: '\20'; 51 | display: block; 52 | height: 0; 53 | clear: both; 54 | } 55 | .ks-clear, .clear { 56 | *zoom: 1; 57 | } 58 | 59 | .main {padding: 30px 100px;} 60 | .main h1{font-size:36px; color:#333; text-align:left;margin-bottom:30px; border-bottom: 1px solid #eee;} 61 | 62 | .helps{margin-top:40px;} 63 | .helps pre{ 64 | padding:20px; 65 | margin:10px 0; 66 | border:solid 1px #e7e1cd; 67 | background-color: #fffdef; 68 | overflow: auto; 69 | } 70 | 71 | .icon_lists li{ 72 | float:left; 73 | width: 100px; 74 | height:180px; 75 | text-align: center; 76 | } 77 | .icon_lists .icon{ 78 | font-size: 42px; 79 | line-height: 100px; 80 | margin: 10px 0; 81 | color:#333; 82 | -webkit-transition: font-size 0.25s ease-out 0s; 83 | -moz-transition: font-size 0.25s ease-out 0s; 84 | transition: font-size 0.25s ease-out 0s; 85 | 86 | } 87 | .icon_lists .icon:hover{ 88 | font-size: 100px; 89 | } 90 | -------------------------------------------------------------------------------- /src/fonts/demo.css: -------------------------------------------------------------------------------- 1 | *{margin: 0;padding: 0;list-style: none;} 2 | /* 3 | KISSY CSS Reset 4 | 理念:1. reset 的目的不是清除浏览器的默认样式,这仅是部分工作。清除和重置是紧密不可分的。 5 | 2. reset 的目的不是让默认样式在所有浏览器下一致,而是减少默认样式有可能带来的问题。 6 | 3. reset 期望提供一套普适通用的基础样式。但没有银弹,推荐根据具体需求,裁剪和修改后再使用。 7 | 特色:1. 适应中文;2. 基于最新主流浏览器。 8 | 维护:玉伯, 正淳 9 | */ 10 | 11 | /** 清除内外边距 **/ 12 | body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, /* structural elements 结构元素 */ 13 | dl, dt, dd, ul, ol, li, /* list elements 列表元素 */ 14 | pre, /* text formatting elements 文本格式元素 */ 15 | form, fieldset, legend, button, input, textarea, /* form elements 表单元素 */ 16 | th, td /* table elements 表格元素 */ { 17 | margin: 0; 18 | padding: 0; 19 | } 20 | 21 | /** 设置默认字体 **/ 22 | body, 23 | button, input, select, textarea /* for ie */ { 24 | font: 12px/1.5 tahoma, arial, \5b8b\4f53, sans-serif; 25 | } 26 | h1, h2, h3, h4, h5, h6 { font-size: 100%; } 27 | address, cite, dfn, em, var { font-style: normal; } /* 将斜体扶正 */ 28 | code, kbd, pre, samp { font-family: courier new, courier, monospace; } /* 统一等宽字体 */ 29 | small { font-size: 12px; } /* 小于 12px 的中文很难阅读,让 small 正常化 */ 30 | 31 | /** 重置列表元素 **/ 32 | ul, ol { list-style: none; } 33 | 34 | /** 重置文本格式元素 **/ 35 | a { text-decoration: none; } 36 | a:hover { text-decoration: underline; } 37 | 38 | 39 | /** 重置表单元素 **/ 40 | legend { color: #000; } /* for ie6 */ 41 | fieldset, img { border: 0; } /* img 搭车:让链接里的 img 无边框 */ 42 | button, input, select, textarea { font-size: 100%; } /* 使得表单元素在 ie 下能继承字体大小 */ 43 | /* 注:optgroup 无法扶正 */ 44 | 45 | /** 重置表格元素 **/ 46 | table { border-collapse: collapse; border-spacing: 0; } 47 | 48 | /* 清除浮动 */ 49 | .ks-clear:after, .clear:after { 50 | content: '\20'; 51 | display: block; 52 | height: 0; 53 | clear: both; 54 | } 55 | .ks-clear, .clear { 56 | *zoom: 1; 57 | } 58 | 59 | .main {padding: 30px 100px;} 60 | .main h1{font-size:36px; color:#333; text-align:left;margin-bottom:30px; border-bottom: 1px solid #eee;} 61 | 62 | .helps{margin-top:40px;} 63 | .helps pre{ 64 | padding:20px; 65 | margin:10px 0; 66 | border:solid 1px #e7e1cd; 67 | background-color: #fffdef; 68 | overflow: auto; 69 | } 70 | 71 | .icon_lists li{ 72 | float:left; 73 | width: 100px; 74 | height:180px; 75 | text-align: center; 76 | } 77 | .icon_lists .icon{ 78 | font-size: 42px; 79 | line-height: 100px; 80 | margin: 10px 0; 81 | color:#333; 82 | -webkit-transition: font-size 0.25s ease-out 0s; 83 | -moz-transition: font-size 0.25s ease-out 0s; 84 | transition: font-size 0.25s ease-out 0s; 85 | 86 | } 87 | .icon_lists .icon:hover{ 88 | font-size: 100px; 89 | } 90 | -------------------------------------------------------------------------------- /dist/fonts/iconfont.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Created by FontForge 20120731 at Sun Apr 5 17:38:23 2015 6 | By Ads 7 | 8 | 9 | 10 | 24 | 26 | 28 | 30 | 32 | 36 | 39 | 45 | 49 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /src/fonts/iconfont.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Created by FontForge 20120731 at Sun Apr 5 17:38:23 2015 6 | By Ads 7 | 8 | 9 | 10 | 24 | 26 | 28 | 30 | 32 | 36 | 39 | 45 | 49 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /dist/js/handlebars.runtime.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?module.exports=t():e.Handlebars=t()}(this,function(){var e=function(){"use strict";function e(e){return l[e]}function t(e){for(var t=1;tr;r++)if(e[r]===t)return r;return-1}function n(t){if("string"!=typeof t){if(t&&t.toHTML)return t.toHTML();if(null==t)return"";if(!t)return t+"";t=""+t}return c.test(t)?t.replace(u,e):t}function a(e){return e||0===e?h(e)&&0===e.length?!0:!1:!0}function i(e,t){return e.path=t,e}function o(e,t){return(e?e+".":"")+t}var s={},l={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},u=/[&<>"'`]/g,c=/[&<>"'`]/;s.extend=t;var p=Object.prototype.toString;s.toString=p;var f=function(e){return"function"==typeof e};f(/x/)&&(f=function(e){return"function"==typeof e&&"[object Function]"===p.call(e)});var f;s.isFunction=f;var h=Array.isArray||function(e){return e&&"object"==typeof e?"[object Array]"===p.call(e):!1};return s.isArray=h,s.indexOf=r,s.escapeExpression=n,s.isEmpty=a,s.blockParams=i,s.appendContextPath=o,s}(),t=function(){"use strict";function e(e,t){var n,a,i=t&&t.loc;i&&(n=i.start.line,a=i.start.column,e+=" - "+n+":"+a);for(var o=Error.prototype.constructor.call(this,e),s=0;s0?(r.ids&&(r.ids=[r.name]),e.helpers.each(t,r)):n(this);if(r.data&&r.ids){var o=v(r.data);o.contextPath=i.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)}),e.registerHelper("each",function(e,t){function r(t,r,o){n&&(n.key=t,n.index=r,n.first=0===r,n.last=!!o,a&&(n.contextPath=a+t)),f+=s(e[t],{data:n,blockParams:i.blockParams([e[t],t],[a+t,null])})}if(!t)throw new o("Must pass iterator to #each");var n,a,s=t.fn,l=t.inverse,u=0,f="";if(t.data&&t.ids&&(a=i.appendContextPath(t.data.contextPath,t.ids[0])+"."),p(e)&&(e=e.call(this)),t.data&&(n=v(t.data)),e&&"object"==typeof e)if(c(e))for(var h=e.length;h>u;u++)r(u,u,u===e.length-1);else{var d;for(var m in e)e.hasOwnProperty(m)&&(d&&r(d,u-1),d=m,u++);d&&r(d,u-1,!0)}return 0===u&&(f=l(this)),f}),e.registerHelper("if",function(e,t){return p(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||i.isEmpty(e)?t.inverse(this):t.fn(this)}),e.registerHelper("unless",function(t,r){return e.helpers["if"].call(this,t,{fn:r.inverse,inverse:r.fn,hash:r.hash})}),e.registerHelper("with",function(e,t){p(e)&&(e=e.call(this));var r=t.fn;if(i.isEmpty(e))return t.inverse(this);if(t.data&&t.ids){var n=v(t.data);n.contextPath=i.appendContextPath(t.data.contextPath,t.ids[0]),t={data:n}}return r(e,t)}),e.registerHelper("log",function(t,r){var n=r.data&&null!=r.data.level?parseInt(r.data.level,10):1;e.log(n,t)}),e.registerHelper("lookup",function(e,t){return e&&e[t]})}var a={},i=e,o=t,s="3.0.1";a.VERSION=s;var l=6;a.COMPILER_REVISION=l;var u={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1"};a.REVISION_CHANGES=u;var c=i.isArray,p=i.isFunction,f=i.toString,h="[object Object]";a.HandlebarsEnvironment=r,r.prototype={constructor:r,logger:d,log:m,registerHelper:function(e,t){if(f.call(e)===h){if(t)throw new o("Arg not supported with multiple helpers");i.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(f.call(e)===h)i.extend(this.partials,e);else{if("undefined"==typeof t)throw new o("Attempting to register a partial as undefined");this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]}};var d={methodMap:{0:"debug",1:"info",2:"warn",3:"error"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:1,log:function(e,t){if("undefined"!=typeof console&&d.level<=e){var r=d.methodMap[e];(console[r]||console.log).call(console,t)}}};a.logger=d;var m=d.log;a.log=m;var v=function(e){var t=i.extend({},e);return t._parent=e,t};return a.createFrame=v,a}(e,t),n=function(){"use strict";function e(e){this.string=e}var t;return e.prototype.toString=e.prototype.toHTML=function(){return""+this.string},t=e}(),a=function(e,t,r){"use strict";function n(e){var t=e&&e[0]||1,r=h;if(t!==r){if(r>t){var n=d[r],a=d[t];throw new f("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+n+") or downgrade your runtime to an older version ("+a+").")}throw new f("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")}}function a(e,t){if(!t)throw new f("No environment passed to template");if(!e||!e.main)throw new f("Unknown template object: "+typeof e);t.VM.checkRevision(e.compiler);var r=function(r,n,a){a.hash&&(n=p.extend({},n,a.hash)),r=t.VM.resolvePartial.call(this,r,n,a);var i=t.VM.invokePartial.call(this,r,n,a);if(null==i&&t.compile&&(a.partials[a.name]=t.compile(r,e.compilerOptions,t),i=a.partials[a.name](n,a)),null!=i){if(a.indent){for(var o=i.split("\n"),s=0,l=o.length;l>s&&(o[s]||s+1!==l);s++)o[s]=a.indent+o[s];i=o.join("\n")}return i}throw new f("The partial "+a.name+" could not be compiled when running in runtime-only mode")},n={strict:function(e,t){if(!(t in e))throw new f('"'+t+'" not defined in '+e);return e[t]},lookup:function(e,t){for(var r=e.length,n=0;r>n;n++)if(e[n]&&null!=e[n][t])return e[n][t]},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:p.escapeExpression,invokePartial:r,fn:function(t){return e[t]},programs:[],program:function(e,t,r,n,a){var o=this.programs[e],s=this.fn(e);return t||a||n||r?o=i(this,e,s,t,r,n,a):o||(o=this.programs[e]=i(this,e,s)),o},data:function(e,t){for(;e&&t--;)e=e._parent;return e},merge:function(e,t){var r=e||t;return e&&t&&e!==t&&(r=p.extend({},t,e)),r},noop:t.VM.noop,compilerInfo:e.compiler},a=function(t,r){r=r||{};var i=r.data;a._setup(r),!r.partial&&e.useData&&(i=u(t,i));var o,s=e.useBlockParams?[]:void 0;return e.useDepths&&(o=r.depths?[t].concat(r.depths):[t]),e.main.call(n,t,n.helpers,n.partials,i,s,o)};return a.isTop=!0,a._setup=function(r){r.partial?(n.helpers=r.helpers,n.partials=r.partials):(n.helpers=n.merge(r.helpers,t.helpers),e.usePartial&&(n.partials=n.merge(r.partials,t.partials)))},a._child=function(t,r,a,o){if(e.useBlockParams&&!a)throw new f("must pass block params");if(e.useDepths&&!o)throw new f("must pass parent depths");return i(n,t,e[t],r,0,a,o)},a}function i(e,t,r,n,a,i,o){var s=function(t,a){return a=a||{},r.call(e,t,e.helpers,e.partials,a.data||n,i&&[a.blockParams].concat(i),o&&[t].concat(o))};return s.program=t,s.depth=o?o.length:0,s.blockParams=a||0,s}function o(e,t,r){return e?e.call||r.name||(r.name=e,e=r.partials[e]):e=r.partials[r.name],e}function s(e,t,r){if(r.partial=!0,void 0===e)throw new f("The partial "+r.name+" could not be found");return e instanceof Function?e(t,r):void 0}function l(){return""}function u(e,t){return t&&"root"in t||(t=t?m(t):{},t.root=e),t}var c={},p=e,f=t,h=r.COMPILER_REVISION,d=r.REVISION_CHANGES,m=r.createFrame;return c.checkRevision=n,c.template=a,c.program=i,c.resolvePartial=o,c.invokePartial=s,c.noop=l,c}(e,t,r),i=function(e,t,r,n,a){"use strict";var i,o=e,s=t,l=r,u=n,c=a,p=function(){var e=new o.HandlebarsEnvironment;return u.extend(e,o),e.SafeString=s,e.Exception=l,e.Utils=u,e.escapeExpression=u.escapeExpression,e.VM=c,e.template=function(t){return c.template(t,e)},e},f=p();f.create=p;var h="undefined"!=typeof global?global:window,d=h.Handlebars;return f.noConflict=function(){h.Handlebars===f&&(h.Handlebars=d)},f["default"]=f,i=f}(r,n,t,e,a);return i}); 2 | //# sourceMappingURL=handlebars.runtime.min.js.map -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | var gulp = require('gulp') 2 | var gutil = require('gulp-util') 3 | var uglify = require('gulp-uglify') 4 | var watchPath = require('gulp-watch-path') 5 | var combiner = require('stream-combiner2') 6 | var sourcemaps = require('gulp-sourcemaps') 7 | var minifycss = require('gulp-minify-css') 8 | var autoprefixer = require('gulp-autoprefixer') 9 | var less = require('gulp-less') 10 | var sass = require('gulp-ruby-sass') 11 | var imagemin = require('gulp-imagemin') 12 | 13 | var handlebars = require('gulp-handlebars'); 14 | var wrap = require('gulp-wrap'); 15 | var declare = require('gulp-declare'); 16 | 17 | var handleError = function (err) { 18 | var colors = gutil.colors; 19 | console.log('\n') 20 | gutil.log(colors.red('Error!')) 21 | gutil.log('fileName: ' + colors.red(err.fileName)) 22 | gutil.log('lineNumber: ' + colors.red(err.lineNumber)) 23 | gutil.log('message: ' + err.message) 24 | gutil.log('plugin: ' + colors.yellow(err.plugin)) 25 | } 26 | 27 | gulp.task('watchjs', function () { 28 | gulp.watch('src/js/**/*.js', function (event) { 29 | var paths = watchPath(event, 'src/', 'dist/') 30 | /* 31 | paths 32 | { srcPath: 'src/js/log.js', 33 | srcDir: 'src/js/', 34 | distPath: 'dist/js/log.js', 35 | distDir: 'dist/js/', 36 | srcFilename: 'log.js', 37 | distFilename: 'log.js' } 38 | */ 39 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 40 | gutil.log('Dist ' + paths.distPath) 41 | 42 | var combined = combiner.obj([ 43 | gulp.src(paths.srcPath), 44 | sourcemaps.init(), 45 | uglify(), 46 | sourcemaps.write('./'), 47 | gulp.dest(paths.distDir) 48 | ]) 49 | 50 | combined.on('error', handleError) 51 | }) 52 | }) 53 | 54 | gulp.task('uglifyjs', function () { 55 | var combined = combiner.obj([ 56 | gulp.src('src/js/**/*.js'), 57 | sourcemaps.init(), 58 | uglify(), 59 | sourcemaps.write('./'), 60 | gulp.dest('dist/js/') 61 | ]) 62 | combined.on('error', handleError) 63 | }) 64 | 65 | 66 | gulp.task('watchcss', function () { 67 | gulp.watch('src/css/**/*.css', function (event) { 68 | var paths = watchPath(event, 'src/', 'dist/') 69 | 70 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 71 | gutil.log('Dist ' + paths.distPath) 72 | 73 | gulp.src(paths.srcPath) 74 | .pipe(sourcemaps.init()) 75 | .pipe(autoprefixer({ 76 | browsers: 'last 2 versions' 77 | })) 78 | .pipe(minifycss()) 79 | .pipe(sourcemaps.write('./')) 80 | .pipe(gulp.dest(paths.distDir)) 81 | }) 82 | }) 83 | 84 | gulp.task('minifycss', function () { 85 | gulp.src('src/css/**/*.css') 86 | .pipe(sourcemaps.init()) 87 | .pipe(autoprefixer({ 88 | browsers: 'last 2 versions' 89 | })) 90 | .pipe(minifycss()) 91 | .pipe(sourcemaps.write('./')) 92 | .pipe(gulp.dest('dist/css/')) 93 | }) 94 | 95 | gulp.task('watchless', function () { 96 | gulp.watch('src/less/**/*.less', function (event) { 97 | var paths = watchPath(event, 'src/less/', 'dist/css/') 98 | 99 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 100 | gutil.log('Dist ' + paths.distPath) 101 | var combined = combiner.obj([ 102 | gulp.src(paths.srcPath), 103 | sourcemaps.init(), 104 | autoprefixer({ 105 | browsers: 'last 2 versions' 106 | }), 107 | less(), 108 | minifycss(), 109 | sourcemaps.write('./'), 110 | gulp.dest(paths.distDir) 111 | ]) 112 | combined.on('error', handleError) 113 | }) 114 | }) 115 | 116 | gulp.task('lesscss', function () { 117 | var combined = combiner.obj([ 118 | gulp.src('src/less/**/*.less'), 119 | sourcemaps.init(), 120 | autoprefixer({ 121 | browsers: 'last 2 versions' 122 | }), 123 | less(), 124 | minifycss(), 125 | sourcemaps.write('./'), 126 | gulp.dest('dist/css/') 127 | ]) 128 | combined.on('error', handleError) 129 | }) 130 | 131 | 132 | gulp.task('watchsass',function () { 133 | gulp.watch('src/sass/**/*', function (event) { 134 | var paths = watchPath(event, 'src/sass/', 'dist/css/') 135 | 136 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 137 | gutil.log('Dist ' + paths.distPath) 138 | sass(paths.srcPath) 139 | .on('error', function (err) { 140 | console.error('Error!', err.message); 141 | }) 142 | .pipe(sourcemaps.init()) 143 | .pipe(minifycss()) 144 | .pipe(autoprefixer({ 145 | browsers: 'last 2 versions' 146 | })) 147 | .pipe(sourcemaps.write('./')) 148 | .pipe(gulp.dest(paths.distDir)) 149 | }) 150 | }) 151 | 152 | gulp.task('sasscss', function () { 153 | sass('src/sass/*') 154 | .on('error', function (err) { 155 | console.error('Error!', err.message); 156 | }) 157 | .pipe(sourcemaps.init()) 158 | .pipe(minifycss()) 159 | .pipe(autoprefixer({ 160 | browsers: 'last 2 versions' 161 | })) 162 | .pipe(sourcemaps.write('./')) 163 | .pipe(gulp.dest('dist/css')) 164 | }) 165 | 166 | gulp.task('watchimage', function () { 167 | gulp.watch('src/images/**/*', function (event) { 168 | var paths = watchPath(event,'src/','dist/') 169 | 170 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 171 | gutil.log('Dist ' + paths.distPath) 172 | 173 | gulp.src(paths.srcPath) 174 | .pipe(imagemin({ 175 | progressive: true 176 | })) 177 | .pipe(gulp.dest(paths.distDir)) 178 | }) 179 | }) 180 | 181 | gulp.task('image', function () { 182 | gulp.src('src/images/**/*') 183 | .pipe(imagemin({ 184 | progressive: true 185 | })) 186 | .pipe(gulp.dest('dist/images')) 187 | }) 188 | 189 | gulp.task('watchcopy', function () { 190 | gulp.watch('src/fonts/**/*', function (event) { 191 | var paths = watchPath(event,'src/', 'dist/') 192 | 193 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 194 | gutil.log('Dist ' + paths.distPath) 195 | 196 | gulp.src(paths.srcPath) 197 | .pipe(gulp.dest(paths.distDir)) 198 | }) 199 | }) 200 | 201 | gulp.task('copy', function () { 202 | gulp.src('src/fonts/**/*') 203 | .pipe(gulp.dest('dist/fonts/')) 204 | }) 205 | 206 | gulp.task('watchtemplates', function () { 207 | gulp.watch('src/templates/**/*', function (event) { 208 | var paths = watchPath(event, 'src/', 'dist/') 209 | 210 | gutil.log(gutil.colors.green(event.type) + ' ' + paths.srcPath) 211 | gutil.log('Dist ' + paths.distPath) 212 | 213 | var combined = combiner.obj([ 214 | gulp.src(paths.srcPath), 215 | handlebars({ 216 | // 3.0.1 217 | handlebars: require('handlebars') 218 | }), 219 | wrap('Handlebars.template(<%= contents %>)'), 220 | declare({ 221 | namespace: 'S.templates', 222 | noRedeclare: true 223 | }), 224 | gulp.dest(paths.distDir) 225 | ]) 226 | combined.on('error', handleError) 227 | }) 228 | }) 229 | 230 | gulp.task('templates', function () { 231 | gulp.src('src/templates/**/*') 232 | .pipe(handlebars({ 233 | // 3.0.1 234 | handlebars: require('handlebars') 235 | })) 236 | .pipe(wrap('Handlebars.template(<%= contents %>)')) 237 | .pipe(declare({ 238 | namespace: 'S.templates', 239 | noRedeclare: true 240 | })) 241 | .pipe(gulp.dest('dist/templates')) 242 | }) 243 | 244 | 245 | gulp.task('default', [ 246 | // build 247 | 'uglifyjs', 'minifycss', 'lesscss', 'sasscss', 'image', 'copy', 'templates', 248 | // watch 249 | 'watchjs', 'watchcss', 'watchless', 'watchsass', 'watchimage', 'watchcopy', 'watchtemplates' 250 | ] 251 | ) 252 | -------------------------------------------------------------------------------- /src/js/handlebars.runtime.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | 3 | handlebars v3.0.1 4 | 5 | Copyright (C) 2011-2014 by Yehuda Katz 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | 25 | @license 26 | */ 27 | !function(a,b){"function"==typeof define&&define.amd?define([],b):"object"==typeof exports?module.exports=b():a.Handlebars=b()}(this,function(){var a=function(){"use strict";function a(a){return i[a]}function b(a){for(var b=1;bc;c++)if(a[c]===b)return c;return-1}function d(b){if("string"!=typeof b){if(b&&b.toHTML)return b.toHTML();if(null==b)return"";if(!b)return b+"";b=""+b}return k.test(b)?b.replace(j,a):b}function e(a){return a||0===a?n(a)&&0===a.length?!0:!1:!0}function f(a,b){return a.path=b,a}function g(a,b){return(a?a+".":"")+b}var h={},i={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},j=/[&<>"'`]/g,k=/[&<>"'`]/;h.extend=b;var l=Object.prototype.toString;h.toString=l;var m=function(a){return"function"==typeof a};m(/x/)&&(m=function(a){return"function"==typeof a&&"[object Function]"===l.call(a)});var m;h.isFunction=m;var n=Array.isArray||function(a){return a&&"object"==typeof a?"[object Array]"===l.call(a):!1};return h.isArray=n,h.indexOf=c,h.escapeExpression=d,h.isEmpty=e,h.blockParams=f,h.appendContextPath=g,h}(),b=function(){"use strict";function a(a,b){var d,e,f=b&&b.loc;f&&(d=f.start.line,e=f.start.column,a+=" - "+d+":"+e);for(var g=Error.prototype.constructor.call(this,a),h=0;h0?(c.ids&&(c.ids=[c.name]),a.helpers.each(b,c)):d(this);if(c.data&&c.ids){var g=q(c.data);g.contextPath=f.appendContextPath(c.data.contextPath,c.name),c={data:g}}return e(b,c)}),a.registerHelper("each",function(a,b){function c(b,c,g){d&&(d.key=b,d.index=c,d.first=0===c,d.last=!!g,e&&(d.contextPath=e+b)),m+=h(a[b],{data:d,blockParams:f.blockParams([a[b],b],[e+b,null])})}if(!b)throw new g("Must pass iterator to #each");var d,e,h=b.fn,i=b.inverse,j=0,m="";if(b.data&&b.ids&&(e=f.appendContextPath(b.data.contextPath,b.ids[0])+"."),l(a)&&(a=a.call(this)),b.data&&(d=q(b.data)),a&&"object"==typeof a)if(k(a))for(var n=a.length;n>j;j++)c(j,j,j===a.length-1);else{var o;for(var p in a)a.hasOwnProperty(p)&&(o&&c(o,j-1),o=p,j++);o&&c(o,j-1,!0)}return 0===j&&(m=i(this)),m}),a.registerHelper("if",function(a,b){return l(a)&&(a=a.call(this)),!b.hash.includeZero&&!a||f.isEmpty(a)?b.inverse(this):b.fn(this)}),a.registerHelper("unless",function(b,c){return a.helpers["if"].call(this,b,{fn:c.inverse,inverse:c.fn,hash:c.hash})}),a.registerHelper("with",function(a,b){l(a)&&(a=a.call(this));var c=b.fn;if(f.isEmpty(a))return b.inverse(this);if(b.data&&b.ids){var d=q(b.data);d.contextPath=f.appendContextPath(b.data.contextPath,b.ids[0]),b={data:d}}return c(a,b)}),a.registerHelper("log",function(b,c){var d=c.data&&null!=c.data.level?parseInt(c.data.level,10):1;a.log(d,b)}),a.registerHelper("lookup",function(a,b){return a&&a[b]})}var e={},f=a,g=b,h="3.0.1";e.VERSION=h;var i=6;e.COMPILER_REVISION=i;var j={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1"};e.REVISION_CHANGES=j;var k=f.isArray,l=f.isFunction,m=f.toString,n="[object Object]";e.HandlebarsEnvironment=c,c.prototype={constructor:c,logger:o,log:p,registerHelper:function(a,b){if(m.call(a)===n){if(b)throw new g("Arg not supported with multiple helpers");f.extend(this.helpers,a)}else this.helpers[a]=b},unregisterHelper:function(a){delete this.helpers[a]},registerPartial:function(a,b){if(m.call(a)===n)f.extend(this.partials,a);else{if("undefined"==typeof b)throw new g("Attempting to register a partial as undefined");this.partials[a]=b}},unregisterPartial:function(a){delete this.partials[a]}};var o={methodMap:{0:"debug",1:"info",2:"warn",3:"error"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:1,log:function(a,b){if("undefined"!=typeof console&&o.level<=a){var c=o.methodMap[a];(console[c]||console.log).call(console,b)}}};e.logger=o;var p=o.log;e.log=p;var q=function(a){var b=f.extend({},a);return b._parent=a,b};return e.createFrame=q,e}(a,b),d=function(){"use strict";function a(a){this.string=a}var b;return a.prototype.toString=a.prototype.toHTML=function(){return""+this.string},b=a}(),e=function(a,b,c){"use strict";function d(a){var b=a&&a[0]||1,c=n;if(b!==c){if(c>b){var d=o[c],e=o[b];throw new m("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+d+") or downgrade your runtime to an older version ("+e+").")}throw new m("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+a[1]+").")}}function e(a,b){if(!b)throw new m("No environment passed to template");if(!a||!a.main)throw new m("Unknown template object: "+typeof a);b.VM.checkRevision(a.compiler);var c=function(c,d,e){e.hash&&(d=l.extend({},d,e.hash)),c=b.VM.resolvePartial.call(this,c,d,e);var f=b.VM.invokePartial.call(this,c,d,e);if(null==f&&b.compile&&(e.partials[e.name]=b.compile(c,a.compilerOptions,b),f=e.partials[e.name](d,e)),null!=f){if(e.indent){for(var g=f.split("\n"),h=0,i=g.length;i>h&&(g[h]||h+1!==i);h++)g[h]=e.indent+g[h];f=g.join("\n")}return f}throw new m("The partial "+e.name+" could not be compiled when running in runtime-only mode")},d={strict:function(a,b){if(!(b in a))throw new m('"'+b+'" not defined in '+a);return a[b]},lookup:function(a,b){for(var c=a.length,d=0;c>d;d++)if(a[d]&&null!=a[d][b])return a[d][b]},lambda:function(a,b){return"function"==typeof a?a.call(b):a},escapeExpression:l.escapeExpression,invokePartial:c,fn:function(b){return a[b]},programs:[],program:function(a,b,c,d,e){var g=this.programs[a],h=this.fn(a);return b||e||d||c?g=f(this,a,h,b,c,d,e):g||(g=this.programs[a]=f(this,a,h)),g},data:function(a,b){for(;a&&b--;)a=a._parent;return a},merge:function(a,b){var c=a||b;return a&&b&&a!==b&&(c=l.extend({},b,a)),c},noop:b.VM.noop,compilerInfo:a.compiler},e=function(b,c){c=c||{};var f=c.data;e._setup(c),!c.partial&&a.useData&&(f=j(b,f));var g,h=a.useBlockParams?[]:void 0;return a.useDepths&&(g=c.depths?[b].concat(c.depths):[b]),a.main.call(d,b,d.helpers,d.partials,f,h,g)};return e.isTop=!0,e._setup=function(c){c.partial?(d.helpers=c.helpers,d.partials=c.partials):(d.helpers=d.merge(c.helpers,b.helpers),a.usePartial&&(d.partials=d.merge(c.partials,b.partials)))},e._child=function(b,c,e,g){if(a.useBlockParams&&!e)throw new m("must pass block params");if(a.useDepths&&!g)throw new m("must pass parent depths");return f(d,b,a[b],c,0,e,g)},e}function f(a,b,c,d,e,f,g){var h=function(b,e){return e=e||{},c.call(a,b,a.helpers,a.partials,e.data||d,f&&[e.blockParams].concat(f),g&&[b].concat(g))};return h.program=b,h.depth=g?g.length:0,h.blockParams=e||0,h}function g(a,b,c){return a?a.call||c.name||(c.name=a,a=c.partials[a]):a=c.partials[c.name],a}function h(a,b,c){if(c.partial=!0,void 0===a)throw new m("The partial "+c.name+" could not be found");return a instanceof Function?a(b,c):void 0}function i(){return""}function j(a,b){return b&&"root"in b||(b=b?p(b):{},b.root=a),b}var k={},l=a,m=b,n=c.COMPILER_REVISION,o=c.REVISION_CHANGES,p=c.createFrame;return k.checkRevision=d,k.template=e,k.program=f,k.resolvePartial=g,k.invokePartial=h,k.noop=i,k}(a,b,c),f=function(a,b,c,d,e){"use strict";var f,g=a,h=b,i=c,j=d,k=e,l=function(){var a=new g.HandlebarsEnvironment;return j.extend(a,g),a.SafeString=h,a.Exception=i,a.Utils=j,a.escapeExpression=j.escapeExpression,a.VM=k,a.template=function(b){return k.template(b,a)},a},m=l();m.create=l;var n="undefined"!=typeof global?global:window,o=n.Handlebars;return m.noConflict=function(){n.Handlebars===m&&(n.Handlebars=o)},m["default"]=m,f=m}(c,d,b,a,e);return f}); -------------------------------------------------------------------------------- /dist/js/handlebars.runtime.min.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["handlebars.runtime.min.js"],"names":["a","b","define","amd","exports","module","Handlebars","this","i","arguments","length","c","Object","prototype","hasOwnProperty","call","d","toHTML","k","test","replace","j","e","n","f","path","g","h","&","<",">","\"","'","`","extend","l","toString","m","isFunction","Array","isArray","indexOf","escapeExpression","isEmpty","blockParams","appendContextPath","loc","start","line","column","Error","constructor","lineNumber","helpers","partials","registerHelper","name","inverse","fn","ids","each","data","q","contextPath","key","index","first","last","o","p","hash","includeZero","level","parseInt","log","VERSION","COMPILER_REVISION",1,2,3,4,5,6,"REVISION_CHANGES","HandlebarsEnvironment","logger","unregisterHelper","registerPartial","unregisterPartial","methodMap","DEBUG","INFO","WARN","ERROR","console","_parent","createFrame","string","main","VM","checkRevision","compiler","resolvePartial","invokePartial","compile","compilerOptions","indent","split","join","strict","lookup","lambda","programs","program","merge","noop","compilerInfo","_setup","partial","useData","useBlockParams","useDepths","depths","concat","isTop","usePartial","_child","depth","Function","root","template","SafeString","Exception","Utils","create","global","window","noConflict"],"mappings":"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","file":"handlebars.runtime.min.js","sourcesContent":["/*!\n\n handlebars v3.0.1\n\nCopyright (C) 2011-2014 by Yehuda Katz\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n@license\n*/\n!function(a,b){\"function\"==typeof define&&define.amd?define([],b):\"object\"==typeof exports?module.exports=b():a.Handlebars=b()}(this,function(){var a=function(){\"use strict\";function a(a){return i[a]}function b(a){for(var b=1;bc;c++)if(a[c]===b)return c;return-1}function d(b){if(\"string\"!=typeof b){if(b&&b.toHTML)return b.toHTML();if(null==b)return\"\";if(!b)return b+\"\";b=\"\"+b}return k.test(b)?b.replace(j,a):b}function e(a){return a||0===a?n(a)&&0===a.length?!0:!1:!0}function f(a,b){return a.path=b,a}function g(a,b){return(a?a+\".\":\"\")+b}var h={},i={\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\",\"`\":\"`\"},j=/[&<>\"'`]/g,k=/[&<>\"'`]/;h.extend=b;var l=Object.prototype.toString;h.toString=l;var m=function(a){return\"function\"==typeof a};m(/x/)&&(m=function(a){return\"function\"==typeof a&&\"[object Function]\"===l.call(a)});var m;h.isFunction=m;var n=Array.isArray||function(a){return a&&\"object\"==typeof a?\"[object Array]\"===l.call(a):!1};return h.isArray=n,h.indexOf=c,h.escapeExpression=d,h.isEmpty=e,h.blockParams=f,h.appendContextPath=g,h}(),b=function(){\"use strict\";function a(a,b){var d,e,f=b&&b.loc;f&&(d=f.start.line,e=f.start.column,a+=\" - \"+d+\":\"+e);for(var g=Error.prototype.constructor.call(this,a),h=0;h0?(c.ids&&(c.ids=[c.name]),a.helpers.each(b,c)):d(this);if(c.data&&c.ids){var g=q(c.data);g.contextPath=f.appendContextPath(c.data.contextPath,c.name),c={data:g}}return e(b,c)}),a.registerHelper(\"each\",function(a,b){function c(b,c,g){d&&(d.key=b,d.index=c,d.first=0===c,d.last=!!g,e&&(d.contextPath=e+b)),m+=h(a[b],{data:d,blockParams:f.blockParams([a[b],b],[e+b,null])})}if(!b)throw new g(\"Must pass iterator to #each\");var d,e,h=b.fn,i=b.inverse,j=0,m=\"\";if(b.data&&b.ids&&(e=f.appendContextPath(b.data.contextPath,b.ids[0])+\".\"),l(a)&&(a=a.call(this)),b.data&&(d=q(b.data)),a&&\"object\"==typeof a)if(k(a))for(var n=a.length;n>j;j++)c(j,j,j===a.length-1);else{var o;for(var p in a)a.hasOwnProperty(p)&&(o&&c(o,j-1),o=p,j++);o&&c(o,j-1,!0)}return 0===j&&(m=i(this)),m}),a.registerHelper(\"if\",function(a,b){return l(a)&&(a=a.call(this)),!b.hash.includeZero&&!a||f.isEmpty(a)?b.inverse(this):b.fn(this)}),a.registerHelper(\"unless\",function(b,c){return a.helpers[\"if\"].call(this,b,{fn:c.inverse,inverse:c.fn,hash:c.hash})}),a.registerHelper(\"with\",function(a,b){l(a)&&(a=a.call(this));var c=b.fn;if(f.isEmpty(a))return b.inverse(this);if(b.data&&b.ids){var d=q(b.data);d.contextPath=f.appendContextPath(b.data.contextPath,b.ids[0]),b={data:d}}return c(a,b)}),a.registerHelper(\"log\",function(b,c){var d=c.data&&null!=c.data.level?parseInt(c.data.level,10):1;a.log(d,b)}),a.registerHelper(\"lookup\",function(a,b){return a&&a[b]})}var e={},f=a,g=b,h=\"3.0.1\";e.VERSION=h;var i=6;e.COMPILER_REVISION=i;var j={1:\"<= 1.0.rc.2\",2:\"== 1.0.0-rc.3\",3:\"== 1.0.0-rc.4\",4:\"== 1.x.x\",5:\"== 2.0.0-alpha.x\",6:\">= 2.0.0-beta.1\"};e.REVISION_CHANGES=j;var k=f.isArray,l=f.isFunction,m=f.toString,n=\"[object Object]\";e.HandlebarsEnvironment=c,c.prototype={constructor:c,logger:o,log:p,registerHelper:function(a,b){if(m.call(a)===n){if(b)throw new g(\"Arg not supported with multiple helpers\");f.extend(this.helpers,a)}else this.helpers[a]=b},unregisterHelper:function(a){delete this.helpers[a]},registerPartial:function(a,b){if(m.call(a)===n)f.extend(this.partials,a);else{if(\"undefined\"==typeof b)throw new g(\"Attempting to register a partial as undefined\");this.partials[a]=b}},unregisterPartial:function(a){delete this.partials[a]}};var o={methodMap:{0:\"debug\",1:\"info\",2:\"warn\",3:\"error\"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:1,log:function(a,b){if(\"undefined\"!=typeof console&&o.level<=a){var c=o.methodMap[a];(console[c]||console.log).call(console,b)}}};e.logger=o;var p=o.log;e.log=p;var q=function(a){var b=f.extend({},a);return b._parent=a,b};return e.createFrame=q,e}(a,b),d=function(){\"use strict\";function a(a){this.string=a}var b;return a.prototype.toString=a.prototype.toHTML=function(){return\"\"+this.string},b=a}(),e=function(a,b,c){\"use strict\";function d(a){var b=a&&a[0]||1,c=n;if(b!==c){if(c>b){var d=o[c],e=o[b];throw new m(\"Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version (\"+d+\") or downgrade your runtime to an older version (\"+e+\").\")}throw new m(\"Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version (\"+a[1]+\").\")}}function e(a,b){if(!b)throw new m(\"No environment passed to template\");if(!a||!a.main)throw new m(\"Unknown template object: \"+typeof a);b.VM.checkRevision(a.compiler);var c=function(c,d,e){e.hash&&(d=l.extend({},d,e.hash)),c=b.VM.resolvePartial.call(this,c,d,e);var f=b.VM.invokePartial.call(this,c,d,e);if(null==f&&b.compile&&(e.partials[e.name]=b.compile(c,a.compilerOptions,b),f=e.partials[e.name](d,e)),null!=f){if(e.indent){for(var g=f.split(\"\\n\"),h=0,i=g.length;i>h&&(g[h]||h+1!==i);h++)g[h]=e.indent+g[h];f=g.join(\"\\n\")}return f}throw new m(\"The partial \"+e.name+\" could not be compiled when running in runtime-only mode\")},d={strict:function(a,b){if(!(b in a))throw new m('\"'+b+'\" not defined in '+a);return a[b]},lookup:function(a,b){for(var c=a.length,d=0;c>d;d++)if(a[d]&&null!=a[d][b])return a[d][b]},lambda:function(a,b){return\"function\"==typeof a?a.call(b):a},escapeExpression:l.escapeExpression,invokePartial:c,fn:function(b){return a[b]},programs:[],program:function(a,b,c,d,e){var g=this.programs[a],h=this.fn(a);return b||e||d||c?g=f(this,a,h,b,c,d,e):g||(g=this.programs[a]=f(this,a,h)),g},data:function(a,b){for(;a&&b--;)a=a._parent;return a},merge:function(a,b){var c=a||b;return a&&b&&a!==b&&(c=l.extend({},b,a)),c},noop:b.VM.noop,compilerInfo:a.compiler},e=function(b,c){c=c||{};var f=c.data;e._setup(c),!c.partial&&a.useData&&(f=j(b,f));var g,h=a.useBlockParams?[]:void 0;return a.useDepths&&(g=c.depths?[b].concat(c.depths):[b]),a.main.call(d,b,d.helpers,d.partials,f,h,g)};return e.isTop=!0,e._setup=function(c){c.partial?(d.helpers=c.helpers,d.partials=c.partials):(d.helpers=d.merge(c.helpers,b.helpers),a.usePartial&&(d.partials=d.merge(c.partials,b.partials)))},e._child=function(b,c,e,g){if(a.useBlockParams&&!e)throw new m(\"must pass block params\");if(a.useDepths&&!g)throw new m(\"must pass parent depths\");return f(d,b,a[b],c,0,e,g)},e}function f(a,b,c,d,e,f,g){var h=function(b,e){return e=e||{},c.call(a,b,a.helpers,a.partials,e.data||d,f&&[e.blockParams].concat(f),g&&[b].concat(g))};return h.program=b,h.depth=g?g.length:0,h.blockParams=e||0,h}function g(a,b,c){return a?a.call||c.name||(c.name=a,a=c.partials[a]):a=c.partials[c.name],a}function h(a,b,c){if(c.partial=!0,void 0===a)throw new m(\"The partial \"+c.name+\" could not be found\");return a instanceof Function?a(b,c):void 0}function i(){return\"\"}function j(a,b){return b&&\"root\"in b||(b=b?p(b):{},b.root=a),b}var k={},l=a,m=b,n=c.COMPILER_REVISION,o=c.REVISION_CHANGES,p=c.createFrame;return k.checkRevision=d,k.template=e,k.program=f,k.resolvePartial=g,k.invokePartial=h,k.noop=i,k}(a,b,c),f=function(a,b,c,d,e){\"use strict\";var f,g=a,h=b,i=c,j=d,k=e,l=function(){var a=new g.HandlebarsEnvironment;return j.extend(a,g),a.SafeString=h,a.Exception=i,a.Utils=j,a.escapeExpression=j.escapeExpression,a.VM=k,a.template=function(b){return k.template(b,a)},a},m=l();m.create=l;var n=\"undefined\"!=typeof global?global:window,o=n.Handlebars;return m.noConflict=function(){n.Handlebars===m&&(n.Handlebars=o)},m[\"default\"]=m,f=m}(c,d,b,a,e);return f});"],"sourceRoot":"/source/"} --------------------------------------------------------------------------------