Skip to content

Commit 83ce401

Browse files
committed
tech(systemjs): ok, moving forward
1 parent 7c06b5c commit 83ce401

File tree

6 files changed

+134
-128
lines changed

6 files changed

+134
-128
lines changed

public/app/app.ts

Lines changed: 2 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -1,107 +1,4 @@
1-
///<reference path="headers/common.d.ts" />
21

3-
import 'bootstrap';
4-
import 'lodash-src';
5-
import 'angular-strap';
6-
import 'angular-route';
7-
import 'angular-sanitize';
8-
import 'angular-dragdrop';
9-
import 'angular-bindonce';
10-
import 'angular-ui';
11-
import 'app/core/core';
2+
import {GrafanaApp} from 'app/grafana_app';
123

13-
import _ = require('lodash');
14-
import $ = require('jquery');
15-
import bootstrap = require('bootstrap');
16-
import kbn = require('app/core/utils/kbn');
17-
import angular = require('angular');
18-
import config = require('app/core/config');
19-
20-
import mod from 'app/core/core_module';
21-
console.log(mod);
22-
23-
class GrafanaApp {
24-
registerFunctions: any;
25-
ngModuleDependencies: any[];
26-
preBootModules: any[];
27-
28-
useModule(module) {
29-
if (this.preBootModules) {
30-
this.preBootModules.push(module);
31-
} else {
32-
_.extend(module, this.registerFunctions);
33-
}
34-
this.ngModuleDependencies.push(module.name);
35-
return module;
36-
}
37-
38-
init() {
39-
this.registerFunctions = {};
40-
this.preBootModules = [];
41-
42-
var app = angular.module('grafana', []);
43-
app.constant('grafanaVersion', "@grafanaVersion@");
44-
45-
app.config(($locationProvider, $controllerProvider, $compileProvider, $filterProvider, $provide) => {
46-
console.log('app config');
47-
this.registerFunctions.controller = $controllerProvider.register;
48-
this.registerFunctions.directive = $compileProvider.directive;
49-
this.registerFunctions.factory = $provide.factory;
50-
this.registerFunctions.service = $provide.service;
51-
this.registerFunctions.filter = $filterProvider.register;
52-
});
53-
54-
this.ngModuleDependencies = [
55-
'grafana.core',
56-
'ngRoute',
57-
'ngSanitize',
58-
'$strap.directives',
59-
'ang-drag-drop',
60-
'grafana',
61-
'pasvaz.bindonce',
62-
'ui.bootstrap.tabs',
63-
];
64-
65-
var module_types = ['controllers', 'directives', 'factories', 'services', 'filters', 'routes'];
66-
67-
_.each(module_types, type => {
68-
var moduleName = 'grafana.' + type;
69-
this.useModule(angular.module(moduleName, []));
70-
});
71-
72-
//var preBootRequires = [System.import('app/features/all')];
73-
var preBootRequires = [];
74-
var pluginModules = config.bootData.pluginModules || [];
75-
76-
// add plugin modules
77-
for (var i = 0; i < pluginModules.length; i++) {
78-
preBootRequires.push(System.import(pluginModules[i]));
79-
}
80-
81-
Promise.all(preBootRequires).then(() => {
82-
// disable tool tip animation
83-
//$.fn.tooltip.defaults.animation = false;
84-
// bootstrap the app
85-
angular.bootstrap(document, this.ngModuleDependencies).invoke(() => {
86-
_.each(this.preBootModules, module => {
87-
_.extend(module, this.registerFunctions);
88-
});
89-
90-
this.preBootModules = null;
91-
});
92-
}).catch(function(err) {
93-
console.log('Application boot failed:', err);
94-
});
95-
}
96-
}
97-
98-
var grafanaApp = new GrafanaApp();
99-
100-
export default {
101-
init: function() {
102-
grafanaApp.init();
103-
},
104-
useModule: function(m) {
105-
grafanaApp.useModule(m);
106-
}
107-
};
4+
export default new GrafanaApp();

public/app/core/core.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,4 @@ import * as routes from 'app/core/routes/all';
2828
// export * from './directives/give_focus'
2929
// export * from './filters/filters'
3030

31-
import {Component} from 'vendor/npm/angular2/core';
32-
console.log(Component);
33-
34-
// console.log(Component);
35-
// // console.log(Component);
36-
3731
export {arrayJoin, controllers, services, routes};

public/app/features/dashboard/timepicker/timepicker.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import _ = require('lodash');
66
import moment = require('moment');
77
import kbn = require('app/core/utils/kbn');
88

9-
import * as dateMath from '../../../core/utils/datemath';
10-
import * as rangeUtil from '../../../core/utils/rangeutil';
9+
import * as dateMath from 'app/core/utils/datemath';
10+
import * as rangeUtil from 'app/core/utils/rangeutil';
1111

1212
declare var inputDate: any;
1313

