ng-configcat-publicapi-ui 3.0.7 → 3.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/_directives/input-display-normalizer.directive.mjs +38 -0
- package/esm2022/lib/_services/form-helper.mjs +104 -0
- package/{esm2020 → esm2022}/lib/_services/public-api.service.mjs +6 -6
- package/esm2022/lib/_services/setting-list-form-helper.mjs +171 -0
- package/esm2022/lib/authorization/authorization.component.mjs +62 -0
- package/{esm2020 → esm2022}/lib/base/base-select.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/base/base.component.mjs +5 -5
- package/{esm2020 → esm2022}/lib/configuration.mjs +4 -4
- package/{esm2020 → esm2022}/lib/dialogs/delete-setting-dialog/delete-setting-dialog.component.mjs +6 -6
- package/esm2022/lib/dialogs/expand-dialog/expand-dialog.component.mjs +80 -0
- package/esm2022/lib/dialogs/reason-dialog/reason-dialog.component.mjs +36 -0
- package/{esm2020 → esm2022}/lib/dialogs/save-snackbar/save-snackbar.component.mjs +5 -5
- package/esm2022/lib/ng-configcat-publicapi-ui.module.mjs +179 -0
- package/esm2022/lib/selects/config-select/config-select.component.mjs +60 -0
- package/esm2022/lib/selects/environment-select/environment-select.component.mjs +47 -0
- package/esm2022/lib/selects/product-select/product-select.component.mjs +40 -0
- package/esm2022/lib/selects/setting-select/setting-select.component.mjs +47 -0
- package/esm2022/lib/setting-item/setting-item.component.mjs +116 -0
- package/esm2022/lib/setting-list/setting/rollout-percentage-items/rollout-percentage-items.component.mjs +81 -0
- package/esm2022/lib/setting-list/setting/rollout-rules/rollout-rules.component.mjs +293 -0
- package/{esm2020 → esm2022}/lib/setting-list/setting/setting.component.mjs +5 -5
- package/esm2022/lib/setting-list/setting/value/value.component.mjs +37 -0
- package/esm2022/lib/setting-list/setting-list.component.mjs +194 -0
- package/{fesm2020 → fesm2022}/ng-configcat-publicapi-ui.mjs +163 -163
- package/{fesm2020 → fesm2022}/ng-configcat-publicapi-ui.mjs.map +1 -1
- package/lib/_services/setting-list-form-helper.d.ts +1 -1
- package/lib/authorization/authorization.component.d.ts +1 -1
- package/lib/base/base-select.component.d.ts +1 -1
- package/lib/base/base.component.d.ts +1 -1
- package/lib/selects/config-select/config-select.component.d.ts +1 -1
- package/lib/selects/environment-select/environment-select.component.d.ts +1 -1
- package/lib/selects/product-select/product-select.component.d.ts +1 -1
- package/lib/selects/setting-select/setting-select.component.d.ts +1 -1
- package/lib/setting-item/setting-item.component.d.ts +1 -1
- package/lib/setting-list/setting/rollout-percentage-items/rollout-percentage-items.component.d.ts +1 -1
- package/lib/setting-list/setting/rollout-rules/rollout-rules.component.d.ts +2 -2
- package/lib/setting-list/setting/setting.component.d.ts +1 -1
- package/lib/setting-list/setting/value/value.component.d.ts +1 -1
- package/lib/setting-list/setting-list.component.d.ts +1 -1
- package/package.json +9 -15
- package/public-api.scss +15 -1
- package/esm2020/lib/_directives/input-display-normalizer.directive.mjs +0 -38
- package/esm2020/lib/_services/form-helper.mjs +0 -104
- package/esm2020/lib/_services/setting-list-form-helper.mjs +0 -171
- package/esm2020/lib/authorization/authorization.component.mjs +0 -62
- package/esm2020/lib/dialogs/expand-dialog/expand-dialog.component.mjs +0 -80
- package/esm2020/lib/dialogs/reason-dialog/reason-dialog.component.mjs +0 -36
- package/esm2020/lib/ng-configcat-publicapi-ui.module.mjs +0 -179
- package/esm2020/lib/selects/config-select/config-select.component.mjs +0 -60
- package/esm2020/lib/selects/environment-select/environment-select.component.mjs +0 -47
- package/esm2020/lib/selects/product-select/product-select.component.mjs +0 -40
- package/esm2020/lib/selects/setting-select/setting-select.component.mjs +0 -47
- package/esm2020/lib/setting-item/setting-item.component.mjs +0 -116
- package/esm2020/lib/setting-list/setting/rollout-percentage-items/rollout-percentage-items.component.mjs +0 -81
- package/esm2020/lib/setting-list/setting/rollout-rules/rollout-rules.component.mjs +0 -293
- package/esm2020/lib/setting-list/setting/value/value.component.mjs +0 -37
- package/esm2020/lib/setting-list/setting-list.component.mjs +0 -194
- package/fesm2015/ng-configcat-publicapi-ui.mjs +0 -1786
- package/fesm2015/ng-configcat-publicapi-ui.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/_directives/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_models/deleteSettingModel.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_models/settingValuesModel.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_models/updateSettingValuesModel.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_services/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_services/platform-helper.mjs +0 -0
- /package/{esm2020 → esm2022}/ng-configcat-publicapi-ui.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
|
@@ -26,20 +26,20 @@ export class BaseComponent {
|
|
|
26
26
|
createSegmentsService() {
|
|
27
27
|
return this.publicApiService.createSegmentsService(this.basicAuthUsername, this.basicAuthPassword, this.basePath);
|
|
28
28
|
}
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: BaseComponent, deps: [{ token: i1.PublicApiService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: BaseComponent, selector: "base", inputs: { basePath: "basePath", basicAuthUsername: "basicAuthUsername", basicAuthPassword: "basicAuthPassword" }, ngImport: i0, template: '<div></div>', isInline: true }); }
|
|
29
31
|
}
|
|
30
|
-
|
|
31
|
-
BaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BaseComponent, selector: "base", inputs: { basePath: "basePath", basicAuthUsername: "basicAuthUsername", basicAuthPassword: "basicAuthPassword" }, ngImport: i0, template: '<div></div>', isInline: true });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BaseComponent, decorators: [{
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: BaseComponent, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
34
|
args: [{
|
|
35
35
|
selector: 'base',
|
|
36
36
|
template: '<div></div>'
|
|
37
37
|
}]
|
|
38
|
-
}], ctorParameters:
|
|
38
|
+
}], ctorParameters: () => [{ type: i1.PublicApiService }], propDecorators: { basePath: [{
|
|
39
39
|
type: Input
|
|
40
40
|
}], basicAuthUsername: [{
|
|
41
41
|
type: Input
|
|
42
42
|
}], basicAuthPassword: [{
|
|
43
43
|
type: Input
|
|
44
44
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvYmFzZS9iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT2pELE1BQU0sT0FBTyxhQUFhO0lBTXhCLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBSjdDLGFBQVEsR0FBa0IsSUFBSSxDQUFDO1FBQy9CLHNCQUFpQixHQUFrQixJQUFJLENBQUM7UUFDeEMsc0JBQWlCLEdBQWtCLElBQUksQ0FBQztJQUdqRCxDQUFDO0lBRVMscUJBQXFCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFUyxvQkFBb0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVTLHlCQUF5QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN4SCxDQUFDO0lBRVMscUJBQXFCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFUywwQkFBMEI7UUFDbEMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVTLHFCQUFxQjtRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwSCxDQUFDOzhHQS9CVSxhQUFhO2tHQUFiLGFBQWEsOEpBRmQsYUFBYTs7MkZBRVosYUFBYTtrQkFKekIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsTUFBTTtvQkFDaEIsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCO3FGQUdVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFB1YmxpY0FwaVNlcnZpY2UgfSBmcm9tICcuLi9fc2VydmljZXMvcHVibGljLWFwaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFzZScsXG4gIHRlbXBsYXRlOiAnPGRpdj48L2Rpdj4nXG59KVxuZXhwb3J0IGNsYXNzIEJhc2VDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGJhc2VQYXRoOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgYmFzaWNBdXRoVXNlcm5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBiYXNpY0F1dGhQYXNzd29yZDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwdWJsaWNBcGlTZXJ2aWNlOiBQdWJsaWNBcGlTZXJ2aWNlKSB7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlUHJvZHVjdHNTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY0FwaVNlcnZpY2UuY3JlYXRlUHJvZHVjdHNTZXJ2aWNlKHRoaXMuYmFzaWNBdXRoVXNlcm5hbWUsIHRoaXMuYmFzaWNBdXRoUGFzc3dvcmQsIHRoaXMuYmFzZVBhdGgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbmZpZ3NTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY0FwaVNlcnZpY2UuY3JlYXRlQ29uZmlnc1NlcnZpY2UodGhpcy5iYXNpY0F1dGhVc2VybmFtZSwgdGhpcy5iYXNpY0F1dGhQYXNzd29yZCwgdGhpcy5iYXNlUGF0aCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRW52aXJvbm1lbnRzU2VydmljZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wdWJsaWNBcGlTZXJ2aWNlLmNyZWF0ZUVudmlyb25tZW50c1NlcnZpY2UodGhpcy5iYXNpY0F1dGhVc2VybmFtZSwgdGhpcy5iYXNpY0F1dGhQYXNzd29yZCwgdGhpcy5iYXNlUGF0aCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlU2V0dGluZ3NTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY0FwaVNlcnZpY2UuY3JlYXRlU2V0dGluZ3NTZXJ2aWNlKHRoaXMuYmFzaWNBdXRoVXNlcm5hbWUsIHRoaXMuYmFzaWNBdXRoUGFzc3dvcmQsIHRoaXMuYmFzZVBhdGgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZVNldHRpbmdWYWx1ZXNTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY0FwaVNlcnZpY2UuY3JlYXRlU2V0dGluZ1ZhbHVlc1NlcnZpY2UodGhpcy5iYXNpY0F1dGhVc2VybmFtZSwgdGhpcy5iYXNpY0F1dGhQYXNzd29yZCwgdGhpcy5iYXNlUGF0aCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlU2VnbWVudHNTZXJ2aWNlKCkge1xuICAgIHJldHVybiB0aGlzLnB1YmxpY0FwaVNlcnZpY2UuY3JlYXRlU2VnbWVudHNTZXJ2aWNlKHRoaXMuYmFzaWNBdXRoVXNlcm5hbWUsIHRoaXMuYmFzaWNBdXRoUGFzc3dvcmQsIHRoaXMuYmFzZVBhdGgpO1xuICB9XG59XG4iXX0=
|
|
@@ -5,10 +5,10 @@ export class Configuration {
|
|
|
5
5
|
this.basePath = 'https://api.configcat.com';
|
|
6
6
|
this.dashboardBasePath = 'https://app.configcat.com';
|
|
7
7
|
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: Configuration, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
9
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: Configuration }); }
|
|
8
10
|
}
|
|
9
|
-
|
|
10
|
-
Configuration.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Configuration });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: Configuration, decorators: [{
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: Configuration, decorators: [{
|
|
12
12
|
type: Injectable
|
|
13
13
|
}] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbmZpZ2NhdC1wdWJsaWNhcGktdWkvc3JjL2xpYi9jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzNDLE1BQU0sT0FBTyxhQUFhO0lBRDFCO1FBSUksYUFBUSxHQUFHLDJCQUEyQixDQUFDO1FBQ3ZDLHNCQUFpQixHQUFHLDJCQUEyQixDQUFDO0tBQ25EOzhHQUxZLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb24ge1xuICAgIGJhc2ljQXV0aFVzZXJuYW1lPzogc3RyaW5nO1xuICAgIGJhc2ljQXV0aFBhc3N3b3JkPzogc3RyaW5nO1xuICAgIGJhc2VQYXRoID0gJ2h0dHBzOi8vYXBpLmNvbmZpZ2NhdC5jb20nO1xuICAgIGRhc2hib2FyZEJhc2VQYXRoID0gJ2h0dHBzOi8vYXBwLmNvbmZpZ2NhdC5jb20nO1xufVxuIl19
|
package/{esm2020 → esm2022}/lib/dialogs/delete-setting-dialog/delete-setting-dialog.component.mjs
RENAMED
|
@@ -14,14 +14,14 @@ export class DeleteSettingDialogComponent {
|
|
|
14
14
|
cancel() {
|
|
15
15
|
this.dialogRef.close({ button: 'cancel' });
|
|
16
16
|
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DeleteSettingDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: DeleteSettingDialogComponent, selector: "app-delete-setting-dialog", ngImport: i0, template: "<h1 mat-dialog-title>Remove Feature Flag or Setting from {{data.system}}</h1>\n<div mat-dialog-actions class=\"container\">\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"remove()\">Remove from {{data.ticketType}}</button>\n <button type=\"button\" mat-raised-button (click)=\"cancel()\">Cancel</button>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] }); }
|
|
17
19
|
}
|
|
18
|
-
|
|
19
|
-
DeleteSettingDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DeleteSettingDialogComponent, selector: "app-delete-setting-dialog", ngImport: i0, template: "<h1 mat-dialog-title>Remove Feature Flag or Setting from {{data.system}}</h1>\n<div mat-dialog-actions class=\"container\">\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"remove()\">Remove from {{data.ticketType}}</button>\n <button type=\"button\" mat-raised-button (click)=\"cancel()\">Cancel</button>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] });
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DeleteSettingDialogComponent, decorators: [{
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DeleteSettingDialogComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
22
|
args: [{ selector: 'app-delete-setting-dialog', template: "<h1 mat-dialog-title>Remove Feature Flag or Setting from {{data.system}}</h1>\n<div mat-dialog-actions class=\"container\">\n <button type=\"button\" mat-raised-button color=\"primary\" (click)=\"remove()\">Remove from {{data.ticketType}}</button>\n <button type=\"button\" mat-raised-button (click)=\"cancel()\">Cancel</button>\n</div>" }]
|
|
23
|
-
}], ctorParameters:
|
|
23
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
24
24
|
type: Inject,
|
|
25
25
|
args: [MAT_DIALOG_DATA]
|
|
26
|
-
}] }]
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
}] }] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLXNldHRpbmctZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbmZpZ2NhdC1wdWJsaWNhcGktdWkvc3JjL2xpYi9kaWFsb2dzL2RlbGV0ZS1zZXR0aW5nLWRpYWxvZy9kZWxldGUtc2V0dGluZy1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS9zcmMvbGliL2RpYWxvZ3MvZGVsZXRlLXNldHRpbmctZGlhbG9nL2RlbGV0ZS1zZXR0aW5nLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBT3pFLE1BQU0sT0FBTyw0QkFBNEI7SUFFdkMsWUFBbUIsU0FBcUQsRUFDdEMsSUFBNEM7UUFEM0QsY0FBUyxHQUFULFNBQVMsQ0FBNEM7UUFDdEMsU0FBSSxHQUFKLElBQUksQ0FBd0M7SUFBSSxDQUFDO0lBRW5GLE1BQU07UUFDSixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDOzhHQVhVLDRCQUE0Qiw4Q0FHN0IsZUFBZTtrR0FIZCw0QkFBNEIsaUVDUnpDLHdWQUlNOzsyRkRJTyw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCOzswQkFPbEMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWRlbGV0ZS1zZXR0aW5nLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZWxldGUtc2V0dGluZy1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZWxldGUtc2V0dGluZy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEZWxldGVTZXR0aW5nRGlhbG9nQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RGVsZXRlU2V0dGluZ0RpYWxvZ0NvbXBvbmVudD4sXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiB7IHN5c3RlbTogc3RyaW5nLCB0aWNrZXRUeXBlOiBzdHJpbmcgfSkgeyB9XG5cbiAgcmVtb3ZlKCkge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHsgYnV0dG9uOiAncmVtb3ZlJyB9KTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IGJ1dHRvbjogJ2NhbmNlbCcgfSk7XG4gIH1cblxufVxuIiwiPGgxIG1hdC1kaWFsb2ctdGl0bGU+UmVtb3ZlIEZlYXR1cmUgRmxhZyBvciBTZXR0aW5nIGZyb20ge3tkYXRhLnN5c3RlbX19PC9oMT5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInJlbW92ZSgpXCI+UmVtb3ZlIGZyb20ge3tkYXRhLnRpY2tldFR5cGV9fTwvYnV0dG9uPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJjYW5jZWwoKVwiPkNhbmNlbDwvYnV0dG9uPlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/material/form-field";
|
|
8
|
+
import * as i5 from "@angular/material/button";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
import * as i7 from "@angular/material/icon";
|
|
11
|
+
import * as i8 from "@angular/material/tooltip";
|
|
12
|
+
export class ExpandDialogComponent {
|
|
13
|
+
constructor(dialogRef, formBuilder, data) {
|
|
14
|
+
this.dialogRef = dialogRef;
|
|
15
|
+
this.formBuilder = formBuilder;
|
|
16
|
+
this.data = data;
|
|
17
|
+
this.readOnly = false;
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.readOnly = this.data.control.disabled;
|
|
21
|
+
if (this.data.multiline) {
|
|
22
|
+
this.buildFormGroup();
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
this.formControlSubscription = this.data.control.valueChanges.subscribe((value) => {
|
|
26
|
+
this.data.control.setValue(value, { onlySelf: true, emitEvent: false, emitModelToViewChange: true });
|
|
27
|
+
this.data.control.markAsDirty();
|
|
28
|
+
}, () => { }, () => { });
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
values() {
|
|
32
|
+
return this.formGroup.get('values');
|
|
33
|
+
}
|
|
34
|
+
getValueControls() {
|
|
35
|
+
return this.values().controls.map(c => c);
|
|
36
|
+
}
|
|
37
|
+
buildFormGroup() {
|
|
38
|
+
const value = this.data.control.value ? this.data.control.value : '';
|
|
39
|
+
const list = value.split(',').map((v) => v.trim()).filter((v) => !!v);
|
|
40
|
+
this.formGroup = this.formBuilder.group({
|
|
41
|
+
values: this.formBuilder.array(list.map((v) => this.formBuilder.control({ value: v, disabled: this.data.control.disabled })))
|
|
42
|
+
});
|
|
43
|
+
this.formGroupSubscription = this.formGroup.valueChanges.subscribe((formGroupValue) => {
|
|
44
|
+
this.data.control.setValue(formGroupValue.values
|
|
45
|
+
.filter((v) => !!v)
|
|
46
|
+
.join(','), { onlySelf: true, emitEvent: false, emitModelToViewChange: true });
|
|
47
|
+
this.data.control.updateValueAndValidity();
|
|
48
|
+
this.data.control.markAsDirty();
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
add() {
|
|
52
|
+
this.formGroup.controls.values.push(this.formBuilder.control(''));
|
|
53
|
+
}
|
|
54
|
+
remove(index) {
|
|
55
|
+
this.formGroup.controls.values.removeAt(index);
|
|
56
|
+
}
|
|
57
|
+
ngOnDestroy() {
|
|
58
|
+
if (this.formControlSubscription) {
|
|
59
|
+
this.formControlSubscription.unsubscribe();
|
|
60
|
+
this.formControlSubscription = null;
|
|
61
|
+
}
|
|
62
|
+
if (this.formGroupSubscription) {
|
|
63
|
+
this.formGroupSubscription.unsubscribe();
|
|
64
|
+
this.formGroupSubscription = null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
close() {
|
|
68
|
+
this.dialogRef.close();
|
|
69
|
+
}
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ExpandDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.UntypedFormBuilder }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: ExpandDialogComponent, selector: "configcat-expand-dialog", ngImport: i0, template: "<div mat-dialog-content class=\"container\">\n <mat-form-field appearance=\"outline\" *ngIf=\"!data.multiline\" subscriptSizing=\"dynamic\">\n <mat-label></mat-label>\n <textarea matInput [formControl]=\"data.control\" rows=\"10\"></textarea>\n </mat-form-field>\n <div [formGroup]=\"formGroup\" *ngIf=\"data.multiline\">\n <div *ngFor=\"let valueControl of getValueControls(); let i = index;\" class=\"value-field\">\n <mat-form-field appearance=\"outline\">\n <input matInput [formControl]=\"valueControl\" />\n </mat-form-field>\n <button (click)=\"remove(i)\" mat-icon-button type=\"button\" class=\"no-density-mat-icon-button\"\n matTooltip=\"Remove item\" *ngIf=\"!readOnly\">\n <mat-icon>delete_outline</mat-icon>\n </button>\n </div>\n <button (click)=\"add()\" mat-stroked-button type=\"button\" *ngIf=\"!readOnly\">\n <mat-icon>add</mat-icon>Add item\n </button>\n </div>\n</div>\n<div mat-dialog-actions>\n <button type=\"button\" mat-flat-button color=\"primary\" (click)=\"close()\">Done</button>\n</div>", styles: [".container>*{width:100%}.container>* .value-field{display:flex;font-size:12px;flex-wrap:nowrap}.container>* .value-field mat-form-field{flex-grow:1}.container>* .no-density-mat-icon-button{width:48px;height:48px;padding:12px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ExpandDialogComponent, decorators: [{
|
|
74
|
+
type: Component,
|
|
75
|
+
args: [{ selector: 'configcat-expand-dialog', template: "<div mat-dialog-content class=\"container\">\n <mat-form-field appearance=\"outline\" *ngIf=\"!data.multiline\" subscriptSizing=\"dynamic\">\n <mat-label></mat-label>\n <textarea matInput [formControl]=\"data.control\" rows=\"10\"></textarea>\n </mat-form-field>\n <div [formGroup]=\"formGroup\" *ngIf=\"data.multiline\">\n <div *ngFor=\"let valueControl of getValueControls(); let i = index;\" class=\"value-field\">\n <mat-form-field appearance=\"outline\">\n <input matInput [formControl]=\"valueControl\" />\n </mat-form-field>\n <button (click)=\"remove(i)\" mat-icon-button type=\"button\" class=\"no-density-mat-icon-button\"\n matTooltip=\"Remove item\" *ngIf=\"!readOnly\">\n <mat-icon>delete_outline</mat-icon>\n </button>\n </div>\n <button (click)=\"add()\" mat-stroked-button type=\"button\" *ngIf=\"!readOnly\">\n <mat-icon>add</mat-icon>Add item\n </button>\n </div>\n</div>\n<div mat-dialog-actions>\n <button type=\"button\" mat-flat-button color=\"primary\" (click)=\"close()\">Done</button>\n</div>", styles: [".container>*{width:100%}.container>* .value-field{display:flex;font-size:12px;flex-wrap:nowrap}.container>* .value-field mat-form-field{flex-grow:1}.container>* .no-density-mat-icon-button{width:48px;height:48px;padding:12px}\n"] }]
|
|
76
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.UntypedFormBuilder }, { type: undefined, decorators: [{
|
|
77
|
+
type: Inject,
|
|
78
|
+
args: [MAT_DIALOG_DATA]
|
|
79
|
+
}] }] });
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvZGlhbG9ncy9leHBhbmQtZGlhbG9nL2V4cGFuZC1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS9zcmMvbGliL2RpYWxvZ3MvZXhwYW5kLWRpYWxvZy9leHBhbmQtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7QUFTekUsTUFBTSxPQUFPLHFCQUFxQjtJQVFoQyxZQUFtQixTQUE4QyxFQUN2RCxXQUErQixFQUNQLElBQVM7UUFGeEIsY0FBUyxHQUFULFNBQVMsQ0FBcUM7UUFDdkQsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQ1AsU0FBSSxHQUFKLElBQUksQ0FBSztRQUozQyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBS2pCLENBQUM7SUFHRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7Z0JBQ3JGLElBQUksQ0FBQyxJQUFJ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QUF1QixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDdEMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOzhHQXZFVSxxQkFBcUIsZ0ZBVXRCLGVBQWU7a0dBVmQscUJBQXFCLCtEQ1ZsQyx3cENBc0JNOzsyRkRaTyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UseUJBQXlCOzswQkFjaEMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEluamVjdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1BcnJheSwgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb25maWdjYXQtZXhwYW5kLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9leHBhbmQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZXhwYW5kLWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuZERpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBmb3JtQ29udHJvbFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbiB8IG51bGw7XG4gIGZvcm1Hcm91cFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbiB8IG51bGw7XG5cbiAgZm9ybUdyb3VwITogVW50eXBlZEZvcm1Hcm91cDtcbiAgcmVhZE9ubHkgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RXhwYW5kRGlhbG9nQ29tcG9uZW50PixcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnkpIHtcbiAgfVxuXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZWFkT25seSA9IHRoaXMuZGF0YS5jb250cm9sLmRpc2FibGVkO1xuICAgIGlmICh0aGlzLmRhdGEubXVsdGlsaW5lKSB7XG4gICAgICB0aGlzLmJ1aWxkRm9ybUdyb3VwKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2xTdWJzY3JpcHRpb24gPSB0aGlzLmRhdGEuY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YS5jb250cm9sLnNldFZhbHVlKHZhbHVlLCB7IG9ubHlTZWxmOiB0cnVlLCBlbWl0RXZlbnQ6IGZhbHNlLCBlbWl0TW9kZWxUb1ZpZXdDaGFuZ2U6IHRydWUgfSk7XG4gICAgICAgIHRoaXMuZGF0YS5jb250cm9sLm1hcmtBc0RpcnR5KCk7XG4gICAgICB9LCAoKSA9PiB7IH0sICgpID0+IHsgfSk7XG4gICAgfVxuICB9XG5cbiAgdmFsdWVzKCkge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC5nZXQoJ3ZhbHVlcycpIGFzIFVudHlwZWRGb3JtQXJyYXk7XG4gIH1cblxuICBnZXRWYWx1ZUNvbnRyb2xzKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlcygpLmNvbnRyb2xzLm1hcChjID0+IGMgYXMgVW50eXBlZEZvcm1Db250cm9sKTtcbiAgfVxuXG4gIGJ1aWxkRm9ybUdyb3VwKCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5kYXRhLmNvbnRyb2wudmFsdWUgPyB0aGlzLmRhdGEuY29udHJvbC52YWx1ZSA6ICcnO1xuICAgIGNvbnN0IGxpc3QgPSB2YWx1ZS5zcGxpdCgnLCcpLm1hcCgodjogYW55KSA9PiB2LnRyaW0oKSkuZmlsdGVyKCh2OiBhbnkpID0+ICEhdik7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIHZhbHVlczogdGhpcy5mb3JtQnVpbGRlci5hcnJheShsaXN0Lm1hcCgodjogYW55KSA9PiB0aGlzLmZvcm1CdWlsZGVyLmNvbnRyb2woeyB2YWx1ZTogdiwgZGlzYWJsZWQ6IHRoaXMuZGF0YS5jb250cm9sLmRpc2FibGVkIH0pKSlcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Hcm91cFN1YnNjcmlwdGlvbiA9IHRoaXMuZm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGZvcm1Hcm91cFZhbHVlKSA9PiB7XG4gICAgICB0aGlzLmRhdGEuY29udHJvbC5zZXRWYWx1ZShmb3JtR3JvdXBWYWx1ZS52YWx1ZXNcbiAgICAgICAgLmZpbHRlcigodjogYW55KSA9PiAhIXYpXG4gICAgICAgIC5qb2luKCcsJyksIHsgb25seVNlbGY6IHRydWUsIGVtaXRFdmVudDogZmFsc2UsIGVtaXRNb2RlbFRvVmlld0NoYW5nZTogdHJ1ZSB9KTtcbiAgICAgIHRoaXMuZGF0YS5jb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIHRoaXMuZGF0YS5jb250cm9sLm1hcmtBc0RpcnR5KCk7XG4gICAgfSk7XG4gIH1cblxuICBhZGQoKSB7XG4gICAgKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnZhbHVlcyBhcyBVbnR5cGVkRm9ybUFycmF5KS5wdXNoKHRoaXMuZm9ybUJ1aWxkZXIuY29udHJvbCgnJykpO1xuICB9XG5cbiAgcmVtb3ZlKGluZGV4OiBhbnkpIHtcbiAgICAodGhpcy5mb3JtR3JvdXAuY29udHJvbHMudmFsdWVzIGFzIFVudHlwZWRGb3JtQXJyYXkpLnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmZvcm1Db250cm9sU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmZvcm1Db250cm9sU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5mb3JtR3JvdXBTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmZvcm1Hcm91cFN1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgfVxufVxuIiwiPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiAqbmdJZj1cIiFkYXRhLm11bHRpbGluZVwiIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIj5cbiAgICAgICAgPG1hdC1sYWJlbD48L21hdC1sYWJlbD5cbiAgICAgICAgPHRleHRhcmVhIG1hdElucHV0IFtmb3JtQ29udHJvbF09XCJkYXRhLmNvbnRyb2xcIiByb3dzPVwiMTBcIj48L3RleHRhcmVhPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiICpuZ0lmPVwiZGF0YS5tdWx0aWxpbmVcIj5cbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdmFsdWVDb250cm9sIG9mIGdldFZhbHVlQ29udHJvbHMoKTsgbGV0IGkgPSBpbmRleDtcIiBjbGFzcz1cInZhbHVlLWZpZWxkXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cInZhbHVlQ29udHJvbFwiIC8+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwicmVtb3ZlKGkpXCIgbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cIm5vLWRlbnNpdHktbWF0LWljb24tYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwiUmVtb3ZlIGl0ZW1cIiAqbmdJZj1cIiFyZWFkT25seVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5kZWxldGVfb3V0bGluZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImFkZCgpXCIgbWF0LXN0cm9rZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cIiFyZWFkT25seVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+QWRkIGl0ZW1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoKVwiPkRvbmU8L2J1dHRvbj5cbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/material/dialog";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@angular/material/form-field";
|
|
8
|
+
import * as i5 from "@angular/material/button";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
export class ReasonDialogComponent {
|
|
11
|
+
constructor(dialogRef, formBuilder) {
|
|
12
|
+
this.dialogRef = dialogRef;
|
|
13
|
+
this.formBuilder = formBuilder;
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
this.formGroup = this.formBuilder.group({
|
|
17
|
+
reason: ['', [Validators.required, Validators.maxLength(1000)]]
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
handleSaveButton() {
|
|
21
|
+
if (!this.formGroup.valid) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
this.dialogRef.close({ button: 'save', reason: this.formGroup.controls.reason.value });
|
|
25
|
+
}
|
|
26
|
+
cancel() {
|
|
27
|
+
this.dialogRef.close({ button: 'cancel' });
|
|
28
|
+
}
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ReasonDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: ReasonDialogComponent, selector: "configcat-reason-dialog", ngImport: i0, template: "<h1 mat-dialog-title>Add notes</h1>\n<form [formGroup]=\"formGroup\" (ngSubmit)=\"handleSaveButton()\">\n <div mat-dialog-content class=\"container\">\n <p>This will appear in the Why column of the Audit Log.</p>\n <mat-form-field appearance=\"outline\">\n <mat-label></mat-label>\n <textarea matInput formControlName=\"reason\" name=\"reason\" placeholder=\"I'm changing settings because...\"\n rows=\"3\"></textarea>\n <mat-error *ngIf=\"formGroup.controls.reason.invalid\">The field is required.</mat-error>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button type=\"submit\" style=\"margin-right: 10px;\" mat-flat-button color=\"primary\">Add notes & Save</button>\n <button type=\"button\" mat-stroked-button (click)=\"cancel()\">Cancel</button>\n </div>\n</form>", styles: [".container>*{width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); }
|
|
31
|
+
}
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ReasonDialogComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{ selector: 'configcat-reason-dialog', template: "<h1 mat-dialog-title>Add notes</h1>\n<form [formGroup]=\"formGroup\" (ngSubmit)=\"handleSaveButton()\">\n <div mat-dialog-content class=\"container\">\n <p>This will appear in the Why column of the Audit Log.</p>\n <mat-form-field appearance=\"outline\">\n <mat-label></mat-label>\n <textarea matInput formControlName=\"reason\" name=\"reason\" placeholder=\"I'm changing settings because...\"\n rows=\"3\"></textarea>\n <mat-error *ngIf=\"formGroup.controls.reason.invalid\">The field is required.</mat-error>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button type=\"submit\" style=\"margin-right: 10px;\" mat-flat-button color=\"primary\">Add notes & Save</button>\n <button type=\"button\" mat-stroked-button (click)=\"cancel()\">Cancel</button>\n </div>\n</form>", styles: [".container>*{width:100%}\n"] }]
|
|
35
|
+
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.UntypedFormBuilder }] });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhc29uLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvZGlhbG9ncy9yZWFzb24tZGlhbG9nL3JlYXNvbi1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS9zcmMvbGliL2RpYWxvZ3MvcmVhc29uLWRpYWxvZy9yZWFzb24tZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUF3QyxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFPbEYsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUNTLFNBQThDLEVBQzdDLFdBQStCO1FBRGhDLGNBQVMsR0FBVCxTQUFTLENBQXFDO1FBQzdDLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtJQUNyQyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDdEMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDaEUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzFCLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQzs4R0F6QlUscUJBQXFCO2tHQUFyQixxQkFBcUIsK0RDVGxDLHl6QkFlTzs7MkZETk0scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb25maWdjYXQtcmVhc29uLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWFzb24tZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVhc29uLWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlYXNvbkRpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZm9ybUdyb3VwITogVW50eXBlZEZvcm1Hcm91cDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UmVhc29uRGlhbG9nQ29tcG9uZW50PixcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXJcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZvcm1Hcm91cCA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcmVhc29uOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgxMDAwKV1dXG4gICAgfSk7XG4gIH1cblxuICBoYW5kbGVTYXZlQnV0dG9uKCkge1xuICAgIGlmICghdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IGJ1dHRvbjogJ3NhdmUnLCByZWFzb246IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnJlYXNvbi52YWx1ZSB9KTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IGJ1dHRvbjogJ2NhbmNlbCcgfSk7XG4gIH1cbn1cbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPkFkZCBub3RlczwvaDE+XG48Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIChuZ1N1Ym1pdCk9XCJoYW5kbGVTYXZlQnV0dG9uKClcIj5cbiAgPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICA8cD5UaGlzIHdpbGwgYXBwZWFyIGluIHRoZSBXaHkgY29sdW1uIG9mIHRoZSBBdWRpdCBMb2cuPC9wPlxuICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgPG1hdC1sYWJlbD48L21hdC1sYWJlbD5cbiAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJyZWFzb25cIiBuYW1lPVwicmVhc29uXCIgcGxhY2Vob2xkZXI9XCJJJ20gY2hhbmdpbmcgc2V0dGluZ3MgYmVjYXVzZS4uLlwiXG4gICAgICAgIHJvd3M9XCIzXCI+PC90ZXh0YXJlYT5cbiAgICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJmb3JtR3JvdXAuY29udHJvbHMucmVhc29uLmludmFsaWRcIj5UaGUgZmllbGQgaXMgcmVxdWlyZWQuPC9tYXQtZXJyb3I+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG4gIDxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHB4O1wiIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIj5BZGQgbm90ZXMgJiBTYXZlPC9idXR0b24+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXN0cm9rZWQtYnV0dG9uIChjbGljayk9XCJjYW5jZWwoKVwiPkNhbmNlbDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZm9ybT4iXX0=
|
|
@@ -4,11 +4,11 @@ export class SaveSnackbarComponent {
|
|
|
4
4
|
constructor() { }
|
|
5
5
|
ngOnInit() {
|
|
6
6
|
}
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SaveSnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: SaveSnackbarComponent, selector: "configcat-save-snackbar", ngImport: i0, template: "<p class=\"header\">Settings saved successfully.</p>", styles: ["p{text-align:center;font-weight:700}.header{font-size:1.2em}\n"] }); }
|
|
7
9
|
}
|
|
8
|
-
|
|
9
|
-
SaveSnackbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SaveSnackbarComponent, selector: "configcat-save-snackbar", ngImport: i0, template: "<p class=\"header\">Settings saved successfully.</p>", styles: ["p{text-align:center;font-weight:700}.header{font-size:1.2em}\n"] });
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SaveSnackbarComponent, decorators: [{
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SaveSnackbarComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
12
|
args: [{ selector: 'configcat-save-snackbar', template: "<p class=\"header\">Settings saved successfully.</p>", styles: ["p{text-align:center;font-weight:700}.header{font-size:1.2em}\n"] }]
|
|
13
|
-
}], ctorParameters:
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
}], ctorParameters: () => [] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1zbmFja2Jhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvZGlhbG9ncy9zYXZlLXNuYWNrYmFyL3NhdmUtc25hY2tiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS9zcmMvbGliL2RpYWxvZ3Mvc2F2ZS1zbmFja2Jhci9zYXZlLXNuYWNrYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBT2xELE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsZ0JBQWdCLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7OEdBTFUscUJBQXFCO2tHQUFyQixxQkFBcUIsK0RDUGxDLHNEQUFrRDs7MkZET3JDLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb25maWdjYXQtc2F2ZS1zbmFja2JhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zYXZlLXNuYWNrYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2F2ZS1zbmFja2Jhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNhdmVTbmFja2JhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG59XG4iLCI8cCBjbGFzcz1cImhlYWRlclwiPlNldHRpbmdzIHNhdmVkIHN1Y2Nlc3NmdWxseS48L3A+Il19
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { SettingItemComponent } from './setting-item/setting-item.component';
|
|
3
|
+
import { SettingSelectComponent } from './selects/setting-select/setting-select.component';
|
|
4
|
+
import { ProductSelectComponent } from './selects/product-select/product-select.component';
|
|
5
|
+
import { ConfigSelectComponent } from './selects/config-select/config-select.component';
|
|
6
|
+
import { EnvironmentSelectComponent } from './selects/environment-select/environment-select.component';
|
|
7
|
+
import { Configuration } from './configuration';
|
|
8
|
+
import { CommonModule } from '@angular/common';
|
|
9
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
10
|
+
import { AuthorizationComponent } from './authorization/authorization.component';
|
|
11
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
12
|
+
import { MatOptionModule } from '@angular/material/core';
|
|
13
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
14
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
15
|
+
import { MatInputModule } from '@angular/material/input';
|
|
16
|
+
import { ExpandDialogComponent } from './dialogs/expand-dialog/expand-dialog.component';
|
|
17
|
+
import { ReasonDialogComponent } from './dialogs/reason-dialog/reason-dialog.component';
|
|
18
|
+
import { SaveSnackbarComponent } from './dialogs/save-snackbar/save-snackbar.component';
|
|
19
|
+
import { RolloutPercentageItemsComponent } from './setting-list/setting/rollout-percentage-items/rollout-percentage-items.component';
|
|
20
|
+
import { RolloutRulesComponent } from './setting-list/setting/rollout-rules/rollout-rules.component';
|
|
21
|
+
import { ValueComponent } from './setting-list/setting/value/value.component';
|
|
22
|
+
import { SettingListComponent } from './setting-list/setting-list.component';
|
|
23
|
+
import { SettingComponent } from './setting-list/setting/setting.component';
|
|
24
|
+
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
25
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
26
|
+
import { MAT_TOOLTIP_DEFAULT_OPTIONS, MatTooltipModule } from '@angular/material/tooltip';
|
|
27
|
+
import { MatChipsModule } from '@angular/material/chips';
|
|
28
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
29
|
+
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
30
|
+
import { RouterModule } from '@angular/router';
|
|
31
|
+
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
|
32
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
33
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
34
|
+
import { BaseComponent } from './base/base.component';
|
|
35
|
+
import { BaseSelectComponent } from './base/base-select.component';
|
|
36
|
+
import { ApiModule } from 'ng-configcat-publicapi';
|
|
37
|
+
import { InputDisplayNormalizerDirective } from './_directives/input-display-normalizer.directive';
|
|
38
|
+
import { DeleteSettingDialogComponent } from './dialogs/delete-setting-dialog/delete-setting-dialog.component';
|
|
39
|
+
import * as i0 from "@angular/core";
|
|
40
|
+
export class NgConfigCatPublicApiUIModule {
|
|
41
|
+
static forRoot(configurationFactory) {
|
|
42
|
+
return {
|
|
43
|
+
ngModule: NgConfigCatPublicApiUIModule,
|
|
44
|
+
providers: [{ provide: Configuration, useFactory: configurationFactory }]
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
constructor() { }
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NgConfigCatPublicApiUIModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
49
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.3", ngImport: i0, type: NgConfigCatPublicApiUIModule, declarations: [BaseComponent,
|
|
50
|
+
BaseSelectComponent,
|
|
51
|
+
ProductSelectComponent,
|
|
52
|
+
ConfigSelectComponent,
|
|
53
|
+
EnvironmentSelectComponent,
|
|
54
|
+
SettingSelectComponent,
|
|
55
|
+
SettingItemComponent,
|
|
56
|
+
AuthorizationComponent,
|
|
57
|
+
SettingListComponent,
|
|
58
|
+
SettingComponent,
|
|
59
|
+
RolloutPercentageItemsComponent,
|
|
60
|
+
RolloutRulesComponent,
|
|
61
|
+
ValueComponent,
|
|
62
|
+
ReasonDialogComponent,
|
|
63
|
+
SaveSnackbarComponent,
|
|
64
|
+
ExpandDialogComponent,
|
|
65
|
+
DeleteSettingDialogComponent,
|
|
66
|
+
InputDisplayNormalizerDirective], imports: [CommonModule,
|
|
67
|
+
FormsModule,
|
|
68
|
+
ReactiveFormsModule,
|
|
69
|
+
BrowserAnimationsModule,
|
|
70
|
+
MatFormFieldModule,
|
|
71
|
+
MatOptionModule,
|
|
72
|
+
MatSelectModule,
|
|
73
|
+
MatButtonModule,
|
|
74
|
+
MatInputModule,
|
|
75
|
+
MatIconModule,
|
|
76
|
+
MatTooltipModule,
|
|
77
|
+
MatChipsModule,
|
|
78
|
+
MatAutocompleteModule,
|
|
79
|
+
DragDropModule,
|
|
80
|
+
RouterModule,
|
|
81
|
+
MatSnackBarModule,
|
|
82
|
+
MatDialogModule,
|
|
83
|
+
MatMenuModule,
|
|
84
|
+
ApiModule], exports: [AuthorizationComponent,
|
|
85
|
+
ProductSelectComponent,
|
|
86
|
+
ConfigSelectComponent,
|
|
87
|
+
EnvironmentSelectComponent,
|
|
88
|
+
SettingSelectComponent,
|
|
89
|
+
SettingItemComponent,
|
|
90
|
+
InputDisplayNormalizerDirective,
|
|
91
|
+
DeleteSettingDialogComponent] }); }
|
|
92
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NgConfigCatPublicApiUIModule, providers: [
|
|
93
|
+
{
|
|
94
|
+
provide: MAT_TOOLTIP_DEFAULT_OPTIONS,
|
|
95
|
+
useValue: { disableTooltipInteractivity: true },
|
|
96
|
+
},
|
|
97
|
+
], imports: [CommonModule,
|
|
98
|
+
FormsModule,
|
|
99
|
+
ReactiveFormsModule,
|
|
100
|
+
BrowserAnimationsModule,
|
|
101
|
+
MatFormFieldModule,
|
|
102
|
+
MatOptionModule,
|
|
103
|
+
MatSelectModule,
|
|
104
|
+
MatButtonModule,
|
|
105
|
+
MatInputModule,
|
|
106
|
+
MatIconModule,
|
|
107
|
+
MatTooltipModule,
|
|
108
|
+
MatChipsModule,
|
|
109
|
+
MatAutocompleteModule,
|
|
110
|
+
DragDropModule,
|
|
111
|
+
RouterModule,
|
|
112
|
+
MatSnackBarModule,
|
|
113
|
+
MatDialogModule,
|
|
114
|
+
MatMenuModule,
|
|
115
|
+
ApiModule] }); }
|
|
116
|
+
}
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: NgConfigCatPublicApiUIModule, decorators: [{
|
|
118
|
+
type: NgModule,
|
|
119
|
+
args: [{
|
|
120
|
+
declarations: [
|
|
121
|
+
BaseComponent,
|
|
122
|
+
BaseSelectComponent,
|
|
123
|
+
ProductSelectComponent,
|
|
124
|
+
ConfigSelectComponent,
|
|
125
|
+
EnvironmentSelectComponent,
|
|
126
|
+
SettingSelectComponent,
|
|
127
|
+
SettingItemComponent,
|
|
128
|
+
AuthorizationComponent,
|
|
129
|
+
SettingListComponent,
|
|
130
|
+
SettingComponent,
|
|
131
|
+
RolloutPercentageItemsComponent,
|
|
132
|
+
RolloutRulesComponent,
|
|
133
|
+
ValueComponent,
|
|
134
|
+
ReasonDialogComponent,
|
|
135
|
+
SaveSnackbarComponent,
|
|
136
|
+
ExpandDialogComponent,
|
|
137
|
+
DeleteSettingDialogComponent,
|
|
138
|
+
InputDisplayNormalizerDirective
|
|
139
|
+
],
|
|
140
|
+
imports: [
|
|
141
|
+
CommonModule,
|
|
142
|
+
FormsModule,
|
|
143
|
+
ReactiveFormsModule,
|
|
144
|
+
BrowserAnimationsModule,
|
|
145
|
+
MatFormFieldModule,
|
|
146
|
+
MatOptionModule,
|
|
147
|
+
MatSelectModule,
|
|
148
|
+
MatButtonModule,
|
|
149
|
+
MatInputModule,
|
|
150
|
+
MatIconModule,
|
|
151
|
+
MatTooltipModule,
|
|
152
|
+
MatChipsModule,
|
|
153
|
+
MatAutocompleteModule,
|
|
154
|
+
DragDropModule,
|
|
155
|
+
RouterModule,
|
|
156
|
+
MatSnackBarModule,
|
|
157
|
+
MatDialogModule,
|
|
158
|
+
MatMenuModule,
|
|
159
|
+
ApiModule
|
|
160
|
+
],
|
|
161
|
+
exports: [
|
|
162
|
+
AuthorizationComponent,
|
|
163
|
+
ProductSelectComponent,
|
|
164
|
+
ConfigSelectComponent,
|
|
165
|
+
EnvironmentSelectComponent,
|
|
166
|
+
SettingSelectComponent,
|
|
167
|
+
SettingItemComponent,
|
|
168
|
+
InputDisplayNormalizerDirective,
|
|
169
|
+
DeleteSettingDialogComponent
|
|
170
|
+
],
|
|
171
|
+
providers: [
|
|
172
|
+
{
|
|
173
|
+
provide: MAT_TOOLTIP_DEFAULT_OPTIONS,
|
|
174
|
+
useValue: { disableTooltipInteractivity: true },
|
|
175
|
+
},
|
|
176
|
+
]
|
|
177
|
+
}]
|
|
178
|
+
}], ctorParameters: () => [] });
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDeEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxN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QUEwQjt3QkFDMUIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLCtCQUErQjt3QkFDL0IsNEJBQTRCO3FCQUM3QjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLDJCQUEyQjs0QkFDcEMsUUFBUSxFQUFFLEVBQUUsMkJBQTJCLEVBQUUsSUFBSSxFQUFFO3lCQUNoRDtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZXR0aW5nSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vc2V0dGluZy1pdGVtL3NldHRpbmctaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ1NlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0cy9zZXR0aW5nLXNlbGVjdC9zZXR0aW5nLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvZHVjdFNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0cy9wcm9kdWN0LXNlbGVjdC9wcm9kdWN0LXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlnU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3RzL2NvbmZpZy1zZWxlY3QvY29uZmlnLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdHMvZW52aXJvbm1lbnQtc2VsZWN0L2Vudmlyb25tZW50LXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBdXRob3JpemF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9hdXRob3JpemF0aW9uL2F1dGhvcml6YXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgRXhwYW5kRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9kaWFsb2dzL2V4cGFuZC1kaWFsb2cvZXhwYW5kLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVhc29uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9kaWFsb2dzL3JlYXNvbi1kaWFsb2cvcmVhc29uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2F2ZVNuYWNrYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9kaWFsb2dzL3NhdmUtc25hY2tiYXIvc2F2ZS1zbmFja2Jhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm9sbG91dFBlcmNlbnRhZ2VJdGVtc0NvbXBvbmVudCB9IGZyb20gJy4vc2V0dGluZy1saXN0L3NldHRpbmcvcm9sbG91dC1wZXJjZW50YWdlLWl0ZW1zL3JvbGxvdXQtcGVyY2VudGFnZS1pdGVtcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm9sbG91dFJ1bGVzQ29tcG9uZW50IH0gZnJvbSAnLi9zZXR0aW5nLWxpc3Qvc2V0dGluZy9yb2xsb3V0LXJ1bGVzL3JvbGxvdXQtcnVsZXMuY29tcG9uZW50JztcbmltcG9ydCB7IFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi9zZXR0aW5nLWxpc3Qvc2V0dGluZy92YWx1ZS92YWx1ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ0xpc3RDb21wb25lbnQgfSBmcm9tICcuL3NldHRpbmctbGlzdC9zZXR0aW5nLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNldHRpbmdDb21wb25lbnQgfSBmcm9tICcuL3NldHRpbmctbGlzdC9zZXR0aW5nL3NldHRpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IEJyb3dzZXJBbmltYXRpb25zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1BVF9UT09MVElQX0RFRkFVTFRfT1BUSU9OUywgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgRHJhZ0Ryb3BNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS9iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXNlU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9iYXNlL2Jhc2Utc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcGlNb2R1bGUgfSBmcm9tICduZy1jb25maWdjYXQtcHVibGljYXBpJztcbmltcG9ydCB7IElucHV0RGlzcGxheU5vcm1hbGl6ZXJEaXJlY3RpdmUgfSBmcm9tICcuL19kaXJlY3RpdmVzL2lucHV0LWRpc3BsYXktbm9ybWFsaXplci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGVsZXRlU2V0dGluZ0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vZGlhbG9ncy9kZWxldGUtc2V0dGluZy1kaWFsb2cvZGVsZXRlLXNldHRpbmctZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJhc2VDb21wb25lbnQsXG4gICAgQmFzZVNlbGVjdENvbXBvbmVudCxcbiAgICBQcm9kdWN0U2VsZWN0Q29tcG9uZW50LFxuICAgIENvbmZpZ1NlbGVjdENvbXBvbmVudCxcbiAgICBFbnZpcm9ubWVudFNlbGVjdENvbXBvbmVudCxcbiAgICBTZXR0aW5nU2VsZWN0Q29tcG9uZW50LFxuICAgIFNldHRpbmdJdGVtQ29tcG9uZW50LFxuICAgIEF1dGhvcml6YXRpb25Db21wb25lbnQsXG4gICAgU2V0dGluZ0xpc3RDb21wb25lbnQsXG4gICAgU2V0dGluZ0NvbXBvbmVudCxcbiAgICBSb2xsb3V0UGVyY2VudGFnZUl0ZW1zQ29tcG9uZW50LFxuICAgIFJvbGxvdXRSdWxlc0NvbXBvbmVudCxcbiAgICBWYWx1ZUNvbXBvbmVudCxcbiAgICBSZWFzb25EaWFsb2dDb21wb25lbnQsXG4gICAgU2F2ZVNuYWNrYmFyQ29tcG9uZW50LFxuICAgIEV4cGFuZERpYWxvZ0NvbXBvbmVudCxcbiAgICBEZWxldGVTZXR0aW5nRGlhbG9nQ29tcG9uZW50LFxuICAgIElucHV0RGlzcGxheU5vcm1hbGl6ZXJEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0Q2hpcHNNb2R1bGUsXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgIERyYWdEcm9wTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRTbmFja0Jhck1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBBcGlNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEF1dGhvcml6YXRpb25Db21wb25lbnQsXG4gICAgUHJvZHVjdFNlbGVjdENvbXBvbmVudCxcbiAgICBDb25maWdTZWxlY3RDb21wb25lbnQsXG4gICAgRW52aXJvbm1lbnRTZWxlY3RDb21wb25lbnQsXG4gICAgU2V0dGluZ1NlbGVjdENvbXBvbmVudCxcbiAgICBTZXR0aW5nSXRlbUNvbXBvbmVudCxcbiAgICBJbnB1dERpc3BsYXlOb3JtYWxpemVyRGlyZWN0aXZlLFxuICAgIERlbGV0ZVNldHRpbmdEaWFsb2dDb21wb25lbnRcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX1RPT0xUSVBfREVGQVVMVF9PUFRJT05TLFxuICAgICAgdXNlVmFsdWU6IHsgZGlzYWJsZVRvb2x0aXBJbnRlcmFjdGl2aXR5OiB0cnVlIH0sXG4gICAgfSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ0NvbmZpZ0NhdFB1YmxpY0FwaVVJTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZ3VyYXRpb25GYWN0b3J5OiAoKSA9PiBDb25maWd1cmF0aW9uKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ0NvbmZpZ0NhdFB1YmxpY0FwaVVJTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ0NvbmZpZ0NhdFB1YmxpY0FwaVVJTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDb25maWd1cmF0aW9uLCB1c2VGYWN0b3J5OiBjb25maWd1cmF0aW9uRmFjdG9yeSB9XVxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIl19
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Component, Input, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { BaseSelectComponent } from '../../base/base-select.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../../_services";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
import * as i3 from "@angular/forms";
|
|
8
|
+
import * as i4 from "@angular/material/form-field";
|
|
9
|
+
import * as i5 from "@angular/material/core";
|
|
10
|
+
import * as i6 from "@angular/material/select";
|
|
11
|
+
import * as i7 from "@angular/material/tooltip";
|
|
12
|
+
export class ConfigSelectComponent extends BaseSelectComponent {
|
|
13
|
+
constructor(publicApiService) {
|
|
14
|
+
super(publicApiService);
|
|
15
|
+
this.configs = [];
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this.configs = [];
|
|
19
|
+
this.reloadConfigs();
|
|
20
|
+
}
|
|
21
|
+
ngOnChanges() {
|
|
22
|
+
this.reloadConfigs();
|
|
23
|
+
}
|
|
24
|
+
reloadConfigs() {
|
|
25
|
+
if (this.productId) {
|
|
26
|
+
this.createConfigsService().getConfigs(this.productId).subscribe(configs => {
|
|
27
|
+
this.configs = configs;
|
|
28
|
+
if (this.configs.length > 0) {
|
|
29
|
+
this.valueFormControl.setValue(this.configs[0].configId);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
this.valueFormControl.setValue("");
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ConfigSelectComponent, deps: [{ token: i1.PublicApiService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: ConfigSelectComponent, selector: "configcat-config-select", inputs: { valueFormControl: "valueFormControl", productId: "productId" }, providers: [
|
|
39
|
+
{
|
|
40
|
+
provide: NG_VALUE_ACCESSOR,
|
|
41
|
+
useExisting: forwardRef(() => ConfigSelectComponent),
|
|
42
|
+
multi: true
|
|
43
|
+
}
|
|
44
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field class=\"form-field\" appearance=\"outline\" *ngIf=\"configs\">\n <mat-label>Config</mat-label>\n <mat-select placeholder=\"Config\" [formControl]=\"valueFormControl\" name=\"value\" disableOptionCentering\n (openedChange)=\"openChanged($event)\" [panelClass]=\"customDropdown ? 'custom-dropdown-below' : ''\">\n <mat-option *ngFor=\"let config of configs\" [value]=\"config.configId\" matTooltip=\"{{config.name}}\"\n [matTooltipShowDelay]=\"1000\">{{config.name}}</mat-option>\n </mat-select>\n</mat-form-field>", styles: [".form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ConfigSelectComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'configcat-config-select', providers: [
|
|
49
|
+
{
|
|
50
|
+
provide: NG_VALUE_ACCESSOR,
|
|
51
|
+
useExisting: forwardRef(() => ConfigSelectComponent),
|
|
52
|
+
multi: true
|
|
53
|
+
}
|
|
54
|
+
], template: "<mat-form-field class=\"form-field\" appearance=\"outline\" *ngIf=\"configs\">\n <mat-label>Config</mat-label>\n <mat-select placeholder=\"Config\" [formControl]=\"valueFormControl\" name=\"value\" disableOptionCentering\n (openedChange)=\"openChanged($event)\" [panelClass]=\"customDropdown ? 'custom-dropdown-below' : ''\">\n <mat-option *ngFor=\"let config of configs\" [value]=\"config.configId\" matTooltip=\"{{config.name}}\"\n [matTooltipShowDelay]=\"1000\">{{config.name}}</mat-option>\n </mat-select>\n</mat-form-field>", styles: [".form-field{width:100%}\n"] }]
|
|
55
|
+
}], ctorParameters: () => [{ type: i1.PublicApiService }], propDecorators: { valueFormControl: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], productId: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb25maWdjYXQtcHVibGljYXBpLXVpL3NyYy9saWIvc2VsZWN0cy9jb25maWctc2VsZWN0L2NvbmZpZy1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29uZmlnY2F0LXB1YmxpY2FwaS11aS9zcmMvbGliL3NlbGVjdHMvY29uZmlnLXNlbGVjdC9jb25maWctc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRixPQUFPLEVBQUUsaUJBQWlCLEVBQXNCLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7OztBQWN2RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsbUJBQW1CO0lBTTVELFlBQ0UsZ0JBQWtDO1FBQ2xDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBSjFCLFlBQU8sR0FBa0IsRUFBRSxDQUFDO0lBSzVCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ3pFLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO2dCQUN2QixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzNELENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs4R0EvQlUscUJBQXFCO2tHQUFyQixxQkFBcUIsNEhBUnJCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDcEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLHNFQ2hCSCxvakJBT2lCOzsyRkRXSixxQkFBcUI7a0JBWmpDLFNBQVM7K0JBQ0UseUJBQXlCLGFBR3hCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHNCQUFzQixDQUFDOzRCQUNwRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtxRkFJUSxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT25DaGFuZ2VzLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWdNb2RlbCB9IGZyb20gJ25nLWNvbmZpZ2NhdC1wdWJsaWNhcGknO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFB1YmxpY0FwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi9fc2VydmljZXMnO1xuaW1wb3J0IHsgQmFzZVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvYmFzZS1zZWxlY3QuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29uZmlnY2F0LWNvbmZpZy1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlnLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbmZpZy1zZWxlY3QuY29tcG9uZW50LmNzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENvbmZpZ1NlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maWdTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIHZhbHVlRm9ybUNvbnRyb2whOiBVbnR5cGVkRm9ybUNvbnRyb2w7XG4gIEBJbnB1dCgpIHByb2R1Y3RJZCE6IHN0cmluZztcbiAgY29uZmlnczogQ29uZmlnTW9kZWxbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpY0FwaVNlcnZpY2U6IFB1YmxpY0FwaVNlcnZpY2UpIHtcbiAgICBzdXBlcihwdWJsaWNBcGlTZXJ2aWNlKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlncyA9IFtdO1xuICAgIHRoaXMucmVsb2FkQ29uZmlncygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5yZWxvYWRDb25maWdzKCk7XG4gIH1cblxuICByZWxvYWRDb25maWdzKCkge1xuICAgIGlmICh0aGlzLnByb2R1Y3RJZCkge1xuICAgICAgdGhpcy5jcmVhdGVDb25maWdzU2VydmljZSgpLmdldENvbmZpZ3ModGhpcy5wcm9kdWN0SWQpLnN1YnNjcmliZShjb25maWdzID0+IHtcbiAgICAgICAgdGhpcy5jb25maWdzID0gY29uZmlncztcbiAgICAgICAgaWYgKHRoaXMuY29uZmlncy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZUZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuY29uZmlnc1swXS5jb25maWdJZCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy52YWx1ZUZvcm1Db250cm9sLnNldFZhbHVlKFwiXCIpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZvcm0tZmllbGRcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiICpuZ0lmPVwiY29uZmlnc1wiPlxuICAgIDxtYXQtbGFiZWw+Q29uZmlnPC9tYXQtbGFiZWw+XG4gICAgPG1hdC1zZWxlY3QgcGxhY2Vob2xkZXI9XCJDb25maWdcIiBbZm9ybUNvbnRyb2xdPVwidmFsdWVGb3JtQ29udHJvbFwiIG5hbWU9XCJ2YWx1ZVwiIGRpc2FibGVPcHRpb25DZW50ZXJpbmdcbiAgICAgICAgKG9wZW5lZENoYW5nZSk9XCJvcGVuQ2hhbmdlZCgkZXZlbnQpXCIgW3BhbmVsQ2xhc3NdPVwiY3VzdG9tRHJvcGRvd24gPyAnY3VzdG9tLWRyb3Bkb3duLWJlbG93JyA6ICcnXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBjb25maWcgb2YgY29uZmlnc1wiIFt2YWx1ZV09XCJjb25maWcuY29uZmlnSWRcIiBtYXRUb29sdGlwPVwie3tjb25maWcubmFtZX19XCJcbiAgICAgICAgICAgIFttYXRUb29sdGlwU2hvd0RlbGF5XT1cIjEwMDBcIj57e2NvbmZpZy5uYW1lfX08L21hdC1vcHRpb24+XG4gICAgPC9tYXQtc2VsZWN0PlxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
|