<!DOCTYPE html>
<html>
<head>
<base href="." />
<title>angular2 playground</title>
<link rel="stylesheet" href="https://unpkg.com/devextreme@17.1/dist/css/dx.common.css" />
<link rel="stylesheet" href="https://unpkg.com/devextreme@17.1/dist/css/dx.light.css" />
<link rel="stylesheet" href="style.css" />
<script src="https://unpkg.com/core-js@2.4.1/client/shim.min.js"></script>
<script src="https://unpkg.com/zone.js/dist/zone.js"></script>
<script src="https://unpkg.com/zone.js/dist/long-stack-trace-zone.js"></script>
<script src="https://unpkg.com/reflect-metadata@0.1.3/Reflect.js"></script>
<script src="https://unpkg.com/systemjs@0.19.31/dist/system.js"></script>
<script src="config.js"></script>
<script>
System.import('app')
.catch(console.error.bind(console));
</script>
</head>
<body>
<my-app>
loading...
</my-app>
</body>
</html>
/* Styles go here */
html, body {
height: 100%;
margin: 0;
}
### Angular Starter Plunker - Typescript
System.config({
//use typescript for compilation
transpiler: 'typescript',
//typescript compiler options
typescriptOptions: {
emitDecoratorMetadata: true
},
paths: {
'npm:': 'https://unpkg.com/'
},
//map tells the System loader where to look for things
map: {
'app': './src',
'@angular/core': 'npm:@angular/core@2.4.3/bundles/core.umd.js',
'@angular/common': 'npm:@angular/common@2.4.3/bundles/common.umd.js',
'@angular/compiler': 'npm:@angular/compiler@2.4.3/bundles/compiler.umd.js',
'@angular/platform-browser': 'npm:@angular/platform-browser@2.4.3/bundles/platform-browser.umd.js',
'@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic@2.4.3/bundles/platform-browser-dynamic.umd.js',
'@angular/http': 'npm:@angular/http@2.4.3/bundles/http.umd.js',
'@angular/router': 'npm:@angular/router@3.4.3/bundles/router.umd.js',
'@angular/forms': 'npm:@angular/forms@2.4.3/bundles/forms.umd.js',
'rxjs': 'npm:rxjs',
'typescript': 'npm:typescript@2.0.2/lib/typescript.js',
'ng2-split-pane': 'npm:ng2-split-pane@1.0.5/lib/ng2-split-pane.js',
'devextreme': 'npm:devextreme@17.1',
'jquery': 'npm:jquery@3.1.1/dist/jquery.min.js',
'jszip': 'npm:jszip@3.1.3/dist/jszip.min.js',
'devextreme-angular': 'npm:devextreme-angular@17.1'
},
//packages defines our app package
packages: {
app: {
main: './main.ts',
defaultExtension: 'ts'
},
rxjs: {
defaultExtension: 'js'
},
'devextreme': {
defaultExtension: 'js'
},
'devextreme-angular': {
main: 'index.js',
defaultExtension: 'js'
}
}
});
//main entry point
import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {AppModule} from './app';
platformBrowserDynamic().bootstrapModule(AppModule)
//our root app component
import {Component, NgModule} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'
import { SplitPaneModule } from 'ng2-split-pane';
import {DevExtremeModule} from 'devextreme-angular';
@Component({
selector: 'my-app',
styles: [`
body, html {
height: 100%;
width: 100%;
overflow: hidden;
}
.upper {
height: 100%;
width: 100%;
background-color: #fdd;
}
.lower {
height: 100%;
width: 100%;
background-color: #bbb;
}
.left {
height: 100%;
background-color: #ddf;
}`],
template: `
<div style="height:100%; width:100%; border:1px solid #555">
<div style="height: 100%;">
<horizontal-split-pane #box1 primary-component-minsize="35" secondary-component-minsize="35" local-storage-key="split-pane" (on-change)="onHChange($event)">
<div class="split-pane-content-primary">
<div class="upper">
<dx-tab-panel
#tabPanel
[selectedIndex]="0"
[loop]="false"
[animationEnabled]="true"
[swipeEnabled]="true"
>
<dxi-item title="Selected Positions">
</dxi-item>
<dxi-item title="All Positions">
</dxi-item>
</dx-tab-panel>
</div>
</div>
<div class="split-pane-content-secondary" style="height:100%;">
<div class="lower">
<dx-tab-panel
#tabPanel
[selectedIndex]="0"
[loop]="false"
[animationEnabled]="true"
[swipeEnabled]="true"
>
<dxi-item title="Live Trades">
Loading Live Trades
</dxi-item>
<dxi-item title="Live Market Data">
Loading Live Market Data
</dxi-item>
</dx-tab-panel>
</div>
</div>
</horizontal-split-pane>
</div>
</div>`,
host: {'style' : 'height: 100%'}
})
export class App {
name:string;
constructor() {
this.buttonText = 'DevExtreme button!';
}
onHChange(e:any): void {
console.log(e);
}
}
@NgModule({
imports: [ BrowserModule, SplitPaneModule, DevExtremeModule ],
declarations: [ App ],
bootstrap: [ App ]
})
export class AppModule {}
.upper {
background-color: #fdd;
}
.lower {
background-color: #dfd;
}
.right {
background-color: #ddf;
}