├── 10 ├── blog └── node-app-1.service ├── .gitignore ├── 02 ├── HelloWorldVsCode │ ├── .vscode │ │ ├── launch.json │ │ └── tasks.json │ ├── index.html │ ├── package.json │ ├── tsconfig.json │ ├── user.js │ ├── user.js.map │ └── user.ts ├── testModules │ ├── .vscode │ │ └── tasks.json │ ├── index.html │ ├── index.js │ ├── index.js.map │ ├── index.ts │ ├── module.js │ ├── module.js.map │ ├── module.ts │ ├── package.json │ └── tsconfig.json ├── user.js ├── user.js.map └── user.ts ├── 03 ├── AngularBase │ ├── .vscode │ │ └── tasks.json │ ├── app │ │ ├── app.component.js │ │ ├── app.component.js.map │ │ ├── app.component.ts │ │ ├── boot.js │ │ ├── boot.js.map │ │ └── boot.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json ├── AngularPanel │ ├── .vscode │ │ └── tasks.json │ ├── app │ │ ├── app.component.html │ │ ├── app.component.js │ │ ├── app.component.js.map │ │ ├── app.component.ts │ │ ├── boot.js │ │ ├── boot.js.map │ │ ├── boot.ts │ │ ├── container.js │ │ ├── container.js.map │ │ ├── container.ts │ │ └── container │ │ │ ├── panel.html │ │ │ ├── panel.js │ │ │ ├── panel.js.map │ │ │ └── panel.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json └── AngularPlayList │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.html │ ├── app.component.js │ ├── app.component.js.map │ ├── app.component.ts │ ├── boot.js │ ├── boot.js.map │ ├── boot.ts │ ├── config.service.js │ ├── config.service.js.map │ ├── config.service.ts │ ├── video.js │ ├── video.js.map │ ├── video.ts │ ├── videodetail.component.html │ ├── videodetail.component.js │ ├── videodetail.component.js.map │ ├── videodetail.component.ts │ ├── videolist.component.html │ ├── videolist.component.js │ ├── videolist.component.js.map │ └── videolist.component.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json ├── 04 ├── AngularPlayListConfigService │ ├── .vscode │ │ └── tasks.json │ ├── app │ │ ├── app.component.html │ │ ├── app.component.js │ │ ├── app.component.js.map │ │ ├── app.component.ts │ │ ├── boot.js │ │ ├── boot.js.map │ │ ├── boot.ts │ │ ├── config.service.js │ │ ├── config.service.js.map │ │ ├── config.service.ts │ │ ├── video.js │ │ ├── video.js.map │ │ ├── video.ts │ │ ├── videodetail.component.html │ │ ├── videodetail.component.js │ │ ├── videodetail.component.js.map │ │ ├── videodetail.component.ts │ │ ├── videolist.component.html │ │ ├── videolist.component.js │ │ ├── videolist.component.js.map │ │ └── videolist.component.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json └── LibraryModules │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.js │ ├── app.component.js.map │ ├── app.component.ts │ ├── boot.js │ ├── boot.js.map │ ├── boot.ts │ ├── model.js │ ├── model.js.map │ ├── model.ts │ └── model │ │ ├── playlist.js │ │ ├── playlist.js.map │ │ ├── playlist.ts │ │ ├── video.js │ │ ├── video.js.map │ │ └── video.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json ├── 05 └── AngularForms │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.html │ ├── app.component.js │ ├── app.component.js.map │ ├── app.component.ts │ ├── boot.js │ ├── boot.js.map │ ├── boot.ts │ ├── mock.js │ ├── mock.js.map │ ├── mock.ts │ ├── model.js │ ├── model.js.map │ ├── model.ts │ └── model │ │ ├── Person.js │ │ ├── Person.js.map │ │ └── Person.ts │ ├── index.html │ ├── package.json │ ├── styles.css │ ├── systemjs.config.js │ └── tsconfig.json ├── 06 └── AngularHttp │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.js │ ├── app.component.js.map │ ├── app.component.ts │ ├── boot.js │ ├── boot.js.map │ ├── boot.ts │ ├── model.js │ ├── model.js.map │ ├── model.ts │ ├── service.js │ ├── service.js.map │ ├── service.ts │ └── user │ │ ├── user.js │ │ ├── user.js.map │ │ ├── user.service.js │ │ ├── user.service.js.map │ │ ├── user.service.ts │ │ └── user.ts │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ ├── tsconfig.json │ └── users.json ├── 07 └── AngularRoutes │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.js │ ├── app.component.js.map │ ├── app.component.ts │ ├── boot.js │ ├── boot.js.map │ ├── boot.ts │ ├── dashboard │ │ ├── dashboard.component.js │ │ ├── dashboard.component.js.map │ │ ├── dashboard.component.ts │ │ └── dashboard.html │ ├── home │ │ ├── home.component.js │ │ ├── home.component.js.map │ │ ├── home.component.ts │ │ └── home.html │ └── login │ │ ├── login.component.js │ │ ├── login.component.js.map │ │ ├── login.component.ts │ │ └── login.html │ ├── index.html │ ├── package.json │ ├── systemjs.config.js │ └── tsconfig.json ├── 08 └── blog │ ├── .vscode │ └── tasks.json │ ├── app │ ├── app.component.ts │ ├── boot.ts │ ├── component.ts │ ├── component │ │ ├── addpost.ts │ │ ├── home.ts │ │ └── login.ts │ ├── model.ts │ ├── model │ │ ├── post.ts │ │ └── user.ts │ └── service │ │ ├── headers.ts │ │ ├── login.ts │ │ ├── post.ts │ │ └── user.ts │ ├── model │ ├── post.js │ └── user.js │ ├── package.json │ ├── public │ ├── app │ │ ├── app.component.js │ │ ├── app.component.js.map │ │ ├── boot.js │ │ ├── boot.js.map │ │ ├── component.js │ │ ├── component.js.map │ │ ├── component │ │ │ ├── addpost.js │ │ │ ├── addpost.js.map │ │ │ ├── createaccount.js │ │ │ ├── createaccount.js.map │ │ │ ├── home.js │ │ │ ├── home.js.map │ │ │ ├── login.js │ │ │ └── login.js.map │ │ ├── model.js │ │ ├── model.js.map │ │ ├── model │ │ │ ├── post.js │ │ │ ├── post.js.map │ │ │ ├── user.js │ │ │ └── user.js.map │ │ ├── service.js │ │ ├── service.js.map │ │ └── service │ │ │ ├── headers.js │ │ │ ├── headers.js.map │ │ │ ├── login.js │ │ │ ├── login.js.map │ │ │ ├── post.js │ │ │ ├── post.js.map │ │ │ ├── user.js │ │ │ └── user.js.map │ ├── appComponent.html │ ├── index.html │ └── systemjs.config.js │ ├── server.js │ └── tsconfig.json ├── LICENSE ├── README.md ├── test.js ├── test.js.map └── test.ts /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | 11 | # Directory for instrumented libs generated by jscoverage/JSCover 12 | lib-cov 13 | 14 | # Coverage directory used by tools like istanbul 15 | coverage 16 | 17 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 18 | .grunt 19 | 20 | # node-waf configuration 21 | .lock-wscript 22 | 23 | # Compiled binary addons (http://nodejs.org/api/addons.html) 24 | build/Release 25 | 26 | # Dependency directory 27 | node_modules 28 | 29 | # Optional npm cache directory 30 | .npm 31 | 32 | # Optional REPL history 33 | .node_repl_history 34 | -------------------------------------------------------------------------------- /02/HelloWorldVsCode/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "name": "Launch", 6 | "type": "node", 7 | "request": "launch", 8 | "program": "user.js", 9 | "stopOnEntry": false, 10 | "args": [], 11 | "cwd": ".", 12 | "runtimeExecutable": null, 13 | "runtimeArgs": [ 14 | "--nolazy" 15 | ], 16 | "env": { 17 | "NODE_ENV": "development" 18 | }, 19 | "externalConsole": false, 20 | "sourceMaps": true, 21 | "outDir": null 22 | }, 23 | { 24 | "name": "Attach", 25 | "type": "node", 26 | "request": "attach", 27 | "port": 5858 28 | } 29 | ] 30 | } -------------------------------------------------------------------------------- /02/HelloWorldVsCode/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.0", 3 | "command": "tsc", 4 | "isShellCommand": true, 5 | "showOutput": "always" 6 | } -------------------------------------------------------------------------------- /02/HelloWorldVsCode/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Document 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /02/HelloWorldVsCode/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "HelloWorldVsCode", 3 | "version": "0.0.1", 4 | "description": "A simple hello world project", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "Daniel", 10 | "license": "ISC" 11 | } 12 | -------------------------------------------------------------------------------- /02/HelloWorldVsCode/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es6", 4 | "module": "amd", 5 | "sourceMap": true, 6 | "watch": true 7 | } 8 | } -------------------------------------------------------------------------------- /02/HelloWorldVsCode/user.js: -------------------------------------------------------------------------------- 1 | class User { 2 | constructor(firstname, lastname) { 3 | this.fullname = firstname + " " + lastname; 4 | } 5 | hello() { 6 | return "Hello, " + this.fullname; 7 | } 8 | } 9 | var user = new User("Mary", "Jane"); 10 | document.body.innerHTML = user.hello(); 11 | //# sourceMappingURL=user.js.map -------------------------------------------------------------------------------- /02/HelloWorldVsCode/user.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"user.js","sourceRoot":"","sources":["user.ts"],"names":["User","User.constructor","User.hello"],"mappings":"AAAA;IAEIA,YAAYA,SAAgBA,EAACA,QAAeA;QACxCC,IAAIA,CAACA,QAAQA,GAAGA,SAASA,GAAGA,GAAGA,GAAGA,QAAQA,CAACA;IAC/CA,CAACA;IACJD,KAAKA;QACJE,MAAMA,CAACA,SAASA,GAAGA,IAAIA,CAACA,QAAQA,CAACA;IAClCA,CAACA;AACFF,CAACA;AACD,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACpC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC"} -------------------------------------------------------------------------------- /02/HelloWorldVsCode/user.ts: -------------------------------------------------------------------------------- 1 | class User { 2 | fullname : string; 3 | constructor(firstname:string,lastname:string) { 4 | this.fullname = firstname + " " + lastname; 5 | } 6 | hello():string{ 7 | return "Hello, " + this.fullname; 8 | } 9 | } 10 | var user = new User("Mary", "Jane"); 11 | document.body.innerHTML = user.hello(); -------------------------------------------------------------------------------- /02/testModules/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.0", 3 | "command": "tsc", 4 | "isShellCommand": true, 5 | "showOutput": "silent", 6 | "problemMatcher": "$tsc" 7 | } -------------------------------------------------------------------------------- /02/testModules/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Module Test 6 | 7 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /02/testModules/index.js: -------------------------------------------------------------------------------- 1 | var module_1 = require("module"); 2 | var f = new module_1.foo(); 3 | console.log(f.getHelloWorldFromModule()); 4 | //# sourceMappingURL=index.js.map -------------------------------------------------------------------------------- /02/testModules/index.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,uBAAkB,QAElB,CAAC,CAFyB;AAE1B,IAAI,CAAC,GAAO,IAAI,YAAG,EAAE,CAAC;AACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC"} -------------------------------------------------------------------------------- /02/testModules/index.ts: -------------------------------------------------------------------------------- 1 | import {foo} from "module" 2 | 3 | var f:foo = new foo(); 4 | console.log(f.getHelloWorldFromModule()); -------------------------------------------------------------------------------- /02/testModules/module.js: -------------------------------------------------------------------------------- 1 | class foo { 2 | getHelloWorldFromModule() { 3 | return "Hello World from modules"; 4 | } 5 | } 6 | exports.foo = foo; 7 | //# sourceMappingURL=module.js.map -------------------------------------------------------------------------------- /02/testModules/module.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"module.js","sourceRoot":"","sources":["module.ts"],"names":["foo","foo.getHelloWorldFromModule"],"mappings":"AAAA;IACIA,uBAAuBA;QACnBC,MAAMA,CAACA,0BAA0BA,CAACA;IACtCA,CAACA;AACLD,CAACA;AAJY,WAAG,MAIf,CAAA"} -------------------------------------------------------------------------------- /02/testModules/module.ts: -------------------------------------------------------------------------------- 1 | export class foo{ 2 | getHelloWorldFromModule():string{ 3 | return "Hello World from modules"; 4 | } 5 | } -------------------------------------------------------------------------------- /02/testModules/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "testModules", 3 | "version": "0.0.0", 4 | "description": "A test module app", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "tsc" 8 | }, 9 | "keywords": [ 10 | "test", 11 | "module", 12 | "systemjs" 13 | ], 14 | "author": "daniel", 15 | "license": "ISC", 16 | "dependencies": { 17 | "systemjs": "^0.19.11" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /02/testModules/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es6", 4 | "module": "system", 5 | "sourceMap": true 6 | }, 7 | "files": [ 8 | "index.ts" 9 | ] 10 | } -------------------------------------------------------------------------------- /02/user.js: -------------------------------------------------------------------------------- 1 | class User { 2 | constructor(firstname, lastname) { 3 | this.fullname = firstname + " " + lastname; 4 | } 5 | hello() { 6 | return "Hello, " + this.fullname; 7 | } 8 | } 9 | var user = new User("Mary", "Jane"); 10 | alert(user.hello()); 11 | //# sourceMappingURL=user.js.map -------------------------------------------------------------------------------- /02/user.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"user.js","sourceRoot":"","sources":["user.ts"],"names":["User","User.constructor","User.hello"],"mappings":"AAAA;IAEIA,YAAYA,SAAgBA,EAACA,QAAeA;QACxCC,IAAIA,CAACA,QAAQA,GAAGA,SAASA,GAAGA,GAAGA,GAAGA,QAAQA,CAACA;IAC/CA,CAACA;IACJD,KAAKA;QACJE,MAAMA,CAACA,SAASA,GAAGA,IAAIA,CAACA,QAAQA,CAACA;IAClCA,CAACA;AACFF,CAACA;AACD,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACpC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC"} -------------------------------------------------------------------------------- /02/user.ts: -------------------------------------------------------------------------------- 1 | class User { 2 | fullname : string; 3 | constructor(firstname:string,lastname:string) { 4 | this.fullname = firstname + " " + lastname; 5 | } 6 | hello():string{ 7 | return "Hello, " + this.fullname; 8 | } 9 | } 10 | var user = new User("Mary", "Jane"); 11 | alert(user.hello()); -------------------------------------------------------------------------------- /03/AngularBase/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.0", 3 | "command": "tsc", 4 | "isShellCommand": true, 5 | "showOutput": "silent", 6 | "problemMatcher": "$tsc" 7 | } -------------------------------------------------------------------------------- /03/AngularBase/app/app.component.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/core'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { 5 | var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; 6 | if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 7 | else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; 8 | return c > 3 && r && Object.defineProperty(target, key, r), r; 9 | }; 10 | var __metadata = (this && this.__metadata) || function (k, v) { 11 | if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); 12 | }; 13 | var core_1; 14 | var AppComponent; 15 | return { 16 | setters:[ 17 | function (core_1_1) { 18 | core_1 = core_1_1; 19 | }], 20 | execute: function() { 21 | AppComponent = (function () { 22 | function AppComponent() { 23 | } 24 | AppComponent = __decorate([ 25 | core_1.Component({ 26 | selector: 'my-app', 27 | template: '

