@memberjunction/ng-resource-permissions 2.20.1 → 2.20.3
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.
|
@@ -39,14 +39,31 @@ export declare class ResourcePermissionsComponent extends BaseAngularComponent i
|
|
|
39
39
|
* Allows you to determine if the user is able to delete existing permissions for the resource.
|
|
40
40
|
*/
|
|
41
41
|
AllowDeletePermissions: boolean;
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
/**
|
|
43
|
+
* List of possible permission levels that can be set for the resource. An array of strings, defaults to ['View', 'Edit', 'Owner']
|
|
44
|
+
*/
|
|
45
|
+
PermissionLevels: string[];
|
|
46
|
+
/**
|
|
47
|
+
* Specifies the types of permissions the UI will allow settings for. An array of strings, defaults to ['User', 'Role']
|
|
48
|
+
*/
|
|
49
|
+
PermissionTypes: string[];
|
|
50
|
+
/**
|
|
51
|
+
* This optional input allows you to exclude certain roles from the list of roles that can be selected for permissions. If existing permissions have been created with roles that are in this list they will still be displayed,
|
|
52
|
+
* but the user will not be able to add new permissions with these roles. This is an array of strings with the NAMES of the roles.
|
|
53
|
+
*/
|
|
54
|
+
ExcludedRoleNames: string[];
|
|
55
|
+
/**
|
|
56
|
+
* This optional input allows you to exclude certain users from the list of users that can be selected for permissions. If existing permissions have been created with users that are in this list they will still be displayed,
|
|
57
|
+
* but the user will not be able to add new permissions with these users. This is an array of strings with EMAILS.
|
|
58
|
+
*/
|
|
59
|
+
ExcludedUserEmails: string[];
|
|
44
60
|
AllUsers: UserEntity[];
|
|
45
61
|
AllRoles: RoleInfo[];
|
|
46
62
|
SelectedUser: UserEntity | null;
|
|
47
63
|
SelectedRole: RoleInfo | null;
|
|
48
64
|
SelectedType: 'User' | 'Role';
|
|
49
65
|
SelectedPermissionLevel: 'View' | 'Edit' | 'Owner';
|
|
66
|
+
_Loading: boolean;
|
|
50
67
|
UpdateResourceRecordID(ResourceRecordID: string): Promise<void>;
|
|
51
68
|
resourcePermissions: ResourcePermissionEntity[];
|
|
52
69
|
ngAfterViewInit(): Promise<void>;
|
|
@@ -58,6 +75,6 @@ export declare class ResourcePermissionsComponent extends BaseAngularComponent i
|
|
|
58
75
|
SavePermissions(): Promise<boolean>;
|
|
59
76
|
protected GetEngine(): ResourcePermissionEngine;
|
|
60
77
|
static ɵfac: i0.ɵɵFactoryDeclaration<ResourcePermissionsComponent, never>;
|
|
61
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ResourcePermissionsComponent, "mj-resource-permissions", never, { "ResourceTypeID": { "alias": "ResourceTypeID"; "required": false; }; "ResourceRecordID": { "alias": "ResourceRecordID"; "required": false; }; "ShowSaveButton": { "alias": "ShowSaveButton"; "required": false; }; "ShowUserErrorMessages": { "alias": "ShowUserErrorMessages"; "required": false; }; "AllowAddPermissions": { "alias": "AllowAddPermissions"; "required": false; }; "AllowEditPermissions": { "alias": "AllowEditPermissions"; "required": false; }; "AllowDeletePermissions": { "alias": "AllowDeletePermissions"; "required": false; }; }, {}, never, never, false, never>;
|
|
78
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ResourcePermissionsComponent, "mj-resource-permissions", never, { "ResourceTypeID": { "alias": "ResourceTypeID"; "required": false; }; "ResourceRecordID": { "alias": "ResourceRecordID"; "required": false; }; "ShowSaveButton": { "alias": "ShowSaveButton"; "required": false; }; "ShowUserErrorMessages": { "alias": "ShowUserErrorMessages"; "required": false; }; "AllowAddPermissions": { "alias": "AllowAddPermissions"; "required": false; }; "AllowEditPermissions": { "alias": "AllowEditPermissions"; "required": false; }; "AllowDeletePermissions": { "alias": "AllowDeletePermissions"; "required": false; }; "PermissionLevels": { "alias": "PermissionLevels"; "required": false; }; "PermissionTypes": { "alias": "PermissionTypes"; "required": false; }; "ExcludedRoleNames": { "alias": "ExcludedRoleNames"; "required": false; }; "ExcludedUserEmails": { "alias": "ExcludedUserEmails"; "required": false; }; }, {}, never, never, false, never>;
|
|
62
79
|
}
|
|
63
80
|
//# sourceMappingURL=resource-permissions.component.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-permissions.component.d.ts","sourceRoot":"","sources":["../../src/lib/resource-permissions.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAoB,MAAM,eAAe,CAAC;AAChE,OAAO,EAA2D,QAAQ,EAAW,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;AAGrE;;;GAGG;AACH,qBAKa,4BAA6B,SAAQ,oBAAqB,YAAW,aAAa;IAC7F;;OAEG;IACM,cAAc,EAAG,MAAM,CAAC;IACjC;;OAEG;IACM,gBAAgB,EAAG,MAAM,CAAC;IACnC;;;;OAIG;IACM,cAAc,EAAE,OAAO,CAAS;IACzC;;;OAGG;IACM,qBAAqB,EAAE,OAAO,CAAS;IAChD;;OAEG;IACM,mBAAmB,EAAE,OAAO,CAAQ;IAC7C;;OAEG;IACM,oBAAoB,EAAE,OAAO,CAAQ;IAC9C;;OAEG;IACM,sBAAsB,EAAE,OAAO,CAAQ;
|
|
1
|
+
{"version":3,"file":"resource-permissions.component.d.ts","sourceRoot":"","sources":["../../src/lib/resource-permissions.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAoB,MAAM,eAAe,CAAC;AAChE,OAAO,EAA2D,QAAQ,EAAW,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;AAGrE;;;GAGG;AACH,qBAKa,4BAA6B,SAAQ,oBAAqB,YAAW,aAAa;IAC7F;;OAEG;IACM,cAAc,EAAG,MAAM,CAAC;IACjC;;OAEG;IACM,gBAAgB,EAAG,MAAM,CAAC;IACnC;;;;OAIG;IACM,cAAc,EAAE,OAAO,CAAS;IACzC;;;OAGG;IACM,qBAAqB,EAAE,OAAO,CAAS;IAChD;;OAEG;IACM,mBAAmB,EAAE,OAAO,CAAQ;IAC7C;;OAEG;IACM,oBAAoB,EAAE,OAAO,CAAQ;IAC9C;;OAEG;IACM,sBAAsB,EAAE,OAAO,CAAQ;IAEhD;;OAEG;IACM,gBAAgB,WAA6B;IAEtD;;OAEG;IACM,eAAe,WAAoB;IAE5C;;;OAGG;IACM,iBAAiB,EAAE,MAAM,EAAE,CAAM;IAE1C;;;OAGG;IACM,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAEpC,QAAQ,EAAE,UAAU,EAAE,CAAM;IAC5B,QAAQ,EAAE,QAAQ,EAAE,CAAM;IAE1B,YAAY,EAAE,UAAU,GAAG,IAAI,CAAQ;IACvC,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACrC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAU;IACvC,uBAAuB,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAU;IAE5D,QAAQ,EAAE,OAAO,CAAS;IAEpB,sBAAsB,CAAC,gBAAgB,EAAE,MAAM;IAQrD,mBAAmB,EAAE,wBAAwB,EAAE,CAAM;IACtD,eAAe;IAkCrB,OAAO,CAAC,eAAe,CAAkC;IAClD,gBAAgB,CAAC,UAAU,EAAE,wBAAwB;IAK5D,OAAO,CAAC,YAAY,CAAkC;IACzC,aAAa;IAuBnB,uBAAuB,IAAI,OAAO;IAkB5B,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAwEhD,SAAS,CAAC,SAAS,IAAI,wBAAwB;yCApOpC,4BAA4B;2CAA5B,4BAA4B;CAuOxC"}
|
|
@@ -16,98 +16,102 @@ import * as i0 from "@angular/core";
|
|
|
16
16
|
import * as i1 from "@angular/forms";
|
|
17
17
|
import * as i2 from "@progress/kendo-angular-buttons";
|
|
18
18
|
import * as i3 from "@progress/kendo-angular-dropdowns";
|
|
19
|
+
import * as i4 from "@progress/kendo-angular-indicators";
|
|
19
20
|
function ResourcePermissionsComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
21
|
+
i0.ɵɵelement(0, "kendo-loader");
|
|
22
|
+
} }
|
|
23
|
+
function ResourcePermissionsComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
20
24
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
21
25
|
i0.ɵɵelementStart(0, "button", 5);
|
|
22
|
-
i0.ɵɵlistener("click", function
|
|
26
|
+
i0.ɵɵlistener("click", function ResourcePermissionsComponent_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.SavePermissions()); });
|
|
23
27
|
i0.ɵɵtext(1, "Save");
|
|
24
28
|
i0.ɵɵelementEnd();
|
|
25
29
|
} }
|
|
26
|
-
function
|
|
30
|
+
function ResourcePermissionsComponent_Conditional_4_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
27
31
|
const _r4 = i0.ɵɵgetCurrentView();
|
|
28
32
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 11);
|
|
29
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
33
|
+
i0.ɵɵtwoWayListener("ngModelChange", function ResourcePermissionsComponent_Conditional_4_Conditional_4_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.SelectedUser, $event) || (ctx_r1.SelectedUser = $event); return i0.ɵɵresetView($event); });
|
|
30
34
|
i0.ɵɵelementEnd();
|
|
31
35
|
} if (rf & 2) {
|
|
32
36
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
33
37
|
i0.ɵɵproperty("data", ctx_r1.AllUsers);
|
|
34
38
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.SelectedUser);
|
|
35
39
|
} }
|
|
36
|
-
function
|
|
40
|
+
function ResourcePermissionsComponent_Conditional_4_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
37
41
|
const _r5 = i0.ɵɵgetCurrentView();
|
|
38
42
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 12);
|
|
39
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
43
|
+
i0.ɵɵtwoWayListener("ngModelChange", function ResourcePermissionsComponent_Conditional_4_Conditional_5_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r5); const ctx_r1 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r1.SelectedRole, $event) || (ctx_r1.SelectedRole = $event); return i0.ɵɵresetView($event); });
|
|
40
44
|
i0.ɵɵelementEnd();
|
|
41
45
|
} if (rf & 2) {
|
|
42
46
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
43
47
|
i0.ɵɵproperty("data", ctx_r1.AllRoles);
|
|
44
48
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.SelectedRole);
|
|
45
49
|
} }
|
|
46
|
-
function
|
|
50
|
+
function ResourcePermissionsComponent_Conditional_4_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
47
51
|
i0.ɵɵtext(0);
|
|
48
52
|
} if (rf & 2) {
|
|
49
53
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
50
54
|
i0.ɵɵtextInterpolate1(" SelectedType: ", ctx_r1.SelectedType, " ");
|
|
51
55
|
} }
|
|
52
|
-
function
|
|
56
|
+
function ResourcePermissionsComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
53
57
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
54
58
|
i0.ɵɵelementStart(0, "div", 3)(1, "span", 6);
|
|
55
59
|
i0.ɵɵtext(2, "Add Permission");
|
|
56
60
|
i0.ɵɵelementEnd();
|
|
57
61
|
i0.ɵɵelementStart(3, "kendo-dropdownlist", 7);
|
|
58
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
62
|
+
i0.ɵɵtwoWayListener("ngModelChange", function ResourcePermissionsComponent_Conditional_4_Template_kendo_dropdownlist_ngModelChange_3_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r1.SelectedType, $event) || (ctx_r1.SelectedType = $event); return i0.ɵɵresetView($event); });
|
|
59
63
|
i0.ɵɵelementEnd();
|
|
60
|
-
i0.ɵɵtemplate(4,
|
|
64
|
+
i0.ɵɵtemplate(4, ResourcePermissionsComponent_Conditional_4_Conditional_4_Template, 1, 2, "kendo-dropdownlist", 8)(5, ResourcePermissionsComponent_Conditional_4_Conditional_5_Template, 1, 2, "kendo-dropdownlist", 9)(6, ResourcePermissionsComponent_Conditional_4_Conditional_6_Template, 1, 1);
|
|
61
65
|
i0.ɵɵelementStart(7, "kendo-dropdownlist", 7);
|
|
62
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
66
|
+
i0.ɵɵtwoWayListener("ngModelChange", function ResourcePermissionsComponent_Conditional_4_Template_kendo_dropdownlist_ngModelChange_7_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r1.SelectedPermissionLevel, $event) || (ctx_r1.SelectedPermissionLevel = $event); return i0.ɵɵresetView($event); });
|
|
63
67
|
i0.ɵɵelementEnd();
|
|
64
68
|
i0.ɵɵelementStart(8, "button", 10);
|
|
65
|
-
i0.ɵɵlistener("click", function
|
|
69
|
+
i0.ɵɵlistener("click", function ResourcePermissionsComponent_Conditional_4_Template_button_click_8_listener() { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.addPermission()); });
|
|
66
70
|
i0.ɵɵtext(9, "Add");
|
|
67
71
|
i0.ɵɵelementEnd()();
|
|
68
72
|
} if (rf & 2) {
|
|
69
73
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
70
74
|
i0.ɵɵadvance(3);
|
|
71
|
-
i0.ɵɵproperty("data", ctx_r1.
|
|
75
|
+
i0.ɵɵproperty("data", ctx_r1.PermissionTypes);
|
|
72
76
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.SelectedType);
|
|
73
77
|
i0.ɵɵadvance();
|
|
74
78
|
i0.ɵɵconditional(ctx_r1.SelectedType === "User" ? 4 : ctx_r1.SelectedType === "Role" ? 5 : 6);
|
|
75
79
|
i0.ɵɵadvance(3);
|
|
76
|
-
i0.ɵɵproperty("data", ctx_r1.
|
|
80
|
+
i0.ɵɵproperty("data", ctx_r1.PermissionLevels);
|
|
77
81
|
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.SelectedPermissionLevel);
|
|
78
82
|
i0.ɵɵadvance();
|
|
79
83
|
i0.ɵɵproperty("disabled", ctx_r1.permissionAlreadyExists())("title", ctx_r1.permissionAlreadyExists() ? "This combination of Type/User/Role already exists below" : "");
|
|
80
84
|
} }
|
|
81
|
-
function
|
|
85
|
+
function ResourcePermissionsComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
|
|
82
86
|
i0.ɵɵelementStart(0, "th");
|
|
83
87
|
i0.ɵɵtext(1, "Actions");
|
|
84
88
|
i0.ɵɵelementEnd();
|
|
85
89
|
} }
|
|
86
|
-
function
|
|
90
|
+
function ResourcePermissionsComponent_For_17_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
87
91
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
88
92
|
i0.ɵɵelementStart(0, "kendo-dropdownlist", 14);
|
|
89
|
-
i0.ɵɵtwoWayListener("ngModelChange", function
|
|
93
|
+
i0.ɵɵtwoWayListener("ngModelChange", function ResourcePermissionsComponent_For_17_Conditional_6_Template_kendo_dropdownlist_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r6); const p_r7 = i0.ɵɵnextContext().$implicit; i0.ɵɵtwoWayBindingSet(p_r7.PermissionLevel, $event) || (p_r7.PermissionLevel = $event); return i0.ɵɵresetView($event); });
|
|
90
94
|
i0.ɵɵelementEnd();
|
|
91
95
|
} if (rf & 2) {
|
|
92
96
|
const p_r7 = i0.ɵɵnextContext().$implicit;
|
|
93
97
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
94
98
|
i0.ɵɵtwoWayProperty("ngModel", p_r7.PermissionLevel);
|
|
95
|
-
i0.ɵɵproperty("data", ctx_r1.
|
|
99
|
+
i0.ɵɵproperty("data", ctx_r1.PermissionLevels);
|
|
96
100
|
} }
|
|
97
|
-
function
|
|
101
|
+
function ResourcePermissionsComponent_For_17_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
98
102
|
i0.ɵɵtext(0);
|
|
99
103
|
} if (rf & 2) {
|
|
100
104
|
const p_r7 = i0.ɵɵnextContext().$implicit;
|
|
101
105
|
i0.ɵɵtextInterpolate1(" ", p_r7.PermissionLevel, " ");
|
|
102
106
|
} }
|
|
103
|
-
function
|
|
107
|
+
function ResourcePermissionsComponent_For_17_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
104
108
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
105
109
|
i0.ɵɵelementStart(0, "td")(1, "button", 5);
|
|
106
|
-
i0.ɵɵlistener("click", function
|
|
110
|
+
i0.ɵɵlistener("click", function ResourcePermissionsComponent_For_17_Conditional_8_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r8); const p_r7 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.deletePermission(p_r7)); });
|
|
107
111
|
i0.ɵɵelement(2, "span", 15);
|
|
108
112
|
i0.ɵɵelementEnd()();
|
|
109
113
|
} }
|
|
110
|
-
function
|
|
114
|
+
function ResourcePermissionsComponent_For_17_Template(rf, ctx) { if (rf & 1) {
|
|
111
115
|
i0.ɵɵelementStart(0, "tr")(1, "td");
|
|
112
116
|
i0.ɵɵtext(2);
|
|
113
117
|
i0.ɵɵelementEnd();
|
|
@@ -115,9 +119,9 @@ function ResourcePermissionsComponent_For_16_Template(rf, ctx) { if (rf & 1) {
|
|
|
115
119
|
i0.ɵɵtext(4);
|
|
116
120
|
i0.ɵɵelementEnd();
|
|
117
121
|
i0.ɵɵelementStart(5, "td");
|
|
118
|
-
i0.ɵɵtemplate(6,
|
|
122
|
+
i0.ɵɵtemplate(6, ResourcePermissionsComponent_For_17_Conditional_6_Template, 1, 2, "kendo-dropdownlist", 13)(7, ResourcePermissionsComponent_For_17_Conditional_7_Template, 1, 1);
|
|
119
123
|
i0.ɵɵelementEnd();
|
|
120
|
-
i0.ɵɵtemplate(8,
|
|
124
|
+
i0.ɵɵtemplate(8, ResourcePermissionsComponent_For_17_Conditional_8_Template, 3, 0, "td");
|
|
121
125
|
i0.ɵɵelementEnd();
|
|
122
126
|
} if (rf & 2) {
|
|
123
127
|
const p_r7 = ctx.$implicit;
|
|
@@ -161,15 +165,31 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
161
165
|
* Allows you to determine if the user is able to delete existing permissions for the resource.
|
|
162
166
|
*/
|
|
163
167
|
this.AllowDeletePermissions = true;
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
168
|
+
/**
|
|
169
|
+
* List of possible permission levels that can be set for the resource. An array of strings, defaults to ['View', 'Edit', 'Owner']
|
|
170
|
+
*/
|
|
171
|
+
this.PermissionLevels = ['View', 'Edit', 'Owner']; // these are the possible permission levels
|
|
172
|
+
/**
|
|
173
|
+
* Specifies the types of permissions the UI will allow settings for. An array of strings, defaults to ['User', 'Role']
|
|
174
|
+
*/
|
|
175
|
+
this.PermissionTypes = ['User', 'Role'];
|
|
176
|
+
/**
|
|
177
|
+
* This optional input allows you to exclude certain roles from the list of roles that can be selected for permissions. If existing permissions have been created with roles that are in this list they will still be displayed,
|
|
178
|
+
* but the user will not be able to add new permissions with these roles. This is an array of strings with the NAMES of the roles.
|
|
179
|
+
*/
|
|
180
|
+
this.ExcludedRoleNames = [];
|
|
181
|
+
/**
|
|
182
|
+
* This optional input allows you to exclude certain users from the list of users that can be selected for permissions. If existing permissions have been created with users that are in this list they will still be displayed,
|
|
183
|
+
* but the user will not be able to add new permissions with these users. This is an array of strings with EMAILS.
|
|
184
|
+
*/
|
|
185
|
+
this.ExcludedUserEmails = [];
|
|
167
186
|
this.AllUsers = [];
|
|
168
187
|
this.AllRoles = [];
|
|
169
188
|
this.SelectedUser = null;
|
|
170
189
|
this.SelectedRole = null;
|
|
171
190
|
this.SelectedType = 'Role';
|
|
172
191
|
this.SelectedPermissionLevel = 'View';
|
|
192
|
+
this._Loading = false;
|
|
173
193
|
this.resourcePermissions = [];
|
|
174
194
|
this._pendingDeletes = [];
|
|
175
195
|
this._pendingAdds = [];
|
|
@@ -188,6 +208,7 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
188
208
|
if (!this.ResourceTypeID || !this.ResourceRecordID) {
|
|
189
209
|
throw new Error('ResourceTypeID and ResourceRecordID must be set');
|
|
190
210
|
}
|
|
211
|
+
this._Loading = true;
|
|
191
212
|
// load up the current permissions for the specified ResourceTypeID and ResourceRecordID
|
|
192
213
|
const engine = this.GetEngine();
|
|
193
214
|
yield engine.Config(false, this.ProviderToUse.CurrentUser, this.ProviderToUse);
|
|
@@ -202,12 +223,15 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
202
223
|
OrderBy: "Name",
|
|
203
224
|
ExtraFilter: "IsActive=1"
|
|
204
225
|
});
|
|
205
|
-
|
|
206
|
-
this.
|
|
226
|
+
// filter out any users that are in the ExcludedUserEmails list
|
|
227
|
+
this.AllUsers = result.Results.filter((u) => !this.ExcludedUserEmails.includes(u.Email));
|
|
228
|
+
// filter out any roles that are in the ExcludedRoleNames list
|
|
229
|
+
this.AllRoles = p.Roles.filter((r) => !this.ExcludedRoleNames.includes(r.Name));
|
|
207
230
|
if (this.AllUsers.length > 0)
|
|
208
231
|
this.SelectedUser = this.AllUsers[0];
|
|
209
232
|
if (this.AllRoles.length > 0)
|
|
210
233
|
this.SelectedRole = this.AllRoles[0];
|
|
234
|
+
this._Loading = false;
|
|
211
235
|
});
|
|
212
236
|
}
|
|
213
237
|
deletePermission(permission) {
|
|
@@ -258,13 +282,14 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
258
282
|
SavePermissions() {
|
|
259
283
|
return __awaiter(this, void 0, void 0, function* () {
|
|
260
284
|
// first delete any permissions that were marked for deletion
|
|
285
|
+
this._Loading = true;
|
|
261
286
|
const p = this.ProviderToUse;
|
|
262
287
|
const tg = yield p.CreateTransactionGroup();
|
|
263
288
|
for (const permission of this._pendingDeletes) {
|
|
264
289
|
if (permission.IsSaved) {
|
|
265
290
|
// only delete records previously saved, sometimes a user adds a new permission and deletes it before saving it
|
|
266
291
|
permission.TransactionGroup = tg;
|
|
267
|
-
if (!permission.Delete()) { //
|
|
292
|
+
if (!(yield permission.Delete())) { // we use await here because the promise will resolve before the actual save occurs --- the internals will not call the network until tg.Submit() below
|
|
268
293
|
// validation errors come back here
|
|
269
294
|
if (this.ShowUserErrorMessages)
|
|
270
295
|
MJNotificationService.Instance.CreateSimpleNotification('Error saving permissions', 'error', 2500);
|
|
@@ -278,7 +303,7 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
278
303
|
if (this._pendingDeletes.includes(permission)) {
|
|
279
304
|
// don't save a permission record that is new, if it was also marked for deletion
|
|
280
305
|
permission.TransactionGroup = tg;
|
|
281
|
-
if (!permission.Save()) { // no await
|
|
306
|
+
if (!permission.Save()) { // no await on saves, use tg.Submit() below
|
|
282
307
|
// validation errors come back here
|
|
283
308
|
if (this.ShowUserErrorMessages)
|
|
284
309
|
MJNotificationService.Instance.CreateSimpleNotification('Error saving permissions', 'error', 2500);
|
|
@@ -292,7 +317,7 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
292
317
|
// make sure not in the delete array
|
|
293
318
|
if (!this._pendingDeletes.includes(permission)) {
|
|
294
319
|
permission.TransactionGroup = tg;
|
|
295
|
-
if (!permission.Save()) { // no await
|
|
320
|
+
if (!permission.Save()) { // no await on saves, use tg.Submit() below
|
|
296
321
|
// validation errors come back here
|
|
297
322
|
if (this.ShowUserErrorMessages)
|
|
298
323
|
MJNotificationService.Instance.CreateSimpleNotification('Error saving permissions', 'error', 2500);
|
|
@@ -303,6 +328,7 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
303
328
|
}
|
|
304
329
|
// now save the changes
|
|
305
330
|
if (yield tg.Submit()) {
|
|
331
|
+
this._Loading = false;
|
|
306
332
|
this._pendingDeletes = [];
|
|
307
333
|
this._pendingAdds = [];
|
|
308
334
|
const engine = this.GetEngine();
|
|
@@ -311,6 +337,7 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
311
337
|
}
|
|
312
338
|
else {
|
|
313
339
|
// we had an error, show the user via SharedService
|
|
340
|
+
this._Loading = false;
|
|
314
341
|
if (this.ShowUserErrorMessages)
|
|
315
342
|
MJNotificationService.Instance.CreateSimpleNotification('Error saving permissions', 'error');
|
|
316
343
|
LogError('Error saving permissions in the transaction group');
|
|
@@ -323,38 +350,40 @@ export class ResourcePermissionsComponent extends BaseAngularComponent {
|
|
|
323
350
|
}
|
|
324
351
|
}
|
|
325
352
|
ResourcePermissionsComponent.ɵfac = /*@__PURE__*/ (() => { let ɵResourcePermissionsComponent_BaseFactory; return function ResourcePermissionsComponent_Factory(t) { return (ɵResourcePermissionsComponent_BaseFactory || (ɵResourcePermissionsComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ResourcePermissionsComponent)))(t || ResourcePermissionsComponent); }; })();
|
|
326
|
-
ResourcePermissionsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ResourcePermissionsComponent, selectors: [["mj-resource-permissions"]], inputs: { ResourceTypeID: "ResourceTypeID", ResourceRecordID: "ResourceRecordID", ShowSaveButton: "ShowSaveButton", ShowUserErrorMessages: "ShowUserErrorMessages", AllowAddPermissions: "AllowAddPermissions", AllowEditPermissions: "AllowEditPermissions", AllowDeletePermissions: "AllowDeletePermissions" }, features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
353
|
+
ResourcePermissionsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ResourcePermissionsComponent, selectors: [["mj-resource-permissions"]], inputs: { ResourceTypeID: "ResourceTypeID", ResourceRecordID: "ResourceRecordID", ShowSaveButton: "ShowSaveButton", ShowUserErrorMessages: "ShowUserErrorMessages", AllowAddPermissions: "AllowAddPermissions", AllowEditPermissions: "AllowEditPermissions", AllowDeletePermissions: "AllowDeletePermissions", PermissionLevels: "PermissionLevels", PermissionTypes: "PermissionTypes", ExcludedRoleNames: "ExcludedRoleNames", ExcludedUserEmails: "ExcludedUserEmails" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 18, vars: 4, consts: [[1, "container"], ["kendoButton", ""], [1, "table-container"], [1, "add-permission-section"], [1, "resource-table"], ["kendoButton", "", 3, "click"], [1, "add-permission-label"], [2, "width", "100px", 3, "ngModelChange", "data", "ngModel"], ["textField", "Name", "valueField", "ID", 2, "width", "225px", 3, "data", "ngModel"], ["textField", "Name", "valueField", "ID", 2, "width", "150px", 3, "data", "ngModel"], ["kendoButton", "", 3, "click", "disabled", "title"], ["textField", "Name", "valueField", "ID", 2, "width", "225px", 3, "ngModelChange", "data", "ngModel"], ["textField", "Name", "valueField", "ID", 2, "width", "150px", 3, "ngModelChange", "data", "ngModel"], [2, "width", "100px", 3, "ngModel", "data"], [2, "width", "100px", 3, "ngModelChange", "ngModel", "data"], [1, "fa-solid", "fa-trash-can"]], template: function ResourcePermissionsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
327
354
|
i0.ɵɵelementStart(0, "div", 0);
|
|
328
|
-
i0.ɵɵtemplate(1, ResourcePermissionsComponent_Conditional_1_Template, 2, 0, "button", 1);
|
|
329
|
-
i0.ɵɵelementStart(
|
|
330
|
-
i0.ɵɵtemplate(
|
|
331
|
-
i0.ɵɵelementStart(
|
|
332
|
-
i0.ɵɵtext(
|
|
355
|
+
i0.ɵɵtemplate(1, ResourcePermissionsComponent_Conditional_1_Template, 1, 0, "kendo-loader")(2, ResourcePermissionsComponent_Conditional_2_Template, 2, 0, "button", 1);
|
|
356
|
+
i0.ɵɵelementStart(3, "div", 2);
|
|
357
|
+
i0.ɵɵtemplate(4, ResourcePermissionsComponent_Conditional_4_Template, 10, 7, "div", 3);
|
|
358
|
+
i0.ɵɵelementStart(5, "table", 4)(6, "thead")(7, "tr")(8, "th");
|
|
359
|
+
i0.ɵɵtext(9, "Type");
|
|
333
360
|
i0.ɵɵelementEnd();
|
|
334
|
-
i0.ɵɵelementStart(
|
|
335
|
-
i0.ɵɵtext(
|
|
361
|
+
i0.ɵɵelementStart(10, "th");
|
|
362
|
+
i0.ɵɵtext(11, "Name");
|
|
336
363
|
i0.ɵɵelementEnd();
|
|
337
|
-
i0.ɵɵelementStart(
|
|
338
|
-
i0.ɵɵtext(
|
|
364
|
+
i0.ɵɵelementStart(12, "th");
|
|
365
|
+
i0.ɵɵtext(13, "Level");
|
|
339
366
|
i0.ɵɵelementEnd();
|
|
340
|
-
i0.ɵɵtemplate(
|
|
367
|
+
i0.ɵɵtemplate(14, ResourcePermissionsComponent_Conditional_14_Template, 2, 0, "th");
|
|
341
368
|
i0.ɵɵelementEnd()();
|
|
342
|
-
i0.ɵɵelementStart(
|
|
343
|
-
i0.ɵɵrepeaterCreate(
|
|
369
|
+
i0.ɵɵelementStart(15, "tbody");
|
|
370
|
+
i0.ɵɵrepeaterCreate(16, ResourcePermissionsComponent_For_17_Template, 9, 4, "tr", null, i0.ɵɵrepeaterTrackByIdentity);
|
|
344
371
|
i0.ɵɵelementEnd()()()();
|
|
345
372
|
} if (rf & 2) {
|
|
346
373
|
i0.ɵɵadvance();
|
|
347
|
-
i0.ɵɵconditional(ctx.
|
|
374
|
+
i0.ɵɵconditional(ctx._Loading ? 1 : -1);
|
|
375
|
+
i0.ɵɵadvance();
|
|
376
|
+
i0.ɵɵconditional(ctx.ShowSaveButton ? 2 : -1);
|
|
348
377
|
i0.ɵɵadvance(2);
|
|
349
|
-
i0.ɵɵconditional(ctx.AllowAddPermissions ?
|
|
378
|
+
i0.ɵɵconditional(ctx.AllowAddPermissions ? 4 : -1);
|
|
350
379
|
i0.ɵɵadvance(10);
|
|
351
|
-
i0.ɵɵconditional(ctx.AllowDeletePermissions ?
|
|
380
|
+
i0.ɵɵconditional(ctx.AllowDeletePermissions ? 14 : -1);
|
|
352
381
|
i0.ɵɵadvance(2);
|
|
353
382
|
i0.ɵɵrepeater(ctx.resourcePermissions);
|
|
354
|
-
} }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.ButtonComponent, i3.DropDownListComponent], styles: ["\n\n.container[_ngcontent-%COMP%] {\n max-width: 100%;\n}\n\n\n\n.table-container[_ngcontent-%COMP%] {\n max-height: 400px; \n\n overflow-y: auto;\n border: 1px solid #ccc;\n border-radius: 4px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n\n\n.resource-table[_ngcontent-%COMP%] {\n width: 100%;\n border-collapse: collapse;\n}\n\n.resource-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] {\n background-color: #f4f4f4;\n font-weight: bold;\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.resource-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], .resource-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n padding: 12px;\n text-align: left;\n border-bottom: 1px solid #ddd;\n}\n\n.resource-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n background-color: #f8f8f8;\n}\n\n.resource-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even) {\n background-color: #f9f9f9;\n}\n\n.resource-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover {\n background-color: #f1f1f1;\n}\n\n\n\nbutton.k-button[_ngcontent-%COMP%] {\n background-color: #ff5252;\n color: white;\n border: none;\n padding: 5px 10px;\n border-radius: 4px;\n cursor: pointer;\n}\n\nbutton.k-button[_ngcontent-%COMP%]:hover {\n background-color: #ff1744;\n}\n\n.add-permission-label[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-right: 5px;\n font-weight: bold;\n}\n\n.add-permission-section[_ngcontent-%COMP%] {\n margin-top: 10px;\n margin-bottom: 10px;\n}"] });
|
|
383
|
+
} }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.ButtonComponent, i3.DropDownListComponent, i4.LoaderComponent], styles: ["\n\n.container[_ngcontent-%COMP%] {\n max-width: 100%;\n}\n\n\n\n.table-container[_ngcontent-%COMP%] {\n max-height: 400px; \n\n overflow-y: auto;\n border: 1px solid #ccc;\n border-radius: 4px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n\n\n.resource-table[_ngcontent-%COMP%] {\n width: 100%;\n border-collapse: collapse;\n}\n\n.resource-table[_ngcontent-%COMP%] thead[_ngcontent-%COMP%] {\n background-color: #f4f4f4;\n font-weight: bold;\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.resource-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], .resource-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n padding: 12px;\n text-align: left;\n border-bottom: 1px solid #ddd;\n}\n\n.resource-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n background-color: #f8f8f8;\n}\n\n.resource-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(even) {\n background-color: #f9f9f9;\n}\n\n.resource-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover {\n background-color: #f1f1f1;\n}\n\n\n\nbutton.k-button[_ngcontent-%COMP%] {\n background-color: #ff5252;\n color: white;\n border: none;\n padding: 5px 10px;\n border-radius: 4px;\n cursor: pointer;\n}\n\nbutton.k-button[_ngcontent-%COMP%]:hover {\n background-color: #ff1744;\n}\n\n.add-permission-label[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-right: 5px;\n font-weight: bold;\n}\n\n.add-permission-section[_ngcontent-%COMP%] {\n margin-top: 10px;\n margin-bottom: 10px;\n}"] });
|
|
355
384
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ResourcePermissionsComponent, [{
|
|
356
385
|
type: Component,
|
|
357
|
-
args: [{ selector: 'mj-resource-permissions', template: "<div class=\"container\">\n @if(ShowSaveButton) {\n <button kendoButton (click)=\"SavePermissions()\">Save</button>\n }\n <div class=\"table-container\">\n @if(AllowAddPermissions) {\n <div class=\"add-permission-section\">\n <span class=\"add-permission-label\">Add Permission</span>\n <kendo-dropdownlist \n [data]=\"
|
|
386
|
+
args: [{ selector: 'mj-resource-permissions', template: "<div class=\"container\">\n @if(_Loading) {\n <kendo-loader></kendo-loader>\n }\n @if(ShowSaveButton) {\n <button kendoButton (click)=\"SavePermissions()\">Save</button>\n }\n <div class=\"table-container\">\n @if(AllowAddPermissions) {\n <div class=\"add-permission-section\">\n <span class=\"add-permission-label\">Add Permission</span>\n <kendo-dropdownlist \n [data]=\"PermissionTypes\"\n [(ngModel)]=\"SelectedType\"\n style=\"width: 100px;\">\n </kendo-dropdownlist>\n @if (SelectedType === 'User') {\n <kendo-dropdownlist \n [data]=\"AllUsers\"\n [(ngModel)]=\"SelectedUser\"\n textField=\"Name\"\n valueField=\"ID\"\n style=\"width: 225px;\">\n </kendo-dropdownlist>\n }\n @else if (SelectedType === 'Role') {\n <kendo-dropdownlist \n [data]=\"AllRoles\"\n [(ngModel)]=\"SelectedRole\"\n textField=\"Name\"\n valueField=\"ID\"\n style=\"width: 150px;\">\n </kendo-dropdownlist>\n }\n @else {\n SelectedType: {{ SelectedType }}\n }\n <kendo-dropdownlist \n [data]=\"PermissionLevels\"\n [(ngModel)]=\"SelectedPermissionLevel\"\n style=\"width: 100px;\">\n </kendo-dropdownlist>\n <button kendoButton (click)=\"addPermission()\" [disabled]=\"permissionAlreadyExists()\" [title]=\"permissionAlreadyExists() ? 'This combination of Type/User/Role already exists below' : ''\" >Add</button>\n </div>\n }\n <table class=\"resource-table\">\n <thead>\n <tr>\n <th>Type</th>\n <th>Name</th>\n <th>Level</th>\n @if(AllowDeletePermissions) {\n <th>Actions</th>\n }\n </tr>\n </thead>\n <tbody>\n @for (p of resourcePermissions; track p) {\n <tr>\n <td>{{ p.Type }}</td>\n <td>{{ p.Type === 'User' ? p.User : p.Role }}</td>\n <td>\n @if (AllowEditPermissions) {\n <kendo-dropdownlist \n [(ngModel)]=\"p.PermissionLevel\"\n [data]=\"PermissionLevels\"\n style=\"width: 100px;\">\n </kendo-dropdownlist>\n }\n @else {\n {{ p.PermissionLevel }}\n }\n </td>\n @if(AllowDeletePermissions) {\n <td>\n <button kendoButton (click)=\"deletePermission(p)\"><span class=\"fa-solid fa-trash-can\"></span></button>\n </td>\n }\n </tr> \n }\n </tbody>\n </table>\n </div>\n</div>\n", styles: ["/* Container styling */\n.container {\n max-width: 100%;\n}\n\n/* Table container for vertical scrolling */\n.table-container {\n max-height: 400px; /* Adjust as needed */\n overflow-y: auto;\n border: 1px solid #ccc;\n border-radius: 4px;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n/* Table styling */\n.resource-table {\n width: 100%;\n border-collapse: collapse;\n}\n\n.resource-table thead {\n background-color: #f4f4f4;\n font-weight: bold;\n position: sticky;\n top: 0;\n z-index: 1;\n}\n\n.resource-table th, .resource-table td {\n padding: 12px;\n text-align: left;\n border-bottom: 1px solid #ddd;\n}\n\n.resource-table th {\n background-color: #f8f8f8;\n}\n\n.resource-table tbody tr:nth-child(even) {\n background-color: #f9f9f9;\n}\n\n.resource-table tbody tr:hover {\n background-color: #f1f1f1;\n}\n\n/* Button styling */\nbutton.k-button {\n background-color: #ff5252;\n color: white;\n border: none;\n padding: 5px 10px;\n border-radius: 4px;\n cursor: pointer;\n}\n\nbutton.k-button:hover {\n background-color: #ff1744;\n}\n\n.add-permission-label {\n margin-left: 5px;\n margin-right: 5px;\n font-weight: bold;\n}\n\n.add-permission-section {\n margin-top: 10px;\n margin-bottom: 10px;\n}"] }]
|
|
358
387
|
}], null, { ResourceTypeID: [{
|
|
359
388
|
type: Input
|
|
360
389
|
}], ResourceRecordID: [{
|
|
@@ -369,6 +398,14 @@ ResourcePermissionsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type
|
|
|
369
398
|
type: Input
|
|
370
399
|
}], AllowDeletePermissions: [{
|
|
371
400
|
type: Input
|
|
401
|
+
}], PermissionLevels: [{
|
|
402
|
+
type: Input
|
|
403
|
+
}], PermissionTypes: [{
|
|
404
|
+
type: Input
|
|
405
|
+
}], ExcludedRoleNames: [{
|
|
406
|
+
type: Input
|
|
407
|
+
}], ExcludedUserEmails: [{
|
|
408
|
+
type: Input
|
|
372
409
|
}] }); })();
|
|
373
410
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ResourcePermissionsComponent, { className: "ResourcePermissionsComponent", filePath: "src/lib/resource-permissions.component.ts", lineNumber: 16 }); })();
|
|
374
411
|
//# sourceMappingURL=resource-permissions.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-permissions.component.js","sourceRoot":"","sources":["../../src/lib/resource-permissions.component.ts","../../src/lib/resource-permissions.component.html"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAiB,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAuC,QAAQ,EAAsB,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,wBAAwB,EAAwC,MAAM,+BAA+B,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;;;;;;;ICFrE,iCAAgD;IAA5B,gMAAS,wBAAiB,KAAC;IAAC,oBAAI;IAAA,iBAAS;;;;IAYvD,8CAKwB;IAHtB,wVAA0B;IAI5B,iBAAqB;;;IALnB,sCAAiB;IACjB,mDAA0B;;;;IAO5B,8CAKwB;IAHtB,wVAA0B;IAI5B,iBAAqB;;;IALnB,sCAAiB;IACjB,mDAA0B;;;IAO5B,YACF;;;IADE,kEACF;;;;IA1BA,AADF,8BAAoC,cACC;IAAA,8BAAc;IAAA,iBAAO;IACxD,6CAGwB;IADtB,yUAA0B;IAE5B,iBAAqB;IAmBrB,AATA,AATA,kHAA+B,qGASK,4EAS7B;IAGP,6CAGwB;IADtB,+VAAqC;IAEvC,iBAAqB;IACrB,kCAA2L;IAAvK,gMAAS,sBAAe,KAAC;IAA8I,mBAAG;IAChM,AADgM,iBAAS,EACnM;;;IA/BF,eAAwB;IAAxB,6CAAwB;IACxB,mDAA0B;IAG5B,cAoBC;IApBD,6FAoBC;IAEC,eAAyB;IAAzB,8CAAyB;IACzB,8DAAqC;IAGO,cAAsC;IAAC,AAAvC,2DAAsC,4GAAqG;;;IAUrL,0BAAI;IAAA,uBAAO;IAAA,iBAAK;;;;IAWZ,8CAGwB;IAFtB,0VAA+B;IAGjC,iBAAqB;;;;IAHnB,oDAA+B;IAC/B,8CAAyB;;;IAK3B,YACF;;;IADE,qDACF;;;;IAIE,AADF,0BAAI,gBACgD;IAA9B,kPAAS,6BAAmB,KAAC;IAAC,2BAA2C;IAC/F,AAD+F,iBAAS,EACnG;;;IAjBP,AADF,0BAAI,SACE;IAAA,YAAY;IAAA,iBAAK;IACrB,0BAAI;IAAA,YAAyC;IAAA,iBAAK;IAClD,0BAAI;IAQF,AAPA,4GAA4B,qEAOrB;IAGT,iBAAK;IACL,wFAA6B;IAK/B,iBAAK;;;;IAnBC,eAAY;IAAZ,+BAAY;IACZ,eAAyC;IAAzC,kEAAyC;IAE3C,eASC;IATD,qDASC;IAEH,eAIC;IAJD,wDAIC;;
|
|
1
|
+
{"version":3,"file":"resource-permissions.component.js","sourceRoot":"","sources":["../../src/lib/resource-permissions.component.ts","../../src/lib/resource-permissions.component.html"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-resource-permissions",
|
|
3
|
-
"version": "2.20.
|
|
3
|
+
"version": "2.20.3",
|
|
4
4
|
"description": "MemberJunction: Generic Angular components for displaying/editing permissions for a resource",
|
|
5
5
|
"main": "./dist/public-api.js",
|
|
6
6
|
"typings": "./dist/public-api.d.ts",
|
|
@@ -25,13 +25,13 @@
|
|
|
25
25
|
"@angular/router": "18.0.2"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@memberjunction/global": "2.20.
|
|
29
|
-
"@memberjunction/core": "2.20.
|
|
30
|
-
"@memberjunction/core-entities": "2.20.
|
|
31
|
-
"@memberjunction/ng-container-directives": "2.20.
|
|
32
|
-
"@memberjunction/ng-notifications": "2.20.
|
|
33
|
-
"@memberjunction/ng-generic-dialog": "2.20.
|
|
34
|
-
"@memberjunction/ng-base-types": "2.20.
|
|
28
|
+
"@memberjunction/global": "2.20.3",
|
|
29
|
+
"@memberjunction/core": "2.20.3",
|
|
30
|
+
"@memberjunction/core-entities": "2.20.3",
|
|
31
|
+
"@memberjunction/ng-container-directives": "2.20.3",
|
|
32
|
+
"@memberjunction/ng-notifications": "2.20.3",
|
|
33
|
+
"@memberjunction/ng-generic-dialog": "2.20.3",
|
|
34
|
+
"@memberjunction/ng-base-types": "2.20.3",
|
|
35
35
|
"@progress/kendo-angular-dropdowns": "16.2.0",
|
|
36
36
|
"@progress/kendo-angular-grid": "16.2.0",
|
|
37
37
|
"@progress/kendo-angular-buttons": "16.2.0",
|