public/app/grafana_app.ts

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
///<reference path="headers/common.d.ts" />
2+
3+
import 'bootstrap';
4+
import 'lodash-src';
5+
import 'angular-strap';
6+
import 'angular-route';
7+
import 'angular-sanitize';
8+
import 'angular-dragdrop';
9+
import 'angular-bindonce';
10+
import 'angular-ui';
11+
import 'app/core/core';
12+
13+
import _ = require('lodash');
14+
import $ = require('jquery');
15+
import bootstrap = require('bootstrap');
16+
import kbn = require('app/core/utils/kbn');
17+
import angular = require('angular');
18+
import config = require('app/core/config');
19+
20+
export class GrafanaApp {
21+
registerFunctions: any;
22+
ngModuleDependencies: any[];
23+
preBootModules: any[];
24+
25+
useModule(module) {
26+
if (this.preBootModules) {
27+
this.preBootModules.push(module);
28+
} else {
29+
_.extend(module, this.registerFunctions);
30+
}
31+
this.ngModuleDependencies.push(module.name);
32+
return module;
33+
}
34+
35+
init() {
36+
this.registerFunctions = {};
37+
this.preBootModules = [];
38+
39+
var app = angular.module('grafana', []);
40+
app.constant('grafanaVersion', "@grafanaVersion@");
41+
42+
app.config(($locationProvider, $controllerProvider, $compileProvider, $filterProvider, $provide) => {
43+
console.log('app config');
44+
this.registerFunctions.controller = $controllerProvider.register;
45+
this.registerFunctions.directive = $compileProvider.directive;
46+
this.registerFunctions.factory = $provide.factory;
47+
this.registerFunctions.service = $provide.service;
48+
this.registerFunctions.filter = $filterProvider.register;
49+
});
50+
51+
this.ngModuleDependencies = [
52+
'grafana.core',
53+
'ngRoute',
54+
'ngSanitize',
55+
'$strap.directives',
56+
'ang-drag-drop',
57+
'grafana',
58+
'pasvaz.bindonce',
59+
'ui.bootstrap.tabs',
60+
];
61+
62+
var module_types = ['controllers', 'directives', 'factories', 'services', 'filters', 'routes'];
63+
64+
_.each(module_types, type => {
65+
var moduleName = 'grafana.' + type;
66+
this.useModule(angular.module(moduleName, []));
67+
});
68+
69+
//var preBootRequires = [System.import('app/features/all')];
70+
var preBootRequires = [];
71+
var pluginModules = config.bootData.pluginModules || [];
72+
73+
// add plugin modules
74+
for (var i = 0; i < pluginModules.length; i++) {
75+
preBootRequires.push(System.import(pluginModules[i]));
76+
}
77+
78+
Promise.all(preBootRequires).then(() => {
79+
// disable tool tip animation
80+
$.fn.tooltip.defaults.animation = false;
81+
// bootstrap the app
82+
angular.bootstrap(document, this.ngModuleDependencies).invoke(() => {
83+
_.each(this.preBootModules, module => {
84+
_.extend(module, this.registerFunctions);
85+
});
86+
87+
this.preBootModules = null;
88+
});
89+
}).catch(function(err) {
90+
console.log('Application boot failed:', err);
91+
});
92+
}
93+
}
94+

public/views/index.html

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,8 @@
6060
<!-- build:js [[.AppSubUrl]]/public/app/app.js -->
6161
<script src="[[.AppSubUrl]]/public/vendor/npm/es6-shim/es6-shim.js"></script>
6262
<script src="[[.AppSubUrl]]/public/vendor/npm/es6-promise/dist/es6-promise.js"></script>
63-
<script src="[[.AppSubUrl]]/public/vendor/npm/angular2/bundles/angular2-polyfills.js"></script>
6463
<script src="[[.AppSubUrl]]/public/vendor/npm/systemjs/dist/system.src.js"></script>
6564
<script src="[[.AppSubUrl]]/public/vendor/npm/rxjs/bundles/Rx.js"></script>
66-
<script src="[[.AppSubUrl]]/public/vendor/npm/angular2/bundles/angular2.dev.js"></script>
6765
<script src="[[.AppSubUrl]]/public/app/systemjs.conf.js"></script>
6866
<!-- endbuild -->
6967

tsconfig.json

Lines changed: 36 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,38 @@
11
{
22
"compilerOptions": {
3-
"emitDecoratorMetadata": true,
4-
"experimentalDecorators": true,
5-
"sourceMap": true,
6-
"declaration": true,
7-
"outDir": "public_gen",
8-
"noImplicitAny": false,
9-
"target": "es5",
10-
"rootDir": "public",
11-
"module": "system",
12-
"noEmitOnError": true,
13-
"moduleResolution": "classic"
14-
}
15-
}
3+
"sourceMap": true,
4+
"declaration": true,
5+
"outDir": "public_gen",
6+
"noImplicitAny": false,
7+
"target": "es5",
8+
"rootDir": "public/",
9+
"module": "system",
10+
"noEmitOnError": true,
11+
"emitDecoratorMetadata": true
12+
},
13+
"files": [
14+
"public/app/app.ts",
15+
"public/app/core/controllers/grafana_ctrl.ts",
16+
"public/app/core/controllers/signup_ctrl.ts",
17+
"public/app/core/core.ts",
18+
"public/app/core/core_module.ts",
19+
"public/app/core/directives/array_join.ts",
20+
"public/app/core/directives/give_focus.ts",
21+
"public/app/core/filters/filters.ts",
22+
"public/app/core/routes/bundle_loader.ts",
23+
"public/app/core/table_model.ts",
24+
"public/app/core/time_series.ts",
25+
"public/app/core/utils/datemath.ts",
26+
"public/app/core/utils/flatten.ts",
27+
"public/app/core/utils/rangeutil.ts",
28+
"public/app/features/dashboard/timepicker/timepicker.ts",
29+
"public/app/features/panel/panel_meta.ts",
30+
"public/app/plugins/datasource/influxdb/influx_query.ts",
31+
"public/app/plugins/datasource/influxdb/query_part.ts",
32+
"public/app/plugins/panels/table/controller.ts",
33+
"public/app/plugins/panels/table/editor.ts",
34+
"public/app/plugins/panels/table/module.ts",
35+
"public/app/plugins/panels/table/renderer.ts",
36+
"public/app/plugins/panels/table/transformers.ts"
37+
]
38+
}

0 commit comments

Comments
 (0)