- const defaults = jsyaml.load(defaultConfig);
- let config;
- window.onhashchange = function() { location.reload(); };
- try {
- config = await this.getConfig();
- const path = (window.location.hash.substring(1) != '') ? window.location.hash.substring(1) : null;
- if (path) {
- let pathConfig = await this.getConfig(`assets/${path}.yml`); // the slash (/) is included in the pathname
- for (const prop in pathConfig) config[prop] = pathConfig[prop];
- }
- // config = await this.getConfig(path ? `assets/${path}.yml` : null);
- //config = await (path ? this.getConfig(`assets/${path}.yml`) : this.getConfig())
- } catch (error) {
- console.log(error);
- config = this.handleErrors("⚠️ Error loading configuration", error);
- }
- this.config = merge(defaults, config);
- this.services = this.config.services;
- document.title =
- this.config.documentTitle ||
- `${this.config.title} | ${this.config.subtitle}`;
- if (this.config.stylesheet) {
- let stylesheet = "";
- for (const file of this.config.stylesheet) {
- stylesheet += `@import "${file}";`;
- }
- this.createStylesheet(stylesheet);
- }