The project function Manage JavaScript Libraries needs a bit of tweaking. It leaves stub lines (spaces) behind when one removes configuration, and multiplies these stub lines exponentially when one adds a configuration.
As an example, here is the HTML file for a new project after adding the ThreeJs (3D) configuration:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<meta $(ThemeColor)/>
<noscript>Your browser does not support JavaScript!</noscript>
<link href="data:;base64,=" rel="icon"/>
<meta $(Manifest)/>
<title>TMS Web Project</title>
<script src="https://download.tmssoftware.com/tmsweb/threejs/three.min.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/OrbitControls.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/TMS.THREE.Utils.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/THREE.MeshLine.js" type="text/javascript"></script>
<script src="$(ProjectName).js" type="text/javascript"></script>
<style>
</style>
</head>
<body>
<meta $(BodyParameters)/>
</body>
<script type="text/javascript">rtl.run();</script>
</html>
All good so far. Now, let's take away the ThreeJS (3D) configuration. Note the four stub lines that remains where the four JS files were loaded:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<meta $(ThemeColor)/>
<noscript>Your browser does not support JavaScript!</noscript>
<link href="data:;base64,=" rel="icon"/>
<meta $(Manifest)/>
<title>TMS Web Project</title>
<script src="$(ProjectName).js" type="text/javascript"></script>
<style>
</style>
</head>
<body>
<meta $(BodyParameters)/>
</body>
<script type="text/javascript">rtl.run();</script>
</html>
And now we add back the same configuration (or any other). We end up with the same four stub lines inserted before each one of the configuration items:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<meta $(ThemeColor)/>
<noscript>Your browser does not support JavaScript!</noscript>
<link href="data:;base64,=" rel="icon"/>
<meta $(Manifest)/>
<title>TMS Web Project</title>
<script src="https://download.tmssoftware.com/tmsweb/threejs/three.min.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/OrbitControls.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/TMS.THREE.Utils.js" type="text/javascript"></script>
<script src="https://download.tmssoftware.com/tmsweb/threejs/THREE.MeshLine.js" type="text/javascript"></script>
<script src="$(ProjectName).js" type="text/javascript"></script>
<style>
</style>
</head>
<body>
<meta $(BodyParameters)/>
</body>
<script type="text/javascript">rtl.run();</script>
</html>
I was experimenting with a custom configuration last week. While tweaking my configuration, I was adding it and removing from the project it many times. Imagine my shock when the HTML file grew with tens of thousands of stub lines! I wish my investments could grow this fast :)