diff --git a/tests/ui/unit/init.js b/tests/ui/unit/init.js index b84f42605..09132e279 100644 --- a/tests/ui/unit/init.js +++ b/tests/ui/unit/init.js @@ -9,16 +9,7 @@ window.angular = require('angular'); window.React = require('react'); require('jasmine-jquery'); require('angular-mocks'); -require('angular-resource'); -require('angular-route'); -require('angular-sanitize'); -require('angular-local-storage'); -require('angular-toarrayfilter'); require('mousetrap'); -require('ngreact'); -require('angular1-ui-bootstrap4'); -require('angular-marked'); -require('../../../ui/vendor/resizer.js'); const Adapter = require('enzyme-adapter-react-16'); const Enzyme = require('enzyme'); diff --git a/ui/entry-index.js b/ui/entry-index.js index 00f030608..897ba9f34 100644 --- a/ui/entry-index.js +++ b/ui/entry-index.js @@ -17,18 +17,9 @@ require('./css/treeherder-loading-overlay.css'); // Vendor JS require('angular'); -require('angular-route'); -require('angular-resource'); -require('angular-sanitize'); -require('angular-toarrayfilter'); -require('angular-local-storage'); require('bootstrap/dist/js/bootstrap'); -require('angular1-ui-bootstrap4'); require('mousetrap'); -require('angular-marked'); -require('ngreact'); require('jquery.scrollto'); -require('./vendor/resizer.js'); // Bootstrap the Angular modules against which everything will be registered require('./js/treeherder_app.js'); diff --git a/ui/entry-logviewer.js b/ui/entry-logviewer.js index 37ae0f1e6..bb43a334e 100644 --- a/ui/entry-logviewer.js +++ b/ui/entry-logviewer.js @@ -9,12 +9,7 @@ require('./css/logviewer.css'); // Vendor JS require('angular'); -require('angular-route'); -require('angular-resource'); -require('angular-sanitize'); -require('angular-local-storage'); require('bootstrap/dist/js/bootstrap'); -require('./vendor/resizer.js'); // Bootstrap the Angular modules against which everything will be registered require('./js/logviewer.js'); diff --git a/ui/entry-perf.js b/ui/entry-perf.js index 10e1399bc..4d8cac940 100644 --- a/ui/entry-perf.js +++ b/ui/entry-perf.js @@ -12,14 +12,8 @@ require('metrics-graphics/dist/metricsgraphics.css'); // Vendor JS require('angular'); -require('angular-resource'); -require('angular-ui-router'); -require('angular-sanitize'); -require('angular-local-storage'); require('mousetrap'); require('bootstrap/dist/js/bootstrap'); -require('angular1-ui-bootstrap4'); -require('angular-clipboard'); // The official 'flot' NPM package is out of date, so we're using 'jquery.flot' // instead, which is identical to https://github.com/flot/flot require('jquery.flot'); diff --git a/ui/js/logviewer.js b/ui/js/logviewer.js index 4bf5462da..f03f8b333 100644 --- a/ui/js/logviewer.js +++ b/ui/js/logviewer.js @@ -1,4 +1,6 @@ -const logViewerApp = angular.module('logviewer', ['treeherder']); +import treeherderModule from './treeherder'; + +const logViewerApp = angular.module('logviewer', [treeherderModule.name]); logViewerApp.config(['$compileProvider', '$locationProvider', '$resourceProvider', function ($compileProvider, $locationProvider, $resourceProvider) { diff --git a/ui/js/perf.js b/ui/js/perf.js index 95805e997..9c27e511f 100644 --- a/ui/js/perf.js +++ b/ui/js/perf.js @@ -1,6 +1,12 @@ +import angularClipboardModule from 'angular-clipboard'; +import uiBootstrap from 'angular1-ui-bootstrap4'; +import uiRouter from 'angular-ui-router'; + +import treeherderModule from './treeherder'; + export default angular.module('perf', [ - 'ui.router', - 'ui.bootstrap', - 'treeherder', - 'angular-clipboard', + uiRouter, + uiBootstrap, + treeherderModule.name, + angularClipboardModule.name, ]); diff --git a/ui/js/treeherder.js b/ui/js/treeherder.js index e29fccb66..e103c62d6 100644 --- a/ui/js/treeherder.js +++ b/ui/js/treeherder.js @@ -1,5 +1,9 @@ +import ngResource from 'angular-resource'; +import ngSanitize from 'angular-sanitize'; +import LocalStorageModule from 'angular-local-storage'; + export default angular.module('treeherder', [ - 'ngResource', - 'ngSanitize', - 'LocalStorageModule', + ngResource, + ngSanitize, + LocalStorageModule, ]); diff --git a/ui/js/treeherder_app.js b/ui/js/treeherder_app.js index 453033573..833051ed3 100644 --- a/ui/js/treeherder_app.js +++ b/ui/js/treeherder_app.js @@ -1,11 +1,20 @@ +import angularToArrayfilter from 'angular-toarrayfilter'; +import hcMarked from 'angular-marked'; +import ngReactModule from 'ngreact'; +import ngRoute from 'angular-route'; +import uiBootstrap from 'angular1-ui-bootstrap4'; +import mcResizer from '../vendor/resizer'; + +import treeherderModule from './treeherder'; + const treeherderApp = angular.module('treeherder.app', [ - 'treeherder', - 'ui.bootstrap', - 'ngRoute', - 'mc.resizer', - 'angular-toArrayFilter', - 'react', - 'hc.marked', + treeherderModule.name, + uiBootstrap, + ngRoute, + mcResizer, + angularToArrayfilter, + ngReactModule.name, + hcMarked, ]); treeherderApp.config(['$compileProvider', '$locationProvider', '$routeProvider', '$httpProvider', diff --git a/ui/vendor/resizer.js b/ui/vendor/resizer.js index 5d8fadaef..7901dad4c 100644 --- a/ui/vendor/resizer.js +++ b/ui/vendor/resizer.js @@ -42,3 +42,5 @@ angular.module('mc.resizer', []).directive('resizer', ['$document', function($do } }; }]); + +export default 'mc.resizer';