@cause-911/management
Version:
Run `npm install @cause-911/management --save` to add this library to your project
1,049 lines (1,034 loc) • 37 kB
JavaScript
import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, Input, NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { CoreService, CauseCoreModule } from '@cause-911/core';
import { BreakpointObserver } from '@angular/cdk/layout';
import { map } from 'rxjs/operators';
import { BrowserModule } from '@angular/platform-browser';
import { DxListModule, DxTagBoxModule, DxCheckBoxModule } from 'devextreme-angular';
import { CauseDxModule } from '@cause-911/devextreme';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var ManagementUserService = /** @class */ (function () {
function ManagementUserService(coreService, http) {
this.http = http;
this.config = coreService.getConfig();
}
/**
* @template TUser
* @return {?}
*/
ManagementUserService.prototype.getAll = /**
* @template TUser
* @return {?}
*/
function () {
return this.http.get(this.config.apiUrl + "UserManagement");
};
/**
* @template TUser
* @param {?} idUser
* @return {?}
*/
ManagementUserService.prototype.get = /**
* @template TUser
* @param {?} idUser
* @return {?}
*/
function (idUser) {
return this.http.get(this.config.apiUrl + "UserManagement/" + idUser);
};
/**
* @param {?} idUser
* @return {?}
*/
ManagementUserService.prototype.getGroup = /**
* @param {?} idUser
* @return {?}
*/
function (idUser) {
return this.http.get(this.config.apiUrl + "UserManagement/" + idUser + "/groups");
};
/**
* @param {?} userGroup
* @return {?}
*/
ManagementUserService.prototype.addGroup = /**
* @param {?} userGroup
* @return {?}
*/
function (userGroup) {
return this.http.post(this.config.apiUrl + "UserManagement/group", userGroup);
};
/**
* @param {?} idUserGroup
* @return {?}
*/
ManagementUserService.prototype.deleteGroup = /**
* @param {?} idUserGroup
* @return {?}
*/
function (idUserGroup) {
return this.http.delete(this.config.apiUrl + "UserManagement/groups/" + idUserGroup);
};
/**
* @param {?} userPermission
* @return {?}
*/
ManagementUserService.prototype.addPermission = /**
* @param {?} userPermission
* @return {?}
*/
function (userPermission) {
return this.http.post(this.config.apiUrl + "UserManagement/permission", userPermission);
};
/**
* @param {?} idUserPermission
* @return {?}
*/
ManagementUserService.prototype.deletePermission = /**
* @param {?} idUserPermission
* @return {?}
*/
function (idUserPermission) {
return this.http.delete(this.config.apiUrl + "UserManagement/groups/" + idUserPermission);
};
/**
* @template TUser
* @param {?} user
* @return {?}
*/
ManagementUserService.prototype.save = /**
* @template TUser
* @param {?} user
* @return {?}
*/
function (user) {
return this.http.post(this.config.apiUrl + "UserManagement", user);
};
/**
* @param {?} idUser
* @return {?}
*/
ManagementUserService.prototype.delete = /**
* @param {?} idUser
* @return {?}
*/
function (idUser) {
return this.http.delete(this.config.apiUrl + "UserManagement/" + idUser);
};
/**
* @template TUser
* @param {?} user
* @return {?}
*/
ManagementUserService.prototype.hasExistingUserName = /**
* @template TUser
* @param {?} user
* @return {?}
*/
function (user) {
return this.http.post(this.config.apiUrl + "UserManagement/UserNameAlreadyExist", user);
};
ManagementUserService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
ManagementUserService.ctorParameters = function () { return [
{ type: CoreService },
{ type: HttpClient }
]; };
/** @nocollapse */ ManagementUserService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ManagementUserService_Factory() { return new ManagementUserService(ɵɵinject(CoreService), ɵɵinject(HttpClient)); }, token: ManagementUserService, providedIn: "root" });
return ManagementUserService;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var ManagementGroupService = /** @class */ (function () {
function ManagementGroupService(coreService, http) {
this.http = http;
this.config = coreService.getConfig();
}
/**
* @return {?}
*/
ManagementGroupService.prototype.getAll = /**
* @return {?}
*/
function () {
return this.http.get(this.config.apiUrl + "GroupManagement");
};
/**
* @param {?} idGroup
* @return {?}
*/
ManagementGroupService.prototype.get = /**
* @param {?} idGroup
* @return {?}
*/
function (idGroup) {
return this.http.get(this.config.apiUrl + "GroupManagement/" + idGroup);
};
/**
* @param {?} group
* @return {?}
*/
ManagementGroupService.prototype.save = /**
* @param {?} group
* @return {?}
*/
function (group) {
return this.http.post(this.config.apiUrl + "GroupManagement", group);
};
/**
* @param {?} idGroup
* @return {?}
*/
ManagementGroupService.prototype.delete = /**
* @param {?} idGroup
* @return {?}
*/
function (idGroup) {
return this.http.delete(this.config.apiUrl + "GroupManagement/" + idGroup);
};
/**
* @param {?} group
* @return {?}
*/
ManagementGroupService.prototype.hasExistingGroupName = /**
* @param {?} group
* @return {?}
*/
function (group) {
return this.http.post(this.config.apiUrl + "GroupManagement/GroupNameAlreadyExist", group);
};
ManagementGroupService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
ManagementGroupService.ctorParameters = function () { return [
{ type: CoreService },
{ type: HttpClient }
]; };
/** @nocollapse */ ManagementGroupService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ManagementGroupService_Factory() { return new ManagementGroupService(ɵɵinject(CoreService), ɵɵinject(HttpClient)); }, token: ManagementGroupService, providedIn: "root" });
return ManagementGroupService;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var UserModel = /** @class */ (function () {
function UserModel() {
this.userName = '';
this.firstName = '';
this.lastName = '';
this.password = '';
this.email = '';
this.isActive = true;
}
return UserModel;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var UserGroupModel = /** @class */ (function () {
function UserGroupModel() {
this.idUserGroup = '';
this.idGroup = '';
this.idUser = '';
}
return UserGroupModel;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var UserPermissionModel = /** @class */ (function () {
function UserPermissionModel() {
this.idUserPermission = '';
this.isAllowed = false;
this.idUser = '';
this.idModulePermission = '';
}
return UserPermissionModel;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var GroupModel = /** @class */ (function () {
function GroupModel() {
this.name = '';
this.users = [];
this.permissions = [];
}
return GroupModel;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var GroupPermissionModel = /** @class */ (function () {
function GroupPermissionModel() {
this.idGroupPermission = '';
this.isAllowed = false;
this.idGroup = '';
this.idModulePermission = '';
}
return GroupPermissionModel;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var ManagementPermissionService = /** @class */ (function () {
function ManagementPermissionService(coreService, http) {
this.http = http;
this.config = coreService.getConfig();
}
/**
* @return {?}
*/
ManagementPermissionService.prototype.getAll = /**
* @return {?}
*/
function () {
return this.http.get(this.config.apiUrl + "PermissionManagement");
};
/**
* @param {?} idPermission
* @return {?}
*/
ManagementPermissionService.prototype.get = /**
* @param {?} idPermission
* @return {?}
*/
function (idPermission) {
return this.http.get(this.config.apiUrl + "PermissionManagement/" + idPermission);
};
/**
* @param {?} permission
* @return {?}
*/
ManagementPermissionService.prototype.save = /**
* @param {?} permission
* @return {?}
*/
function (permission) {
return this.http.post(this.config.apiUrl + "PermissionManagement", permission);
};
/**
* @param {?} idPermission
* @return {?}
*/
ManagementPermissionService.prototype.delete = /**
* @param {?} idPermission
* @return {?}
*/
function (idPermission) {
return this.http.delete(this.config.apiUrl + "PermissionManagement/" + idPermission);
};
ManagementPermissionService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
ManagementPermissionService.ctorParameters = function () { return [
{ type: CoreService },
{ type: HttpClient }
]; };
/** @nocollapse */ ManagementPermissionService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ManagementPermissionService_Factory() { return new ManagementPermissionService(ɵɵinject(CoreService), ɵɵinject(HttpClient)); }, token: ManagementPermissionService, providedIn: "root" });
return ManagementPermissionService;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var CauseManagementGroupComponent = /** @class */ (function () {
function CauseManagementGroupComponent(managementGroupService, managementUserService, managementPermissionService, breakpointObserver) {
var _this = this;
this.managementGroupService = managementGroupService;
this.managementUserService = managementUserService;
this.managementPermissionService = managementPermissionService;
this.hoverStatePermission = true;
this.groups = [];
this.users = [];
this.permissions = [];
this.userFullName = {};
this.showColumn = true;
this.showColumnXS = true;
this.translations = [];
this.calculateUsersCellValue = (/**
* @param {?} e
* @return {?}
*/
function (e) {
/** @type {?} */
var users = (e.users ? (/** @type {?} */ (e.users)) : []);
/** @type {?} */
var usersNames = [];
users.forEach((/**
* @param {?} user
* @return {?}
*/
function (user) {
/** @type {?} */
var userGroup = _this.users.filter((/**
* @param {?} u
* @return {?}
*/
function (u) { return u.id === user.idUser; }));
if (userGroup && userGroup[0]) {
usersNames.push(userGroup[0].firstName + ' ' + userGroup[0].lastName);
}
}));
usersNames = usersNames.sort((/**
* @param {?} one
* @param {?} two
* @return {?}
*/
function (one, two) { return (one < two ? -1 : 1); }));
return usersNames.join(', ');
});
this.groupNameAlreadyUsedValidation = (/**
* @param {?} e
* @return {?}
*/
function (e) {
return _this.managementGroupService.hasExistingGroupName(e.data).pipe(map((/**
* @param {?} exist
* @return {?}
*/
function (exist) {
return !exist;
}))).toPromise();
});
breakpointObserver.observe(['(max-width: 1000px)']).subscribe((/**
* @param {?} result
* @return {?}
*/
function (result) {
_this.showColumn = !result.matches;
}));
breakpointObserver.observe(['(max-width: 600px)']).subscribe((/**
* @param {?} result
* @return {?}
*/
function (result) {
_this.showColumnXS = !result.matches;
}));
}
/**
* @return {?}
*/
CauseManagementGroupComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
var _this = this;
this.managementUserService.getAll().subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) {
_this.users = data;
_this.users.forEach((/**
* @param {?} user
* @return {?}
*/
function (user) {
if (user.isActive) {
if (user.firstName !== '' && user.lastName !== '') {
_this.userFullName[user.id] = user.firstName + " " + user.lastName;
}
}
}));
}));
this.managementPermissionService.getAll().subscribe((/**
* @param {?} permissions
* @return {?}
*/
function (permissions) {
/** @type {?} */
var permissionIndex = permissions.findIndex((/**
* @param {?} c
* @return {?}
*/
function (c) {
return c.tag === 'CanAccessPermissions';
}));
if (permissionIndex !== -1) {
permissions.splice(permissionIndex, 1);
}
permissions.sort((/**
* @param {?} a
* @param {?} b
* @return {?}
*/
function (a, b) {
if (a.name < b.name) {
return -1;
}
if (a.name > b.name) {
return 1;
}
return 0;
}));
_this.permissions = permissions;
}));
this.getGroups();
};
/**
* @param {?} data
* @return {?}
*/
CauseManagementGroupComponent.prototype.fullName = /**
* @param {?} data
* @return {?}
*/
function (data) {
if (!data) {
return '';
}
return data.firstName + " " + data.lastName;
};
/**
* @param {?} field
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.getGroupUser = /**
* @param {?} field
* @param {?} e
* @return {?}
*/
function (field, e) {
/** @type {?} */
var users = [];
if (this.groupUsers) {
this.groupUsers.forEach((/**
* @param {?} user
* @return {?}
*/
function (user) {
users.push(user.idUser);
}));
}
e.component.option('value', users);
};
/**
* @param {?} field
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.setGroupUser = /**
* @param {?} field
* @param {?} e
* @return {?}
*/
function (field, e) {
/** @type {?} */
var groupUser = [];
e.value.forEach((/**
* @param {?} idUser
* @return {?}
*/
function (idUser) {
/** @type {?} */
var groupIndex = (field.data.users || []).findIndex((/**
* @param {?} g
* @return {?}
*/
function (g) { return g.idUser === idUser; }));
if (groupIndex === -1) {
groupUser.push((/** @type {?} */ ({ idUser: idUser, })));
}
else {
groupUser.push(field.data.users[groupIndex]);
}
}));
field.setValue(JSON.parse(JSON.stringify(groupUser)));
};
/**
* @param {?} field
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.setGroupPermission = /**
* @param {?} field
* @param {?} e
* @return {?}
*/
function (field, e) {
/** @type {?} */
var groupUser = [];
e.value.forEach((/**
* @param {?} idUser
* @return {?}
*/
function (idUser) {
groupUser.push((/** @type {?} */ ({
idUser: idUser,
})));
}));
field.setValue(JSON.parse(JSON.stringify(groupUser)));
};
/**
* @param {?} field
* @param {?} permission
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.getPermissionStatus = /**
* @param {?} field
* @param {?} permission
* @param {?} e
* @return {?}
*/
function (field, permission, e) {
/** @type {?} */
var groupPermission = (field.value || []).find((/**
* @param {?} p
* @return {?}
*/
function (p) { return p.idModulePermission === permission.id; }));
if (groupPermission) {
e.component.option('value', groupPermission.isAllowed);
}
else {
e.component.option('value', undefined);
}
};
/**
* @param {?} field
* @param {?} permission
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.checkBoxToggled = /**
* @param {?} field
* @param {?} permission
* @param {?} e
* @return {?}
*/
function (field, permission, e) {
if (e.component.skipOnValueChanged) {
e.component.skipOnValueChanged = false;
return;
}
if (e.component.setUndefinedNextTime) {
e.component.setUndefinedNextTime = false;
e.component.skipOnValueChanged = true;
e.component.option('value', undefined);
this.setPermissionStatus(field, permission, undefined);
return;
}
if (e.value === false) {
e.component.setUndefinedNextTime = true;
}
this.setPermissionStatus(field, permission, e.value);
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.onRowInserted = /**
* @param {?} e
* @return {?}
*/
function (e) {
this.saveGroup((/** @type {?} */ (e.data)));
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.onRowUpdated = /**
* @param {?} e
* @return {?}
*/
function (e) {
this.saveGroup((/** @type {?} */ (e.data)));
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.onRowRemoved = /**
* @param {?} e
* @return {?}
*/
function (e) {
var _this = this;
/** @type {?} */
var group = ((/** @type {?} */ (e.data)));
this.managementGroupService.delete(group.id).subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) {
_this.getGroups();
}));
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementGroupComponent.prototype.onEditingStart = /**
* @param {?} e
* @return {?}
*/
function (e) {
this.groupUsers = e.data.users;
};
/**
* @return {?}
*/
CauseManagementGroupComponent.prototype.onInitNewRow = /**
* @return {?}
*/
function () {
this.groupUsers = [];
};
/**
* @private
* @param {?} field
* @param {?} permission
* @param {?} value
* @return {?}
*/
CauseManagementGroupComponent.prototype.setPermissionStatus = /**
* @private
* @param {?} field
* @param {?} permission
* @param {?} value
* @return {?}
*/
function (field, permission, value) {
/** @type {?} */
var groupPermissions = field.value || [];
/** @type {?} */
var groupIndex = groupPermissions.findIndex((/**
* @param {?} p
* @return {?}
*/
function (p) { return p.idModulePermission === permission.id; }));
if (groupIndex > -1) {
groupPermissions[groupIndex].isAllowed = value;
}
else {
groupPermissions.push((/** @type {?} */ ({
idModulePermission: permission.id,
isAllowed: value,
})));
}
field.setValue(JSON.parse(JSON.stringify(groupPermissions)));
};
/**
* @private
* @param {?} group
* @return {?}
*/
CauseManagementGroupComponent.prototype.saveGroup = /**
* @private
* @param {?} group
* @return {?}
*/
function (group) {
var _this = this;
this.removePermissionUndefined(group);
if (group.users) {
group.users.forEach((/**
* @param {?} userGroup
* @return {?}
*/
function (userGroup) {
userGroup.idGroup = group.id;
}));
}
if (group.permissions) {
group.permissions.forEach((/**
* @param {?} groupPermission
* @return {?}
*/
function (groupPermission) {
groupPermission.idGroup = group.id;
}));
}
this.managementGroupService.save(group).subscribe((/**
* @return {?}
*/
function () {
_this.getGroups();
}));
this.groupUsers = [];
};
/**
* @private
* @param {?} group
* @return {?}
*/
CauseManagementGroupComponent.prototype.removePermissionUndefined = /**
* @private
* @param {?} group
* @return {?}
*/
function (group) {
group.permissions = group.permissions.filter((/**
* @param {?} permission
* @return {?}
*/
function (permission) { return permission.isAllowed !== undefined; }));
};
/**
* @private
* @return {?}
*/
CauseManagementGroupComponent.prototype.getGroups = /**
* @private
* @return {?}
*/
function () {
var _this = this;
this.managementGroupService.getAll().subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) { return _this.groups = data; }));
};
CauseManagementGroupComponent.decorators = [
{ type: Component, args: [{
selector: 'cause-management-group',
template: "<cause-dx-data-grid\n keyExpr=\"id\"\n [dataSource]=\"groups\"\n (onRowInserted)=\"onRowInserted($event)\"\n (onInitNewRow)=\"onInitNewRow()\"\n (onRowUpdated)=\"onRowUpdated($event)\"\n (onEditingStart)=\"onEditingStart($event)\"\n (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"name\" [caption]=\"'management.name' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.groupNameAlreadyUsed' | translate\" [validationCallback]=\"groupNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column\n dataField=\"users\"\n [caption]=\"'management.users' | translate\"\n editCellTemplate=\"usersEditTemplate\"\n [calculateCellValue]=\"calculateUsersCellValue\">\n </dxi-column>\n <dxi-column\n dataField=\"permissions\"\n [caption]=\"'management.permissions' | translate\"\n [visible]=\"false\"\n editCellTemplate=\"permissionsEditTemplate\">\n </dxi-column>\n <dxo-export [enabled]=\"false\"></dxo-export>\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\" [fullScreen]=\"!showColumn\"></dxo-popup>\n <dxo-form colCount=\"1\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"name\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"users\"></dxi-item>\n <dxi-item dataField=\"permissions\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n\n <div *dxTemplate=\"let field of 'usersEditTemplate'\">\n <dx-tag-box\n valueExpr=\"id\"\n [displayExpr]=\"fullName\"\n [dataSource]=\"users\"\n (onInitialized)=\"getGroupUser(field, $event)\"\n (onValueChanged)=\"setGroupUser(field, $event)\">\n </dx-tag-box>\n </div>\n <div *dxTemplate=\"let field of 'permissionsEditTemplate'\">\n <dx-list\n [dataSource]=\"permissions\"\n itemTemplate=\"rowTemplate\"\n [searchEnabled]=\"true\"\n [searchExpr]=\"['name', 'tag']\"\n [hoverStateEnabled]=\"hoverStatePermission\">\n <div *dxTemplate=\"let permission of 'rowTemplate'\">\n <dx-check-box\n [dataSource]=\"[true, false, undefined]\"\n [text]=\"permission.name\"\n (onInitialized)=\"getPermissionStatus(field, permission, $event)\"\n (onValueChanged)=\"checkBoxToggled(field, permission, $event)\">\n </dx-check-box>\n </div>\n </dx-list>\n </div>\n</cause-dx-data-grid>\n",
styles: [""]
}] }
];
/** @nocollapse */
CauseManagementGroupComponent.ctorParameters = function () { return [
{ type: ManagementGroupService },
{ type: ManagementUserService },
{ type: ManagementPermissionService },
{ type: BreakpointObserver }
]; };
CauseManagementGroupComponent.propDecorators = {
hoverStatePermission: [{ type: Input }]
};
return CauseManagementGroupComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var ManagementService = /** @class */ (function () {
function ManagementService() {
}
ManagementService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
ManagementService.ctorParameters = function () { return []; };
/** @nocollapse */ ManagementService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ManagementService_Factory() { return new ManagementService(); }, token: ManagementService, providedIn: "root" });
return ManagementService;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var CauseManagementComponent = /** @class */ (function () {
function CauseManagementComponent() {
}
/**
* @return {?}
*/
CauseManagementComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
};
CauseManagementComponent.decorators = [
{ type: Component, args: [{
selector: 'cause-management',
template: "<div>{{'core.noGenericComponentOnThisLibrary' | translate}}</div>"
}] }
];
/** @nocollapse */
CauseManagementComponent.ctorParameters = function () { return []; };
return CauseManagementComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var CauseManagementUserComponent = /** @class */ (function () {
function CauseManagementUserComponent(managementUserService, breakpointObserver) {
var _this = this;
this.managementUserService = managementUserService;
this.users = [
new UserModel()
];
this.showColumnXS = true;
this.userNameAlreadyUsedValidation = (/**
* @param {?} e
* @return {?}
*/
function (e) {
return _this.managementUserService.hasExistingUserName(e.data).pipe(map((/**
* @param {?} exist
* @return {?}
*/
function (exist) {
return !exist;
}))).toPromise();
});
breakpointObserver.observe(['(max-width: 600px)']).subscribe((/**
* @param {?} result
* @return {?}
*/
function (result) {
_this.showColumnXS = !result.matches;
}));
}
/**
* @return {?}
*/
CauseManagementUserComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
this.getUsers();
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementUserComponent.prototype.onRowInserted = /**
* @param {?} e
* @return {?}
*/
function (e) {
this.saveGroup((/** @type {?} */ (e.data)));
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementUserComponent.prototype.onRowUpdated = /**
* @param {?} e
* @return {?}
*/
function (e) {
this.saveGroup((/** @type {?} */ (e.key)));
};
/**
* @param {?} e
* @return {?}
*/
CauseManagementUserComponent.prototype.onRowRemoved = /**
* @param {?} e
* @return {?}
*/
function (e) {
var _this = this;
/** @type {?} */
var user = ((/** @type {?} */ (e.data)));
this.managementUserService.delete(user.id).subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) {
_this.getUsers();
}));
};
/**
* @private
* @param {?} user
* @return {?}
*/
CauseManagementUserComponent.prototype.saveGroup = /**
* @private
* @param {?} user
* @return {?}
*/
function (user) {
var _this = this;
this.managementUserService.save(user).subscribe((/**
* @return {?}
*/
function () {
_this.getUsers();
}));
};
/**
* @private
* @return {?}
*/
CauseManagementUserComponent.prototype.getUsers = /**
* @private
* @return {?}
*/
function () {
var _this = this;
this.managementUserService.getAll().subscribe((/**
* @param {?} data
* @return {?}
*/
function (data) { return _this.users = data; }));
};
CauseManagementUserComponent.decorators = [
{ type: Component, args: [{
selector: 'cause-management-user',
template: "<cause-dx-data-grid\n keyExpr=\"id\"\n [dataSource]=\"users\"\n (onRowInserted)=\"onRowInserted($event)\"\n (onRowUpdated)=\"onRowUpdated($event)\"\n (onRowRemoved)=\"onRowRemoved($event)\">\n\n <dxi-column dataField=\"userName\" [caption]=\"'management.userName' | translate\">\n <dxi-validation-rule type=\"async\" [message]=\"'management.userNameAlreadyUsed' | translate\" [validationCallback]=\"userNameAlreadyUsedValidation\"></dxi-validation-rule>\n </dxi-column>\n <dxi-column dataField=\"isActive\" [caption]=\"'management.isActive' | translate\" [visible]=\"false\"></dxi-column>\n <dxi-column dataField=\"firstName\" [caption]=\"'management.firstName' | translate\"></dxi-column>\n <dxi-column dataField=\"lastName\" [caption]=\"'management.lastName' | translate\"></dxi-column>\n <dxi-column dataField=\"groups\" [caption]=\"'management.group' | translate\"></dxi-column>\n\n <dxo-editing mode=\"popup\" [allowAdding]=\"true\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\n <dxo-popup [showTitle]=\"true\" [title]=\"'management.group' | translate\"></dxo-popup>\n <dxo-form colCount=\"2\" [labelLocation]=\"showColumnXS ? 'left' : 'top'\">\n <dxi-item dataField=\"userName\" [isRequired]=\"true\"></dxi-item>\n <dxi-item dataField=\"isActive\"></dxi-item>\n <dxi-item dataField=\"firstName\"></dxi-item>\n <dxi-item dataField=\"lastName\"></dxi-item>\n <dxi-item dataField=\"group\"></dxi-item>\n </dxo-form>\n </dxo-editing>\n</cause-dx-data-grid>\n",
styles: [""]
}] }
];
/** @nocollapse */
CauseManagementUserComponent.ctorParameters = function () { return [
{ type: ManagementUserService },
{ type: BreakpointObserver }
]; };
return CauseManagementUserComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var CauseManagementModule = /** @class */ (function () {
function CauseManagementModule() {
}
CauseManagementModule.decorators = [
{ type: NgModule, args: [{
declarations: [
CauseManagementComponent,
CauseManagementUserComponent,
CauseManagementGroupComponent,
],
exports: [
CauseManagementComponent,
CauseManagementUserComponent,
CauseManagementGroupComponent,
],
imports: [
BrowserModule,
CauseCoreModule,
CauseDxModule,
DxListModule,
DxTagBoxModule,
DxCheckBoxModule,
],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
},] }
];
return CauseManagementModule;
}());
export { CauseManagementComponent, CauseManagementGroupComponent, CauseManagementModule, GroupModel, GroupPermissionModel, ManagementGroupService, ManagementService, ManagementUserService, UserGroupModel, UserModel, UserPermissionModel, ManagementPermissionService as ɵa, CauseManagementUserComponent as ɵb };
//# sourceMappingURL=cause-911-management.js.map