@firestitch/app-acl 18.0.4 → 18.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/components/acl-entries/acl-entries.component.d.ts +1 -5
- package/app/components/acl-entry/acl-entry.component.d.ts +9 -13
- package/app/components/acl-object-roles/acl-object-roles.component.d.ts +1 -1
- package/app/components/acl-permission-popover/acl-permission-popover.component.d.ts +1 -3
- package/app/components/acl-role/acl-role.component.d.ts +5 -9
- package/app/components/acl-role-popover/acl-role-popover.component.d.ts +1 -3
- package/app/components/acl-roles/acl-roles.component.d.ts +4 -7
- package/app/pipes/acl-role-permission-available.pipe.d.ts +1 -1
- package/app/pipes/bulk-options-filter.pipe.d.ts +1 -1
- package/app/services/app-acl.service.d.ts +5 -7
- package/esm2022/app/components/acl-entries/acl-entries.component.mjs +14 -22
- package/esm2022/app/components/acl-entry/acl-entry.component.mjs +39 -32
- package/esm2022/app/components/acl-object-roles/acl-object-roles.component.mjs +12 -11
- package/esm2022/app/components/acl-permission-popover/acl-permission-popover.component.mjs +9 -12
- package/esm2022/app/components/acl-role/acl-role.component.mjs +64 -48
- package/esm2022/app/components/acl-role-popover/acl-role-popover.component.mjs +9 -13
- package/esm2022/app/components/acl-roles/acl-roles.component.mjs +18 -25
- package/esm2022/app/interfaces/app-acl-config.mjs +1 -1
- package/esm2022/app/pipes/acl-role-permission-available.pipe.mjs +4 -3
- package/esm2022/app/pipes/bulk-options-filter.pipe.mjs +4 -3
- package/esm2022/app/services/app-acl.service.mjs +8 -25
- package/esm2022/public_api.mjs +1 -2
- package/fesm2022/firestitch-app-acl.mjs +166 -282
- package/fesm2022/firestitch-app-acl.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +0 -1
- package/app/fs-app-acl.module.d.ts +0 -33
- package/app/pipes/index.d.ts +0 -2
- package/esm2022/app/fs-app-acl.module.mjs +0 -127
- package/esm2022/app/pipes/index.mjs +0 -3
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { ControlContainer, NgForm } from '@angular/forms';
|
|
1
|
+
import { ControlContainer, NgForm, FormsModule } from '@angular/forms';
|
|
2
2
|
import { Component, Input, EventEmitter, Output } from '@angular/core';
|
|
3
|
+
import { FsCheckboxGroupModule } from '@firestitch/checkboxgroup';
|
|
4
|
+
import { FsFormModule } from '@firestitch/form';
|
|
5
|
+
import { MatCheckbox } from '@angular/material/checkbox';
|
|
6
|
+
import { MatFormField } from '@angular/material/form-field';
|
|
7
|
+
import { MatSelect } from '@angular/material/select';
|
|
8
|
+
import { MatOption } from '@angular/material/core';
|
|
3
9
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@
|
|
10
|
+
import * as i1 from "@firestitch/checkboxgroup";
|
|
5
11
|
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "@
|
|
7
|
-
import * as i4 from "@angular/material/checkbox";
|
|
8
|
-
import * as i5 from "@angular/material/select";
|
|
9
|
-
import * as i6 from "@angular/material/core";
|
|
10
|
-
import * as i7 from "@firestitch/form";
|
|
11
|
-
import * as i8 from "@firestitch/checkboxgroup";
|
|
12
|
+
import * as i3 from "@firestitch/form";
|
|
12
13
|
export class FsAclObjectRolesComponent {
|
|
13
14
|
aclRoles = [];
|
|
14
15
|
required = false;
|
|
@@ -25,11 +26,11 @@ export class FsAclObjectRolesComponent {
|
|
|
25
26
|
this.change.emit(this.aclObjectRoles);
|
|
26
27
|
}
|
|
27
28
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAclObjectRolesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
29
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsAclObjectRolesComponent, isStandalone: true, 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: "@if (!multiple) {\n @for (aclObjectRole of aclObjectRoles; track aclObjectRole) {\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 @for (aclRole of aclRoles; track aclRole) {\n <mat-checkbox [disabled]=\"disabled\" [value]=\"$any(aclRole)\">\n {{ aclRole.name }}\n </mat-checkbox>\n }\n </fs-checkbox-group>\n }\n}\n\n@if (multiple) {\n <table>\n <tr>\n <td>\n <small>{{levelLabel}}</small>\n </td>\n <td>\n <small>{{rolesLabel}}</small>\n </td>\n </tr>\n @for (aclObjectRole of aclObjectRoles; track aclObjectRole) {\n <tr>\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 @for (aclRole of aclRoles; track aclRole) {\n <mat-option [value]=\"aclRole\">\n {{ aclRole.name }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </td>\n </tr>\n }\n </table>\n}\n", styles: ["table tr td:first-child{padding-right:15px}\n"], dependencies: [{ kind: "ngmodule", type: FsCheckboxGroupModule }, { kind: "component", type: i1.FsCheckboxGroupComponent, selector: "fs-checkbox-group", inputs: ["orientation", "position", "label", "disabled", "compareWith"], outputs: ["change"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i3.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { kind: "directive", type: i3.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { kind: "component", type: MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: 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: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }], viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] });
|
|
29
30
|
}
|
|
30
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAclObjectRolesComponent, decorators: [{
|
|
31
32
|
type: Component,
|
|
32
|
-
args: [{ selector: 'fs-acl-object-roles', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], template: "
|
|
33
|
+
args: [{ selector: 'fs-acl-object-roles', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], standalone: true, imports: [FsCheckboxGroupModule, FormsModule, FsFormModule, MatCheckbox, MatFormField, MatSelect, MatOption], template: "@if (!multiple) {\n @for (aclObjectRole of aclObjectRoles; track aclObjectRole) {\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 @for (aclRole of aclRoles; track aclRole) {\n <mat-checkbox [disabled]=\"disabled\" [value]=\"$any(aclRole)\">\n {{ aclRole.name }}\n </mat-checkbox>\n }\n </fs-checkbox-group>\n }\n}\n\n@if (multiple) {\n <table>\n <tr>\n <td>\n <small>{{levelLabel}}</small>\n </td>\n <td>\n <small>{{rolesLabel}}</small>\n </td>\n </tr>\n @for (aclObjectRole of aclObjectRoles; track aclObjectRole) {\n <tr>\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 @for (aclRole of aclRoles; track aclRole) {\n <mat-option [value]=\"aclRole\">\n {{ aclRole.name }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </td>\n </tr>\n }\n </table>\n}\n", styles: ["table tr td:first-child{padding-right:15px}\n"] }]
|
|
33
34
|
}], propDecorators: { aclRoles: [{
|
|
34
35
|
type: Input
|
|
35
36
|
}], required: [{
|
|
@@ -47,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
47
48
|
}], change: [{
|
|
48
49
|
type: Output
|
|
49
50
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLW9iamVjdC1yb2xlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYWNsLW9iamVjdC1yb2xlcy9hY2wtb2JqZWN0LXJvbGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtb2JqZWN0LXJvbGVzL2FjbC1vYmplY3Qtcm9sZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSXZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBV25ELE1BQU0sT0FBTyx5QkFBeUI7SUFFM0IsUUFBUSxHQUFjLEVBQUUsQ0FBQztJQUN6QixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixjQUFjLEdBQW9CLEVBQUUsQ0FBQztJQUNyQyxVQUFVLEdBQUcsT0FBTyxDQUFDO0lBQ3JCLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDZixNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7SUFFaEQsY0FBYyxHQUFHLENBQUMsRUFBTyxFQUFFLEVBQU8sRUFBRSxFQUFFO1FBQzNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDckMsQ0FBQyxDQUFBO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QyxDQUFDO3VHQWpCVSx5QkFBeUI7MkZBQXpCLHlCQUF5Qix3U0NyQnRDLDJqREFzREEsc0dEbkNjLHFCQUFxQixxTkFBRSxXQUFXLDhWQUFFLFlBQVksc3JCQUFFLFdBQVcsd1ZBQUUsWUFBWSw0TEFBRSxTQUFTLHdlQUFFLFNBQVMsMElBRjVGLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDOzsyRkFJMUQseUJBQXlCO2tCQVJyQyxTQUFTOytCQUNJLHFCQUFxQixpQkFHaEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUMsY0FDdkQsSUFBSSxXQUNQLENBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7OEJBSXJHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbENvbnRhaW5lciwgTmdGb3JtLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFjbE9iamVjdFJvbGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2FjbC1vYmplY3Qtcm9sZSc7XG5pbXBvcnQgeyBBY2xSb2xlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hY2wtcm9sZSc7XG5pbXBvcnQgeyBGc0NoZWNrYm94R3JvdXBNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9jaGVja2JveGdyb3VwJztcbmltcG9ydCB7IEZzRm9ybU1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL2Zvcm0nO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3ggfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdFNlbGVjdCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRPcHRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZzLWFjbC1vYmplY3Qtcm9sZXMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY2wtb2JqZWN0LXJvbGVzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hY2wtb2JqZWN0LXJvbGVzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtGc0NoZWNrYm94R3JvdXBNb2R1bGUsIEZvcm1zTW9kdWxlLCBGc0Zvcm1Nb2R1bGUsIE1hdENoZWNrYm94LCBNYXRGb3JtRmllbGQsIE1hdFNlbGVjdCwgTWF0T3B0aW9uXVxufSlcbmV4cG9ydCBjbGFzcyBGc0FjbE9iamVjdFJvbGVzQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBhY2xSb2xlczogQWNsUm9sZVtdID0gW107XG4gIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGFjbE9iamVjdFJvbGVzOiBBY2xPYmplY3RSb2xlW10gPSBbXTtcbiAgQElucHV0KCkgcm9sZXNMYWJlbCA9ICdSb2xlcyc7XG4gIEBJbnB1dCgpIGxldmVsTGFiZWwgPSAnJztcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8QWNsT2JqZWN0Um9sZVtdPigpO1xuXG4gIHB1YmxpYyBjb21wYXJlQWNsUm9sZSA9IChvMTogYW55LCBvMjogYW55KSA9PiB7XG4gICAgcmV0dXJuIG8xICYmIG8yICYmIG8xLmlkID09PSBvMi5pZDtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VkKCkge1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy5hY2xPYmplY3RSb2xlcyk7XG4gIH1cbn1cbiIsIkBpZiAoIW11bHRpcGxlKSB7XG4gIEBmb3IgKGFjbE9iamVjdFJvbGUgb2YgYWNsT2JqZWN0Um9sZXM7IHRyYWNrIGFjbE9iamVjdFJvbGUpIHtcbiAgICA8ZnMtY2hlY2tib3gtZ3JvdXBcbiAgICAgIFsobmdNb2RlbCldPVwiYWNsT2JqZWN0Um9sZS5hY2xSb2xlc1wiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIlxuICAgICAgbmFtZT1cInJvbGVzXCJcbiAgICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlQWNsUm9sZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2xhYmVsXT1cInJvbGVzTGFiZWxcIlxuICAgICAgW2ZzRm9ybVJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIG9yaWVudGF0aW9uPVwidmVydGljYWxcIj5cbiAgICAgIEBmb3IgKGFjbFJvbGUgb2YgYWNsUm9sZXM7IHRyYWNrIGFjbFJvbGUpIHtcbiAgICAgICAgPG1hdC1jaGVja2JveCBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdmFsdWVdPVwiJGFueShhY2xSb2xlKVwiPlxuICAgICAgICAgIHt7IGFjbFJvbGUubmFtZSB9fVxuICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgIH1cbiAgICA8L2ZzLWNoZWNrYm94LWdyb3VwPlxuICB9XG59XG5cbkBpZiAobXVsdGlwbGUpIHtcbiAgPHRhYmxlPlxuICAgIDx0cj5cbiAgICAgIDx0ZD5cbiAgICAgICAgPHNtYWxsPnt7bGV2ZWxMYWJlbH19PC9zbWFsbD5cbiAgICAgIDwvdGQ+XG4gICAgICA8dGQ+XG4gICAgICAgIDxzbWFsbD57e3JvbGVzTGFiZWx9fTwvc21hbGw+XG4gICAgICA8L3RkPlxuICAgIDwvdHI+XG4gICAgQGZvciAoYWNsT2JqZWN0Um9sZSBvZiBhY2xPYmplY3RSb2xlczsgdHJhY2sgYWNsT2JqZWN0Um9sZSkge1xuICAgICAgPHRyPlxuICAgICAgICA8dGQ+e3thY2xPYmplY3RSb2xlLm9iamVjdC5uYW1lfX08L3RkPlxuICAgICAgICA8dGQ+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZm9ybS1maWVsZC1wYWRsZXNzXCI+XG4gICAgICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImFjbE9iamVjdFJvbGUuYWNsUm9sZXNcIlxuICAgICAgICAgICAgICBtdWx0aXBsZT1cInRydWVcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICBbY29tcGFyZVdpdGhdPVwiY29tcGFyZUFjbFJvbGVcIlxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIlxuICAgICAgICAgICAgICBuYW1lPVwiYWNsUm9sZV97eyBhY2xPYmplY3RSb2xlLm9iamVjdC5pZCB9fVwiPlxuICAgICAgICAgICAgICBAZm9yIChhY2xSb2xlIG9mIGFjbFJvbGVzOyB0cmFjayBhY2xSb2xlKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImFjbFJvbGVcIj5cbiAgICAgICAgICAgICAgICAgIHt7IGFjbFJvbGUubmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L3RyPlxuICAgIH1cbiAgPC90YWJsZT5cbn1cbiJdfQ==
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
1
|
+
import { Component, Input, inject } from '@angular/core';
|
|
2
2
|
import { FsAppAclService } from './../../services/app-acl.service';
|
|
3
|
+
import { FsPopoverModule } from '@firestitch/popover';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
5
|
-
import * as i2 from "@firestitch/popover";
|
|
5
|
+
import * as i1 from "@firestitch/popover";
|
|
6
6
|
export class FsAclPermissionPopoverComponent {
|
|
7
|
-
_appAclService;
|
|
7
|
+
_appAclService = inject(FsAppAclService);
|
|
8
8
|
permission;
|
|
9
9
|
description;
|
|
10
|
-
constructor(_appAclService) {
|
|
11
|
-
this._appAclService = _appAclService;
|
|
12
|
-
}
|
|
13
10
|
ngOnInit() {
|
|
14
11
|
this._appAclService.getPermissions()
|
|
15
12
|
.subscribe(permissions => {
|
|
@@ -20,13 +17,13 @@ export class FsAclPermissionPopoverComponent {
|
|
|
20
17
|
})[0];
|
|
21
18
|
});
|
|
22
19
|
}
|
|
23
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAclPermissionPopoverComponent, deps: [
|
|
24
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", 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"], dependencies: [{ kind: "component", type:
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAclPermissionPopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: FsAclPermissionPopoverComponent, isStandalone: true, 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"], dependencies: [{ kind: "ngmodule", type: FsPopoverModule }, { kind: "component", type: i1.FsPopoverComponent, selector: "fs-popover" }] });
|
|
25
22
|
}
|
|
26
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsAclPermissionPopoverComponent, decorators: [{
|
|
27
24
|
type: Component,
|
|
28
|
-
args: [{ selector: 'acl-permission-popover', 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"] }]
|
|
29
|
-
}],
|
|
25
|
+
args: [{ selector: 'acl-permission-popover', standalone: true, imports: [FsPopoverModule], 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"] }]
|
|
26
|
+
}], propDecorators: { permission: [{
|
|
30
27
|
type: Input
|
|
31
28
|
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLXBlcm1pc3Npb24tcG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvYWNsLXBlcm1pc3Npb24tcG9wb3Zlci9hY2wtcGVybWlzc2lvbi1wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9hY2wtcGVybWlzc2lvbi1wb3BvdmVyL2FjbC1wZXJtaXNzaW9uLXBvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQVN0RCxNQUFNLE9BQU8sK0JBQStCO0lBQ2xDLGNBQWMsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFHeEMsVUFBVSxDQUFDO0lBRWIsV0FBVyxDQUFDO0lBRVosUUFBUTtRQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxFQUFFO2FBQ25DLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzNDLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztZQUM5QyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQzFCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQWpCVSwrQkFBK0I7MkZBQS9CLCtCQUErQix3SENYNUMseU5BVUEsZ0ZERGMsZUFBZTs7MkZBRWhCLCtCQUErQjtrQkFQM0MsU0FBUzsrQkFDSSx3QkFBd0IsY0FHdEIsSUFBSSxXQUNQLENBQUMsZUFBZSxDQUFDOzhCQU1uQixVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZzQXBwQWNsU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvYXBwLWFjbC5zZXJ2aWNlJztcbmltcG9ydCB7IEZzUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3BvcG92ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FjbC1wZXJtaXNzaW9uLXBvcG92ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY2wtcGVybWlzc2lvbi1wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hY2wtcGVybWlzc2lvbi1wb3BvdmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRnNQb3BvdmVyTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBGc0FjbFBlcm1pc3Npb25Qb3BvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBfYXBwQWNsU2VydmljZSA9IGluamVjdChGc0FwcEFjbFNlcnZpY2UpO1xuXG5cbiAgQElucHV0KCkgcGVybWlzc2lvbjtcblxuICBwdWJsaWMgZGVzY3JpcHRpb247XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX2FwcEFjbFNlcnZpY2UuZ2V0UGVybWlzc2lvbnMoKVxuICAgIC5zdWJzY3JpYmUocGVybWlzc2lvbnMgPT4ge1xuICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IHBlcm1pc3Npb25zLmZpbHRlcihpdGVtID0+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW0udmFsdWUgPT09IHRoaXMucGVybWlzc2lvbi52YWx1ZTtcbiAgICAgIH0pLm1hcChpdGVtID0+IHtcbiAgICAgICAgcmV0dXJuIGl0ZW0uZGVzY3JpcHRpb247XG4gICAgICB9KVswXTtcbiAgICB9KTtcbiAgfVxufVxuIiwiXG48ZnMtcG9wb3ZlciBbdGVtcGxhdGVdPVwicG9wb3ZlclwiIFttYXhXaWR0aF09XCI0MDBcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9mcy1wb3BvdmVyPlxuXG48bmctdGVtcGxhdGUgI3BvcG92ZXI+XG4gIHt7cGVybWlzc2lvbi5uYW1lfX1cbiAgPGRpdiBjbGFzcz1cInNtYWxsXCI+e3tkZXNjcmlwdGlvbn19PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=
|