@abp/ng.identity 7.2.2 → 7.3.0-rc.1
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/config/enums/index.d.ts +2 -2
- package/config/enums/policy-names.d.ts +5 -5
- package/config/enums/route-names.d.ts +5 -5
- package/config/identity-config.module.d.ts +8 -8
- package/config/index.d.ts +5 -5
- package/config/providers/index.d.ts +1 -1
- package/config/providers/route.provider.d.ts +8 -8
- package/config/public-api.d.ts +3 -3
- package/{esm2020 → esm2022}/abp-ng.identity.mjs +4 -4
- package/{esm2020 → esm2022}/config/abp-ng.identity-config.mjs +4 -4
- package/{esm2020 → esm2022}/config/enums/index.mjs +2 -2
- package/{esm2020 → esm2022}/config/enums/policy-names.mjs +1 -1
- package/{esm2020 → esm2022}/config/enums/route-names.mjs +1 -1
- package/esm2022/config/identity-config.module.mjs +19 -0
- package/{esm2020 → esm2022}/config/providers/index.mjs +1 -1
- package/{esm2020 → esm2022}/config/providers/route.provider.mjs +34 -34
- package/{esm2020 → esm2022}/config/public-api.mjs +3 -3
- package/{esm2020 → esm2022}/lib/components/index.mjs +2 -2
- package/esm2022/lib/components/roles/roles.component.mjs +112 -0
- package/esm2022/lib/components/users/users.component.mjs +151 -0
- package/{esm2020 → esm2022}/lib/defaults/default-roles-entity-actions.mjs +29 -29
- package/{esm2020 → esm2022}/lib/defaults/default-roles-entity-props.mjs +23 -23
- package/{esm2020 → esm2022}/lib/defaults/default-roles-form-props.mjs +27 -27
- package/{esm2020 → esm2022}/lib/defaults/default-roles-toolbar-actions.mjs +13 -13
- package/{esm2020 → esm2022}/lib/defaults/default-users-entity-actions.mjs +35 -35
- package/{esm2020 → esm2022}/lib/defaults/default-users-entity-props.mjs +33 -33
- package/{esm2020 → esm2022}/lib/defaults/default-users-form-props.mjs +71 -71
- package/{esm2020 → esm2022}/lib/defaults/default-users-toolbar-actions.mjs +13 -13
- package/{esm2020 → esm2022}/lib/enums/components.mjs +1 -1
- package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
- package/esm2022/lib/guards/extensions.guard.mjs +37 -0
- package/{esm2020 → esm2022}/lib/guards/index.mjs +1 -1
- package/esm2022/lib/identity-routing.module.mjs +54 -0
- package/esm2022/lib/identity.module.mjs +86 -0
- package/{esm2020 → esm2022}/lib/models/config-options.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/tokens/extensions.token.mjs +34 -34
- package/{esm2020 → esm2022}/lib/tokens/index.mjs +1 -1
- package/{esm2020 → esm2022}/proxy/abp-ng.identity-proxy.mjs +4 -4
- package/{esm2020 → esm2022}/proxy/lib/index.mjs +2 -2
- package/esm2022/proxy/lib/proxy/identity/identity-role.service.mjs +47 -0
- package/esm2022/proxy/lib/proxy/identity/identity-user-lookup.service.mjs +38 -0
- package/esm2022/proxy/lib/proxy/identity/identity-user.service.mjs +64 -0
- package/{esm2020 → esm2022}/proxy/lib/proxy/identity/index.mjs +4 -4
- package/{esm2020 → esm2022}/proxy/lib/proxy/identity/models.mjs +1 -1
- package/{esm2020 → esm2022}/proxy/lib/proxy/users/index.mjs +1 -1
- package/{esm2020 → esm2022}/proxy/lib/proxy/users/models.mjs +1 -1
- package/{esm2020 → esm2022}/proxy/public-api.mjs +1 -1
- package/{esm2020 → esm2022}/public-api.mjs +6 -6
- package/{fesm2015 → fesm2022}/abp-ng.identity-config.mjs +46 -46
- package/{fesm2020 → fesm2022}/abp-ng.identity-config.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/abp-ng.identity-proxy.mjs +130 -130
- package/{fesm2015 → fesm2022}/abp-ng.identity-proxy.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/abp-ng.identity.mjs +609 -609
- package/fesm2022/abp-ng.identity.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/components/index.d.ts +2 -2
- package/lib/components/roles/roles.component.d.ts +36 -36
- package/lib/components/users/users.component.d.ts +44 -44
- package/lib/defaults/default-roles-entity-actions.d.ts +3 -3
- package/lib/defaults/default-roles-entity-props.d.ts +3 -3
- package/lib/defaults/default-roles-form-props.d.ts +4 -4
- package/lib/defaults/default-roles-toolbar-actions.d.ts +3 -3
- package/lib/defaults/default-users-entity-actions.d.ts +3 -3
- package/lib/defaults/default-users-entity-props.d.ts +3 -3
- package/lib/defaults/default-users-form-props.d.ts +4 -4
- package/lib/defaults/default-users-toolbar-actions.d.ts +3 -3
- package/lib/enums/components.d.ts +4 -4
- package/lib/enums/index.d.ts +1 -1
- package/lib/guards/extensions.guard.d.ts +11 -11
- package/lib/guards/index.d.ts +1 -1
- package/lib/identity-routing.module.d.ts +7 -7
- package/lib/identity.module.d.ts +20 -20
- package/lib/models/config-options.d.ts +30 -30
- package/lib/models/index.d.ts +1 -1
- package/lib/tokens/extensions.token.d.ts +43 -43
- package/lib/tokens/index.d.ts +1 -1
- package/package.json +15 -25
- package/proxy/index.d.ts +5 -5
- package/proxy/lib/index.d.ts +2 -2
- package/proxy/lib/proxy/identity/identity-role.service.d.ts +17 -17
- package/proxy/lib/proxy/identity/identity-user-lookup.service.d.ts +16 -16
- package/proxy/lib/proxy/identity/identity-user.service.d.ts +21 -21
- package/proxy/lib/proxy/identity/index.d.ts +4 -4
- package/proxy/lib/proxy/identity/models.d.ts +64 -64
- package/proxy/lib/proxy/users/index.d.ts +1 -1
- package/proxy/lib/proxy/users/models.d.ts +11 -11
- package/proxy/public-api.d.ts +1 -1
- package/public-api.d.ts +6 -6
- package/esm2020/config/identity-config.module.mjs +0 -18
- package/esm2020/lib/components/roles/roles.component.mjs +0 -111
- package/esm2020/lib/components/users/users.component.mjs +0 -150
- package/esm2020/lib/guards/extensions.guard.mjs +0 -36
- package/esm2020/lib/identity-routing.module.mjs +0 -53
- package/esm2020/lib/identity.module.mjs +0 -85
- package/esm2020/proxy/lib/proxy/identity/identity-role.service.mjs +0 -46
- package/esm2020/proxy/lib/proxy/identity/identity-user-lookup.service.mjs +0 -37
- package/esm2020/proxy/lib/proxy/identity/identity-user.service.mjs +0 -63
- package/fesm2015/abp-ng.identity-config.mjs.map +0 -1
- package/fesm2015/abp-ng.identity-proxy.mjs +0 -144
- package/fesm2015/abp-ng.identity.mjs +0 -661
- package/fesm2015/abp-ng.identity.mjs.map +0 -1
- package/fesm2020/abp-ng.identity-config.mjs +0 -58
- package/fesm2020/abp-ng.identity-proxy.mjs.map +0 -1
- package/fesm2020/abp-ng.identity.mjs.map +0 -1
- package/proxy/src/lib/proxy/README.md +0 -17
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { ListService } from '@abp/ng.core';
|
|
2
|
+
import { IdentityUserService, } from '@abp/ng.identity/proxy';
|
|
3
|
+
import { Confirmation, ConfirmationService, eFormComponets, ToasterService } from '@abp/ng.theme.shared';
|
|
4
|
+
import { EXTENSIONS_IDENTIFIER, FormPropData, generateFormFromProps, } from '@abp/ng.theme.shared/extensions';
|
|
5
|
+
import { Component, Injector, TemplateRef, ViewChild, } from '@angular/core';
|
|
6
|
+
import { UntypedFormBuilder } from '@angular/forms';
|
|
7
|
+
import { finalize, switchMap, tap } from 'rxjs/operators';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@abp/ng.core";
|
|
10
|
+
import * as i2 from "@abp/ng.theme.shared";
|
|
11
|
+
import * as i3 from "@abp/ng.identity/proxy";
|
|
12
|
+
import * as i4 from "@angular/forms";
|
|
13
|
+
import * as i5 from "@angular/common";
|
|
14
|
+
import * as i6 from "@ng-bootstrap/ng-bootstrap";
|
|
15
|
+
import * as i7 from "@ngx-validate/core";
|
|
16
|
+
import * as i8 from "@abp/ng.theme.shared/extensions";
|
|
17
|
+
import * as i9 from "@abp/ng.permission-management";
|
|
18
|
+
import * as i10 from "@abp/ng.components/page";
|
|
19
|
+
class UsersComponent {
|
|
20
|
+
get roleGroups() {
|
|
21
|
+
return this.form.get('roleNames')?.controls || [];
|
|
22
|
+
}
|
|
23
|
+
constructor(list, confirmationService, service, toasterService, fb, injector) {
|
|
24
|
+
this.list = list;
|
|
25
|
+
this.confirmationService = confirmationService;
|
|
26
|
+
this.service = service;
|
|
27
|
+
this.toasterService = toasterService;
|
|
28
|
+
this.fb = fb;
|
|
29
|
+
this.injector = injector;
|
|
30
|
+
this.data = { items: [], totalCount: 0 };
|
|
31
|
+
this.visiblePermissions = false;
|
|
32
|
+
this.modalBusy = false;
|
|
33
|
+
this.permissionManagementKey = "PermissionManagement.PermissionManagementComponent" /* ePermissionManagementComponents.PermissionManagement */;
|
|
34
|
+
this.inputKey = eFormComponets.FormCheckboxComponent;
|
|
35
|
+
this.trackByFn = (index, item) => Object.keys(item)[0] || index;
|
|
36
|
+
this.onVisiblePermissionChange = (event) => {
|
|
37
|
+
this.visiblePermissions = event;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
ngOnInit() {
|
|
41
|
+
this.hookToQuery();
|
|
42
|
+
}
|
|
43
|
+
buildForm() {
|
|
44
|
+
const data = new FormPropData(this.injector, this.selected);
|
|
45
|
+
this.form = generateFormFromProps(data);
|
|
46
|
+
this.service.getAssignableRoles().subscribe(({ items }) => {
|
|
47
|
+
this.roles = items;
|
|
48
|
+
if (this.roles) {
|
|
49
|
+
this.form.addControl('roleNames', this.fb.array(this.roles.map(role => this.fb.group({
|
|
50
|
+
[role.name]: [
|
|
51
|
+
this.selected?.id
|
|
52
|
+
? !!this.selectedUserRoles?.find(userRole => userRole.id === role.id)
|
|
53
|
+
: role.isDefault,
|
|
54
|
+
],
|
|
55
|
+
}))));
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
openModal() {
|
|
60
|
+
this.buildForm();
|
|
61
|
+
this.isModalVisible = true;
|
|
62
|
+
}
|
|
63
|
+
add() {
|
|
64
|
+
this.selected = {};
|
|
65
|
+
this.selectedUserRoles = [];
|
|
66
|
+
this.openModal();
|
|
67
|
+
}
|
|
68
|
+
edit(id) {
|
|
69
|
+
this.service
|
|
70
|
+
.get(id)
|
|
71
|
+
.pipe(tap(user => (this.selected = user)), switchMap(() => this.service.getRoles(id)))
|
|
72
|
+
.subscribe(userRole => {
|
|
73
|
+
this.selectedUserRoles = userRole.items || [];
|
|
74
|
+
this.openModal();
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
save() {
|
|
78
|
+
if (!this.form.valid || this.modalBusy)
|
|
79
|
+
return;
|
|
80
|
+
this.modalBusy = true;
|
|
81
|
+
const { roleNames = [] } = this.form.value;
|
|
82
|
+
const mappedRoleNames = roleNames
|
|
83
|
+
.filter((role) => !!role[Object.keys(role)[0]])
|
|
84
|
+
.map((role) => Object.keys(role)[0]) || [];
|
|
85
|
+
const { id } = this.selected || {};
|
|
86
|
+
(id
|
|
87
|
+
? this.service.update(id, {
|
|
88
|
+
...this.selected,
|
|
89
|
+
...this.form.value,
|
|
90
|
+
roleNames: mappedRoleNames,
|
|
91
|
+
})
|
|
92
|
+
: this.service.create({ ...this.form.value, roleNames: mappedRoleNames }))
|
|
93
|
+
.pipe(finalize(() => (this.modalBusy = false)))
|
|
94
|
+
.subscribe(() => {
|
|
95
|
+
this.isModalVisible = false;
|
|
96
|
+
this.list.get();
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
delete(id, userName) {
|
|
100
|
+
this.confirmationService
|
|
101
|
+
.warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {
|
|
102
|
+
messageLocalizationParams: [userName],
|
|
103
|
+
})
|
|
104
|
+
.subscribe((status) => {
|
|
105
|
+
if (status === Confirmation.Status.confirm) {
|
|
106
|
+
this.service.delete(id).subscribe(() => {
|
|
107
|
+
this.toasterService.success('AbpUi::SuccessfullyDeleted');
|
|
108
|
+
this.list.get();
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
sort(data) {
|
|
114
|
+
const { prop, dir } = data.sorts[0];
|
|
115
|
+
this.list.sortKey = prop;
|
|
116
|
+
this.list.sortOrder = dir;
|
|
117
|
+
}
|
|
118
|
+
hookToQuery() {
|
|
119
|
+
this.list.hookToQuery(query => this.service.getList(query)).subscribe(res => (this.data = res));
|
|
120
|
+
}
|
|
121
|
+
openPermissionsModal(providerKey, entityDisplayName) {
|
|
122
|
+
this.providerKey = providerKey;
|
|
123
|
+
this.entityDisplayName = entityDisplayName;
|
|
124
|
+
setTimeout(() => {
|
|
125
|
+
this.visiblePermissions = true;
|
|
126
|
+
}, 0);
|
|
127
|
+
}
|
|
128
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: UsersComponent, deps: [{ token: i1.ListService }, { token: i2.ConfirmationService }, { token: i3.IdentityUserService }, { token: i2.ToasterService }, { token: i4.UntypedFormBuilder }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
129
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: UsersComponent, selector: "abp-users", providers: [
|
|
130
|
+
ListService,
|
|
131
|
+
{
|
|
132
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
133
|
+
useValue: "Identity.UsersComponent" /* eIdentityComponents.Users */,
|
|
134
|
+
},
|
|
135
|
+
], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<abp-page [title]=\"'AbpIdentity::Users' | abpLocalization\" [toolbar]=\"data.items\">\r\n <div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"data-tables-table-filter\" class=\"data-tables-filter mb-3\">\r\n <div class=\"input-group\">\r\n <input\r\n type=\"search\"\r\n class=\"form-control\"\r\n [placeholder]=\"'AbpUi::PagerSearch' | abpLocalization\"\r\n [(ngModel)]=\"list.filter\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n </div>\r\n\r\n <abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <ng-template #loaderRef>\r\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\r\n </ng-template>\r\n\r\n <form *ngIf=\"form; else loaderRef\" [formGroup]=\"form\" (ngSubmit)=\"save()\">\r\n <ul ngbNav #nav=\"ngbNav\" class=\"nav-tabs\">\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::UserInformations' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </ng-template>\r\n </li>\r\n\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::Roles' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <div\r\n *ngFor=\"let roleGroup of roleGroups; let i = index; trackBy: trackByFn\"\r\n class=\"form-check mb-2\"\r\n >\r\n <abp-checkbox\r\n *abpReplaceableTemplate=\"{\r\n inputs: {\r\n checkboxId: 'roles-' + i,\r\n label: roles[i].name,\r\n formControl: roleGroup.controls[roles[i].name]\r\n },\r\n componentKey: inputKey\r\n }\"\r\n [checkboxId]=\"'roles-' + i\"\r\n [formControl]=\"roleGroup.controls[roles[i].name]\"\r\n [label]=\"roles[i].name\"\r\n >\r\n </abp-checkbox>\r\n </div>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n <div class=\"mt-2 fade-in-top\" [ngbNavOutlet]=\"nav\"></div>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n\r\n <abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'U' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n [entityDisplayName]=\"entityDisplayName\"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n >\r\n </abp-permission-management>\r\n</abp-page>\r\n", dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i1.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }, { kind: "directive", type: i1.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "directive", type: i6.NgbNavContent, selector: "ng-template[ngbNavContent]" }, { kind: "directive", type: i6.NgbNav, selector: "[ngbNav]", inputs: ["activeId", "animation", "destroyOnHide", "orientation", "roles", "keyboard"], outputs: ["activeIdChange", "shown", "hidden", "navChange"], exportAs: ["ngbNav"] }, { kind: "directive", type: i6.NgbNavItem, selector: "[ngbNavItem]", inputs: ["destroyOnHide", "disabled", "domId", "ngbNavItem"], outputs: ["shown", "hidden"], exportAs: ["ngbNavItem"] }, { kind: "directive", type: i6.NgbNavItemRole, selector: "[ngbNavItem]:not(ng-container)" }, { kind: "directive", type: i6.NgbNavLink, selector: "a[ngbNavLink]" }, { kind: "directive", type: i6.NgbNavLinkBase, selector: "[ngbNavLink]" }, { kind: "component", type: i6.NgbNavOutlet, selector: "[ngbNavOutlet]", inputs: ["paneRole", "ngbNavOutlet"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "component", type: i2.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i2.ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: i2.FormCheckboxComponent, selector: "abp-checkbox", inputs: ["label", "labelClass", "checkboxId", "checkboxStyle", "checkboxClass", "checkboxReadonly"], outputs: ["checkboxBlur", "checkboxFocus"] }, { kind: "component", type: i8.ExtensibleFormComponent, selector: "abp-extensible-form", inputs: ["selectedRecord"], exportAs: ["abpExtensibleForm"] }, { kind: "component", type: i8.ExtensibleTableComponent, selector: "abp-extensible-table", inputs: ["actionsText", "data", "list", "recordsTotal", "actionsColumnWidth", "actionsTemplate"], outputs: ["tableActivate"], exportAs: ["abpExtensibleTable"] }, { kind: "component", type: i9.PermissionManagementComponent, selector: "abp-permission-management", inputs: ["providerName", "providerKey", "hideBadges", "entityDisplayName", "visible"], outputs: ["visibleChange"], exportAs: ["abpPermissionManagement"] }, { kind: "component", type: i10.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }] }); }
|
|
136
|
+
}
|
|
137
|
+
export { UsersComponent };
|
|
138
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: UsersComponent, decorators: [{
|
|
139
|
+
type: Component,
|
|
140
|
+
args: [{ selector: 'abp-users', providers: [
|
|
141
|
+
ListService,
|
|
142
|
+
{
|
|
143
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
144
|
+
useValue: "Identity.UsersComponent" /* eIdentityComponents.Users */,
|
|
145
|
+
},
|
|
146
|
+
], template: "<abp-page [title]=\"'AbpIdentity::Users' | abpLocalization\" [toolbar]=\"data.items\">\r\n <div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-body\">\r\n <div id=\"data-tables-table-filter\" class=\"data-tables-filter mb-3\">\r\n <div class=\"input-group\">\r\n <input\r\n type=\"search\"\r\n class=\"form-control\"\r\n [placeholder]=\"'AbpUi::PagerSearch' | abpLocalization\"\r\n [(ngModel)]=\"list.filter\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n </div>\r\n\r\n <abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <ng-template #loaderRef>\r\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\r\n </ng-template>\r\n\r\n <form *ngIf=\"form; else loaderRef\" [formGroup]=\"form\" (ngSubmit)=\"save()\">\r\n <ul ngbNav #nav=\"ngbNav\" class=\"nav-tabs\">\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::UserInformations' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </ng-template>\r\n </li>\r\n\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::Roles' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <div\r\n *ngFor=\"let roleGroup of roleGroups; let i = index; trackBy: trackByFn\"\r\n class=\"form-check mb-2\"\r\n >\r\n <abp-checkbox\r\n *abpReplaceableTemplate=\"{\r\n inputs: {\r\n checkboxId: 'roles-' + i,\r\n label: roles[i].name,\r\n formControl: roleGroup.controls[roles[i].name]\r\n },\r\n componentKey: inputKey\r\n }\"\r\n [checkboxId]=\"'roles-' + i\"\r\n [formControl]=\"roleGroup.controls[roles[i].name]\"\r\n [label]=\"roles[i].name\"\r\n >\r\n </abp-checkbox>\r\n </div>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n <div class=\"mt-2 fade-in-top\" [ngbNavOutlet]=\"nav\"></div>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n\r\n <abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'U' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n [entityDisplayName]=\"entityDisplayName\"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n >\r\n </abp-permission-management>\r\n</abp-page>\r\n" }]
|
|
147
|
+
}], ctorParameters: function () { return [{ type: i1.ListService }, { type: i2.ConfirmationService }, { type: i3.IdentityUserService }, { type: i2.ToasterService }, { type: i4.UntypedFormBuilder }, { type: i0.Injector }]; }, propDecorators: { modalContent: [{
|
|
148
|
+
type: ViewChild,
|
|
149
|
+
args: ['modalContent', { static: false }]
|
|
150
|
+
}] } });
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvc3JjL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvY29tcG9uZW50cy91c2Vycy91c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFrQixNQUFNLGNBQWMsQ0FBQztBQUMzRCxPQUFPLEVBSUwsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdkcsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixZQUFZLEVBQ1oscUJBQXFCLEdBQ3RCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUNMLFNBQVMsRUFDVCxRQUFRLEVBRVIsV0FBVyxFQUVYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXFDLGtCQUFrQixFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7QUFHMUQsTUFXYSxjQUFjO0lBa0N6QixJQUFJLFVBQVU7UUFDWixPQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBc0IsRUFBRSxRQUErQixJQUFJLEVBQUUsQ0FBQztJQUNsRyxDQUFDO0lBRUQsWUFDa0IsSUFBd0MsRUFDOUMsbUJBQXdDLEVBQ3hDLE9BQTRCLEVBQzlCLGNBQThCLEVBQzVCLEVBQXNCLEVBQ3RCLFFBQWtCO1FBTFosU0FBSSxHQUFK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QUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELG9CQUFvQixDQUFDLFdBQW1CLEVBQUUsaUJBQTBCO1FBQ2xFLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUNqQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzhHQTlKVSxjQUFjO2tHQUFkLGNBQWMsb0NBUmQ7WUFDVCxXQUFXO1lBQ1g7Z0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSwyREFBMkI7YUFDcEM7U0FDRix3SUNuQ0gsOHZIQW1HQTs7U0Q5RGEsY0FBYzsyRkFBZCxjQUFjO2tCQVgxQixTQUFTOytCQUNFLFdBQVcsYUFFVjt3QkFDVCxXQUFXO3dCQUNYOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsMkRBQTJCO3lCQUNwQztxQkFDRjsyUEFNRCxZQUFZO3NCQURYLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RTZXJ2aWNlLCBQYWdlZFJlc3VsdER0byB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgR2V0SWRlbnRpdHlVc2Vyc0lucHV0LFxyXG4gIElkZW50aXR5Um9sZUR0byxcclxuICBJZGVudGl0eVVzZXJEdG8sXHJcbiAgSWRlbnRpdHlVc2VyU2VydmljZSxcclxufSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgZVBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50cyB9IGZyb20gJ0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50JztcclxuaW1wb3J0IHtDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UsIGVGb3JtQ29tcG9uZXRzLCBUb2FzdGVyU2VydmljZX0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQge1xyXG4gIEVYVEVOU0lPTlNfSURFTlRJRklFUixcclxuICBGb3JtUHJvcERhdGEsXHJcbiAgZ2VuZXJhdGVGb3JtRnJvbVByb3BzLFxyXG59IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbmplY3RvcixcclxuICBPbkluaXQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVHJhY2tCeUZ1bmN0aW9uLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZUlkZW50aXR5Q29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2VudW1zL2NvbXBvbmVudHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtdXNlcnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91c2Vycy5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBMaXN0U2VydmljZSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogRVhURU5TSU9OU19JREVOVElGSUVSLFxyXG4gICAgICB1c2VWYWx1ZTogZUlkZW50aXR5Q29tcG9uZW50cy5Vc2VycyxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVzZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBkYXRhOiBQYWdlZFJlc3VsdER0bzxJZGVudGl0eVVzZXJEdG8+ID0geyBpdGVtczogW10sIHRvdGFsQ291bnQ6IDAgfTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXHJcbiAgbW9kYWxDb250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgZm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIHNlbGVjdGVkPzogSWRlbnRpdHlVc2VyRHRvO1xyXG5cclxuICBzZWxlY3RlZFVzZXJSb2xlcz86IElkZW50aXR5Um9sZUR0b1tdO1xyXG5cclxuICByb2xlcz86IElkZW50aXR5Um9sZUR0b1tdO1xyXG5cclxuICB2aXNpYmxlUGVybWlzc2lvbnMgPSBmYWxzZTtcclxuXHJcbiAgcHJvdmlkZXJLZXk/OiBzdHJpbmc7XHJcblxyXG4gIGlzTW9kYWxWaXNpYmxlPzogYm9vbGVhbjtcclxuXHJcbiAgbW9kYWxCdXN5ID0gZmFsc2U7XHJcblxyXG4gIHBlcm1pc3Npb25NYW5hZ2VtZW50S2V5ID0gZVBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50cy5QZXJtaXNzaW9uTWFuYWdlbWVudDtcclxuXHJcbiAgZW50aXR5RGlzcGxheU5hbWU6IHN0cmluZztcclxuICBcclxuICBpbnB1dEtleT1lRm9ybUNvbXBvbmV0cy5Gb3JtQ2hlY2tib3hDb21wb25lbnRcclxuXHJcbiAgdHJhY2tCeUZuOiBUcmFja0J5RnVuY3Rpb248QWJzdHJhY3RDb250cm9sPiA9IChpbmRleCwgaXRlbSkgPT4gT2JqZWN0LmtleXMoaXRlbSlbMF0gfHwgaW5kZXg7XHJcblxyXG4gIG9uVmlzaWJsZVBlcm1pc3Npb25DaGFuZ2UgPSAoZXZlbnQ6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMudmlzaWJsZVBlcm1pc3Npb25zID0gZXZlbnQ7XHJcbiAgfTtcclxuXHJcbiAgZ2V0IHJvbGVHcm91cHMoKTogVW50eXBlZEZvcm1Hcm91cFtdIHtcclxuICAgIHJldHVybiAoKHRoaXMuZm9ybS5nZXQoJ3JvbGVOYW1lcycpIGFzIFVudHlwZWRGb3JtQXJyYXkpPy5jb250cm9scyBhcyBVbnR5cGVkRm9ybUdyb3VwW10pIHx8IFtdO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgbGlzdDogTGlzdFNlcnZpY2U8R2V0SWRlbnRpdHlVc2Vyc0lucHV0PixcclxuICAgIHByb3RlY3RlZCBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHNlcnZpY2U6IElkZW50aXR5VXNlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5ob29rVG9RdWVyeSgpO1xyXG4gIH1cclxuXHJcbiAgYnVpbGRGb3JtKCkge1xyXG4gICAgY29uc3QgZGF0YSA9IG5ldyBGb3JtUHJvcERhdGEodGhpcy5pbmplY3RvciwgdGhpcy5zZWxlY3RlZCk7XHJcbiAgICB0aGlzLmZvcm0gPSBnZW5lcmF0ZUZvcm1Gcm9tUHJvcHMoZGF0YSk7XHJcblxyXG4gICAgdGhpcy5zZXJ2aWNlLmdldEFzc2lnbmFibGVSb2xlcygpLnN1YnNjcmliZSgoeyBpdGVtcyB9KSA9PiB7XHJcbiAgICAgIHRoaXMucm9sZXMgPSBpdGVtcztcclxuICAgICAgaWYgKHRoaXMucm9sZXMpIHtcclxuICAgICAgICB0aGlzLmZvcm0uYWRkQ29udHJvbChcclxuICAgICAgICAgICdyb2xlTmFtZXMnLFxyXG4gICAgICAgICAgdGhpcy5mYi5hcnJheShcclxuICAgICAgICAgICAgdGhpcy5yb2xlcy5tYXAocm9sZSA9PlxyXG4gICAgICAgICAgICAgIHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgICAgICAgW3JvbGUubmFtZSBhcyBzdHJpbmddOiBbXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWQ/LmlkXHJcbiAgICAgICAgICAgICAgICAgICAgPyAhIXRoaXMuc2VsZWN0ZWRVc2VyUm9sZXM/LmZpbmQodXNlclJvbGUgPT4gdXNlclJvbGUuaWQgPT09IHJvbGUuaWQpXHJcbiAgICAgICAgICAgICAgICAgICAgOiByb2xlLmlzRGVmYXVsdCxcclxuICAgICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgICApLFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3Blbk1vZGFsKCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIHRoaXMuaXNNb2RhbFZpc2libGUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgYWRkKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHt9IGFzIElkZW50aXR5VXNlckR0bztcclxuICAgIHRoaXMuc2VsZWN0ZWRVc2VyUm9sZXMgPSBbXSBhcyBJZGVudGl0eVJvbGVEdG9bXTtcclxuICAgIHRoaXMub3Blbk1vZGFsKCk7XHJcbiAgfVxyXG5cclxuICBlZGl0KGlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAuZ2V0KGlkKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAodXNlciA9PiAodGhpcy5zZWxlY3RlZCA9IHVzZXIpKSxcclxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5zZXJ2aWNlLmdldFJvbGVzKGlkKSksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSh1c2VyUm9sZSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFVzZXJSb2xlcyA9IHVzZXJSb2xlLml0ZW1zIHx8IFtdO1xyXG4gICAgICAgIHRoaXMub3Blbk1vZGFsKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2F2ZSgpIHtcclxuICAgIGlmICghdGhpcy5mb3JtLnZhbGlkIHx8IHRoaXMubW9kYWxCdXN5KSByZXR1cm47XHJcbiAgICB0aGlzLm1vZGFsQnVzeSA9IHRydWU7XHJcblxyXG4gICAgY29uc3QgeyByb2xlTmFtZXMgPSBbXSB9ID0gdGhpcy5mb3JtLnZhbHVlO1xyXG4gICAgY29uc3QgbWFwcGVkUm9sZU5hbWVzID1cclxuICAgICAgcm9sZU5hbWVzXHJcbiAgICAgICAgLmZpbHRlcigocm9sZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkgPT4gISFyb2xlW09iamVjdC5rZXlzKHJvbGUpWzBdXSlcclxuICAgICAgICAubWFwKChyb2xlOiB7IFtrZXk6IHN0cmluZ106IGFueSB9KSA9PiBPYmplY3Qua2V5cyhyb2xlKVswXSkgfHwgW107XHJcblxyXG4gICAgY29uc3QgeyBpZCB9ID0gdGhpcy5zZWxlY3RlZCB8fCB7fTtcclxuXHJcbiAgICAoaWRcclxuICAgICAgPyB0aGlzLnNlcnZpY2UudXBkYXRlKGlkLCB7XHJcbiAgICAgICAgICAuLi50aGlzLnNlbGVjdGVkLFxyXG4gICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxyXG4gICAgICAgICAgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMsXHJcbiAgICAgICAgfSlcclxuICAgICAgOiB0aGlzLnNlcnZpY2UuY3JlYXRlKHsgLi4udGhpcy5mb3JtLnZhbHVlLCByb2xlTmFtZXM6IG1hcHBlZFJvbGVOYW1lcyB9KVxyXG4gICAgKVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5tb2RhbEJ1c3kgPSBmYWxzZSkpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmlzTW9kYWxWaXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5saXN0LmdldCgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZShpZDogc3RyaW5nLCB1c2VyTmFtZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2VcclxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpVc2VyRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xyXG4gICAgICAgIG1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXM6IFt1c2VyTmFtZV0sXHJcbiAgICAgIH0pXHJcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogQ29uZmlybWF0aW9uLlN0YXR1cykgPT4ge1xyXG4gICAgICAgIGlmIChzdGF0dXMgPT09IENvbmZpcm1hdGlvbi5TdGF0dXMuY29uZmlybSkge1xyXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLmRlbGV0ZShpZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdBYnBVaTo6U3VjY2Vzc2Z1bGx5RGVsZXRlZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmxpc3QuZ2V0KCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc29ydChkYXRhOiBhbnkpIHtcclxuICAgIGNvbnN0IHsgcHJvcCwgZGlyIH0gPSBkYXRhLnNvcnRzWzBdO1xyXG4gICAgdGhpcy5saXN0LnNvcnRLZXkgPSBwcm9wO1xyXG4gICAgdGhpcy5saXN0LnNvcnRPcmRlciA9IGRpcjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaG9va1RvUXVlcnkoKSB7XHJcbiAgICB0aGlzLmxpc3QuaG9va1RvUXVlcnkocXVlcnkgPT4gdGhpcy5zZXJ2aWNlLmdldExpc3QocXVlcnkpKS5zdWJzY3JpYmUocmVzID0+ICh0aGlzLmRhdGEgPSByZXMpKTtcclxuICB9XHJcblxyXG4gIG9wZW5QZXJtaXNzaW9uc01vZGFsKHByb3ZpZGVyS2V5OiBzdHJpbmcsIGVudGl0eURpc3BsYXlOYW1lPzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnByb3ZpZGVyS2V5ID0gcHJvdmlkZXJLZXk7XHJcbiAgICB0aGlzLmVudGl0eURpc3BsYXlOYW1lID0gZW50aXR5RGlzcGxheU5hbWU7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy52aXNpYmxlUGVybWlzc2lvbnMgPSB0cnVlO1xyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG59XHJcbiIsIjxhYnAtcGFnZSBbdGl0bGVdPVwiJ0FicElkZW50aXR5OjpVc2VycycgfCBhYnBMb2NhbGl6YXRpb25cIiBbdG9vbGJhcl09XCJkYXRhLml0ZW1zXCI+XHJcbiAgPGRpdiBpZD1cImlkZW50aXR5LXJvbGVzLXdyYXBwZXJcIiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgPGRpdiBpZD1cImRhdGEtdGFibGVzLXRhYmxlLWZpbHRlclwiIGNsYXNzPVwiZGF0YS10YWJsZXMtZmlsdGVyIG1iLTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwic2VhcmNoXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FicFVpOjpQYWdlclNlYXJjaCcgfCBhYnBMb2NhbGl6YXRpb25cIlxyXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImxpc3QuZmlsdGVyXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGFicC1leHRlbnNpYmxlLXRhYmxlXHJcbiAgICAgICAgW2RhdGFdPVwiZGF0YS5pdGVtc1wiXHJcbiAgICAgICAgW3JlY29yZHNUb3RhbF09XCJkYXRhLnRvdGFsQ291bnRcIlxyXG4gICAgICAgIFtsaXN0XT1cImxpc3RcIlxyXG4gICAgICA+PC9hYnAtZXh0ZW5zaWJsZS10YWJsZT5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8YWJwLW1vZGFsIFsodmlzaWJsZSldPVwiaXNNb2RhbFZpc2libGVcIiBbYnVzeV09XCJtb2RhbEJ1c3lcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSAjYWJwSGVhZGVyPlxyXG4gICAgICA8aDM+e3sgKHNlbGVjdGVkPy5pZCA/ICdBYnBJZGVudGl0eTo6RWRpdCcgOiAnQWJwSWRlbnRpdHk6Ok5ld1VzZXInKSB8IGFicExvY2FsaXphdGlvbiB9fTwvaDM+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjYWJwQm9keT5cclxuICAgICAgPG5nLXRlbXBsYXRlICNsb2FkZXJSZWY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+PGkgY2xhc3M9XCJmYSBmYS1wdWxzZSBmYS1zcGlubmVyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgPGZvcm0gKm5nSWY9XCJmb3JtOyBlbHNlIGxvYWRlclJlZlwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cclxuICAgICAgICA8dWwgbmdiTmF2ICNuYXY9XCJuZ2JOYXZcIiBjbGFzcz1cIm5hdi10YWJzXCI+XHJcbiAgICAgICAgICA8bGkgbmdiTmF2SXRlbT5cclxuICAgICAgICAgICAgPGEgbmdiTmF2TGluaz57eyAnQWJwSWRlbnRpdHk6OlVzZXJJbmZvcm1hdGlvbnMnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cclxuICAgICAgICAgICAgICA8YWJwLWV4dGVuc2libGUtZm9ybSBbc2VsZWN0ZWRSZWNvcmRdPVwic2VsZWN0ZWRcIj48L2FicC1leHRlbnNpYmxlLWZvcm0+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICA8L2xpPlxyXG5cclxuICAgICAgICAgIDxsaSBuZ2JOYXZJdGVtPlxyXG4gICAgICAgICAgICA8YSBuZ2JOYXZMaW5rPnt7ICdBYnBJZGVudGl0eTo6Um9sZXMnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgbmdiTmF2Q29udGVudD5cclxuICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcm9sZUdyb3VwIG9mIHJvbGVHcm91cHM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2sgbWItMlwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGFicC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAqYWJwUmVwbGFjZWFibGVUZW1wbGF0ZT1cIntcclxuICAgICAgICAgICAgICAgICAgICBpbnB1dHM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgIGNoZWNrYm94SWQ6ICdyb2xlcy0nICsgaSxcclxuICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiByb2xlc1tpXS5uYW1lLFxyXG4gICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2w6IHJvbGVHcm91cC5jb250cm9sc1tyb2xlc1tpXS5uYW1lXVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50S2V5OiBpbnB1dEtleVxyXG4gICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgICAgW2NoZWNrYm94SWRdPVwiJ3JvbGVzLScgKyBpXCJcclxuICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cInJvbGVHcm91cC5jb250cm9sc1tyb2xlc1tpXS5uYW1lXVwiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJyb2xlc1tpXS5uYW1lXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDwvYWJwLWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIGZhZGUtaW4tdG9wXCIgW25nYk5hdk91dGxldF09XCJuYXZcIj48L2Rpdj5cclxuICAgICAgPC9mb3JtPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGUgI2FicEZvb3Rlcj5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGFicENsb3NlPlxyXG4gICAgICAgIHt7ICdBYnBJZGVudGl0eTo6Q2FuY2VsJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPGFicC1idXR0b24gaWNvbkNsYXNzPVwiZmEgZmEtY2hlY2tcIiBbZGlzYWJsZWRdPVwiZm9ybT8uaW52YWxpZFwiIChjbGljayk9XCJzYXZlKClcIj57e1xyXG4gICAgICAgICdBYnBJZGVudGl0eTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgICAgfX08L2FicC1idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvYWJwLW1vZGFsPlxyXG5cclxuICA8YWJwLXBlcm1pc3Npb24tbWFuYWdlbWVudFxyXG4gICAgI2FicFBlcm1pc3Npb25NYW5hZ2VtZW50PVwiYWJwUGVybWlzc2lvbk1hbmFnZW1lbnRcIlxyXG4gICAgKmFicFJlcGxhY2VhYmxlVGVtcGxhdGU9XCJcclxuICAgICAge1xyXG4gICAgICAgIGlucHV0czoge1xyXG4gICAgICAgICAgcHJvdmlkZXJOYW1lOiB7IHZhbHVlOiAnVScgfSxcclxuICAgICAgICAgIHByb3ZpZGVyS2V5OiB7IHZhbHVlOiBwcm92aWRlcktleSB9LFxyXG4gICAgICAgICAgdmlzaWJsZTogeyB2YWx1ZTogdmlzaWJsZVBlcm1pc3Npb25zLCB0d29XYXk6IHRydWUgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb3V0cHV0czogeyB2aXNpYmxlQ2hhbmdlOiBvblZpc2libGVQZXJtaXNzaW9uQ2hhbmdlIH0sXHJcbiAgICAgICAgY29tcG9uZW50S2V5OiBwZXJtaXNzaW9uTWFuYWdlbWVudEtleVxyXG4gICAgICB9O1xyXG4gICAgICBsZXQgaW5pdCA9IGluaXRUZW1wbGF0ZVxyXG4gICAgXCJcclxuICAgIFtlbnRpdHlEaXNwbGF5TmFtZV09XCJlbnRpdHlEaXNwbGF5TmFtZVwiXHJcbiAgICAoYWJwSW5pdCk9XCJpbml0KGFicFBlcm1pc3Npb25NYW5hZ2VtZW50KVwiXHJcbiAgPlxyXG4gIDwvYWJwLXBlcm1pc3Npb24tbWFuYWdlbWVudD5cclxuPC9hYnAtcGFnZT5cclxuIl19
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { EntityAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
-
import { RolesComponent } from '../components/roles/roles.component';
|
|
3
|
-
export const DEFAULT_ROLES_ENTITY_ACTIONS = EntityAction.createMany([
|
|
4
|
-
{
|
|
5
|
-
text: 'AbpIdentity::Edit',
|
|
6
|
-
action: data => {
|
|
7
|
-
const component = data.getInjected(RolesComponent);
|
|
8
|
-
component.edit(data.record.id || '');
|
|
9
|
-
},
|
|
10
|
-
permission: 'AbpIdentity.Roles.Update',
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
text: 'AbpIdentity::Permissions',
|
|
14
|
-
action: data => {
|
|
15
|
-
const component = data.getInjected(RolesComponent);
|
|
16
|
-
component.openPermissionsModal(data.record.name || '');
|
|
17
|
-
},
|
|
18
|
-
permission: 'AbpIdentity.Roles.ManagePermissions',
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
text: 'AbpIdentity::Delete',
|
|
22
|
-
action: data => {
|
|
23
|
-
const component = data.getInjected(RolesComponent);
|
|
24
|
-
component.delete(data.record.id || '', data.record.name || '');
|
|
25
|
-
},
|
|
26
|
-
permission: 'AbpIdentity.Roles.Delete',
|
|
27
|
-
visible: data => !data?.record.isStatic,
|
|
28
|
-
},
|
|
29
|
-
]);
|
|
1
|
+
import { EntityAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
+
import { RolesComponent } from '../components/roles/roles.component';
|
|
3
|
+
export const DEFAULT_ROLES_ENTITY_ACTIONS = EntityAction.createMany([
|
|
4
|
+
{
|
|
5
|
+
text: 'AbpIdentity::Edit',
|
|
6
|
+
action: data => {
|
|
7
|
+
const component = data.getInjected(RolesComponent);
|
|
8
|
+
component.edit(data.record.id || '');
|
|
9
|
+
},
|
|
10
|
+
permission: 'AbpIdentity.Roles.Update',
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
text: 'AbpIdentity::Permissions',
|
|
14
|
+
action: data => {
|
|
15
|
+
const component = data.getInjected(RolesComponent);
|
|
16
|
+
component.openPermissionsModal(data.record.name || '');
|
|
17
|
+
},
|
|
18
|
+
permission: 'AbpIdentity.Roles.ManagePermissions',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
text: 'AbpIdentity::Delete',
|
|
22
|
+
action: data => {
|
|
23
|
+
const component = data.getInjected(RolesComponent);
|
|
24
|
+
component.delete(data.record.id || '', data.record.name || '');
|
|
25
|
+
},
|
|
26
|
+
permission: 'AbpIdentity.Roles.Delete',
|
|
27
|
+
visible: data => !data?.record.isStatic,
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
30
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1lbnRpdHktYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvZGVmYXVsdHMvZGVmYXVsdC1yb2xlcy1lbnRpdHktYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLFlBQVksQ0FBQyxVQUFVLENBQWtCO0lBQ25GO1FBQ0UsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELFVBQVUsRUFBRSwwQkFBMEI7S0FDdkM7SUFDRDtRQUNFLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNuRCxTQUFTLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELFVBQVUsRUFBRSxxQ0FBcUM7S0FDbEQ7SUFDRDtRQUNFLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNuRCxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQ0QsVUFBVSxFQUFFLDBCQUEwQjtRQUN0QyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsUUFBUTtLQUN4QztDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkZW50aXR5Um9sZUR0byB9IGZyb20gJ0BhYnAvbmcuaWRlbnRpdHkvcHJveHknO1xyXG5pbXBvcnQgeyBFbnRpdHlBY3Rpb24gfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgUm9sZXNDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9ST0xFU19FTlRJVFlfQUNUSU9OUyA9IEVudGl0eUFjdGlvbi5jcmVhdGVNYW55PElkZW50aXR5Um9sZUR0bz4oW1xyXG4gIHtcclxuICAgIHRleHQ6ICdBYnBJZGVudGl0eTo6RWRpdCcsXHJcbiAgICBhY3Rpb246IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCBjb21wb25lbnQgPSBkYXRhLmdldEluamVjdGVkKFJvbGVzQ29tcG9uZW50KTtcclxuICAgICAgY29tcG9uZW50LmVkaXQoZGF0YS5yZWNvcmQuaWQgfHwgJycpO1xyXG4gICAgfSxcclxuICAgIHBlcm1pc3Npb246ICdBYnBJZGVudGl0eS5Sb2xlcy5VcGRhdGUnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGV4dDogJ0FicElkZW50aXR5OjpQZXJtaXNzaW9ucycsXHJcbiAgICBhY3Rpb246IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCBjb21wb25lbnQgPSBkYXRhLmdldEluamVjdGVkKFJvbGVzQ29tcG9uZW50KTtcclxuICAgICAgY29tcG9uZW50Lm9wZW5QZXJtaXNzaW9uc01vZGFsKGRhdGEucmVjb3JkLm5hbWUgfHwgJycpO1xyXG4gICAgfSxcclxuICAgIHBlcm1pc3Npb246ICdBYnBJZGVudGl0eS5Sb2xlcy5NYW5hZ2VQZXJtaXNzaW9ucycsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6OkRlbGV0ZScsXHJcbiAgICBhY3Rpb246IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCBjb21wb25lbnQgPSBkYXRhLmdldEluamVjdGVkKFJvbGVzQ29tcG9uZW50KTtcclxuICAgICAgY29tcG9uZW50LmRlbGV0ZShkYXRhLnJlY29yZC5pZCB8fCAnJywgZGF0YS5yZWNvcmQubmFtZSB8fCAnJyk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlJvbGVzLkRlbGV0ZScsXHJcbiAgICB2aXNpYmxlOiBkYXRhID0+ICFkYXRhPy5yZWNvcmQuaXNTdGF0aWMsXHJcbiAgfSxcclxuXSk7XHJcbiJdfQ==
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { escapeHtmlChars, LocalizationService } from '@abp/ng.core';
|
|
2
|
-
import { EntityProp } from '@abp/ng.theme.shared/extensions';
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
export const DEFAULT_ROLES_ENTITY_PROPS = EntityProp.createMany([
|
|
5
|
-
{
|
|
6
|
-
type: "string" /* ePropType.String */,
|
|
7
|
-
name: 'name',
|
|
8
|
-
displayName: 'AbpIdentity::RoleName',
|
|
9
|
-
sortable: true,
|
|
10
|
-
valueResolver: data => {
|
|
11
|
-
const l10n = data.getInjected(LocalizationService);
|
|
12
|
-
const t = l10n.instant.bind(l10n);
|
|
13
|
-
const { isDefault, isPublic, name } = data.record;
|
|
14
|
-
return of(escapeHtmlChars(name) +
|
|
15
|
-
(isDefault
|
|
16
|
-
? `<span class="badge rounded-pill bg-success ms-1">${t('AbpIdentity::DisplayName:IsDefault')}</span>`
|
|
17
|
-
: '') +
|
|
18
|
-
(isPublic
|
|
19
|
-
? `<span class="badge rounded-pill bg-info ms-1">${t('AbpIdentity::DisplayName:IsPublic')}</span>`
|
|
20
|
-
: ''));
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
]);
|
|
1
|
+
import { escapeHtmlChars, LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { EntityProp } from '@abp/ng.theme.shared/extensions';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
export const DEFAULT_ROLES_ENTITY_PROPS = EntityProp.createMany([
|
|
5
|
+
{
|
|
6
|
+
type: "string" /* ePropType.String */,
|
|
7
|
+
name: 'name',
|
|
8
|
+
displayName: 'AbpIdentity::RoleName',
|
|
9
|
+
sortable: true,
|
|
10
|
+
valueResolver: data => {
|
|
11
|
+
const l10n = data.getInjected(LocalizationService);
|
|
12
|
+
const t = l10n.instant.bind(l10n);
|
|
13
|
+
const { isDefault, isPublic, name } = data.record;
|
|
14
|
+
return of(escapeHtmlChars(name) +
|
|
15
|
+
(isDefault
|
|
16
|
+
? `<span class="badge rounded-pill bg-success ms-1">${t('AbpIdentity::DisplayName:IsDefault')}</span>`
|
|
17
|
+
: '') +
|
|
18
|
+
(isPublic
|
|
19
|
+
? `<span class="badge rounded-pill bg-info ms-1">${t('AbpIdentity::DisplayName:IsPublic')}</span>`
|
|
20
|
+
: ''));
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
]);
|
|
24
24
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1lbnRpdHktcHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtcm9sZXMtZW50aXR5LXByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBa0I7SUFDL0U7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsUUFBUSxFQUFFLElBQUk7UUFDZCxhQUFhLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDcEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ25ELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFFbEQsT0FBTyxFQUFFLENBQ1AsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDbkIsQ0FBQyxTQUFTO29CQUNSLENBQUMsQ0FBQyxvREFBb0QsQ0FBQyxDQUNuRCxvQ0FBb0MsQ0FDckMsU0FBUztvQkFDWixDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLENBQUMsUUFBUTtvQkFDUCxDQUFDLENBQUMsaURBQWlELENBQUMsQ0FDaEQsbUNBQW1DLENBQ3BDLFNBQVM7b0JBQ1osQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUNWLENBQUM7UUFDSixDQUFDO0tBQ0Y7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlc2NhcGVIdG1sQ2hhcnMsIExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBJZGVudGl0eVJvbGVEdG8gfSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgRW50aXR5UHJvcCwgZVByb3BUeXBlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9ST0xFU19FTlRJVFlfUFJPUFMgPSBFbnRpdHlQcm9wLmNyZWF0ZU1hbnk8SWRlbnRpdHlSb2xlRHRvPihbXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLlN0cmluZyxcclxuICAgIG5hbWU6ICduYW1lJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OlJvbGVOYW1lJyxcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgdmFsdWVSZXNvbHZlcjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGwxMG4gPSBkYXRhLmdldEluamVjdGVkKExvY2FsaXphdGlvblNlcnZpY2UpO1xyXG4gICAgICBjb25zdCB0ID0gbDEwbi5pbnN0YW50LmJpbmQobDEwbik7XHJcbiAgICAgIGNvbnN0IHsgaXNEZWZhdWx0LCBpc1B1YmxpYywgbmFtZSB9ID0gZGF0YS5yZWNvcmQ7XHJcblxyXG4gICAgICByZXR1cm4gb2YoXHJcbiAgICAgICAgZXNjYXBlSHRtbENoYXJzKG5hbWUpICtcclxuICAgICAgICAgIChpc0RlZmF1bHRcclxuICAgICAgICAgICAgPyBgPHNwYW4gY2xhc3M9XCJiYWRnZSByb3VuZGVkLXBpbGwgYmctc3VjY2VzcyBtcy0xXCI+JHt0KFxyXG4gICAgICAgICAgICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpJc0RlZmF1bHQnLFxyXG4gICAgICAgICAgICAgICl9PC9zcGFuPmBcclxuICAgICAgICAgICAgOiAnJykgK1xyXG4gICAgICAgICAgKGlzUHVibGljXHJcbiAgICAgICAgICAgID8gYDxzcGFuIGNsYXNzPVwiYmFkZ2Ugcm91bmRlZC1waWxsIGJnLWluZm8gbXMtMVwiPiR7dChcclxuICAgICAgICAgICAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6SXNQdWJsaWMnLFxyXG4gICAgICAgICAgICAgICl9PC9zcGFuPmBcclxuICAgICAgICAgICAgOiAnJyksXHJcbiAgICAgICk7XHJcbiAgICB9LFxyXG4gIH0sXHJcbl0pO1xyXG4iXX0=
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { FormProp } from "@abp/ng.theme.shared/extensions";
|
|
2
|
-
import { Validators } from '@angular/forms';
|
|
3
|
-
export const DEFAULT_ROLES_CREATE_FORM_PROPS = FormProp.createMany([
|
|
4
|
-
{
|
|
5
|
-
type: "string" /* ePropType.String */,
|
|
6
|
-
name: 'name',
|
|
7
|
-
displayName: 'AbpIdentity::RoleName',
|
|
8
|
-
id: 'role-name',
|
|
9
|
-
disabled: ((data) => data.record && data.record.isStatic),
|
|
10
|
-
validators: () => [Validators.required],
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
type: "boolean" /* ePropType.Boolean */,
|
|
14
|
-
name: 'isDefault',
|
|
15
|
-
displayName: 'AbpIdentity::DisplayName:IsDefault',
|
|
16
|
-
id: 'role-is-default',
|
|
17
|
-
defaultValue: false,
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
type: "boolean" /* ePropType.Boolean */,
|
|
21
|
-
name: 'isPublic',
|
|
22
|
-
displayName: 'AbpIdentity::DisplayName:IsPublic',
|
|
23
|
-
id: 'role-is-public',
|
|
24
|
-
defaultValue: false,
|
|
25
|
-
},
|
|
26
|
-
]);
|
|
27
|
-
export const DEFAULT_ROLES_EDIT_FORM_PROPS = DEFAULT_ROLES_CREATE_FORM_PROPS;
|
|
1
|
+
import { FormProp } from "@abp/ng.theme.shared/extensions";
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
export const DEFAULT_ROLES_CREATE_FORM_PROPS = FormProp.createMany([
|
|
4
|
+
{
|
|
5
|
+
type: "string" /* ePropType.String */,
|
|
6
|
+
name: 'name',
|
|
7
|
+
displayName: 'AbpIdentity::RoleName',
|
|
8
|
+
id: 'role-name',
|
|
9
|
+
disabled: ((data) => data.record && data.record.isStatic),
|
|
10
|
+
validators: () => [Validators.required],
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
type: "boolean" /* ePropType.Boolean */,
|
|
14
|
+
name: 'isDefault',
|
|
15
|
+
displayName: 'AbpIdentity::DisplayName:IsDefault',
|
|
16
|
+
id: 'role-is-default',
|
|
17
|
+
defaultValue: false,
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
type: "boolean" /* ePropType.Boolean */,
|
|
21
|
+
name: 'isPublic',
|
|
22
|
+
displayName: 'AbpIdentity::DisplayName:IsPublic',
|
|
23
|
+
id: 'role-is-public',
|
|
24
|
+
defaultValue: false,
|
|
25
|
+
},
|
|
26
|
+
]);
|
|
27
|
+
export const DEFAULT_ROLES_EDIT_FORM_PROPS = DEFAULT_ROLES_CREATE_FORM_PROPS;
|
|
28
28
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1mb3JtLXByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvc3JjL2xpYi9kZWZhdWx0cy9kZWZhdWx0LXJvbGVzLWZvcm0tcHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFhLFFBQVEsRUFBMkIsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBa0I7SUFDbEY7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsRUFBRSxFQUFFLFdBQVc7UUFDZixRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQStCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQW1DO1FBQ3RILFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7S0FDeEM7SUFDRDtRQUNFLElBQUksbUNBQW1CO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLFdBQVcsRUFBRSxvQ0FBb0M7UUFDakQsRUFBRSxFQUFFLGlCQUFpQjtRQUNyQixZQUFZLEVBQUUsS0FBSztLQUNwQjtJQUNEO1FBQ0UsSUFBSSxtQ0FBbUI7UUFDdkIsSUFBSSxFQUFFLFVBQVU7UUFDaEIsV0FBVyxFQUFFLG1DQUFtQztRQUNoRCxFQUFFLEVBQUUsZ0JBQWdCO1FBQ3BCLFlBQVksRUFBRSxLQUFLO0tBQ3BCO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZGVudGl0eVJvbGVEdG8gfSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgZVByb3BUeXBlLCBGb3JtUHJvcCwgUHJvcERhdGEsIFByb3BQcmVkaWNhdGUgfSBmcm9tIFwiQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9uc1wiO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfUk9MRVNfQ1JFQVRFX0ZPUk1fUFJPUFMgPSBGb3JtUHJvcC5jcmVhdGVNYW55PElkZW50aXR5Um9sZUR0bz4oW1xyXG4gIHtcclxuICAgIHR5cGU6IGVQcm9wVHlwZS5TdHJpbmcsXHJcbiAgICBuYW1lOiAnbmFtZScsXHJcbiAgICBkaXNwbGF5TmFtZTogJ0FicElkZW50aXR5OjpSb2xlTmFtZScsXHJcbiAgICBpZDogJ3JvbGUtbmFtZScsXHJcbiAgICBkaXNhYmxlZDogKChkYXRhOiBQcm9wRGF0YTxJZGVudGl0eVJvbGVEdG8+KSA9PiBkYXRhLnJlY29yZCAmJiBkYXRhLnJlY29yZC5pc1N0YXRpYykgYXMgUHJvcFByZWRpY2F0ZTxJZGVudGl0eVJvbGVEdG8+LFxyXG4gICAgdmFsaWRhdG9yczogKCkgPT4gW1ZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLkJvb2xlYW4sXHJcbiAgICBuYW1lOiAnaXNEZWZhdWx0JyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOklzRGVmYXVsdCcsXHJcbiAgICBpZDogJ3JvbGUtaXMtZGVmYXVsdCcsXHJcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLkJvb2xlYW4sXHJcbiAgICBuYW1lOiAnaXNQdWJsaWMnLFxyXG4gICAgZGlzcGxheU5hbWU6ICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6SXNQdWJsaWMnLFxyXG4gICAgaWQ6ICdyb2xlLWlzLXB1YmxpYycsXHJcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlLFxyXG4gIH0sXHJcbl0pO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfUk9MRVNfRURJVF9GT1JNX1BST1BTID0gREVGQVVMVF9ST0xFU19DUkVBVEVfRk9STV9QUk9QUztcclxuIl19
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { ToolbarAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
-
import { RolesComponent } from '../components/roles/roles.component';
|
|
3
|
-
export const DEFAULT_ROLES_TOOLBAR_ACTIONS = ToolbarAction.createMany([
|
|
4
|
-
{
|
|
5
|
-
text: 'AbpIdentity::NewRole',
|
|
6
|
-
action: data => {
|
|
7
|
-
const component = data.getInjected(RolesComponent);
|
|
8
|
-
component.add();
|
|
9
|
-
},
|
|
10
|
-
permission: 'AbpIdentity.Roles.Create',
|
|
11
|
-
icon: 'fa fa-plus',
|
|
12
|
-
},
|
|
13
|
-
]);
|
|
1
|
+
import { ToolbarAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
+
import { RolesComponent } from '../components/roles/roles.component';
|
|
3
|
+
export const DEFAULT_ROLES_TOOLBAR_ACTIONS = ToolbarAction.createMany([
|
|
4
|
+
{
|
|
5
|
+
text: 'AbpIdentity::NewRole',
|
|
6
|
+
action: data => {
|
|
7
|
+
const component = data.getInjected(RolesComponent);
|
|
8
|
+
component.add();
|
|
9
|
+
},
|
|
10
|
+
permission: 'AbpIdentity.Roles.Create',
|
|
11
|
+
icon: 'fa fa-plus',
|
|
12
|
+
},
|
|
13
|
+
]);
|
|
14
14
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy10b29sYmFyLWFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtcm9sZXMtdG9vbGJhci1hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFckUsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsYUFBYSxDQUFDLFVBQVUsQ0FBb0I7SUFDdkY7UUFDRSxJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLENBQUM7UUFDRCxVQUFVLEVBQUUsMEJBQTBCO1FBQ3RDLElBQUksRUFBRSxZQUFZO0tBQ25CO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRlbnRpdHlSb2xlRHRvIH0gZnJvbSAnQGFicC9uZy5pZGVudGl0eS9wcm94eSc7XHJcbmltcG9ydCB7IFRvb2xiYXJBY3Rpb24gfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgUm9sZXNDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9ST0xFU19UT09MQkFSX0FDVElPTlMgPSBUb29sYmFyQWN0aW9uLmNyZWF0ZU1hbnk8SWRlbnRpdHlSb2xlRHRvW10+KFtcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6Ok5ld1JvbGUnLFxyXG4gICAgYWN0aW9uOiBkYXRhID0+IHtcclxuICAgICAgY29uc3QgY29tcG9uZW50ID0gZGF0YS5nZXRJbmplY3RlZChSb2xlc0NvbXBvbmVudCk7XHJcbiAgICAgIGNvbXBvbmVudC5hZGQoKTtcclxuICAgIH0sXHJcbiAgICBwZXJtaXNzaW9uOiAnQWJwSWRlbnRpdHkuUm9sZXMuQ3JlYXRlJyxcclxuICAgIGljb246ICdmYSBmYS1wbHVzJyxcclxuICB9LFxyXG5dKTtcclxuIl19
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { EntityAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
-
import { UsersComponent } from '../components/users/users.component';
|
|
3
|
-
import { ConfigStateService } from '@abp/ng.core';
|
|
4
|
-
export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany([
|
|
5
|
-
{
|
|
6
|
-
text: 'AbpIdentity::Edit',
|
|
7
|
-
action: data => {
|
|
8
|
-
const component = data.getInjected(UsersComponent);
|
|
9
|
-
component.edit(data.record.id || '');
|
|
10
|
-
},
|
|
11
|
-
permission: 'AbpIdentity.Users.Update',
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
text: 'AbpIdentity::Permissions',
|
|
15
|
-
action: data => {
|
|
16
|
-
const component = data.getInjected(UsersComponent);
|
|
17
|
-
component.openPermissionsModal(data.record.id || '', data.record.userName);
|
|
18
|
-
},
|
|
19
|
-
permission: 'AbpIdentity.Users.ManagePermissions',
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
text: 'AbpIdentity::Delete',
|
|
23
|
-
action: data => {
|
|
24
|
-
const component = data.getInjected(UsersComponent);
|
|
25
|
-
component.delete(data.record.id || '', data.record.name || data.record.userName || '');
|
|
26
|
-
},
|
|
27
|
-
visible: data => {
|
|
28
|
-
const userName = data?.record.userName;
|
|
29
|
-
const configStateService = data?.getInjected(ConfigStateService);
|
|
30
|
-
const currentUser = configStateService?.getOne('currentUser');
|
|
31
|
-
return userName !== currentUser.userName;
|
|
32
|
-
},
|
|
33
|
-
permission: 'AbpIdentity.Users.Delete',
|
|
34
|
-
},
|
|
35
|
-
]);
|
|
1
|
+
import { EntityAction } from '@abp/ng.theme.shared/extensions';
|
|
2
|
+
import { UsersComponent } from '../components/users/users.component';
|
|
3
|
+
import { ConfigStateService } from '@abp/ng.core';
|
|
4
|
+
export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany([
|
|
5
|
+
{
|
|
6
|
+
text: 'AbpIdentity::Edit',
|
|
7
|
+
action: data => {
|
|
8
|
+
const component = data.getInjected(UsersComponent);
|
|
9
|
+
component.edit(data.record.id || '');
|
|
10
|
+
},
|
|
11
|
+
permission: 'AbpIdentity.Users.Update',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
text: 'AbpIdentity::Permissions',
|
|
15
|
+
action: data => {
|
|
16
|
+
const component = data.getInjected(UsersComponent);
|
|
17
|
+
component.openPermissionsModal(data.record.id || '', data.record.userName);
|
|
18
|
+
},
|
|
19
|
+
permission: 'AbpIdentity.Users.ManagePermissions',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
text: 'AbpIdentity::Delete',
|
|
23
|
+
action: data => {
|
|
24
|
+
const component = data.getInjected(UsersComponent);
|
|
25
|
+
component.delete(data.record.id || '', data.record.name || data.record.userName || '');
|
|
26
|
+
},
|
|
27
|
+
visible: data => {
|
|
28
|
+
const userName = data?.record.userName;
|
|
29
|
+
const configStateService = data?.getInjected(ConfigStateService);
|
|
30
|
+
const currentUser = configStateService?.getOne('currentUser');
|
|
31
|
+
return userName !== currentUser.userName;
|
|
32
|
+
},
|
|
33
|
+
permission: 'AbpIdentity.Users.Delete',
|
|
34
|
+
},
|
|
35
|
+
]);
|
|
36
36
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC11c2Vycy1lbnRpdHktYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvZGVmYXVsdHMvZGVmYXVsdC11c2Vycy1lbnRpdHktYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBa0IsTUFBTSxjQUFjLENBQUM7QUFFbEUsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBa0I7SUFDbkY7UUFDRSxJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsVUFBVSxFQUFFLDBCQUEwQjtLQUN2QztJQUNEO1FBQ0UsSUFBSSxFQUFFLDBCQUEwQjtRQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsVUFBVSxFQUFFLHFDQUFxQztLQUNsRDtJQUNEO1FBQ0UsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLENBQUM7UUFDRCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDZCxNQUFNLFFBQVEsR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUN2QyxNQUFNLGtCQUFrQixHQUFHLElBQUksRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUNqRSxNQUFNLFdBQVcsR0FBRyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFtQixDQUFDO1lBQ2hGLE9BQU8sUUFBUSxLQUFLLFdBQVcsQ0FBQyxRQUFRLENBQUM7UUFDM0MsQ0FBQztRQUNELFVBQVUsRUFBRSwwQkFBMEI7S0FDdkM7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZGVudGl0eVVzZXJEdG8gfSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgRW50aXR5QWN0aW9uIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IFVzZXJzQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy91c2Vycy91c2Vycy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UsIEN1cnJlbnRVc2VyRHRvIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1VTRVJTX0VOVElUWV9BQ1RJT05TID0gRW50aXR5QWN0aW9uLmNyZWF0ZU1hbnk8SWRlbnRpdHlVc2VyRHRvPihbXHJcbiAge1xyXG4gICAgdGV4dDogJ0FicElkZW50aXR5OjpFZGl0JyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoVXNlcnNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQuZWRpdChkYXRhLnJlY29yZC5pZCB8fCAnJyk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlVzZXJzLlVwZGF0ZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6OlBlcm1pc3Npb25zJyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoVXNlcnNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQub3BlblBlcm1pc3Npb25zTW9kYWwoZGF0YS5yZWNvcmQuaWQgfHwgJycsIGRhdGEucmVjb3JkLnVzZXJOYW1lKTtcclxuICAgIH0sXHJcbiAgICBwZXJtaXNzaW9uOiAnQWJwSWRlbnRpdHkuVXNlcnMuTWFuYWdlUGVybWlzc2lvbnMnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGV4dDogJ0FicElkZW50aXR5OjpEZWxldGUnLFxyXG4gICAgYWN0aW9uOiBkYXRhID0+IHtcclxuICAgICAgY29uc3QgY29tcG9uZW50ID0gZGF0YS5nZXRJbmplY3RlZChVc2Vyc0NvbXBvbmVudCk7XHJcbiAgICAgIGNvbXBvbmVudC5kZWxldGUoZGF0YS5yZWNvcmQuaWQgfHwgJycsIGRhdGEucmVjb3JkLm5hbWUgfHwgZGF0YS5yZWNvcmQudXNlck5hbWUgfHwgJycpO1xyXG4gICAgfSxcclxuICAgIHZpc2libGU6IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCB1c2VyTmFtZSA9IGRhdGE/LnJlY29yZC51c2VyTmFtZTtcclxuICAgICAgY29uc3QgY29uZmlnU3RhdGVTZXJ2aWNlID0gZGF0YT8uZ2V0SW5qZWN0ZWQoQ29uZmlnU3RhdGVTZXJ2aWNlKTtcclxuICAgICAgY29uc3QgY3VycmVudFVzZXIgPSBjb25maWdTdGF0ZVNlcnZpY2U/LmdldE9uZSgnY3VycmVudFVzZXInKSBhcyBDdXJyZW50VXNlckR0bztcclxuICAgICAgcmV0dXJuIHVzZXJOYW1lICE9PSBjdXJyZW50VXNlci51c2VyTmFtZTtcclxuICAgIH0sXHJcbiAgICBwZXJtaXNzaW9uOiAnQWJwSWRlbnRpdHkuVXNlcnMuRGVsZXRlJyxcclxuICB9LFxyXG5dKTtcclxuIl19
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { escapeHtmlChars, LocalizationService } from '@abp/ng.core';
|
|
2
|
-
import { EntityProp } from '@abp/ng.theme.shared/extensions';
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
export const DEFAULT_USERS_ENTITY_PROPS = EntityProp.createMany([
|
|
5
|
-
{
|
|
6
|
-
type: "string" /* ePropType.String */,
|
|
7
|
-
name: 'userName',
|
|
8
|
-
displayName: 'AbpIdentity::UserName',
|
|
9
|
-
sortable: true,
|
|
10
|
-
columnWidth: 250,
|
|
11
|
-
valueResolver: data => {
|
|
12
|
-
const l10n = data.getInjected(LocalizationService);
|
|
13
|
-
const t = l10n.instant.bind(l10n);
|
|
14
|
-
const inactiveIcon = `<i title="${t('AbpIdentity::ThisUserIsNotActiveMessage')}" class="fas fa-ban text-danger me-1"></i>`;
|
|
1
|
+
import { escapeHtmlChars, LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { EntityProp } from '@abp/ng.theme.shared/extensions';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
export const DEFAULT_USERS_ENTITY_PROPS = EntityProp.createMany([
|
|
5
|
+
{
|
|
6
|
+
type: "string" /* ePropType.String */,
|
|
7
|
+
name: 'userName',
|
|
8
|
+
displayName: 'AbpIdentity::UserName',
|
|
9
|
+
sortable: true,
|
|
10
|
+
columnWidth: 250,
|
|
11
|
+
valueResolver: data => {
|
|
12
|
+
const l10n = data.getInjected(LocalizationService);
|
|
13
|
+
const t = l10n.instant.bind(l10n);
|
|
14
|
+
const inactiveIcon = `<i title="${t('AbpIdentity::ThisUserIsNotActiveMessage')}" class="fas fa-ban text-danger me-1" aria-hidden="true"></i>`;
|
|
15
15
|
return of(`
|
|
16
16
|
${!data.record.isActive ? inactiveIcon : ''}
|
|
17
|
-
<span class="${!data.record.isActive ? 'text-muted' : ''}">${escapeHtmlChars(data.record.userName)}</span>`);
|
|
18
|
-
},
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
type: "string" /* ePropType.String */,
|
|
22
|
-
name: 'email',
|
|
23
|
-
displayName: 'AbpIdentity::EmailAddress',
|
|
24
|
-
sortable: true,
|
|
25
|
-
columnWidth: 250,
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
type: "string" /* ePropType.String */,
|
|
29
|
-
name: 'phoneNumber',
|
|
30
|
-
displayName: 'AbpIdentity::PhoneNumber',
|
|
31
|
-
sortable: true,
|
|
32
|
-
columnWidth: 250,
|
|
33
|
-
},
|
|
34
|
-
]);
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
<span class="${!data.record.isActive ? 'text-muted' : ''}">${escapeHtmlChars(data.record.userName)}</span>`);
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
type: "string" /* ePropType.String */,
|
|
22
|
+
name: 'email',
|
|
23
|
+
displayName: 'AbpIdentity::EmailAddress',
|
|
24
|
+
sortable: true,
|
|
25
|
+
columnWidth: 250,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
type: "string" /* ePropType.String */,
|
|
29
|
+
name: 'phoneNumber',
|
|
30
|
+
displayName: 'AbpIdentity::PhoneNumber',
|
|
31
|
+
sortable: true,
|
|
32
|
+
columnWidth: 250,
|
|
33
|
+
},
|
|
34
|
+
]);
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC11c2Vycy1lbnRpdHktcHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtdXNlcnMtZW50aXR5LXByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBa0I7SUFDL0U7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsVUFBVTtRQUNoQixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLFFBQVEsRUFBRSxJQUFJO1FBQ2QsV0FBVyxFQUFFLEdBQUc7UUFDaEIsYUFBYSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNuRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVsQyxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FDakMseUNBQXlDLENBQzFDLCtEQUErRCxDQUFDO1lBRWpFLE9BQU8sRUFBRSxDQUNQO1VBQ0UsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFO3VCQUM1QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxlQUFlLENBQzFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUNyQixTQUFTLENBQ1gsQ0FBQztRQUNKLENBQUM7S0FDRjtJQUNEO1FBQ0UsSUFBSSxpQ0FBa0I7UUFDdEIsSUFBSSxFQUFFLE9BQU87UUFDYixXQUFXLEVBQUUsMkJBQTJCO1FBQ3hDLFFBQVEsRUFBRSxJQUFJO1FBQ2QsV0FBVyxFQUFFLEdBQUc7S0FDakI7SUFDRDtRQUNFLElBQUksaUNBQWtCO1FBQ3RCLElBQUksRUFBRSxhQUFhO1FBQ25CLFdBQVcsRUFBRSwwQkFBMEI7UUFDdkMsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUsR0FBRztLQUNqQjtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGVzY2FwZUh0bWxDaGFycywgTG9jYWxpemF0aW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IElkZW50aXR5VXNlckR0byB9IGZyb20gJ0BhYnAvbmcuaWRlbnRpdHkvcHJveHknO1xyXG5pbXBvcnQgeyBFbnRpdHlQcm9wLCBlUHJvcFR5cGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1VTRVJTX0VOVElUWV9QUk9QUyA9IEVudGl0eVByb3AuY3JlYXRlTWFueTxJZGVudGl0eVVzZXJEdG8+KFtcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ3VzZXJOYW1lJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OlVzZXJOYW1lJyxcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgY29sdW1uV2lkdGg6IDI1MCxcclxuICAgIHZhbHVlUmVzb2x2ZXI6IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCBsMTBuID0gZGF0YS5nZXRJbmplY3RlZChMb2NhbGl6YXRpb25TZXJ2aWNlKTtcclxuICAgICAgY29uc3QgdCA9IGwxMG4uaW5zdGFudC5iaW5kKGwxMG4pO1xyXG5cclxuICAgICAgY29uc3QgaW5hY3RpdmVJY29uID0gYDxpIHRpdGxlPVwiJHt0KFxyXG4gICAgICAgICdBYnBJZGVudGl0eTo6VGhpc1VzZXJJc05vdEFjdGl2ZU1lc3NhZ2UnLFxyXG4gICAgICApfVwiIGNsYXNzPVwiZmFzIGZhLWJhbiB0ZXh0LWRhbmdlciBtZS0xXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPmA7XHJcblxyXG4gICAgICByZXR1cm4gb2YoXHJcbiAgICAgICAgYFxyXG4gICAgICAgICR7IWRhdGEucmVjb3JkLmlzQWN0aXZlID8gaW5hY3RpdmVJY29uIDogJyd9XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCIkeyFkYXRhLnJlY29yZC5pc0FjdGl2ZSA/ICd0ZXh0LW11dGVkJyA6ICcnfVwiPiR7ZXNjYXBlSHRtbENoYXJzKFxyXG4gICAgICAgICAgZGF0YS5yZWNvcmQudXNlck5hbWUsXHJcbiAgICAgICAgKX08L3NwYW4+YCxcclxuICAgICAgKTtcclxuICAgIH0sXHJcbiAgfSxcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ2VtYWlsJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkVtYWlsQWRkcmVzcycsXHJcbiAgICBzb3J0YWJsZTogdHJ1ZSxcclxuICAgIGNvbHVtbldpZHRoOiAyNTAsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ3Bob25lTnVtYmVyJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OlBob25lTnVtYmVyJyxcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgY29sdW1uV2lkdGg6IDI1MCxcclxuICB9LFxyXG5dKTtcclxuIl19
|