diff --git a/ui-react/src/api/LoopActionService.js b/ui-react/src/api/LoopActionService.js
index 6e45ce4..7e20e2f 100644
--- a/ui-react/src/api/LoopActionService.js
+++ b/ui-react/src/api/LoopActionService.js
@@ -28,7 +28,7 @@
 		const svcAction = uiAction.toLowerCase();
  		return fetch("/restservices/clds/v2/loop/" + svcAction + "/" + cl_name, {
  				method: 'PUT',
- 				credentials: 'same-origin',
+ 				credentials: 'same-origin'
  			})
  		.then(function (response) {
  			if (response.ok) {
@@ -53,7 +53,7 @@
 
 		return fetch("/restservices/clds/v2/loop/getstatus/" + cl_name, {
 			method: 'GET',
-			credentials: 'same-origin',
+			credentials: 'same-origin'
 		})
 		.then(function (response) {
 			if (response.ok) {
diff --git a/ui-react/src/api/LoopService.js b/ui-react/src/api/LoopService.js
index eece20c..e2e2348 100644
--- a/ui-react/src/api/LoopService.js
+++ b/ui-react/src/api/LoopService.js
@@ -22,7 +22,7 @@
 
 export default class LoopService {
 	static getLoopNames() {
-		return fetch('/restservices/clds/v2/loop/getAllNames', { method: 'GET', credentials: 'same-origin', })
+		return fetch('/restservices/clds/v2/loop/getAllNames', { method: 'GET', credentials: 'same-origin' })
 			.then(function (response) {
 				console.debug("GetLoopNames response received: ", response.status);
 				if (response.ok) {
@@ -42,9 +42,9 @@
 		return fetch('/restservices/clds/v2/loop/' + loopName, {
 			method: 'GET',
 			headers: {
-				"Content-Type": "application/json",
+				"Content-Type": "application/json"
 			},
-			credentials: 'same-origin',
+			credentials: 'same-origin'
 		})
 			.then(function (response) {
 				console.debug("GetLoop response received: ", response.status);
@@ -64,7 +64,7 @@
 	static getSvg(loopName) {
 		return fetch('/restservices/clds/v2/loop/svgRepresentation/' + loopName, {
 			method: 'GET',
-			credentials: 'same-origin',
+			credentials: 'same-origin'
 		})
 			.then(function (response) {
 				console.debug("svgRepresentation response received: ", response.status);
@@ -86,9 +86,9 @@
 			method: 'POST',
 			credentials: 'same-origin',
 			headers: {
-				"Content-Type": "application/json",
+				"Content-Type": "application/json"
 			},
-			body: JSON.stringify(jsonData),
+			body: JSON.stringify(jsonData)
 		})
 			.then(function (response) {
 				console.debug("updateMicroservicePolicy response received: ", response.status);
@@ -110,9 +110,9 @@
 			method: 'POST',
 			credentials: 'same-origin',
 			headers: {
-				"Content-Type": "application/json",
+				"Content-Type": "application/json"
 			},
-			body: JSON.stringify(jsonData),
+			body: JSON.stringify(jsonData)
 		})
 			.then(function (response) {
 				console.debug("updateOperationalPolicies response received: ", response.status);
@@ -134,9 +134,9 @@
 			method: 'POST',
 			credentials: 'same-origin',
 			headers: {
-				"Content-Type": "application/json",
+				"Content-Type": "application/json"
 			},
-			body: JSON.stringify(jsonData),
+			body: JSON.stringify(jsonData)
 		})
 			.then(function (response) {
 				console.debug("updateGlobalProperties response received: ", response.status);
diff --git a/ui-react/src/api/UserService.js b/ui-react/src/api/UserService.js
index 37ec73d..8da6e3a 100644
--- a/ui-react/src/api/UserService.js
+++ b/ui-react/src/api/UserService.js
@@ -26,7 +26,7 @@
 	static login() {
 		return fetch('/restservices/clds/v1/user/getUser', {
 				method: 'GET',
-				credentials: 'same-origin',
+				credentials: 'same-origin'
 			})
 		.then(function (response) {
 			console.debug("getUser response received, status code:", response.status);
@@ -51,7 +51,7 @@
 	static logout() {
 		return fetch('/restservices/clds/v1/user/logout', {
 			method: 'POST',
-			credentials: 'same-origin',
+			credentials: 'same-origin'
 		})
 		.then(function (response) {
 			console.debug("logout response received, status code:", response.status);
@@ -76,7 +76,7 @@
 	static getUserInfo() {
 		return fetch('/restservices/clds/v1/clds/cldsInfo', {
 				method: 'GET',
-				credentials: 'same-origin',
+				credentials: 'same-origin'
 			})
 		.then(function (response) {
 			console.debug("getUserInfo response received, status code:", response.status);
diff --git a/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js b/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js
index 9863ef7..b0f601e 100644
--- a/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js
+++ b/ui-react/src/components/dialogs/ConfigurationPolicy/ConfigurationPolicyModal.js
@@ -38,7 +38,7 @@
 		show: true,
 		loopCache: this.props.loopCache,
 		jsonEditor: null,
-		componentName: this.props.match.params.componentName,
+		componentName: this.props.match.params.componentName
 	};
 
 	constructor(props, context) {
diff --git a/ui-react/src/components/dialogs/LoopProperties.js b/ui-react/src/components/dialogs/LoopProperties.js
index fa82a7e..990fe77 100644
--- a/ui-react/src/components/dialogs/LoopProperties.js
+++ b/ui-react/src/components/dialogs/LoopProperties.js
@@ -35,7 +35,7 @@
 	state = {
 		show: true,
 		loopCache: this.props.loopCache,
-		temporaryPropertiesJson: JSON.parse(JSON.stringify(this.props.loopCache.getGlobalProperties())),
+		temporaryPropertiesJson: JSON.parse(JSON.stringify(this.props.loopCache.getGlobalProperties()))
 	};
 
 	constructor(props, context) {
@@ -53,8 +53,7 @@
 	componentWillReceiveProps(newProps) {
 		this.setState({
 			loopCache: newProps.loopCache,
-			temporaryPropertiesJson: JSON.parse(JSON.stringify(newProps.loopCache.getGlobalProperties())),
-
+			temporaryPropertiesJson: JSON.parse(JSON.stringify(newProps.loopCache.getGlobalProperties()))
 		});
 	}
 
diff --git a/ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.js b/ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.js
index 7f349a1..1ebe5f0 100644
--- a/ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.js
+++ b/ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.js
@@ -37,7 +37,7 @@
 	state = {
 		show: true,
 		loopCache: this.props.loopCache,
-		jsonEditor: null,
+		jsonEditor: null
 	};
 
 	constructor(props, context) {
diff --git a/ui-react/src/components/loop_viewer/logs/LoopLogs.js b/ui-react/src/components/loop_viewer/logs/LoopLogs.js
index b6a777a..6abdc4b 100644
--- a/ui-react/src/components/loop_viewer/logs/LoopLogs.js
+++ b/ui-react/src/components/loop_viewer/logs/LoopLogs.js
@@ -47,7 +47,7 @@
 export default class LoopLogs extends React.Component {
 
 	state = {
-		loopCache: new LoopCache({}),
+		loopCache: new LoopCache({})
 	}
 	constructor(props) {
 		super(props);
@@ -61,7 +61,7 @@
 
 	componentWillReceiveProps(newProps) {
 		this.setState({
-			loopCache: newProps.loopCache,
+			loopCache: newProps.loopCache
 		});
 	}
 
diff --git a/ui-react/src/components/loop_viewer/status/LoopStatus.js b/ui-react/src/components/loop_viewer/status/LoopStatus.js
index 141a41f..d960c31 100644
--- a/ui-react/src/components/loop_viewer/status/LoopStatus.js
+++ b/ui-react/src/components/loop_viewer/status/LoopStatus.js
@@ -46,7 +46,7 @@
 
 export default class LoopStatus extends React.Component {
 	state = {
-		loopCache: new LoopCache({}),
+		loopCache: new LoopCache({})
 	}
 
 	constructor(props) {
@@ -74,7 +74,7 @@
 
 	componentWillReceiveProps(newProps) {
 		this.setState({
-			loopCache: newProps.loopCache,
+			loopCache: newProps.loopCache
 		});
 	}
 
diff --git a/ui-react/src/components/loop_viewer/svg/LoopSvg.js b/ui-react/src/components/loop_viewer/svg/LoopSvg.js
index 1b1e242..48f0335 100644
--- a/ui-react/src/components/loop_viewer/svg/LoopSvg.js
+++ b/ui-react/src/components/loop_viewer/svg/LoopSvg.js
@@ -45,7 +45,7 @@
 	state = {
 		svgContent: LoopViewSvg.emptySvg,
 		loopCache: new LoopCache({}),
-		componentModalMapping: new Map([]),
+		componentModalMapping: new Map([])
 	}
 
 	constructor(props) {
@@ -65,7 +65,7 @@
 		if (this.state.loopCache !== newProps.loopCache) {
 			this.setState({
 				loopCache: newProps.loopCache,
-				componentModalMapping: LoopComponentConverter.buildMapOfComponents(newProps.loopCache),
+				componentModalMapping: LoopComponentConverter.buildMapOfComponents(newProps.loopCache)
 			});
 			this.getSvg(newProps.loopCache.getLoopName());
 		}
