The app file layout in the source is as follows:
The build process copies the entire structure to the build area. However, the buildStamp directory is changed to a numeric timestamp of the form 'YYYYMMDDhhmmss'. It also changes any instance of 'buildStamp' in a pathname within index.html to the timestamp. This locks the pathname of all resources to the index.html, preventing any caching between the client and server from providing a stale copy.
index.htmlThe application starts with the index.html file in the application root. This does the following things:
<meta> headers, title, and icon.serviceWorker.js.app.js.<div> as the body.In addition, the index.html contains a list of all the static file resources for the app (a file manifest). The manifest is automatically generated by the build procedure. The service worker uses the manifest to prefetch all app resources and load them in the application cache for offline use. This procedure ensures that the index.html file and the manifest are not out of sync. The file manifest should not be confused with the manifest.js file, which is the PWA manifest.
app.jsThe app.js file does the following:
help.toc.ctl.onResize() to set up responsive changes to resizing or orientation changes, such as calling view.setSizeClass() or setting the nav_style state variable.server.baseUrl if the app is started as a native app (localDevice.isNative is true).acType.init() to provide default aircraft data before the rest of the app starts.ctl.startApp() to define the app ID, title, version, and initial view, and initialize the Controller, Model, and View.The remainder of the app is loaded on demand.