@gravitee/ui-particles-angular 10.1.0-fix-license-service-06219d8 → 10.1.0
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.
- package/esm2022/lib/gio-license/gio-license.directive.mjs +4 -9
- package/esm2022/lib/gio-license/gio-license.service.mjs +4 -4
- package/fesm2022/gravitee-ui-particles-angular.mjs +5 -10
- package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
- package/lib/gio-license/gio-license.directive.d.ts +0 -1
- package/lib/gio-license/gio-license.service.d.ts +1 -2
- package/package.json +1 -1
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { Directive, Input } from '@angular/core';
|
|
17
17
|
import { filter, map, takeUntil, tap } from 'rxjs/operators';
|
|
18
|
-
import {
|
|
18
|
+
import { Subject } from 'rxjs';
|
|
19
19
|
import { GioLicenseDialogComponent } from './gio-license-dialog/gio-license-dialog.component';
|
|
20
20
|
import * as i0 from "@angular/core";
|
|
21
21
|
import * as i1 from "./gio-license.service";
|
|
@@ -32,7 +32,8 @@ export class GioLicenseDirective {
|
|
|
32
32
|
this.onClick = this.click.bind(this);
|
|
33
33
|
}
|
|
34
34
|
ngOnInit() {
|
|
35
|
-
this.
|
|
35
|
+
this.licenseService
|
|
36
|
+
.isMissingFeature$(this.gioLicense)
|
|
36
37
|
.pipe(tap(() => {
|
|
37
38
|
this.elRef.nativeElement.removeEventListener('click', this.onClick, true);
|
|
38
39
|
}), filter(notAllowed => this.gioLicense != null && notAllowed), map(() => this.licenseService.getFeatureInfo(this.gioLicense)), tap(featureInfo => {
|
|
@@ -44,12 +45,6 @@ export class GioLicenseDirective {
|
|
|
44
45
|
this.trialURL = this.licenseService.getTrialURL(this.gioLicense);
|
|
45
46
|
}
|
|
46
47
|
}
|
|
47
|
-
isMissingFeature$() {
|
|
48
|
-
if (this.gioLicense?.deployed != null) {
|
|
49
|
-
return of(!this.gioLicense.deployed);
|
|
50
|
-
}
|
|
51
|
-
return this.licenseService.isMissingFeature$(this.gioLicense.feature);
|
|
52
|
-
}
|
|
53
48
|
ngOnDestroy() {
|
|
54
49
|
this.elRef.nativeElement.removeEventListener('click', this.onClick, true);
|
|
55
50
|
this.unsubscribe$.next(false);
|
|
@@ -82,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
82
77
|
}], ctorParameters: function () { return [{ type: i1.GioLicenseService }, { type: i2.MatDialog }, { type: i0.ElementRef }]; }, propDecorators: { gioLicense: [{
|
|
83
78
|
type: Input
|
|
84
79
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWxpY2Vuc2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tbGljZW5zZS9naW8tbGljZW5zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0IsT0FBTyxFQUFFLHlCQUF5QixFQUF3QixNQUFNLG1EQUFtRCxDQUFDOzs7O0FBS3BILE1BQU0sT0FBTyxtQkFBbUI7SUFVOUIsWUFBNkIsY0FBaUMsRUFBbUIsU0FBb0IsRUFBVSxLQUFpQjtRQUFuRyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFBbUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUFVLFVBQUssR0FBTCxLQUFLLENBQVk7UUFSekgsZUFBVSxHQUFtQixFQUFFLENBQUM7UUFFL0IsZ0JBQVcsR0FBZ0IsRUFBRSxDQUFDO1FBQzlCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFZCxpQkFBWSxHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3hELFlBQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUyRixDQUFDO0lBRTdILFFBQVE7UUFDYixJQUFJLENBQUMsY0FBYzthQUNoQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ2xDLElBQUksQ0FDSCxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLEVBQ0YsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLElBQUksVUFBVSxDQUFDLEVBQzNELEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFDOUQsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1lBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pFLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQzdCO2FBQ0EsU0FBUyxFQUFFLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFO1lBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ2xFO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sS0FBSyxDQUFDLE1BQW9CO1FBQ2hDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFekIsSUFBSSxDQUFDLFNBQVM7YUFDWCxJQUFJLENBQTJELHlCQUF5QixFQUFFO1lBQ3pGLElBQUksRUFBRTtnQkFDSixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTthQUN4QjtZQUNELElBQUksRUFBRSxhQUFhO1lBQ25CLEVBQUUsRUFBRSxrQkFBa0I7U0FDdkIsQ0FBQzthQUNELFdBQVcsRUFBRTthQUNiLFNBQVMsRUFBRSxDQUFDO1FBQ2YsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOytHQXhEVSxtQkFBbUI7bUdBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztpQkFDekI7eUpBR1EsVUFBVTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRmVhdHVyZUluZm8sIEdpb0xpY2Vuc2VTZXJ2aWNlLCBMaWNlbnNlT3B0aW9ucyB9IGZyb20gJy4vZ2lvLWxpY2Vuc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBHaW9MaWNlbnNlRGlhbG9nQ29tcG9uZW50LCBHaW9MaWNlbnNlRGlhbG9nRGF0YSB9IGZyb20gJy4vZ2lvLWxpY2Vuc2UtZGlhbG9nL2dpby1saWNlbnNlLWRpYWxvZy5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZ2lvTGljZW5zZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9MaWNlbnNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2lvTGljZW5zZTogTGljZW5zZU9wdGlvbnMgPSB7fTtcblxuICBwcml2YXRlIGZlYXR1cmVJbmZvOiBGZWF0dXJlSW5mbyA9IHt9O1xuICBwcml2YXRlIHRyaWFsVVJMID0gJyc7XG5cbiAgcHJpdmF0ZSB1bnN1YnNjcmliZSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwcml2YXRlIG9uQ2xpY2sgPSB0aGlzLmNsaWNrLmJpbmQodGhpcyk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBsaWNlbnNlU2VydmljZTogR2lvTGljZW5zZVNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgbWF0RGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYpIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubGljZW5zZVNlcnZpY2VcbiAgICAgIC5pc01pc3NpbmdGZWF0dXJlJCh0aGlzLmdpb0xpY2Vuc2UpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm9uQ2xpY2ssIHRydWUpO1xuICAgICAgICB9KSxcbiAgICAgICAgZmlsdGVyKG5vdEFsbG93ZWQgPT4gdGhpcy5naW9MaWNlbnNlICE9IG51bGwgJiYgbm90QWxsb3dlZCksXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLmxpY2Vuc2VTZXJ2aWNlLmdldEZlYXR1cmVJbmZvKHRoaXMuZ2lvTGljZW5zZSkpLFxuICAgICAgICB0YXAoZmVhdHVyZUluZm8gPT4ge1xuICAgICAgICAgIHRoaXMuZmVhdHVyZUluZm8gPSBmZWF0dXJlSW5mbztcbiAgICAgICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm9uQ2xpY2ssIHRydWUpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcblxuICAgIGlmICh0aGlzLmdpb0xpY2Vuc2U/LmZlYXR1cmUpIHtcbiAgICAgIHRoaXMudHJpYWxVUkwgPSB0aGlzLmxpY2Vuc2VTZXJ2aWNlLmdldFRyaWFsVVJMKHRoaXMuZ2lvTGljZW5zZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMub25DbGljaywgdHJ1ZSk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dChmYWxzZSk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xpY2soJGV2ZW50OiBQb2ludGVyRXZlbnQpIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICB0aGlzLm1hdERpYWxvZ1xuICAgICAgLm9wZW48R2lvTGljZW5zZURpYWxvZ0NvbXBvbmVudCwgR2lvTGljZW5zZURpYWxvZ0RhdGEsIGJvb2xlYW4+KEdpb0xpY2Vuc2VEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGZlYXR1cmVJbmZvOiB0aGlzLmZlYXR1cmVJbmZvLFxuICAgICAgICAgIHRyaWFsVVJMOiB0aGlzLnRyaWFsVVJMLFxuICAgICAgICB9LFxuICAgICAgICByb2xlOiAnYWxlcnRkaWFsb2cnLFxuICAgICAgICBpZDogJ2dpb0xpY2Vuc2VEaWFsb2cnLFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iXX0=
|
|
@@ -16,15 +16,15 @@ export class GioLicenseService {
|
|
|
16
16
|
getLicense$() {
|
|
17
17
|
return this.loadLicense$;
|
|
18
18
|
}
|
|
19
|
-
isMissingFeature$(
|
|
20
|
-
if (feature == null) {
|
|
19
|
+
isMissingFeature$(licenseOptions) {
|
|
20
|
+
if (licenseOptions?.feature == null || !licenseOptions?.feature) {
|
|
21
21
|
return of(false);
|
|
22
22
|
}
|
|
23
23
|
return this.isExpired$().pipe(switchMap(isExpired => {
|
|
24
24
|
if (isExpired) {
|
|
25
25
|
return of(isExpired);
|
|
26
26
|
}
|
|
27
|
-
return this.getLicense$().pipe(map(license => license == null || !license.features.some(feat => feat === feature)));
|
|
27
|
+
return this.getLicense$().pipe(map(license => license == null || !license.features.some(feat => feat === licenseOptions.feature)));
|
|
28
28
|
}));
|
|
29
29
|
}
|
|
30
30
|
hasAllFeatures$(licenseOptions) {
|
|
@@ -97,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
97
97
|
type: Inject,
|
|
98
98
|
args: ['LicenseConfiguration']
|
|
99
99
|
}] }, { type: i2.MatDialog }]; } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWxpY2Vuc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3NyYy9saWIvZ2lvLWxpY2Vuc2UvZ2lvLWxpY2Vuc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWpDLE9BQU8sRUFBRSx5QkFBeUIsRUFBd0IsTUFBTSxtREFBbUQsQ0FBQzs7OztBQTJDcEgsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixZQUNtQixJQUFnQixFQUVoQixvQkFBMEMsRUFDMUMsU0FBb0I7UUFIcEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUVoQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFFckMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBVSxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxPQUEyQjtRQUNsRCxJQUFJLE9BQU8sSUFBSSxJQUFJLEVBQUU7WUFDbkIsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEI7UUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJ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QVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0RyxDQUFDOytHQXBHVSxpQkFBaUIsNENBS2xCLHNCQUFzQjttSEFMckIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7IEdpb0xpY2Vuc2VEaWFsb2dDb21wb25lbnQsIEdpb0xpY2Vuc2VEaWFsb2dEYXRhIH0gZnJvbSAnLi9naW8tbGljZW5zZS1kaWFsb2cvZ2lvLWxpY2Vuc2UtZGlhbG9nLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIExpY2Vuc2UgPSB7XG4gIHRpZXI6IHN0cmluZztcbiAgcGFja3M6IEFycmF5PHN0cmluZz47XG4gIGZlYXR1cmVzOiBBcnJheTxzdHJpbmc+O1xuICBleHBpcmVzQXQ/OiBEYXRlO1xuICBzY29wZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGljZW5zZUNvbmZpZ3VyYXRpb24ge1xuICByZXNvdXJjZVVSTDogc3RyaW5nO1xuICBmZWF0dXJlSW5mb0RhdGE6IFJlY29yZDxzdHJpbmcsIEZlYXR1cmVJbmZvPjtcbiAgdHJpYWxSZXNvdXJjZVVSTDogc3RyaW5nO1xuICB1dG1Tb3VyY2U/OiBzdHJpbmc7XG4gIHV0bUNhbXBhaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVUTSB7XG4gIHNvdXJjZTogc3RyaW5nO1xuICBtZWRpdW06IHN0cmluZztcbiAgY2FtcGFpZ246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWNlbnNlT3B0aW9ucyB7XG4gIC8vIFdlIHVzZWQgZmVhdHVyZSBuYW1lIGFzIHV0bV9tZWRpdW1cbiAgZmVhdHVyZT86IHN0cmluZztcbiAgZGVwbG95ZWQ/OiBib29sZWFuO1xuICAvLyBPcHRpb25hbCwgdXNlZnVsIGlmIG5lZWQgYSBjb250ZXh0IGluIHV0bSBjYW1wYWlnbiAodXRtX2NvbnRlbnQpXG4gIGNvbnRleHQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZUluZm8ge1xuICBpbWFnZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICB0cmlhbEJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuICBoaWRlRGF5cz86IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9MaWNlbnNlU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbG9hZExpY2Vuc2UkOiBPYnNlcnZhYmxlPExpY2Vuc2U+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcbiAgICBASW5qZWN0KCdMaWNlbnNlQ29uZmlndXJhdGlvbicpXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaWNlbnNlQ29uZmlndXJhdGlvbjogTGljZW5zZUNvbmZpZ3VyYXRpb24sXG4gICAgcHJpdmF0ZSByZWFkb25seSBtYXREaWFsb2c6IE1hdERpYWxvZyxcbiAgKSB7XG4gICAgdGhpcy5sb2FkTGljZW5zZSQgPSB0aGlzLmh0dHAuZ2V0PExpY2Vuc2U+KGxpY2Vuc2VDb25maWd1cmF0aW9uLnJlc291cmNlVVJMKS5waXBlKHNoYXJlUmVwbGF5KDEpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMaWNlbnNlJCgpOiBPYnNlcnZhYmxlPExpY2Vuc2U+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkTGljZW5zZSQ7XG4gIH1cblxuICBwdWJsaWMgaXNNaXNzaW5nRmVhdHVyZSQoZmVhdHVyZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgaWYgKGZlYXR1cmUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaXNFeHBpcmVkJCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoaXNFeHBpcmVkID0+IHtcbiAgICAgICAgaWYgKGlzRXhwaXJlZCkge1xuICAgICAgICAgIHJldHVybiBvZihpc0V4cGlyZWQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiBsaWNlbnNlID09IG51bGwgfHwgIWxpY2Vuc2UuZmVhdHVyZXMuc29tZShmZWF0ID0+IGZlYXQgPT09IGZlYXR1cmUpKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGhhc0FsbEZlYXR1cmVzJChsaWNlbnNlT3B0aW9uczogTGljZW5zZU9wdGlvbnNbXSB8IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICghbGljZW5zZU9wdGlvbnMgfHwgaXNFbXB0eShsaWNlbnNlT3B0aW9ucykpIHtcbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaXNFeHBpcmVkJCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoaXNFeHBpcmVkID0+IHtcbiAgICAgICAgY29uc3QgZmVhdHVyZXNEZWZpbmVkID0gbGljZW5zZU9wdGlvbnMuc29tZShvID0+ICEhby5mZWF0dXJlKTtcbiAgICAgICAgaWYgKGlzRXhwaXJlZCAmJiBmZWF0dXJlc0RlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShcbiAgICAgICAgICBtYXAobGljZW5zZSA9PiBsaWNlbnNlICE9IG51bGwgJiYgbGljZW5zZU9wdGlvbnMuZXZlcnkobyA9PiBsaWNlbnNlLmZlYXR1cmVzLnNvbWUoZmVhdCA9PiBmZWF0ID09PSBvLmZlYXR1cmUpKSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldEZlYXR1cmVJbmZvKGxpY2Vuc2VPcHRpb25zOiBMaWNlbnNlT3B0aW9ucyk6IEZlYXR1cmVJbmZvIHtcbiAgICBpZiAoIWxpY2Vuc2VPcHRpb25zLmZlYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZmVhdHVyZSBpcyB1bmRlZmluZWRgKTtcbiAgICB9XG4gICAgY29uc3QgZmVhdHVyZUluZm8gPSB0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLmZlYXR1cmVJbmZvRGF0YVtsaWNlbnNlT3B0aW9ucy5mZWF0dXJlXTtcbiAgICBpZiAoIWZlYXR1cmVJbmZvKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbmtub3duIEZlYXR1cmUgdmFsdWUgJHtsaWNlbnNlT3B0aW9ucy5mZWF0dXJlfS4gRXhwZWN0ZWQgb25lIG9mICR7T2JqZWN0LmtleXModGhpcy5saWNlbnNlQ29uZmlndXJhdGlvbi5mZWF0dXJlSW5mb0RhdGEpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gZmVhdHVyZUluZm87XG4gIH1cblxuICBwdWJsaWMgZ2V0VHJpYWxVUkwobGljZW5zZU9wdGlvbnM6IExpY2Vuc2VPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAoIWxpY2Vuc2VPcHRpb25zLmZlYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZmVhdHVyZSBpcyB1bmRlZmluZWRgKTtcbiAgICB9XG4gICAgY29uc3QgdXJsUGFyYW1zID1cbiAgICAgIHRoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtU291cmNlIHx8IHRoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtQ2FtcGFpZ25cbiAgICAgICAgPyBgP3V0bV9zb3VyY2U9JHt0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLnV0bVNvdXJjZX0mdXRtX21lZGl1bT0ke2xpY2Vuc2VPcHRpb25zLmZlYXR1cmV9JnV0bV9jYW1wYWlnbj0ke3RoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtQ2FtcGFpZ259YFxuICAgICAgICA6ICcnO1xuICAgIGNvbnN0IGNvbnRleHQgPSB1cmxQYXJhbXMubGVuZ3RoID4gMCAmJiBsaWNlbnNlT3B0aW9ucy5jb250ZXh0ID8gYCZ1dG1fY29udGVudD0ke2xpY2Vuc2VPcHRpb25zLmNvbnRleHR9YCA6ICcnO1xuICAgIHJldHVybiBgJHt0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLnRyaWFsUmVzb3VyY2VVUkx9JHt1cmxQYXJhbXN9JHtjb250ZXh0fWA7XG4gIH1cblxuICBwdWJsaWMgaXNPRU0kKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiBsaWNlbnNlICE9PSBudWxsICYmIGxpY2Vuc2UuZmVhdHVyZXMuaW5jbHVkZXMoJ29lbS1jdXN0b21pemF0aW9uJykpKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuRGlhbG9nKGxpY2Vuc2VPcHRpb25zOiBMaWNlbnNlT3B0aW9ucywgZXZlbnQ/OiBFdmVudCkge1xuICAgIGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcbiAgICBjb25zdCBmZWF0dXJlSW5mbyA9IHRoaXMuZ2V0RmVhdHVyZUluZm8obGljZW5zZU9wdGlvbnMpO1xuICAgIGNvbnN0IHRyaWFsVVJMID0gdGhpcy5nZXRUcmlhbFVSTChsaWNlbnNlT3B0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXMubWF0RGlhbG9nXG4gICAgICAub3BlbjxHaW9MaWNlbnNlRGlhbG9nQ29tcG9uZW50LCBHaW9MaWNlbnNlRGlhbG9nRGF0YSwgYm9vbGVhbj4oR2lvTGljZW5zZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgZmVhdHVyZUluZm8sXG4gICAgICAgICAgdHJpYWxVUkwsXG4gICAgICAgIH0sXG4gICAgICAgIHJvbGU6ICdhbGVydGRpYWxvZycsXG4gICAgICAgIGlkOiAnZ2lvTGljZW5zZURpYWxvZycsXG4gICAgICB9KVxuICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRFeHBpcmVzQXQkKCk6IE9ic2VydmFibGU8RGF0ZSB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiAobGljZW5zZS5leHBpcmVzQXQgPyBuZXcgRGF0ZShsaWNlbnNlLmV4cGlyZXNBdCkgOiB1bmRlZmluZWQpKSk7XG4gIH1cblxuICBwdWJsaWMgaXNFeHBpcmVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRFeHBpcmVzQXQkKCkucGlwZShtYXAoZXhwaXJlc0F0ID0+ICEhZXhwaXJlc0F0ICYmIGV4cGlyZXNBdC52YWx1ZU9mKCkgPCBEYXRlLm5vdygpKSk7XG4gIH1cbn1cbiJdfQ==
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWxpY2Vuc2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3NyYy9saWIvZ2lvLWxpY2Vuc2UvZ2lvLWxpY2Vuc2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRWpDLE9BQU8sRUFBRSx5QkFBeUIsRUFBd0IsTUFBTSxtREFBbUQsQ0FBQzs7OztBQTBDcEgsTUFBTSxPQUFPLGlCQUFpQjtJQUc1QixZQUNtQixJQUFnQixFQUVoQixvQkFBMEMsRUFDMUMsU0FBb0I7UUFIcEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUVoQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFFckMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBVSxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxjQUEwQztRQUNqRSxJQUFJLGNBQWMsRUFBRSxPQUFPLElBQUksSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLE9BQU8sRUFBRTtZQUMvRCxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQjtR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QUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0RyxDQUFDOytHQXBHVSxpQkFBaUIsNENBS2xCLHNCQUFzQjttSEFMckIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7IEdpb0xpY2Vuc2VEaWFsb2dDb21wb25lbnQsIEdpb0xpY2Vuc2VEaWFsb2dEYXRhIH0gZnJvbSAnLi9naW8tbGljZW5zZS1kaWFsb2cvZ2lvLWxpY2Vuc2UtZGlhbG9nLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIExpY2Vuc2UgPSB7XG4gIHRpZXI6IHN0cmluZztcbiAgcGFja3M6IEFycmF5PHN0cmluZz47XG4gIGZlYXR1cmVzOiBBcnJheTxzdHJpbmc+O1xuICBleHBpcmVzQXQ/OiBEYXRlO1xuICBzY29wZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGljZW5zZUNvbmZpZ3VyYXRpb24ge1xuICByZXNvdXJjZVVSTDogc3RyaW5nO1xuICBmZWF0dXJlSW5mb0RhdGE6IFJlY29yZDxzdHJpbmcsIEZlYXR1cmVJbmZvPjtcbiAgdHJpYWxSZXNvdXJjZVVSTDogc3RyaW5nO1xuICB1dG1Tb3VyY2U/OiBzdHJpbmc7XG4gIHV0bUNhbXBhaWduPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVUTSB7XG4gIHNvdXJjZTogc3RyaW5nO1xuICBtZWRpdW06IHN0cmluZztcbiAgY2FtcGFpZ246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWNlbnNlT3B0aW9ucyB7XG4gIC8vIFdlIHVzZWQgZmVhdHVyZSBuYW1lIGFzIHV0bV9tZWRpdW1cbiAgZmVhdHVyZT86IHN0cmluZztcbiAgLy8gT3B0aW9uYWwsIHVzZWZ1bCBpZiBuZWVkIGEgY29udGV4dCBpbiB1dG0gY2FtcGFpZ24gKHV0bV9jb250ZW50KVxuICBjb250ZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVJbmZvIHtcbiAgaW1hZ2U/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgdHJpYWxCdXR0b25MYWJlbD86IHN0cmluZztcbiAgaGlkZURheXM/OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgR2lvTGljZW5zZVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGxvYWRMaWNlbnNlJDogT2JzZXJ2YWJsZTxMaWNlbnNlPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXG4gICAgQEluamVjdCgnTGljZW5zZUNvbmZpZ3VyYXRpb24nKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGljZW5zZUNvbmZpZ3VyYXRpb246IExpY2Vuc2VDb25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWF0RGlhbG9nOiBNYXREaWFsb2csXG4gICkge1xuICAgIHRoaXMubG9hZExpY2Vuc2UkID0gdGhpcy5odHRwLmdldDxMaWNlbnNlPihsaWNlbnNlQ29uZmlndXJhdGlvbi5yZXNvdXJjZVVSTCkucGlwZShzaGFyZVJlcGxheSgxKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGljZW5zZSQoKTogT2JzZXJ2YWJsZTxMaWNlbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMubG9hZExpY2Vuc2UkO1xuICB9XG5cbiAgcHVibGljIGlzTWlzc2luZ0ZlYXR1cmUkKGxpY2Vuc2VPcHRpb25zOiBMaWNlbnNlT3B0aW9ucyB8IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmIChsaWNlbnNlT3B0aW9ucz8uZmVhdHVyZSA9PSBudWxsIHx8ICFsaWNlbnNlT3B0aW9ucz8uZmVhdHVyZSkge1xuICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaXNFeHBpcmVkJCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoaXNFeHBpcmVkID0+IHtcbiAgICAgICAgaWYgKGlzRXhwaXJlZCkge1xuICAgICAgICAgIHJldHVybiBvZihpc0V4cGlyZWQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiBsaWNlbnNlID09IG51bGwgfHwgIWxpY2Vuc2UuZmVhdHVyZXMuc29tZShmZWF0ID0+IGZlYXQgPT09IGxpY2Vuc2VPcHRpb25zLmZlYXR1cmUpKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGhhc0FsbEZlYXR1cmVzJChsaWNlbnNlT3B0aW9uczogTGljZW5zZU9wdGlvbnNbXSB8IHVuZGVmaW5lZCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGlmICghbGljZW5zZU9wdGlvbnMgfHwgaXNFbXB0eShsaWNlbnNlT3B0aW9ucykpIHtcbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaXNFeHBpcmVkJCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoaXNFeHBpcmVkID0+IHtcbiAgICAgICAgY29uc3QgZmVhdHVyZXNEZWZpbmVkID0gbGljZW5zZU9wdGlvbnMuc29tZShvID0+ICEhby5mZWF0dXJlKTtcbiAgICAgICAgaWYgKGlzRXhwaXJlZCAmJiBmZWF0dXJlc0RlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShcbiAgICAgICAgICBtYXAobGljZW5zZSA9PiBsaWNlbnNlICE9IG51bGwgJiYgbGljZW5zZU9wdGlvbnMuZXZlcnkobyA9PiBsaWNlbnNlLmZlYXR1cmVzLnNvbWUoZmVhdCA9PiBmZWF0ID09PSBvLmZlYXR1cmUpKSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldEZlYXR1cmVJbmZvKGxpY2Vuc2VPcHRpb25zOiBMaWNlbnNlT3B0aW9ucyk6IEZlYXR1cmVJbmZvIHtcbiAgICBpZiAoIWxpY2Vuc2VPcHRpb25zLmZlYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZmVhdHVyZSBpcyB1bmRlZmluZWRgKTtcbiAgICB9XG4gICAgY29uc3QgZmVhdHVyZUluZm8gPSB0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLmZlYXR1cmVJbmZvRGF0YVtsaWNlbnNlT3B0aW9ucy5mZWF0dXJlXTtcbiAgICBpZiAoIWZlYXR1cmVJbmZvKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbmtub3duIEZlYXR1cmUgdmFsdWUgJHtsaWNlbnNlT3B0aW9ucy5mZWF0dXJlfS4gRXhwZWN0ZWQgb25lIG9mICR7T2JqZWN0LmtleXModGhpcy5saWNlbnNlQ29uZmlndXJhdGlvbi5mZWF0dXJlSW5mb0RhdGEpfWAsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gZmVhdHVyZUluZm87XG4gIH1cblxuICBwdWJsaWMgZ2V0VHJpYWxVUkwobGljZW5zZU9wdGlvbnM6IExpY2Vuc2VPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAoIWxpY2Vuc2VPcHRpb25zLmZlYXR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZmVhdHVyZSBpcyB1bmRlZmluZWRgKTtcbiAgICB9XG4gICAgY29uc3QgdXJsUGFyYW1zID1cbiAgICAgIHRoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtU291cmNlIHx8IHRoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtQ2FtcGFpZ25cbiAgICAgICAgPyBgP3V0bV9zb3VyY2U9JHt0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLnV0bVNvdXJjZX0mdXRtX21lZGl1bT0ke2xpY2Vuc2VPcHRpb25zLmZlYXR1cmV9JnV0bV9jYW1wYWlnbj0ke3RoaXMubGljZW5zZUNvbmZpZ3VyYXRpb24udXRtQ2FtcGFpZ259YFxuICAgICAgICA6ICcnO1xuICAgIGNvbnN0IGNvbnRleHQgPSB1cmxQYXJhbXMubGVuZ3RoID4gMCAmJiBsaWNlbnNlT3B0aW9ucy5jb250ZXh0ID8gYCZ1dG1fY29udGVudD0ke2xpY2Vuc2VPcHRpb25zLmNvbnRleHR9YCA6ICcnO1xuICAgIHJldHVybiBgJHt0aGlzLmxpY2Vuc2VDb25maWd1cmF0aW9uLnRyaWFsUmVzb3VyY2VVUkx9JHt1cmxQYXJhbXN9JHtjb250ZXh0fWA7XG4gIH1cblxuICBwdWJsaWMgaXNPRU0kKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiBsaWNlbnNlICE9PSBudWxsICYmIGxpY2Vuc2UuZmVhdHVyZXMuaW5jbHVkZXMoJ29lbS1jdXN0b21pemF0aW9uJykpKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuRGlhbG9nKGxpY2Vuc2VPcHRpb25zOiBMaWNlbnNlT3B0aW9ucywgZXZlbnQ/OiBFdmVudCkge1xuICAgIGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudD8ucHJldmVudERlZmF1bHQoKTtcbiAgICBjb25zdCBmZWF0dXJlSW5mbyA9IHRoaXMuZ2V0RmVhdHVyZUluZm8obGljZW5zZU9wdGlvbnMpO1xuICAgIGNvbnN0IHRyaWFsVVJMID0gdGhpcy5nZXRUcmlhbFVSTChsaWNlbnNlT3B0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXMubWF0RGlhbG9nXG4gICAgICAub3BlbjxHaW9MaWNlbnNlRGlhbG9nQ29tcG9uZW50LCBHaW9MaWNlbnNlRGlhbG9nRGF0YSwgYm9vbGVhbj4oR2lvTGljZW5zZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgZmVhdHVyZUluZm8sXG4gICAgICAgICAgdHJpYWxVUkwsXG4gICAgICAgIH0sXG4gICAgICAgIHJvbGU6ICdhbGVydGRpYWxvZycsXG4gICAgICAgIGlkOiAnZ2lvTGljZW5zZURpYWxvZycsXG4gICAgICB9KVxuICAgICAgLmFmdGVyQ2xvc2VkKClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRFeHBpcmVzQXQkKCk6IE9ic2VydmFibGU8RGF0ZSB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLmdldExpY2Vuc2UkKCkucGlwZShtYXAobGljZW5zZSA9PiAobGljZW5zZS5leHBpcmVzQXQgPyBuZXcgRGF0ZShsaWNlbnNlLmV4cGlyZXNBdCkgOiB1bmRlZmluZWQpKSk7XG4gIH1cblxuICBwdWJsaWMgaXNFeHBpcmVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRFeHBpcmVzQXQkKCkucGlwZShtYXAoZXhwaXJlc0F0ID0+ICEhZXhwaXJlc0F0ICYmIGV4cGlyZXNBdC52YWx1ZU9mKCkgPCBEYXRlLm5vdygpKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -4814,15 +4814,15 @@ class GioLicenseService {
|
|
|
4814
4814
|
getLicense$() {
|
|
4815
4815
|
return this.loadLicense$;
|
|
4816
4816
|
}
|
|
4817
|
-
isMissingFeature$(
|
|
4818
|
-
if (feature == null) {
|
|
4817
|
+
isMissingFeature$(licenseOptions) {
|
|
4818
|
+
if (licenseOptions?.feature == null || !licenseOptions?.feature) {
|
|
4819
4819
|
return of(false);
|
|
4820
4820
|
}
|
|
4821
4821
|
return this.isExpired$().pipe(switchMap(isExpired => {
|
|
4822
4822
|
if (isExpired) {
|
|
4823
4823
|
return of(isExpired);
|
|
4824
4824
|
}
|
|
4825
|
-
return this.getLicense$().pipe(map(license => license == null || !license.features.some(feat => feat === feature)));
|
|
4825
|
+
return this.getLicense$().pipe(map(license => license == null || !license.features.some(feat => feat === licenseOptions.feature)));
|
|
4826
4826
|
}));
|
|
4827
4827
|
}
|
|
4828
4828
|
hasAllFeatures$(licenseOptions) {
|
|
@@ -4923,7 +4923,8 @@ class GioLicenseDirective {
|
|
|
4923
4923
|
this.onClick = this.click.bind(this);
|
|
4924
4924
|
}
|
|
4925
4925
|
ngOnInit() {
|
|
4926
|
-
this.
|
|
4926
|
+
this.licenseService
|
|
4927
|
+
.isMissingFeature$(this.gioLicense)
|
|
4927
4928
|
.pipe(tap(() => {
|
|
4928
4929
|
this.elRef.nativeElement.removeEventListener('click', this.onClick, true);
|
|
4929
4930
|
}), filter(notAllowed => this.gioLicense != null && notAllowed), map(() => this.licenseService.getFeatureInfo(this.gioLicense)), tap(featureInfo => {
|
|
@@ -4935,12 +4936,6 @@ class GioLicenseDirective {
|
|
|
4935
4936
|
this.trialURL = this.licenseService.getTrialURL(this.gioLicense);
|
|
4936
4937
|
}
|
|
4937
4938
|
}
|
|
4938
|
-
isMissingFeature$() {
|
|
4939
|
-
if (this.gioLicense?.deployed != null) {
|
|
4940
|
-
return of(!this.gioLicense.deployed);
|
|
4941
|
-
}
|
|
4942
|
-
return this.licenseService.isMissingFeature$(this.gioLicense.feature);
|
|
4943
|
-
}
|
|
4944
4939
|
ngOnDestroy() {
|
|
4945
4940
|
this.elRef.nativeElement.removeEventListener('click', this.onClick, true);
|
|
4946
4941
|
this.unsubscribe$.next(false);
|