WEB GUI: livereload enabled for applications
Change-Id: Id267f4902499e378dc7cb471ec59174dbf4c35a3
diff --git a/web/gui/src/main/webapp/bs-config.js b/web/gui/src/main/webapp/bs-config.js
index 00aaa18..e7419ac 100644
--- a/web/gui/src/main/webapp/bs-config.js
+++ b/web/gui/src/main/webapp/bs-config.js
@@ -20,7 +20,7 @@
});
var defaultViews = fs.readdirSync('./app/view/');
-var viewNameMatcher = new RegExp(/\/onos\/ui\/app\/view\/(.+)\/.+\.js/);
+var viewNameMatcher = new RegExp(/\/onos\/ui\/app\/view\/(.+)\/.+\.(?:js|css|html)/);
proxy.on('upgrade', function (req, socket, head) {
console.log('[WS]: ', head);
@@ -54,20 +54,19 @@
var viewName = viewNameMatcher.exec(req.url);
-
if(!!viewName && defaultViews.indexOf(viewName[1]) === -1){
// in this case it is an external application that extend the view
- // so we redirect the request to the app folder
+ // so we redirect the request to the app folder in case of .js, .css, .html
req.url = req.url.replace('/onos/ui/', '/apps/' + viewName[1] + '/app/src/main/resources/');
proxy.web(req, res);
}
- // NOTE onos.js should not be proxied (require server side injection)
- else if(req.url.match(/.js$/) && req.url !== '/onos/ui/onos.js'){
+ // NOTE onos.js and index.html should not be proxied (require server side injection)
+ else if(req.url.match(/(?:js|css|html)/) && req.url !== '/onos/ui/onos.js' && req.url !== '/onos/ui/index.html' && req.url !== '/onos/ui/nav.html'){
// redirect onos base js files to the source folder
req.url = req.url.replace('/onos/ui/', '/web/gui/src/main/webapp/');
proxy.web(req, res);
}
- else{
+ else {
return next();
}
}