ontimize-web-ngx
Version:
Ontimize Web framework using Angular 15
64 lines • 6.96 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Directive, Injector } from '@angular/core';
import { Router } from '@angular/router';
import { BooleanInputConverter } from '../../../decorators';
import { DialogService } from '../../../services';
import * as i0 from "@angular/core";
export const DEFAULT_INPUTS_O_USER_INFO_MENU_ITEM = [
'name',
'route',
'icon',
'action',
'confirm',
'confirmText: confirm-text',
'tooltip',
'class'
];
export class OUserInfoConfigurationItemDirective {
constructor(injector) {
this.injector = injector;
this.toolTip = false;
this.confirm = false;
this.router = this.injector.get(Router);
this.dialogService = this.injector.get(DialogService);
}
triggerOnClick(e) {
if (this.route) {
this.navigate();
}
else {
this.executeItemAction();
}
}
navigate() {
if (this.router.url !== this.route) {
this.router.navigate([this.route]);
}
}
executeItemAction() {
if (this.confirm) {
this.dialogService.confirm('CONFIRM', this.confirmText || 'MESSAGES.CONFIRM_ACTION').then(result => result ? this.action() : null);
}
else {
this.action();
}
}
}
OUserInfoConfigurationItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OUserInfoConfigurationItemDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
OUserInfoConfigurationItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: OUserInfoConfigurationItemDirective, selector: "o-user-info-configuration-item", inputs: { name: "name", route: "route", icon: "icon", action: "action", confirm: "confirm", confirmText: ["confirm-text", "confirmText"], tooltip: "tooltip", class: "class" }, ngImport: i0 });
__decorate([
BooleanInputConverter(),
__metadata("design:type", Boolean)
], OUserInfoConfigurationItemDirective.prototype, "toolTip", void 0);
__decorate([
BooleanInputConverter(),
__metadata("design:type", Boolean)
], OUserInfoConfigurationItemDirective.prototype, "confirm", void 0);
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OUserInfoConfigurationItemDirective, decorators: [{
type: Directive,
args: [{
selector: 'o-user-info-configuration-item',
inputs: DEFAULT_INPUTS_O_USER_INFO_MENU_ITEM
}]
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { toolTip: [], confirm: [] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby11c2VyLWluZm8tY29uZmlndXJhdGlvbi1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29udGltaXplLXdlYi1uZ3gvc3JjL2xpYi9jb21wb25lbnRzL3VzZXItaW5mby91c2VyLWluZm8tY29uZmlndXJhdGlvbi1pdGVtL28tdXNlci1pbmZvLWNvbmZpZ3VyYXRpb24taXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRWxELE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHO0lBQ2xELE1BQU07SUFDTixPQUFPO0lBQ1AsTUFBTTtJQUNOLFFBQVE7SUFDUixTQUFTO0lBQ1QsMkJBQTJCO0lBQzNCLFNBQVM7SUFDVCxPQUFPO0NBQ1IsQ0FBQztBQVFGLE1BQU0sT0FBTyxtQ0FBbUM7SUFjOUMsWUFBbUIsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVhyQyxZQUFPLEdBQVksS0FBSyxDQUFDO1FBR3pCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFTdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxjQUFjLENBQUMsQ0FBUTtRQUNyQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7YUFBTTtZQUNMLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNwQztJQUNILENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUkseUJBQXlCLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEk7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNmO0lBQ0gsQ0FBQzs7aUlBdkNVLG1DQUFtQztxSEFBbkMsbUNBQW1DO0FBRTlDO0lBQUMscUJBQXFCLEVBQUU7O29FQUNDO0FBRXpCO0lBQUMscUJBQXFCLEVBQUU7O29FQUNDOzRGQU5kLG1DQUFtQztrQkFML0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0NBQWdDO29CQUMxQyxNQUFNLEVBQUUsb0NBQW9DO2lCQUM3QzsrRkFLQyxPQUFPLE1BR1AsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSU5QVVRTX09fVVNFUl9JTkZPX01FTlVfSVRFTSA9IFtcbiAgJ25hbWUnLFxuICAncm91dGUnLFxuICAnaWNvbicsXG4gICdhY3Rpb24nLFxuICAnY29uZmlybScsXG4gICdjb25maXJtVGV4dDogY29uZmlybS10ZXh0JyxcbiAgJ3Rvb2x0aXAnLFxuICAnY2xhc3MnXG5dO1xuXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ28tdXNlci1pbmZvLWNvbmZpZ3VyYXRpb24taXRlbScsXG4gIGlucHV0czogREVGQVVMVF9JTlBVVFNfT19VU0VSX0lORk9fTUVOVV9JVEVNXG59KVxuXG5leHBvcnQgY2xhc3MgT1VzZXJJbmZvQ29uZmlndXJhdGlvbkl0ZW1EaXJlY3RpdmUge1xuXG4gIEBCb29sZWFuSW5wdXRDb252ZXJ0ZXIoKVxuICB0b29sVGlwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIGNvbmZpcm06IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgYWN0aW9uOiAoKSA9PiB2b2lkO1xuICBwdWJsaWMgcm91dGU6IHN0cmluZztcbiAgcHVibGljIGNvbmZpcm1UZXh0O1xuICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXI7XG4gIHByb3RlY3RlZCBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnJvdXRlciA9IHRoaXMuaW5qZWN0b3IuZ2V0KFJvdXRlcik7XG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlID0gdGhpcy5pbmplY3Rvci5nZXQoRGlhbG9nU2VydmljZSk7XG4gIH1cblxuICB0cmlnZ2VyT25DbGljayhlOiBFdmVudCkge1xuICAgIGlmICh0aGlzLnJvdXRlKSB7XG4gICAgICB0aGlzLm5hdmlnYXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZXhlY3V0ZUl0ZW1BY3Rpb24oKTtcbiAgICB9XG4gIH1cblxuICBuYXZpZ2F0ZSgpIHtcbiAgICBpZiAodGhpcy5yb3V0ZXIudXJsICE9PSB0aGlzLnJvdXRlKSB7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5yb3V0ZV0pO1xuICAgIH1cbiAgfVxuXG4gIGV4ZWN1dGVJdGVtQWN0aW9uKCkge1xuICAgIGlmICh0aGlzLmNvbmZpcm0pIHtcbiAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5jb25maXJtKCdDT05GSVJNJywgdGhpcy5jb25maXJtVGV4dCB8fCAnTUVTU0FHRVMuQ09ORklSTV9BQ1RJT04nKS50aGVuKHJlc3VsdCA9PiByZXN1bHQgPyB0aGlzLmFjdGlvbigpIDogbnVsbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYWN0aW9uKCk7XG4gICAgfVxuICB9XG5cblxufSJdfQ==