My First Angular 2 App

' 28 | }), 29 | __metadata('design:paramtypes', []) 30 | ], AppComponent); 31 | return AppComponent; 32 | }()); 33 | exports_1("AppComponent", AppComponent); 34 | } 35 | } 36 | }); 37 | //# sourceMappingURL=app.component.js.map -------------------------------------------------------------------------------- /03/AngularBase/app/app.component.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"app.component.js","sourceRoot":"","sources":["app.component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;YAMA;gBAAA;gBAA4B,CAAC;gBAJ7B;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,iCAAiC;qBAC9C,CAAC;;gCAAA;gBAC0B,mBAAC;YAAD,CAAC,AAA7B,IAA6B;YAA7B,uCAA6B,CAAA"} -------------------------------------------------------------------------------- /03/AngularBase/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import {Component} from '@angular/core' 2 | 3 | @Component({ 4 | selector: 'my-app', 5 | template: '

My First Angular 2 App

' 6 | }) 7 | export class AppComponent { } -------------------------------------------------------------------------------- /03/AngularBase/app/boot.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/platform-browser-dynamic', './app.component'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var platform_browser_dynamic_1, app_component_1; 5 | return { 6 | setters:[ 7 | function (platform_browser_dynamic_1_1) { 8 | platform_browser_dynamic_1 = platform_browser_dynamic_1_1; 9 | }, 10 | function (app_component_1_1) { 11 | app_component_1 = app_component_1_1; 12 | }], 13 | execute: function() { 14 | platform_browser_dynamic_1.bootstrap(app_component_1.AppComponent); 15 | } 16 | } 17 | }); 18 | //# sourceMappingURL=boot.js.map -------------------------------------------------------------------------------- /03/AngularBase/app/boot.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"boot.js","sourceRoot":"","sources":["boot.ts"],"names":[],"mappings":";;;;;;;;;;;;;YAGA,oCAAS,CAAC,4BAAY,CAAC,CAAC"} -------------------------------------------------------------------------------- /03/AngularBase/app/boot.ts: -------------------------------------------------------------------------------- 1 | import {bootstrap} from '@angular/platform-browser-dynamic' 2 | import {AppComponent} from './app.component' 3 | 4 | bootstrap(AppComponent); -------------------------------------------------------------------------------- /03/AngularBase/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Angular Base 4 | 5 | 6 | 7 | 8 | 9 | 12 | 13 | 14 | Loading... 15 | 16 | -------------------------------------------------------------------------------- /03/AngularBase/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "angularbase", 3 | "version": "1.0.0", 4 | "description": "A base project", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [ 10 | "angular", 11 | "base", 12 | "project" 13 | ], 14 | "author": "Daniel Schmitz", 15 | "license": "ISC", 16 | "dependencies": { 17 | "@angular/common": "^2.0.0-rc.2", 18 | "@angular/compiler": "^2.0.0-rc.2", 19 | "@angular/core": "^2.0.0-rc.2", 20 | "@angular/platform-browser": "^2.0.0-rc.2", 21 | "@angular/platform-browser-dynamic": "^2.0.0-rc.2", 22 | "angular2-in-memory-web-api": "0.0.7", 23 | "es6-shim": "^0.35.0", 24 | "reflect-metadata": "^0.1.3", 25 | "rxjs": "^5.0.0-beta.6", 26 | "systemjs": "^0.19.27", 27 | "zone.js": "^0.6.12" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /03/AngularBase/systemjs.config.js: -------------------------------------------------------------------------------- 1 | (function (global) { 2 | 3 | // mapa de carregamento do systemjs 4 | var map = { 5 | 'app': 'app', // 'dist', 6 | 'rxjs': 'node_modules/rxjs', 7 | 'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api', 8 | '@angular': 'node_modules/@angular' 9 | }; 10 | 11 | // pacotes que o systemjs pode carregar 12 | // caso não encontre o arquivo no mapa 13 | var packages = { 14 | 'app': { main: 'boot.js', defaultExtension: 'js' }, 15 | 'rxjs': { defaultExtension: 'js' }, 16 | 'angular2-in-memory-web-api': { defaultExtension: 'js' }, 17 | }; 18 | 19 | var packageNames = [ 20 | '@angular/common', 21 | '@angular/compiler', 22 | '@angular/core', 23 | '@angular/http', 24 | '@angular/platform-browser', 25 | '@angular/platform-browser-dynamic', 26 | '@angular/router', 27 | '@angular/router-deprecated', 28 | '@angular/testing', 29 | '@angular/upgrade', 30 | ]; 31 | 32 | // mapeia os pacotes do angular de acordo com o packageName acima 33 | packageNames.forEach(function (pkgName) { 34 | packages[pkgName] = { main: 'index.js', defaultExtension: 'js' }; 35 | }); 36 | 37 | var config = { 38 | map: map, 39 | packages: packages 40 | } 41 | 42 | if (global.filterSystemConfig) { global.filterSystemConfig(config); } 43 | System.config(config); 44 | 45 | })(this); -------------------------------------------------------------------------------- /03/AngularBase/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es6", 4 | "module": "system", 5 | "sourceMap": true, 6 | "moduleResolution": "node", 7 | "emitDecoratorMetadata": true, 8 | "experimentalDecorators": true, 9 | "removeComments": false, 10 | "noImplicitAny": false 11 | }, 12 | "exclude": [ 13 | "node_modules" 14 | ] 15 | } -------------------------------------------------------------------------------- /03/AngularPanel/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.0", 3 | "command": "tsc", 4 | "isShellCommand": true, 5 | "showOutput": "silent", 6 | "problemMatcher": "$tsc" 7 | } -------------------------------------------------------------------------------- /03/AngularPanel/app/app.component.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | Open a terminal 6 | 7 | 8 | Say hello world! 9 | 10 | -------------------------------------------------------------------------------- /03/AngularPanel/app/app.component.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/core', './container'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { 5 | var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; 6 | if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 7 | else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; 8 | return c > 3 && r && Object.defineProperty(target, key, r), r; 9 | }; 10 | var __metadata = (this && this.__metadata) || function (k, v) { 11 | if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); 12 | }; 13 | var core_1, container_1; 14 | var AppComponent; 15 | return { 16 | setters:[ 17 | function (core_1_1) { 18 | core_1 = core_1_1; 19 | }, 20 | function (container_1_1) { 21 | container_1 = container_1_1; 22 | }], 23 | execute: function() { 24 | AppComponent = (function () { 25 | function AppComponent() { 26 | } 27 | AppComponent = __decorate([ 28 | core_1.Component({ 29 | selector: 'my-app', 30 | templateUrl: 'app/app.component.html', 31 | directives: [container_1.Panel] 32 | }), 33 | __metadata('design:paramtypes', []) 34 | ], AppComponent); 35 | return AppComponent; 36 | }()); 37 | exports_1("AppComponent", AppComponent); 38 | } 39 | } 40 | }); 41 | //# sourceMappingURL=app.component.js.map -------------------------------------------------------------------------------- /03/AngularPanel/app/app.component.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"app.component.js","sourceRoot":"","sources":["app.component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;YAQA;gBAAA;gBAA4B,CAAC;gBAL7B;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,QAAQ;wBAClB,WAAW,EAAE,wBAAwB;wBACrC,UAAU,EAAE,CAAC,iBAAK,CAAC;qBACtB,CAAC;;gCAAA;gBAC0B,mBAAC;YAAD,CAAC,AAA7B,IAA6B;YAA7B,uCAA6B,CAAA"} -------------------------------------------------------------------------------- /03/AngularPanel/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import {Component} from '@angular/core'; 2 | import {Panel} from './container' 3 | 4 | @Component({ 5 | selector: 'my-app', 6 | templateUrl: 'app/app.component.html', 7 | directives: [Panel] 8 | }) 9 | export class AppComponent { } -------------------------------------------------------------------------------- /03/AngularPanel/app/boot.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/platform-browser-dynamic', './app.component'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var platform_browser_dynamic_1, app_component_1; 5 | return { 6 | setters:[ 7 | function (platform_browser_dynamic_1_1) { 8 | platform_browser_dynamic_1 = platform_browser_dynamic_1_1; 9 | }, 10 | function (app_component_1_1) { 11 | app_component_1 = app_component_1_1; 12 | }], 13 | execute: function() { 14 | platform_browser_dynamic_1.bootstrap(app_component_1.AppComponent); 15 | } 16 | } 17 | }); 18 | //# sourceMappingURL=boot.js.map -------------------------------------------------------------------------------- /03/AngularPanel/app/boot.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"boot.js","sourceRoot":"","sources":["boot.ts"],"names":[],"mappings":";;;;;;;;;;;;;YAGA,oCAAS,CAAC,4BAAY,CAAC,CAAC"} -------------------------------------------------------------------------------- /03/AngularPanel/app/boot.ts: -------------------------------------------------------------------------------- 1 | import {bootstrap} from '@angular/platform-browser-dynamic' 2 | import {AppComponent} from './app.component' 3 | 4 | bootstrap(AppComponent); -------------------------------------------------------------------------------- /03/AngularPanel/app/container.js: -------------------------------------------------------------------------------- 1 | System.register(['./container/panel'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | function exportStar_1(m) { 5 | var exports = {}; 6 | for(var n in m) { 7 | if (n !== "default") exports[n] = m[n]; 8 | } 9 | exports_1(exports); 10 | } 11 | return { 12 | setters:[ 13 | function (panel_1_1) { 14 | exportStar_1(panel_1_1); 15 | }], 16 | execute: function() { 17 | } 18 | } 19 | }); 20 | //# sourceMappingURL=container.js.map -------------------------------------------------------------------------------- /03/AngularPanel/app/container.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"container.js","sourceRoot":"","sources":["container.ts"],"names":[],"mappings":""} -------------------------------------------------------------------------------- /03/AngularPanel/app/container.ts: -------------------------------------------------------------------------------- 1 | export * from './container/panel' -------------------------------------------------------------------------------- /03/AngularPanel/app/container/panel.html: -------------------------------------------------------------------------------- 1 |
2 |
{{title}}
3 |
4 |
-------------------------------------------------------------------------------- /03/AngularPanel/app/container/panel.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/core'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { 5 | var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; 6 | if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 7 | else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; 8 | return c > 3 && r && Object.defineProperty(target, key, r), r; 9 | }; 10 | var __metadata = (this && this.__metadata) || function (k, v) { 11 | if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); 12 | }; 13 | var core_1; 14 | var Panel; 15 | return { 16 | setters:[ 17 | function (core_1_1) { 18 | core_1 = core_1_1; 19 | }], 20 | execute: function() { 21 | Panel = (function () { 22 | function Panel() { 23 | } 24 | Panel = __decorate([ 25 | core_1.Component({ 26 | selector: 'panel', 27 | templateUrl: 'app/container/panel.html', 28 | inputs: ['title'] 29 | }), 30 | __metadata('design:paramtypes', []) 31 | ], Panel); 32 | return Panel; 33 | }()); 34 | exports_1("Panel", Panel); 35 | } 36 | } 37 | }); 38 | //# sourceMappingURL=panel.js.map -------------------------------------------------------------------------------- /03/AngularPanel/app/container/panel.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"panel.js","sourceRoot":"","sources":["panel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;YAOA;gBAAA;gBAAqB,CAAC;gBALtB;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,OAAO;wBACjB,WAAW,EAAE,0BAA0B;wBACvC,MAAM,EAAE,CAAC,OAAO,CAAC;qBACpB,CAAC;;yBAAA;gBACmB,YAAC;YAAD,CAAC,AAAtB,IAAsB;YAAtB,yBAAsB,CAAA"} -------------------------------------------------------------------------------- /03/AngularPanel/app/container/panel.ts: -------------------------------------------------------------------------------- 1 | import {Component} from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'panel', 5 | templateUrl: 'app/container/panel.html', 6 | inputs: ['title'] 7 | }) 8 | export class Panel { } -------------------------------------------------------------------------------- /03/AngularPanel/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Angular Panel 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 14 | 15 | 16 |
17 | Loading... 18 |
19 | 20 | -------------------------------------------------------------------------------- /03/AngularPanel/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "AngularBase", 3 | "version": "0.0.1", 4 | "description": "A base project", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "npm test", 8 | "start": "live-server" 9 | }, 10 | "keywords": [ 11 | "angular", 12 | "base", 13 | "project" 14 | ], 15 | "author": "Daniel Schmitz", 16 | "license": "ISC", 17 | "dependencies": { 18 | "@angular/common": "^2.0.0-rc.2", 19 | "@angular/compiler": "^2.0.0-rc.2", 20 | "@angular/core": "^2.0.0-rc.2", 21 | "@angular/platform-browser": "^2.0.0-rc.2", 22 | "@angular/platform-browser-dynamic": "^2.0.0-rc.2", 23 | "angular2-in-memory-web-api": "0.0.7", 24 | "bootstrap": "^3.3.6", 25 | "es6-shim": "^0.35.0", 26 | "reflect-metadata": "^0.1.3", 27 | "rxjs": "^5.0.0-beta.6", 28 | "systemjs": "^0.19.27", 29 | "zone.js": "^0.6.12" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /03/AngularPanel/systemjs.config.js: -------------------------------------------------------------------------------- 1 | (function (global) { 2 | 3 | // mapa de carregamento do systemjs 4 | var map = { 5 | 'app': 'app', // 'dist', 6 | 'rxjs': 'node_modules/rxjs', 7 | 'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api', 8 | '@angular': 'node_modules/@angular' 9 | }; 10 | 11 | // pacotes que o systemjs pode carregar 12 | // caso não encontre o arquivo no mapa 13 | var packages = { 14 | 'app': { main: 'boot.js', defaultExtension: 'js' }, 15 | 'rxjs': { defaultExtension: 'js' }, 16 | 'angular2-in-memory-web-api': { defaultExtension: 'js' }, 17 | }; 18 | 19 | var packageNames = [ 20 | '@angular/common', 21 | '@angular/compiler', 22 | '@angular/core', 23 | '@angular/http', 24 | '@angular/platform-browser', 25 | '@angular/platform-browser-dynamic', 26 | '@angular/router', 27 | '@angular/router-deprecated', 28 | '@angular/testing', 29 | '@angular/upgrade', 30 | ]; 31 | 32 | // mapeia os pacotes do angular de acordo com o packageName acima 33 | packageNames.forEach(function (pkgName) { 34 | packages[pkgName] = { main: 'index.js', defaultExtension: 'js' }; 35 | }); 36 | 37 | var config = { 38 | map: map, 39 | packages: packages 40 | } 41 | 42 | if (global.filterSystemConfig) { global.filterSystemConfig(config); } 43 | System.config(config); 44 | 45 | })(this); -------------------------------------------------------------------------------- /03/AngularPanel/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es6", 4 | "module": "system", 5 | "moduleResolution": "node", 6 | "sourceMap": true, 7 | "emitDecoratorMetadata": true, 8 | "experimentalDecorators": true, 9 | "removeComments": false, 10 | "noImplicitAny": false, 11 | "watch": true 12 | }, 13 | "exclude": [ 14 | "node_modules" 15 | ] 16 | } -------------------------------------------------------------------------------- /03/AngularPlayList/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.1.0", 3 | "command": "tsc", 4 | "isShellCommand": true, 5 | "showOutput": "silent", 6 | "problemMatcher": "$tsc" 7 | } -------------------------------------------------------------------------------- /03/AngularPlayList/app/app.component.html: -------------------------------------------------------------------------------- 1 |

2 | {{title}} 3 |

4 | 5 | 7 | 8 | 9 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /03/AngularPlayList/app/app.component.js: -------------------------------------------------------------------------------- 1 | System.register(['@angular/core', './config.service', './video', './videolist.component', './videodetail.component'], function(exports_1, context_1) { 2 | "use strict"; 3 | var __moduleName = context_1 && context_1.id; 4 | var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { 5 | var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; 6 | if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 7 | else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; 8 | return c > 3 && r && Object.defineProperty(target, key, r), r; 9 | }; 10 | var __metadata = (this && this.__metadata) || function (k, v) { 11 | if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); 12 | }; 13 | var core_1, config_service_1, video_1, videolist_component_1, videodetail_component_1; 14 | var AppComponent; 15 | return { 16 | setters:[ 17 | function (core_1_1) { 18 | core_1 = core_1_1; 19 | }, 20 | function (config_service_1_1) { 21 | config_service_1 = config_service_1_1; 22 | }, 23 | function (video_1_1) { 24 | video_1 = video_1_1; 25 | }, 26 | function (videolist_component_1_1) { 27 | videolist_component_1 = videolist_component_1_1; 28 | }, 29 | function (videodetail_component_1_1) { 30 | videodetail_component_1 = videodetail_component_1_1; 31 | }], 32 | execute: function() { 33 | AppComponent = (function () { 34 | function AppComponent() { 35 | this.title = config_service_1.Config.TITLE_PAGE; 36 | this.videos = [ 37 | new video_1.Video(1, "Building apps with Firebase and Angular 2 - Sara Robinson", "http://www.youtube.com/embed/RD0xYicNcaY", "Firebase is a powerful platform for building mobile and web applications. Use Firebase to store and sync data instantly, authenticate users, and easily deploy your web app. In this talk, you’ll learn how you can use Firebase to add a backend to your Angular app in minutes. Sara will demonstrate how to get started with Firebase and Angular 2. At the end she’ll risk it all by live coding and deploying an app with Firebase and Angular!"), 38 | new video_1.Video(2, "Better concepts, less code in Angular 2 - Victor Savkin and Tobias Bosch", "http://www.youtube.com/embed/4YmnbGoh49U", "Learn how Angular 2 makes hard problems simple by introducing new powerful concepts.") 39 | ]; 40 | } 41 | AppComponent.prototype.onSelectVideo = function (video) { 42 | //console.log(JSON.stringify(video)); 43 | this.selectedVideo = video; 44 | }; 45 | AppComponent.prototype.onCloseDetailForm = function (event) { 46 | this.selectedVideo = null; 47 | }; 48 | AppComponent.prototype.newVideo = function () { 49 | var v = new video_1.Video(this.videos.length + 1, "A new video"); 50 | this.videos.push(v); 51 | this.selectedVideo = v; 52 | }; 53 | AppComponent = __decorate([ 54 | core_1.Component({ 55 | selector: 'my-app', 56 | templateUrl: 'app/app.component.html', 57 | directives: [videolist_component_1.VideoListComponent, videodetail_component_1.VideoDetailComponent] 58 | }), 59 | __metadata('design:paramtypes', []) 60 | ], AppComponent); 61 | return AppComponent; 62 | }()); 63 | exports_1("AppComponent", AppComponent); 64 | } 65 | } 66 | }); 67 | //# sourceMappingURL=app.component.js.map -------------------------------------------------------------------------------- /03/AngularPlayList/app/app.component.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"app.component.js","sourceRoot":"","sources":["app.component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAWA;gBAKI;oBAJA,UAAK,GAAG,uBAAM,CAAC,UAAU,CAAC;oBAKtB,IAAI,CAAC,MAAM,GAAG;wBACV,IAAI,aAAK,CAAC,CAAC,EAAC,2DAA2D,EAAC,0CAA0C,EAAC,sbAAsb,CAAC;wBAC1iB,IAAI,aAAK,CAAC,CAAC,EAAC,0EAA0E,EAAC,0CAA0C,EAAC,sFAAsF,CAAC;qBAC5N,CAAA;gBACL,CAAC;gBAED,oCAAa,GAAb,UAAc,KAAK;oBACf,qCAAqC;oBACrC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC/B,CAAC;gBAED,wCAAiB,GAAjB,UAAkB,KAAK;oBACnB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAC9B,CAAC;gBAED,+BAAQ,GAAR;oBACI,IAAI,CAAC,GAAW,IAAI,aAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAC,CAAC,EAAC,aAAa,CAAC,CAAC;oBAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACpB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;gBAC3B,CAAC;gBA9BL;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,QAAQ;wBAClB,WAAW,EAAE,wBAAwB;wBACrC,UAAU,EAAE,CAAC,wCAAkB,EAAC,4CAAoB,CAAC;qBACxD,CAAC;;gCAAA;gBA2BF,mBAAC;YAAD,CAAC,AA1BD,IA0BC;YA1BD,uCA0BC,CAAA"} -------------------------------------------------------------------------------- /03/AngularPlayList/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import {Component} from '@angular/core' 2 | import {Config} from './config.service' 3 | import {Video} from './video' 4 | import {VideoListComponent} from './videolist.component' 5 | import {VideoDetailComponent} from './videodetail.component' 6 | 7 | @Component({ 8 | selector: 'my-app', 9 | templateUrl: 'app/app.component.html', 10 | directives: [VideoListComponent,VideoDetailComponent] 11 | }) 12 | export class AppComponent { 13 | title = Config.TITLE_PAGE; 14 | videos : Array