├── .gitattributes ├── .gitignore ├── AlgorithmsLearn ├── JavaScript.html ├── Stark.html ├── arrAy.html ├── fillms.txt ├── indexOf.html ├── newArray.html └── scope.html ├── JqueryLearn ├── Jqdemo1.html ├── addclass.html ├── adddemo.html ├── ajaxdemo.html ├── animatedemo.html ├── cleardemo.html ├── datademo.1.html ├── datademo.html ├── delegatedemo.html ├── domdemo.html ├── dommin.html ├── getdomdemo.html ├── hoverdemo.html ├── indexdemo.html ├── jquery-1.11.3.js ├── mousedemo.html ├── parentdemo.html ├── remodemo.html ├── siblingsdemo.html ├── tabdemo.html ├── triggerdemo.html └── 插件demo.html ├── README.md ├── demo ├── jQuery 制作无缝轮播的焦点图 │ ├── 源码 │ │ ├── jQuery 制作无缝轮播的焦点图-v3.zip │ │ ├── 手写轮播 │ │ │ ├── img │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ └── 4.jpg │ │ │ ├── index.html │ │ │ └── js │ │ │ │ └── jquery-1.12.0.min.js │ │ └── 无缝轮播案例 (课堂源码) │ │ │ ├── B~]D5DGLOYA1~W%I~_0`CA8.png │ │ │ ├── JBDROFJ4J0FY~9_ODYSMBN4.png │ │ │ ├── images │ │ │ ├── 1.jpg │ │ │ ├── 2.jpg │ │ │ ├── 3.jpg │ │ │ └── 4.jpg │ │ │ ├── index.html │ │ │ └── js │ │ │ └── jquery-1.12.0.min.js │ └── 课件 │ │ ├── jQuery 制作无缝轮播的焦点图-v2.ppt │ │ └── jQuery 制作无缝轮播的焦点图-v3.pdf ├── js获取位置 │ ├── 1.html │ ├── 2.html │ ├── 3.html │ ├── 4.html │ ├── jquery-1.7.1.min.js │ └── jquery.js ├── 菜单下拉 │ ├── css │ │ ├── web1.css │ │ ├── web2.css │ │ └── web3.css │ ├── index.html │ ├── index2.html │ ├── index3.html │ ├── js │ │ ├── jquery-1.11.3.min.js │ │ ├── jquery.easing.1.3.js │ │ └── nav.js │ └── 菜单下拉.rar └── 首页导航条 │ ├── css │ └── webstyle.css │ ├── index.html │ ├── jia.html │ ├── jike.html │ ├── jiuye.html │ ├── js │ ├── jquery-1.11.3.min.js │ └── nav.js │ └── zhiye.html ├── jsplumb ├── g6.html └── jsplumb.html ├── lessLearn ├── koala-config.json ├── less1 │ ├── arr.jpg │ ├── img │ │ └── arr.jpg │ ├── index.html │ ├── less.min.js │ ├── less_demo.html │ ├── style.css │ └── style.less └── less2 │ ├── .idea │ ├── .name │ ├── jsLibraryMappings.xml │ ├── less2.iml │ ├── misc.xml │ ├── modules.xml │ ├── vcs.xml │ ├── watcherTasks.xml │ └── workspace.xml │ ├── index.html │ ├── style.css │ └── style.less ├── prototype-js-oop.html ├── test ├── .editorconfig ├── .gitignore ├── README.md ├── config.xml ├── ionic.config.json ├── ionic.starter.json ├── package-lock.json ├── package.json ├── resources │ ├── README.md │ ├── android │ │ ├── icon │ │ │ ├── drawable-hdpi-icon.png │ │ │ ├── drawable-ldpi-icon.png │ │ │ ├── drawable-mdpi-icon.png │ │ │ ├── drawable-xhdpi-icon.png │ │ │ ├── drawable-xxhdpi-icon.png │ │ │ └── drawable-xxxhdpi-icon.png │ │ └── splash │ │ │ ├── drawable-land-hdpi-screen.png │ │ │ ├── drawable-land-ldpi-screen.png │ │ │ ├── drawable-land-mdpi-screen.png │ │ │ ├── drawable-land-xhdpi-screen.png │ │ │ ├── drawable-land-xxhdpi-screen.png │ │ │ ├── drawable-land-xxxhdpi-screen.png │ │ │ ├── drawable-port-hdpi-screen.png │ │ │ ├── drawable-port-ldpi-screen.png │ │ │ ├── drawable-port-mdpi-screen.png │ │ │ ├── drawable-port-xhdpi-screen.png │ │ │ ├── drawable-port-xxhdpi-screen.png │ │ │ └── drawable-port-xxxhdpi-screen.png │ ├── icon.png │ ├── ios │ │ ├── icon │ │ │ ├── icon-1024.png │ │ │ ├── icon-40.png │ │ │ ├── icon-40@2x.png │ │ │ ├── icon-40@3x.png │ │ │ ├── icon-50.png │ │ │ ├── icon-50@2x.png │ │ │ ├── icon-60.png │ │ │ ├── icon-60@2x.png │ │ │ ├── icon-60@3x.png │ │ │ ├── icon-72.png │ │ │ ├── icon-72@2x.png │ │ │ ├── icon-76.png │ │ │ ├── icon-76@2x.png │ │ │ ├── icon-83.5@2x.png │ │ │ ├── icon-small.png │ │ │ ├── icon-small@2x.png │ │ │ ├── icon-small@3x.png │ │ │ ├── icon.png │ │ │ └── icon@2x.png │ │ └── splash │ │ │ ├── Default-568h@2x~iphone.png │ │ │ ├── Default-667h.png │ │ │ ├── Default-736h.png │ │ │ ├── Default-Landscape-736h.png │ │ │ ├── Default-Landscape@2x~ipad.png │ │ │ ├── Default-Landscape@~ipadpro.png │ │ │ ├── Default-Landscape~ipad.png │ │ │ ├── Default-Portrait@2x~ipad.png │ │ │ ├── Default-Portrait@~ipadpro.png │ │ │ ├── Default-Portrait~ipad.png │ │ │ ├── Default@2x~iphone.png │ │ │ ├── Default@2x~universal~anyany.png │ │ │ └── Default~iphone.png │ └── splash.png ├── src │ ├── app │ │ ├── app.component.ts │ │ ├── app.module.ts │ │ ├── app.scss │ │ └── main.ts │ ├── assets │ │ ├── i18n │ │ │ ├── ar.json │ │ │ ├── bs.json │ │ │ ├── by.json │ │ │ ├── da.json │ │ │ ├── de.json │ │ │ ├── el.json │ │ │ ├── en.json │ │ │ ├── es-eu.json │ │ │ ├── es.json │ │ │ ├── fil.json │ │ │ ├── fr.json │ │ │ ├── he.json │ │ │ ├── it.json │ │ │ ├── ja.json │ │ │ ├── nb_NO.json │ │ │ ├── nl.json │ │ │ ├── pl.json │ │ │ ├── pt-PT.json │ │ │ ├── pt-br.json │ │ │ ├── ru.json │ │ │ ├── sk.json │ │ │ ├── sl.json │ │ │ ├── sn.json │ │ │ ├── sv.json │ │ │ ├── th.json │ │ │ ├── tr.json │ │ │ ├── ua.json │ │ │ ├── zh-cmn-Hans.json │ │ │ └── zh-cmn-Hant.json │ │ ├── icon │ │ │ └── favicon.ico │ │ ├── img │ │ │ ├── advance-card-bttf.png │ │ │ ├── advance-card-jp.jpg │ │ │ ├── advance-card-tmntr.jpg │ │ │ ├── appicon.png │ │ │ ├── badu-live.png │ │ │ ├── bjork-live.jpg │ │ │ ├── ian-avatar.png │ │ │ ├── ica-slidebox-img-1.png │ │ │ ├── ica-slidebox-img-2.png │ │ │ ├── ica-slidebox-img-3.png │ │ │ ├── ica-slidebox-img-4.png │ │ │ ├── marty-avatar.png │ │ │ ├── nin-live.png │ │ │ ├── queen-live.png │ │ │ ├── rundmc-live.png │ │ │ ├── sarah-avatar.png.jpeg │ │ │ ├── speakers │ │ │ │ ├── bear.jpg │ │ │ │ ├── cheetah.jpg │ │ │ │ ├── duck.jpg │ │ │ │ ├── eagle.jpg │ │ │ │ ├── elephant.jpg │ │ │ │ ├── giraffe.jpg │ │ │ │ ├── iguana.jpg │ │ │ │ ├── kitten.jpg │ │ │ │ ├── lion.jpg │ │ │ │ ├── mouse.jpg │ │ │ │ ├── puppy.jpg │ │ │ │ ├── rabbit.jpg │ │ │ │ └── turtle.jpg │ │ │ └── splashbg.png │ │ └── imgs │ │ │ └── logo.png │ ├── index.html │ ├── manifest.json │ ├── mocks │ │ └── providers │ │ │ └── items.ts │ ├── models │ │ └── item.ts │ ├── pages │ │ ├── README.md │ │ ├── cards │ │ │ ├── README.md │ │ │ ├── cards.html │ │ │ ├── cards.module.ts │ │ │ ├── cards.scss │ │ │ └── cards.ts │ │ ├── content │ │ │ ├── README.md │ │ │ ├── content.html │ │ │ ├── content.module.ts │ │ │ ├── content.scss │ │ │ └── content.ts │ │ ├── item-create │ │ │ ├── README.md │ │ │ ├── item-create.html │ │ │ ├── item-create.module.ts │ │ │ ├── item-create.scss │ │ │ └── item-create.ts │ │ ├── item-detail │ │ │ ├── README.md │ │ │ ├── item-detail.html │ │ │ ├── item-detail.module.ts │ │ │ ├── item-detail.scss │ │ │ └── item-detail.ts │ │ ├── list-master │ │ │ ├── README.md │ │ │ ├── list-master.html │ │ │ ├── list-master.module.ts │ │ │ ├── list-master.scss │ │ │ └── list-master.ts │ │ ├── login │ │ │ ├── README.md │ │ │ ├── login.html │ │ │ ├── login.module.ts │ │ │ ├── login.scss │ │ │ └── login.ts │ │ ├── menu │ │ │ ├── README.md │ │ │ ├── menu.html │ │ │ ├── menu.module.ts │ │ │ ├── menu.scss │ │ │ └── menu.ts │ │ ├── pages.ts │ │ ├── search │ │ │ ├── README.md │ │ │ ├── search.html │ │ │ ├── search.module.ts │ │ │ ├── search.scss │ │ │ └── search.ts │ │ ├── settings │ │ │ ├── README.md │ │ │ ├── settings.html │ │ │ ├── settings.module.ts │ │ │ ├── settings.scss │ │ │ └── settings.ts │ │ ├── signup │ │ │ ├── README.md │ │ │ ├── signup.html │ │ │ ├── signup.module.ts │ │ │ ├── signup.scss │ │ │ └── signup.ts │ │ ├── tabs │ │ │ ├── README.md │ │ │ ├── tabs.html │ │ │ ├── tabs.module.ts │ │ │ ├── tabs.scss │ │ │ └── tabs.ts │ │ ├── tutorial │ │ │ ├── README.md │ │ │ ├── tutorial.html │ │ │ ├── tutorial.module.ts │ │ │ ├── tutorial.scss │ │ │ └── tutorial.ts │ │ └── welcome │ │ │ ├── README.md │ │ │ ├── welcome.html │ │ │ ├── welcome.module.ts │ │ │ ├── welcome.scss │ │ │ └── welcome.ts │ ├── providers │ │ ├── api │ │ │ └── api.ts │ │ ├── items │ │ │ └── items.ts │ │ ├── providers.ts │ │ ├── settings │ │ │ └── settings.ts │ │ └── user │ │ │ └── user.ts │ ├── service-worker.js │ └── theme │ │ └── variables.scss ├── tsconfig.json └── tslint.json └── vue-demo └── login.vue /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | # local env files 6 | .env.local 7 | .env.*.local 8 | 9 | # Log files 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | 14 | # Editor directories and files 15 | .idea 16 | .vscode 17 | *.suo 18 | *.ntvs* 19 | *.njsproj 20 | *.sln 21 | *.sw* 22 | -------------------------------------------------------------------------------- /AlgorithmsLearn/fillms.txt: -------------------------------------------------------------------------------- 1 | (1) The Shawshank Redemption (《肖申克的救赎》) 2 | (2) The Godfater (《教父》) 3 | (3) The Godfater II (《教父2》) 4 | (4) Pulp Fition (《低俗小说》) 5 | (5) Pulp Fition (《低俗小说》) 6 | (6) The Godfater II (《教父2》) 7 | (7) The Shawshank Redemption (《肖申克的救赎》) 8 | (8) The Shawshank Redemption (《肖申克的救赎》) 9 | (9) Star Wars (《星球大战》) 10 | (10) The Shawshank Redemption (《肖申克的救赎》) 11 | (11) The Shawshank Redemption (《肖申克的救赎》) 12 | (12) Inception (《盗梦空间》) 13 | (13) The Godfater II (《教父2》) 14 | (14) The Shawshank Redemption (《肖申克的救赎》) 15 | (15) Forrest Gump (《阿甘正传》) 16 | (16) City of God (《上帝之城》) 17 | (17) The Shawshank Redemption (《肖申克的救赎》) 18 | (18) The Shawshank Redemption (《肖申克的救赎》) 19 | (19) Forrest Gump (《阿甘正传》) 20 | (20) City of God (《上帝之城》) -------------------------------------------------------------------------------- /AlgorithmsLearn/scope.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /JqueryLearn/addclass.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 19 | 20 | 21 |
22 | div 23 |
24 | 25 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /JqueryLearn/adddemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 兄弟节点 5 | 6 | 7 | 8 | 10 | 11 | 12 | 13 |
14 | div 15 |
16 | span 17 | 18 | 26 | 27 |
28 | 29 | 30 | 31 |
32 | 33 | 59 | 60 | -------------------------------------------------------------------------------- /JqueryLearn/ajaxdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 事件细节1 5 | 6 | 7 | 8 | 11 | 12 | 13 | 14 | 15 | 16 | 49 | 50 | -------------------------------------------------------------------------------- /JqueryLearn/animatedemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 动画 5 | 6 | 7 | 8 | 21 | 22 | 23 | 24 |
25 | div 26 |
27 |
28 | div 29 |
30 | 31 | 32 | 60 | 61 | -------------------------------------------------------------------------------- /JqueryLearn/cleardemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 28 | 29 | 30 | 31 | 32 |
33 |
34 |
35 |
36 | 37 | 38 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /JqueryLearn/datademo.1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 事件细节1 5 | 6 | 7 | 8 | 11 | 12 | 13 |
14 | aaa 15 |
16 | 17 | 18 | 22 | 23 | 24 | 44 | 45 | -------------------------------------------------------------------------------- /JqueryLearn/datademo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 事件细节 5 | 6 | 7 | 8 | 11 | 12 | 13 |
14 | aaa 15 |
16 | 17 | 18 | 20 | 21 | 22 | 23 | 65 | 66 | -------------------------------------------------------------------------------- /JqueryLearn/delegatedemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 事件委托 5 | 6 | 7 | 8 | 21 | 22 | 23 | 24 | 32 | 33 | 34 | 53 | 54 | -------------------------------------------------------------------------------- /JqueryLearn/domdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 节点的操作 5 | 6 | 7 | 8 | 9 | 10 |
11 | Hello Word 12 |
13 | 你好世界! 14 | 15 | 16 | 79 | 80 | -------------------------------------------------------------------------------- /JqueryLearn/dommin.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 25 | 26 | 27 | 28 | 29 | 30 | 35 | 65 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /JqueryLearn/getdomdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | dom操作 5 | 6 | 7 | 8 | 16 | 17 | 18 | 19 | 22 | 23 |
div1 span
24 |
div2
25 |
div3
26 | 33 | 80 | 81 | 82 | 83 | -------------------------------------------------------------------------------- /JqueryLearn/hoverdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | hover方法 5 | 6 | 7 | 8 | 21 | 22 | 23 | 24 |
25 |
26 |
27 | 28 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /JqueryLearn/indexdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | div 13 | 123 14 |
15 | 16 |
17 | div1 18 |
19 |
20 | div2 21 |
22 | 23 |
24 | div 25 |
26 | 27 | span 28 | 29 |

这是个p

30 | 31 |
32 |

heheh

33 |

heheh

34 |

heheh

35 |

heheh

36 |

heheh

37 |

heheh

38 |

heheh

39 |
40 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /JqueryLearn/mousedemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 鼠标拖拽 5 | 6 | 7 | 8 | 17 | 18 | 19 | 20 |
21 |
22 | 23 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /JqueryLearn/parentdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 30 | 31 | 32 | 33 | 34 |
35 |
36 |
37 |
38 | 39 | 40 | 46 | 47 | 73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /JqueryLearn/remodemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 删除节点 5 | 6 | 7 | 8 | 10 | 11 | 12 |
aaa 13 |
14 |
15 | 16 | 17 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /JqueryLearn/siblingsdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 兄弟节点 5 | 6 | 7 | 8 | 10 | 11 | 12 | 13 |
div
14 | span 15 | span 16 |
17 | span 18 |
19 |

p

20 |

h1

21 |

h2

22 | em 23 | 24 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /JqueryLearn/triggerdemo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 主动触发 5 | 6 | 7 | 8 | 11 | 12 | 13 | 14 |
15 | aaa 16 |
17 | 18 | 19 | 42 | 43 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | jquery Operation of the various posture and the basic learning of the native js, less dynamic writing learning 2 | ===================== 3 | 4 | 5 | -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/jQuery 制作无缝轮播的焦点图-v3.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/jQuery 制作无缝轮播的焦点图-v3.zip -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/1.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/2.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/3.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/img/4.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/手写轮播/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 无缝轮播 6 | 68 | 69 | 70 | 89 | 90 | 91 | -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/B~]D5DGLOYA1~W%I~_0`CA8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/B~]D5DGLOYA1~W%I~_0`CA8.png -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/JBDROFJ4J0FY~9_ODYSMBN4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/JBDROFJ4J0FY~9_ODYSMBN4.png -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/1.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/2.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/3.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/源码/无缝轮播案例 (课堂源码)/images/4.jpg -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/课件/jQuery 制作无缝轮播的焦点图-v2.ppt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/课件/jQuery 制作无缝轮播的焦点图-v2.ppt -------------------------------------------------------------------------------- /demo/jQuery 制作无缝轮播的焦点图/课件/jQuery 制作无缝轮播的焦点图-v3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/jQuery 制作无缝轮播的焦点图/课件/jQuery 制作无缝轮播的焦点图-v3.pdf -------------------------------------------------------------------------------- /demo/js获取位置/2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 15 | 16 | 17 | 18 |

This is a paragraph.

19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /demo/js获取位置/3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 17 | 18 | 19 | 20 |

这是一个段落。

21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /demo/菜单下拉/css/web1.css: -------------------------------------------------------------------------------- 1 | *{ 2 | padding: 0; 3 | margin: 0; 4 | } 5 | li{ 6 | list-style: none; 7 | } 8 | a{ 9 | text-decoration: none; 10 | } 11 | .nav{ 12 | width: 100%; 13 | height: 40px; 14 | background: #222; 15 | margin-top: 100px; 16 | } 17 | .nav .list{ 18 | width: 1000px; 19 | height: 40px; 20 | margin:0 auto; 21 | } 22 | .list li{ 23 | float: left; 24 | position: relative; 25 | } 26 | .list li>a{ 27 | padding: 0 30px; 28 | line-height: 40px; 29 | display: block; 30 | color: #aaa; 31 | font-size: 16px; 32 | } 33 | .list li:hover>a{ 34 | background: #333; 35 | color: #fff; 36 | } 37 | .list li:hover .down{ 38 | display: block; 39 | } 40 | .list li .down{ 41 | width: 150px; 42 | background: #333; 43 | position: absolute; 44 | top: 40px; 45 | left: 0; 46 | display: none; 47 | } 48 | .list li .down a{ 49 | display: block; 50 | line-height: 30px; 51 | color: #aaa; 52 | font-size: 14px; 53 | padding-left:30px; 54 | } 55 | .list li .down a:hover{ 56 | color: #fff; 57 | } -------------------------------------------------------------------------------- /demo/菜单下拉/css/web2.css: -------------------------------------------------------------------------------- 1 | *{ 2 | padding: 0; 3 | margin: 0; 4 | } 5 | li{ 6 | list-style: none; 7 | } 8 | a{ 9 | text-decoration: none; 10 | } 11 | .nav{ 12 | width: 100%; 13 | height: 40px; 14 | background: #222; 15 | margin-top: 100px; 16 | } 17 | .nav .list{ 18 | width: 1000px; 19 | height: 40px; 20 | margin:0 auto; 21 | } 22 | .list li{ 23 | float: left; 24 | position: relative; 25 | } 26 | .list li>a{ 27 | padding: 0 30px; 28 | line-height: 40px; 29 | display: block; 30 | color: #aaa; 31 | font-size: 16px; 32 | } 33 | .list li:hover>a{ 34 | background: #333; 35 | color: #fff; 36 | } 37 | .list li .down{ 38 | width: 150px; 39 | background: #333; 40 | position: absolute; 41 | top: 40px; 42 | left: 0; 43 | display: none; 44 | } 45 | .list li .down a{ 46 | display: block; 47 | line-height: 30px; 48 | color: #aaa; 49 | font-size: 14px; 50 | padding-left:30px; 51 | } 52 | .list li .down a:hover{ 53 | color: #fff; 54 | } -------------------------------------------------------------------------------- /demo/菜单下拉/css/web3.css: -------------------------------------------------------------------------------- 1 | *{ 2 | padding: 0; 3 | margin: 0; 4 | } 5 | li{ 6 | list-style: none; 7 | } 8 | a{ 9 | text-decoration: none; 10 | } 11 | .nav{ 12 | width: 100%; 13 | height: 40px; 14 | background: #222; 15 | margin-top: 100px; 16 | } 17 | .nav .list{ 18 | width: 1000px; 19 | height: 40px; 20 | margin:0 auto; 21 | } 22 | .list li{ 23 | float: left; 24 | position: relative; 25 | } 26 | .list li>a{ 27 | padding: 0 30px; 28 | line-height: 40px; 29 | display: block; 30 | color: #aaa; 31 | font-size: 16px; 32 | } 33 | .list li:hover>a{ 34 | background: #333; 35 | color: #fff; 36 | } 37 | .list li .down{ 38 | width: 150px; 39 | background: #333; 40 | position: absolute; 41 | top: 40px; 42 | left: 0; 43 | display: none; 44 | } 45 | .list li .down a{ 46 | display: block; 47 | line-height: 30px; 48 | color: #aaa; 49 | font-size: 14px; 50 | padding-left:30px; 51 | } 52 | .list li .down a:hover{ 53 | color: #fff; 54 | } -------------------------------------------------------------------------------- /demo/菜单下拉/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /demo/菜单下拉/index2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /demo/菜单下拉/index3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /demo/菜单下拉/js/nav.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Administrator on 2016/12/11. 3 | */ 4 | $(function () { 5 | $('.nav .list li').hover(function () { 6 | // $(this).find('.down').stop().slideDown({duration:1000,easing:'easeOutBounce'}); 7 | $(this).find('.down').stop().slideDown(); 8 | }, function () { 9 | // $(this).find('.down').stop().slideUp({duration:1000,easing:'easeOutBounce'}); 10 | $(this).find('.down').stop().slideUp(); 11 | }) 12 | 13 | }) -------------------------------------------------------------------------------- /demo/菜单下拉/菜单下拉.rar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/菜单下拉/菜单下拉.rar -------------------------------------------------------------------------------- /demo/首页导航条/css/webstyle.css: -------------------------------------------------------------------------------- 1 | *{ 2 | padding: 0; 3 | margin: 0; 4 | } 5 | li{ 6 | list-style: none; 7 | } 8 | a{ 9 | text-decoration: none; 10 | } 11 | .nav{ 12 | width: 100%; 13 | height: 40px; 14 | background: #222; 15 | margin-top: 100px; 16 | } 17 | .list{ 18 | width: 1000px; 19 | height: 40px; 20 | margin: 0 auto; 21 | } 22 | .list li{ 23 | float: left; 24 | } 25 | .list li a{ 26 | color:#aaa; 27 | padding: 0 30px; 28 | line-height: 40px; 29 | display: block; 30 | } 31 | .list li a:hover{ 32 | background: #333; 33 | color: #fff; 34 | } 35 | .list li a.on{ 36 | background: #333; 37 | color: #fff; 38 | } 39 | h1{ 40 | text-align: center; 41 | padding: 100px 0; 42 | } -------------------------------------------------------------------------------- /demo/首页导航条/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 首页菜单导航条 6 | 7 | 8 | 9 | 10 | 19 | 20 |

首页

21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /demo/首页导航条/jia.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 极客+ 6 | 7 | 8 | 9 | 10 | 19 | 20 |

极客+

21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /demo/首页导航条/jike.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 极客社区 6 | 7 | 8 | 9 | 10 | 19 | 20 |

极客社区

21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /demo/首页导航条/jiuye.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 就业学习 6 | 7 | 8 | 9 | 10 | 19 | 20 |

就业课程

21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /demo/首页导航条/js/nav.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/demo/首页导航条/js/nav.js -------------------------------------------------------------------------------- /demo/首页导航条/zhiye.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 职业课程 6 | 7 | 8 | 9 | 10 | 19 | 20 |

职业课程

21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /jsplumb/g6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 一个简单的关系图 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 |
17 | 18 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /jsplumb/jsplumb.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 可拖动节点 9 | 10 | 18 | 19 | 20 | 21 | 22 |
23 |
24 | 25 |
26 |
27 | 28 |
29 |
30 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /lessLearn/koala-config.json: -------------------------------------------------------------------------------- 1 | // Less project settings, you can edit it and set custom settings. 2 | { 3 | // The mappings of source directory and output directory 4 | "mappings": [ 5 | // { 6 | // "src": "path/to/source", 7 | // "dest": "path/to/output" 8 | // } 9 | ], 10 | 11 | // Add the ignore rules that Koala will not search them. 12 | // e.g. ["*.json", "*.txt", "test", "path/libs"] 13 | "ignores": ["*.css"], 14 | 15 | // Compile options of LESS. 16 | "options": { 17 | 18 | // Output style. Can be normal (default), compress. 19 | "outputStyle": "normal", 20 | 21 | // Outputs filename and line numbers, which will output the debug info within comments. 22 | "lineComments": false, 23 | 24 | // Outputs filename and line numbers, which will output the information within a fake media query which is compatible with the SASS format. 25 | "debugInfo": false, 26 | 27 | "strictMath": false, 28 | 29 | "strictUnits": false, 30 | 31 | // Create sourcemap files next to the generated CSS files 32 | "sourceMap": false, 33 | 34 | // auto add vendor prefixes to rules 35 | "autoprefix": false 36 | }, 37 | 38 | // Other compile options. 39 | // e.g, ["--strict-imports", ... ,"--rootpath=URL"]. 40 | // Run the command 'lessc -h' to see more options. 41 | "customOptions": [], 42 | 43 | // An array of filesystem paths or importers which should be searched for LESS templates imported with the @import directive. 44 | "includePaths": [] 45 | } -------------------------------------------------------------------------------- /lessLearn/less1/arr.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/lessLearn/less1/arr.jpg -------------------------------------------------------------------------------- /lessLearn/less1/img/arr.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/lessLearn/less1/img/arr.jpg -------------------------------------------------------------------------------- /lessLearn/less1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 初见LESS 6 | 7 | 8 | 9 | 10 |
11 | 18 |
19 | 20 | -------------------------------------------------------------------------------- /lessLearn/less1/less_demo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 初见less 5 | 6 | 7 | 8 | 41 | 42 | 43 | 44 | 45 |
46 | 53 |
54 | 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /lessLearn/less1/style.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | /*就会在LESS和CSS中显示*/ 3 | .conten ul { 4 | list-style: none; 5 | } 6 | .conten li { 7 | height: 25px; 8 | line-height: 25px; 9 | padding-left: 15px; 10 | background: url("arr.jpg") no-repeat center left; 11 | } 12 | .conten li a { 13 | text-decoration: none; 14 | color: #535353; 15 | font-family: microsoft yahei, "����", Arial, Simsun, "Arial Unicode MS", Mingliu, Helvetica; 16 | } 17 | -------------------------------------------------------------------------------- /lessLearn/less1/style.less: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | //只会在LESS中显示 3 | /*就会在LESS和CSS中显示*/ 4 | .conten { 5 | ul{ 6 | list-style: none; 7 | } 8 | li{ 9 | height: 25px; 10 | line-height: 25px; 11 | padding-left: 15px; 12 | background: url("arr.jpg") no-repeat center left; 13 | a{ 14 | text-decoration: none; 15 | color: #535353; 16 | font-family: microsoft yahei, "����", Arial, Simsun, "Arial Unicode MS", Mingliu, Helvetica; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/.name: -------------------------------------------------------------------------------- 1 | less2 -------------------------------------------------------------------------------- /lessLearn/less2/.idea/jsLibraryMappings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/less2.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /lessLearn/less2/.idea/watcherTasks.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 22 | 30 | 31 | -------------------------------------------------------------------------------- /lessLearn/less2/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |

么么哒

13 | 14 |

呵呵哒

15 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /lessLearn/less2/style.css: -------------------------------------------------------------------------------- 1 | h1 { 2 | font-size: 28px; 3 | color: red; 4 | font-family: 'microsoft yahei', "黑体", 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; 5 | } 6 | h2 { 7 | font-size: 24px; 8 | color: red; 9 | font-family: 'microsoft yahei', "黑体", 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; 10 | } 11 | button:hvoer { 12 | border: 1px solid red; 13 | } 14 | h1:hvoer { 15 | border: 1px solid #008000; 16 | } 17 | h2:hover { 18 | border: 1px solid #ff0000; 19 | } 20 | h1:hover { 21 | border: 1px solid #ff0000; 22 | } 23 | .divmaiz { 24 | color: #ff0000; 25 | margin: 10px; 26 | padding: 20px; 27 | } 28 | /*.div{ 29 | .mixin(1,2,3;someing,ele); 30 | } 31 | .div1{ 32 | .mixin(1,2,3); 33 | }*/ 34 | .div2 { 35 | color: 1, 2, 3; 36 | margin: 10px; 37 | padding: 20px; 38 | } 39 | .class1 { 40 | color: #33acfe; 41 | margin: 20px; 42 | padding: 20px; 43 | } 44 | .class2 { 45 | color: #33acfe; 46 | margin: 10px; 47 | padding: 40px; 48 | } 49 | footer { 50 | border: 1px solid all; 51 | border-radius: 5px; 52 | border-top-left-radius: 10px; 53 | background: red; 54 | } 55 | .div { 56 | padding: 33px; 57 | } 58 | .wp { 59 | width: 900px; 60 | } 61 | -------------------------------------------------------------------------------- /prototype-js-oop.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 重新理解js的6种继承方式之学习 8 | 9 | 10 | 11 | 76 | 77 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /test/.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs 2 | # editorconfig.org 3 | 4 | root = true 5 | 6 | [*] 7 | indent_style = space 8 | indent_size = 2 9 | 10 | # We recommend you to keep these unchanged 11 | end_of_line = lf 12 | charset = utf-8 13 | trim_trailing_whitespace = true 14 | insert_final_newline = true 15 | 16 | [*.md] 17 | trim_trailing_whitespace = false -------------------------------------------------------------------------------- /test/.gitignore: -------------------------------------------------------------------------------- 1 | # Specifies intentionally untracked files to ignore when using Git 2 | # http://git-scm.com/docs/gitignore 3 | 4 | *~ 5 | *.sw[mnpcod] 6 | *.log 7 | *.tmp 8 | *.tmp.* 9 | log.txt 10 | *.sublime-project 11 | *.sublime-workspace 12 | .vscode/ 13 | npm-debug.log* 14 | 15 | .idea/ 16 | .sourcemaps/ 17 | .sass-cache/ 18 | .tmp/ 19 | .versions/ 20 | coverage/ 21 | dist/ 22 | node_modules/ 23 | tmp/ 24 | temp/ 25 | hooks/ 26 | platforms/ 27 | plugins/ 28 | plugins/android.json 29 | plugins/ios.json 30 | www/ 31 | $RECYCLE.BIN/ 32 | 33 | .DS_Store 34 | Thumbs.db 35 | UserInterfaceState.xcuserstate 36 | -------------------------------------------------------------------------------- /test/ionic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test", 3 | "app_id": "", 4 | "type": "ionic-angular", 5 | "integrations": { 6 | "cordova": {} 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /test/ionic.starter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ionic Super Starter", 3 | "baseref": "master", 4 | "welcome": "Welcome to the \u001b[36m\u001b[1mIONIC SUPER STARTER\u001b[22m\u001b[39m!\n\nThe Super Starter comes packed with ready-to-use page designs for common mobile designs like master detail, login/signup, settings, tutorials, and more. Pick and choose which page types you want to use and remove the ones you don't!\n\nFor more details, please see the project README: \u001b[1mhttps://github.com/ionic-team/starters/blob/master/ionic-angular/official/super/README.md\u001b[22m", 5 | "packageJson": { 6 | "dependencies": { 7 | "@ionic-native/camera": "4.3.3", 8 | "@ngx-translate/core": "8.0.0", 9 | "@ngx-translate/http-loader": "^2.0.0" 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /test/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test", 3 | "version": "0.0.1", 4 | "author": "Ionic Framework", 5 | "homepage": "http://ionicframework.com/", 6 | "private": true, 7 | "scripts": { 8 | "clean": "ionic-app-scripts clean", 9 | "build": "ionic-app-scripts build", 10 | "lint": "ionic-app-scripts lint", 11 | "ionic:build": "ionic-app-scripts build", 12 | "ionic:serve": "ionic-app-scripts serve" 13 | }, 14 | "dependencies": { 15 | "@angular/common": "5.0.3", 16 | "@angular/compiler": "5.0.3", 17 | "@angular/compiler-cli": "5.0.3", 18 | "@angular/core": "5.0.3", 19 | "@angular/forms": "5.0.3", 20 | "@angular/http": "5.0.3", 21 | "@angular/platform-browser": "5.0.3", 22 | "@angular/platform-browser-dynamic": "5.0.3", 23 | "@ionic-native/camera": "4.3.3", 24 | "@ionic-native/core": "4.4.0", 25 | "@ionic-native/splash-screen": "4.4.0", 26 | "@ionic-native/status-bar": "4.4.0", 27 | "@ionic/pro": "1.0.16", 28 | "@ionic/storage": "2.1.3", 29 | "@ngx-translate/core": "8.0.0", 30 | "@ngx-translate/http-loader": "^2.0.0", 31 | "ionic-angular": "3.9.2", 32 | "ionicons": "3.0.0", 33 | "rxjs": "5.5.2", 34 | "sw-toolbox": "3.6.0", 35 | "zone.js": "0.8.18" 36 | }, 37 | "devDependencies": { 38 | "@ionic/app-scripts": "3.1.6", 39 | "typescript": "2.4.2" 40 | }, 41 | "description": "An Ionic project" 42 | } 43 | -------------------------------------------------------------------------------- /test/resources/README.md: -------------------------------------------------------------------------------- 1 | These are Cordova resources. You can replace icon.png and splash.png and run 2 | `ionic cordova resources` to generate custom icons and splash screens for your 3 | app. See `ionic cordova resources --help` for details. 4 | 5 | Cordova reference documentation: 6 | 7 | - Icons: https://cordova.apache.org/docs/en/latest/config_ref/images.html 8 | - Splash Screens: https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/ 9 | -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-hdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-hdpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-ldpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-ldpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-mdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-mdpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-xhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-xhdpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-xxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-xxhdpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/icon/drawable-xxxhdpi-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/icon/drawable-xxxhdpi-icon.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-hdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-ldpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-mdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-xhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-xxhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-land-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-land-xxxhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-hdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-hdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-ldpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-ldpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-mdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-mdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-xhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-xhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-xxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-xxhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/android/splash/drawable-port-xxxhdpi-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/android/splash/drawable-port-xxxhdpi-screen.png -------------------------------------------------------------------------------- /test/resources/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/icon.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-1024.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-40.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-40@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-40@3x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-50.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-50@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-50@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-60.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-60@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-60@3x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-72.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-72@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-72@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-76.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-76@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-83.5@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-small.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-small@2x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon-small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon-small@3x.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon.png -------------------------------------------------------------------------------- /test/resources/ios/icon/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/icon/icon@2x.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-568h@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-568h@2x~iphone.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-667h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-667h.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-736h.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Landscape-736h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Landscape-736h.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Landscape@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Landscape@2x~ipad.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Landscape@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Landscape@~ipadpro.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Landscape~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Landscape~ipad.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Portrait@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Portrait@2x~ipad.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Portrait@~ipadpro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Portrait@~ipadpro.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default-Portrait~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default-Portrait~ipad.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default@2x~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default@2x~iphone.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default@2x~universal~anyany.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default@2x~universal~anyany.png -------------------------------------------------------------------------------- /test/resources/ios/splash/Default~iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/ios/splash/Default~iphone.png -------------------------------------------------------------------------------- /test/resources/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/resources/splash.png -------------------------------------------------------------------------------- /test/src/app/app.scss: -------------------------------------------------------------------------------- 1 | // http://ionicframework.com/docs/v2/theming/ 2 | 3 | 4 | // App Global Sass 5 | // -------------------------------------------------- 6 | // Put style rules here that you want to apply globally. These 7 | // styles are for the entire app and not just one component. 8 | // Additionally, this file can be also used as an entry point 9 | // to import other Sass files to be included in the output CSS. 10 | // 11 | // Shared Sass variables, which can be used to adjust Ionic's 12 | // default Sass variables, belong in "theme/variables.scss". 13 | // 14 | // To declare rules for a specific mode, create a child rule 15 | // for the .md, .ios, or .wp mode classes. The mode class is 16 | // automatically applied to the element in the app. 17 | -------------------------------------------------------------------------------- /test/src/app/main.ts: -------------------------------------------------------------------------------- 1 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 2 | 3 | import { AppModule } from './app.module'; 4 | 5 | platformBrowserDynamic().bootstrapModule(AppModule); 6 | -------------------------------------------------------------------------------- /test/src/assets/i18n/ar.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "رجوع", 3 | 4 | "NAME": "الاسم", 5 | "EMAIL": "البريد الإلكتروني", 6 | "USERNAME": "اسم المستخدم", 7 | "PASSWORD": "كلمة السر", 8 | "LOGIN": "تسجيل الدخول", 9 | "SIGNUP": "انشاء الحساب", 10 | 11 | "TAB1_TITLE": "عناصر", 12 | "TAB2_TITLE": "بحث", 13 | "TAB3_TITLE": "إعدادات", 14 | 15 | "MAP_TITLE": "خريطة", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "تخطى", 18 | "TUTORIAL_CONTINUE_BUTTON": "استمر", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "مرحبا بكم في عدة البدء Ionic Super Starter", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter عبارة عن عدة لبدء التطوير بواسطة Ionic. وهي تتميز بالعديد من الصفحات وأفضل الممارسات.", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "كيفية استخدام Ionic Super Starter", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "يمكنك تجميع أنواع الصفحات المختلفة التي ترغب بها وإزالة الباقي. وتوفر عدة البدء ​​العديد من تخطيطات الصفحات الاكثر شيوعا في التطبيقات النقالة، مثل صفحات تسجيل الدخول وانشاء الحساب، علامات التبويب، وهذه الصفحة التعليمية.", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "كيفية الشروع", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "هل تحتاج إلى مساعدة؟ يمكنك الاطلاع على README لبرنامج تعليمي كامل على Ionic Super Starter", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "مستعد للعب؟", 30 | 31 | "WELCOME_INTRO": "نقطة الانطلاق لتطبيق Ionic العظيم الخاص بك", 32 | 33 | "SETTINGS_TITLE": "إعدادات", 34 | "SETTINGS_OPTION1": "خيار 1", 35 | "SETTINGS_OPTION2": "خيار 2", 36 | "SETTINGS_OPTION3": "خيار 3", 37 | "SETTINGS_OPTION4": "خيار 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "تعديل الملف الشخصي", 40 | 41 | "SETTINGS_PAGE_PROFILE": "تعديل الملف الشخصي", 42 | 43 | "WELCOME_TITLE": "مرحبا", 44 | 45 | "LOGIN_TITLE": "تسجيل الدخول", 46 | "LOGIN_ERROR": "تعذر تسجيل الدخول. يرجى التحقق من معلومات حسابك وإعادة المحاولة.", 47 | "LOGIN_BUTTON": "تسجيل الدخول", 48 | "SIGNUP_TITLE": "انشاء الحساب", 49 | "SIGNUP_ERROR": "تعذر إنشاء الحساب. يرجى التحقق من معلومات حسابك وإعادة المحاولة.", 50 | "SIGNUP_BUTTON": "انشاء الحساب", 51 | 52 | "LIST_MASTER_TITLE": "عناصر", 53 | 54 | "ITEM_CREATE_TITLE": "عنصر جديد", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "إضافة صورة", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "الاسم", 58 | "ITEM_ABOUT_PLACEHOLDER": "عن", 59 | 60 | "DONE_BUTTON": "انهاء", 61 | "CANCEL_BUTTON": "الغاء", 62 | "DELETE_BUTTON": "حذف", 63 | 64 | "CARDS_TITLE": "اجتماعي", 65 | 66 | "SEARCH_TITLE": "بحث", 67 | "SEARCH_PLACEHOLDER": "ابحث في قائمة العناصر، مثل \"Donald Duck\"" 68 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/bs.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Ime", 3 | "PASSWORD": "Šifra", 4 | "EMAIL": "E-mail", 5 | "LOGIN": "Prijava", 6 | "SIGNUP": "Registracija", 7 | 8 | "TAB1_TITLE": "Stavke", 9 | "TAB2_TITLE": "Traži", 10 | "TAB3_TITLE": "Postavke", 11 | 12 | "MAP_TITLE": "Mapa", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Dobrodošli u Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter je potpuno funkcionalna početna aplikacija sa mnogim unaprijed pripremljenim stranicama uz korištenje najboljih praksi.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Kako koristiti Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Sastavite različite vrste stranica koje želite, a uklonite one koje ne želite. Obezbjedili smo vam mnoge uobičajne izglede stranica, kao što su stranice za registraciju i prijavu korisnika, tabulatore, a i ovu stranicu za učenje.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Počinjemo", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Trebate pomoć? Pročitajte Super Starter README za cijeli tutorial.", 22 | 23 | "SETTINGS_TITLE": "Postavke", 24 | "SETTINGS_OPTION1": "Opcija 1", 25 | "SETTINGS_OPTION2": "Opcija 2", 26 | "SETTINGS_OPTION3": "Opcija 3", 27 | "SETTINGS_OPTION4": "Opcija 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Uredi profil", 30 | 31 | "WELCOME_TITLE": "Dobrodošli", 32 | 33 | "LOGIN_TITLE": "Prijavi se", 34 | "LOGIN_ERROR": "Prijava nije uspjela. Molimo provjerite vaše podatke za prijavu, a zatim pokušajte ponovo.", 35 | "LOGIN_BUTTON": "Prijava", 36 | "SIGNUP_TITLE": "Registruj se", 37 | "SIGNUP_ERROR": "Nije moguće kreirati novi korisnički račun. Molimo vas provjerite podatke, a zatim pokušajte ponovo.", 38 | "SIGNUP_BUTTON": "Registracija", 39 | 40 | "LIST_MASTER_TITLE": "Stavke", 41 | 42 | "ITEM_CREATE_TITLE": "Nova stavka", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Dodaj sliku", 44 | 45 | "CARDS_TITLE": "Socijalno", 46 | 47 | "SEARCH_TITLE": "Traži" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/by.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Імя", 3 | "EMAIL": "Email", 4 | "PASSWORD": "Пароль", 5 | "LOGIN": "Увайсці", 6 | "SIGNUP": "Зарэгістравацца", 7 | 8 | "TAB1_TITLE": "Спіс", 9 | "TAB2_TITLE": "Пошук", 10 | "TAB3_TITLE": "Налады", 11 | 12 | "MAP_TITLE": "Мапа", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Вітаем ў Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter – гэта паўнавартасны пачатаковы пакет для Ionic са шматлікімі ўзорамі старонак і прыкладамі лепшых практык.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Як карыстацца", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Складайце старонкі розных кшталтаў з патрэбных вам элементаў і выдаляйце непатрэбныя. Сярод шматлікіх тыповых макетаў – \"Уваход\" і \"Рэгістрацыя\", старонка з закладкамі і гэтая пачатковая старонка з падказкамі.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "З чаго пачаць", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Патрэбна дапамога? Кіраўніцтвы ды тлумачэнні можна знайсці ў README-файлах унутры праекту.", 22 | 23 | "SETTINGS_TITLE": "Налады", 24 | "SETTINGS_OPTION1": "Налада 1", 25 | "SETTINGS_OPTION2": "Налада 2", 26 | "SETTINGS_OPTION3": "Налада 3", 27 | "SETTINGS_OPTION4": "Налада 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Профіль", 30 | 31 | "WELCOME_TITLE": "Прывітанне", 32 | 33 | "LOGIN_TITLE": "Уваход", 34 | "LOGIN_ERROR": "Не атрымалася ўвайсці ў сістэму. Калі ласка, праверце ўведзеныя ўліковыя дадзеныя і паспрабуйце зноў.", 35 | "LOGIN_BUTTON": "Увайсці", 36 | "SIGNUP_TITLE": "Рэгістрацыя", 37 | "SIGNUP_ERROR": "Не атрымалася стварыць уліковы запіс. Калі ласка, праверце ўведзеныя ўліковыя дадзеныя і паспрабуйце зноў.", 38 | "SIGNUP_BUTTON": "Зарэгістравацца", 39 | 40 | "LIST_MASTER_TITLE": "Спіс", 41 | 42 | "ITEM_CREATE_TITLE": "Дадаць у спіс", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Дадаць выяву", 44 | 45 | "CARDS_TITLE": "Суполкі", 46 | 47 | "SEARCH_TITLE": "Пошук" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/da.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Navn", 3 | "PASSWORD": "Adgangskode", 4 | "EMAIL": "Email", 5 | "LOGIN": "Log Ind", 6 | "SIGNUP": "Tilmeld", 7 | 8 | "TAB1_TITLE": "Poster", 9 | "TAB2_TITLE": "Søg", 10 | "TAB3_TITLE": "Indstillinger", 11 | 12 | "MAP_TITLE": "Kort", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Velkommen til Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter er en fuldt funktionsdygtig Ionic starter med mange køreklare sidetyper bygget efter best practices.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Sådan bruges Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Sammensæt de forskellige sidetyper du ønsker at bruge og fjern dem du ikke har behov for. Vi leverer mange gænse mobil app sider, som f.eks. login- og registreringssider, faneblade, og denne introduktionsside.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Kom i gang", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Har du brug for hjælp? Kig på Super Starter README for en omfattende forklaring.", 22 | 23 | "SETTINGS_TITLE": "Indstillinger", 24 | "SETTINGS_OPTION1": "Mulighed 1", 25 | "SETTINGS_OPTION2": "Mulighed 2", 26 | "SETTINGS_OPTION3": "Mulighed 3", 27 | "SETTINGS_OPTION4": "Mulighed 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Rediger Profil", 30 | 31 | "WELCOME_TITLE": "Velkommen", 32 | 33 | "LOGIN_TITLE": "Log ind", 34 | "LOGIN_ERROR": "Fejl ved log ind. Kontroller venligst kontooplysningerne og prøv igen.", 35 | "LOGIN_BUTTON": "Log ind", 36 | "SIGNUP_TITLE": "Registrer", 37 | "SIGNUP_ERROR": "Fejl ved oprettelse. Kontroller venligst kontooplysningerne og prøv igen.", 38 | "SIGNUP_BUTTON": "Registrer", 39 | 40 | "LIST_MASTER_TITLE": "Poster", 41 | 42 | "ITEM_CREATE_TITLE": "Ny post", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Tilføj billede", 44 | 45 | "CARDS_TITLE": "Social", 46 | 47 | "SEARCH_TITLE": "Søg" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/de.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "Zurück", 3 | 4 | "NAME": "Name", 5 | "PASSWORD": "Passwort", 6 | "EMAIL": "Email", 7 | "LOGIN": "Anmelden", 8 | "SIGNUP": "Registrieren", 9 | "CANCEL_BUTTON": "Schließen", 10 | 11 | "TAB1_TITLE": "Items", 12 | "TAB2_TITLE": "Suche", 13 | "TAB3_TITLE": "Einstellung", 14 | 15 | "MAP_TITLE": "Karte", 16 | 17 | "TUTORIAL_SLIDE1_TITLE": "Hallo Ionic Super Starter App", 18 | "TUTORIAL_SLIDE1_DESCRIPTION": "Die Ionic Super Starter App ist eine umfangreiche Starter App mit vielen vorgefertigten Seiten und Best Practices.", 19 | 20 | "TUTORIAL_SLIDE2_TITLE": "Wie soll man die Super Starter App verwenden", 21 | "TUTORIAL_SLIDE2_DESCRIPTION": "Nutze und bearbeite die Funktionen und Seiten die du benötigst und lösche den Rest. Wähle aus einer Vielzahl an Layouts, wie Anmelden, Registrieren, Tabs und einer Tutorial Seite.", 22 | 23 | "TUTORIAL_SLIDE3_TITLE": "Los gehts", 24 | "TUTORIAL_SLIDE3_DESCRIPTION": "Du brauchst Hilfe? Sieh dir das README File an um mehr zu erfahren.", 25 | 26 | "TUTORIAL_CONTINUE_BUTTON": "Fortfahren", 27 | 28 | "WELCOME_INTRO": "Der Startpunkt für Deine nächste tolle Ionic App", 29 | 30 | "SETTINGS_TITLE": "Einstellungen", 31 | "SETTINGS_OPTION1": "Option 1", 32 | "SETTINGS_OPTION2": "Option 2", 33 | "SETTINGS_OPTION3": "Option 3", 34 | "SETTINGS_OPTION4": "Option 4", 35 | 36 | "SETTINGS_PAGE_PROFILE": "Profil ändern", 37 | 38 | "WELCOME_TITLE": "Willkommen", 39 | 40 | "LOGIN_TITLE": "Anmelden", 41 | "LOGIN_ERROR": "Fehler beim Anmelden, bitte überprüfe deine Informationen und versuche es erneut.", 42 | "LOGIN_BUTTON": "Anmelden", 43 | "SIGNUP_TITLE": "Registrieren", 44 | "SIGNUP_ERROR": "Fehler beim Registrieren, bitte überprüfe deine Informationen und versuche es erneut.", 45 | "SIGNUP_BUTTON": "Registrieren", 46 | 47 | "LIST_MASTER_TITLE": "Artikel", 48 | 49 | "ITEM_CREATE_TITLE": "Neuer Artikel", 50 | "ITEM_CREATE_CHOOSE_IMAGE": "Artikel hinzufügen", 51 | 52 | "CARDS_TITLE": "Social", 53 | 54 | "SEARCH_TITLE": "Suche", 55 | "SEARCH_PLACEHOLDER": "Suche in der Artikel-Liste, z.B. \"Donald Duck\"" 56 | } 57 | -------------------------------------------------------------------------------- /test/src/assets/i18n/el.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Όνομα", 3 | "PASSWORD": "Κωδικός", 4 | "EMAIL": "Email", 5 | "LOGIN": "Σύνδεση", 6 | "SIGNUP": "Εγγραφή", 7 | 8 | "TAB1_TITLE": "Αντικείμενα", 9 | "TAB2_TITLE": "Αναζήτηση", 10 | "TAB3_TITLE": "Ρυθμίσεις", 11 | 12 | "MAP_TITLE": "Χάρτης", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Καλώς ορίσατε στο Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Το Ionic Super Starter είναι ένα πλήρες βοηθητικό πακέτο εκκίνησης προγραμματισμού με το Ionic και περιέχει πληθώρα έτοιμων, ανεπτυγμένων σελίδων αλλά και βέλτιστων-πρακτικών εφαρμογής του.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Πως να χρησημοποιήσετε το Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Συγκεντρώστε οποιες σελίδες επιθυμείτε και αφαιρέστε εκείνες που δε σας χρειάζονται. Σας παρέχουμε πολλές συνηθισμένες διατάξεις σελίδων, όπως σελίδες σύνδεσης και εγγραφής, με καρτέλες ή επεξήγησης όπως η παρούσα.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Ξεκινώντας", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Χρειάζεστε βοήθεια; Ρίχτε μια ματιά στο Super Starter README αρχείο για την πλήρη επεξήγηση.", 22 | 23 | "SETTINGS_TITLE": "Ρυθμίσεις", 24 | "SETTINGS_OPTION1": "Επιλογή 1", 25 | "SETTINGS_OPTION2": "Επιλογή 2", 26 | "SETTINGS_OPTION3": "Επιλογή 3", 27 | "SETTINGS_OPTION4": "Επιλογή 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Επεξεργασία Προφίλ", 30 | 31 | "WELCOME_TITLE": "Καλώς ορίσατε", 32 | 33 | "LOGIN_TITLE": "Σύνδεση", 34 | "LOGIN_ERROR": "Η σύνδεση ήταν ανέφικτη. Παρακαλούμε ελέγξτε τις πληροφορίες λογαριασμού σας και ξαναπροσπαθήστε.", 35 | "LOGIN_BUTTON": "Σύνδεση", 36 | "SIGNUP_TITLE": "Εγγραφή", 37 | "SIGNUP_ERROR": "Η δημιουργία λογαριασμού ήταν ανέφικτη. Παρακαλούμε ελέγξτε τις πληροφορίες λογαριασμού σας και ξαναπροσπαθήστε.", 38 | "SIGNUP_BUTTON": "Εγγραφή", 39 | 40 | "LIST_MASTER_TITLE": "Αντικείμενα", 41 | 42 | "ITEM_CREATE_TITLE": "Νέο Αντικείμενο", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Προσθήκη φωτογραφίας", 44 | 45 | "CARDS_TITLE": "Κοινωνικά", 46 | 47 | "SEARCH_TITLE": "Αναζήτηση" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/en.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "Back", 3 | 4 | "NAME": "Name", 5 | "EMAIL": "Email", 6 | "USERNAME": "Username", 7 | "PASSWORD": "Password", 8 | "LOGIN": "Sign in", 9 | "SIGNUP": "Sign up", 10 | 11 | "TAB1_TITLE": "Items", 12 | "TAB2_TITLE": "Search", 13 | "TAB3_TITLE": "Settings", 14 | 15 | "MAP_TITLE": "Map", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "Skip", 18 | "TUTORIAL_CONTINUE_BUTTON": "Continue", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "Welcome to the Ionic Super Starter", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": "The Ionic Super Starter is a fully-featured Ionic starter with many pre-built pages and best practices.", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "How to use the Super Starter", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "Assemble the various page types you want and remove the ones you don't. We've provided many common mobile app page layouts, like login and signup pages, tabs, and this tutorial page.", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "Getting Started", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "Need help? Check out the Super Starter README for a full tutorial", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "Ready to Play?", 30 | 31 | "WELCOME_INTRO": "The starting point for your next great Ionic app", 32 | 33 | "SETTINGS_TITLE": "Settings", 34 | "SETTINGS_OPTION1": "Option 1", 35 | "SETTINGS_OPTION2": "Option 2", 36 | "SETTINGS_OPTION3": "Option 3", 37 | "SETTINGS_OPTION4": "Option 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "Edit Profile", 40 | 41 | "SETTINGS_PAGE_PROFILE": "Edit Profile", 42 | 43 | "WELCOME_TITLE": "Welcome", 44 | 45 | "LOGIN_TITLE": "Sign in", 46 | "LOGIN_ERROR": "Unable to sign in. Please check your account information and try again.", 47 | "LOGIN_BUTTON": "Sign in", 48 | "SIGNUP_TITLE": "Sign up", 49 | "SIGNUP_ERROR": "Unable to create account. Please check your account information and try again.", 50 | "SIGNUP_BUTTON": "Sign up", 51 | 52 | "LIST_MASTER_TITLE": "Items", 53 | 54 | "ITEM_CREATE_TITLE": "New Item", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "Add Image", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "Name", 58 | "ITEM_ABOUT_PLACEHOLDER": "About", 59 | 60 | "DONE_BUTTON": "Done", 61 | "CANCEL_BUTTON": "Cancel", 62 | "DELETE_BUTTON": "Delete", 63 | 64 | "CARDS_TITLE": "Social", 65 | 66 | "SEARCH_TITLE": "Search", 67 | "SEARCH_PLACEHOLDER": "Search the items list, e.g. \"Donald Duck\"" 68 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/es-eu.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Izena", 3 | "PASSWORD": "Pasahitza", 4 | "EMAIL": "Email Helbidea", 5 | "LOGIN": "Saioa Hasi", 6 | "SIGNUP": "Izena Eman", 7 | "TAB1_TITLE": "Artikuluak", 8 | "TAB2_TITLE": "Bilatu", 9 | "TAB3_TITLE": "Xehetasunak", 10 | "MAP_TITLE": "Mapa", 11 | "TUTORIAL_SLIDE1_TITLE": "Ongi etorri Ionic Super Starter-era", 12 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter hasierako txantiloi bat da, 'page' askorekin eta ereduak", 13 | "TUTORIAL_SLIDE2_TITLE": "Nola erabili Super Starter", 14 | "TUTORIAL_SLIDE2_DESCRIPTION": "Sortu gustatzen zaizkizun orrialdeak eta ezabatu besteak. Adibidez: login signup, tabs eta tutorialeak.", 15 | "TUTORIAL_SLIDE3_TITLE": "Ikasten", 16 | "TUTORIAL_SLIDE3_DESCRIPTION": "Laguntzarik nahi? irakurri README,Super Starter-ren tutorial osoa daukazu", 17 | "SETTINGS_TITLE": "Xehetasunak", 18 | "SETTINGS_OPTION1": "1 Aukera", 19 | "SETTINGS_OPTION2": "2 Aukera", 20 | "SETTINGS_OPTION3": "3 Aukera", 21 | "SETTINGS_OPTION4": "4 Aukera", 22 | "SETTINGS_PAGE_PROFILE": "Zure datual editatu", 23 | "WELCOME_TITLE": "Ongi Etorri", 24 | "LOGIN_TITLE": "Sesioa Hasi", 25 | "LOGIN_ERROR": "Arazoa sesioa hasteko. Mesedez,sahiatu berriz zure datuak idazten.", 26 | "LOGIN_BUTTON": "Sesioa Hasi", 27 | "SIGNUP_TITLE": "Izena eman", 28 | "SIGNUP_ERROR": "Arazoa kontua sortzen.or, Mesedez,sahiatu berriz zure datuak idazten.", 29 | "SIGNUP_BUTTON": "Izena Eman", 30 | "LIST_MASTER_TITLE": "Artikuluak", 31 | "ITEM_CREATE_TITLE": "Artikulu berria", 32 | "ITEM_CREATE_CHOOSE_IMAGE": "Argazkia sortu", 33 | "CARDS_TITLE": "Sozial", 34 | "SEARCH_TITLE": "Bilatu" 35 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/es.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Nombre", 3 | "PASSWORD": "Contraseña", 4 | "EMAIL": "Email", 5 | "LOGIN": "Iniciar sesión", 6 | "SIGNUP": "Registrarse", 7 | 8 | "TAB1_TITLE": "Items", 9 | "TAB2_TITLE": "Buscar", 10 | "TAB3_TITLE": "Ajustes", 11 | 12 | "MAP_TITLE": "Mapa", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Bienvenido/a al Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "El Ionic Super Starter es un starter de Ionic completo con muchas páginas preconstruidas y mejores prácticas.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Cómo usar el Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Monta los varios tipos de página que quieras y quita los que no. Hemos incluido muchas estructuras de página comunes en apps móviles, como páginas de inicio de sesión y registro, pestañas, y esta página de tutorial.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Empezando", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "¿Necesitas ayuda? Échale un vistazo al README del Super Starter para ver el tutorial completo.", 22 | 23 | "SETTINGS_TITLE": "Ajustes", 24 | "SETTINGS_OPTION1": "Opción 1", 25 | "SETTINGS_OPTION2": "Opción 2", 26 | "SETTINGS_OPTION3": "Opción 3", 27 | "SETTINGS_OPTION4": "Opción 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Editar Perfil", 30 | 31 | "WELCOME_TITLE": "Bienvenido/a", 32 | 33 | "LOGIN_TITLE": "Iniciar sesión", 34 | "LOGIN_ERROR": "No se ha podido iniciar sesión. Por favor revisa la información de la cuenta e inténtalo de nuevo.", 35 | "LOGIN_BUTTON": "Iniciar sesión", 36 | "SIGNUP_TITLE": "Registro", 37 | "SIGNUP_ERROR": "No se ha podido crear la cuenta. Por favor revisa la información de la cuenta e inténtalo de nuevo.", 38 | "SIGNUP_BUTTON": "Registrarse", 39 | 40 | "LIST_MASTER_TITLE": "Items", 41 | 42 | "ITEM_CREATE_TITLE": "Nuevo Item", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Añadir Imagen", 44 | 45 | "CARDS_TITLE": "Social", 46 | 47 | "SEARCH_TITLE": "Buscar" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/fil.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Pangalan", 3 | "PASSWORD": "Password", 4 | "EMAIL": "Email", 5 | "LOGIN": "Sign in", 6 | "SIGNUP": "Sign up", 7 | 8 | "TAB1_TITLE": "Mga Gamit", 9 | "TAB2_TITLE": "Hanapin", 10 | "TAB3_TITLE": "Mga Setting", 11 | 12 | "MAP_TITLE": "Mapa", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Maligayang Pagdating sa Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Isang kumpletong Ionic starter na may buong mga pahina at pinakamainam na gawi ang Ionic Super Starter", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Paano gamitin ang Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Buoin ang mga page types na gusto mo at tanggalin ang mga ayaw mo. Marami kaming ibinigay na app layouts, tulad ng login at signup, tabs, at itong tutorial page", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Paano magsimula", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Kailangan ng tulong? Tignan ang README ng Super Starter para sa buong tutorial", 22 | 23 | "SETTINGS_TITLE": "Mga Setting", 24 | "SETTINGS_OPTION1": "Opsyon 1", 25 | "SETTINGS_OPTION2": "Opsyon 2", 26 | "SETTINGS_OPTION3": "Opsyon 3", 27 | "SETTINGS_OPTION4": "Opsyon 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Baguhin ang Profile", 30 | 31 | "WELCOME_TITLE": "Maligayang Pagdating", 32 | 33 | "LOGIN_TITLE": "Sign in", 34 | "LOGIN_ERROR": "Hindi makapag-sign-in. Paki-kumpirma ang iyong impormasyon at subukan ulit", 35 | "LOGIN_BUTTON": "Sign in", 36 | "SIGNUP_TITLE": "Sign up", 37 | "SIGNUP_ERROR": "Hindi makagawa ng bagong account. Paki-kumpirma ang iyong impormasyon at subukan ulit", 38 | "SIGNUP_BUTTON": "Sign up", 39 | 40 | "LIST_MASTER_TITLE": "Mga Item", 41 | 42 | "ITEM_CREATE_TITLE": "Bagong Item", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Maglagay ng Imahe", 44 | 45 | "CARDS_TITLE": "Social", 46 | 47 | "SEARCH_TITLE": "Hanapin" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/fr.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Nom", 3 | "PASSWORD": "Mot de passe", 4 | "EMAIL": "E-mail", 5 | "LOGIN": "Connexion", 6 | "SIGNUP": "Inscription", 7 | 8 | "TAB1_TITLE": "Items", 9 | "TAB2_TITLE": "Recherche", 10 | "TAB3_TITLE": "Paramètres", 11 | 12 | "MAP_TITLE": "Carte", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Bienvenue dans le kit de démarrage Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter est un kit complet pour démarrer sur Ionic. Il repose sur les meilleures pratiques et implémente de nombreux types de pages.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Comment utiliser le Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Assemblez les types de pages désirés et supprimez les autres. Le kit inclut plusieurs mises en page courantes d’applications mobiles, comme les pages de connexion et d’inscription, les onglets et cette page de tutoriel.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Pour commencer", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Si vous avez besoin d’aide, consultez le README du Super Starter pour un tutoriel complet.", 22 | 23 | "SETTINGS_TITLE": "Paramètres", 24 | "SETTINGS_OPTION1": "Option 1", 25 | "SETTINGS_OPTION2": "Option 2", 26 | "SETTINGS_OPTION3": "Option 3", 27 | "SETTINGS_OPTION4": "Option 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Modifier le profil", 30 | 31 | "WELCOME_TITLE": "Bienvenue", 32 | 33 | "LOGIN_TITLE": "Connexion", 34 | "LOGIN_ERROR": "Connexion impossible. Veuillez vérifier les informations de votre compte et réessayer.", 35 | "LOGIN_BUTTON": "Connexion", 36 | "SIGNUP_TITLE": "Inscription", 37 | "SIGNUP_ERROR": "Inscription impossible. Veuillez vérifier les informations de votre compte et réessayer.", 38 | "SIGNUP_BUTTON": "Inscription", 39 | 40 | "LIST_MASTER_TITLE": "Items", 41 | 42 | "ITEM_CREATE_TITLE": "Nouvel item", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Ajouter une image", 44 | 45 | "CARDS_TITLE": "Social", 46 | 47 | "SEARCH_TITLE": "Recherche" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/he.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "שם", 3 | "PASSWORD": "סיסמא", 4 | "EMAIL": "דואר אלקטרוני", 5 | "LOGIN": "התחברות", 6 | "SIGNUP": "הרשמה", 7 | 8 | "TAB1_TITLE": "פריטים", 9 | "TAB2_TITLE": "חיפוש", 10 | "TAB3_TITLE": "הגדרות", 11 | 12 | "MAP_TITLE": "מפה", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "ברוכים הבאים ל-Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "ה-Ionic Super Starter הוא Starter מלא בתכונות עם הרבה דפים מוכנים ותרגולים הכי טובים.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "איך להשתמש ב-Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Assemble the various page types you want and remove the ones you don't. We've provided many common mobile app page layouts, like login and signup pages, tabs, and this tutorial page.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "התחלה", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "צריך עזרה? תבדקו את ה-README של ה-Super Starter להדרכה מלאה.", 22 | 23 | "SETTINGS_TITLE": "הגדרות", 24 | "SETTINGS_OPTION1": "אופציה 1", 25 | "SETTINGS_OPTION2": "אופציה 2", 26 | "SETTINGS_OPTION3": "אופציה 3", 27 | "SETTINGS_OPTION4": "אופציה 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "עריכת פרופיל", 30 | 31 | "WELCOME_TITLE": "ברוכים הבאים", 32 | 33 | "LOGIN_TITLE": "התחברות", 34 | "LOGIN_ERROR": "לא ניתן להתחבר. אנא בדוק את פרטי ההתחברות ונסה שנית.", 35 | "LOGIN_BUTTON": "התחבר", 36 | "SIGNUP_TITLE": "הרשמה", 37 | "SIGNUP_ERROR": "לא ניתן ליצור חשבון. אנא בדוק את פרטי ההתחברות ונסה שנית.", 38 | "SIGNUP_BUTTON": "הירשם", 39 | 40 | "LIST_MASTER_TITLE": "פריטים", 41 | 42 | "ITEM_CREATE_TITLE": "פריט חדש", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "הוסף תמונה", 44 | 45 | "CARDS_TITLE": "חברתי", 46 | 47 | "SEARCH_TITLE": "חיפוש" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/ja.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "戻る", 3 | 4 | "NAME": "名前", 5 | "EMAIL": "Eメール", 6 | "USERNAME": "ユーザー名", 7 | "PASSWORD": "パスワード", 8 | "LOGIN": "サインイン", 9 | "SIGNUP": "サインアップ", 10 | 11 | "TAB1_TITLE": "項目", 12 | "TAB2_TITLE": "検索", 13 | "TAB3_TITLE": "設定", 14 | 15 | "MAP_TITLE": "地図", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "スキップ", 18 | "TUTORIAL_CONTINUE_BUTTON": "続ける", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "Ionic Super Starterへようこそ", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": " Ionic Super Starter は、多くのビルド済ページとベストプラクティスを備えた、完全な機能をもつIonicのスターターです。", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "Super Starterの使い方", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "いろいろなページタイプの中から欲しいものを組み合わせて、いらないものを取り除いてください。 ログインページ、サインアップページ、タブ、このチュートリアルページなど、一般的なモバイルアプリのページレイアウトをいろいろと提供しています。", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "はじめに", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "ヘルプが必要ですか?完全なチュートリアルについては、Super Starter READMEを参照してください。", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "準備ができましたか?", 30 | 31 | "WELCOME_INTRO": "あなたのすばらしいIonicアプリの出発点", 32 | 33 | "SETTINGS_TITLE": "設定", 34 | "SETTINGS_OPTION1": "オプション 1", 35 | "SETTINGS_OPTION2": "オプション 2", 36 | "SETTINGS_OPTION3": "オプション 3", 37 | "SETTINGS_OPTION4": "オプション 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "プロフィールの編集", 40 | 41 | "SETTINGS_PAGE_PROFILE": "プロフィールの編集", 42 | 43 | "WELCOME_TITLE": "ようこそ", 44 | 45 | "LOGIN_TITLE": "サインイン", 46 | "LOGIN_ERROR": "サインインできません。アカウント情報を確認して、もう一度お試しください。", 47 | "LOGIN_BUTTON": "サインイン", 48 | "SIGNUP_TITLE": "サインアップ", 49 | "SIGNUP_ERROR": "アカウントを作成できません。 アカウント情報を確認して、もう一度お試しください。", 50 | "SIGNUP_BUTTON": "サインアップ", 51 | 52 | "LIST_MASTER_TITLE": "項目", 53 | 54 | "ITEM_CREATE_TITLE": "新しい項目", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "画像の追加", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "名前", 58 | "ITEM_ABOUT_PLACEHOLDER": "説明", 59 | 60 | "DONE_BUTTON": "完了", 61 | "CANCEL_BUTTON": "キャンセル", 62 | "DELETE_BUTTON": "削除", 63 | 64 | "CARDS_TITLE": "ソーシャル", 65 | 66 | "SEARCH_TITLE": "検索", 67 | "SEARCH_PLACEHOLDER": "項目一覧を検索 例 \"Donald Duck\"" 68 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/nb_NO.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Navn", 3 | "PASSWORD": "Passord", 4 | "EMAIL": "Email", 5 | "LOGIN": "Logg inn", 6 | "SIGNUP": "Registrer deg", 7 | 8 | "TAB1_TITLE": "Innlegg", 9 | "TAB2_TITLE": "Søk", 10 | "TAB3_TITLE": "Innstillinger", 11 | 12 | "MAP_TITLE": "Kart", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Velkommen til Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter er en fullverdig startpakke for Ionic med forhåndslagde undersider utviklet etter beste praksis.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Hvordan bruke Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Ta i bruk undersidene du trenger og fjern de unødvendige. Pakken tilbyr vanlige layouts for mobil-apper slik som innlogging- og registreringssider, faner og denne opplæringssiden.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Kom i gang", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Trenger du hjelp? Les Super Starter README-dokumentet for instruksjoner", 22 | 23 | "SETTINGS_TITLE": "Innstillinger", 24 | "SETTINGS_OPTION1": "Alternativ 1", 25 | "SETTINGS_OPTION2": "Alternativ 2", 26 | "SETTINGS_OPTION3": "Alternativ 3", 27 | "SETTINGS_OPTION4": "Alternativ 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Endre Profil", 30 | 31 | "WELCOME_TITLE": "Velkommen", 32 | 33 | "LOGIN_TITLE": "Innlogging", 34 | "LOGIN_ERROR": "Feil ved innlogging. Bekreft at kontodetaljene er riktig og prøv igjen.", 35 | "LOGIN_BUTTON": "Logg inn", 36 | "SIGNUP_TITLE": "Registrering", 37 | "SIGNUP_ERROR": "Feil ved registrering. Bekreft kontodetaljene og prøv igjen.", 38 | "SIGNUP_BUTTON": "Registrer deg", 39 | 40 | "LIST_MASTER_TITLE": "Innlegg", 41 | 42 | "ITEM_CREATE_TITLE": "Nytt Innlegg", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Legg Til Bilde", 44 | 45 | "CARDS_TITLE": "Sosialt", 46 | 47 | "SEARCH_TITLE": "Søk" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/nl.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Naam", 3 | "PASSWORD": "Wachtwoord", 4 | "EMAIL": "E-mail", 5 | "LOGIN": "Inloggen", 6 | "SIGNUP": "Aanmelden", 7 | 8 | "TAB1_TITLE": "Items", 9 | "TAB2_TITLE": "Zoeken", 10 | "TAB3_TITLE": "Instellingen", 11 | 12 | "MAP_TITLE": "Kaart", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Welkom bij de Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "De Ionic Super Starter biedt een volledig functionele basis voor een Ionic applicatie met veel voorgedefinieëerde pagina's en 'best practices'.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Hoe de Super Starter te gebruiken", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Stel je applicatie samen door pagina's te combineren en verwijder degenen die je niet wil gebruiken. We bieden je verschillende typen mobiele applicatie pagina's, zoals login- en aanmeld pagina's, tabbladen, en deze handleiding pagina.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Beginnen", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Hulp nodig? Check de Super Starter README voor een uitgebreide introductie", 22 | 23 | "SETTINGS_TITLE": "Instellingen", 24 | "SETTINGS_OPTION1": "Optie 1", 25 | "SETTINGS_OPTION2": "Optie 2", 26 | "SETTINGS_OPTION3": "Optie 3", 27 | "SETTINGS_OPTION4": "Optie 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Wijzig Profiel", 30 | 31 | "WELCOME_TITLE": "Welkom", 32 | 33 | "LOGIN_TITLE": "Aanmelden", 34 | "LOGIN_ERROR": "Inloggen mislukt. Controleer a.u.b. uw account informatie en probeer het nogmaals.", 35 | "LOGIN_BUTTON": "Inloggen", 36 | "SIGNUP_TITLE": "Aanmelden", 37 | "SIGNUP_ERROR": "Aanmelden mislukt. Controleer a.u.b. uw account informatie en probeer het nogmaals.", 38 | "SIGNUP_BUTTON": "Aanmelden", 39 | 40 | "LIST_MASTER_TITLE": "Items", 41 | 42 | "ITEM_CREATE_TITLE": "Nieuw Item", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Afbeeldingen Toevoegen", 44 | 45 | "CARDS_TITLE": "Sociaal", 46 | 47 | "SEARCH_TITLE": "Zoeken" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/pl.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Imię", 3 | "PASSWORD": "Hasło", 4 | "EMAIL": "Email", 5 | "LOGIN": "Zaloguj", 6 | "SIGNUP": "Zarejestruj", 7 | 8 | "TAB1_TITLE": "Pozycje", 9 | "TAB2_TITLE": "Szukaj", 10 | "TAB3_TITLE": "Ustawienia", 11 | 12 | "MAP_TITLE": "Mapa", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Witaj w Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter jest w pełni funkcjonalnym początkiem przygody z Ionic'iem, złożonym z wielu predefiniowanych szablonów i najlepszych praktyk programistycznych.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Jak korzystać z Super Startera", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Pozbieraj różne typy stron, które chcesz usunąć, a także te, których nie chcesz. Mamy do zaoferowania wiele wspólnych stron i szablonów mobilnej aplikacji. Są to między innymi: strona logowania, rejestracji, taby, a także ten oto poradnik.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Pierwsze kroki", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Potrzebujesz pomocy? Sprawdź plik README projektu Super Starter dla pełnego poradnika", 22 | 23 | "SETTINGS_TITLE": "Ustawienia", 24 | "SETTINGS_OPTION1": "Opcja 1", 25 | "SETTINGS_OPTION2": "Opcja 2", 26 | "SETTINGS_OPTION3": "Opcja 3", 27 | "SETTINGS_OPTION4": "Opcja 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Edytuj Profil", 30 | 31 | "WELCOME_TITLE": "Witaj", 32 | 33 | "LOGIN_TITLE": "Zaloguj", 34 | "LOGIN_ERROR": "Nie udało się zalogować. Sprawdź raz jeszcze dane swoje konta i spróbuj ponownie.", 35 | "LOGIN_BUTTON": "Zaloguj", 36 | "SIGNUP_TITLE": "Zarejestruj", 37 | "SIGNUP_ERROR": "Nie udało się stworzyć konta. Sprawdź raz jeszcze dane swoje konta i spróbuj ponownie.", 38 | "SIGNUP_BUTTON": "Zarejestruj", 39 | 40 | "LIST_MASTER_TITLE": "Pozycje", 41 | 42 | "ITEM_CREATE_TITLE": "Nowa pozycja", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Dodaj obrazek", 44 | 45 | "CARDS_TITLE": "Społeczność", 46 | 47 | "SEARCH_TITLE": "Szukaj" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/pt-PT.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Nome", 3 | "PASSWORD": "Password", 4 | "EMAIL": "Email", 5 | "LOGIN": "Entrar", 6 | "SIGNUP": "Criar conta", 7 | 8 | "TAB1_TITLE": "Items", 9 | "TAB2_TITLE": "Pesquisa", 10 | "TAB3_TITLE": "Configurações", 11 | 12 | "MAP_TITLE": "Mapa", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Bem-vindo ao Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "O Ionic Super Starter é um pacote Ionic com várias páginas prontas e exemplos de boas práticas.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Como usar o Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Combine os vários tipos de página que quer usar e remova as desnecessárias. Nós disponibilizamos vários layouts mobile comuns, como páginas de login e registo, tabs, e esta página de tutorial.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Como começar", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Precisa de ajuda? Para um tutorial completo leia o README do Super Starter", 22 | 23 | "SETTINGS_TITLE": "Configurações", 24 | "SETTINGS_OPTION1": "Opção 1", 25 | "SETTINGS_OPTION2": "Opção 2", 26 | "SETTINGS_OPTION3": "Opção 3", 27 | "SETTINGS_OPTION4": "Opção 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Editar Perfil", 30 | 31 | "WELCOME_TITLE": "Bem-vindo", 32 | 33 | "LOGIN_TITLE": "Entrar", 34 | "LOGIN_ERROR": "Não foi possível entrar na sua conta. Por favor confirme os seus dados e tente novamente.", 35 | "LOGIN_BUTTON": "Entrar", 36 | "SIGNUP_TITLE": "Criar conta", 37 | "SIGNUP_ERROR": "Não foi possível criar a sua conta. Por favor confirme os seus dados e tente novamente.", 38 | "SIGNUP_BUTTON": "Criar conta", 39 | 40 | "LIST_MASTER_TITLE": "Items", 41 | 42 | "ITEM_CREATE_TITLE": "Novo Item", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Adicionar Imagem", 44 | 45 | "CARDS_TITLE": "Social", 46 | 47 | "SEARCH_TITLE": "Pesquisa" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/pt-br.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "Voltar", 3 | 4 | "NAME": "Nome", 5 | "EMAIL": "Email", 6 | "USERNAME": "Nome de Usuário", 7 | "PASSWORD": "Senha", 8 | "LOGIN": "Entrar", 9 | "SIGNUP": "Cadastre-se", 10 | 11 | "TAB1_TITLE": "Itens", 12 | "TAB2_TITLE": "Busca", 13 | "TAB3_TITLE": "Configurações", 14 | 15 | "MAP_TITLE": "Mapa", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "Pular", 18 | "TUTORIAL_CONTINUE_BUTTON": "Continuar", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "Bem-vindo ao Ionic Super Starter", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": "O Ionic Super Starter é um starter para Ionic completo, com diversos componentes e páginas prontas para ser utilizado como guia de melhores práticas.", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "Como utilizar o Super Starter", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "Combine os tipos de páginas que você quer e remova aquelas que não precisa. No starter existem muitos casos de uso comuns de layouts e páginas como login, cadastro, abas e de tutorial.", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "Iniciando o projeto", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "Precisa de ajuda? Dê uma olhada no README do Super Starter para um tutorial completo", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "Pronto para Usar?", 30 | 31 | "WELCOME_INTRO": "O ponto de partida para seu próximo app feito no Ionic", 32 | 33 | "SETTINGS_TITLE": "Configurações", 34 | "SETTINGS_OPTION1": "Opção 1", 35 | "SETTINGS_OPTION2": "Opção 2", 36 | "SETTINGS_OPTION3": "Opção 3", 37 | "SETTINGS_OPTION4": "Opção 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "Editar Perfil", 40 | 41 | "SETTINGS_PAGE_PROFILE": "Editar Perfil", 42 | 43 | "WELCOME_TITLE": "Bem-vindo", 44 | 45 | "LOGIN_TITLE": "Entrar", 46 | "LOGIN_ERROR": "Não foi possível entrar na sua conta. Verifique seus dados e tente novamente.", 47 | "LOGIN_BUTTON": "Entrar", 48 | "SIGNUP_TITLE": "Cadastre-se", 49 | "SIGNUP_ERROR": "Não foi possível criar sua conta. Verifique seus dados e tente novamente.", 50 | "SIGNUP_BUTTON": "Cadastre-se", 51 | 52 | "LIST_MASTER_TITLE": "Itens", 53 | 54 | "ITEM_CREATE_TITLE": "Novo Item", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "Adicionar Imagem", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "Nome", 58 | "ITEM_ABOUT_PLACEHOLDER": "Sobre", 59 | 60 | "DONE_BUTTON": "Pronto", 61 | "CANCEL_BUTTON": "Cancelar", 62 | "DELETE_BUTTON": "Apagar", 63 | 64 | "CARDS_TITLE": "Social", 65 | 66 | "SEARCH_TITLE": "Busca", 67 | "SEARCH_PLACEHOLDER": "Procure um item da lista, ex: \"Donald Duck\"" 68 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/ru.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Имя", 3 | "PASSWORD": "Пароль", 4 | "EMAIL": "Email", 5 | "LOGIN": "Вход", 6 | "SIGNUP": "Регистрация", 7 | 8 | "TAB1_TITLE": "Список", 9 | "TAB2_TITLE": "Поиск", 10 | "TAB3_TITLE": "Настройки", 11 | 12 | "MAP_TITLE": "Карта", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Добро пожаловать в Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter это полноценный набор примеров Ionic с большим количеством готовых страниц и лучших практик.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Как использовать Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Сделайте свой набор из многочисленных страниц разного типа. Все лишнее можете выкинуть. Мы предоставили много типовых макетов страниц мобильных приложений, таких как страницы регистрации, вкладки, и страницы с руководством, наподобие этой.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Начало работы", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Нужна помощь? Вы найдете полное руководство к Super Starter в файле README", 22 | 23 | "SETTINGS_TITLE": "Настройки", 24 | "SETTINGS_OPTION1": "Опция 1", 25 | "SETTINGS_OPTION2": "Опция 2", 26 | "SETTINGS_OPTION3": "Опция 3", 27 | "SETTINGS_OPTION4": "Опция 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Редактирование профиля", 30 | 31 | "WELCOME_TITLE": "Добро пожаловать", 32 | 33 | "LOGIN_TITLE": "Вход", 34 | "LOGIN_ERROR": "Невозможно войти. Пожалуйста проверьте информацию о Вашей учетной записи и попробуйте войти еще раз.", 35 | "LOGIN_BUTTON": "Войти", 36 | "SIGNUP_TITLE": "Регистрация", 37 | "SIGNUP_ERROR": "Невозможно создать учетную запись. Пожалуйста проверьте информацию о Вашей учетной записи и попробуйте еще раз.", 38 | "SIGNUP_BUTTON": "Регистрация", 39 | 40 | "LIST_MASTER_TITLE": "Список", 41 | 42 | "ITEM_CREATE_TITLE": "Новый элемент", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Добавить изображение", 44 | 45 | "CARDS_TITLE": "Социальный", 46 | 47 | "SEARCH_TITLE": "Поиск" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/sl.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Ime", 3 | "PASSWORD": "Geslo", 4 | "EMAIL": "E-mail", 5 | "LOGIN": "Prijava", 6 | "SIGNUP": "Ustvari račun", 7 | 8 | "TAB1_TITLE": "Elementi", 9 | "TAB2_TITLE": "Iskanje", 10 | "TAB3_TITLE": "Nastavitve", 11 | 12 | "MAP_TITLE": "Zemljevid", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Dobrodošli v Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter je celosten Ionic začetni paket z pestrim naborom funkcionalnosti in uporablja najboljše prakse razvoja Ionic aplikacij.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Kako uporabljati Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Sestavite poljubne tipe strani in odstranite tiste, ki jih ne potrebujete. Ponujamo vam mnogo različnih oblik strani, npr. stran za prijavo oz. vpis, stran z zavihki in stran tega vodiča.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Kako začeti?", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Potrebujete pomoč? Poglejte si Super Starter README datoteko za celoten vodič.", 22 | 23 | "SETTINGS_TITLE": "Nastavitve", 24 | "SETTINGS_OPTION1": "Opcija 1", 25 | "SETTINGS_OPTION2": "Opcija 2", 26 | "SETTINGS_OPTION3": "Opcija 3", 27 | "SETTINGS_OPTION4": "Opcija 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Uredi profil", 30 | 31 | "WELCOME_TITLE": "Dobrodošli", 32 | 33 | "LOGIN_TITLE": "Prijava", 34 | "LOGIN_ERROR": "Napaka pri prijavi. Prosimo preglejte prijavne podatke računa in poskusite ponovno.", 35 | "LOGIN_BUTTON": "Prijava", 36 | "SIGNUP_TITLE": "Ustvari račun", 37 | "SIGNUP_ERROR": "Napaka pri kreiranju računa. Prosimo preglejte podatke kreiranega računa in poskusite ponovno. ", 38 | "SIGNUP_BUTTON": "Ustvari račun", 39 | 40 | "LIST_MASTER_TITLE": "Elementi", 41 | 42 | "ITEM_CREATE_TITLE": "Dodaj element", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Dodaj sliko", 44 | 45 | "CARDS_TITLE": "Socialno", 46 | 47 | "SEARCH_TITLE": "Iskanje" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/sv.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Namn", 3 | "PASSWORD": "Lösenord", 4 | "EMAIL": "E-post", 5 | "LOGIN": "Logga in", 6 | "SIGNUP": "Skapa konto", 7 | 8 | "TAB1_TITLE": "Inlägg", 9 | "TAB2_TITLE": "Sök", 10 | "TAB3_TITLE": "Inställningar", 11 | 12 | "MAP_TITLE": "Karta", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Välkommen till Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter är ett fullfjädrat startpaket för Ionic med många färdigbyggda sidor skapade med bästa praxis.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Hur man använder Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Använd de sidor du önskar och ta bort de övriga. Startpaketet innehåller många vanliga vyer för mobilappar, såsom inloggning och kontoregistrering, flikar och denna introduktionsvy.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Komma igång", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Behöver du hjälp? Läs README-dokumentet som innehåller en fullständig handledning för Super Starter.", 22 | 23 | "SETTINGS_TITLE": "Inställningar", 24 | "SETTINGS_OPTION1": "Alternativ 1", 25 | "SETTINGS_OPTION2": "Alternativ 2", 26 | "SETTINGS_OPTION3": "Alternativ 3", 27 | "SETTINGS_OPTION4": "Alternativ 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Redigera profil", 30 | 31 | "WELCOME_TITLE": "Välkommen", 32 | 33 | "LOGIN_TITLE": "Logga in", 34 | "LOGIN_ERROR": "Det gick inte att logga in. Kontrollera inloggningsuppgifterna och försök igen.", 35 | "LOGIN_BUTTON": "Logga in", 36 | "SIGNUP_TITLE": "Skapa konto", 37 | "SIGNUP_ERROR": "Det gick inte att skapa ett konto. Kontrollera dina uppgifter och försök igen.", 38 | "SIGNUP_BUTTON": "Skapa konto", 39 | 40 | "LIST_MASTER_TITLE": "Inlägg", 41 | 42 | "ITEM_CREATE_TITLE": "Nytt inlägg", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Lägg till bild", 44 | 45 | "CARDS_TITLE": "Socialt", 46 | 47 | "SEARCH_TITLE": "Sök" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/th.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "ชื่อ", 3 | "PASSWORD": "รหัสผ่าน", 4 | "EMAIL": "อีเมล์", 5 | "LOGIN": "เข้าระบบ", 6 | "SIGNUP": "สมัครใช้งาน", 7 | 8 | "TAB1_TITLE": "รายการ", 9 | "TAB2_TITLE": "ค้นหา", 10 | "TAB3_TITLE": "ตั้งค่า", 11 | 12 | "MAP_TITLE": "แผนที่", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "ยินดีต้อนรับสู่ the Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "The Ionic Super Starter คือโปรเจคเริ่มต้น Ionic ที่มีหน้าจอพร้อมใช้งานและเขียนแบบ Best practices", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "วิธีใช้ Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "เก็บหน้าจอแบบที่ใช้ไว้ ลบที่ไม่ใช้ออก เราเตรียมหน้าจอที่ใช้กันประจำสำหรับแอพมือถือไว้ให้ เช่น หน้าล็อกอิน, หน้าสมัครใช้งาน, แทบ, และหน้าสอนใช้งานนี้", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "เริ่มต้นใช้งาน", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "ต้องการความช่วยเหลือ? ลองอ่าน tutorial ฉบับเต็มจากไฟล์ README", 22 | 23 | "SETTINGS_TITLE": "ตั้งค่า", 24 | "SETTINGS_OPTION1": "ตัวเลือก 1", 25 | "SETTINGS_OPTION2": "ตัวเลือก 2", 26 | "SETTINGS_OPTION3": "ตัวเลือก 3", 27 | "SETTINGS_OPTION4": "ตัวเลือก 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "แก้ไขข้อมูลส่วนตัว", 30 | 31 | "WELCOME_TITLE": "ยินดีต้อนรับ", 32 | 33 | "LOGIN_TITLE": "การเข้าระบบ", 34 | "LOGIN_ERROR": "เข้าระบบไม่ได้. ตรวจสอบข้อมูลที่กรอกแล้วกรุณาลองใหม่", 35 | "LOGIN_BUTTON": "เข้าระบบ", 36 | "SIGNUP_TITLE": "สมัครใช้งาน", 37 | "SIGNUP_ERROR": "ไม่สามารถสร้างผู้ใช้ใหม่ กรุณาตรวจสอบข้อมูลที่กรอกแล้วลองใหม่", 38 | "SIGNUP_BUTTON": "สมัคร", 39 | "LIST_MASTER_TITLE": "รายการ", 40 | 41 | "ITEM_CREATE_TITLE": "รายการใหม่", 42 | "ITEM_CREATE_CHOOSE_IMAGE": "เพิ่มรูปภาพ", 43 | 44 | "CARDS_TITLE": "โซเชียลเน็ตเวิร์ค", 45 | 46 | "SEARCH_TITLE": "ค้นหา" 47 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/tr.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "Geri", 3 | 4 | "NAME": "İsim", 5 | "PASSWORD": "Şifre", 6 | "EMAIL": "Email", 7 | "LOGIN": "Giriş yap", 8 | "SIGNUP": "Kayıt ol", 9 | "TAB1_TITLE": "Öğeler", 10 | "TAB2_TITLE": "Arama", 11 | "TAB3_TITLE": "Ayarlar", 12 | "MAP_TITLE": "Harita", 13 | "TUTORIAL_SLIDE1_TITLE": "Ionic Super Starter'a Hoşgeldin", 14 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter hazırlanmış sayfalar ve çok iyi örneklerle tam donanımlı bir başlangıç paketidir.", 15 | "TUTORIAL_SLIDE2_TITLE": "Super Starter Nasıl Kullanılır?", 16 | "TUTORIAL_SLIDE2_DESCRIPTION": "İstediğiniz çeşitte sayfa oluşturun ya da istemediklerinizi kaldırın. Biz sadece giriş ve kayıt sayfası, tab gibi yaygın sayfaları ve bu anlatım sayfasını hazırladık.", 17 | "TUTORIAL_SLIDE3_TITLE": "Başlangıç", 18 | "TUTORIAL_SLIDE3_DESCRIPTION": "Yardım mı lazım? Super Starter README dosyasını inceleyebilirsin.", 19 | "SETTINGS_TITLE": "Ayarlar", 20 | "SETTINGS_OPTION1": "Seçenek 1", 21 | "SETTINGS_OPTION2": "Seçenek 2", 22 | "SETTINGS_OPTION3": "Seçenek 3", 23 | "SETTINGS_OPTION4": "Seçenek 4", 24 | "SETTINGS_PAGE_PROFILE": "Profilini Düzenle", 25 | "WELCOME_TITLE": "Hoşgeldiniz", 26 | "LOGIN_TITLE": "Giriş yap", 27 | "LOGIN_ERROR": "Giriş yapılamadı. Lütfen hesap bilgilerinizi kontrol edip tekrar deneyin.", 28 | "LOGIN_BUTTON": "Giriş yap", 29 | "SIGNUP_TITLE": "Kayıt ol", 30 | "SIGNUP_ERROR": "Hesap oluşturulamadı. Lütfen hesap bilgilerinizi kontrol edip tekrar deneyin.", 31 | "SIGNUP_BUTTON": "Kayıt ol", 32 | "LIST_MASTER_TITLE": "Öğeler", 33 | "ITEM_CREATE_TITLE": "Yeni Öğe", 34 | "ITEM_CREATE_CHOOSE_IMAGE": "Yeni Görsel", 35 | "CARDS_TITLE": "Sosyal", 36 | "SEARCH_TITLE": "Arama" 37 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/ua.json: -------------------------------------------------------------------------------- 1 | { 2 | "NAME": "Ім'я", 3 | "PASSWORD": "Пароль", 4 | "EMAIL": "Email", 5 | "LOGIN": "Вхід", 6 | "SIGNUP": "Реєстрація", 7 | 8 | "TAB1_TITLE": "Список", 9 | "TAB2_TITLE": "Пошук", 10 | "TAB3_TITLE": "Налаштування", 11 | 12 | "MAP_TITLE": "Мапа", 13 | 14 | "TUTORIAL_SLIDE1_TITLE": "Ласкаво просимо до Ionic Super Starter", 15 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter це повноцінний набір прикладів для Ionic з великою кількістю готових сторінок та кращих практик.", 16 | 17 | "TUTORIAL_SLIDE2_TITLE": "Як використовувати Super Starter", 18 | "TUTORIAL_SLIDE2_DESCRIPTION": "Створіть власний набір зі численних сторінок різного типу. Усе зайве можете викинути. Ми підготували багато типових макетів сторінок мобільних додатків, таких як сторінки входу та реєстрації, вкладки та сторінки-приклади, як ця.", 19 | 20 | "TUTORIAL_SLIDE3_TITLE": "Початок роботи", 21 | "TUTORIAL_SLIDE3_DESCRIPTION": "Потрібна допомога? Ви знайдете повноцінну інструкцию до Super Starter у файлі README", 22 | 23 | "SETTINGS_TITLE": "Налаштування", 24 | "SETTINGS_OPTION1": "Варіант 1", 25 | "SETTINGS_OPTION2": "Варіант 2", 26 | "SETTINGS_OPTION3": "Варіант 3", 27 | "SETTINGS_OPTION4": "Варіант 4", 28 | 29 | "SETTINGS_PAGE_PROFILE": "Редагування профілю", 30 | 31 | "WELCOME_TITLE": "Ласкаво просимо", 32 | 33 | "LOGIN_TITLE": "Вхід", 34 | "LOGIN_ERROR": "Неможливо увійти. Будь ласка перевірте інформацію Вашого облікового запису та спробуйте увійти ще раз.", 35 | "LOGIN_BUTTON": "Увійти", 36 | "SIGNUP_TITLE": "Реєстрація", 37 | "SIGNUP_ERROR": "Неможливо створити обліковий запис. Будь ласка перевірте інформацію Вашого облікового запису та спробуйте ще раз.", 38 | "SIGNUP_BUTTON": "Зареєструвати", 39 | 40 | "LIST_MASTER_TITLE": "Список", 41 | 42 | "ITEM_CREATE_TITLE": "Новий елемент", 43 | "ITEM_CREATE_CHOOSE_IMAGE": "Додати зображення", 44 | 45 | "CARDS_TITLE": "Соціальний", 46 | 47 | "SEARCH_TITLE": "Пошук" 48 | } -------------------------------------------------------------------------------- /test/src/assets/i18n/zh-cmn-Hans.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "回退", 3 | 4 | "NAME": "姓名", 5 | "EMAIL": "邮箱", 6 | "USERNAME": "登录名", 7 | "PASSWORD": "口令", 8 | "LOGIN": "登 录", 9 | "SIGNUP": "注 册", 10 | 11 | "TAB1_TITLE": "项目", 12 | "TAB2_TITLE": "搜索", 13 | "TAB3_TITLE": "设置", 14 | 15 | "MAP_TITLE": "地图", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "跳过", 18 | "TUTORIAL_CONTINUE_BUTTON": "继续", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "欢迎来到 Ionic Super Starter", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter 是一个功能全面,内置多个页面以及最佳实践的 Ionic 入门教程。", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "如何使用 Super 入门教程", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "使用你需要的多种多样的页面删除你不需要的页面。我们提供许多常见移动 app 页面,如登录、注册页面,tabs 标签页,以及本教程页面。", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "开始", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "需要帮助?查看 Super 入门教程的帮助文档,可获得完整教程。", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "开始学习?", 30 | 31 | "WELCOME_INTRO": "出发,你的下一个强大的 Ionic app", 32 | 33 | "SETTINGS_TITLE": "设置", 34 | "SETTINGS_OPTION1": "选项 1", 35 | "SETTINGS_OPTION2": "选项 2", 36 | "SETTINGS_OPTION3": "选项 3", 37 | "SETTINGS_OPTION4": "选项 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "编辑资料", 40 | 41 | "SETTINGS_PAGE_PROFILE": "编辑资料", 42 | 43 | "WELCOME_TITLE": "欢迎", 44 | 45 | "LOGIN_TITLE": "登录", 46 | "LOGIN_ERROR": "无法登录。请检查账号信息然后重试。", 47 | "LOGIN_BUTTON": "登 录", 48 | "SIGNUP_TITLE": "注 册", 49 | "SIGNUP_ERROR": "无法创建账号。请检查账户信息然后重试。", 50 | "SIGNUP_BUTTON": "注 册", 51 | 52 | "LIST_MASTER_TITLE": "项目", 53 | 54 | "ITEM_CREATE_TITLE": "新项目", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "添加图片", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "名称", 58 | "ITEM_ABOUT_PLACEHOLDER": "关于", 59 | 60 | "DONE_BUTTON": "完 成", 61 | "CANCEL_BUTTON": "取 消", 62 | "DELETE_BUTTON": "删 除", 63 | 64 | "CARDS_TITLE": "社交", 65 | 66 | "SEARCH_TITLE": "搜索", 67 | "SEARCH_PLACEHOLDER": "搜索项目列表, 比如:\"Donald Duck\"" 68 | } 69 | -------------------------------------------------------------------------------- /test/src/assets/i18n/zh-cmn-Hant.json: -------------------------------------------------------------------------------- 1 | { 2 | "BACK_BUTTON_TEXT": "回退", 3 | 4 | "NAME": "姓名", 5 | "EMAIL": "郵箱", 6 | "USERNAME": "登錄名", 7 | "PASSWORD": "口令", 8 | "LOGIN": "登 錄", 9 | "SIGNUP": "註 冊", 10 | 11 | "TAB1_TITLE": "項目", 12 | "TAB2_TITLE": "搜索", 13 | "TAB3_TITLE": "設置", 14 | 15 | "MAP_TITLE": "地圖", 16 | 17 | "TUTORIAL_SKIP_BUTTON": "跳過", 18 | "TUTORIAL_CONTINUE_BUTTON": "繼續", 19 | 20 | "TUTORIAL_SLIDE1_TITLE": "歡迎來到 Ionic Super Starter", 21 | "TUTORIAL_SLIDE1_DESCRIPTION": "Ionic Super Starter 是一個功能全面,內置多個頁面以及最佳實踐的 Ionic 入門教程。", 22 | 23 | "TUTORIAL_SLIDE2_TITLE": "如何使用 Super 入門教程", 24 | "TUTORIAL_SLIDE2_DESCRIPTION": "使用你需要的多種多樣的頁面刪除你不需要的頁面。我們提供許多常見移動 app 頁面,如登錄、註冊頁面,tabs 標簽頁,以及本教程頁面。", 25 | 26 | "TUTORIAL_SLIDE3_TITLE": "開始", 27 | "TUTORIAL_SLIDE3_DESCRIPTION": "需要幫助?查看 Super 入門教程的幫助文檔,可獲得完整教程。", 28 | 29 | "TUTORIAL_SLIDE4_TITLE": "開始學習?", 30 | 31 | "WELCOME_INTRO": "出發,你的下一個強大的 Ionic app", 32 | 33 | "SETTINGS_TITLE": "設置", 34 | "SETTINGS_OPTION1": "選項 1", 35 | "SETTINGS_OPTION2": "選項 2", 36 | "SETTINGS_OPTION3": "選項 3", 37 | "SETTINGS_OPTION4": "選項 4", 38 | 39 | "SETTINGS_PROFILE_BUTTON": "編輯資料", 40 | 41 | "SETTINGS_PAGE_PROFILE": "編輯資料", 42 | 43 | "WELCOME_TITLE": "歡迎", 44 | 45 | "LOGIN_TITLE": "登錄", 46 | "LOGIN_ERROR": "無法登錄。請檢查賬號信息然後重試。", 47 | "LOGIN_BUTTON": "登 錄", 48 | "SIGNUP_TITLE": "註 冊", 49 | "SIGNUP_ERROR": "無法創建賬號。請檢查賬戶信息然後重試。", 50 | "SIGNUP_BUTTON": "註 冊", 51 | 52 | "LIST_MASTER_TITLE": "項目", 53 | 54 | "ITEM_CREATE_TITLE": "新項目", 55 | "ITEM_CREATE_CHOOSE_IMAGE": "添加圖片", 56 | 57 | "ITEM_NAME_PLACEHOLDER": "名稱", 58 | "ITEM_ABOUT_PLACEHOLDER": "關於", 59 | 60 | "DONE_BUTTON": "完 成", 61 | "CANCEL_BUTTON": "取 消", 62 | "DELETE_BUTTON": "刪 除", 63 | 64 | "CARDS_TITLE": "社交", 65 | 66 | "SEARCH_TITLE": "搜索", 67 | "SEARCH_PLACEHOLDER": "搜索項目列表, 例如:\"Donald Duck\"" 68 | } 69 | -------------------------------------------------------------------------------- /test/src/assets/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/icon/favicon.ico -------------------------------------------------------------------------------- /test/src/assets/img/advance-card-bttf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/advance-card-bttf.png -------------------------------------------------------------------------------- /test/src/assets/img/advance-card-jp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/advance-card-jp.jpg -------------------------------------------------------------------------------- /test/src/assets/img/advance-card-tmntr.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/advance-card-tmntr.jpg -------------------------------------------------------------------------------- /test/src/assets/img/appicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/appicon.png -------------------------------------------------------------------------------- /test/src/assets/img/badu-live.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/badu-live.png -------------------------------------------------------------------------------- /test/src/assets/img/bjork-live.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/bjork-live.jpg -------------------------------------------------------------------------------- /test/src/assets/img/ian-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/ian-avatar.png -------------------------------------------------------------------------------- /test/src/assets/img/ica-slidebox-img-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/ica-slidebox-img-1.png -------------------------------------------------------------------------------- /test/src/assets/img/ica-slidebox-img-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/ica-slidebox-img-2.png -------------------------------------------------------------------------------- /test/src/assets/img/ica-slidebox-img-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/ica-slidebox-img-3.png -------------------------------------------------------------------------------- /test/src/assets/img/ica-slidebox-img-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/ica-slidebox-img-4.png -------------------------------------------------------------------------------- /test/src/assets/img/marty-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/marty-avatar.png -------------------------------------------------------------------------------- /test/src/assets/img/nin-live.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/nin-live.png -------------------------------------------------------------------------------- /test/src/assets/img/queen-live.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/queen-live.png -------------------------------------------------------------------------------- /test/src/assets/img/rundmc-live.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/rundmc-live.png -------------------------------------------------------------------------------- /test/src/assets/img/sarah-avatar.png.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/sarah-avatar.png.jpeg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/bear.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/bear.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/cheetah.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/cheetah.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/duck.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/duck.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/eagle.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/eagle.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/elephant.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/elephant.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/giraffe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/giraffe.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/iguana.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/iguana.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/kitten.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/kitten.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/lion.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/lion.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/mouse.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/mouse.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/puppy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/puppy.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/rabbit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/rabbit.jpg -------------------------------------------------------------------------------- /test/src/assets/img/speakers/turtle.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/speakers/turtle.jpg -------------------------------------------------------------------------------- /test/src/assets/img/splashbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/img/splashbg.png -------------------------------------------------------------------------------- /test/src/assets/imgs/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hzlshen/Exercise/8cc015c1de874290c24dad56e5adbaf9b98e66be/test/src/assets/imgs/logo.png -------------------------------------------------------------------------------- /test/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Ionic App 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /test/src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ionic", 3 | "short_name": "Ionic", 4 | "start_url": "index.html", 5 | "display": "standalone", 6 | "icons": [{ 7 | "src": "assets/imgs/logo.png", 8 | "sizes": "512x512", 9 | "type": "image/png" 10 | }], 11 | "background_color": "#4e8ef7", 12 | "theme_color": "#4e8ef7" 13 | } -------------------------------------------------------------------------------- /test/src/mocks/providers/items.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | 3 | import { Item } from '../../models/item'; 4 | 5 | @Injectable() 6 | export class Items { 7 | items: Item[] = []; 8 | 9 | defaultItem: any = { 10 | "name": "Burt Bear", 11 | "profilePic": "assets/img/speakers/bear.jpg", 12 | "about": "Burt is a Bear.", 13 | }; 14 | 15 | 16 | constructor() { 17 | let items = [ 18 | { 19 | "name": "Burt Bear", 20 | "profilePic": "assets/img/speakers/bear.jpg", 21 | "about": "Burt is a Bear." 22 | }, 23 | { 24 | "name": "Charlie Cheetah", 25 | "profilePic": "assets/img/speakers/cheetah.jpg", 26 | "about": "Charlie is a Cheetah." 27 | }, 28 | { 29 | "name": "Donald Duck", 30 | "profilePic": "assets/img/speakers/duck.jpg", 31 | "about": "Donald is a Duck." 32 | }, 33 | { 34 | "name": "Eva Eagle", 35 | "profilePic": "assets/img/speakers/eagle.jpg", 36 | "about": "Eva is an Eagle." 37 | }, 38 | { 39 | "name": "Ellie Elephant", 40 | "profilePic": "assets/img/speakers/elephant.jpg", 41 | "about": "Ellie is an Elephant." 42 | }, 43 | { 44 | "name": "Molly Mouse", 45 | "profilePic": "assets/img/speakers/mouse.jpg", 46 | "about": "Molly is a Mouse." 47 | }, 48 | { 49 | "name": "Paul Puppy", 50 | "profilePic": "assets/img/speakers/puppy.jpg", 51 | "about": "Paul is a Puppy." 52 | } 53 | ]; 54 | 55 | for (let item of items) { 56 | this.items.push(new Item(item)); 57 | } 58 | } 59 | 60 | query(params?: any) { 61 | if (!params) { 62 | return this.items; 63 | } 64 | 65 | return this.items.filter((item) => { 66 | for (let key in params) { 67 | let field = item[key]; 68 | if (typeof field == 'string' && field.toLowerCase().indexOf(params[key].toLowerCase()) >= 0) { 69 | return item; 70 | } else if (field == params[key]) { 71 | return item; 72 | } 73 | } 74 | return null; 75 | }); 76 | } 77 | 78 | add(item: Item) { 79 | this.items.push(item); 80 | } 81 | 82 | delete(item: Item) { 83 | this.items.splice(this.items.indexOf(item), 1); 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /test/src/models/item.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * A generic model that our Master-Detail pages list, create, and delete. 3 | * 4 | * Change "Item" to the noun your app will use. For example, a "Contact," or a 5 | * "Customer," or a "Animal," or something like that. 6 | * 7 | * The Items service manages creating instances of Item, so go ahead and rename 8 | * that something that fits your app as well. 9 | */ 10 | export class Item { 11 | 12 | constructor(fields: any) { 13 | // Quick and dirty extend/assign fields to this model 14 | for (const f in fields) { 15 | // @ts-ignore 16 | this[f] = fields[f]; 17 | } 18 | } 19 | 20 | } 21 | 22 | export interface Item { 23 | [prop: string]: any; 24 | } 25 | -------------------------------------------------------------------------------- /test/src/pages/README.md: -------------------------------------------------------------------------------- 1 | # Pages 2 | 3 | Each page type available has a corresponding README, take a look by navigating to a page directory above. 4 | -------------------------------------------------------------------------------- /test/src/pages/cards/README.md: -------------------------------------------------------------------------------- 1 | # Cards 2 | 3 | The Cards page is a common cards-based layout as seen in such apps as Facebook. 4 | -------------------------------------------------------------------------------- /test/src/pages/cards/cards.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'CARDS_TITLE' | translate }} 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |

{{item.user.name}}

19 |

{{item.date}}

20 |
21 | 22 | 23 | 24 | 25 |

{{item.content}}

26 |
27 | 28 | 29 | 30 | 34 | 35 | 36 | 40 | 41 | 42 | 43 | 11h ago 44 | 45 | 46 | 47 |
48 |
-------------------------------------------------------------------------------- /test/src/pages/cards/cards.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { CardsPage } from './cards'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | CardsPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(CardsPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | CardsPage 17 | ] 18 | }) 19 | export class CardsPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/cards/cards.scss: -------------------------------------------------------------------------------- 1 | page-cards { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/cards/cards.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, NavController } from 'ionic-angular'; 3 | 4 | @IonicPage() 5 | @Component({ 6 | selector: 'page-cards', 7 | templateUrl: 'cards.html' 8 | }) 9 | export class CardsPage { 10 | cardItems: any[]; 11 | 12 | constructor(public navCtrl: NavController) { 13 | this.cardItems = [ 14 | { 15 | user: { 16 | avatar: 'assets/img/marty-avatar.png', 17 | name: 'Marty McFly' 18 | }, 19 | date: 'November 5, 1955', 20 | image: 'assets/img/advance-card-bttf.png', 21 | content: 'Wait a minute. Wait a minute, Doc. Uhhh... Are you telling me that you built a time machine... out of a DeLorean?! Whoa. This is heavy.', 22 | }, 23 | { 24 | user: { 25 | avatar: 'assets/img/sarah-avatar.png.jpeg', 26 | name: 'Sarah Connor' 27 | }, 28 | date: 'May 12, 1984', 29 | image: 'assets/img/advance-card-tmntr.jpg', 30 | content: 'I face the unknown future, with a sense of hope. Because if a machine, a Terminator, can learn the value of human life, maybe we can too.' 31 | }, 32 | { 33 | user: { 34 | avatar: 'assets/img/ian-avatar.png', 35 | name: 'Dr. Ian Malcolm' 36 | }, 37 | date: 'June 28, 1990', 38 | image: 'assets/img/advance-card-jp.jpg', 39 | content: 'Your scientists were so preoccupied with whether or not they could, that they didn\'t stop to think if they should.' 40 | } 41 | ]; 42 | 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /test/src/pages/content/README.md: -------------------------------------------------------------------------------- 1 | # Content 2 | 3 | The content page is a simple page meant for text content. 4 | -------------------------------------------------------------------------------- /test/src/pages/content/content.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Content 5 | 6 | 7 | 8 | 9 | 10 |

11 | This is a perfect starting point for a page with primarily text content. The body is padded nicely and ready for prose. 12 |

13 |
-------------------------------------------------------------------------------- /test/src/pages/content/content.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { ContentPage } from './content'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | ContentPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(ContentPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | ContentPage 17 | ] 18 | }) 19 | export class ContentPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/content/content.scss: -------------------------------------------------------------------------------- 1 | page-home { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/content/content.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, NavController } from 'ionic-angular'; 3 | 4 | @IonicPage() 5 | @Component({ 6 | selector: 'page-content', 7 | templateUrl: 'content.html' 8 | }) 9 | export class ContentPage { 10 | 11 | constructor(public navCtrl: NavController) { } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /test/src/pages/item-create/README.md: -------------------------------------------------------------------------------- 1 | # Item Create 2 | 3 | The Item Create Page creates new instances of `Item`, and will most commonly be used in a modal window to be presented by `ListMasterPage`. 4 | -------------------------------------------------------------------------------- /test/src/pages/item-create/item-create.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'ITEM_CREATE_TITLE' | translate }} 5 | 6 | 12 | 13 | 14 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 |
30 |
31 | 32 |
33 | {{ 'ITEM_CREATE_CHOOSE_IMAGE' | translate }} 34 |
35 |
36 |
37 |
38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 |
47 |
-------------------------------------------------------------------------------- /test/src/pages/item-create/item-create.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { ItemCreatePage } from './item-create'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | ItemCreatePage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(ItemCreatePage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | ItemCreatePage 17 | ] 18 | }) 19 | export class ItemCreatePageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/item-create/item-create.scss: -------------------------------------------------------------------------------- 1 | page-item-create { 2 | .profile-image-wrapper { 3 | text-align: center; 4 | margin: 20px 0; 5 | 6 | .profile-image { 7 | width: 96px; 8 | height: 96px; 9 | border-radius: 50%; 10 | 11 | display: inline-block; 12 | 13 | background-repeat: no-repeat; 14 | background-size: cover; 15 | background-position: center; 16 | } 17 | 18 | .profile-image-placeholder { 19 | display: inline-block; 20 | 21 | background-color: #eee; 22 | width: 96px; 23 | height: 96px; 24 | border-radius: 50%; 25 | 26 | font-size: 12px; 27 | 28 | ion-icon { 29 | font-size: 44px; 30 | margin-bottom: -10px; 31 | margin-top: 10px; 32 | } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /test/src/pages/item-create/item-create.ts: -------------------------------------------------------------------------------- 1 | import { Component, ViewChild } from '@angular/core'; 2 | import { FormBuilder, FormGroup, Validators } from '@angular/forms'; 3 | import { Camera } from '@ionic-native/camera'; 4 | import { IonicPage, NavController, ViewController } from 'ionic-angular'; 5 | 6 | @IonicPage() 7 | @Component({ 8 | selector: 'page-item-create', 9 | templateUrl: 'item-create.html' 10 | }) 11 | export class ItemCreatePage { 12 | @ViewChild('fileInput') fileInput; 13 | 14 | isReadyToSave: boolean; 15 | 16 | item: any; 17 | 18 | form: FormGroup; 19 | 20 | constructor(public navCtrl: NavController, public viewCtrl: ViewController, formBuilder: FormBuilder, public camera: Camera) { 21 | this.form = formBuilder.group({ 22 | profilePic: [''], 23 | name: ['', Validators.required], 24 | about: [''] 25 | }); 26 | 27 | // Watch the form for changes, and 28 | this.form.valueChanges.subscribe((v) => { 29 | this.isReadyToSave = this.form.valid; 30 | }); 31 | } 32 | 33 | ionViewDidLoad() { 34 | 35 | } 36 | 37 | getPicture() { 38 | if (Camera['installed']()) { 39 | this.camera.getPicture({ 40 | destinationType: this.camera.DestinationType.DATA_URL, 41 | targetWidth: 96, 42 | targetHeight: 96 43 | }).then((data) => { 44 | this.form.patchValue({ 'profilePic': 'data:image/jpg;base64,' + data }); 45 | }, (err) => { 46 | alert('Unable to take photo'); 47 | }) 48 | } else { 49 | this.fileInput.nativeElement.click(); 50 | } 51 | } 52 | 53 | processWebImage(event) { 54 | let reader = new FileReader(); 55 | reader.onload = (readerEvent) => { 56 | 57 | let imageData = (readerEvent.target as any).result; 58 | this.form.patchValue({ 'profilePic': imageData }); 59 | }; 60 | 61 | reader.readAsDataURL(event.target.files[0]); 62 | } 63 | 64 | getProfileImageStyle() { 65 | return 'url(' + this.form.controls['profilePic'].value + ')' 66 | } 67 | 68 | /** 69 | * The user cancelled, so we dismiss without sending data back. 70 | */ 71 | cancel() { 72 | this.viewCtrl.dismiss(); 73 | } 74 | 75 | /** 76 | * The user is done and wants to create the item, so return it 77 | * back to the presenter. 78 | */ 79 | done() { 80 | if (!this.form.valid) { return; } 81 | this.viewCtrl.dismiss(this.form.value); 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /test/src/pages/item-detail/README.md: -------------------------------------------------------------------------------- 1 | # Item Detail 2 | 3 | The Item Detail Page shows the details of instances of `Item`, and will most commonly be navigated to from `ListMasterPage`. 4 | -------------------------------------------------------------------------------- /test/src/pages/item-detail/item-detail.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ item.name }} 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 |
13 | 14 |
15 |

{{item.name}}

16 |

{{item.about}}

17 |
18 |
-------------------------------------------------------------------------------- /test/src/pages/item-detail/item-detail.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { ItemDetailPage } from './item-detail'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | ItemDetailPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(ItemDetailPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | ItemDetailPage 17 | ] 18 | }) 19 | export class ItemDetailPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/item-detail/item-detail.scss: -------------------------------------------------------------------------------- 1 | page-item-detail { 2 | .item-profile { 3 | width: 100%; 4 | background-position: center center; 5 | background-size: cover; 6 | height: 250px; 7 | } 8 | 9 | .item-detail { 10 | width: 100%; 11 | background: white; 12 | position: absolute; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /test/src/pages/item-detail/item-detail.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, NavController, NavParams } from 'ionic-angular'; 3 | 4 | import { Items } from '../../providers/providers'; 5 | 6 | @IonicPage() 7 | @Component({ 8 | selector: 'page-item-detail', 9 | templateUrl: 'item-detail.html' 10 | }) 11 | export class ItemDetailPage { 12 | item: any; 13 | 14 | constructor(public navCtrl: NavController, navParams: NavParams, items: Items) { 15 | this.item = navParams.get('item') || items.defaultItem; 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /test/src/pages/list-master/README.md: -------------------------------------------------------------------------------- 1 | # List Master 2 | 3 | The List Master Page shows the details of instances of `Item`, and will most commonly be navigated to from `ListMasterPage`. 4 | -------------------------------------------------------------------------------- /test/src/pages/list-master/list-master.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'LIST_MASTER_TITLE' | translate }} 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 27 | 28 | 29 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /test/src/pages/list-master/list-master.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { ListMasterPage } from './list-master'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | ListMasterPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(ListMasterPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | ListMasterPage 17 | ] 18 | }) 19 | export class ListMasterPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/list-master/list-master.scss: -------------------------------------------------------------------------------- 1 | page-list-master { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/list-master/list-master.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, ModalController, NavController } from 'ionic-angular'; 3 | 4 | import { Item } from '../../models/item'; 5 | import { Items } from '../../providers/providers'; 6 | 7 | @IonicPage() 8 | @Component({ 9 | selector: 'page-list-master', 10 | templateUrl: 'list-master.html' 11 | }) 12 | export class ListMasterPage { 13 | currentItems: Item[]; 14 | 15 | constructor(public navCtrl: NavController, public items: Items, public modalCtrl: ModalController) { 16 | this.currentItems = this.items.query(); 17 | } 18 | 19 | /** 20 | * The view loaded, let's query our items for the list 21 | */ 22 | ionViewDidLoad() { 23 | } 24 | 25 | /** 26 | * Prompt the user to add a new item. This shows our ItemCreatePage in a 27 | * modal and then adds the new item to our data source if the user created one. 28 | */ 29 | addItem() { 30 | let addModal = this.modalCtrl.create('ItemCreatePage'); 31 | addModal.onDidDismiss(item => { 32 | if (item) { 33 | this.items.add(item); 34 | } 35 | }) 36 | addModal.present(); 37 | } 38 | 39 | /** 40 | * Delete an item from the list of items. 41 | */ 42 | deleteItem(item) { 43 | this.items.delete(item); 44 | } 45 | 46 | /** 47 | * Navigate to the detail page for this item. 48 | */ 49 | openItem(item: Item) { 50 | this.navCtrl.push('ItemDetailPage', { 51 | item: item 52 | }); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /test/src/pages/login/README.md: -------------------------------------------------------------------------------- 1 | # Login 2 | 3 | The Login page renders a login form with email/password by default and an optional username field. 4 | -------------------------------------------------------------------------------- /test/src/pages/login/login.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'LOGIN_TITLE' | translate }} 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | {{ 'EMAIL' | translate }} 16 | 17 | 18 | 19 | 27 | 28 | 29 | {{ 'PASSWORD' | translate }} 30 | 31 | 32 | 33 |
34 | 35 |
36 | 37 |
38 |
39 |
40 | -------------------------------------------------------------------------------- /test/src/pages/login/login.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { LoginPage } from './login'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | LoginPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(LoginPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | LoginPage 17 | ] 18 | }) 19 | export class LoginPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/login/login.scss: -------------------------------------------------------------------------------- 1 | page-login { 2 | } 3 | -------------------------------------------------------------------------------- /test/src/pages/login/login.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { TranslateService } from '@ngx-translate/core'; 3 | import { IonicPage, NavController, ToastController } from 'ionic-angular'; 4 | 5 | import { User } from '../../providers/providers'; 6 | import { MainPage } from '../pages'; 7 | 8 | @IonicPage() 9 | @Component({ 10 | selector: 'page-login', 11 | templateUrl: 'login.html' 12 | }) 13 | export class LoginPage { 14 | // The account fields for the login form. 15 | // If you're using the username field with or without email, make 16 | // sure to add it to the type 17 | account: { email: string, password: string } = { 18 | email: 'test@example.com', 19 | password: 'test' 20 | }; 21 | 22 | // Our translated text strings 23 | private loginErrorString: string; 24 | 25 | constructor(public navCtrl: NavController, 26 | public user: User, 27 | public toastCtrl: ToastController, 28 | public translateService: TranslateService) { 29 | 30 | this.translateService.get('LOGIN_ERROR').subscribe((value) => { 31 | this.loginErrorString = value; 32 | }) 33 | } 34 | 35 | // Attempt to login in through our User service 36 | doLogin() { 37 | this.user.login(this.account).subscribe((resp) => { 38 | this.navCtrl.push(MainPage); 39 | }, (err) => { 40 | this.navCtrl.push(MainPage); 41 | // Unable to log in 42 | let toast = this.toastCtrl.create({ 43 | message: this.loginErrorString, 44 | duration: 3000, 45 | position: 'top' 46 | }); 47 | toast.present(); 48 | }); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /test/src/pages/menu/README.md: -------------------------------------------------------------------------------- 1 | # Menu 2 | 3 | The Menu page renders a side menu UI. 4 | -------------------------------------------------------------------------------- /test/src/pages/menu/menu.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /test/src/pages/menu/menu.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { MenuPage } from './menu'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | MenuPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(MenuPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | MenuPage 17 | ] 18 | }) 19 | export class MenuPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/menu/menu.scss: -------------------------------------------------------------------------------- 1 | page-menu { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/menu/menu.ts: -------------------------------------------------------------------------------- 1 | import { Component, ViewChild } from '@angular/core'; 2 | import { IonicPage, Nav, NavController } from 'ionic-angular'; 3 | 4 | interface PageItem { 5 | title: string 6 | component: any 7 | } 8 | type PageList = PageItem[] 9 | 10 | @IonicPage() 11 | @Component({ 12 | selector: 'page-menu', 13 | templateUrl: 'menu.html' 14 | }) 15 | export class MenuPage { 16 | // A reference to the ion-nav in our component 17 | @ViewChild(Nav) nav: Nav; 18 | 19 | rootPage: any = 'ContentPage'; 20 | 21 | pages: PageList; 22 | 23 | constructor(public navCtrl: NavController) { 24 | // used for an example of ngFor and navigation 25 | this.pages = [ 26 | { title: 'Sign in', component: 'LoginPage' }, 27 | { title: 'Signup', component: 'SignupPage' } 28 | ]; 29 | } 30 | 31 | ionViewDidLoad() { 32 | console.log('Hello MenuPage Page'); 33 | } 34 | 35 | openPage(page: PageItem) { 36 | // Reset the content nav to have just this page 37 | // we wouldn't want the back button to show in this scenario 38 | this.nav.setRoot(page.component); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /test/src/pages/pages.ts: -------------------------------------------------------------------------------- 1 | // The page the user lands on after opening the app and without a session 2 | export const FirstRunPage = 'TutorialPage'; 3 | 4 | // The main page the user will see as they use the app over a long period of time. 5 | // Change this if not using tabs 6 | export const MainPage = 'TabsPage'; 7 | 8 | // The initial root pages for our tabs (remove if not using tabs) 9 | export const Tab1Root = 'ListMasterPage'; 10 | export const Tab2Root = 'SearchPage'; 11 | export const Tab3Root = 'SettingsPage'; 12 | -------------------------------------------------------------------------------- /test/src/pages/search/README.md: -------------------------------------------------------------------------------- 1 | # Search 2 | 3 | The Search page shows a search box and list view for searching instances of `Item`. 4 | -------------------------------------------------------------------------------- /test/src/pages/search/search.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'SEARCH_TITLE' | translate }} 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 21 | 22 | -------------------------------------------------------------------------------- /test/src/pages/search/search.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { SearchPage } from './search'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | SearchPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(SearchPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | SearchPage 17 | ] 18 | }) 19 | export class SearchPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/search/search.scss: -------------------------------------------------------------------------------- 1 | page-search { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/search/search.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, NavController, NavParams } from 'ionic-angular'; 3 | 4 | import { Item } from '../../models/item'; 5 | import { Items } from '../../providers/providers'; 6 | 7 | @IonicPage() 8 | @Component({ 9 | selector: 'page-search', 10 | templateUrl: 'search.html' 11 | }) 12 | export class SearchPage { 13 | 14 | currentItems: any = []; 15 | 16 | constructor(public navCtrl: NavController, public navParams: NavParams, public items: Items) { } 17 | 18 | /** 19 | * Perform a service for the proper items. 20 | */ 21 | getItems(ev) { 22 | let val = ev.target.value; 23 | if (!val || !val.trim()) { 24 | this.currentItems = []; 25 | return; 26 | } 27 | this.currentItems = this.items.query({ 28 | name: val 29 | }); 30 | } 31 | 32 | /** 33 | * Navigate to the detail page for this item. 34 | */ 35 | openItem(item: Item) { 36 | this.navCtrl.push('ItemDetailPage', { 37 | item: item 38 | }); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /test/src/pages/settings/README.md: -------------------------------------------------------------------------------- 1 | # Settings 2 | 3 | The Settings page shows a settings form that is configurable, along with features for nested options where the user navigates to sub options while still using the same Settings page code. 4 | -------------------------------------------------------------------------------- /test/src/pages/settings/settings.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ pageTitle }} 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | {{ 'SETTINGS_OPTION1' | translate }} 15 | 16 | 17 | 18 | 19 | {{ 'SETTINGS_OPTION2' | translate }} 20 | 21 | 22 | 23 | 24 | {{ 'SETTINGS_OPTION3' | translate }} 25 | 26 | 1 27 | 2 28 | 3 29 | 30 | 31 | 32 | 35 | 36 | 37 | 38 | 39 | {{ 'SETTINGS_OPTION4' | translate }} 40 | 41 | 42 | 43 |
44 | 45 |
-------------------------------------------------------------------------------- /test/src/pages/settings/settings.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { SettingsPage } from './settings'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | SettingsPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(SettingsPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | SettingsPage 17 | ] 18 | }) 19 | export class SettingsPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/settings/settings.scss: -------------------------------------------------------------------------------- 1 | page-settings { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/signup/README.md: -------------------------------------------------------------------------------- 1 | # Signup 2 | 3 | The Signup page renders a signup form with email/password by default and an optional username field. 4 | -------------------------------------------------------------------------------- /test/src/pages/signup/signup.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{ 'SIGNUP_TITLE' | translate }} 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | {{ 'NAME' | translate }} 16 | 17 | 18 | 19 | 20 | {{ 'EMAIL' | translate }} 21 | 22 | 23 | 24 | 32 | 33 | 34 | {{ 'PASSWORD' | translate }} 35 | 36 | 37 | 38 |
39 | 40 |
41 | 42 |
43 |
44 |
-------------------------------------------------------------------------------- /test/src/pages/signup/signup.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { SignupPage } from './signup'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | SignupPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(SignupPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | SignupPage 17 | ] 18 | }) 19 | export class SignupPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/signup/signup.scss: -------------------------------------------------------------------------------- 1 | page-signup { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/signup/signup.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { TranslateService } from '@ngx-translate/core'; 3 | import { IonicPage, NavController, ToastController } from 'ionic-angular'; 4 | 5 | import { User } from '../../providers/providers'; 6 | import { MainPage } from '../pages'; 7 | 8 | @IonicPage() 9 | @Component({ 10 | selector: 'page-signup', 11 | templateUrl: 'signup.html' 12 | }) 13 | export class SignupPage { 14 | // The account fields for the login form. 15 | // If you're using the username field with or without email, make 16 | // sure to add it to the type 17 | account: { name: string, email: string, password: string } = { 18 | name: 'Test Human', 19 | email: 'test@example.com', 20 | password: 'test' 21 | }; 22 | 23 | // Our translated text strings 24 | private signupErrorString: string; 25 | 26 | constructor(public navCtrl: NavController, 27 | public user: User, 28 | public toastCtrl: ToastController, 29 | public translateService: TranslateService) { 30 | 31 | this.translateService.get('SIGNUP_ERROR').subscribe((value) => { 32 | this.signupErrorString = value; 33 | }) 34 | } 35 | 36 | doSignup() { 37 | // Attempt to login in through our User service 38 | this.user.signup(this.account).subscribe((resp) => { 39 | this.navCtrl.push(MainPage); 40 | }, (err) => { 41 | 42 | this.navCtrl.push(MainPage); 43 | 44 | // Unable to sign up 45 | let toast = this.toastCtrl.create({ 46 | message: this.signupErrorString, 47 | duration: 3000, 48 | position: 'top' 49 | }); 50 | toast.present(); 51 | }); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /test/src/pages/tabs/README.md: -------------------------------------------------------------------------------- 1 | # Tabs 2 | 3 | Tabs is a common tabbed layout. 4 | -------------------------------------------------------------------------------- /test/src/pages/tabs/tabs.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /test/src/pages/tabs/tabs.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { TabsPage } from './tabs'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | TabsPage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(TabsPage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | TabsPage 17 | ] 18 | }) 19 | export class TabsPageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/tabs/tabs.scss: -------------------------------------------------------------------------------- 1 | page-tabs { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /test/src/pages/tabs/tabs.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { TranslateService } from '@ngx-translate/core'; 3 | import { IonicPage, NavController } from 'ionic-angular'; 4 | 5 | import { Tab1Root } from '../pages'; 6 | import { Tab2Root } from '../pages'; 7 | import { Tab3Root } from '../pages'; 8 | 9 | @IonicPage() 10 | @Component({ 11 | selector: 'page-tabs', 12 | templateUrl: 'tabs.html' 13 | }) 14 | export class TabsPage { 15 | tab1Root: any = Tab1Root; 16 | tab2Root: any = Tab2Root; 17 | tab3Root: any = Tab3Root; 18 | 19 | tab1Title = " "; 20 | tab2Title = " "; 21 | tab3Title = " "; 22 | 23 | constructor(public navCtrl: NavController, public translateService: TranslateService) { 24 | translateService.get(['TAB1_TITLE', 'TAB2_TITLE', 'TAB3_TITLE']).subscribe(values => { 25 | this.tab1Title = values['TAB1_TITLE']; 26 | this.tab2Title = values['TAB2_TITLE']; 27 | this.tab3Title = values['TAB3_TITLE']; 28 | }); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /test/src/pages/tutorial/README.md: -------------------------------------------------------------------------------- 1 | # Tutorial 2 | 3 | The Tutorial page renders a Slides component that lets you swipe through different sections or skip it alltogether. 4 | -------------------------------------------------------------------------------- /test/src/pages/tutorial/tutorial.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

14 |

15 |
16 | 17 | 18 |

{{ 'TUTORIAL_SLIDE4_TITLE' | translate }}

19 | 23 |
24 |
25 |
26 | -------------------------------------------------------------------------------- /test/src/pages/tutorial/tutorial.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { IonicPageModule } from 'ionic-angular'; 3 | import { TutorialPage } from './tutorial'; 4 | import { TranslateModule } from '@ngx-translate/core'; 5 | 6 | @NgModule({ 7 | declarations: [ 8 | TutorialPage, 9 | ], 10 | imports: [ 11 | IonicPageModule.forChild(TutorialPage), 12 | TranslateModule.forChild() 13 | ], 14 | exports: [ 15 | TutorialPage 16 | ] 17 | }) 18 | export class TutorialPageModule { } 19 | -------------------------------------------------------------------------------- /test/src/pages/tutorial/tutorial.scss: -------------------------------------------------------------------------------- 1 | page-tutorial { 2 | .toolbar-background { 3 | background: transparent; 4 | border-color: transparent; 5 | } 6 | 7 | .slide-zoom { 8 | height: 100%; 9 | } 10 | 11 | .slide-title { 12 | margin-top: 2.8rem; 13 | } 14 | 15 | .slide-image { 16 | max-height: 40%; 17 | max-width: 60%; 18 | margin: 36px 0; 19 | } 20 | 21 | b { 22 | font-weight: 500; 23 | } 24 | 25 | p { 26 | padding: 0 40px; 27 | font-size: 14px; 28 | line-height: 1.5; 29 | color: #60646B; 30 | 31 | b { 32 | color: #000000; 33 | } 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /test/src/pages/tutorial/tutorial.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, MenuController, NavController, Platform } from 'ionic-angular'; 3 | 4 | import { TranslateService } from '@ngx-translate/core'; 5 | 6 | export interface Slide { 7 | title: string; 8 | description: string; 9 | image: string; 10 | } 11 | 12 | @IonicPage() 13 | @Component({ 14 | selector: 'page-tutorial', 15 | templateUrl: 'tutorial.html' 16 | }) 17 | export class TutorialPage { 18 | slides: Slide[]; 19 | showSkip = true; 20 | dir: string = 'ltr'; 21 | 22 | constructor(public navCtrl: NavController, public menu: MenuController, translate: TranslateService, public platform: Platform) { 23 | this.dir = platform.dir(); 24 | translate.get(["TUTORIAL_SLIDE1_TITLE", 25 | "TUTORIAL_SLIDE1_DESCRIPTION", 26 | "TUTORIAL_SLIDE2_TITLE", 27 | "TUTORIAL_SLIDE2_DESCRIPTION", 28 | "TUTORIAL_SLIDE3_TITLE", 29 | "TUTORIAL_SLIDE3_DESCRIPTION", 30 | ]).subscribe( 31 | (values) => { 32 | console.log('Loaded values', values); 33 | this.slides = [ 34 | { 35 | title: values.TUTORIAL_SLIDE1_TITLE, 36 | description: values.TUTORIAL_SLIDE1_DESCRIPTION, 37 | image: 'assets/img/ica-slidebox-img-1.png', 38 | }, 39 | { 40 | title: values.TUTORIAL_SLIDE2_TITLE, 41 | description: values.TUTORIAL_SLIDE2_DESCRIPTION, 42 | image: 'assets/img/ica-slidebox-img-2.png', 43 | }, 44 | { 45 | title: values.TUTORIAL_SLIDE3_TITLE, 46 | description: values.TUTORIAL_SLIDE3_DESCRIPTION, 47 | image: 'assets/img/ica-slidebox-img-3.png', 48 | } 49 | ]; 50 | }); 51 | } 52 | 53 | startApp() { 54 | this.navCtrl.setRoot('WelcomePage', {}, { 55 | animate: true, 56 | direction: 'forward' 57 | }); 58 | } 59 | 60 | onSlideChangeStart(slider) { 61 | this.showSkip = !slider.isEnd(); 62 | } 63 | 64 | ionViewDidEnter() { 65 | // the root left menu should be disabled on the tutorial page 66 | this.menu.enable(false); 67 | } 68 | 69 | ionViewWillLeave() { 70 | // enable the root left menu when leaving the tutorial page 71 | this.menu.enable(true); 72 | } 73 | 74 | } 75 | -------------------------------------------------------------------------------- /test/src/pages/welcome/README.md: -------------------------------------------------------------------------------- 1 | # Welcome 2 | 3 | Welcome is a splash screen that displays some info about the app and directs the user to log in our create an account. 4 | -------------------------------------------------------------------------------- /test/src/pages/welcome/welcome.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 5 |
6 | {{ 'WELCOME_INTRO' | translate }} 7 |
8 |
9 |
10 | 11 | 12 |
13 |
14 | -------------------------------------------------------------------------------- /test/src/pages/welcome/welcome.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { TranslateModule } from '@ngx-translate/core'; 3 | import { IonicPageModule } from 'ionic-angular'; 4 | 5 | import { WelcomePage } from './welcome'; 6 | 7 | @NgModule({ 8 | declarations: [ 9 | WelcomePage, 10 | ], 11 | imports: [ 12 | IonicPageModule.forChild(WelcomePage), 13 | TranslateModule.forChild() 14 | ], 15 | exports: [ 16 | WelcomePage 17 | ] 18 | }) 19 | export class WelcomePageModule { } 20 | -------------------------------------------------------------------------------- /test/src/pages/welcome/welcome.scss: -------------------------------------------------------------------------------- 1 | page-welcome { 2 | .splash-bg { 3 | position: relative; 4 | background: url('../assets/img/splashbg.png') no-repeat transparent; 5 | background-size: cover; 6 | height: 45%; 7 | z-index: 1; 8 | background-repeat: repeat-x; 9 | animation: animatedBackground 40s linear infinite; 10 | } 11 | 12 | @keyframes animatedBackground { 13 | from { background-position: 0 0; } 14 | to { background-position: 100% 0; } 15 | } 16 | 17 | .splash-info { 18 | position: relative; 19 | z-index: 2; 20 | margin-top: -64px; 21 | text-align: center; 22 | } 23 | .splash-logo { 24 | margin: auto; 25 | background: url('../assets/img/appicon.png') repeat transparent; 26 | background-size: 100%; 27 | width: 128px; 28 | height: 128px; 29 | } 30 | .splash-intro { 31 | font-size: 18px; 32 | font-weight: bold; 33 | max-width: 80%; 34 | margin: auto; 35 | } 36 | button.login { 37 | margin-top: 25px; 38 | background-color: white; 39 | box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2); 40 | color: #333; 41 | 42 | &.activated { 43 | background-color: rgb(220, 220, 220); 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /test/src/pages/welcome/welcome.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { IonicPage, NavController } from 'ionic-angular'; 3 | 4 | /** 5 | * The Welcome Page is a splash page that quickly describes the app, 6 | * and then directs the user to create an account or log in. 7 | * If you'd like to immediately put the user onto a login/signup page, 8 | * we recommend not using the Welcome page. 9 | */ 10 | @IonicPage() 11 | @Component({ 12 | selector: 'page-welcome', 13 | templateUrl: 'welcome.html' 14 | }) 15 | export class WelcomePage { 16 | 17 | constructor(public navCtrl: NavController) { } 18 | 19 | login() { 20 | this.navCtrl.push('LoginPage'); 21 | } 22 | 23 | signup() { 24 | this.navCtrl.push('SignupPage'); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /test/src/providers/api/api.ts: -------------------------------------------------------------------------------- 1 | import { HttpClient, HttpParams } from '@angular/common/http'; 2 | import { Injectable } from '@angular/core'; 3 | 4 | /** 5 | * Api is a generic REST Api handler. Set your API url first. 6 | */ 7 | @Injectable() 8 | export class Api { 9 | url: string = 'https://example.com/api/v1'; 10 | 11 | constructor(public http: HttpClient) { 12 | } 13 | 14 | get(endpoint: string, params?: any, reqOpts?: any) { 15 | if (!reqOpts) { 16 | reqOpts = { 17 | params: new HttpParams() 18 | }; 19 | } 20 | 21 | // Support easy query params for GET requests 22 | if (params) { 23 | reqOpts.params = new HttpParams(); 24 | for (let k in params) { 25 | reqOpts.params.set(k, params[k]); 26 | } 27 | } 28 | 29 | return this.http.get(this.url + '/' + endpoint, reqOpts); 30 | } 31 | 32 | post(endpoint: string, body: any, reqOpts?: any) { 33 | return this.http.post(this.url + '/' + endpoint, body, reqOpts); 34 | } 35 | 36 | put(endpoint: string, body: any, reqOpts?: any) { 37 | return this.http.put(this.url + '/' + endpoint, body, reqOpts); 38 | } 39 | 40 | delete(endpoint: string, reqOpts?: any) { 41 | return this.http.delete(this.url + '/' + endpoint, reqOpts); 42 | } 43 | 44 | patch(endpoint: string, body: any, reqOpts?: any) { 45 | return this.http.put(this.url + '/' + endpoint, body, reqOpts); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /test/src/providers/items/items.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | 3 | import { Item } from '../../models/item'; 4 | import { Api } from '../api/api'; 5 | 6 | @Injectable() 7 | export class Items { 8 | 9 | constructor(public api: Api) { } 10 | 11 | query(params?: any) { 12 | return this.api.get('/items', params); 13 | } 14 | 15 | add(item: Item) { 16 | } 17 | 18 | delete(item: Item) { 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /test/src/providers/providers.ts: -------------------------------------------------------------------------------- 1 | import { Api } from './api/api'; 2 | import { Items } from '../mocks/providers/items'; 3 | import { Settings } from './settings/settings'; 4 | import { User } from './user/user'; 5 | 6 | export { 7 | Api, 8 | Items, 9 | Settings, 10 | User 11 | }; 12 | -------------------------------------------------------------------------------- /test/src/providers/settings/settings.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | import { Storage } from '@ionic/storage'; 3 | 4 | /** 5 | * A simple settings/config class for storing key/value pairs with persistence. 6 | */ 7 | @Injectable() 8 | export class Settings { 9 | private SETTINGS_KEY: string = '_settings'; 10 | 11 | settings: any; 12 | 13 | _defaults: any; 14 | _readyPromise: Promise; 15 | 16 | constructor(public storage: Storage, defaults: any) { 17 | this._defaults = defaults; 18 | } 19 | 20 | load() { 21 | return this.storage.get(this.SETTINGS_KEY).then((value) => { 22 | if (value) { 23 | this.settings = value; 24 | return this._mergeDefaults(this._defaults); 25 | } else { 26 | return this.setAll(this._defaults).then((val) => { 27 | this.settings = val; 28 | }) 29 | } 30 | }); 31 | } 32 | 33 | _mergeDefaults(defaults: any) { 34 | for (let k in defaults) { 35 | if (!(k in this.settings)) { 36 | this.settings[k] = defaults[k]; 37 | } 38 | } 39 | return this.setAll(this.settings); 40 | } 41 | 42 | merge(settings: any) { 43 | for (let k in settings) { 44 | this.settings[k] = settings[k]; 45 | } 46 | return this.save(); 47 | } 48 | 49 | setValue(key: string, value: any) { 50 | this.settings[key] = value; 51 | return this.storage.set(this.SETTINGS_KEY, this.settings); 52 | } 53 | 54 | setAll(value: any) { 55 | return this.storage.set(this.SETTINGS_KEY, value); 56 | } 57 | 58 | getValue(key: string) { 59 | return this.storage.get(this.SETTINGS_KEY) 60 | .then(settings => { 61 | return settings[key]; 62 | }); 63 | } 64 | 65 | save() { 66 | return this.setAll(this.settings); 67 | } 68 | 69 | get allSettings() { 70 | return this.settings; 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /test/src/providers/user/user.ts: -------------------------------------------------------------------------------- 1 | import 'rxjs/add/operator/toPromise'; 2 | 3 | import { Injectable } from '@angular/core'; 4 | 5 | import { Api } from '../api/api'; 6 | 7 | /** 8 | * Most apps have the concept of a User. This is a simple provider 9 | * with stubs for login/signup/etc. 10 | * 11 | * This User provider makes calls to our API at the `login` and `signup` endpoints. 12 | * 13 | * By default, it expects `login` and `signup` to return a JSON object of the shape: 14 | * 15 | * ```json 16 | * { 17 | * status: 'success', 18 | * user: { 19 | * // User fields your app needs, like "id", "name", "email", etc. 20 | * } 21 | * }Ø 22 | * ``` 23 | * 24 | * If the `status` field is not `success`, then an error is detected and returned. 25 | */ 26 | @Injectable() 27 | export class User { 28 | _user: any; 29 | 30 | constructor(public api: Api) { } 31 | 32 | /** 33 | * Send a POST request to our login endpoint with the data 34 | * the user entered on the form. 35 | */ 36 | login(accountInfo: any) { 37 | let seq = this.api.post('login', accountInfo).share(); 38 | 39 | seq.subscribe((res: any) => { 40 | // If the API returned a successful response, mark the user as logged in 41 | if (res.status == 'success') { 42 | this._loggedIn(res); 43 | } else { 44 | } 45 | }, err => { 46 | console.error('ERROR', err); 47 | }); 48 | 49 | return seq; 50 | } 51 | 52 | /** 53 | * Send a POST request to our signup endpoint with the data 54 | * the user entered on the form. 55 | */ 56 | signup(accountInfo: any) { 57 | let seq = this.api.post('signup', accountInfo).share(); 58 | 59 | seq.subscribe((res: any) => { 60 | // If the API returned a successful response, mark the user as logged in 61 | if (res.status == 'success') { 62 | this._loggedIn(res); 63 | } 64 | }, err => { 65 | console.error('ERROR', err); 66 | }); 67 | 68 | return seq; 69 | } 70 | 71 | /** 72 | * Log the user out, which forgets the session 73 | */ 74 | logout() { 75 | this._user = null; 76 | } 77 | 78 | /** 79 | * Process a login/signup response to store user data 80 | */ 81 | _loggedIn(resp) { 82 | this._user = resp.user; 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /test/src/service-worker.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Check out https://googlechromelabs.github.io/sw-toolbox/ for 3 | * more info on how to use sw-toolbox to custom configure your service worker. 4 | */ 5 | 6 | 7 | 'use strict'; 8 | importScripts('./build/sw-toolbox.js'); 9 | 10 | self.toolbox.options.cache = { 11 | name: 'ionic-cache' 12 | }; 13 | 14 | // pre-cache our key assets 15 | self.toolbox.precache( 16 | [ 17 | './build/main.js', 18 | './build/vendor.js', 19 | './build/main.css', 20 | './build/polyfills.js', 21 | 'index.html', 22 | 'manifest.json' 23 | ] 24 | ); 25 | 26 | // dynamically cache any other local assets 27 | self.toolbox.router.any('/*', self.toolbox.fastest); 28 | 29 | // for any other requests go to the network, cache, 30 | // and then only use that cached resource if your user goes offline 31 | self.toolbox.router.default = self.toolbox.networkFirst; 32 | -------------------------------------------------------------------------------- /test/src/theme/variables.scss: -------------------------------------------------------------------------------- 1 | // Ionic Variables and Theming. For more info, please see: 2 | // http://ionicframework.com/docs/v2/theming/ 3 | $font-path: "../assets/fonts"; 4 | 5 | @import "ionic.globals"; 6 | 7 | 8 | // Shared Variables 9 | // -------------------------------------------------- 10 | // To customize the look and feel of this app, you can override 11 | // the Sass variables found in Ionic's source scss files. 12 | // To view all the possible Ionic variables, see: 13 | // http://ionicframework.com/docs/v2/theming/overriding-ionic-variables/ 14 | 15 | $text-color: #000; 16 | $background-color: #fff; 17 | 18 | 19 | // Named Color Variables 20 | // -------------------------------------------------- 21 | // Named colors makes it easy to reuse colors on various components. 22 | // It's highly recommended to change the default colors 23 | // to match your app's branding. Ionic uses a Sass map of 24 | // colors so you can add, rename and remove colors as needed. 25 | // The "primary" color is the only required color in the map. 26 | 27 | $colors: ( 28 | primary: #488aff, 29 | secondary: #32db64, 30 | danger: #f53d3d, 31 | light: #f4f4f4, 32 | dark: #222 33 | ); 34 | 35 | 36 | // App iOS Variables 37 | // -------------------------------------------------- 38 | // iOS only Sass variables can go here 39 | 40 | 41 | 42 | 43 | // App Material Design Variables 44 | // -------------------------------------------------- 45 | // Material Design only Sass variables can go here 46 | 47 | 48 | 49 | 50 | // App Windows Variables 51 | // -------------------------------------------------- 52 | // Windows only Sass variables can go here 53 | 54 | 55 | 56 | 57 | // App Theme 58 | // -------------------------------------------------- 59 | // Ionic apps can have different themes applied, which can 60 | // then be future customized. This import comes last 61 | // so that the above variables are used and Ionic's 62 | // default are overridden. 63 | 64 | @import "ionic.theme.default"; 65 | 66 | 67 | // Ionicons 68 | // -------------------------------------------------- 69 | // The premium icon font for Ionic. For more info, please see: 70 | // http://ionicframework.com/docs/v2/ionicons/ 71 | 72 | @import "ionic.ionicons"; 73 | 74 | 75 | // Fonts 76 | // -------------------------------------------------- 77 | 78 | @import "roboto"; 79 | @import "noto-sans"; 80 | -------------------------------------------------------------------------------- /test/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "allowSyntheticDefaultImports": true, 4 | "declaration": false, 5 | "emitDecoratorMetadata": true, 6 | "experimentalDecorators": true, 7 | "lib": [ 8 | "dom", 9 | "es2015" 10 | ], 11 | "module": "es2015", 12 | "moduleResolution": "node", 13 | "sourceMap": true, 14 | "target": "es5", 15 | "typeRoots": [ 16 | "../node_modules/@types" 17 | ] 18 | }, 19 | "include": [ 20 | "src/**/*.ts" 21 | ], 22 | "exclude": [ 23 | "node_modules", 24 | "src/**/*.spec.ts", 25 | "src/**/__tests__/*.ts" 26 | ], 27 | "compileOnSave": false, 28 | "atom": { 29 | "rewriteTsconfig": false 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /test/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "no-duplicate-variable": true, 4 | "no-unused-variable": [ 5 | true 6 | ] 7 | }, 8 | "rulesDirectory": [ 9 | "node_modules/tslint-eslint-rules/dist/rules" 10 | ] 11 | } 12 | --------------------------------------------------------------------------------