mobicloud-core 1.0.402 → 1.0.403

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -44,7 +44,8 @@ export class MobicloudConfigService {
44
44
  this.themeNameObservable.subscribe(p => this.themeName = p);
45
45
  }
46
46
  checkIfConfigFileExists(config_file) {
47
- return this.http.head(`./assets/${config_file}`)
47
+ const timestamp = new Date().getTime();
48
+ return this.http.head(`./assets/${config_file}?t=${timestamp}`)
48
49
  .pipe(catchError(error => {
49
50
  return of(false);
50
51
  }))
@@ -54,13 +55,14 @@ export class MobicloudConfigService {
54
55
  });
55
56
  }
56
57
  getConfigData(config_file) {
57
- return this.checkIfConfigFileExists("app.config.runtime.json").then((exists) => {
58
+ return this.checkIfConfigFileExists(`app.config.runtime.json`).then((exists) => {
58
59
  var config_file_url = `./assets/${config_file}`;
59
60
  if (exists) {
60
61
  config_file_url = `./assets/app.config.runtime.json`;
61
62
  }
62
63
  console.log("Loading config:", config_file, config_file_url, exists);
63
- return this.http.get(config_file_url)
64
+ const timestamp = new Date().getTime();
65
+ return this.http.get(`${config_file_url}?t=${timestamp}`)
64
66
  .toPromise()
65
67
  .then(configdata => {
66
68
  Object.assign(this, configdata);
@@ -187,4 +189,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
187
189
  type: Inject,
188
190
  args: [LOCALE_ID]
189
191
  }] }]; } });
