@sambath999/localize-token 12.2.5 → 12.2.7

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.
@@ -6,8 +6,7 @@ import { LocalizeToken, waitFor, waitUntil } from "./localize.token";
6
6
  import { BehaviorSubject } from "rxjs";
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/common/http";
9
- import * as i2 from "./localize.token";
10
- import * as i3 from "./localize.token.service";
9
+ import * as i2 from "./localize.token.service";
11
10
  /**
12
11
  * Http method options
13
12
  */
@@ -20,9 +19,8 @@ export var EMethod;
20
19
  EMethod[EMethod["PATCH"] = 5] = "PATCH";
21
20
  })(EMethod || (EMethod = {}));
22
21
  export class LocalizeApiService {
23
- constructor(httpClient, tokenConfig, localizeTokenService) {
22
+ constructor(httpClient, localizeTokenService) {
24
23
  this.httpClient = httpClient;
25
- this.tokenConfig = tokenConfig;
26
24
  this.localizeTokenService = localizeTokenService;
27
25
  this.isRequestingSubject = new BehaviorSubject(false);
28
26
  this.isResolvedStartupSubject = new BehaviorSubject(false);
@@ -37,7 +35,6 @@ export class LocalizeApiService {
37
35
  }
38
36
  get isRequesting() { return this.isRequestingSubject.value; }
39
37
  get isResolvedStartup() { return this.isResolvedStartupSubject.value; }
40
- get config() { return this.tokenConfig.getConfig; }
41
38
  /**
42
39
  * Initialize the API service.
43
40
  * @param apiConfigs - The API configurations.
@@ -102,7 +99,7 @@ export class LocalizeApiService {
102
99
  }
103
100
  try {
104
101
  this.localizeTokenService.isRevokingToken = true;
105
- const reqUrl = this.config.revokeTokenUrl;
102
+ const reqUrl = LocalizeToken.config.revokeTokenUrl;
106
103
  const reqHeaders = this.options().append(LocalizeToken.httpHeaders.X_REFRESH_TOKEN, `${this.localizeTokenService.refreshToken}`);
107
104
  const revokeToken = yield new Promise((resolve, reject) => this.httpClient.get(reqUrl, { headers: reqHeaders }).subscribe({ next: resolve, error: reject }));
108
105
  if (revokeToken === null || revokeToken === void 0 ? void 0 : revokeToken.status) {
@@ -126,8 +123,8 @@ export class LocalizeApiService {
126
123
  /** default http request options */
127
124
  options(isFormData = false, headers = {}) {
128
125
  const defaultHeaders = { [LocalizeToken.httpHeaders.AUTHORIZATION]: `Bearer ${this.localizeTokenService.accessToken}`, };
129
- if (this.config.needTenant) {
130
- defaultHeaders[LocalizeToken.httpHeaders.X_TENANT] = `${this.localizeTokenService.tenantToken()}`;
126
+ if (LocalizeToken.config.needTenant) {
127
+ defaultHeaders[LocalizeToken.httpHeaders.X_TENANT] = `${this.localizeTokenService.tenantToken(this.apiConfigs.tenantTokenName)}`;
131
128
  }
132
129
  if (!isFormData) {
133
130
  defaultHeaders[LocalizeToken.httpHeaders.CONTENT_TYPE] = 'application/json';
@@ -145,7 +142,7 @@ export class LocalizeApiService {
145
142
  });
146
143
  }
147
144
  } //class
148
- LocalizeApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeApiService_Factory() { return new LocalizeApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LocalizeToken), i0.ɵɵinject(i3.LocalizeTokenService)); }, token: LocalizeApiService, providedIn: "root" });
145
+ LocalizeApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeApiService_Factory() { return new LocalizeApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LocalizeTokenService)); }, token: LocalizeApiService, providedIn: "root" });
149
146
  LocalizeApiService.decorators = [
150
147
  { type: Injectable, args: [{
151
148
  providedIn: 'root'
@@ -153,7 +150,6 @@ LocalizeApiService.decorators = [
153
150
  ];
154
151
  LocalizeApiService.ctorParameters = () => [
155
152
  { type: HttpClient },
156
- { type: LocalizeToken },
157
153
  { type: LocalizeTokenService }
158
154
  ];
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9jYWxpemUtdG9rZW4vbG9jYWxpemUuYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQUV2Qzs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLE9BTVg7QUFORCxXQUFZLE9BQU87SUFDakIscUNBQVEsQ0FBQTtJQUNSLG1DQUFPLENBQUE7SUFDUCxtQ0FBTyxDQUFBO0lBQ1AseUNBQVUsQ0FBQTtJQUNWLHVDQUFTLENBQUE7QUFDWCxDQUFDLEVBTlcsT0FBTyxLQUFQLE9BQU8sUUFNbEI7QUEwQkQsTUFBTSxPQUFPLGtCQUFrQjtJQVU3QixZQUFxQixVQUFzQixFQUN4QixXQUEwQixFQUMxQixvQkFBMEM7UUFGeEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBZTtRQUMxQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBVnBELHdCQUFtQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQzFELDZCQUF3QixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBSWhFLGVBQVUsR0FBd0IsRUFBRSxDQUFDO1FBaUI3Qzs7Ozs7V0FLRztRQUNILFNBQUksR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFLENBQ3pCLENB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IkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTG9jYWxpemVUb2tlblNlcnZpY2UgfSBmcm9tIFwiLi9sb2NhbGl6ZS50b2tlbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IExvY2FsaXplVG9rZW4sIHdhaXRGb3IsIHdhaXRVbnRpbCB9IGZyb20gXCIuL2xvY2FsaXplLnRva2VuXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG4vKipcclxuICogSHR0cCBtZXRob2Qgb3B0aW9uc1xyXG4gKi9cclxuZXhwb3J0IGVudW0gRU1ldGhvZCB7XHJcbiAgUE9TVCA9IDEsXHJcbiAgR0VUID0gMixcclxuICBQVVQgPSAzLFxyXG4gIERFTEVURSA9IDQsXHJcbiAgUEFUQ0ggPSA1XHJcbn1cclxuXHJcbmludGVyZmFjZSBJTG9jYWxpemVBcGlDb25maWdzIHtcclxuICBvblByZXBhcmVSZXF1ZXN0PzogKCkgPT4gYW55O1xyXG4gIC8qKlxyXG4gICAqICBBIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gcmVmcmVzaCB0b2tlbiBpcyBtaXNzaW5nIHRoZW4gcGVyZm9ybSB0aGUgYXV0byBsb2dvdXQuXHJcbiAgICogQHJldHVybnMgLSBUaGUgYmFzZSBVUkwgb2YgdGhlIEFQSS5cclxuICAgKi9cclxuICBvbkF1dG9Mb2dvdXQ/OiAoKSA9PiBhbnk7XHJcbiAgLyoqXHJcbiAgICogQSBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIHJlcXVlc3QgcmV2b2tpbmcgdG9rZW4gdW5hdXRob3JpemVkLlxyXG4gICAqIEByZXR1cm5zIC0gVGhlIGxvZ2luIGRpYWxvZyBzZXJ2aWNlLlxyXG4gICAqL1xyXG4gIG9uUmV2b2tlVW5hdXRob3JpemVkPzogKCkgPT4gYW55O1xyXG4gIC8qKlxyXG4gICAqIFRoZSB0aW1lIHRvIHdhaXQgZm9yIGVhY2ggcmVxdWVzdCB0byBjb21wbGV0ZSBpbiBtaWxsaXNlY29uZHMuXHJcbiAgICogQmUgY2FyZWZ1bCB3aXRoIHRoaXMgb3B0aW9uLCBpdCBtYXkgY2F1c2UgdGhlIGFwcGxpY2F0aW9uIHRvIGhhbmcgaWYgdGhlIHJlcXVlc3QgaXMgbm90IGNvbXBsZXRlZC5cclxuICAgKi9cclxuICB3YWl0RWFjaFJlcXVlc3Q/OiB7XHJcbiAgICBtaWxsaXNlY29uZHM6IG51bWJlclxyXG4gIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemVBcGlTZXJ2aWNlIHtcclxuXHJcbiAgcmVhZG9ubHkgaXNSZXF1ZXN0aW5nU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHJlYWRvbmx5IGlzUmVzb2x2ZWRTdGFydHVwU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIGdldCBpc1JlcXVlc3RpbmcoKSB7IHJldHVybiB0aGlzLmlzUmVxdWVzdGluZ1N1YmplY3QudmFsdWU7IH1cclxuICBnZXQgaXNSZXNvbHZlZFN0YXJ0dXAoKSB7IHJldHVybiB0aGlzLmlzUmVzb2x2ZWRTdGFydHVwU3ViamVjdC52YWx1ZTsgfVxyXG5cclxuICBwcml2YXRlIGFwaUNvbmZpZ3M6IElMb2NhbGl6ZUFwaUNvbmZpZ3MgPSB7fTtcclxuICBwcml2YXRlIGdldCBjb25maWcoKSB7IHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmdldENvbmZpZyB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRva2VuQ29uZmlnOiBMb2NhbGl6ZVRva2VuLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2NhbGl6ZVRva2VuU2VydmljZTogTG9jYWxpemVUb2tlblNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplIHRoZSBBUEkgc2VydmljZS5cclxuICAgKiBAcGFyYW0gYXBpQ29uZmlncyAtIFRoZSBBUEkgY29uZmlndXJhdGlvbnMuXHJcbiAgICovXHJcbiAgaW5pdChhcGlDb25maWdzOiBJTG9jYWxpemVBcGlDb25maWdzKSB7XHJcbiAgICB0aGlzLmFwaUNvbmZpZ3MgPSBhcGlDb25maWdzO1xyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEEgaGlnaGVyLW9yZGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIGN1cnJpZWQgZnVuY3Rpb24gZm9yIG1ha2luZyBBUEkgcmVxdWVzdHMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gYmFzZVVybCAtIFRoZSBiYXNlIFVSTCBvZiB0aGUgQVBJLlxyXG4gICAqIEByZXR1cm5zIEEgY3VycmllZCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIG1ha2UgQVBJIHJlcXVlc3RzLlxyXG4gICAqL1xyXG4gIGZ1bmMgPSAoYmFzZVVybDogc3RyaW5nKSA9PlxyXG4gICAgKHBhdGg6IHN0cmluZywgbWV0aG9kOiBFTWV0aG9kID0gRU1ldGhvZC5HRVQsIHZhbHVlOiBhbnkgPSBudWxsLCBpc0Zvcm1EYXRhOiBib29sZWFuID0gZmFsc2UsIGhlYWRlcnM/OiB7IFt4OiBzdHJpbmddOiBzdHJpbmcgfSkgPT5cclxuICAgICAgdGhpcy5iYXNlKGJhc2VVcmwsIHBhdGgsIG1ldGhvZCwgdmFsdWUsIGlzRm9ybURhdGEsIGhlYWRlcnMpXHJcblxyXG4gIHByaXZhdGUgYXN5bmMgYmFzZShiYXNlVXJsOiBzdHJpbmcsXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBtZXRob2Q6IEVNZXRob2QgPSBFTWV0aG9kLkdFVCxcclxuICAgIHZhbHVlOiBhbnkgPSBudWxsLFxyXG4gICAgaXNGb3JtRGF0YTogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgaGVhZGVycz86IHsgW3g6IHN0cmluZ106IHN0cmluZyB9KSB7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5pZlByb21pc2UodGhpcy5hcGlDb25maWdzLm9uUHJlcGFyZVJlcXVlc3QpO1xyXG5cclxuICAgIGNvbnN0IHVybCA9IGAke2Jhc2VVcmwudHJpbSgpLnJlcGxhY2UoL1xcLz8kLywgJy8nKX0ke3BhdGgudHJpbSgpLnJlcGxhY2UoL15cXC8vLCAnJyl9YDtcclxuICAgIGNvbnN0IGh0dHBNZXRob2QgPSBFTWV0aG9kW21ldGhvZF0udG9Mb3dlckNhc2UoKTtcclxuICAgIGNvbnN0IHJlcXVlc3QgPSAoKSA9PiB7IHJldHVybiB7IGJvZHk6IHZhbHVlLCBoZWFkZXJzOiB0aGlzLm9wdGlvbnMoaXNGb3JtRGF0YSwgaGVhZGVycykgfSB9O1xyXG5cclxuICAgIC8vIFdhaXQgZm9yIHByZXZpb3VzIHJlcXVlc3QgdG8gY29tcGxldGVcclxuICAgIGF3YWl0IHRoaXMudG9XYWl0Rm9yUHJldmlvdXNSZXF1ZXN0KCk7XHJcblxyXG4gICAgLy8gUHJvY2VzcyByZXF1ZXN0XHJcbiAgICB0cnkgeyByZXR1cm4gYXdhaXQgdGhpcy5wcm9jZXNzUmVxdWVzdChodHRwTWV0aG9kLCB1cmwsIHJlcXVlc3QoKSkgfVxyXG4gICAgLy8gSGFuZGxlIHVuYXV0aG9yaXplZCBlcnJvciBpZiBhbnlcclxuICAgIGNhdGNoIChlcnJvcikge1xyXG4gICAgICBpZiAoKGVycm9yIGFzIGFueSkuc3RhdHVzICE9PSA0MDEpIHsgdGhyb3cgZXJyb3I7IH1cclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMub25VbmF1dGhvcml6ZWRFcnJvcihodHRwTWV0aG9kLCB1cmwsIHJlcXVlc3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBvblVuYXV0aG9yaXplZEVycm9yKGh0dHBNZXRob2Q6IHN0cmluZywgdXJsOiBzdHJpbmcsIHJlcXVlc3Q6IEZ1bmN0aW9uKSB7XHJcbiAgICBhd2FpdCB0aGlzLnJldm9rZVRva2VuKCk7XHJcbiAgICBpZiAoIXRoaXMuaXNSZXNvbHZlZFN0YXJ0dXApIHtcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJvY2Vzc1JlcXVlc3QoaHR0cE1ldGhvZCwgdXJsLCByZXF1ZXN0KCkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyB0b1dhaXRGb3JQcmV2aW91c1JlcXVlc3QoKSB7XHJcbiAgICBpZiAodGhpcy5sb2NhbGl6ZVRva2VuU2VydmljZS5pc1Jldm9raW5nVG9rZW4pIHtcclxuICAgICAgYXdhaXQgd2FpdFVudGlsKCgpID0+ICF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbik7XHJcbiAgICB9XHJcbiAgICAvLyB0byB3YWl0IGZvciBlYWNoIHJlcXVlc3QgaW4gNTBtcywgZXZlbiBpZiB0aGUgcmVxdWVzdCBpcyBub3QgY29tcGxldGVkXHJcbiAgICBpZiAodGhpcy5hcGlDb25maWdzLndhaXRFYWNoUmVxdWVzdD8ubWlsbGlzZWNvbmRzKSB7XHJcbiAgICAgIGF3YWl0IHdhaXRGb3IodGhpcy5hcGlDb25maWdzLndhaXRFYWNoUmVxdWVzdC5taWxsaXNlY29uZHMsIHRoaXMuaXNSZXF1ZXN0aW5nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgcHJvY2Vzc1JlcXVlc3QobWV0aG9kOiBzdHJpbmcsIHVybDogc3RyaW5nLCBvcHRpb25zOiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgdGhpcy5pc1JlcXVlc3RpbmdTdWJqZWN0Lm5leHQodHJ1ZSk7XHJcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PlxyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucmVxdWVzdDxhbnk+KG1ldGhvZCwgdXJsLCBvcHRpb25zKS5zdWJzY3JpYmUoeyBuZXh0OiByZXNvbHZlLCBlcnJvcjogcmVqZWN0IH0pKVxyXG4gICAgdGhpcy5pc1JlcXVlc3RpbmdTdWJqZWN0Lm5leHQoZmFsc2UpO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgcmV2b2tlVG9rZW4oZm9yY2U6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8dm9pZD4ge1xyXG5cclxuICAgIGlmICh0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbiAmJiAhZm9yY2UpIHtcclxuICAgICAgYXdhaXQgd2FpdFVudGlsKCgpID0+ICF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbilcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIHRoaXMubG9jYWxpemVUb2tlblNlcnZpY2UuaXNSZXZva2luZ1Rva2VuID0gdHJ1ZTtcclxuICAgICAgY29uc3QgcmVxVXJsID0gdGhpcy5jb25maWcucmV2b2tlVG9rZW5Vcmw7XHJcbiAgICAgIGNvbnN0IHJlcUhlYWRlcnMgPSB0aGlzLm9wdGlvbnMoKS5hcHBlbmQoTG9jYWxpemVUb2tlbi5odHRwSGVhZGVycy5YX1JFRlJFU0hfVE9LRU4sIGAke3RoaXMubG9jYWxpemVUb2tlblNlcnZpY2UucmVmcmVzaFRva2VufWApO1xyXG4gICAgICBjb25zdCByZXZva2VUb2tlbjogYW55ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT5cclxuICAgICAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PGFueT4ocmVxVXJsISwgeyBoZWFkZXJzOiByZXFIZWFkZXJzIH0pLnN1YnNjcmliZSh7IG5leHQ6IHJlc29sdmUsIGVycm9yOiByZWplY3QgfSkpXHJcblxyXG4gICAgICBpZiAocmV2b2tlVG9rZW4/LnN0YXR1cykge1xyXG4gICAgICAgIHRoaXMubG9jYWxpemVUb2tlblNlcnZpY2UuYWNjZXNzVG9rZW4gPSByZXZva2VUb2tlbi5tZXNzYWdlO1xyXG4gICAgICB9IGVsc2UgaWYgKCF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLnJlZnJlc2hUb2tlbikge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuaWZQcm9taXNlKHRoaXMuYXBpQ29uZmlncy5vbkF1dG9Mb2dvdXQpXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYXBpQ29uZmlncy5vblJldm9rZVVuYXV0aG9yaXplZCkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5pZlByb21pc2UodGhpcy5hcGlDb25maWdzLm9uUmV2b2tlVW5hdXRob3JpemVkKTtcclxuICAgICAgICAgIGF3YWl0IHRoaXMucmV2b2tlVG9rZW4odHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGZpbmFsbHkge1xyXG4gICAgICB0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIGRlZmF1bHQgaHR0cCByZXF1ZXN0IG9wdGlvbnMgKi9cclxuICBwcml2YXRlIG9wdGlvbnMoaXNGb3JtRGF0YTogYm9vbGVhbiA9IGZhbHNlLCBoZWFkZXJzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiBIdHRwSGVhZGVycyB7XHJcbiAgICBjb25zdCBkZWZhdWx0SGVhZGVycyA9IHsgW0xvY2FsaXplVG9rZW4uaHR0cEhlYWRlcnMuQVVUSE9SSVpBVElPTl06IGBCZWFyZXIgJHt0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmFjY2Vzc1Rva2VufWAsIH07XHJcbiAgICBpZiAodGhpcy5jb25maWcubmVlZFRlbmFudCkge1xyXG4gICAgICBkZWZhdWx0SGVhZGVyc1tMb2NhbGl6ZVRva2VuLmh0dHBIZWFkZXJzLlhfVEVOQU5UXSA9IGAke3RoaXMubG9jYWxpemVUb2tlblNlcnZpY2UudGVuYW50VG9rZW4oKX1gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghaXNGb3JtRGF0YSkge1xyXG4gICAgICBkZWZhdWx0SGVhZGVyc1tMb2NhbGl6ZVRva2VuLmh0dHBIZWFkZXJzLkNPTlRFTlRfVFlQRV0gPSAnYXBwbGljYXRpb24vanNvbic7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZmlsdGVyZWRIZWFkZXJzID0gT2JqZWN0LmtleXMoZGVmYXVsdEhlYWRlcnMpLmZpbHRlcihrZXkgPT4gIU9iamVjdC5rZXlzKGhlYWRlcnMpLmluY2x1ZGVzKGtleSkpXHJcbiAgICAgIC5yZWR1Y2UoKGFjYywga2V5KSA9PiAoeyAuLi5hY2MsIFtrZXldOiBkZWZhdWx0SGVhZGVyc1trZXldIH0pLCB7fSlcclxuICAgIGNvbnN0IG1lcmdlZEhlYWRlcnMgPSB7IC4uLmZpbHRlcmVkSGVhZGVycywgLi4uaGVhZGVycyB9O1xyXG4gICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycyhtZXJnZWRIZWFkZXJzKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgaWZQcm9taXNlKGZuPzogRnVuY3Rpb24pIHtcclxuICAgIGlmICghZm4pIHJldHVybjtcclxuICAgIHJldHVybiBmbiBpbnN0YW5jZW9mIFByb21pc2UgPyBhd2FpdCBmbigpIDogZm4oKTtcclxuICB9XHJcblxyXG59Ly9jbGFzc1xyXG4iXX0=
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9jYWxpemUtdG9rZW4vbG9jYWxpemUuYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBRXZDOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksT0FNWDtBQU5ELFdBQVksT0FBTztJQUNqQixxQ0FBUSxDQUFBO0lBQ1IsbUNBQU8sQ0FBQTtJQUNQLG1DQUFPLENBQUE7SUFDUCx5Q0FBVSxDQUFBO0lBQ1YsdUNBQVMsQ0FBQTtBQUNYLENBQUMsRUFOVyxPQUFPLEtBQVAsT0FBTyxRQU1sQjtBQTJCRCxNQUFNLE9BQU8sa0JBQWtCO0lBUzdCLFlBQXFCLFVBQXNCLEVBQ3hCLG9CQUEwQztRQUR4QyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3hCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFScEQsd0JBQW1CLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDMUQsNkJBQXdCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFJaEUsZUFBVSxHQUF3QixFQUFFLENBQUM7UUFlN0M7Ozs7O1dBS0c7UUFDSCxTQUFJLEdBQUcsQ0FBQyxPQUFlLEVBQUUsRUFBRSxDQUN6QixDQUFDLElBQVksRUFBRSxTQUFrQixPQUFPLENBQUMsR0FBRyxFQUFFLFFB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V0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZ0IsQ0FBQyxFQUFFLENBQUM7U0FDbkk7UUFFRCxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsY0FBYyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsa0JBQWtCLENBQUM7U0FDN0U7UUFFRCxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDbkcsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsaUNBQU0sR0FBRyxLQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFHLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDckUsTUFBTSxhQUFhLG1DQUFRLGVBQWUsR0FBSyxPQUFPLENBQUUsQ0FBQztRQUN6RCxPQUFPLElBQUksV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFYSxTQUFTLENBQUMsRUFBYTs7WUFDbkMsSUFBSSxDQUFDLEVBQUU7Z0JBQUUsT0FBTztZQUNoQixPQUFPLEVBQUUsWUFBWSxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ25ELENBQUM7S0FBQTtFQUVGLE9BQU87OztZQXhJUCxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQXZDUSxVQUFVO1lBRFYsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IExvY2FsaXplVG9rZW5TZXJ2aWNlIH0gZnJvbSBcIi4vbG9jYWxpemUudG9rZW4uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZVRva2VuLCB3YWl0Rm9yLCB3YWl0VW50aWwgfSBmcm9tIFwiLi9sb2NhbGl6ZS50b2tlblwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuLyoqXHJcbiAqIEh0dHAgbWV0aG9kIG9wdGlvbnNcclxuICovXHJcbmV4cG9ydCBlbnVtIEVNZXRob2Qge1xyXG4gIFBPU1QgPSAxLFxyXG4gIEdFVCA9IDIsXHJcbiAgUFVUID0gMyxcclxuICBERUxFVEUgPSA0LFxyXG4gIFBBVENIID0gNVxyXG59XHJcblxyXG5pbnRlcmZhY2UgSUxvY2FsaXplQXBpQ29uZmlncyB7XHJcbiAgdGVuYW50VG9rZW5OYW1lPzogc3RyaW5nO1xyXG4gIG9uUHJlcGFyZVJlcXVlc3Q/OiAoKSA9PiBhbnk7XHJcbiAgLyoqXHJcbiAgICogIEEgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2hlbiByZWZyZXNoIHRva2VuIGlzIG1pc3NpbmcgdGhlbiBwZXJmb3JtIHRoZSBhdXRvIGxvZ291dC5cclxuICAgKiBAcmV0dXJucyAtIFRoZSBiYXNlIFVSTCBvZiB0aGUgQVBJLlxyXG4gICAqL1xyXG4gIG9uQXV0b0xvZ291dD86ICgpID0+IGFueTtcclxuICAvKipcclxuICAgKiBBIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIHdoZW4gcmVxdWVzdCByZXZva2luZyB0b2tlbiB1bmF1dGhvcml6ZWQuXHJcbiAgICogQHJldHVybnMgLSBUaGUgbG9naW4gZGlhbG9nIHNlcnZpY2UuXHJcbiAgICovXHJcbiAgb25SZXZva2VVbmF1dGhvcml6ZWQ/OiAoKSA9PiBhbnk7XHJcbiAgLyoqXHJcbiAgICogVGhlIHRpbWUgdG8gd2FpdCBmb3IgZWFjaCByZXF1ZXN0IHRvIGNvbXBsZXRlIGluIG1pbGxpc2Vjb25kcy5cclxuICAgKiBCZSBjYXJlZnVsIHdpdGggdGhpcyBvcHRpb24sIGl0IG1heSBjYXVzZSB0aGUgYXBwbGljYXRpb24gdG8gaGFuZyBpZiB0aGUgcmVxdWVzdCBpcyBub3QgY29tcGxldGVkLlxyXG4gICAqL1xyXG4gIHdhaXRFYWNoUmVxdWVzdD86IHtcclxuICAgIG1pbGxpc2Vjb25kczogbnVtYmVyXHJcbiAgfVxyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2NhbGl6ZUFwaVNlcnZpY2Uge1xyXG5cclxuICByZWFkb25seSBpc1JlcXVlc3RpbmdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgcmVhZG9ubHkgaXNSZXNvbHZlZFN0YXJ0dXBTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgZ2V0IGlzUmVxdWVzdGluZygpIHsgcmV0dXJuIHRoaXMuaXNSZXF1ZXN0aW5nU3ViamVjdC52YWx1ZTsgfVxyXG4gIGdldCBpc1Jlc29sdmVkU3RhcnR1cCgpIHsgcmV0dXJuIHRoaXMuaXNSZXNvbHZlZFN0YXJ0dXBTdWJqZWN0LnZhbHVlOyB9XHJcblxyXG4gIHByaXZhdGUgYXBpQ29uZmlnczogSUxvY2FsaXplQXBpQ29uZmlncyA9IHt9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2NhbGl6ZVRva2VuU2VydmljZTogTG9jYWxpemVUb2tlblNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplIHRoZSBBUEkgc2VydmljZS5cclxuICAgKiBAcGFyYW0gYXBpQ29uZmlncyAtIFRoZSBBUEkgY29uZmlndXJhdGlvbnMuXHJcbiAgICovXHJcbiAgaW5pdChhcGlDb25maWdzOiBJTG9jYWxpemVBcGlDb25maWdzKSB7XHJcbiAgICB0aGlzLmFwaUNvbmZpZ3MgPSBhcGlDb25maWdzO1xyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEEgaGlnaGVyLW9yZGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIGN1cnJpZWQgZnVuY3Rpb24gZm9yIG1ha2luZyBBUEkgcmVxdWVzdHMuXHJcbiAgICpcclxuICAgKiBAcGFyYW0gYmFzZVVybCAtIFRoZSBiYXNlIFVSTCBvZiB0aGUgQVBJLlxyXG4gICAqIEByZXR1cm5zIEEgY3VycmllZCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIG1ha2UgQVBJIHJlcXVlc3RzLlxyXG4gICAqL1xyXG4gIGZ1bmMgPSAoYmFzZVVybDogc3RyaW5nKSA9PlxyXG4gICAgKHBhdGg6IHN0cmluZywgbWV0aG9kOiBFTWV0aG9kID0gRU1ldGhvZC5HRVQsIHZhbHVlOiBhbnkgPSBudWxsLCBpc0Zvcm1EYXRhOiBib29sZWFuID0gZmFsc2UsIGhlYWRlcnM/OiB7IFt4OiBzdHJpbmddOiBzdHJpbmcgfSkgPT5cclxuICAgICAgdGhpcy5iYXNlKGJhc2VVcmwsIHBhdGgsIG1ldGhvZCwgdmFsdWUsIGlzRm9ybURhdGEsIGhlYWRlcnMpXHJcblxyXG4gIHByaXZhdGUgYXN5bmMgYmFzZShiYXNlVXJsOiBzdHJpbmcsXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBtZXRob2Q6IEVNZXRob2QgPSBFTWV0aG9kLkdFVCxcclxuICAgIHZhbHVlOiBhbnkgPSBudWxsLFxyXG4gICAgaXNGb3JtRGF0YTogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgaGVhZGVycz86IHsgW3g6IHN0cmluZ106IHN0cmluZyB9KSB7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5pZlByb21pc2UodGhpcy5hcGlDb25maWdzLm9uUHJlcGFyZVJlcXVlc3QpO1xyXG5cclxuICAgIGNvbnN0IHVybCA9IGAke2Jhc2VVcmwudHJpbSgpLnJlcGxhY2UoL1xcLz8kLywgJy8nKX0ke3BhdGgudHJpbSgpLnJlcGxhY2UoL15cXC8vLCAnJyl9YDtcclxuICAgIGNvbnN0IGh0dHBNZXRob2QgPSBFTWV0aG9kW21ldGhvZF0udG9Mb3dlckNhc2UoKTtcclxuICAgIGNvbnN0IHJlcXVlc3QgPSAoKSA9PiB7IHJldHVybiB7IGJvZHk6IHZhbHVlLCBoZWFkZXJzOiB0aGlzLm9wdGlvbnMoaXNGb3JtRGF0YSwgaGVhZGVycykgfSB9O1xyXG5cclxuICAgIC8vIFdhaXQgZm9yIHByZXZpb3VzIHJlcXVlc3QgdG8gY29tcGxldGVcclxuICAgIGF3YWl0IHRoaXMudG9XYWl0Rm9yUHJldmlvdXNSZXF1ZXN0KCk7XHJcblxyXG4gICAgLy8gUHJvY2VzcyByZXF1ZXN0XHJcbiAgICB0cnkgeyByZXR1cm4gYXdhaXQgdGhpcy5wcm9jZXNzUmVxdWVzdChodHRwTWV0aG9kLCB1cmwsIHJlcXVlc3QoKSkgfVxyXG4gICAgLy8gSGFuZGxlIHVuYXV0aG9yaXplZCBlcnJvciBpZiBhbnlcclxuICAgIGNhdGNoIChlcnJvcikge1xyXG4gICAgICBpZiAoKGVycm9yIGFzIGFueSkuc3RhdHVzICE9PSA0MDEpIHsgdGhyb3cgZXJyb3I7IH1cclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMub25VbmF1dGhvcml6ZWRFcnJvcihodHRwTWV0aG9kLCB1cmwsIHJlcXVlc3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBvblVuYXV0aG9yaXplZEVycm9yKGh0dHBNZXRob2Q6IHN0cmluZywgdXJsOiBzdHJpbmcsIHJlcXVlc3Q6IEZ1bmN0aW9uKSB7XHJcbiAgICBhd2FpdCB0aGlzLnJldm9rZVRva2VuKCk7XHJcbiAgICBpZiAoIXRoaXMuaXNSZXNvbHZlZFN0YXJ0dXApIHtcclxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMucHJvY2Vzc1JlcXVlc3QoaHR0cE1ldGhvZCwgdXJsLCByZXF1ZXN0KCkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyB0b1dhaXRGb3JQcmV2aW91c1JlcXVlc3QoKSB7XHJcbiAgICBpZiAodGhpcy5sb2NhbGl6ZVRva2VuU2VydmljZS5pc1Jldm9raW5nVG9rZW4pIHtcclxuICAgICAgYXdhaXQgd2FpdFVudGlsKCgpID0+ICF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbik7XHJcbiAgICB9XHJcbiAgICAvLyB0byB3YWl0IGZvciBlYWNoIHJlcXVlc3QgaW4gNTBtcywgZXZlbiBpZiB0aGUgcmVxdWVzdCBpcyBub3QgY29tcGxldGVkXHJcbiAgICBpZiAodGhpcy5hcGlDb25maWdzLndhaXRFYWNoUmVxdWVzdD8ubWlsbGlzZWNvbmRzKSB7XHJcbiAgICAgIGF3YWl0IHdhaXRGb3IodGhpcy5hcGlDb25maWdzLndhaXRFYWNoUmVxdWVzdC5taWxsaXNlY29uZHMsIHRoaXMuaXNSZXF1ZXN0aW5nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgcHJvY2Vzc1JlcXVlc3QobWV0aG9kOiBzdHJpbmcsIHVybDogc3RyaW5nLCBvcHRpb25zOiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgdGhpcy5pc1JlcXVlc3RpbmdTdWJqZWN0Lm5leHQodHJ1ZSk7XHJcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PlxyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucmVxdWVzdDxhbnk+KG1ldGhvZCwgdXJsLCBvcHRpb25zKS5zdWJzY3JpYmUoeyBuZXh0OiByZXNvbHZlLCBlcnJvcjogcmVqZWN0IH0pKVxyXG4gICAgdGhpcy5pc1JlcXVlc3RpbmdTdWJqZWN0Lm5leHQoZmFsc2UpO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgcmV2b2tlVG9rZW4oZm9yY2U6IGJvb2xlYW4gPSBmYWxzZSk6IFByb21pc2U8dm9pZD4ge1xyXG5cclxuICAgIGlmICh0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbiAmJiAhZm9yY2UpIHtcclxuICAgICAgYXdhaXQgd2FpdFVudGlsKCgpID0+ICF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbilcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIHRoaXMubG9jYWxpemVUb2tlblNlcnZpY2UuaXNSZXZva2luZ1Rva2VuID0gdHJ1ZTtcclxuICAgICAgY29uc3QgcmVxVXJsID0gTG9jYWxpemVUb2tlbi5jb25maWcucmV2b2tlVG9rZW5Vcmw7XHJcbiAgICAgIGNvbnN0IHJlcUhlYWRlcnMgPSB0aGlzLm9wdGlvbnMoKS5hcHBlbmQoTG9jYWxpemVUb2tlbi5odHRwSGVhZGVycy5YX1JFRlJFU0hfVE9LRU4sIGAke3RoaXMubG9jYWxpemVUb2tlblNlcnZpY2UucmVmcmVzaFRva2VufWApO1xyXG4gICAgICBjb25zdCByZXZva2VUb2tlbjogYW55ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT5cclxuICAgICAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PGFueT4ocmVxVXJsISwgeyBoZWFkZXJzOiByZXFIZWFkZXJzIH0pLnN1YnNjcmliZSh7IG5leHQ6IHJlc29sdmUsIGVycm9yOiByZWplY3QgfSkpXHJcblxyXG4gICAgICBpZiAocmV2b2tlVG9rZW4/LnN0YXR1cykge1xyXG4gICAgICAgIHRoaXMubG9jYWxpemVUb2tlblNlcnZpY2UuYWNjZXNzVG9rZW4gPSByZXZva2VUb2tlbi5tZXNzYWdlO1xyXG4gICAgICB9IGVsc2UgaWYgKCF0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLnJlZnJlc2hUb2tlbikge1xyXG4gICAgICAgIGF3YWl0IHRoaXMuaWZQcm9taXNlKHRoaXMuYXBpQ29uZmlncy5vbkF1dG9Mb2dvdXQpXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYXBpQ29uZmlncy5vblJldm9rZVVuYXV0aG9yaXplZCkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5pZlByb21pc2UodGhpcy5hcGlDb25maWdzLm9uUmV2b2tlVW5hdXRob3JpemVkKTtcclxuICAgICAgICAgIGF3YWl0IHRoaXMucmV2b2tlVG9rZW4odHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGZpbmFsbHkge1xyXG4gICAgICB0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmlzUmV2b2tpbmdUb2tlbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIGRlZmF1bHQgaHR0cCByZXF1ZXN0IG9wdGlvbnMgKi9cclxuICBwcml2YXRlIG9wdGlvbnMoaXNGb3JtRGF0YTogYm9vbGVhbiA9IGZhbHNlLCBoZWFkZXJzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiBIdHRwSGVhZGVycyB7XHJcbiAgICBjb25zdCBkZWZhdWx0SGVhZGVycyA9IHsgW0xvY2FsaXplVG9rZW4uaHR0cEhlYWRlcnMuQVVUSE9SSVpBVElPTl06IGBCZWFyZXIgJHt0aGlzLmxvY2FsaXplVG9rZW5TZXJ2aWNlLmFjY2Vzc1Rva2VufWAsIH07XHJcbiAgICBpZiAoTG9jYWxpemVUb2tlbi5jb25maWcubmVlZFRlbmFudCkge1xyXG4gICAgICBkZWZhdWx0SGVhZGVyc1tMb2NhbGl6ZVRva2VuLmh0dHBIZWFkZXJzLlhfVEVOQU5UXSA9IGAke3RoaXMubG9jYWxpemVUb2tlblNlcnZpY2UudGVuYW50VG9rZW4odGhpcy5hcGlDb25maWdzLnRlbmFudFRva2VuTmFtZSEpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFpc0Zvcm1EYXRhKSB7XHJcbiAgICAgIGRlZmF1bHRIZWFkZXJzW0xvY2FsaXplVG9rZW4uaHR0cEhlYWRlcnMuQ09OVEVOVF9UWVBFXSA9ICdhcHBsaWNhdGlvbi9qc29uJztcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBmaWx0ZXJlZEhlYWRlcnMgPSBPYmplY3Qua2V5cyhkZWZhdWx0SGVhZGVycykuZmlsdGVyKGtleSA9PiAhT2JqZWN0LmtleXMoaGVhZGVycykuaW5jbHVkZXMoa2V5KSlcclxuICAgICAgLnJlZHVjZSgoYWNjLCBrZXkpID0+ICh7IC4uLmFjYywgW2tleV06IGRlZmF1bHRIZWFkZXJzW2tleV0gfSksIHt9KVxyXG4gICAgY29uc3QgbWVyZ2VkSGVhZGVycyA9IHsgLi4uZmlsdGVyZWRIZWFkZXJzLCAuLi5oZWFkZXJzIH07XHJcbiAgICByZXR1cm4gbmV3IEh0dHBIZWFkZXJzKG1lcmdlZEhlYWRlcnMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBpZlByb21pc2UoZm4/OiBGdW5jdGlvbikge1xyXG4gICAgaWYgKCFmbikgcmV0dXJuO1xyXG4gICAgcmV0dXJuIGZuIGluc3RhbmNlb2YgUHJvbWlzZSA/IGF3YWl0IGZuKCkgOiBmbigpO1xyXG4gIH1cclxuXHJcbn0vL2NsYXNzXHJcbiJdfQ==
@@ -1,20 +1,14 @@
1
1
  import { __awaiter } from "tslib";
2
- import { BehaviorSubject } from "rxjs";
3
2
  import { LocalizeTokenStorage } from "./localize.token.storage";
4
3
  export class LocalizeToken {
5
- constructor() {
6
- this.configSubject = new BehaviorSubject(LocalizeToken.config);
7
- }
8
- get getConfig() { return this.configSubject.value; }
9
4
  static init(config) {
10
- const lConfig = new LocalizeToken();
11
5
  LocalizeToken.config = Object.assign(Object.assign({}, LocalizeToken.config), config);
12
- lConfig.configSubject.next(LocalizeToken.config);
13
6
  }
14
7
  }
15
8
  LocalizeToken.config = {
16
9
  mainDomain: extractMainDomain(),
17
10
  authTokenName: 'auth-token',
11
+ tenantTokenName: '_lze_tnt_01',
18
12
  refreshTokenName: '_lze_rftkp_',
19
13
  needTenant: false,
20
14
  isProduction: false,
@@ -64,4 +58,4 @@ export function extractMainDomain(subdomain) {
64
58
  const parts = subdomain.split('.');
65
59
  return parts.length > 2 ? parts.slice(-2).join('.') : subdomain;
66
60
  }
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9jYWxpemUtdG9rZW4vbG9jYWxpemUudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFvQmhFLE1BQU0sT0FBTyxhQUFhO0lBQTFCO1FBRVcsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBdUIsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBMEIzRixDQUFDO0lBekJDLElBQUksU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBRXBELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBNEI7UUFDdEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNwQyxhQUFhLENBQUMsTUFBTSxtQ0FBUSxhQUFhLENBQUMsTUFBTSxHQUFLLE1BQU0sQ0FBRSxDQUFDO1FBQzlELE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRCxDQUFDOztBQUVjLG9CQUFNLEdBQXlCO0lBQzVDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRTtJQUMvQixhQUFhLEVBQUUsWUFBWTtJQUMzQixnQkFBZ0IsRUFBRSxhQUFhO0lBQy9CLFVBQVUsRUFBRSxLQUFLO0lBQ2pCLFlBQVksRUFBRSxLQUFLO0lBQ25CLGNBQWMsRUFBRSxFQUFFO0NBQ25CLENBQUE7QUFFZSxxQkFBTyxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztBQUVyQyx5QkFBVyxHQUFHO0lBQzVCLGFBQWEsRUFBRSxlQUFlO0lBQzlCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLGVBQWUsRUFBRSxnQkFBZ0I7SUFDakMsWUFBWSxFQUFFLGNBQWM7Q0FDN0IsQ0FBQTtBQUlIOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFnQixPQUFPLENBQUMsWUFBb0IsRUFBRSxPQUFnQixJQUFJOztRQUN0RSxJQUFJLENBQUMsSUFBSTtZQUFFLE9BQU87UUFDbEIsTUFBTSxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQUE7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFnQixTQUFTLENBQUMsSUFBZSxFQUFFLGlCQUF5QixFQUFFOztRQUMxRSxNQUFNLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzFCLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxHQUFTLEVBQUU7Z0JBQ3RDLE1BQU0sSUFBSSxHQUFHLElBQUksRUFBRSxDQUFDO2dCQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLFlBQVksT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUMzRCxJQUFJLE1BQU0sRUFBRTtvQkFDVixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDZjtZQUNILENBQUMsQ0FBQSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUFBO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFNBQWtCO0lBQ2xELFNBQVMsYUFBVCxTQUFTLGNBQVQsU0FBUyxJQUFULFNBQVMsR0FBSyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBQztJQUN2QyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNsRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgTG9jYWxpemVUb2tlblN0b3JhZ2UgfSBmcm9tIFwiLi9sb2NhbGl6ZS50b2tlbi5zdG9yYWdlXCI7XHJcbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2FsaXplVG9rZW5Db25maWcge1xyXG4gIC8qKlxyXG4gICAqIFRoZSBtYWluIGRvbWFpbiBvZiB0aGUgYXBwbGljYXRpb24gdG8gc2V0IHRoZSBjb29raWVzIHRvIGJlIGF2YWlsYWJsZSBmb3IgY3Jvc3MgYXBwbGljYXRpb24gd2l0aCBzdWJkb21haW5zLlxyXG4gICAqIFxyXG4gICAqIERlZmF1bHQgaXMgbG9jYXRpb24uaG9zdG5hbWUgKGN1cnJlbnQgZG9tYWluKSBhbmQgYXV0b21hdGljYWxseSBzZXQgZXh0cmFjdGVkIG1haW4gZG9tYWluIGlmIGl0IGlzIHN1YmRvbWFpbi5cclxuICAgKi9cclxuICBtYWluRG9tYWluPzogc3RyaW5nO1xyXG4gIGF1dGhUb2tlbk5hbWU/OiBzdHJpbmc7XHJcbiAgdGVuYW50VG9rZW5OYW1lPzogc3RyaW5nO1xyXG4gIHJlZnJlc2hUb2tlbk5hbWU/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgdGhlIHRlbmFudCB0b2tlbiBpcyByZXF1aXJlZC5cclxuICAgKi9cclxuICBuZWVkVGVuYW50OiBib29sZWFuO1xyXG4gIGlzUHJvZHVjdGlvbjogYm9vbGVhbjtcclxuICByZXZva2VUb2tlblVybDogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW4ge1xyXG5cclxuICByZWFkb25seSBjb25maWdTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJTG9jYWxpemVUb2tlbkNvbmZpZz4oTG9jYWxpemVUb2tlbi5jb25maWcpO1xyXG4gIGdldCBnZXRDb25maWcoKSB7IHJldHVybiB0aGlzLmNvbmZpZ1N1YmplY3QudmFsdWU7IH1cclxuXHJcbiAgc3RhdGljIGluaXQoY29uZmlnOiBJTG9jYWxpemVUb2tlbkNvbmZpZykge1xyXG4gICAgY29uc3QgbENvbmZpZyA9IG5ldyBMb2NhbGl6ZVRva2VuKCk7XHJcbiAgICBMb2NhbGl6ZVRva2VuLmNvbmZpZyA9IHsgLi4uTG9jYWxpemVUb2tlbi5jb25maWcsIC4uLmNvbmZpZyB9O1xyXG4gICAgbENvbmZpZy5jb25maWdTdWJqZWN0Lm5leHQoTG9jYWxpemVUb2tlbi5jb25maWcpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgY29uZmlnOiBJTG9jYWxpemVUb2tlbkNvbmZpZyA9IHtcclxuICAgIG1haW5Eb21haW46IGV4dHJhY3RNYWluRG9tYWluKCksXHJcbiAgICBhdXRoVG9rZW5OYW1lOiAnYXV0aC10b2tlbicsXHJcbiAgICByZWZyZXNoVG9rZW5OYW1lOiAnX2x6ZV9yZnRrcF8nLFxyXG4gICAgbmVlZFRlbmFudDogZmFsc2UsXHJcbiAgICBpc1Byb2R1Y3Rpb246IGZhbHNlLFxyXG4gICAgcmV2b2tlVG9rZW5Vcmw6ICcnXHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgc3RvcmFnZSA9IG5ldyBMb2NhbGl6ZVRva2VuU3RvcmFnZSgpO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgaHR0cEhlYWRlcnMgPSB7XHJcbiAgICBBVVRIT1JJWkFUSU9OOiAnQXV0aG9yaXphdGlvbicsXHJcbiAgICBYX1RFTkFOVDogJ1gtVGVuYW50JyxcclxuICAgIFhfUkVGUkVTSF9UT0tFTjogJ1gtUmVmcmVzaFRva2VuJyxcclxuICAgIENPTlRFTlRfVFlQRTogJ0NvbnRlbnQtVHlwZScsXHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqICBXYWl0cyBmb3IgYSBzcGVjaWZpZWQgYW1vdW50IG9mIHRpbWUuXHJcbiAqIEBwYXJhbSBtaWxsaXNlY29uZHMgIC0gVGhlIG1pbGxpc2Vjb25kcyB0byB3YWl0LlxyXG4gKiBAcGFyYW0gd2hlbiAgLSBUaGUgY29uZGl0aW9uIHRvIHdhaXQgZm9yLiBEZWZhdWx0IGlzIHRydWUuXHJcbiAqIEByZXR1cm5zICAtIFByb21pc2U8dm9pZD5cclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3YWl0Rm9yKG1pbGxpc2Vjb25kczogbnVtYmVyLCB3aGVuOiBib29sZWFuID0gdHJ1ZSkge1xyXG4gIGlmICghd2hlbikgcmV0dXJuO1xyXG4gIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtaWxsaXNlY29uZHMpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqICBXYWl0cyB1bnRpbCB0aGUgY29uZGl0aW9uIGlzIG1ldC5cclxuICogQHBhcmFtIHdoZW4gIC0gVGhlIGNvbmRpdGlvbiB0byB3YWl0IGZvci5cclxuICogQHBhcmFtIGludGVydmFsTnVtYmVyICAtIFRoZSBpbnRlcnZhbCBudW1iZXIgaW4gbWlsbGlzZWNvbmRzIHRvIGNoZWNrIHRoZSBjb25kaXRpb24uIERlZmF1bHQgaXMgNTAuXHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd2FpdFVudGlsKHdoZW46ICgpID0+IGFueSwgaW50ZXJ2YWxOdW1iZXI6IG51bWJlciA9IDUwKSB7XHJcbiAgYXdhaXQgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XHJcbiAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKGFzeW5jICgpID0+IHtcclxuICAgICAgY29uc3QgY29uZCA9IHdoZW4oKTtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gY29uZCBpbnN0YW5jZW9mIFByb21pc2UgPyBhd2FpdCBjb25kIDogY29uZDtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpO1xyXG4gICAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0sIGludGVydmFsTnVtYmVyKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RNYWluRG9tYWluKHN1YmRvbWFpbj86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgc3ViZG9tYWluID8/PSB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7XHJcbiAgY29uc3QgcGFydHMgPSBzdWJkb21haW4uc3BsaXQoJy4nKTtcclxuICByZXR1cm4gcGFydHMubGVuZ3RoID4gMiA/IHBhcnRzLnNsaWNlKC0yKS5qb2luKCcuJykgOiBzdWJkb21haW47XHJcbn0iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbG9jYWxpemUtdG9rZW4vbG9jYWxpemUudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBbUJoRSxNQUFNLE9BQU8sYUFBYTtJQUV4QixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQTRCO1FBQ3RDLGFBQWEsQ0FBQyxNQUFNLG1DQUFRLGFBQWEsQ0FBQyxNQUFNLEdBQUssTUFBTSxDQUFFLENBQUM7SUFDaEUsQ0FBQzs7QUFFTSxvQkFBTSxHQUF5QjtJQUNwQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUU7SUFDL0IsYUFBYSxFQUFFLFlBQVk7SUFDM0IsZUFBZSxFQUFFLGFBQWE7SUFDOUIsZ0JBQWdCLEVBQUUsYUFBYTtJQUMvQixVQUFVLEVBQUUsS0FBSztJQUNqQixZQUFZLEVBQUUsS0FBSztJQUNuQixjQUFjLEVBQUUsRUFBRTtDQUNuQixDQUFBO0FBRWUscUJBQU8sR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7QUFFckMseUJBQVcsR0FBRztJQUM1QixhQUFhLEVBQUUsZUFBZTtJQUM5QixRQUFRLEVBQUUsVUFBVTtJQUNwQixlQUFlLEVBQUUsZ0JBQWdCO0lBQ2pDLFlBQVksRUFBRSxjQUFjO0NBQzdCLENBQUE7QUFJSDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBZ0IsT0FBTyxDQUFDLFlBQW9CLEVBQUUsT0FBZ0IsSUFBSTs7UUFDdEUsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBQ2xCLE1BQU0sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztDQUFBO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBZ0IsU0FBUyxDQUFDLElBQWUsRUFBRSxpQkFBeUIsRUFBRTs7UUFDMUUsTUFBTSxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMxQixNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsR0FBUyxFQUFFO2dCQUN0QyxNQUFNLElBQUksR0FBRyxJQUFJLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxZQUFZLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDM0QsSUFBSSxNQUFNLEVBQUU7b0JBQ1YsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUN4QixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2Y7WUFDSCxDQUFDLENBQUEsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FBQTtBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxTQUFrQjtJQUNsRCxTQUFTLGFBQVQsU0FBUyxjQUFULFNBQVMsSUFBVCxTQUFTLEdBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUM7SUFDdkMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDbEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2FsaXplVG9rZW5TdG9yYWdlIH0gZnJvbSBcIi4vbG9jYWxpemUudG9rZW4uc3RvcmFnZVwiO1xyXG5leHBvcnQgaW50ZXJmYWNlIElMb2NhbGl6ZVRva2VuQ29uZmlnIHtcclxuICAvKipcclxuICAgKiBUaGUgbWFpbiBkb21haW4gb2YgdGhlIGFwcGxpY2F0aW9uIHRvIHNldCB0aGUgY29va2llcyB0byBiZSBhdmFpbGFibGUgZm9yIGNyb3NzIGFwcGxpY2F0aW9uIHdpdGggc3ViZG9tYWlucy5cclxuICAgKiBcclxuICAgKiBEZWZhdWx0IGlzIGxvY2F0aW9uLmhvc3RuYW1lIChjdXJyZW50IGRvbWFpbikgYW5kIGF1dG9tYXRpY2FsbHkgc2V0IGV4dHJhY3RlZCBtYWluIGRvbWFpbiBpZiBpdCBpcyBzdWJkb21haW4uXHJcbiAgICovXHJcbiAgbWFpbkRvbWFpbj86IHN0cmluZztcclxuICBhdXRoVG9rZW5OYW1lPzogc3RyaW5nO1xyXG4gIHRlbmFudFRva2VuTmFtZT86IHN0cmluZztcclxuICByZWZyZXNoVG9rZW5OYW1lPzogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIEZsYWcgdG8gZGV0ZXJtaW5lIGlmIHRoZSB0ZW5hbnQgdG9rZW4gaXMgcmVxdWlyZWQuXHJcbiAgICovXHJcbiAgbmVlZFRlbmFudDogYm9vbGVhbjtcclxuICBpc1Byb2R1Y3Rpb246IGJvb2xlYW47XHJcbiAgcmV2b2tlVG9rZW5Vcmw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW4ge1xyXG5cclxuICBzdGF0aWMgaW5pdChjb25maWc6IElMb2NhbGl6ZVRva2VuQ29uZmlnKSB7XHJcbiAgICBMb2NhbGl6ZVRva2VuLmNvbmZpZyA9IHsgLi4uTG9jYWxpemVUb2tlbi5jb25maWcsIC4uLmNvbmZpZyB9O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGNvbmZpZzogSUxvY2FsaXplVG9rZW5Db25maWcgPSB7XHJcbiAgICBtYWluRG9tYWluOiBleHRyYWN0TWFpbkRvbWFpbigpLFxyXG4gICAgYXV0aFRva2VuTmFtZTogJ2F1dGgtdG9rZW4nLFxyXG4gICAgdGVuYW50VG9rZW5OYW1lOiAnX2x6ZV90bnRfMDEnLFxyXG4gICAgcmVmcmVzaFRva2VuTmFtZTogJ19semVfcmZ0a3BfJyxcclxuICAgIG5lZWRUZW5hbnQ6IGZhbHNlLFxyXG4gICAgaXNQcm9kdWN0aW9uOiBmYWxzZSxcclxuICAgIHJldm9rZVRva2VuVXJsOiAnJ1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IHN0b3JhZ2UgPSBuZXcgTG9jYWxpemVUb2tlblN0b3JhZ2UoKTtcclxuXHJcbiAgc3RhdGljIHJlYWRvbmx5IGh0dHBIZWFkZXJzID0ge1xyXG4gICAgQVVUSE9SSVpBVElPTjogJ0F1dGhvcml6YXRpb24nLFxyXG4gICAgWF9URU5BTlQ6ICdYLVRlbmFudCcsXHJcbiAgICBYX1JFRlJFU0hfVE9LRU46ICdYLVJlZnJlc2hUb2tlbicsXHJcbiAgICBDT05URU5UX1RZUEU6ICdDb250ZW50LVR5cGUnLFxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAgV2FpdHMgZm9yIGEgc3BlY2lmaWVkIGFtb3VudCBvZiB0aW1lLlxyXG4gKiBAcGFyYW0gbWlsbGlzZWNvbmRzICAtIFRoZSBtaWxsaXNlY29uZHMgdG8gd2FpdC5cclxuICogQHBhcmFtIHdoZW4gIC0gVGhlIGNvbmRpdGlvbiB0byB3YWl0IGZvci4gRGVmYXVsdCBpcyB0cnVlLlxyXG4gKiBAcmV0dXJucyAgLSBQcm9taXNlPHZvaWQ+XHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd2FpdEZvcihtaWxsaXNlY29uZHM6IG51bWJlciwgd2hlbjogYm9vbGVhbiA9IHRydWUpIHtcclxuICBpZiAoIXdoZW4pIHJldHVybjtcclxuICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgbWlsbGlzZWNvbmRzKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAgV2FpdHMgdW50aWwgdGhlIGNvbmRpdGlvbiBpcyBtZXQuXHJcbiAqIEBwYXJhbSB3aGVuICAtIFRoZSBjb25kaXRpb24gdG8gd2FpdCBmb3IuXHJcbiAqIEBwYXJhbSBpbnRlcnZhbE51bWJlciAgLSBUaGUgaW50ZXJ2YWwgbnVtYmVyIGluIG1pbGxpc2Vjb25kcyB0byBjaGVjayB0aGUgY29uZGl0aW9uLiBEZWZhdWx0IGlzIDUwLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRVbnRpbCh3aGVuOiAoKSA9PiBhbnksIGludGVydmFsTnVtYmVyOiBudW1iZXIgPSA1MCkge1xyXG4gIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xyXG4gICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbChhc3luYyAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbmQgPSB3aGVuKCk7XHJcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbmQgaW5zdGFuY2VvZiBQcm9taXNlID8gYXdhaXQgY29uZCA6IGNvbmQ7XHJcbiAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcclxuICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICB9XHJcbiAgICB9LCBpbnRlcnZhbE51bWJlcik7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBleHRyYWN0TWFpbkRvbWFpbihzdWJkb21haW4/OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHN1YmRvbWFpbiA/Pz0gd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lO1xyXG4gIGNvbnN0IHBhcnRzID0gc3ViZG9tYWluLnNwbGl0KCcuJyk7XHJcbiAgcmV0dXJuIHBhcnRzLmxlbmd0aCA+IDIgPyBwYXJ0cy5zbGljZSgtMikuam9pbignLicpIDogc3ViZG9tYWluO1xyXG59Il19
@@ -1,16 +1,14 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { LocalizeTokenService } from './localize.token.service';
3
3
  import { LocalizeApiService } from './localize.api.service';
4
- import { LocalizeToken } from './localize.token';
5
4
  export class LocalizeTokenModule {
6
5
  }
7
6
  LocalizeTokenModule.decorators = [
8
7
  { type: NgModule, args: [{
9
8
  providers: [
10
9
  LocalizeTokenService,
11
- LocalizeApiService,
12
- LocalizeToken
10
+ LocalizeApiService
13
11
  ],
14
12
  },] }
15
13
  ];
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xvY2FsaXplLXRva2VuL2xvY2FsaXplLnRva2VuLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVNqRCxNQUFNLE9BQU8sbUJBQW1COzs7WUFQL0IsUUFBUSxTQUFDO2dCQUNOLFNBQVMsRUFBRTtvQkFDUCxvQkFBb0I7b0JBQ3BCLGtCQUFrQjtvQkFDbEIsYUFBYTtpQkFDaEI7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExvY2FsaXplVG9rZW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbGl6ZS50b2tlbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9jYWxpemVBcGlTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbGl6ZS5hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IExvY2FsaXplVG9rZW4gfSBmcm9tICcuL2xvY2FsaXplLnRva2VuJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBMb2NhbGl6ZVRva2VuU2VydmljZSxcclxuICAgICAgICBMb2NhbGl6ZUFwaVNlcnZpY2UsXHJcbiAgICAgICAgTG9jYWxpemVUb2tlblxyXG4gICAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW5Nb2R1bGUgeyB9Il19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xvY2FsaXplLXRva2VuL2xvY2FsaXplLnRva2VuLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBUTVELE1BQU0sT0FBTyxtQkFBbUI7OztZQU4vQixRQUFRLFNBQUM7Z0JBQ04sU0FBUyxFQUFFO29CQUNQLG9CQUFvQjtvQkFDcEIsa0JBQWtCO2lCQUNyQjthQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTG9jYWxpemVUb2tlblNlcnZpY2UgfSBmcm9tICcuL2xvY2FsaXplLnRva2VuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZUFwaVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsaXplLmFwaS5zZXJ2aWNlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBMb2NhbGl6ZVRva2VuU2VydmljZSxcclxuICAgICAgICBMb2NhbGl6ZUFwaVNlcnZpY2VcclxuICAgIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2NhbGl6ZVRva2VuTW9kdWxlIHsgfSJdfQ==
@@ -3,19 +3,15 @@ import { LocalizeToken } from './localize.token';
3
3
  import { BehaviorSubject } from 'rxjs';
4
4
  import * as jwt_decode from 'jwt-decode';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "./localize.token";
7
6
  export class LocalizeTokenService {
8
- constructor(tokenConfig) {
9
- this.tokenConfig = tokenConfig;
7
+ constructor() {
10
8
  this.isRevokingTokenSubject = new BehaviorSubject(false);
11
9
  this.decodeToken = (token) => jwt_decode.jwtDecode(token);
12
- // if (!this.tokenConfig.getConfig.authTokenName || !this.tokenConfig.getConfig.refreshTokenName || !this.tokenConfig.getConfig.tenantTokenName) {
13
- // throw new Error('authTokenName, refreshTokenName, and tenantTokenName must be defined in LocalizeToken.config')
14
- // }
15
- // this.config = this.tokenConfig.getConfig;
10
+ if (!LocalizeToken.config.authTokenName || !LocalizeToken.config.refreshTokenName || !LocalizeToken.config.tenantTokenName) {
11
+ throw new Error('authTokenName, refreshTokenName, and tenantTokenName must be defined in LocalizeToken.config');
12
+ }
13
+ this.config = LocalizeToken.config;
16
14
  }
17
- // private readonly config: ILocalizeTokenConfig
18
- get config() { return this.tokenConfig.getConfig; }
19
15
  get authToken() { return this.storageGet(); }
20
16
  set authToken(value) {
21
17
  value
@@ -36,7 +32,10 @@ export class LocalizeTokenService {
36
32
  this.authToken = Object.assign(Object.assign({}, this.authToken), { revoke: value });
37
33
  }
38
34
  }
39
- tenantToken() { return LocalizeToken.storage.get(this.config.tenantTokenName); }
35
+ get getTenantToken() { return LocalizeToken.storage.get(this.config.tenantTokenName); }
36
+ tenantToken(name) {
37
+ return LocalizeToken.storage.get(name);
38
+ }
40
39
  storageGet() {
41
40
  try {
42
41
  const encoded = LocalizeToken.storage.get(this.config.authTokenName);
@@ -53,7 +52,7 @@ export class LocalizeTokenService {
53
52
  }
54
53
  tokensValid() {
55
54
  var _a, _b;
56
- return ((_a = this.refreshToken) === null || _a === void 0 ? void 0 : _a.length) && (!this.config.needTenant || ((_b = this.tenantToken()) === null || _b === void 0 ? void 0 : _b.length));
55
+ return ((_a = this.refreshToken) === null || _a === void 0 ? void 0 : _a.length) && (!this.config.needTenant || ((_b = this.getTenantToken) === null || _b === void 0 ? void 0 : _b.length));
57
56
  }
58
57
  get decodeRefreshToken() {
59
58
  const token = LocalizeToken.storage.get(this.config.refreshTokenName);
@@ -62,11 +61,9 @@ export class LocalizeTokenService {
62
61
  return this.decodeToken(token);
63
62
  }
64
63
  }
65
- LocalizeTokenService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeTokenService_Factory() { return new LocalizeTokenService(i0.ɵɵinject(i1.LocalizeToken)); }, token: LocalizeTokenService, providedIn: "root" });
64
+ LocalizeTokenService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeTokenService_Factory() { return new LocalizeTokenService(); }, token: LocalizeTokenService, providedIn: "root" });
66
65
  LocalizeTokenService.decorators = [
67
66
  { type: Injectable, args: [{ providedIn: 'root' },] }
68
67
  ];
69
- LocalizeTokenService.ctorParameters = () => [
70
- { type: LocalizeToken }
71
- ];
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbGl6ZS10b2tlbi9sb2NhbGl6ZS50b2tlbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF3QixhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFDOzs7QUFpQnpDLE1BQU0sT0FBTyxvQkFBb0I7SUFHN0IsWUFBNkIsV0FBMEI7UUFBMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWU7UUFNOUMsMkJBQXNCLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFnRHRFLGdCQUFXLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQWEsS0FBSyxDQUFDLENBQUM7UUFyRHJFLGtKQUFrSjtRQUNsSixzSEFBc0g7UUFDdEgsSUFBSTtRQUNKLDRDQUE0QztJQUNoRCxDQUFDO0lBUEQsZ0RBQWdEO0lBQ2hELElBQVksTUFBTSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUEsQ0FBQyxDQUFDO0lBUzFELElBQVksU0FBUyxLQUFLLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBLENBQUMsQ0FBQztJQUNwRCxJQUFZLFNBQVMsQ0FBQyxLQUE2QjtRQUMvQyxLQUFLO1lBQ0QsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxJQUFJLFlBQVksS0FBSyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWlCLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFDdEYsSUFBSSxXQUFXLGFBQUssT0FBTyxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLEtBQUssQ0FBQSxDQUFDLENBQUM7SUFFbEQsSUFBSSxXQUFXLENBQUMsS0FBeUI7UUFDckMsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUE7U0FDbkQ7SUFDTCxDQUFDO0lBRUQsSUFBSSxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFBLENBQUMscUNBQXFDLENBQUMsQ0FBQztJQUN4RyxJQUFJLGVBQWUsQ0FBQyxLQUFjO1FBQzlCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLG1DQUFRLElBQUksQ0FBQyxTQUFTLEtBQUUsTUFBTSxFQUFFLEtBQUssR0FBRSxDQUFDO1NBQ3pEO0lBQ0wsQ0FBQztJQUdELFdBQVcsS0FBSyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZ0IsQ0FBQyxDQUFBLENBQUMsQ0FBQztJQUV4RSxVQUFVO1FBQ2QsSUFBSTtZQUNBLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYyxDQUFDLENBQUM7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNwQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFlLENBQUM7U0FDNUM7UUFBQyxXQUFNO1lBQ0osT0FBTyxTQUFTLENBQUE7U0FDbkI7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWlCO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0MsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFdBQVc7O1FBQ1AsT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSSxNQUFBLElBQUksQ0FBQyxXQUFXLEVBQUUsMENBQUUsTUFBTSxDQUFBLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBR0QsSUFBSSxrQkFBa0I7UUFDbEIsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBaUIsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7Ozs7WUEvREosVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7O1lBbEJILGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElMb2NhbGl6ZVRva2VuQ29uZmlnLCBMb2NhbGl6ZVRva2VuIH0gZnJvbSAnLi9sb2NhbGl6ZS50b2tlbic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgKiBhcyBqd3RfZGVjb2RlIGZyb20gJ2p3dC1kZWNvZGUnO1xyXG5leHBvcnQgaW50ZXJmYWNlIEp3dFBheWxvYWQgZXh0ZW5kcyBqd3RfZGVjb2RlLkp3dFBheWxvYWQge1xyXG4gICAgLy8gRGVmaW5lIHRoZSBzdHJ1Y3R1cmUgb2YgeW91ciBKV1QgcGF5bG9hZCBoZXJlXHJcbiAgICBlbWFpbDogc3RyaW5nO1xyXG4gICAgc3ViOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBpYXQ6IG51bWJlcjtcclxuICAgIGV4cDogbnVtYmVyO1xyXG4gICAgLy8gQWRkIG90aGVyIGZpZWxkcyBhcyBuZWVkZWRcclxufVxyXG5cclxuaW50ZXJmYWNlIElBdXRoVG9rZW4ge1xyXG4gICAgdG9rZW46IHN0cmluZztcclxuICAgIHJldm9rZTogYm9vbGVhbjtcclxufVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW5TZXJ2aWNlIHtcclxuICAgIC8vIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBJTG9jYWxpemVUb2tlbkNvbmZpZ1xyXG4gICAgcHJpdmF0ZSBnZXQgY29uZmlnKCkgeyByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5nZXRDb25maWcgfVxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0b2tlbkNvbmZpZzogTG9jYWxpemVUb2tlbikge1xyXG4gICAgICAgIC8vIGlmICghdGhpcy50b2tlbkNvbmZpZy5nZXRDb25maWcuYXV0aFRva2VuTmFtZSB8fCAhdGhpcy50b2tlbkNvbmZpZy5nZXRDb25maWcucmVmcmVzaFRva2VuTmFtZSB8fCAhdGhpcy50b2tlbkNvbmZpZy5nZXRDb25maWcudGVuYW50VG9rZW5OYW1lKSB7XHJcbiAgICAgICAgLy8gICAgIHRocm93IG5ldyBFcnJvcignYXV0aFRva2VuTmFtZSwgcmVmcmVzaFRva2VuTmFtZSwgYW5kIHRlbmFudFRva2VuTmFtZSBtdXN0IGJlIGRlZmluZWQgaW4gTG9jYWxpemVUb2tlbi5jb25maWcnKVxyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyB0aGlzLmNvbmZpZyA9IHRoaXMudG9rZW5Db25maWcuZ2V0Q29uZmlnO1xyXG4gICAgfVxyXG4gICAgcmVhZG9ubHkgaXNSZXZva2luZ1Rva2VuU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICAgIHByaXZhdGUgZ2V0IGF1dGhUb2tlbigpIHsgcmV0dXJuIHRoaXMuc3RvcmFnZUdldCgpIH1cclxuICAgIHByaXZhdGUgc2V0IGF1dGhUb2tlbih2YWx1ZTogSUF1dGhUb2tlbiB8IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHZhbHVlXHJcbiAgICAgICAgICAgID8gdGhpcy5zdG9yYWdlU2V0KHZhbHVlKVxyXG4gICAgICAgICAgICA6IExvY2FsaXplVG9rZW4uc3RvcmFnZS5kZWxldGUodGhpcy5jb25maWcuYXV0aFRva2VuTmFtZSEpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCByZWZyZXNoVG9rZW4oKSB7IHJldHVybiBMb2NhbGl6ZVRva2VuLnN0b3JhZ2UuZ2V0KHRoaXMuY29uZmlnLnJlZnJlc2hUb2tlbk5hbWUhKSB9XHJcbiAgICBnZXQgYWNjZXNzVG9rZW4oKSB7IHJldHVybiB0aGlzLmF1dGhUb2tlbj8udG9rZW4gfVxyXG5cclxuICAgIHNldCBhY2Nlc3NUb2tlbih2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0aFRva2VuID0geyB0b2tlbjogdmFsdWUsIHJldm9rZTogZmFsc2UgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXQgaXNSZXZva2luZ1Rva2VuKCkgeyByZXR1cm4gdGhpcy5pc1Jldm9raW5nVG9rZW5TdWJqZWN0LnZhbHVlIC8qIHRoaXMuYXV0aFRva2VuPy5yZXZva2UgPz8gZmFsc2UgKi8gfVxyXG4gICAgc2V0IGlzUmV2b2tpbmdUb2tlbih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuaXNSZXZva2luZ1Rva2VuU3ViamVjdC5uZXh0KHZhbHVlKTtcclxuICAgICAgICBpZiAodGhpcy5hdXRoVG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRoVG9rZW4gPSB7IC4uLnRoaXMuYXV0aFRva2VuLCByZXZva2U6IHZhbHVlIH07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICB0ZW5hbnRUb2tlbigpIHsgcmV0dXJuIExvY2FsaXplVG9rZW4uc3RvcmFnZS5nZXQodGhpcy5jb25maWcudGVuYW50VG9rZW5OYW1lISkgfVxyXG5cclxuICAgIHByaXZhdGUgc3RvcmFnZUdldCgpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBlbmNvZGVkID0gTG9jYWxpemVUb2tlbi5zdG9yYWdlLmdldCh0aGlzLmNvbmZpZy5hdXRoVG9rZW5OYW1lISk7XHJcbiAgICAgICAgICAgIGNvbnN0IGRlY29kZWQgPSBhdG9iKGVuY29kZWQgfHwgJycpO1xyXG4gICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShkZWNvZGVkKSBhcyBJQXV0aFRva2VuO1xyXG4gICAgICAgIH0gY2F0Y2gge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc3RvcmFnZVNldCh2YWx1ZTogSUF1dGhUb2tlbikge1xyXG4gICAgICAgIGNvbnN0IGJhc2U2NCA9IGJ0b2EoSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcclxuICAgICAgICBMb2NhbGl6ZVRva2VuLnN0b3JhZ2Uuc2V0KHRoaXMuY29uZmlnLmF1dGhUb2tlbk5hbWUhLCBiYXNlNjQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRva2Vuc1ZhbGlkKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUb2tlbj8ubGVuZ3RoICYmICghdGhpcy5jb25maWcubmVlZFRlbmFudCB8fCB0aGlzLnRlbmFudFRva2VuKCk/Lmxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgZGVjb2RlVG9rZW4gPSAodG9rZW46IHN0cmluZykgPT4gand0X2RlY29kZS5qd3REZWNvZGU8Snd0UGF5bG9hZD4odG9rZW4pO1xyXG4gICAgZ2V0IGRlY29kZVJlZnJlc2hUb2tlbigpIHtcclxuICAgICAgICBjb25zdCB0b2tlbiA9IExvY2FsaXplVG9rZW4uc3RvcmFnZS5nZXQodGhpcy5jb25maWcucmVmcmVzaFRva2VuTmFtZSEpO1xyXG4gICAgICAgIGlmICghdG9rZW4pIHJldHVybiBudWxsO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmRlY29kZVRva2VuKHRva2VuKTtcclxuICAgIH1cclxuXHJcbn1cclxuIl19
68
+ LocalizeTokenService.ctorParameters = () => [];
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUudG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sb2NhbGl6ZS10b2tlbi9sb2NhbGl6ZS50b2tlbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF3QixhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFDOztBQWlCekMsTUFBTSxPQUFPLG9CQUFvQjtJQUk3QjtRQUhTLDJCQUFzQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBMER0RSxnQkFBVyxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFhLEtBQUssQ0FBQyxDQUFDO1FBdERyRSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxhQUFhLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLGdCQUFnQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUU7WUFDeEgsTUFBTSxJQUFJLEtBQUssQ0FBQyw4RkFBOEYsQ0FBQyxDQUFBO1NBQ2xIO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFZLFNBQVMsS0FBSyxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFDcEQsSUFBWSxTQUFTLENBQUMsS0FBNkI7UUFDL0MsS0FBSztZQUNELENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztZQUN4QixDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFjLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsSUFBSSxZQUFZLEtBQUssT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFpQixDQUFDLENBQUEsQ0FBQyxDQUFDO0lBQ3RGLElBQUksV0FBVyxhQUFLLE9BQU8sTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBRWxELElBQUksV0FBVyxDQUFDLEtBQXlCO1FBQ3JDLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFBO1NBQ25EO0lBQ0wsQ0FBQztJQUVELElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQSxDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFDeEcsSUFBSSxlQUFlLENBQUMsS0FBYztRQUM5QixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQixJQUFJLENBQUMsU0FBUyxtQ0FBUSxJQUFJLENBQUMsU0FBUyxLQUFFLE1BQU0sRUFBRSxLQUFLLEdBQUUsQ0FBQztTQUN6RDtJQUNMLENBQUM7SUFFRCxJQUFJLGNBQWMsS0FBSyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZ0IsQ0FBQyxDQUFBLENBQUMsQ0FBQztJQUN2RixXQUFXLENBQUMsSUFBWTtRQUNwQixPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzFDLENBQUM7SUFFTyxVQUFVO1FBQ2QsSUFBSTtZQUNBLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYyxDQUFDLENBQUM7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNwQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFlLENBQUM7U0FDNUM7UUFBQyxXQUFNO1lBQ0osT0FBTyxTQUFTLENBQUE7U0FDbkI7SUFDTCxDQUFDO0lBRU8sVUFBVSxDQUFDLEtBQWlCO1FBQ2hDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0MsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFdBQVc7O1FBQ1AsT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLE1BQU0sQ0FBQSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUdELElBQUksa0JBQWtCO1FBQ2xCLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWlCLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDOzs7O1lBakVKLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElMb2NhbGl6ZVRva2VuQ29uZmlnLCBMb2NhbGl6ZVRva2VuIH0gZnJvbSAnLi9sb2NhbGl6ZS50b2tlbic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgKiBhcyBqd3RfZGVjb2RlIGZyb20gJ2p3dC1kZWNvZGUnO1xyXG5leHBvcnQgaW50ZXJmYWNlIEp3dFBheWxvYWQgZXh0ZW5kcyBqd3RfZGVjb2RlLkp3dFBheWxvYWQge1xyXG4gICAgLy8gRGVmaW5lIHRoZSBzdHJ1Y3R1cmUgb2YgeW91ciBKV1QgcGF5bG9hZCBoZXJlXHJcbiAgICBlbWFpbDogc3RyaW5nO1xyXG4gICAgc3ViOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBpYXQ6IG51bWJlcjtcclxuICAgIGV4cDogbnVtYmVyO1xyXG4gICAgLy8gQWRkIG90aGVyIGZpZWxkcyBhcyBuZWVkZWRcclxufVxyXG5cclxuaW50ZXJmYWNlIElBdXRoVG9rZW4ge1xyXG4gICAgdG9rZW46IHN0cmluZztcclxuICAgIHJldm9rZTogYm9vbGVhbjtcclxufVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXplVG9rZW5TZXJ2aWNlIHtcclxuICAgIHJlYWRvbmx5IGlzUmV2b2tpbmdUb2tlblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBJTG9jYWxpemVUb2tlbkNvbmZpZ1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgICAgIGlmICghTG9jYWxpemVUb2tlbi5jb25maWcuYXV0aFRva2VuTmFtZSB8fCAhTG9jYWxpemVUb2tlbi5jb25maWcucmVmcmVzaFRva2VuTmFtZSB8fCAhTG9jYWxpemVUb2tlbi5jb25maWcudGVuYW50VG9rZW5OYW1lKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYXV0aFRva2VuTmFtZSwgcmVmcmVzaFRva2VuTmFtZSwgYW5kIHRlbmFudFRva2VuTmFtZSBtdXN0IGJlIGRlZmluZWQgaW4gTG9jYWxpemVUb2tlbi5jb25maWcnKVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNvbmZpZyA9IExvY2FsaXplVG9rZW4uY29uZmlnO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0IGF1dGhUb2tlbigpIHsgcmV0dXJuIHRoaXMuc3RvcmFnZUdldCgpIH1cclxuICAgIHByaXZhdGUgc2V0IGF1dGhUb2tlbih2YWx1ZTogSUF1dGhUb2tlbiB8IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHZhbHVlXHJcbiAgICAgICAgICAgID8gdGhpcy5zdG9yYWdlU2V0KHZhbHVlKVxyXG4gICAgICAgICAgICA6IExvY2FsaXplVG9rZW4uc3RvcmFnZS5kZWxldGUodGhpcy5jb25maWcuYXV0aFRva2VuTmFtZSEpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCByZWZyZXNoVG9rZW4oKSB7IHJldHVybiBMb2NhbGl6ZVRva2VuLnN0b3JhZ2UuZ2V0KHRoaXMuY29uZmlnLnJlZnJlc2hUb2tlbk5hbWUhKSB9XHJcbiAgICBnZXQgYWNjZXNzVG9rZW4oKSB7IHJldHVybiB0aGlzLmF1dGhUb2tlbj8udG9rZW4gfVxyXG5cclxuICAgIHNldCBhY2Nlc3NUb2tlbih2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0aFRva2VuID0geyB0b2tlbjogdmFsdWUsIHJldm9rZTogZmFsc2UgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXQgaXNSZXZva2luZ1Rva2VuKCkgeyByZXR1cm4gdGhpcy5pc1Jldm9raW5nVG9rZW5TdWJqZWN0LnZhbHVlIC8qIHRoaXMuYXV0aFRva2VuPy5yZXZva2UgPz8gZmFsc2UgKi8gfVxyXG4gICAgc2V0IGlzUmV2b2tpbmdUb2tlbih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuaXNSZXZva2luZ1Rva2VuU3ViamVjdC5uZXh0KHZhbHVlKTtcclxuICAgICAgICBpZiAodGhpcy5hdXRoVG9rZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5hdXRoVG9rZW4gPSB7IC4uLnRoaXMuYXV0aFRva2VuLCByZXZva2U6IHZhbHVlIH07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldCBnZXRUZW5hbnRUb2tlbigpIHsgcmV0dXJuIExvY2FsaXplVG9rZW4uc3RvcmFnZS5nZXQodGhpcy5jb25maWcudGVuYW50VG9rZW5OYW1lISkgfVxyXG4gICAgdGVuYW50VG9rZW4obmFtZTogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIExvY2FsaXplVG9rZW4uc3RvcmFnZS5nZXQobmFtZSlcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VHZXQoKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgY29uc3QgZW5jb2RlZCA9IExvY2FsaXplVG9rZW4uc3RvcmFnZS5nZXQodGhpcy5jb25maWcuYXV0aFRva2VuTmFtZSEpO1xyXG4gICAgICAgICAgICBjb25zdCBkZWNvZGVkID0gYXRvYihlbmNvZGVkIHx8ICcnKTtcclxuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZGVjb2RlZCkgYXMgSUF1dGhUb2tlbjtcclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXQodmFsdWU6IElBdXRoVG9rZW4pIHtcclxuICAgICAgICBjb25zdCBiYXNlNjQgPSBidG9hKEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XHJcbiAgICAgICAgTG9jYWxpemVUb2tlbi5zdG9yYWdlLnNldCh0aGlzLmNvbmZpZy5hdXRoVG9rZW5OYW1lISwgYmFzZTY0KTtcclxuICAgIH1cclxuXHJcbiAgICB0b2tlbnNWYWxpZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZWZyZXNoVG9rZW4/Lmxlbmd0aCAmJiAoIXRoaXMuY29uZmlnLm5lZWRUZW5hbnQgfHwgdGhpcy5nZXRUZW5hbnRUb2tlbj8ubGVuZ3RoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWNvZGVUb2tlbiA9ICh0b2tlbjogc3RyaW5nKSA9PiBqd3RfZGVjb2RlLmp3dERlY29kZTxKd3RQYXlsb2FkPih0b2tlbik7XHJcbiAgICBnZXQgZGVjb2RlUmVmcmVzaFRva2VuKCkge1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gTG9jYWxpemVUb2tlbi5zdG9yYWdlLmdldCh0aGlzLmNvbmZpZy5yZWZyZXNoVG9rZW5OYW1lISk7XHJcbiAgICAgICAgaWYgKCF0b2tlbikgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVjb2RlVG9rZW4odG9rZW4pO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
@@ -121,19 +121,14 @@ class LocalizeTokenStorage {
121
121
  }
122
122
 
123
123
  class LocalizeToken {
124
- constructor() {
125
- this.configSubject = new BehaviorSubject(LocalizeToken.config);
126
- }
127
- get getConfig() { return this.configSubject.value; }
128
124
  static init(config) {
129
- const lConfig = new LocalizeToken();
130
125
  LocalizeToken.config = Object.assign(Object.assign({}, LocalizeToken.config), config);
131
- lConfig.configSubject.next(LocalizeToken.config);
132
126
  }
133
127
  }
134
128
  LocalizeToken.config = {
135
129
  mainDomain: extractMainDomain(),
136
130
  authTokenName: 'auth-token',
131
+ tenantTokenName: '_lze_tnt_01',
137
132
  refreshTokenName: '_lze_rftkp_',
138
133
  needTenant: false,
139
134
  isProduction: false,
@@ -185,17 +180,14 @@ function extractMainDomain(subdomain) {
185
180
  }
186
181
 
187
182
  class LocalizeTokenService {
188
- constructor(tokenConfig) {
189
- this.tokenConfig = tokenConfig;
183
+ constructor() {
190
184
  this.isRevokingTokenSubject = new BehaviorSubject(false);
191
185
  this.decodeToken = (token) => jwt_decode.jwtDecode(token);
192
- // if (!this.tokenConfig.getConfig.authTokenName || !this.tokenConfig.getConfig.refreshTokenName || !this.tokenConfig.getConfig.tenantTokenName) {
193
- // throw new Error('authTokenName, refreshTokenName, and tenantTokenName must be defined in LocalizeToken.config')
194
- // }
195
- // this.config = this.tokenConfig.getConfig;
186
+ if (!LocalizeToken.config.authTokenName || !LocalizeToken.config.refreshTokenName || !LocalizeToken.config.tenantTokenName) {
187
+ throw new Error('authTokenName, refreshTokenName, and tenantTokenName must be defined in LocalizeToken.config');
188
+ }
189
+ this.config = LocalizeToken.config;
196
190
  }
197
- // private readonly config: ILocalizeTokenConfig
198
- get config() { return this.tokenConfig.getConfig; }
199
191
  get authToken() { return this.storageGet(); }
200
192
  set authToken(value) {
201
193
  value
@@ -216,7 +208,10 @@ class LocalizeTokenService {
216
208
  this.authToken = Object.assign(Object.assign({}, this.authToken), { revoke: value });
217
209
  }
218
210
  }
219
- tenantToken() { return LocalizeToken.storage.get(this.config.tenantTokenName); }
211
+ get getTenantToken() { return LocalizeToken.storage.get(this.config.tenantTokenName); }
212
+ tenantToken(name) {
213
+ return LocalizeToken.storage.get(name);
214
+ }
220
215
  storageGet() {
221
216
  try {
222
217
  const encoded = LocalizeToken.storage.get(this.config.authTokenName);
@@ -233,7 +228,7 @@ class LocalizeTokenService {
233
228
  }
234
229
  tokensValid() {
235
230
  var _a, _b;
236
- return ((_a = this.refreshToken) === null || _a === void 0 ? void 0 : _a.length) && (!this.config.needTenant || ((_b = this.tenantToken()) === null || _b === void 0 ? void 0 : _b.length));
231
+ return ((_a = this.refreshToken) === null || _a === void 0 ? void 0 : _a.length) && (!this.config.needTenant || ((_b = this.getTenantToken) === null || _b === void 0 ? void 0 : _b.length));
237
232
  }
238
233
  get decodeRefreshToken() {
239
234
  const token = LocalizeToken.storage.get(this.config.refreshTokenName);
@@ -242,13 +237,11 @@ class LocalizeTokenService {
242
237
  return this.decodeToken(token);
243
238
  }
244
239
  }
245
- LocalizeTokenService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeTokenService_Factory() { return new LocalizeTokenService(i0.ɵɵinject(LocalizeToken)); }, token: LocalizeTokenService, providedIn: "root" });
240
+ LocalizeTokenService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeTokenService_Factory() { return new LocalizeTokenService(); }, token: LocalizeTokenService, providedIn: "root" });
246
241
  LocalizeTokenService.decorators = [
247
242
  { type: Injectable, args: [{ providedIn: 'root' },] }
248
243
  ];
249
- LocalizeTokenService.ctorParameters = () => [
250
- { type: LocalizeToken }
251
- ];
244
+ LocalizeTokenService.ctorParameters = () => [];
252
245
 
253
246
  /**
254
247
  * Http method options
@@ -262,9 +255,8 @@ var EMethod;
262
255
  EMethod[EMethod["PATCH"] = 5] = "PATCH";
263
256
  })(EMethod || (EMethod = {}));
264
257
  class LocalizeApiService {
265
- constructor(httpClient, tokenConfig, localizeTokenService) {
258
+ constructor(httpClient, localizeTokenService) {
266
259
  this.httpClient = httpClient;
267
- this.tokenConfig = tokenConfig;
268
260
  this.localizeTokenService = localizeTokenService;
269
261
  this.isRequestingSubject = new BehaviorSubject(false);
270
262
  this.isResolvedStartupSubject = new BehaviorSubject(false);
@@ -279,7 +271,6 @@ class LocalizeApiService {
279
271
  }
280
272
  get isRequesting() { return this.isRequestingSubject.value; }
281
273
  get isResolvedStartup() { return this.isResolvedStartupSubject.value; }
282
- get config() { return this.tokenConfig.getConfig; }
283
274
  /**
284
275
  * Initialize the API service.
285
276
  * @param apiConfigs - The API configurations.
@@ -344,7 +335,7 @@ class LocalizeApiService {
344
335
  }
345
336
  try {
346
337
  this.localizeTokenService.isRevokingToken = true;
347
- const reqUrl = this.config.revokeTokenUrl;
338
+ const reqUrl = LocalizeToken.config.revokeTokenUrl;
348
339
  const reqHeaders = this.options().append(LocalizeToken.httpHeaders.X_REFRESH_TOKEN, `${this.localizeTokenService.refreshToken}`);
349
340
  const revokeToken = yield new Promise((resolve, reject) => this.httpClient.get(reqUrl, { headers: reqHeaders }).subscribe({ next: resolve, error: reject }));
350
341
  if (revokeToken === null || revokeToken === void 0 ? void 0 : revokeToken.status) {
@@ -368,8 +359,8 @@ class LocalizeApiService {
368
359
  /** default http request options */
369
360
  options(isFormData = false, headers = {}) {
370
361
  const defaultHeaders = { [LocalizeToken.httpHeaders.AUTHORIZATION]: `Bearer ${this.localizeTokenService.accessToken}`, };
371
- if (this.config.needTenant) {
372
- defaultHeaders[LocalizeToken.httpHeaders.X_TENANT] = `${this.localizeTokenService.tenantToken()}`;
362
+ if (LocalizeToken.config.needTenant) {
363
+ defaultHeaders[LocalizeToken.httpHeaders.X_TENANT] = `${this.localizeTokenService.tenantToken(this.apiConfigs.tenantTokenName)}`;
373
364
  }
374
365
  if (!isFormData) {
375
366
  defaultHeaders[LocalizeToken.httpHeaders.CONTENT_TYPE] = 'application/json';
@@ -387,7 +378,7 @@ class LocalizeApiService {
387
378
  });
388
379
  }
389
380
  } //class
390
- LocalizeApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeApiService_Factory() { return new LocalizeApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(LocalizeToken), i0.ɵɵinject(LocalizeTokenService)); }, token: LocalizeApiService, providedIn: "root" });
381
+ LocalizeApiService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalizeApiService_Factory() { return new LocalizeApiService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(LocalizeTokenService)); }, token: LocalizeApiService, providedIn: "root" });
391
382
  LocalizeApiService.decorators = [
392
383
  { type: Injectable, args: [{
393
384
  providedIn: 'root'
@@ -395,7 +386,6 @@ LocalizeApiService.decorators = [
395
386
  ];
396
387
  LocalizeApiService.ctorParameters = () => [
397
388
  { type: HttpClient },
398
- { type: LocalizeToken },
399
389
  { type: LocalizeTokenService }
400
390
  ];
401
391
 
@@ -405,29 +395,27 @@ LocalizeTokenModule.decorators = [
405
395
  { type: NgModule, args: [{
406
396
  providers: [
407
397
  LocalizeTokenService,
408
- LocalizeApiService,
409
- LocalizeToken
398
+ LocalizeApiService
410
399
  ],
411
400
  },] }
412
401
  ];
413
402
 
414
403
  class LocalizeLogindlgComponent {
415
- constructor(messageService, cdt, dlgRef, dlgConfig, tokenService, httpClient, tokenConfig) {
404
+ constructor(messageService, cdt, dlgRef, dlgConfig, tokenService, httpClient) {
416
405
  this.messageService = messageService;
417
406
  this.cdt = cdt;
418
407
  this.dlgRef = dlgRef;
419
408
  this.dlgConfig = dlgConfig;
420
409
  this.tokenService = tokenService;
421
410
  this.httpClient = httpClient;
422
- this.tokenConfig = tokenConfig;
423
411
  this.messageKey = "$login-dlg";
424
412
  this.loading = false;
425
413
  this.success = false;
414
+ this.config = LocalizeToken.config;
426
415
  this.clickLogout = () => { var _a; return (_a = this.logout) === null || _a === void 0 ? void 0 : _a.call(this); };
427
416
  this.decodeToken = this.tokenService.decodeRefreshToken;
428
417
  this.loginConfig = this.dlgConfig.data.loginConfig;
429
418
  }
430
- get config() { return this.tokenConfig.getConfig; }
431
419
  ngOnInit() {
432
420
  this.dlgConfig.closable = false;
433
421
  this.logout = this.loginConfig.logoutFunc;
@@ -791,8 +779,7 @@ LocalizeLogindlgComponent.ctorParameters = () => [
791
779
  { type: DynamicDialogRef },
792
780
  { type: DynamicDialogConfig },
793
781
  { type: LocalizeTokenService },
794
- { type: HttpClient },
795
- { type: LocalizeToken }
782
+ { type: HttpClient }
796
783
  ];
797
784
 
798
785
  class LocalizeLogindlgService {