@firestitch/app-acl 12.4.3 → 12.4.4
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/app/components/acl-entries/acl-entries.component.d.ts +33 -33
- package/app/components/acl-entry/acl-entry.component.d.ts +31 -31
- package/app/components/acl-object-roles/acl-object-roles.component.d.ts +18 -18
- package/app/components/acl-permission-popover/acl-permission-popover.component.d.ts +12 -12
- package/app/components/acl-role/acl-role.component.d.ts +51 -48
- package/app/components/acl-role-popover/acl-role-popover.component.d.ts +13 -13
- package/app/components/acl-roles/acl-roles.component.d.ts +37 -37
- package/app/consts/acl-role-accesses.d.ts +5 -5
- package/app/enums/acl-role-access.d.ts +6 -6
- package/app/fs-app-acl.module.d.ts +31 -31
- package/app/injectors/app-acl-config.injector.d.ts +2 -2
- package/app/interfaces/acl-entry-data.d.ts +11 -11
- package/app/interfaces/acl-entry.d.ts +18 -18
- package/app/interfaces/acl-level.d.ts +3 -3
- package/app/interfaces/acl-object-entry.d.ts +11 -11
- package/app/interfaces/acl-object-role.d.ts +6 -6
- package/app/interfaces/acl-object.d.ts +4 -4
- package/app/interfaces/acl-permission.d.ts +7 -7
- package/app/interfaces/acl-role-config.d.ts +5 -5
- package/app/interfaces/acl-role.d.ts +16 -16
- package/app/interfaces/app-acl-config.d.ts +7 -7
- package/app/interfaces/index.d.ts +2 -2
- package/app/interfaces/name-value.d.ts +4 -4
- package/app/interfaces/role-config.d.ts +12 -12
- package/app/services/app-acl.service.d.ts +16 -16
- package/bundles/firestitch-app-acl.umd.js +1176 -1163
- package/bundles/firestitch-app-acl.umd.js.map +1 -1
- package/esm2015/app/components/acl-entries/acl-entries.component.js +173 -173
- package/esm2015/app/components/acl-entry/acl-entry.component.js +93 -93
- package/esm2015/app/components/acl-object-roles/acl-object-roles.component.js +56 -56
- package/esm2015/app/components/acl-permission-popover/acl-permission-popover.component.js +32 -32
- package/esm2015/app/components/acl-role/acl-role.component.js +221 -209
- package/esm2015/app/components/acl-role-popover/acl-role-popover.component.js +37 -37
- package/esm2015/app/components/acl-roles/acl-roles.component.js +162 -162
- package/esm2015/app/consts/acl-role-accesses.js +7 -7
- package/esm2015/app/enums/acl-role-access.js +7 -7
- package/esm2015/app/fs-app-acl.module.js +123 -123
- package/esm2015/app/injectors/app-acl-config.injector.js +2 -2
- package/esm2015/app/interfaces/acl-entry-data.js +1 -1
- package/esm2015/app/interfaces/acl-entry.js +1 -1
- package/esm2015/app/interfaces/acl-level.js +1 -1
- package/esm2015/app/interfaces/acl-object-entry.js +1 -1
- package/esm2015/app/interfaces/acl-object-role.js +1 -1
- package/esm2015/app/interfaces/acl-object.js +1 -1
- package/esm2015/app/interfaces/acl-permission.js +1 -1
- package/esm2015/app/interfaces/acl-role-config.js +1 -1
- package/esm2015/app/interfaces/acl-role.js +1 -1
- package/esm2015/app/interfaces/app-acl-config.js +1 -1
- package/esm2015/app/interfaces/index.js +2 -2
- package/esm2015/app/interfaces/name-value.js +1 -1
- package/esm2015/app/interfaces/role-config.js +1 -1
- package/esm2015/app/services/app-acl.service.js +50 -50
- package/esm2015/firestitch-app-acl.js +4 -4
- package/esm2015/public_api.js +10 -10
- package/fesm2015/firestitch-app-acl.js +817 -805
- package/fesm2015/firestitch-app-acl.js.map +1 -1
- package/firestitch-app-acl.d.ts +5 -5
- package/package.json +1 -1
- package/public_api.d.ts +20 -20
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
-
import { FsMessage } from '@firestitch/message';
|
|
4
|
-
import { forkJoin } from 'rxjs';
|
|
5
|
-
import { FsAppAclService } from './../../services/app-acl.service';
|
|
6
|
-
import { tap } from 'rxjs/operators';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "./../../services/app-acl.service";
|
|
9
|
-
import * as i2 from "@angular/material/dialog";
|
|
10
|
-
import * as i3 from "@firestitch/message";
|
|
11
|
-
import * as i4 from "@firestitch/dialog";
|
|
12
|
-
import * as i5 from "@firestitch/label";
|
|
13
|
-
import * as i6 from "../acl-object-roles/acl-object-roles.component";
|
|
14
|
-
import * as i7 from "@angular/material/button";
|
|
15
|
-
import * as i8 from "@angular/forms";
|
|
16
|
-
import * as i9 from "@firestitch/form";
|
|
17
|
-
import * as i10 from "@angular/common";
|
|
18
|
-
export class FsAclEntryComponent {
|
|
19
|
-
constructor(_appAclService, _dialogRef, _message, _data) {
|
|
20
|
-
var _a;
|
|
21
|
-
this._appAclService = _appAclService;
|
|
22
|
-
this._dialogRef = _dialogRef;
|
|
23
|
-
this._message = _message;
|
|
24
|
-
this._data = _data;
|
|
25
|
-
this.aclRoles = [];
|
|
26
|
-
this.aclEntries = [];
|
|
27
|
-
this.indexedAclRoleLevels = {};
|
|
28
|
-
this.titleEdit = 'Edit Roles';
|
|
29
|
-
this.titleAdd = 'Assign Roles';
|
|
30
|
-
this.required = true;
|
|
31
|
-
this.save = () => {
|
|
32
|
-
const aclObjectEntry = Object.assign(Object.assign({}, this.aclObjectEntry), { aclEntries: this.aclEntries });
|
|
33
|
-
return this._data.saveAclObjectEntry(aclObjectEntry)
|
|
34
|
-
.pipe(tap((data) => {
|
|
35
|
-
this._message.success('Saved Changes');
|
|
36
|
-
this.close(data);
|
|
37
|
-
}));
|
|
38
|
-
};
|
|
39
|
-
this.aclObjectEntry = Object.assign({}, _data.aclObjectEntry);
|
|
40
|
-
this.required = (_a = _data.required) !== null && _a !== void 0 ? _a : true;
|
|
41
|
-
if (_data.titleEdit) {
|
|
42
|
-
this.titleEdit = _data.titleEdit;
|
|
43
|
-
}
|
|
44
|
-
if (_data.titleAdd) {
|
|
45
|
-
this.titleAdd = _data.titleAdd;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
ngOnInit() {
|
|
49
|
-
forkJoin(this._data.loadAclRoles({
|
|
50
|
-
level: this.aclObjectEntry.level,
|
|
51
|
-
environmentId: this.aclObjectEntry.environmentId || null,
|
|
52
|
-
}), this._appAclService.getIndexedLevels())
|
|
53
|
-
.subscribe(([aclRoles, levels,]) => {
|
|
54
|
-
this.aclRoles = aclRoles;
|
|
55
|
-
this.indexedAclRoleLevels = levels;
|
|
56
|
-
this.aclObjectRole = {
|
|
57
|
-
object: this.aclObjectEntry.object,
|
|
58
|
-
aclRoles: this.aclObjectEntry.aclEntries
|
|
59
|
-
.map((aclEntry) => {
|
|
60
|
-
return aclEntry.aclRole;
|
|
61
|
-
}),
|
|
62
|
-
};
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
aclObjectRoleChange(aclObjectRoles) {
|
|
66
|
-
this.aclEntries = aclObjectRoles.reduce((aclEntries, aclObjectRole) => {
|
|
67
|
-
aclObjectRole.aclRoles.forEach(aclRole => {
|
|
68
|
-
aclEntries.push({
|
|
69
|
-
aclRoleId: aclRole.id,
|
|
70
|
-
aclRole: aclRole,
|
|
71
|
-
objectId: aclObjectRole.object ? aclObjectRole.object.id : null,
|
|
72
|
-
object: aclObjectRole.object || null
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
return aclEntries;
|
|
76
|
-
}, []);
|
|
77
|
-
}
|
|
78
|
-
close(data = null) {
|
|
79
|
-
this._dialogRef.close(data);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
FsAclEntryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclEntryComponent, deps: [{ token: i1.FsAppAclService }, { token: i2.MatDialogRef }, { token: i3.FsMessage }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
-
FsAclEntryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclEntryComponent, selector: "ng-component", ngImport: i0, template: "<form fsForm [submit]=\"save\">\n <fs-dialog>\n <div mat-dialog-title>{{ titleEdit? titleEdit : titleAdd }}</div>\n <mat-dialog-content>\n <div *ngIf=\"aclObjectRole\">\n <fs-label-field *ngIf=\"aclObjectEntry.object\">\n <fs-label>{{indexedAclRoleLevels[aclObjectEntry.level]}}</fs-label>\n {{aclObjectEntry.object.name}}\n </fs-label-field>\n\n <fs-acl-object-roles\n [aclRoles]=\"aclRoles\"\n [aclObjectRoles]=\"[aclObjectRole]\"\n [required]=\"required\"\n (change)=\"aclObjectRoleChange($event)\">\n </fs-acl-object-roles>\n </div>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button type=\"submit\" color=\"primary\">Save</button>\n <button mat-button mat-dialog-close type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: ["::ng-deep .account-roles-autocomplete-panel .mat-option{line-height:normal}::ng-deep .account-roles-autocomplete-panel .mat-option .mat-option-text{display:flex;flex-direction:row;align-items:center}::ng-deep .account-roles-autocomplete-panel .mat-option .mat-option-text fs-badge{margin-right:5px}\n"], components: [{ type: i4.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i5.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i5.FsLabelComponent, selector: "fs-label" }, { type: i6.FsAclObjectRolesComponent, selector: "fs-acl-object-roles", inputs: ["aclRoles", "required", "multiple", "disabled", "aclObjectRoles", "rolesLabel", "levelLabel"], outputs: ["change"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i9.FsSubmitButtonDirective, selector: "button[type=\"submit\"]", inputs: ["name", "dirtySubmit"] }, { type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclEntryComponent, decorators: [{
|
|
85
|
-
type: Component,
|
|
86
|
-
args: [{
|
|
87
|
-
templateUrl: './acl-entry.component.html',
|
|
88
|
-
styleUrls: ['./acl-entry.component.scss'],
|
|
89
|
-
}]
|
|
90
|
-
}], ctorParameters: function () { return [{ type: i1.FsAppAclService }, { type: i2.MatDialogRef }, { type: i3.FsMessage }, { type: undefined, decorators: [{
|
|
91
|
-
type: Inject,
|
|
92
|
-
args: [MAT_DIALOG_DATA]
|
|
93
|
-
}] }]; } });
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { FsMessage } from '@firestitch/message';
|
|
4
|
+
import { forkJoin } from 'rxjs';
|
|
5
|
+
import { FsAppAclService } from './../../services/app-acl.service';
|
|
6
|
+
import { tap } from 'rxjs/operators';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "./../../services/app-acl.service";
|
|
9
|
+
import * as i2 from "@angular/material/dialog";
|
|
10
|
+
import * as i3 from "@firestitch/message";
|
|
11
|
+
import * as i4 from "@firestitch/dialog";
|
|
12
|
+
import * as i5 from "@firestitch/label";
|
|
13
|
+
import * as i6 from "../acl-object-roles/acl-object-roles.component";
|
|
14
|
+
import * as i7 from "@angular/material/button";
|
|
15
|
+
import * as i8 from "@angular/forms";
|
|
16
|
+
import * as i9 from "@firestitch/form";
|
|
17
|
+
import * as i10 from "@angular/common";
|
|
18
|
+
export class FsAclEntryComponent {
|
|
19
|
+
constructor(_appAclService, _dialogRef, _message, _data) {
|
|
20
|
+
var _a;
|
|
21
|
+
this._appAclService = _appAclService;
|
|
22
|
+
this._dialogRef = _dialogRef;
|
|
23
|
+
this._message = _message;
|
|
24
|
+
this._data = _data;
|
|
25
|
+
this.aclRoles = [];
|
|
26
|
+
this.aclEntries = [];
|
|
27
|
+
this.indexedAclRoleLevels = {};
|
|
28
|
+
this.titleEdit = 'Edit Roles';
|
|
29
|
+
this.titleAdd = 'Assign Roles';
|
|
30
|
+
this.required = true;
|
|
31
|
+
this.save = () => {
|
|
32
|
+
const aclObjectEntry = Object.assign(Object.assign({}, this.aclObjectEntry), { aclEntries: this.aclEntries });
|
|
33
|
+
return this._data.saveAclObjectEntry(aclObjectEntry)
|
|
34
|
+
.pipe(tap((data) => {
|
|
35
|
+
this._message.success('Saved Changes');
|
|
36
|
+
this.close(data);
|
|
37
|
+
}));
|
|
38
|
+
};
|
|
39
|
+
this.aclObjectEntry = Object.assign({}, _data.aclObjectEntry);
|
|
40
|
+
this.required = (_a = _data.required) !== null && _a !== void 0 ? _a : true;
|
|
41
|
+
if (_data.titleEdit) {
|
|
42
|
+
this.titleEdit = _data.titleEdit;
|
|
43
|
+
}
|
|
44
|
+
if (_data.titleAdd) {
|
|
45
|
+
this.titleAdd = _data.titleAdd;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
ngOnInit() {
|
|
49
|
+
forkJoin(this._data.loadAclRoles({
|
|
50
|
+
level: this.aclObjectEntry.level,
|
|
51
|
+
environmentId: this.aclObjectEntry.environmentId || null,
|
|
52
|
+
}), this._appAclService.getIndexedLevels())
|
|
53
|
+
.subscribe(([aclRoles, levels,]) => {
|
|
54
|
+
this.aclRoles = aclRoles;
|
|
55
|
+
this.indexedAclRoleLevels = levels;
|
|
56
|
+
this.aclObjectRole = {
|
|
57
|
+
object: this.aclObjectEntry.object,
|
|
58
|
+
aclRoles: this.aclObjectEntry.aclEntries
|
|
59
|
+
.map((aclEntry) => {
|
|
60
|
+
return aclEntry.aclRole;
|
|
61
|
+
}),
|
|
62
|
+
};
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
aclObjectRoleChange(aclObjectRoles) {
|
|
66
|
+
this.aclEntries = aclObjectRoles.reduce((aclEntries, aclObjectRole) => {
|
|
67
|
+
aclObjectRole.aclRoles.forEach(aclRole => {
|
|
68
|
+
aclEntries.push({
|
|
69
|
+
aclRoleId: aclRole.id,
|
|
70
|
+
aclRole: aclRole,
|
|
71
|
+
objectId: aclObjectRole.object ? aclObjectRole.object.id : null,
|
|
72
|
+
object: aclObjectRole.object || null
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
return aclEntries;
|
|
76
|
+
}, []);
|
|
77
|
+
}
|
|
78
|
+
close(data = null) {
|
|
79
|
+
this._dialogRef.close(data);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
FsAclEntryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclEntryComponent, deps: [{ token: i1.FsAppAclService }, { token: i2.MatDialogRef }, { token: i3.FsMessage }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
FsAclEntryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclEntryComponent, selector: "ng-component", ngImport: i0, template: "<form fsForm [submit]=\"save\">\n <fs-dialog>\n <div mat-dialog-title>{{ titleEdit? titleEdit : titleAdd }}</div>\n <mat-dialog-content>\n <div *ngIf=\"aclObjectRole\">\n <fs-label-field *ngIf=\"aclObjectEntry.object\">\n <fs-label>{{indexedAclRoleLevels[aclObjectEntry.level]}}</fs-label>\n {{aclObjectEntry.object.name}}\n </fs-label-field>\n\n <fs-acl-object-roles\n [aclRoles]=\"aclRoles\"\n [aclObjectRoles]=\"[aclObjectRole]\"\n [required]=\"required\"\n (change)=\"aclObjectRoleChange($event)\">\n </fs-acl-object-roles>\n </div>\n </mat-dialog-content>\n <mat-dialog-actions>\n <button mat-button type=\"submit\" color=\"primary\">Save</button>\n <button mat-button mat-dialog-close type=\"button\">Cancel</button>\n </mat-dialog-actions>\n </fs-dialog>\n</form>\n", styles: ["::ng-deep .account-roles-autocomplete-panel .mat-option{line-height:normal}::ng-deep .account-roles-autocomplete-panel .mat-option .mat-option-text{display:flex;flex-direction:row;align-items:center}::ng-deep .account-roles-autocomplete-panel .mat-option .mat-option-text fs-badge{margin-right:5px}\n"], components: [{ type: i4.FsDialogComponent, selector: "fs-dialog", inputs: ["mobileMode"] }, { type: i5.FsLabelFieldComponent, selector: "fs-label-field", inputs: ["bottomMargin", "topMargin", "labelMargin"] }, { type: i5.FsLabelComponent, selector: "fs-label" }, { type: i6.FsAclObjectRolesComponent, selector: "fs-acl-object-roles", inputs: ["aclRoles", "required", "multiple", "disabled", "aclObjectRoles", "rolesLabel", "levelLabel"], outputs: ["change"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"] }, { type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i9.FsSubmitButtonDirective, selector: "button[type=\"submit\"]", inputs: ["name", "dirtySubmit"] }, { type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
|
|
84
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclEntryComponent, decorators: [{
|
|
85
|
+
type: Component,
|
|
86
|
+
args: [{
|
|
87
|
+
templateUrl: './acl-entry.component.html',
|
|
88
|
+
styleUrls: ['./acl-entry.component.scss'],
|
|
89
|
+
}]
|
|
90
|
+
}], ctorParameters: function () { return [{ type: i1.FsAppAclService }, { type: i2.MatDialogRef }, { type: i3.FsMessage }, { type: undefined, decorators: [{
|
|
91
|
+
type: Inject,
|
|
92
|
+
args: [MAT_DIALOG_DATA]
|
|
93
|
+
}] }]; } });
|
|
94
94
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLWVudHJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtZW50cnkvYWNsLWVudHJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtZW50cnkvYWNsLWVudHJ5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWhELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPaEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7O0FBT3JDLE1BQU0sT0FBTyxtQkFBbUI7SUFXOUIsWUFDbUIsY0FBK0IsRUFDL0IsVUFBNkMsRUFDN0MsUUFBbUIsRUFDTSxLQUFtQjs7UUFINUMsbUJBQWMsR0FBZCxjQUFjLENBQWlCO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQW1DO1FBQzdDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDTSxVQUFLLEdBQUwsS0FBSyxDQUFjO1FBYnhELGFBQVEsR0FBYyxFQUFFLENBQUM7UUFHekIsZUFBVSxHQUFlLEVBQUUsQ0FBQztRQUM1Qix5QkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDMUIsY0FBUyxHQUFHLFlBQVksQ0FBQztRQUN6QixhQUFRLEdBQUcsY0FBYyxDQUFDO1FBQzFCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUE2RGhCLFNBQUksR0FBRyxHQUFHLEVBQUU7WUFDakIsTUFBTSxj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Q1QsV0FBVyxFQUFFLDRCQUE0QjtvQkFDekMsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7aUJBQzFDOzswQkFnQkksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBGc01lc3NhZ2UgfSBmcm9tICdAZmlyZXN0aXRjaC9tZXNzYWdlJztcblxuaW1wb3J0IHsgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWNsUm9sZX0gZnJvbSAnLi8uLi8uLi9pbnRlcmZhY2VzL2FjbC1yb2xlJztcbmltcG9ydCB7IEFjbEVudHJ5RGF0YSB9IGZyb20gJy4vLi4vLi4vaW50ZXJmYWNlcy9hY2wtZW50cnktZGF0YSc7XG5pbXBvcnQgeyBBY2xPYmplY3RSb2xlIH0gZnJvbSAnLi8uLi8uLi9pbnRlcmZhY2VzL2FjbC1vYmplY3Qtcm9sZSc7XG5pbXBvcnQgeyBBY2xPYmplY3RFbnRyeSB9IGZyb20gJy4vLi4vLi4vaW50ZXJmYWNlcy9hY2wtb2JqZWN0LWVudHJ5JztcbmltcG9ydCB7IEFjbEVudHJ5IH0gZnJvbSAnLi8uLi8uLi9pbnRlcmZhY2VzL2FjbC1lbnRyeSc7XG5pbXBvcnQgeyBGc0FwcEFjbFNlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL2FwcC1hY2wuc2VydmljZSc7XG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9hY2wtZW50cnkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY2wtZW50cnkuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNBY2xFbnRyeUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIGFjbFJvbGVzOiBBY2xSb2xlW10gPSBbXTtcbiAgcHVibGljIGFjbE9iamVjdEVudHJ5OiBBY2xPYmplY3RFbnRyeTtcbiAgcHVibGljIGFjbE9iamVjdFJvbGU6IEFjbE9iamVjdFJvbGU7XG4gIHB1YmxpYyBhY2xFbnRyaWVzOiBBY2xFbnRyeVtdID0gW107XG4gIHB1YmxpYyBpbmRleGVkQWNsUm9sZUxldmVscyA9IHt9O1xuICBwdWJsaWMgdGl0bGVFZGl0ID0gJ0VkaXQgUm9sZXMnO1xuICBwdWJsaWMgdGl0bGVBZGQgPSAnQXNzaWduIFJvbGVzJztcbiAgcHVibGljIHJlcXVpcmVkID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9hcHBBY2xTZXJ2aWNlOiBGc0FwcEFjbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RnNBY2xFbnRyeUNvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWVzc2FnZTogRnNNZXNzYWdlLFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwcml2YXRlIHJlYWRvbmx5IF9kYXRhOiBBY2xFbnRyeURhdGFcbiAgKSB7XG4gICAgdGhpcy5hY2xPYmplY3RFbnRyeSA9IHsgLi4uX2RhdGEuYWNsT2JqZWN0RW50cnkgfTtcbiAgICB0aGlzLnJlcXVpcmVkID0gX2RhdGEucmVxdWlyZWQgPz8gdHJ1ZTtcblxuICAgIGlmIChfZGF0YS50aXRsZUVkaXQpIHtcbiAgICAgIHRoaXMudGl0bGVFZGl0ID0gX2RhdGEudGl0bGVFZGl0O1xuICAgIH1cblxuICAgIGlmIChfZGF0YS50aXRsZUFkZCkge1xuICAgICAgdGhpcy50aXRsZUFkZCA9IF9kYXRhLnRpdGxlQWRkO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBmb3JrSm9pbihcbiAgICAgIHRoaXMuX2RhdGEubG9hZEFjbFJvbGVzKHtcbiAgICAgICAgbGV2ZWw6IHRoaXMuYWNsT2JqZWN0RW50cnkubGV2ZWwsXG4gICAgICAgIGVudmlyb25tZW50SWQ6IHRoaXMuYWNsT2JqZWN0RW50cnkuZW52aXJvbm1lbnRJZCB8fCBudWxsLFxuICAgICAgfSksXG4gICAgICB0aGlzLl9hcHBBY2xTZXJ2aWNlLmdldEluZGV4ZWRMZXZlbHMoKVxuICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKFtcbiAgICAgICAgYWNsUm9sZXMsXG4gICAgICAgIGxldmVscyxcbiAgICAgIF0pID0+IHtcblxuICAgICAgICB0aGlzLmFjbFJvbGVzID0gYWNsUm9sZXM7XG4gICAgICAgIHRoaXMuaW5kZXhlZEFjbFJvbGVMZXZlbHMgPSBsZXZlbHM7XG5cbiAgICAgICAgdGhpcy5hY2xPYmplY3RSb2xlID0ge1xuICAgICAgICAgIG9iamVjdDogdGhpcy5hY2xPYmplY3RFbnRyeS5vYmplY3QsXG4gICAgICAgICAgYWNsUm9sZXM6IHRoaXMuYWNsT2JqZWN0RW50cnkuYWNsRW50cmllc1xuICAgICAgICAgICAgICAgICAgICAubWFwKChhY2xFbnRyeTogQWNsRW50cnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWNsRW50cnkuYWNsUm9sZTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhY2xPYmplY3RSb2xlQ2hhbmdlKGFjbE9iamVjdFJvbGVzOiBBY2xPYmplY3RSb2xlW10pIHtcbiAgICB0aGlzLmFjbEVudHJpZXMgPSBhY2xPYmplY3RSb2xlcy5yZWR1Y2UoKGFjbEVudHJpZXMsIGFjbE9iamVjdFJvbGUpID0+IHtcbiAgICAgIGFjbE9iamVjdFJvbGUuYWNsUm9sZXMuZm9yRWFjaChhY2xSb2xlID0+IHtcbiAgICAgICAgYWNsRW50cmllcy5wdXNoKHtcbiAgICAgICAgICBhY2xSb2xlSWQ6IGFjbFJvbGUuaWQsXG4gICAgICAgICAgYWNsUm9sZTogYWNsUm9sZSxcbiAgICAgICAgICBvYmplY3RJZDogYWNsT2JqZWN0Um9sZS5vYmplY3QgPyBhY2xPYmplY3RSb2xlLm9iamVjdC5pZCA6IG51bGwsXG4gICAgICAgICAgb2JqZWN0OiBhY2xPYmplY3RSb2xlLm9iamVjdCB8fCBudWxsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBhY2xFbnRyaWVzO1xuICAgIH0sIFtdKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlID0gKCkgPT4ge1xuICAgIGNvbnN0IGFjbE9iamVjdEVudHJ5ID0ge1xuICAgICAgLi4udGhpcy5hY2xPYmplY3RFbnRyeSxcbiAgICAgIGFjbEVudHJpZXM6IHRoaXMuYWNsRW50cmllcyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMuX2RhdGEuc2F2ZUFjbE9iamVjdEVudHJ5KGFjbE9iamVjdEVudHJ5KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoZGF0YSkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2Uuc3VjY2VzcygnU2F2ZWQgQ2hhbmdlcycpO1xuICAgICAgICAgIHRoaXMuY2xvc2UoZGF0YSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKGRhdGEgPSBudWxsKSB7XG4gICAgdGhpcy5fZGlhbG9nUmVmLmNsb3NlKGRhdGEpO1xuICB9XG5cbn1cbiIsIjxmb3JtIGZzRm9ybSBbc3VibWl0XT1cInNhdmVcIj5cbiAgPGZzLWRpYWxvZz5cbiAgICA8ZGl2IG1hdC1kaWFsb2ctdGl0bGU+e3sgdGl0bGVFZGl0PyB0aXRsZUVkaXQgOiB0aXRsZUFkZCB9fTwvZGl2PlxuICAgIDxtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICA8ZGl2ICpuZ0lmPVwiYWNsT2JqZWN0Um9sZVwiPlxuICAgICAgICA8ZnMtbGFiZWwtZmllbGQgKm5nSWY9XCJhY2xPYmplY3RFbnRyeS5vYmplY3RcIj5cbiAgICAgICAgICA8ZnMtbGFiZWw+e3tpbmRleGVkQWNsUm9sZUxldmVsc1thY2xPYmplY3RFbnRyeS5sZXZlbF19fTwvZnMtbGFiZWw+XG4gICAgICAgICAge3thY2xPYmplY3RFbnRyeS5vYmplY3QubmFtZX19XG4gICAgICAgIDwvZnMtbGFiZWwtZmllbGQ+XG5cbiAgICAgICAgPGZzLWFjbC1vYmplY3Qtcm9sZXNcbiAgICAgICAgICBbYWNsUm9sZXNdPVwiYWNsUm9sZXNcIlxuICAgICAgICAgIFthY2xPYmplY3RSb2xlc109XCJbYWNsT2JqZWN0Um9sZV1cIlxuICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJhY2xPYmplY3RSb2xlQ2hhbmdlKCRldmVudClcIj5cbiAgICAgICAgPC9mcy1hY2wtb2JqZWN0LXJvbGVzPlxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG4gICAgPG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY29sb3I9XCJwcmltYXJ5XCI+U2F2ZTwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2UgdHlwZT1cImJ1dHRvblwiPkNhbmNlbDwvYnV0dG9uPlxuICAgIDwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8L2ZzLWRpYWxvZz5cbjwvZm9ybT5cbiJdfQ==
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import { ControlContainer, NgForm } from '@angular/forms';
|
|
2
|
-
import { Component, Input, EventEmitter, Output } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@firestitch/checkboxgroup";
|
|
5
|
-
import * as i2 from "@angular/material/checkbox";
|
|
6
|
-
import * as i3 from "@angular/material/form-field";
|
|
7
|
-
import * as i4 from "@angular/material/select";
|
|
8
|
-
import * as i5 from "@angular/material/core";
|
|
9
|
-
import * as i6 from "@angular/common";
|
|
10
|
-
import * as i7 from "@angular/forms";
|
|
11
|
-
import * as i8 from "@firestitch/form";
|
|
12
|
-
export class FsAclObjectRolesComponent {
|
|
13
|
-
constructor() {
|
|
14
|
-
this.aclRoles = [];
|
|
15
|
-
this.required = false;
|
|
16
|
-
this.multiple = false;
|
|
17
|
-
this.disabled = false;
|
|
18
|
-
this.aclObjectRoles = [];
|
|
19
|
-
this.rolesLabel = 'Roles';
|
|
20
|
-
this.levelLabel = '';
|
|
21
|
-
this.change = new EventEmitter();
|
|
22
|
-
this.compareAclRole = (o1, o2) => {
|
|
23
|
-
return o1 && o2 && o1.id === o2.id;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
changed() {
|
|
27
|
-
this.change.emit(this.aclObjectRoles);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
FsAclObjectRolesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclObjectRolesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
-
FsAclObjectRolesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclObjectRolesComponent, selector: "fs-acl-object-roles", inputs: { aclRoles: "aclRoles", required: "required", multiple: "multiple", disabled: "disabled", aclObjectRoles: "aclObjectRoles", rolesLabel: "rolesLabel", levelLabel: "levelLabel" }, outputs: { change: "change" }, ngImport: i0, template: "<ng-container *ngIf=\"!multiple\">\n <ng-container *ngFor=\"let aclObjectRole of aclObjectRoles\">\n <fs-checkbox-group\n [(ngModel)]=\"aclObjectRole.aclRoles\"\n (ngModelChange)=\"changed()\"\n name=\"roles\"\n [compareWith]=\"compareAclRole\"\n [disabled]=\"disabled\"\n [label]=\"rolesLabel\"\n [fsFormRequired]=\"required\"\n orientation=\"vertical\">\n <mat-checkbox [disabled]=\"disabled\" *ngFor=\"let aclRole of aclRoles\" [value]=\"$any(aclRole)\">\n {{ aclRole.name }}\n </mat-checkbox>\n </fs-checkbox-group>\n </ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"multiple\">\n <table>\n <tr>\n <td>\n <small>{{levelLabel}}</small>\n </td>\n <td>\n <small>{{rolesLabel}}</small>\n </td>\n </tr>\n <tr *ngFor=\"let aclObjectRole of aclObjectRoles\">\n <td>{{aclObjectRole.object.name}}</td>\n <td>\n <mat-form-field class=\"form-field-padless\">\n <mat-select\n [(ngModel)]=\"aclObjectRole.aclRoles\"\n multiple=\"true\"\n [disabled]=\"disabled\"\n [compareWith]=\"compareAclRole\"\n (ngModelChange)=\"changed()\"\n name=\"aclRole_{{ aclObjectRole.object.id }}\">\n <mat-option *ngFor=\"let aclRole of aclRoles\" [value]=\"aclRole\">\n {{ aclRole.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </td>\n </tr>\n </table>\n</ng-container>\n", styles: ["table tr td:first-child{padding-right:15px}\n"], components: [{ type: i1.FsCheckboxGroupComponent, selector: "fs-checkbox-group", inputs: ["orientation", "position", "label", "disabled", "compareWith"], outputs: ["change"] }, { type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclObjectRolesComponent, decorators: [{
|
|
33
|
-
type: Component,
|
|
34
|
-
args: [{
|
|
35
|
-
selector: 'fs-acl-object-roles',
|
|
36
|
-
templateUrl: './acl-object-roles.component.html',
|
|
37
|
-
styleUrls: ['./acl-object-roles.component.scss'],
|
|
38
|
-
viewProviders: [{ provide: ControlContainer, useExisting: NgForm }]
|
|
39
|
-
}]
|
|
40
|
-
}], propDecorators: { aclRoles: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], required: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], multiple: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], disabled: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], aclObjectRoles: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}], rolesLabel: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], levelLabel: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}], change: [{
|
|
55
|
-
type: Output
|
|
56
|
-
}] } });
|
|
1
|
+
import { ControlContainer, NgForm } from '@angular/forms';
|
|
2
|
+
import { Component, Input, EventEmitter, Output } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@firestitch/checkboxgroup";
|
|
5
|
+
import * as i2 from "@angular/material/checkbox";
|
|
6
|
+
import * as i3 from "@angular/material/form-field";
|
|
7
|
+
import * as i4 from "@angular/material/select";
|
|
8
|
+
import * as i5 from "@angular/material/core";
|
|
9
|
+
import * as i6 from "@angular/common";
|
|
10
|
+
import * as i7 from "@angular/forms";
|
|
11
|
+
import * as i8 from "@firestitch/form";
|
|
12
|
+
export class FsAclObjectRolesComponent {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.aclRoles = [];
|
|
15
|
+
this.required = false;
|
|
16
|
+
this.multiple = false;
|
|
17
|
+
this.disabled = false;
|
|
18
|
+
this.aclObjectRoles = [];
|
|
19
|
+
this.rolesLabel = 'Roles';
|
|
20
|
+
this.levelLabel = '';
|
|
21
|
+
this.change = new EventEmitter();
|
|
22
|
+
this.compareAclRole = (o1, o2) => {
|
|
23
|
+
return o1 && o2 && o1.id === o2.id;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
changed() {
|
|
27
|
+
this.change.emit(this.aclObjectRoles);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
FsAclObjectRolesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclObjectRolesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
+
FsAclObjectRolesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclObjectRolesComponent, selector: "fs-acl-object-roles", inputs: { aclRoles: "aclRoles", required: "required", multiple: "multiple", disabled: "disabled", aclObjectRoles: "aclObjectRoles", rolesLabel: "rolesLabel", levelLabel: "levelLabel" }, outputs: { change: "change" }, ngImport: i0, template: "<ng-container *ngIf=\"!multiple\">\n <ng-container *ngFor=\"let aclObjectRole of aclObjectRoles\">\n <fs-checkbox-group\n [(ngModel)]=\"aclObjectRole.aclRoles\"\n (ngModelChange)=\"changed()\"\n name=\"roles\"\n [compareWith]=\"compareAclRole\"\n [disabled]=\"disabled\"\n [label]=\"rolesLabel\"\n [fsFormRequired]=\"required\"\n orientation=\"vertical\">\n <mat-checkbox [disabled]=\"disabled\" *ngFor=\"let aclRole of aclRoles\" [value]=\"$any(aclRole)\">\n {{ aclRole.name }}\n </mat-checkbox>\n </fs-checkbox-group>\n </ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"multiple\">\n <table>\n <tr>\n <td>\n <small>{{levelLabel}}</small>\n </td>\n <td>\n <small>{{rolesLabel}}</small>\n </td>\n </tr>\n <tr *ngFor=\"let aclObjectRole of aclObjectRoles\">\n <td>{{aclObjectRole.object.name}}</td>\n <td>\n <mat-form-field class=\"form-field-padless\">\n <mat-select\n [(ngModel)]=\"aclObjectRole.aclRoles\"\n multiple=\"true\"\n [disabled]=\"disabled\"\n [compareWith]=\"compareAclRole\"\n (ngModelChange)=\"changed()\"\n name=\"aclRole_{{ aclObjectRole.object.id }}\">\n <mat-option *ngFor=\"let aclRole of aclRoles\" [value]=\"aclRole\">\n {{ aclRole.name }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </td>\n </tr>\n </table>\n</ng-container>\n", styles: ["table tr td:first-child{padding-right:15px}\n"], components: [{ type: i1.FsCheckboxGroupComponent, selector: "fs-checkbox-group", inputs: ["orientation", "position", "label", "disabled", "compareWith"], outputs: ["change"] }, { type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclObjectRolesComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{
|
|
35
|
+
selector: 'fs-acl-object-roles',
|
|
36
|
+
templateUrl: './acl-object-roles.component.html',
|
|
37
|
+
styleUrls: ['./acl-object-roles.component.scss'],
|
|
38
|
+
viewProviders: [{ provide: ControlContainer, useExisting: NgForm }]
|
|
39
|
+
}]
|
|
40
|
+
}], propDecorators: { aclRoles: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], required: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], multiple: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], disabled: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], aclObjectRoles: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], rolesLabel: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], levelLabel: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], change: [{
|
|
55
|
+
type: Output
|
|
56
|
+
}] } });
|
|
57
57
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLW9iamVjdC1yb2xlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYWNsLW9iamVjdC1yb2xlcy9hY2wtb2JqZWN0LXJvbGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtb2JqZWN0LXJvbGVzL2FjbC1vYmplY3Qtcm9sZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7QUFZdkUsTUFBTSxPQUFPLHlCQUF5QjtJQU50QztRQVFXLGFBQVEsR0FBYyxFQUFFLENBQUM7UUFDekIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxPQUFPLENBQUM7UUFDckIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUVoRCxtQkFBYyxHQUFHLENBQUMsRUFBTyxFQUFFLEVBQU8sRUFBRSxFQUFFO1lBQzNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUFBO0tBS0Y7SUFIUSxPQUFPO1FBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7O3VIQWpCVSx5QkFBeUI7MkdBQXpCLHlCQUF5QixvUkNidEMsMC9DQWdEQSxnaUREckNpQixDQUFFLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBRTs0RkFFMUQseUJBQXlCO2tCQU5yQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFdBQVcsRUFBRSxtQ0FBbUM7b0JBQ2hELFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO29CQUNoRCxhQUFhLEVBQUUsQ0FBRSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUU7aUJBQ3RFOzhCQUdVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQWNsT2JqZWN0Um9sZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYWNsLW9iamVjdC1yb2xlJztcbmltcG9ydCB7IEFjbFJvbGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FjbC1yb2xlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1hY2wtb2JqZWN0LXJvbGVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjbC1vYmplY3Qtcm9sZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY2wtb2JqZWN0LXJvbGVzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHZpZXdQcm92aWRlcnM6IFsgeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogTmdGb3JtIH0gXVxufSlcbmV4cG9ydCBjbGFzcyBGc0FjbE9iamVjdFJvbGVzQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBhY2xSb2xlczogQWNsUm9sZVtdID0gW107XG4gIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGFjbE9iamVjdFJvbGVzOiBBY2xPYmplY3RSb2xlW10gPSBbXTtcbiAgQElucHV0KCkgcm9sZXNMYWJlbCA9ICdSb2xlcyc7XG4gIEBJbnB1dCgpIGxldmVsTGFiZWwgPSAnJztcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8QWNsT2JqZWN0Um9sZVtdPigpO1xuXG4gIHB1YmxpYyBjb21wYXJlQWNsUm9sZSA9IChvMTogYW55LCBvMjogYW55KSA9PiB7XG4gICAgcmV0dXJuIG8xICYmIG8yICYmIG8xLmlkID09PSBvMi5pZDtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VkKCkge1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy5hY2xPYmplY3RSb2xlcyk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhbXVsdGlwbGVcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWNsT2JqZWN0Um9sZSBvZiBhY2xPYmplY3RSb2xlc1wiPlxuICAgIDxmcy1jaGVja2JveC1ncm91cFxuICAgICAgWyhuZ01vZGVsKV09XCJhY2xPYmplY3RSb2xlLmFjbFJvbGVzXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZWQoKVwiXG4gICAgICBuYW1lPVwicm9sZXNcIlxuICAgICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVBY2xSb2xlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbbGFiZWxdPVwicm9sZXNMYWJlbFwiXG4gICAgICBbZnNGb3JtUmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgb3JpZW50YXRpb249XCJ2ZXJ0aWNhbFwiPlxuICAgICAgPG1hdC1jaGVja2JveCBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAqbmdGb3I9XCJsZXQgYWNsUm9sZSBvZiBhY2xSb2xlc1wiIFt2YWx1ZV09XCIkYW55KGFjbFJvbGUpXCI+XG4gICAgICAgIHt7IGFjbFJvbGUubmFtZSB9fVxuICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgPC9mcy1jaGVja2JveC1ncm91cD5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIm11bHRpcGxlXCI+XG4gIDx0YWJsZT5cbiAgICA8dHI+XG4gICAgICA8dGQ+XG4gICAgICAgIDxzbWFsbD57e2xldmVsTGFiZWx9fTwvc21hbGw+XG4gICAgICA8L3RkPlxuICAgICAgPHRkPlxuICAgICAgICA8c21hbGw+e3tyb2xlc0xhYmVsfX08L3NtYWxsPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDx0ciAqbmdGb3I9XCJsZXQgYWNsT2JqZWN0Um9sZSBvZiBhY2xPYmplY3RSb2xlc1wiPlxuICAgICAgPHRkPnt7YWNsT2JqZWN0Um9sZS5vYmplY3QubmFtZX19PC90ZD5cbiAgICAgIDx0ZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS1maWVsZC1wYWRsZXNzXCI+XG4gICAgICAgICAgPG1hdC1zZWxlY3RcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYWNsT2JqZWN0Um9sZS5hY2xSb2xlc1wiXG4gICAgICAgICAgICBtdWx0aXBsZT1cInRydWVcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlQWNsUm9sZVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIlxuICAgICAgICAgICAgbmFtZT1cImFjbFJvbGVfe3sgYWNsT2JqZWN0Um9sZS5vYmplY3QuaWQgfX1cIj5cbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBhY2xSb2xlIG9mIGFjbFJvbGVzXCIgW3ZhbHVlXT1cImFjbFJvbGVcIj5cbiAgICAgICAgICAgICAge3sgYWNsUm9sZS5uYW1lIH19XG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICA8L3RhYmxlPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { FsAppAclService } from './../../services/app-acl.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./../../services/app-acl.service";
|
|
5
|
-
import * as i2 from "@firestitch/popover";
|
|
6
|
-
export class FsAclPermissionPopoverComponent {
|
|
7
|
-
constructor(_appAclService) {
|
|
8
|
-
this._appAclService = _appAclService;
|
|
9
|
-
}
|
|
10
|
-
ngOnInit() {
|
|
11
|
-
this._appAclService.getPermissions()
|
|
12
|
-
.subscribe(permissions => {
|
|
13
|
-
this.description = permissions.filter(item => {
|
|
14
|
-
return item.value === this.permission.value;
|
|
15
|
-
}).map(item => {
|
|
16
|
-
return item.description;
|
|
17
|
-
})[0];
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
FsAclPermissionPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclPermissionPopoverComponent, deps: [{ token: i1.FsAppAclService }], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
-
FsAclPermissionPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclPermissionPopoverComponent, selector: "acl-permission-popover", inputs: { permission: "permission" }, ngImport: i0, template: "\n<fs-popover [template]=\"popover\" [maxWidth]=\"400\">\n <ng-content></ng-content>\n</fs-popover>\n\n<ng-template #popover>\n {{permission.name}}\n <div class=\"small\">{{description}}</div>\n</ng-template>\n\n", styles: [":host{cursor:pointer}\n"], components: [{ type: i2.FsPopoverComponent, selector: "fs-popover", inputs: ["template", "data", "leaveDelay", "showDelay", "maxWidth", "wrapperClass", "autoShow", "autoClose", "loadingDiameter", "loading", "indication", "position", "theme", "size", "trigger"] }] });
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclPermissionPopoverComponent, decorators: [{
|
|
24
|
-
type: Component,
|
|
25
|
-
args: [{
|
|
26
|
-
selector: 'acl-permission-popover',
|
|
27
|
-
templateUrl: './acl-permission-popover.component.html',
|
|
28
|
-
styleUrls: ['./acl-permission-popover.component.scss']
|
|
29
|
-
}]
|
|
30
|
-
}], ctorParameters: function () { return [{ type: i1.FsAppAclService }]; }, propDecorators: { permission: [{
|
|
31
|
-
type: Input
|
|
32
|
-
}] } });
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { FsAppAclService } from './../../services/app-acl.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./../../services/app-acl.service";
|
|
5
|
+
import * as i2 from "@firestitch/popover";
|
|
6
|
+
export class FsAclPermissionPopoverComponent {
|
|
7
|
+
constructor(_appAclService) {
|
|
8
|
+
this._appAclService = _appAclService;
|
|
9
|
+
}
|
|
10
|
+
ngOnInit() {
|
|
11
|
+
this._appAclService.getPermissions()
|
|
12
|
+
.subscribe(permissions => {
|
|
13
|
+
this.description = permissions.filter(item => {
|
|
14
|
+
return item.value === this.permission.value;
|
|
15
|
+
}).map(item => {
|
|
16
|
+
return item.description;
|
|
17
|
+
})[0];
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
FsAclPermissionPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclPermissionPopoverComponent, deps: [{ token: i1.FsAppAclService }], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
+
FsAclPermissionPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FsAclPermissionPopoverComponent, selector: "acl-permission-popover", inputs: { permission: "permission" }, ngImport: i0, template: "\n<fs-popover [template]=\"popover\" [maxWidth]=\"400\">\n <ng-content></ng-content>\n</fs-popover>\n\n<ng-template #popover>\n {{permission.name}}\n <div class=\"small\">{{description}}</div>\n</ng-template>\n\n", styles: [":host{cursor:pointer}\n"], components: [{ type: i2.FsPopoverComponent, selector: "fs-popover", inputs: ["template", "data", "leaveDelay", "showDelay", "maxWidth", "wrapperClass", "autoShow", "autoClose", "loadingDiameter", "loading", "indication", "position", "theme", "size", "trigger"] }] });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FsAclPermissionPopoverComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{
|
|
26
|
+
selector: 'acl-permission-popover',
|
|
27
|
+
templateUrl: './acl-permission-popover.component.html',
|
|
28
|
+
styleUrls: ['./acl-permission-popover.component.scss']
|
|
29
|
+
}]
|
|
30
|
+
}], ctorParameters: function () { return [{ type: i1.FsAppAclService }]; }, propDecorators: { permission: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}] } });
|
|
33
33
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLXBlcm1pc3Npb24tcG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYWNsLXBlcm1pc3Npb24tcG9wb3Zlci9hY2wtcGVybWlzc2lvbi1wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtcGVybWlzc2lvbi1wb3BvdmVyL2FjbC1wZXJtaXNzaW9uLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7O0FBT25FLE1BQU0sT0FBTywrQkFBK0I7SUFNMUMsWUFDVSxjQUErQjtRQUEvQixtQkFBYyxHQUFkLGNBQWMsQ0FBaUI7SUFDckMsQ0FBQztJQUVFLFFBQVE7UUFDYixJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRTthQUNuQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMzQyxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUMxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNSLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkhBbkJVLCtCQUErQjtpSEFBL0IsK0JBQStCLG9HQ1I1Qyx5TkFVQTs0RkRGYSwrQkFBK0I7a0JBTDNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsV0FBVyxFQUFFLHlDQUF5QztvQkFDdEQsU0FBUyxFQUFFLENBQUMseUNBQXlDLENBQUM7aUJBQ3ZEO3NHQUdVLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnNBcHBBY2xTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9hcHAtYWNsLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtcGVybWlzc2lvbi1wb3BvdmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjbC1wZXJtaXNzaW9uLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY2wtcGVybWlzc2lvbi1wb3BvdmVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRnNBY2xQZXJtaXNzaW9uUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgcGVybWlzc2lvbjtcblxuICBwdWJsaWMgZGVzY3JpcHRpb247XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2FwcEFjbFNlcnZpY2U6IEZzQXBwQWNsU2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9hcHBBY2xTZXJ2aWNlLmdldFBlcm1pc3Npb25zKClcbiAgICAuc3Vic2NyaWJlKHBlcm1pc3Npb25zID0+IHtcbiAgICAgIHRoaXMuZGVzY3JpcHRpb24gPSBwZXJtaXNzaW9ucy5maWx0ZXIoaXRlbSA9PiB7XG4gICAgICAgIHJldHVybiBpdGVtLnZhbHVlID09PSB0aGlzLnBlcm1pc3Npb24udmFsdWU7XG4gICAgICB9KS5tYXAoaXRlbSA9PiB7XG4gICAgICAgIHJldHVybiBpdGVtLmRlc2NyaXB0aW9uO1xuICAgICAgfSlbMF07XG4gICAgfSk7XG4gIH1cbn1cbiIsIlxuPGZzLXBvcG92ZXIgW3RlbXBsYXRlXT1cInBvcG92ZXJcIiBbbWF4V2lkdGhdPVwiNDAwXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZnMtcG9wb3Zlcj5cblxuPG5nLXRlbXBsYXRlICNwb3BvdmVyPlxuICB7e3Blcm1pc3Npb24ubmFtZX19XG4gIDxkaXYgY2xhc3M9XCJzbWFsbFwiPnt7ZGVzY3JpcHRpb259fTwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuIl19
|