@cause-911/management
Version:
Run `npm install @cause-911/management --save` to add this library to your project
153 lines • 11.4 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component } from '@angular/core';
import { UserModel } from '../shared/models/user-model';
import { ManagementUserService } from '../shared/services/management-user.service';
import { BreakpointObserver } from '@angular/cdk/layout';
import { map } from 'rxjs/operators';
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;
}());
export { CauseManagementUserComponent };
if (false) {
/** @type {?} */
CauseManagementUserComponent.prototype.users;
/** @type {?} */
CauseManagementUserComponent.prototype.showColumnXS;
/** @type {?} */
CauseManagementUserComponent.prototype.userNameAlreadyUsedValidation;
/**
* @type {?}
* @private
*/
CauseManagementUserComponent.prototype.managementUserService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F1c2UtbWFuYWdlbWVudC11c2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjYXVzZS05MTEvbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9jYXVzZS1tYW5hZ2VtZW50LXVzZXIvY2F1c2UtbWFuYWdlbWVudC11c2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDO0lBV0ksc0NBQ1kscUJBQTRDLEVBQ3BELGtCQUFzQztRQUYxQyxpQkFPQztRQU5XLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFOakQsVUFBSyxHQUFnQjtZQUN4QixJQUFJLFNBQVMsRUFBRTtTQUNsQixDQUFDO1FBQ0ssaUJBQVksR0FBRyxJQUFJLENBQUM7UUE4QnBCLGtDQUE2Qjs7OztRQUFHLFVBQUMsQ0FBQztZQUNyQyxPQUFPLEtBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUM5RCxHQUFHOzs7O1lBQUMsVUFBQyxLQUFjO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbEIsQ0FBQyxFQUFDLENBQ0wsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQixDQUFDLEVBQUE7UUE5Qkcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLE1BQU07WUFDL0QsS0FBSSxDQUFDLFlBQVksR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDeEMsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRU0sK0NBQVE7OztJQUFmO1FBQ0ksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Ozs7O0lBRU0sb0RBQWE7Ozs7SUFBcEIsVUFBcUIsQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFBLENBQUMsQ0FBQyxJQUFJLEVBQWEsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Ozs7O0lBRU0sbURBQVk7Ozs7SUFBbkIsVUFBb0IsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFBLENBQUMsQ0FBQyxHQUFHLEVBQWEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Ozs7O0lBRU0sbURBQVk7Ozs7SUFBbkIsVUFBb0IsQ0FBQztRQUFyQixpQkFLQzs7WUFKUyxJQUFJLEdBQUcsQ0FBQyxtQkFBQSxDQUFDLENBQUMsSUFBSSxFQUFhLENBQUM7UUFDbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUzs7OztRQUFDLFVBQUEsSUFBSTtZQUNyRCxLQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7Ozs7SUFVTyxnREFBUzs7Ozs7SUFBakIsVUFBa0IsSUFBZTtRQUFqQyxpQkFJQztRQUhHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQVksSUFBSSxDQUFDLENBQUMsU0FBUzs7O1FBQUM7WUFDdkQsS0FBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BCLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFTywrQ0FBUTs7OztJQUFoQjtRQUFBLGlCQUVDO1FBREcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sRUFBYSxDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLElBQUksSUFBSSxPQUFBLEtBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxFQUFqQixDQUFpQixFQUFDLENBQUM7SUFDeEYsQ0FBQzs7Z0JBdkRKLFNBQVMsU0FBQztvQkFDUCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyx5bURBQXFEOztpQkFFeEQ7Ozs7Z0JBUk8scUJBQXFCO2dCQUNyQixrQkFBa0I7O0lBMkQxQixtQ0FBQztDQUFBLEFBeERELElBd0RDO1NBbkRZLDRCQUE0Qjs7O0lBQ3JDLDZDQUVFOztJQUNGLG9EQUEyQjs7SUE4QjNCLHFFQU1DOzs7OztJQWpDRyw2REFBb0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VXNlck1vZGVsfSBmcm9tICcuLi9zaGFyZWQvbW9kZWxzL3VzZXItbW9kZWwnO1xuaW1wb3J0IHtNYW5hZ2VtZW50VXNlclNlcnZpY2V9IGZyb20gJy4uL3NoYXJlZC9zZXJ2aWNlcy9tYW5hZ2VtZW50LXVzZXIuc2VydmljZSc7XG5pbXBvcnQge0JyZWFrcG9pbnRPYnNlcnZlcn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnY2F1c2UtbWFuYWdlbWVudC11c2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F1c2UtbWFuYWdlbWVudC11c2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYXVzZS1tYW5hZ2VtZW50LXVzZXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDYXVzZU1hbmFnZW1lbnRVc2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwdWJsaWMgdXNlcnM6IFVzZXJNb2RlbFtdID0gW1xuICAgICAgICBuZXcgVXNlck1vZGVsKClcbiAgICBdO1xuICAgIHB1YmxpYyBzaG93Q29sdW1uWFMgPSB0cnVlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgbWFuYWdlbWVudFVzZXJTZXJ2aWNlOiBNYW5hZ2VtZW50VXNlclNlcnZpY2UsXG4gICAgICAgIGJyZWFrcG9pbnRPYnNlcnZlcjogQnJlYWtwb2ludE9ic2VydmVyLFxuICAgICkge1xuICAgICAgICBicmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZShbJyhtYXgtd2lkdGg6IDYwMHB4KSddKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0NvbHVtblhTID0gIXJlc3VsdC5tYXRjaGVzO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2V0VXNlcnMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25Sb3dJbnNlcnRlZChlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2F2ZUdyb3VwKGUuZGF0YSBhcyBVc2VyTW9kZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJvd1VwZGF0ZWQoZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNhdmVHcm91cChlLmtleSBhcyBVc2VyTW9kZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblJvd1JlbW92ZWQoZSk6IHZvaWQge1xuICAgICAgICBjb25zdCB1c2VyID0gKGUuZGF0YSBhcyBVc2VyTW9kZWwpO1xuICAgICAgICB0aGlzLm1hbmFnZW1lbnRVc2VyU2VydmljZS5kZWxldGUodXNlci5pZCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgICAgdGhpcy5nZXRVc2VycygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXNlck5hbWVBbHJlYWR5VXNlZFZhbGlkYXRpb24gPSAoZSk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tYW5hZ2VtZW50VXNlclNlcnZpY2UuaGFzRXhpc3RpbmdVc2VyTmFtZShlLmRhdGEpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGV4aXN0OiBib29sZWFuKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuICFleGlzdDtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICkudG9Qcm9taXNlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzYXZlR3JvdXAodXNlcjogVXNlck1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWFuYWdlbWVudFVzZXJTZXJ2aWNlLnNhdmU8VXNlck1vZGVsPih1c2VyKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5nZXRVc2VycygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVzZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1hbmFnZW1lbnRVc2VyU2VydmljZS5nZXRBbGw8VXNlck1vZGVsPigpLnN1YnNjcmliZShkYXRhID0+IHRoaXMudXNlcnMgPSBkYXRhKTtcbiAgICB9XG59XG4iXX0=