mirror of https://github.com/portainer/portainer
76 lines
2.4 KiB
JavaScript
76 lines
2.4 KiB
JavaScript
import toastr from 'toastr';
|
|
import { Terminal } from 'xterm';
|
|
import * as fit from 'xterm/lib/addons/fit/fit';
|
|
|
|
angular.module('portainer').config([
|
|
'$urlRouterProvider',
|
|
'$httpProvider',
|
|
'localStorageServiceProvider',
|
|
'jwtOptionsProvider',
|
|
'AnalyticsProvider',
|
|
'$uibTooltipProvider',
|
|
'$compileProvider',
|
|
'cfpLoadingBarProvider',
|
|
function ($urlRouterProvider, $httpProvider, localStorageServiceProvider, jwtOptionsProvider, AnalyticsProvider, $uibTooltipProvider, $compileProvider, cfpLoadingBarProvider) {
|
|
'use strict';
|
|
|
|
var environment = '@@ENVIRONMENT';
|
|
if (environment === 'production') {
|
|
$compileProvider.debugInfoEnabled(false);
|
|
}
|
|
|
|
localStorageServiceProvider.setPrefix('portainer');
|
|
|
|
jwtOptionsProvider.config({
|
|
tokenGetter: [
|
|
'LocalStorage',
|
|
function (LocalStorage) {
|
|
return LocalStorage.getJWT();
|
|
},
|
|
],
|
|
});
|
|
$httpProvider.interceptors.push('jwtInterceptor');
|
|
$httpProvider.interceptors.push('EndpointStatusInterceptor');
|
|
$httpProvider.defaults.headers.post['Content-Type'] = 'application/json';
|
|
$httpProvider.defaults.headers.put['Content-Type'] = 'application/json';
|
|
$httpProvider.defaults.headers.patch['Content-Type'] = 'application/json';
|
|
|
|
$httpProvider.interceptors.push([
|
|
'HttpRequestHelper',
|
|
function (HttpRequestHelper) {
|
|
return {
|
|
request: function (config) {
|
|
if (config.url.indexOf('/docker/') > -1) {
|
|
config.headers['X-PortainerAgent-Target'] = HttpRequestHelper.portainerAgentTargetHeader();
|
|
if (HttpRequestHelper.portainerAgentManagerOperation()) {
|
|
config.headers['X-PortainerAgent-ManagerOperation'] = '1';
|
|
}
|
|
}
|
|
return config;
|
|
},
|
|
};
|
|
},
|
|
]);
|
|
|
|
AnalyticsProvider.setAccount({ tracker: __CONFIG_GA_ID, set: { anonymizeIp: true } });
|
|
AnalyticsProvider.startOffline(true);
|
|
|
|
toastr.options.timeOut = 3000;
|
|
|
|
Terminal.applyAddon(fit);
|
|
|
|
$uibTooltipProvider.setTriggers({
|
|
mouseenter: 'mouseleave',
|
|
click: 'click',
|
|
focus: 'blur',
|
|
outsideClick: 'outsideClick',
|
|
});
|
|
|
|
cfpLoadingBarProvider.includeSpinner = false;
|
|
cfpLoadingBarProvider.parentSelector = '#loadingbar-placeholder';
|
|
cfpLoadingBarProvider.latencyThreshold = 600;
|
|
|
|
$urlRouterProvider.otherwise('/auth');
|
|
},
|
|
]);
|