The requested URL /1.0.5/angular-mocks.min.js was not found on this server.
7 |
8 |
--------------------------------------------------------------------------------
/app/components/angular-mocks/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-mocks",
3 | "version": "1.0.6",
4 | "main": "./angular-mocks.js",
5 | "dependencies": {
6 | "angular": "1.0.6"
7 | },
8 | "gitHead": "16a3023f706e672f537fa9f98d4b7f2ea8516a7c",
9 | "readme": "bower-angular-mocks\n===================\n\nangular-mocks.js bower repo",
10 | "readmeFilename": "README.md",
11 | "_id": "angular-mocks@1.0.6",
12 | "description": "bower-angular-mocks ===================",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/angular/bower-angular-mocks.git"
16 | }
17 | }
--------------------------------------------------------------------------------
/app/components/angular-momentum-scroll/README.md:
--------------------------------------------------------------------------------
1 | # angular-momentum-scroll
2 |
3 | AngularJS directive that adds momentum scroll via iScroll (http://cubiq.org/iscroll-4).
4 |
5 | ## Usage
6 |
7 | * Include `scrollable.js` or `scrollable.min.js` into your page
8 | * Declare `'angular-momentum-scroll'` as a dependency for your angular app: `angular.module('myApp', ['angular-momentum-scroll']);`
9 | * Add the `scrollable` attribute to a container of your choice:
10 | * the container MUST have set width and height !!
11 | * in order to scroll horizontally the .scroller class inside of your container MUST have set width and height !!
12 | * The container takes an additional attribute `parameters` according to iScroll docs. e.g.
13 |
--------------------------------------------------------------------------------
/app/components/angular-momentum-scroll/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "author": {
3 | "name": "Patrick Bartsch"
4 | },
5 | "name": "angular-momentum-scroll",
6 | "description": "Momentum scroll for AngularJS based on iScroll.",
7 | "version": "0.1.1",
8 | "main": "scrollable.min.js",
9 | "scripts": [
10 | "scrollable.min.js"
11 | ],
12 | "homepage": "http://github.com/wzr1337/angular-momentum-scroll",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/wzr1337/bower-angular-momentum-scroll.git"
16 | },
17 | "dependencies": {
18 | "angular": "1.0.6",
19 | "iscroll": ""
20 | },
21 | "gitHead": "e9e65ceca67f732d664c270b71345127f57fb327",
22 | "readme": "# angular-momentum-scroll\n\nAngularJS directive that adds momentum scroll via iScroll (http://cubiq.org/iscroll-4).\n\n## Usage\n\n* Include `scrollable.js` or `scrollable.min.js` into your page\n* Declare `'angular-momentum-scroll'` as a dependency for your angular app: `angular.module('myApp', ['angular-momentum-scroll']);`\n* Add the `scrollable` attribute to a container of your choice:\n * the container MUST have set width and height !!\n * in order to scroll horizontally the .scroller class inside of your container MUST have set width and height !!\n* The container takes an additional attribute `parameters` according to iScroll docs. e.g.
\n",
23 | "readmeFilename": "README.md",
24 | "_id": "angular-momentum-scroll@0.1.1"
25 | }
--------------------------------------------------------------------------------
/app/components/angular-resource/README.md:
--------------------------------------------------------------------------------
1 | bower-angular-resource
2 | ======================
3 |
4 | angular-resource bower repo
--------------------------------------------------------------------------------
/app/components/angular-resource/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-resource",
3 | "version": "1.0.6",
4 | "main": "./angular-resource.js",
5 | "dependencies": {
6 | "angular": "1.0.6"
7 | },
8 | "gitHead": "ac0f457bfda419325bd5a585bcb16195696dfe3a",
9 | "readme": "bower-angular-resource\n======================\n\nangular-resource bower repo",
10 | "readmeFilename": "README.md",
11 | "_id": "angular-resource@1.0.6",
12 | "description": "bower-angular-resource ======================",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/angular/bower-angular-resource.git"
16 | }
17 | }
--------------------------------------------------------------------------------
/app/components/angular-sanitize/README.md:
--------------------------------------------------------------------------------
1 | bower-angular-sanitize
2 | ======================
3 |
4 | angular-sanitize bower repo
--------------------------------------------------------------------------------
/app/components/angular-sanitize/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-sanitize",
3 | "version": "1.0.6",
4 | "main": "./angular-sanitize.js",
5 | "dependencies": {
6 | "angular": "1.0.6"
7 | },
8 | "gitHead": "44fa1f93ff18a826caf00c9a726aa20b330e9577",
9 | "readme": "bower-angular-sanitize\n======================\n\nangular-sanitize bower repo",
10 | "readmeFilename": "README.md",
11 | "_id": "angular-sanitize@1.0.6",
12 | "description": "bower-angular-sanitize ======================",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/angular/bower-angular-sanitize.git"
16 | }
17 | }
--------------------------------------------------------------------------------
/app/components/angular-scenario/README.md:
--------------------------------------------------------------------------------
1 | bower-angular-scenario
2 | ======================
3 |
4 | bower repo for angular-scenario.js
--------------------------------------------------------------------------------
/app/components/angular-scenario/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular-scenario",
3 | "version": "1.0.6",
4 | "main": "./angular-scenario.js",
5 | "dependencies": {
6 | "angular": "1.0.6"
7 | },
8 | "gitHead": "f5d1a66527ae3da81be11c802688f312ac1546fe",
9 | "readme": "bower-angular-scenario\n======================\n\nbower repo for angular-scenario.js",
10 | "readmeFilename": "README.md",
11 | "_id": "angular-scenario@1.0.6",
12 | "description": "bower-angular-scenario ======================",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/angular/bower-angular-scenario.git"
16 | }
17 | }
--------------------------------------------------------------------------------
/app/components/angular-scenario/jstd-scenario-adapter-config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Configuration for jstd scenario adapter
3 | */
4 | var jstdScenarioAdapter = {
5 | relativeUrlPrefix: '/build/docs/'
6 | };
7 |
--------------------------------------------------------------------------------
/app/components/es5-shim/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
3 |
--------------------------------------------------------------------------------
/app/components/es5-shim/CONTRIBUTORS.md:
--------------------------------------------------------------------------------
1 |
2 | - kriskowal Kris Kowal Copyright (C) 2009-2011 MIT License
3 | - tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal
4 | Project)
5 | - dantman Daniel Friesen Copyright (C) 2010 XXX TODO License or CLA
6 | - fschaefer Florian Schäfer Copyright (C) 2010 MIT License
7 | - Gozala Irakli Gozalishvili Copyright (C) 2010 MIT License
8 | - kitcambridge Kit Cambridge Copyright (C) 2011 MIT License
9 | - kossnocorp Sasha Koss XXX TODO License or CLA
10 | - bryanforbes Bryan Forbes XXX TODO License or CLA
11 | - killdream Quildreen Motta Copyright (C) 2011 MIT Licence
12 | - michaelficarra Michael Ficarra Copyright (C) 2011 3-clause BSD
13 | License
14 | - sharkbrainguy Gerard Paapu Copyright (C) 2011 MIT License
15 | - bbqsrc Brendan Molloy (C) 2011 Creative Commons Zero (public domain)
16 | - iwyg XXX TODO License or CLA
17 | - DomenicDenicola Domenic Denicola Copyright (C) 2011 MIT License
18 | - xavierm02 Montillet Xavier Copyright (C) 2011 MIT License
19 | - Raynos Jake Verbaten Copyright (C) 2011 MIT Licence
20 | - samsonjs Sami Samhuri Copyright (C) 2010 MIT License
21 | - rwldrn Rick Waldron Copyright (C) 2011 MIT License
22 | - lexer Alexey Zakharov XXX TODO License or CLA
23 | - 280 North Inc. (Now Motorola LLC, a subsidiary of Google Inc.)
24 | Copyright (C) 2009 MIT License
25 |
26 |
--------------------------------------------------------------------------------
/app/components/es5-shim/LICENSE:
--------------------------------------------------------------------------------
1 |
2 | Copyright 2009, 2010 Kristopher Michael Kowal. All rights reserved.
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to
5 | deal in the Software without restriction, including without limitation the
6 | rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7 | sell copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19 | IN THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/app/components/es5-shim/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "es5-shim",
3 | "version": "2.0.9",
4 | "repository": {
5 | "type": "git",
6 | "url": "git://github.com/kriskowal/es5-shim"
7 | }
8 | }
--------------------------------------------------------------------------------
/app/components/es5-shim/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "es5-shim",
3 | "version": "2.0.9",
4 | "description": "ES5 as implementable on previous engines",
5 | "homepage": "http://github.com/kriskowal/es5-shim/",
6 | "contributors": [
7 | "Kris Kowal (http://github.com/kriskowal/)",
8 | "Sami Samhuri (http://samhuri.net/)",
9 | "Florian Schäfer (http://github.com/fschaefer)",
10 | "Irakli Gozalishvili (http://jeditoolkit.com)",
11 | "Kit Cambridge (http://kitcambridge.github.com)"
12 | ],
13 | "bugs": {
14 | "mail": "kris@cixar.com",
15 | "url": "http://github.com/kriskowal/es5-shim/issues"
16 | },
17 | "licenses": [
18 | {
19 | "type": "MIT",
20 | "url": "http://github.com/kriskowal/es5-shim/raw/master/LICENSE"
21 | }
22 | ],
23 | "main": "es5-shim.js",
24 | "repository": {
25 | "type": "git",
26 | "url": "http://github.com/kriskowal/es5-shim.git"
27 | },
28 | "scripts": {
29 | "minify": "uglifyjs es5-shim.js --source-map=es5-shim.map -b ascii_only=true,beautify=false > es5-shim.min.js; uglifyjs es5-sham.js --source-map=es5-sham.map -b ascii_only=true,beautify=false > es5-sham.min.js"
30 | },
31 | "engines": {
32 | "node": ">=0.2.0"
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/helpers/h-kill.js:
--------------------------------------------------------------------------------
1 | // This methods allows the killing of built-in functions,
2 | // so the shim can take over with that implementation
3 | var HLP = (function() {
4 | "use strict";
5 | var kill;
6 |
7 | kill = function(_class, methods) {
8 | /*if(!Array.isArray(methods))
9 | return;*/
10 | if(!_class.originals)
11 | _class.originals = {};
12 |
13 | for (var i = 0, len = methods.length; i < len; i++) {
14 | var obj = methods[i];
15 | _class.originals[obj] = _class[obj];
16 | delete _class[obj];
17 | if (obj in _class) {
18 | // try something more aggressive since V8 at least
19 | // appears to ignore the delete.
20 | _class[obj] = null;
21 | if (_class[obj]) {
22 | console.log("Couln't overwrite", obj, "of", _class);
23 | }
24 | }
25 | }
26 | };
27 | return { kill: kill };
28 | }());
29 |
30 | HLP.kill(Function.prototype, [
31 | 'bind'
32 | ]);
33 |
34 | HLP.kill(Array, [
35 | 'isArray'
36 | ]);
37 |
38 | HLP.kill(String.prototype, [
39 | "trim"
40 | ]);
41 |
42 | HLP.kill(Object, [
43 | 'keys'
44 | ]);
45 |
46 | HLP.kill(Number.prototype, [
47 | 'toFixed'
48 | ]);
49 |
50 | HLP.kill(Date, [
51 | 'now', 'parse'
52 | ]);
53 |
54 | HLP.kill(Date.prototype, [
55 | "toJSON", "toISOString"
56 | ]);
57 |
58 | HLP.kill(Array.prototype, [
59 | 'forEach', 'some', 'every',
60 | 'indexOf', 'lastIndexOf',
61 | 'map', 'filter',
62 | 'reduce', 'reduceRight'
63 | ]);
64 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/helpers/h-matchers.js:
--------------------------------------------------------------------------------
1 | beforeEach(function() {
2 | this.addMatchers({
3 | toExactlyMatch: function(expected) {
4 | var a1, a2,
5 | l, i,
6 | key,
7 | actual = this.actual;
8 |
9 | var getKeys = function(o) {
10 | var a = [];
11 | for(key in o) {
12 | if(o.hasOwnProperty(key)) {
13 | a.push(key);
14 | }
15 | }
16 | return a;
17 | }
18 | a1 = getKeys(actual);
19 | a2 = getKeys(expected);
20 |
21 | l = a1.length;
22 | if(l !== a2.length) {
23 | return false;
24 | }
25 | for(i = 0; i < l; i++) {
26 | key = a1[i];
27 | expect(key).toEqual(a2[i]);
28 | expect(actual[key]).toEqual(expected[key]);
29 | }
30 |
31 | return true;
32 | }
33 | })
34 | });
35 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/helpers/h.js:
--------------------------------------------------------------------------------
1 | function implement() {
2 | throw 'Not implemented';
3 | }
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Jasmine Spec Runner
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/index.min.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Jasmine Spec Runner
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/lib/jasmine_favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/es5-shim/tests/lib/jasmine_favicon.png
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/spec/s-number.js:
--------------------------------------------------------------------------------
1 | describe('Number', function () {
2 | 'use strict';
3 |
4 | describe('toFixed', function () {
5 | it('should convert numbers correctly', function () {
6 | expect((0.00008).toFixed(3)).toBe('0.000');
7 | expect((0.9).toFixed(0)).toBe('1');
8 | expect((1.255).toFixed(2)).toBe('1.25');
9 | expect((1843654265.0774949).toFixed(5)).toBe('1843654265.07749');
10 | expect((1000000000000000128).toFixed(0)).toBe('1000000000000000128');
11 | });
12 | });
13 |
14 | });
15 |
--------------------------------------------------------------------------------
/app/components/es5-shim/tests/spec/s-string.js:
--------------------------------------------------------------------------------
1 | describe('String', function() {
2 | "use strict";
3 | describe("trim", function() {
4 | var test = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFFHello, World!\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF";
5 |
6 | it('trims all ES5 whitespace', function() {
7 | expect(test.trim()).toEqual("Hello, World!");
8 | expect(test.trim().length).toEqual(13);
9 | });
10 | });
11 |
12 | describe("split", function() {
13 | var test = "ab";
14 |
15 | it('If "separator" is undefined must return Array with one String - "this" string', function() {
16 | expect(test.split()).toEqual([test]);
17 | expect(test.split(void 0)).toEqual([test]);
18 | });
19 |
20 | it('If "separator" is undefined and "limit" set to 0 must return Array[]', function() {
21 | expect(test.split(void 0, 0)).toEqual([]);
22 | });
23 | });
24 | });
25 |
--------------------------------------------------------------------------------
/app/components/iscroll/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | dist/*.js
3 | node_modules
--------------------------------------------------------------------------------
/app/components/iscroll/README.md:
--------------------------------------------------------------------------------
1 | iScroll v4.2.5 - 2012-10-26
2 | ===========================
3 |
4 | The overflow:scroll for mobile webkit. Project started because webkit for iPhone does not provide a native way to scroll content inside a fixed size (width/height) div. So basically it was impossible to have a fixed header/footer and a scrolling central area. Until now. Read more at [cubiq.org](http://cubiq.org).
5 |
6 | ## Ender support
7 | Using [Ender](http://ender.no.de), add it to your existing build
8 |
9 | $ ender add iscroll
10 |
11 | Use it like this:
12 |
13 | ``` js
14 | var myScroll = $('#doc').iScroll(options)
15 | ```
16 |
17 | ## Credits and Special thanks
18 | iScroll is evolving thank to the help of all those who sent suggestions, bug reports and ideas on [github](https://github.com/cubiq/iscroll), my [blog](http://cubiq.org) and [googlecode](http://code.google.com/p/iscroll-js/). This is by no means the work of a sole man.
19 |
20 | In completely random order:
21 |
22 | - All Github [contributors](https://github.com/cubiq/iscroll/contributors)
23 | - [beedesk](http://beedesk.com) for bug squashing in the pull to refresh feature
24 | - [Daniel J. Pinter](http://twitter.com/#!/HeadDZombie) for continued support, bug reports and for killing zombies
25 | - [Aseem Kishore](http://about.me/aseemk) for help with the zoom functionality
26 | - [Alex Gibson](http://miniapps.co.uk/) for continued support and bug reports
27 | - [Christoph Pojer](http://cpojer.net) for ideas, suggestions and bug reports
28 | - [Shimon Dookdin](https://github.com/shimondoodkin) for help with wheel support
29 | - [Will Bailey](http://blog.thirtymontgomery.com/) for commonJS compatibility
30 | - [Aaron Reisman](https://github.com/lifeiscontent) for bug reports and continued support
31 | - [David Haslem](https://github.com/therabidbanana) for suggestions and bug reports
32 | - [gingertom](https://github.com/gingertom) for suggestions and bug reports
33 | - [David Alan Hjelle](https://github.com/dahjelle) for bug squashing
34 | - [iangilman](https://github.com/iangilman) for help with the zoom functionality
35 | - All those who supported, linked, loved the iScroll
36 | - I'm sure I'm missing someone, sorry about that. If you helped in the script development and you don't see your name here, please drop me a line
37 |
--------------------------------------------------------------------------------
/app/components/iscroll/bin/make-dist:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | java -jar /usr/local/bin/yuicompressor-2.4.6.jar -v --charset utf-8 ../src/iscroll.js -o ../dist/iscroll-min.js
4 | java -jar /usr/local/bin/yuicompressor-2.4.6.jar -v --charset utf-8 ../src/iscroll-lite.js -o ../dist/iscroll-lite-min.js
5 |
--------------------------------------------------------------------------------
/app/components/iscroll/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "iscroll",
3 | "version": "0.0.0",
4 | "commit": "d1e642c1d6751877ca0b2b13faf6c2bd512bf473",
5 | "repository": {
6 | "type": "git",
7 | "url": "git://github.com/cubiq/iscroll.git"
8 | }
9 | }
--------------------------------------------------------------------------------
/app/components/iscroll/examples/custom-scrollbar/scrollbar.css:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | *
4 | * Horizontal Scrollbar
5 | *
6 | */
7 | .myScrollbarH {
8 | position:absolute;
9 | z-index:100;
10 | height:8px;
11 | bottom:1px;
12 | left:2px;
13 | right:7px
14 | }
15 |
16 | .myScrollbarH > div {
17 | position:absolute;
18 | z-index:100;
19 | height:100%;
20 |
21 | /* The following is probably what you want to customize */
22 | background-image:-webkit-gradient(linear, 0 0, 100% 0, from(#a00), to(#f00));
23 | background-image:-moz-linear-gradient(top, #f00, #900);
24 | background-image:-o-linear-gradient(top, #f00, #900);
25 |
26 | border:1px solid #900;
27 | -webkit-background-clip:padding-box;
28 | -moz-background-clip:padding-box;
29 | -o-background-clip:padding-box;
30 | background-clip:padding-box;
31 |
32 | -webkit-box-sizing:border-box;
33 | -moz-box-sizing:border-box;
34 | -o-box-sizing:border-box;
35 | box-sizing:border-box;
36 |
37 | -webkit-border-radius:4px;
38 | -moz-border-radius:4px;
39 | -o-border-radius:4px;
40 | border-radius:4px;
41 |
42 | -webkit-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
43 | -moz-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
44 | -o-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
45 | box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
46 | }
47 |
48 |
49 | /**
50 | *
51 | * Vertical Scrollbar
52 | *
53 | */
54 | .myScrollbarV {
55 | position:absolute;
56 | z-index:100;
57 | width:8px;bottom:7px;top:2px;right:1px
58 | }
59 |
60 | .myScrollbarV > div {
61 | position:absolute;
62 | z-index:100;
63 | width:100%;
64 |
65 | /* The following is probably what you want to customize */
66 | background:-webkit-gradient(linear, 0 0, 100% 0, from(#f00), to(#900));
67 | background-image:-moz-linear-gradient(top, #f00, #900);
68 | background-image:-o-linear-gradient(top, #f00, #900);
69 |
70 | border:1px solid #900;
71 |
72 | -webkit-background-clip:padding-box;
73 | -moz-background-clip:padding-box;
74 | -o-background-clip:padding-box;
75 | background-clip:padding-box;
76 |
77 | -webkit-box-sizing:border-box;
78 | -moz-box-sizing:border-box;
79 | -o-box-sizing:border-box;
80 | box-sizing:border-box;
81 |
82 | -webkit-border-radius:4px;
83 | -moz-border-radius:4px;
84 | -o-border-radius:4px;
85 | border-radius:4px;
86 |
87 | -webkit-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
88 | -moz-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
89 | -o-box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
90 | box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
91 | }
92 |
--------------------------------------------------------------------------------
/app/components/iscroll/examples/ios-perfect-scrollbar/scrollbar.css:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Horizontal Scrollbar
4 | *
5 | */
6 | .myScrollbarH {
7 | position:absolute;
8 | z-index:100;
9 | height:7px;
10 | bottom:1px;
11 | left:2px;
12 | right:7px
13 | }
14 |
15 | .myScrollbarH > div {
16 | height:100%;
17 | }
18 |
19 |
20 | /**
21 | *
22 | * Vertical Scrollbar
23 | *
24 | */
25 | .myScrollbarV {
26 | position:absolute;
27 | z-index:100;
28 | width:7px;bottom:7px;top:2px;right:1px
29 | }
30 |
31 | .myScrollbarV > div {
32 | width:100%;
33 | }
34 |
35 |
36 | /**
37 | *
38 | * Both Scrollbars
39 | *
40 | */
41 | .myScrollbarH > div,
42 | .myScrollbarV > div {
43 | position:absolute;
44 | z-index:100;
45 |
46 | /* The following is probably what you want to customize */
47 | -webkit-box-sizing:border-box;
48 | -moz-box-sizing:border-box;
49 | -o-box-sizing:border-box;
50 | box-sizing:border-box;
51 |
52 | border-width:3px;
53 | -webkit-border-image:url(scrollbar.png) 6 6 6 6;
54 | -moz-border-image:url(scrollbar.png) 6 6 6 6;
55 | -o-border-image:url(scrollbar.png) 6 6 6 6;
56 | border-image:url(scrollbar.png) 6 6 6 6;
57 | }
58 |
--------------------------------------------------------------------------------
/app/components/iscroll/examples/ios-perfect-scrollbar/scrollbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/iscroll/examples/ios-perfect-scrollbar/scrollbar.png
--------------------------------------------------------------------------------
/app/components/iscroll/examples/pull-to-refresh/pull-icon@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/iscroll/examples/pull-to-refresh/pull-icon@2x.png
--------------------------------------------------------------------------------
/app/components/iscroll/examples/zoom/iscroll.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/iscroll/examples/zoom/iscroll.jpg
--------------------------------------------------------------------------------
/app/components/iscroll/license.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2012 Matteo Spinelli, http://cubiq.org/
2 |
3 | Permission is hereby granted, free of charge, to any person
4 | obtaining a copy of this software and associated documentation
5 | files (the "Software"), to deal in the Software without
6 | restriction, including without limitation the rights to use,
7 | copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the
9 | Software is furnished to do so, subject to the following
10 | conditions:
11 |
12 | The above copyright notice and this permission notice shall be
13 | included in all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 | OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
/app/components/iscroll/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "iscroll"
3 | , "description": "smooth scrolling for mobile webkit"
4 | , "version": "4.2.5"
5 | , "homepage": "http://cubiq.org/iscroll-4"
6 | , "author": "Matteo Spinelli (http://cubiq.org)"
7 | , "keywords": ["ender", "iscroll", "scrolling", "webkit", "iphone", "android"]
8 | , "main": "./src/iscroll.js"
9 | , "ender": "./src/ender.js"
10 | , "repository": {
11 | "type": "git"
12 | , "url": "https://github.com/cubiq/iscroll.git"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/components/iscroll/src/ender.js:
--------------------------------------------------------------------------------
1 | !function ($, iScroll) {
2 | $.ender({
3 | iScroll: function (options) {
4 | return new iScroll(this[0], options)
5 | }
6 | }, true)
7 | }(ender, require('iscroll').iScroll)
--------------------------------------------------------------------------------
/app/components/jquery-masonry/.gitignore:
--------------------------------------------------------------------------------
1 | _site/
2 | notes.mdown
--------------------------------------------------------------------------------
/app/components/jquery-masonry/.tm_properties:
--------------------------------------------------------------------------------
1 | softTabs = true
2 | tabSize = 2
3 | excludeInFileChooser = "{$exclude,_site/*}"
4 |
--------------------------------------------------------------------------------
/app/components/jquery-masonry/CONTRIBUTING.mdown:
--------------------------------------------------------------------------------
1 | ## Submitting issues
2 |
3 | ### Read the Help page
4 |
5 | [The Help page in the docs](http://masonry.desandro.com/docs/help.html) covers most issues. Please look it over first before submitting an issue.
6 |
7 | ### Provide an isolated example with a live URL
8 |
9 | **A live URL is required** for any bug report or personal issue request. Try re-creating the issue in jsFiddle or CodePen using these templates:
10 |
11 | + [jsFiddle jQuery Masonry template](http://jsfiddle.net/desandro/7ZVb7/)
12 | + [CodePen jQuery Masonry template](http://codepen.io/desandro/pen/BLzoK)
13 |
14 | ### Look over the Issues Agreement
15 |
16 | I wrote an [Issues Agreement](https://github.com/desandro/issues-agreement/#readme) that covers how to submit a good issue.
17 |
--------------------------------------------------------------------------------
/app/components/jquery-masonry/README.mdown:
--------------------------------------------------------------------------------
1 | jQuery Masonry
2 | ==============
3 |
4 | Masonry is a dynamic grid layout plugin for jQuery. Think of it as the flip-side of CSS floats. Whereas floating arranges elements horizontally then vertically, Masonry arranges elements vertically, positioning each element in the next open spot in the grid. The result minimizes vertical gaps between elements of varying height, just like a mason fitting stones in a wall.
5 |
6 | This package has all the documentation and demos to get you started.
7 |
8 | View this project live at [http://masonry.desandro.com](http://masonry.desandro.com).
9 |
10 | ## Viewing this project locally
11 |
12 |
13 | ### Via download
14 |
15 | You can download a zip of all the flat HTML files from [http://meta.metafizzy.co/files/masonry-site.zip](http://meta.metafizzy.co/files/masonry-site.zip).
16 |
17 | ### Via Jekyll
18 |
19 | The documentation and demo pages are generated using [Jekyll](http://github.com/mojombo/jekyll/wiki). With Jekyll installed, you can clone this repo and run Jekyll from Terminal:
20 |
21 | git clone https://github.com/desandro/masonry.git
22 | cd masonry/
23 | jekyll --server --auto
24 |
25 | Then view the live site at [http://localhost:4000](http://localhost:4000).
26 |
27 | * * *
28 |
29 | Copyright (c) 2012 David DeSandro
--------------------------------------------------------------------------------
/app/components/jquery-masonry/_config.yml:
--------------------------------------------------------------------------------
1 | name: jQuery Masonry
2 | permalink: /:categories/:title.html
3 | pygments: true
4 | masonry_js: jquery.masonry.min.js
5 | jquery_js: js/jquery-1.7.1.min.js
6 | exclude: [ minify.sh, notes.mdown ]
--------------------------------------------------------------------------------
/app/components/jquery-masonry/_posts/tests/2011-01-01-index.html:
--------------------------------------------------------------------------------
1 | ---
2 | title: Tests
3 | category: tests
4 | layout: default
5 | is_index: true
6 | ---
7 |
8 |
9 | {% for test in site.categories.tests reversed %}
10 | {% unless test.is_index %}
11 |
When there's only a couple items, the container should shrink to fit the layout, and not leave any empty columns.
10 |
11 |
12 |
13 |
14 |
15 |
Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.
16 |
Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.
17 |
Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.
18 |
19 |
20 |
21 |
Ut condimentum mi vel tellus. Suspendisse laoreet. Fusce ut est sed dolor gravida convallis. Morbi vitae ante. Vivamus ultrices luctus nunc. Suspendisse et dolor. Etiam dignissim. Proin malesuada adipiscing lacus. Donec metus. Curabitur gravida.
22 |
Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.
23 |
24 |
25 |
26 |
Ut condimentum mi vel tellus. Suspendisse laoreet. Fusce ut est sed dolor gravida convallis. Morbi vitae ante. Vivamus ultrices luctus nunc. Suspendisse et dolor. Etiam dignissim. Proin malesuada adipiscing lacus. Donec metus. Curabitur gravida.
27 |
Phasellus pede arcu, dapibus eu, fermentum et, dapibus sed, urna.
28 |
29 |
30 |
31 |
Sed ac risus. Phasellus lacinia, magna a ullamcorper laoreet, lectus arcu pulvinar risus, vitae facilisis libero dolor a purus. Sed vel lacus. Mauris nibh felis, adipiscing varius, adipiscing in, lacinia vel, tellus. Suspendisse ac urna. Etiam pellentesque mauris ut lectus. Nunc tellus ante, mattis eget, gravida vitae, ultricies ac, leo. Integer leo pede, ornare a, lacinia eu, vulputate vel, nisl.
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/app/components/jquery-masonry/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery-masonry",
3 | "version": "2.1.08",
4 | "description": "Layout elements in a grid, like a mason fitting stones in a wall",
5 | "main": "jquery.masonry.js",
6 | "dependencies": {
7 | "jquery": ">=1.5"
8 | },
9 | "gitHead": "7bd495ebd18f1c200c192beaf20d1fc1cd5b2fa9",
10 | "readme": "jQuery Masonry\n==============\n\nMasonry is a dynamic grid layout plugin for jQuery. Think of it as the flip-side of CSS floats. Whereas floating arranges elements horizontally then vertically, Masonry arranges elements vertically, positioning each element in the next open spot in the grid. The result minimizes vertical gaps between elements of varying height, just like a mason fitting stones in a wall.\n\nThis package has all the documentation and demos to get you started.\n\nView this project live at [http://masonry.desandro.com](http://masonry.desandro.com).\n\n## Viewing this project locally\n\n\n### Via download\n\nYou can download a zip of all the flat HTML files from [http://meta.metafizzy.co/files/masonry-site.zip](http://meta.metafizzy.co/files/masonry-site.zip).\n\n### Via Jekyll\n\nThe documentation and demo pages are generated using [Jekyll](http://github.com/mojombo/jekyll/wiki). With Jekyll installed, you can clone this repo and run Jekyll from Terminal:\n\n git clone https://github.com/desandro/masonry.git\n cd masonry/\n jekyll --server --auto\n\nThen view the live site at [http://localhost:4000](http://localhost:4000).\n\n* * *\n\nCopyright (c) 2012 David DeSandro",
11 | "readmeFilename": "README.mdown",
12 | "_id": "jquery-masonry@2.1.08",
13 | "repository": {
14 | "type": "git",
15 | "url": "git://github.com/desandro/masonry"
16 | }
17 | }
--------------------------------------------------------------------------------
/app/components/jquery-masonry/js/modernizr-transitions.js:
--------------------------------------------------------------------------------
1 | /* Modernizr custom build of 1.7: csstransitions */
2 | window.Modernizr=function(a,b,c){function G(){}function F(a,b){var c=a.charAt(0).toUpperCase()+a.substr(1),d=(a+" "+p.join(c+" ")+c).split(" ");return!!E(d,b)}function E(a,b){for(var d in a)if(k[a[d]]!==c&&(!b||b(a[d],j)))return!0}function D(a,b){return(""+a).indexOf(b)!==-1}function C(a,b){return typeof a===b}function B(a,b){return A(o.join(a+";")+(b||""))}function A(a){k.cssText=a}var d="1.7",e={},f=!0,g=b.documentElement,h=b.head||b.getElementsByTagName("head")[0],i="modernizr",j=b.createElement(i),k=j.style,l=b.createElement("input"),m=":)",n=Object.prototype.toString,o=" -webkit- -moz- -o- -ms- -khtml- ".split(" "),p="Webkit Moz O ms Khtml".split(" "),q={svg:"http://www.w3.org/2000/svg"},r={},s={},t={},u=[],v,w=function(a){var c=b.createElement("style"),d=b.createElement("div"),e;c.textContent=a+"{#modernizr{height:3px}}",h.appendChild(c),d.id="modernizr",g.appendChild(d),e=d.offsetHeight===3,c.parentNode.removeChild(c),d.parentNode.removeChild(d);return!!e},x=function(){function d(d,e){e=e||b.createElement(a[d]||"div");var f=(d="on"+d)in e;f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=C(e[d],"function"),C(e[d],c)||(e[d]=c),e.removeAttribute(d))),e=null;return f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),y=({}).hasOwnProperty,z;C(y,c)||C(y.call,c)?z=function(a,b){return b in a&&C(a.constructor.prototype[b],c)}:z=function(a,b){return y.call(a,b)},r.csstransitions=function(){return F("transitionProperty")};for(var H in r)z(r,H)&&(v=H.toLowerCase(),e[v]=r[H](),u.push((e[v]?"":"no-")+v));e.input||G(),e.crosswindowmessaging=e.postmessage,e.historymanagement=e.history,e.addTest=function(a,b){a=a.toLowerCase();if(!e[a]){b=!!b(),g.className+=" "+(b?"":"no-")+a,e[a]=b;return e}},A(""),j=l=null,e._enableHTML5=f,e._version=d,g.className=g.className.replace(/\bno-js\b/,"")+" js "+u.join(" ");return e}(this,this.document)
--------------------------------------------------------------------------------
/app/components/jquery-masonry/minify.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # minifies jquery.masonry.js
4 | # requires nodejs & uglifyjs
5 |
6 | IN=jquery.masonry.js
7 | OUT=jquery.masonry.min.js
8 |
9 | # remove any lines that begin with /*jshint or /*global
10 | # then, minify with Uglify JS
11 | # then, add newline characters after `*/`, but not last newline character
12 | awk '!/^\/\*[jshint|global]/' $IN \
13 | | uglifyjs \
14 | | awk '{ORS=""; gsub(/\*\//,"*/\n"); if (NR!=1) print "\n"; print;}' > $OUT
15 | echo "Minified" $IN "as" $OUT
16 |
17 |
--------------------------------------------------------------------------------
/app/components/jquery/.gitignore:
--------------------------------------------------------------------------------
1 | build
2 |
--------------------------------------------------------------------------------
/app/components/jquery/README.md:
--------------------------------------------------------------------------------
1 | jQuery Component
2 | ================
3 |
4 | Shim repository for the [jQuery](http://jquery.com).
5 |
6 | Package Managers
7 | ----------------
8 |
9 | * [Bower](http://twitter.github.com/bower/): `jquery`
10 | * [Component](https://github.com/component/component): `components/jquery`
11 | * [Composer](http://packagist.org/packages/components/jquery): `components/jquery`
12 |
--------------------------------------------------------------------------------
/app/components/jquery/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery",
3 | "version": "2.0.0",
4 | "description": "jQuery component",
5 | "keywords": [
6 | "jquery",
7 | "component"
8 | ],
9 | "main": "jquery.js",
10 | "scripts": [
11 | "jquery.js"
12 | ],
13 | "license": "MIT"
14 | }
15 |
--------------------------------------------------------------------------------
/app/components/jquery/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery",
3 | "version": "2.0.0",
4 | "description": "jQuery component",
5 | "keywords": [
6 | "jquery",
7 | "component"
8 | ],
9 | "main": "jquery.js",
10 | "scripts": [
11 | "jquery.js"
12 | ],
13 | "license": "MIT",
14 | "gitHead": "04d8a870773a9b3dce467db6e7662c888f9ff40b",
15 | "readme": "jQuery Component\n================\n\nShim repository for the [jQuery](http://jquery.com).\n\nPackage Managers\n----------------\n\n* [Bower](http://twitter.github.com/bower/): `jquery`\n* [Component](https://github.com/component/component): `components/jquery`\n* [Composer](http://packagist.org/packages/components/jquery): `components/jquery`\n",
16 | "readmeFilename": "README.md",
17 | "_id": "jquery@2.0.0",
18 | "repository": {
19 | "type": "git",
20 | "url": "git://github.com/components/jquery.git"
21 | }
22 | }
--------------------------------------------------------------------------------
/app/components/jquery/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "components/jquery",
3 | "description": "jQuery JavaScript Library",
4 | "type": "component",
5 | "homepage": "http://jquery.com",
6 | "license": "MIT",
7 | "support": {
8 | "irc": "irc://irc.freenode.org/jquery",
9 | "issues": "http://bugs.jquery.com",
10 | "forum": "http://forum.jquery.com",
11 | "wiki": "http://docs.jquery.com/",
12 | "source": "https://github.com/jquery/jquery"
13 | },
14 | "authors": [
15 | {
16 | "name": "John Resig",
17 | "email": "jeresig@gmail.com"
18 | }
19 | ],
20 | "require": {
21 | "robloach/component-installer": "*"
22 | },
23 | "extra": {
24 | "component": {
25 | "scripts": [
26 | "jquery.js"
27 | ],
28 | "files": [
29 | "jquery.min.js",
30 | "jquery-migrate.js",
31 | "jquery-migrate.min.js"
32 | ]
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/app/components/jquery/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "components-jquery",
3 | "version": "2.0.0",
4 | "description": "jQuery component",
5 | "keywords": ["jquery"],
6 | "main": "./jquery.js"
7 | }
8 |
--------------------------------------------------------------------------------
/app/components/json3/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "vendor/spec"]
2 | path = vendor/spec
3 | url = git://github.com/kitcambridge/spec.git
4 | [submodule "vendor/marked"]
5 | path = vendor/marked
6 | url = git://github.com/chjj/marked.git
7 |
--------------------------------------------------------------------------------
/app/components/json3/.npmignore:
--------------------------------------------------------------------------------
1 | build.js
2 | index.html
3 | jsl.conf
4 |
5 | page
6 | test
7 | vendor
--------------------------------------------------------------------------------
/app/components/json3/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2012 Kit Cambridge.
2 | http://kitcambridge.github.com
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy of
5 | this software and associated documentation files (the "Software"), to deal in
6 | the Software without restriction, including without limitation the rights to
7 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
8 | of the Software, and to permit persons to whom the Software is furnished to do
9 | so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all
12 | copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 | SOFTWARE.
--------------------------------------------------------------------------------
/app/components/json3/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "json3",
3 | "version": "3.2.4",
4 | "repository": {
5 | "type": "git",
6 | "url": "git://github.com/bestiejs/json3.git"
7 | }
8 | }
--------------------------------------------------------------------------------
/app/components/json3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "json3",
3 | "version": "3.2.4",
4 | "description": "A modern JSON implementation compatible with nearly all JavaScript platforms.",
5 | "homepage": "http://bestiejs.github.com/json3",
6 | "main": "./lib/json3",
7 | "keywords": ["json", "spec", "ecma", "es5", "lexer", "parser", "stringify"],
8 | "licenses": [{
9 | "type": "MIT",
10 | "url": "http://kit.mit-license.org/"
11 | }],
12 | "author": {
13 | "name": "Kit Cambridge",
14 | "web": "http://kitcambridge.github.com"
15 | },
16 | "maintainers": [{
17 | "name": "Kit Cambridge",
18 | "web": "http://kitcambridge.github.com"
19 | }],
20 | "bugs": {
21 | "url": "http://github.com/bestiejs/json3/issues"
22 | },
23 | "scripts": {
24 | "test": "node test/test_*.js"
25 | },
26 | "repository": {
27 | "type": "git",
28 | "url": "git://github.com/bestiejs/json3.git"
29 | }
30 | }
--------------------------------------------------------------------------------
/app/components/json3/page/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/json3/page/background.png
--------------------------------------------------------------------------------
/app/components/json3/page/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeffbcross/ngswipe-demo/0a4ff12fb14ffec1cc12d1b244921dc90c44151d/app/components/json3/page/logo.png
--------------------------------------------------------------------------------
/app/components/json3/page/page.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | JSON 3
6 |
7 |
8 |
9 |