190
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWNsb3VkLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9tb2JpY2xvdWQtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBWSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLGtCQUFrQixFQUFHLE1BQU0saUJBQWlCLENBQUM7QUFDdEQsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7OztBQU9sRCxNQUFNLE9BQU8sc0JBQXNCO0lBOEJqQyxZQUFvQixJQUFnQixFQUFVLFFBQWtCLEVBQTRCLFFBQWdCO1FBQXhGLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQVE7UUExQnJHLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDdkIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQix5QkFBb0IsR0FBVyxFQUFFLENBQUM7UUFDbEMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUN2QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3QixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3Qix3QkFBbUIsR0FBVyxFQUFFLENBQUM7UUFDakMsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FB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LElBQUksYUFBYTtRQUNmLElBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLEVBQUk7WUFDMUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQ3RCO2FBQ0c7WUFDRixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDbkIsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLGlCQUFpQixDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLHdCQUF3QjtRQUMxQixPQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsd0JBQXdCLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksNkJBQTZCO1FBQy9CLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxrQkFBa0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDOzttSEEvTlUsc0JBQXNCLG9FQThCeUMsU0FBUzt1SEE5QnhFLHNCQUFzQixjQUZyQixNQUFNOzJGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQStCb0UsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIExPQ0FMRV9JRCwgSW5qZWN0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAnQGFuZ3VsYXIvbG9jYWxpemUvaW5pdCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgcmVnaXN0ZXJMb2NhbGVEYXRhICB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgbG9jYWxlREEgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZGEnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VJbmZvIH0gZnJvbSBcIi4uL3R5cGVzL2xhbmd1YWdlLWluZm9cIjtcbmltcG9ydCB7IFRoZW1lSW5mbyB9IGZyb20gXCIuLi90eXBlcy90aGVtZS1pbmZvXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE1vYmljbG91ZENvbmZpZ1NlcnZpY2Uge1xuXG4gIEFwcEluamVjdG9yOiBJbmplY3RvcjtcblxuICBwdWJsaWMgX2NvbmZpZ19uYW1lOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIF9hcHBfbmFtZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfYXBwX3RpdGxlOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIF9lbnZpcm9ubWVudDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfZGVmYXVsdF9hcGlfYmFzZXVybDogc3RyaW5nID0gJyc7ICBcbiAgcHVibGljIF9ob3N0X3VybDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfaG9zdF91cmxfZW46IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX29pZGNfYXV0aG9yaXR5OiBzdHJpbmcgPSAnJztcbiAgcHVibGljIF9vaWRjX2NsaWVudF9pZDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfb2lkY19jbGllbnRfc2VjcmV0OiBzdHJpbmcgPSAnJzsgIFxuICBwdWJsaWMgX29pZGNfcmVzcG9uc2VfdHlwZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfb2lkY19zY29wZXM6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX2xvZ19odHRwdHJhZmljOiBudW1iZXIgPSAwO1xuICBwdWJsaWMgX3RoZW1lc19lbmFibGVkOiBib29sZWFufHVuZGVmaW5lZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgbG9jYWxlSWRTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oXCJcIik7XG4gIGxvY2FsZUlkT2JzZXJ2YWJsZSA9IHRoaXMubG9jYWxlSWRTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gIHByaXZhdGUgbGFuZ3VhZ2VOYW1lU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KFwiXCIpO1xuICBsYW5ndWFnZU5hbWVPYnNlcnZhYmxlID0gdGhpcy5sYW5ndWFnZU5hbWVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSB0aGVtZU5hbWU6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgdGhlbWVOYW1lU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KFwiXCIpO1xuICBwdWJsaWMgdGhlbWVOYW1lT2JzZXJ2YWJsZSA9IHRoaXMudGhlbWVOYW1lU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHB1YmxpYyBUaGVtZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLCBASW5qZWN0KExPQ0FMRV9JRCkgcHVibGljIGxvY2FsZUlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLkFwcEluamVjdG9yID0gaW5qZWN0b3I7XG4gICAgY29uc29sZS5sb2coXCJBcHBsaWNhdGlvbiBMYW5ndWFnZTpcIiwgdGhpcy5DdXJyZW50TGFuZ3VhZ2UpO1xuICAgIC8vIGNvbnNvbGUubG9nKFwiQXBwbGljYXRpb24gYmFzZUhyZWY6XCIsIHRoaXMuYmFzZUhyZWYpO1xuICAgIGlmKHRoaXMubG9jYWxlSWQgPT0gXCJkYVwiKSAgIHtcbiAgICAgIHJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVEQSwgJ2RhJyk7ICAgICAgXG4gICAgfVxuICAgIHRoaXMubG9jYWxlSWRTb3VyY2UubmV4dCh0aGlzLmxvY2FsZUlkKTtcbiAgICB0aGlzLmxhbmd1YWdlTmFtZVNvdXJjZS5uZXh0KHRoaXMuZ2V0TGFuZ3VhZ2VOYW1lKHRoaXMubG9jYWxlSWQpKTtcblxuICAgIC8vIHRoaXMudGhlbWVOYW1lU291cmNlLm5leHQoXCJkZWZhdWx0XCIpO1xuICAgIHRoaXMudGhlbWVOYW1lT2JzZXJ2YWJsZS5zdWJzY3JpYmUocCA9PiB0aGlzLnRoZW1lTmFtZSA9IHApO1xuICB9XG5cbiAgY2hlY2tJZkNvbmZpZ0ZpbGVFeGlzdHMoY29uZmlnX2ZpbGU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuaGVhZChgLi9hc3NldHMvJHtjb25maWdfZmlsZX1gKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIHJldHVybiBvZihmYWxzZSk7IC8vIEZpbGUgZG9lc24ndCBleGlzdCBvciB0aGVyZSB3YXMgYW4gZXJyb3JcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC50b1Byb21pc2UoKVxuICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2UgIT09IGZhbHNlOyAvLyBJZiByZXNwb25zZSBpcyBub3QgZmFsc2UsIGZpbGUgZXhpc3RzXG4gICAgICB9KTtcbiAgfVxuXG4gIGdldENvbmZpZ0RhdGEoY29uZmlnX2ZpbGU6IHN0cmluZykgOlByb21pc2U8YW55PiAge1xuICAgIHJldHVybiB0aGlzLmNoZWNrSWZDb25maWdGaWxlRXhpc3RzKFwiYXBwLmNvbmZpZy5ydW50aW1lLmpzb25cIikudGhlbigoZXhpc3RzOmJvb2xlYW4pID0+IFxuICAgIHsgICAgICBcbiAgICAgIHZhciBjb25maWdfZmlsZV91cmwgPSBgLi9hc3NldHMvJHtjb25maWdfZmlsZX1gO1xuICAgICAgaWYoZXhpc3RzKXtcbiAgICAgICAgY29uZmlnX2ZpbGVfdXJsID0gYC4vYXNzZXRzL2FwcC5jb25maWcucnVudGltZS5qc29uYDtcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKFwiTG9hZGluZyBjb25maWc6XCIsIGNvbmZpZ19maWxlLCBjb25maWdfZmlsZV91cmwsIGV4aXN0cyk7XG4gICAgICByZXR1cm4gdGhpcy5odHRwLmdldChjb25maWdfZmlsZV91cmwpXG4gICAgICAudG9Qcm9taXNlKClcbiAgICAgIC50aGVuKGNvbmZpZ2RhdGEgPT4ge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbmZpZ2RhdGEpO1xuICAgICAgICByZXR1cm4gY29uZmlnZGF0YTtcbiAgICAgIH0pO1xuICAgIH0pXG4gIH1cblxuXG4gIC8vIGdldENvbmZpZ0RhdGEoY29uZmlnX2ZpbGU6IHN0cmluZykgOlByb21pc2U8YW55PiAge1xuICAvLyAgIHZhciBjb25maWdfZmlsZV91cmwgPSBgLi9hc3NldHMvJHtjb25maWdfZmlsZX1gO1xuICAvLyAgIGNvbnNvbGUubG9nKFwiTG9hZGluZyBjb25maWc6XCIsIGNvbmZpZ19maWxlLCBjb25maWdfZmlsZV91cmwpO1xuICAgIFxuICAvLyAgIGNvbnN0IHByb21pc2UgPSB0aGlzLmh0dHAuZ2V0KGNvbmZpZ19maWxlX3VybClcbiAgLy8gICAgIC50b1Byb21pc2UoKVxuICAvLyAgICAgLnRoZW4oY29uZmlnZGF0YSA9PiB7XG4gIC8vICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgY29uZmlnZGF0YSk7XG4gIC8vICAgICAgIHJldHVybiBjb25maWdkYXRhO1xuICAvLyAgICAgfSk7XG5cbiAgLy8gICByZXR1cm4gcHJvbWlzZTtcbiAgLy8gfVxuXG4gIGdldExhbmd1YWdlTmFtZShsb2NhbGU6IHN0cmluZykgOiBzdHJpbmcge1xuICAgIGlmKGxvY2FsZSA9PSBcImRhXCIpe1xuICAgICAgcmV0dXJuICRsb2NhbGl6ZWA6QEBMYW5ndWFnZU5hbWUtZGE6RGFuaXNoYDtcbiAgICB9XG4gICAgZWxzZXtcbiAgICAgIHJldHVybiAkbG9jYWxpemVgOkBATGFuZ3VhZ2VOYW1lLWVuLVVTOkVuZ2xpc2hgO1xuICAgIH0gICAgXG4gIH1cblxuICBnZXQgQ3VycmVudExhbmd1YWdlKCkgOiBzdHJpbmcge1xuICAgIGlmKHRoaXMubG9jYWxlSWQgPT0gXCJkYVwiKXtcbiAgICAgICAgcmV0dXJuIFwiREtcIjtcbiAgICB9XG4gICAgZWxzZSBpZih0aGlzLmxvY2FsZUlkID09IFwiZW4tVVNcIil7XG4gICAgICByZXR1cm4gXCJVU1wiO1xuICAgIH0gICAgXG4gICAgZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5sb2NhbGVJZDtcbiAgICB9XG4gIH1cbiAgXG4gIGdldFN1cHBvcnRlZExhbmd1YWdlcygpIDogTGFuZ3VhZ2VJbmZvW11cbiAge1xuICAgIGNvbnN0IGxhbmd1YWdlczogTGFuZ3VhZ2VJbmZvW10gPSBbe0xvY2FsZUlkOiAnZGEnLCBMYW5ndWFnZU5hbWU6IHRoaXMuZ2V0TGFuZ3VhZ2VOYW1lKCdkYScpLCBGbGFnQ29kZTogJ0RLJ30sIHtMb2NhbGVJZDogJ2VuLVVTJywgTGFuZ3VhZ2VOYW1lOiB0aGlzLmdldExhbmd1YWdlTmFtZSgnZW4tVVMnKSwgRmxhZ0NvZGU6ICdHQid9XTtcbiAgICByZXR1cm4gbGFuZ3VhZ2VzO1xuICB9XG5cbiAgZ2V0VGhlbWVDYXB0aW9uKGxvY2FsZTogc3RyaW5nKSA6IHN0cmluZyB7XG4gICAgaWYobG9jYWxlID09IFwiZGVmYXVsdFwiKXtcbiAgICAgIHJldHVybiAkbG9jYWxpemVgOkBAVGhlbWVDYXB0aW9uLWRlZmF1bHQ6RGVmYXVsdGA7XG4gICAgfVxuICAgIGVsc2V7XG4gICAgICByZXR1cm4gJGxvY2FsaXplYDpAQFRoZW1lQ2FwdGlvbi1EYXJrOkRhcmtgO1xuICAgIH0gICAgXG4gIH1cblxuICBnZXRTdXBwb3J0ZWRUaGVtZXMoKSA6IFRoZW1lSW5mb1tdXG4gIHtcbiAgICBjb25zdCB0aGVtZXM6IFRoZW1lSW5mb1tdID0gW3tUaGVtZU5hbWU6ICdkZWZhdWx0JywgVGhlbWVDYXB0aW9uOiB0aGlzLmdldFRoZW1lQ2FwdGlvbignZGVmYXVsdCcpLCBTdmc6ICdtb2JpY2xvdWRfdGhlbWVfZGVmYXVsdCd9LCB7VGhlbWVOYW1lOiAnZGFyaycsIFRoZW1lQ2FwdGlvbjogdGhpcy5nZXRUaGVtZUNhcHRpb24oJ2RhcmsnKSwgU3ZnOiAnbW9iaWNsb3VkX3RoZW1lX2RhcmsnfV07XG4gICAgcmV0dXJuIHRoZW1lcztcbiAgfVxuXG4gIGNoYW5nZVRoZW1lKF90aGVtZU5hbWU6IHN0cmluZyl7XG4gICAgY29uc29sZS5sb2coXCJDaGFuZ2luZyB0aGVtZVwiKTtcbiAgICB0aGlzLlRoZW1lQ2hhbmdlLmVtaXQoX3RoZW1lTmFtZSk7ICAgICAgICBcbiAgfVxuXG4gIGdldEFwaVNpdGVVcmwoKSA6IHN0cmluZ3tcbiAgICByZXR1cm4gYCR7dGhpcy5fZGVmYXVsdF9hcGlfYmFzZXVybH1gO1xuICB9XG5cbiAgZ2V0QXBpQmFzZVVybCgpIDogc3RyaW5ne1xuICAgIHJldHVybiBgJHt0aGlzLmdldEFwaVNpdGVVcmwoKX1hcGkvYDtcbiAgfVxuXG4gIGdldE1vYmlNYW5hZ2VtZW50RGF0YVVybCgpIDogc3RyaW5ne1xuICAgIHJldHVybiBgJHt0aGlzLmdldEFwaUJhc2VVcmwoKX1tb2JpbWFuYWdlbWVudC9gO1xuICB9IFxuXG4gIGdldFJlcG9zaXRvcnlVcmwoKSA6IHN0cmluZ3tcbiAgICByZXR1cm4gYCR7dGhpcy5nZXRBcGlCYXNlVXJsKCl9cmVwb3NpdG9yeS9gO1xuICB9IFxuXG4gIGdldCBjb25maWdfbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWdfbmFtZTtcbiAgfVxuICBcbiAgZ2V0IGFwcF9uYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FwcF9uYW1lO1xuICB9XG5cbiAgZ2V0IGFwcF90aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9hcHBfdGl0bGU7XG4gIH1cblxuICBnZXQgZW52aXJvbm1lbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZW52aXJvbm1lbnQ7XG4gIH1cblxuICBnZXQgb2lkY19hdXRob3JpdHkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fb2lkY19hdXRob3JpdHk7XG4gIH1cblxuICBnZXQgb2lkY19jbGllbnRfaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fb2lkY19jbGllbnRfaWQ7XG4gIH1cblxuICBnZXQgb2lkY19jbGllbnRfc2VjcmV0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX29pZGNfY2xpZW50X3NlY3JldDtcbiAgfVxuXG4gIGdldCBob3N0X3VybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9ob3N0X3VybDtcbiAgfVxuXG4gIGdldCBob3N0X3VybF9lbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9ob3N0X3VybF9lbjtcbiAgfVxuXG4gIGdldCBvaWRjX2Jhc2VfdXJsKCk6IHN0cmluZyB7XG4gICAgaWYodGhpcy5sb2NhbGVJZCA9PSBcImRhXCIpICAge1xuICAgICAgcmV0dXJuIHRoaXMuaG9zdF91cmw7XG4gICAgfVxuICAgIGVsc2V7XG4gICAgICByZXR1cm4gdGhpcy5ob3N0X3VybF9lbjtcbiAgICB9ICAgIFxuICB9XG5cbiAgZ2V0IG9pZGNfcmVkaXJlY3RfdXJpKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMub2lkY19iYXNlX3VybH1zaWduaW4tY2FsbGJhY2tgO1xuICB9XG5cbiAgZ2V0IG9pZGNfcmVkaXJlY3Rfc2lsZW50X3VyaSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLm9pZGNfYmFzZV91cmx9c2lnbmluLXNpbGVudC1jYWxsYmFja2A7XG4gIH1cblxuICBnZXQgb2lkY19wb3N0X2xvZ291dF9yZWRpcmVjdF91cmkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5vaWRjX2Jhc2VfdXJsfXNpZ25vdXQtY2FsbGJhY2tgO1xuICB9XG5cbiAgZ2V0IG9pZGNfcmVzcG9uc2VfdHlwZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9vaWRjX3Jlc3BvbnNlX3R5cGU7XG4gIH1cblxuICBnZXQgb2lkY19zY29wZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fb2lkY19zY29wZXM7XG4gIH1cblxuICBnZXQgbG9nX2h0dHB0cmFmaWMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbG9nX2h0dHB0cmFmaWM7XG4gIH1cblxuICBnZXQgdGhlbWVzX2VuYWJsZWQoKTogYm9vbGVhbnx1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90aGVtZXNfZW5hYmxlZDtcbiAgfVxuICAgXG59XG4iXX0=
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWNsb3VkLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9tb2JpY2xvdWQtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBWSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLGtCQUFrQixFQUFHLE1BQU0saUJBQWlCLENBQUM7QUFDdEQsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7OztBQU9sRCxNQUFNLE9BQU8sc0JBQXNCO0lBOEJqQyxZQUFvQixJQUFnQixFQUFVLFFBQWtCLEVBQTRCLFFBQWdCO1FBQXhGLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQVE7UUExQnJHLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDdkIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQix5QkFBb0IsR0FBVyxFQUFFLENBQUM7UUFDbEMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUN2QixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQUMxQixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3QixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQUM3Qix3QkFBbUIsR0FBVyxFQUFFLENBQUM7UUFDakMsd0JBQW1CLEdBQVcsRUFBRSxDQUFDO1FB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bGUsIEluamVjdG9yLCBMT0NBTEVfSUQsIEluamVjdCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgJ0Bhbmd1bGFyL2xvY2FsaXplL2luaXQnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHJlZ2lzdGVyTG9jYWxlRGF0YSAgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IGxvY2FsZURBIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2RhJztcbmltcG9ydCB7IExhbmd1YWdlSW5mbyB9IGZyb20gXCIuLi90eXBlcy9sYW5ndWFnZS1pbmZvXCI7XG5pbXBvcnQgeyBUaGVtZUluZm8gfSBmcm9tIFwiLi4vdHlwZXMvdGhlbWUtaW5mb1wiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNb2JpY2xvdWRDb25maWdTZXJ2aWNlIHtcblxuICBBcHBJbmplY3RvcjogSW5qZWN0b3I7XG5cbiAgcHVibGljIF9jb25maWdfbmFtZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfYXBwX25hbWU6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX2FwcF90aXRsZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfZW52aXJvbm1lbnQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX2RlZmF1bHRfYXBpX2Jhc2V1cmw6IHN0cmluZyA9ICcnOyAgXG4gIHB1YmxpYyBfaG9zdF91cmw6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX2hvc3RfdXJsX2VuOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIF9vaWRjX2F1dGhvcml0eTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBfb2lkY19jbGllbnRfaWQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX29pZGNfY2xpZW50X3NlY3JldDogc3RyaW5nID0gJyc7ICBcbiAgcHVibGljIF9vaWRjX3Jlc3BvbnNlX3R5cGU6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgX29pZGNfc2NvcGVzOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIF9sb2dfaHR0cHRyYWZpYzogbnVtYmVyID0gMDtcbiAgcHVibGljIF90aGVtZXNfZW5hYmxlZDogYm9vbGVhbnx1bmRlZmluZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIGxvY2FsZUlkU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KFwiXCIpO1xuICBsb2NhbGVJZE9ic2VydmFibGUgPSB0aGlzLmxvY2FsZUlkU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICBwcml2YXRlIGxhbmd1YWdlTmFtZVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihcIlwiKTtcbiAgbGFuZ3VhZ2VOYW1lT2JzZXJ2YWJsZSA9IHRoaXMubGFuZ3VhZ2VOYW1lU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgdGhlbWVOYW1lOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIHRoZW1lTmFtZVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihcIlwiKTtcbiAgcHVibGljIHRoZW1lTmFtZU9ic2VydmFibGUgPSB0aGlzLnRoZW1lTmFtZVNvdXJjZS5hc09ic2VydmFibGUoKTtcblxuICBwdWJsaWMgVGhlbWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgQEluamVjdChMT0NBTEVfSUQpIHB1YmxpYyBsb2NhbGVJZDogc3RyaW5nKSB7XG4gICAgdGhpcy5BcHBJbmplY3RvciA9IGluamVjdG9yO1xuICAgIGNvbnNvbGUubG9nKFwiQXBwbGljYXRpb24gTGFuZ3VhZ2U6XCIsIHRoaXMuQ3VycmVudExhbmd1YWdlKTtcbiAgICAvLyBjb25zb2xlLmxvZyhcIkFwcGxpY2F0aW9uIGJhc2VIcmVmOlwiLCB0aGlzLmJhc2VIcmVmKTtcbiAgICBpZih0aGlzLmxvY2FsZUlkID09IFwiZGFcIikgICB7XG4gICAgICByZWdpc3RlckxvY2FsZURhdGEobG9jYWxlREEsICdkYScpOyAgICAgIFxuICAgIH1cbiAgICB0aGlzLmxvY2FsZUlkU291cmNlLm5leHQodGhpcy5sb2NhbGVJZCk7XG4gICAgdGhpcy5sYW5ndWFnZU5hbWVTb3VyY2UubmV4dCh0aGlzLmdldExhbmd1YWdlTmFtZSh0aGlzLmxvY2FsZUlkKSk7XG5cbiAgICAvLyB0aGlzLnRoZW1lTmFtZVNvdXJjZS5uZXh0KFwiZGVmYXVsdFwiKTtcbiAgICB0aGlzLnRoZW1lTmFtZU9ic2VydmFibGUuc3Vic2NyaWJlKHAgPT4gdGhpcy50aGVtZU5hbWUgPSBwKTtcbiAgfVxuXG4gIGNoZWNrSWZDb25maWdGaWxlRXhpc3RzKGNvbmZpZ19maWxlOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmhlYWQoYC4vYXNzZXRzLyR7Y29uZmlnX2ZpbGV9P3Q9JHt0aW1lc3RhbXB9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpOyAvLyBGaWxlIGRvZXNuJ3QgZXhpc3Qgb3IgdGhlcmUgd2FzIGFuIGVycm9yXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAudG9Qcm9taXNlKClcbiAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlICE9PSBmYWxzZTsgLy8gSWYgcmVzcG9uc2UgaXMgbm90IGZhbHNlLCBmaWxlIGV4aXN0c1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRDb25maWdEYXRhKGNvbmZpZ19maWxlOiBzdHJpbmcpIDpQcm9taXNlPGFueT4gIHsgICAgXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tJZkNvbmZpZ0ZpbGVFeGlzdHMoYGFwcC5jb25maWcucnVudGltZS5qc29uYCkudGhlbigoZXhpc3RzOmJvb2xlYW4pID0+IFxuICAgIHsgICAgICBcbiAgICAgIHZhciBjb25maWdfZmlsZV91cmwgPSBgLi9hc3NldHMvJHtjb25maWdfZmlsZX1gO1xuICAgICAgaWYoZXhpc3RzKXtcbiAgICAgICAgY29uZmlnX2ZpbGVfdXJsID0gYC4vYXNzZXRzL2FwcC5jb25maWcucnVudGltZS5qc29uYDtcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKFwiTG9hZGluZyBjb25maWc6XCIsIGNvbmZpZ19maWxlLCBjb25maWdfZmlsZV91cmwsIGV4aXN0cyk7XG4gICAgICBjb25zdCB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke2NvbmZpZ19maWxlX3VybH0/dD0ke3RpbWVzdGFtcH1gKVxuICAgICAgLnRvUHJvbWlzZSgpXG4gICAgICAudGhlbihjb25maWdkYXRhID0+IHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBjb25maWdkYXRhKTtcbiAgICAgICAgcmV0dXJuIGNvbmZpZ2RhdGE7XG4gICAgICB9KTtcbiAgICB9KVxuICB9XG5cblxuICAvLyBnZXRDb25maWdEYXRhKGNvbmZpZ19maWxlOiBzdHJpbmcpIDpQcm9taXNlPGFueT4gIHtcbiAgLy8gICB2YXIgY29uZmlnX2ZpbGVfdXJsID0gYC4vYXNzZXRzLyR7Y29uZmlnX2ZpbGV9YDtcbiAgLy8gICBjb25zb2xlLmxvZyhcIkxvYWRpbmcgY29uZmlnOlwiLCBjb25maWdfZmlsZSwgY29uZmlnX2ZpbGVfdXJsKTtcbiAgICBcbiAgLy8gICBjb25zdCBwcm9taXNlID0gdGhpcy5odHRwLmdldChjb25maWdfZmlsZV91cmwpXG4gIC8vICAgICAudG9Qcm9taXNlKClcbiAgLy8gICAgIC50aGVuKGNvbmZpZ2RhdGEgPT4ge1xuICAvLyAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbmZpZ2RhdGEpO1xuICAvLyAgICAgICByZXR1cm4gY29uZmlnZGF0YTtcbiAgLy8gICAgIH0pO1xuXG4gIC8vICAgcmV0dXJuIHByb21pc2U7XG4gIC8vIH1cblxuICBnZXRMYW5ndWFnZU5hbWUobG9jYWxlOiBzdHJpbmcpIDogc3RyaW5nIHtcbiAgICBpZihsb2NhbGUgPT0gXCJkYVwiKXtcbiAgICAgIHJldHVybiAkbG9jYWxpemVgOkBATGFuZ3VhZ2VOYW1lLWRhOkRhbmlzaGA7XG4gICAgfVxuICAgIGVsc2V7XG4gICAgICByZXR1cm4gJGxvY2FsaXplYDpAQExhbmd1YWdlTmFtZS1lbi1VUzpFbmdsaXNoYDtcbiAgICB9ICAgIFxuICB9XG5cbiAgZ2V0IEN1cnJlbnRMYW5ndWFnZSgpIDogc3RyaW5nIHtcbiAgICBpZih0aGlzLmxvY2FsZUlkID09IFwiZGFcIil7XG4gICAgICAgIHJldHVybiBcIkRLXCI7XG4gICAgfVxuICAgIGVsc2UgaWYodGhpcy5sb2NhbGVJZCA9PSBcImVuLVVTXCIpe1xuICAgICAgcmV0dXJuIFwiVVNcIjtcbiAgICB9ICAgIFxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubG9jYWxlSWQ7XG4gICAgfVxuICB9XG4gIFxuICBnZXRTdXBwb3J0ZWRMYW5ndWFnZXMoKSA6IExhbmd1YWdlSW5mb1tdXG4gIHtcbiAgICBjb25zdCBsYW5ndWFnZXM6IExhbmd1YWdlSW5mb1tdID0gW3tMb2NhbGVJZDogJ2RhJywgTGFuZ3VhZ2VOYW1lOiB0aGlzLmdldExhbmd1YWdlTmFtZSgnZGEnKSwgRmxhZ0NvZGU6ICdESyd9LCB7TG9jYWxlSWQ6ICdlbi1VUycsIExhbmd1YWdlTmFtZTogdGhpcy5nZXRMYW5ndWFnZU5hbWUoJ2VuLVVTJyksIEZsYWdDb2RlOiAnR0InfV07XG4gICAgcmV0dXJuIGxhbmd1YWdlcztcbiAgfVxuXG4gIGdldFRoZW1lQ2FwdGlvbihsb2NhbGU6IHN0cmluZykgOiBzdHJpbmcge1xuICAgIGlmKGxvY2FsZSA9PSBcImRlZmF1bHRcIil7XG4gICAgICByZXR1cm4gJGxvY2FsaXplYDpAQFRoZW1lQ2FwdGlvbi1kZWZhdWx0OkRlZmF1bHRgO1xuICAgIH1cbiAgICBlbHNle1xuICAgICAgcmV0dXJuICRsb2NhbGl6ZWA6QEBUaGVtZUNhcHRpb24tRGFyazpEYXJrYDtcbiAgICB9ICAgIFxuICB9XG5cbiAgZ2V0U3VwcG9ydGVkVGhlbWVzKCkgOiBUaGVtZUluZm9bXVxuICB7XG4gICAgY29uc3QgdGhlbWVzOiBUaGVtZUluZm9bXSA9IFt7VGhlbWVOYW1lOiAnZGVmYXVsdCcsIFRoZW1lQ2FwdGlvbjogdGhpcy5nZXRUaGVtZUNhcHRpb24oJ2RlZmF1bHQnKSwgU3ZnOiAnbW9iaWNsb3VkX3RoZW1lX2RlZmF1bHQnfSwge1RoZW1lTmFtZTogJ2RhcmsnLCBUaGVtZUNhcHRpb246IHRoaXMuZ2V0VGhlbWVDYXB0aW9uKCdkYXJrJyksIFN2ZzogJ21vYmljbG91ZF90aGVtZV9kYXJrJ31dO1xuICAgIHJldHVybiB0aGVtZXM7XG4gIH1cblxuICBjaGFuZ2VUaGVtZShfdGhlbWVOYW1lOiBzdHJpbmcpe1xuICAgIGNvbnNvbGUubG9nKFwiQ2hhbmdpbmcgdGhlbWVcIik7XG4gICAgdGhpcy5UaGVtZUNoYW5nZS5lbWl0KF90aGVtZU5hbWUpOyAgICAgICAgXG4gIH1cblxuICBnZXRBcGlTaXRlVXJsKCkgOiBzdHJpbmd7XG4gICAgcmV0dXJuIGAke3RoaXMuX2RlZmF1bHRfYXBpX2Jhc2V1cmx9YDtcbiAgfVxuXG4gIGdldEFwaUJhc2VVcmwoKSA6IHN0cmluZ3tcbiAgICByZXR1cm4gYCR7dGhpcy5nZXRBcGlTaXRlVXJsKCl9YXBpL2A7XG4gIH1cblxuICBnZXRNb2JpTWFuYWdlbWVudERhdGFVcmwoKSA6IHN0cmluZ3tcbiAgICByZXR1cm4gYCR7dGhpcy5nZXRBcGlCYXNlVXJsKCl9bW9iaW1hbmFnZW1lbnQvYDtcbiAgfSBcblxuICBnZXRSZXBvc2l0b3J5VXJsKCkgOiBzdHJpbmd7XG4gICAgcmV0dXJuIGAke3RoaXMuZ2V0QXBpQmFzZVVybCgpfXJlcG9zaXRvcnkvYDtcbiAgfSBcblxuICBnZXQgY29uZmlnX25hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnX25hbWU7XG4gIH1cbiAgXG4gIGdldCBhcHBfbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9hcHBfbmFtZTtcbiAgfVxuXG4gIGdldCBhcHBfdGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYXBwX3RpdGxlO1xuICB9XG5cbiAgZ2V0IGVudmlyb25tZW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Vudmlyb25tZW50O1xuICB9XG5cbiAgZ2V0IG9pZGNfYXV0aG9yaXR5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX29pZGNfYXV0aG9yaXR5O1xuICB9XG5cbiAgZ2V0IG9pZGNfY2xpZW50X2lkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX29pZGNfY2xpZW50X2lkO1xuICB9XG5cbiAgZ2V0IG9pZGNfY2xpZW50X3NlY3JldCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9vaWRjX2NsaWVudF9zZWNyZXQ7XG4gIH1cblxuICBnZXQgaG9zdF91cmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faG9zdF91cmw7XG4gIH1cblxuICBnZXQgaG9zdF91cmxfZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faG9zdF91cmxfZW47XG4gIH1cblxuICBnZXQgb2lkY19iYXNlX3VybCgpOiBzdHJpbmcge1xuICAgIGlmKHRoaXMubG9jYWxlSWQgPT0gXCJkYVwiKSAgIHtcbiAgICAgIHJldHVybiB0aGlzLmhvc3RfdXJsO1xuICAgIH1cbiAgICBlbHNle1xuICAgICAgcmV0dXJuIHRoaXMuaG9zdF91cmxfZW47XG4gICAgfSAgICBcbiAgfVxuXG4gIGdldCBvaWRjX3JlZGlyZWN0X3VyaSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLm9pZGNfYmFzZV91cmx9c2lnbmluLWNhbGxiYWNrYDtcbiAgfVxuXG4gIGdldCBvaWRjX3JlZGlyZWN0X3NpbGVudF91cmkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5vaWRjX2Jhc2VfdXJsfXNpZ25pbi1zaWxlbnQtY2FsbGJhY2tgO1xuICB9XG5cbiAgZ2V0IG9pZGNfcG9zdF9sb2dvdXRfcmVkaXJlY3RfdXJpKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMub2lkY19iYXNlX3VybH1zaWdub3V0LWNhbGxiYWNrYDtcbiAgfVxuXG4gIGdldCBvaWRjX3Jlc3BvbnNlX3R5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fb2lkY19yZXNwb25zZV90eXBlO1xuICB9XG5cbiAgZ2V0IG9pZGNfc2NvcGVzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX29pZGNfc2NvcGVzO1xuICB9XG5cbiAgZ2V0IGxvZ19odHRwdHJhZmljKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2xvZ19odHRwdHJhZmljO1xuICB9XG5cbiAgZ2V0IHRoZW1lc19lbmFibGVkKCk6IGJvb2xlYW58dW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fdGhlbWVzX2VuYWJsZWQ7XG4gIH1cbiAgIFxufVxuIl19
@@ -253,7 +253,8 @@ class MobicloudConfigService {
253
253
  this.themeNameObservable.subscribe(p => this.themeName = p);
254
254
  }
255
255
  checkIfConfigFileExists(config_file) {
256
- return this.http.head(`./assets/${config_file}`)
256
+ const timestamp = new Date().getTime();
257
+ return this.http.head(`./assets/${config_file}?t=${timestamp}`)
257
258
  .pipe(catchError(error => {
258
259
  return of(false);
259
260
  }))
@@ -263,13 +264,14 @@ class MobicloudConfigService {
263
264
  });
264
265
  }
265
266
  getConfigData(config_file) {
266
- return this.checkIfConfigFileExists("app.config.runtime.json").then((exists) => {
267
+ return this.checkIfConfigFileExists(`app.config.runtime.json`).then((exists) => {
267
268
  var config_file_url = `./assets/${config_file}`;
268
269
  if (exists) {
269
270
  config_file_url = `./assets/app.config.runtime.json`;
270
271
  }
271
272
  console.log("Loading config:", config_file, config_file_url, exists);
272
- return this.http.get(config_file_url)
273
+ const timestamp = new Date().getTime();
274
+ return this.http.get(`${config_file_url}?t=${timestamp}`)
273
275
  .toPromise()
274
276
  .then(configdata => {
275
277
  Object.assign(this, configdata);