bitfront-library
Version:
Angular CLI project with components and classes used by other Angular projects of the BIT foundation.
202 lines • 11 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.BitDialogComponent = void 0;
var core_1 = require("@angular/core");
var message_service_1 = require("../service/message.service");
var bitmessage_1 = require("../data/bitmessage");
var i0 = require("@angular/core");
var i1 = require("../service/message.service");
var i2 = require("@angular/common");
var i3 = require("primeng/dialog");
function BitDialogComponent_p_dialog_0_span_3_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "span");
i0.ɵɵelementStart(1, "pre");
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
} if (rf & 2) {
var ctx_r3 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(2);
i0.ɵɵtextInterpolate(ctx_r3.message.masInfo);
} }
function BitDialogComponent_p_dialog_0_Template(rf, ctx) { if (rf & 1) {
var _r5 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-dialog", 1);
i0.ɵɵlistener("visibleChange", function BitDialogComponent_p_dialog_0_Template_p_dialog_visibleChange_0_listener($event) { i0.ɵɵrestoreView(_r5); var ctx_r4 = i0.ɵɵnextContext(); return ctx_r4.display = $event; });
i0.ɵɵelementStart(1, "p", 2);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵtemplate(3, BitDialogComponent_p_dialog_0_span_3_Template, 3, 1, "span", 3);
i0.ɵɵelementStart(4, "footer");
i0.ɵɵelementStart(5, "div", 4);
i0.ɵɵtext(6, "\u00A0");
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
} if (rf & 2) {
var ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵclassMapInterpolate1("scroll-y scroll-", ctx_r0.message.height, "");
i0.ɵɵpropertyInterpolate("width", ctx_r0.message.width);
i0.ɵɵpropertyInterpolate("header", ctx_r0.message.title);
i0.ɵɵproperty("visible", ctx_r0.display)("modal", ctx_r0.message.modal);
i0.ɵɵadvance(2);
i0.ɵɵtextInterpolate(ctx_r0.message.message);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.message.masInfo);
} }
function BitDialogComponent_p_dialog_1_Template(rf, ctx) { if (rf & 1) {
var _r7 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-dialog", 1);
i0.ɵɵlistener("visibleChange", function BitDialogComponent_p_dialog_1_Template_p_dialog_visibleChange_0_listener($event) { i0.ɵɵrestoreView(_r7); var ctx_r6 = i0.ɵɵnextContext(); return ctx_r6.display = $event; });
i0.ɵɵelement(1, "p", 5);
i0.ɵɵelementEnd();
} if (rf & 2) {
var ctx_r1 = i0.ɵɵnextContext();
i0.ɵɵclassMapInterpolate1("scroll-y scroll-", ctx_r1.message.height, "");
i0.ɵɵpropertyInterpolate("width", ctx_r1.message.width);
i0.ɵɵpropertyInterpolate("header", ctx_r1.message.title);
i0.ɵɵproperty("visible", ctx_r1.display)("modal", ctx_r1.message.modal);
i0.ɵɵadvance(1);
i0.ɵɵproperty("innerHTML", ctx_r1.message.message, i0.ɵɵsanitizeHtml);
} }
function BitDialogComponent_p_dialog_2_Template(rf, ctx) { if (rf & 1) {
var _r9 = i0.ɵɵgetCurrentView();
i0.ɵɵelementStart(0, "p-dialog", 1);
i0.ɵɵlistener("visibleChange", function BitDialogComponent_p_dialog_2_Template_p_dialog_visibleChange_0_listener($event) { i0.ɵɵrestoreView(_r9); var ctx_r8 = i0.ɵɵnextContext(); return ctx_r8.display = $event; });
i0.ɵɵelement(1, "pre", 6);
i0.ɵɵelementEnd();
} if (rf & 2) {
var ctx_r2 = i0.ɵɵnextContext();
i0.ɵɵclassMapInterpolate1("scroll-y scroll-", ctx_r2.message.height, "");
i0.ɵɵpropertyInterpolate("width", ctx_r2.message.width);
i0.ɵɵpropertyInterpolate("header", ctx_r2.message.title);
i0.ɵɵproperty("visible", ctx_r2.display)("modal", ctx_r2.message.modal);
i0.ɵɵadvance(1);
i0.ɵɵproperty("innerHTML", ctx_r2.syntaxHighlight(ctx_r2.message.message), i0.ɵɵsanitizeHtml);
} }
var BitDialogComponent = /** @class */ (function () {
function BitDialogComponent(messageService) {
var _this = this;
this.display = false;
this.height = 200;
//console.log("DialogComponent contructor(" + messageService + ")");
//Nos suscribimos a la espera de que envíen mensajes
this.subscriptionMessages = messageService.observableMessages.subscribe(function (message) {
_this.showMessage(message);
});
this.subscriptionErrors = messageService.observableErrors.subscribe(function (message) {
_this.showError(message);
});
}
BitDialogComponent.prototype.ngOnInit = function () {
//inicializamos el objeto para que no pete el template
this.message = new bitmessage_1.BitMessage("", "");
};
BitDialogComponent.prototype.showMessage = function (message) {
this.message = message;
if (this.message.json) {
try {
var json = eval("(" + this.message.message + ")"); //{"w":1, "b":'foo', "c":[false,'false',null, 'null', {"d":{"e":1.3e5,"f":'2.3e5'}}]};
this.message.message = JSON.stringify(json, undefined, 2);
}
catch (error) {
console.warn("No pudo convertirse a JSON la información del log");
}
}
console.log(this.message.message);
message.height === 0 ? (this.message.height = this.calculateHeightNumber()) : undefined;
this.display = true;
};
BitDialogComponent.prototype.showError = function (error) {
this.showMessage(new bitmessage_1.BitMessage("Error accediendo a " + error.url, error.textCA || error.text, 1024, 600, false, bitmessage_1.BitMessage.ERROR, error.trazaError));
};
Object.defineProperty(BitDialogComponent.prototype, "isSeverityInfo", {
get: function () {
return this.message && this.message.severity === "info";
},
enumerable: false,
configurable: true
});
/**
* Calcula la altura del diálogo en función de la información a mostrar.
* TODO: Contar las líneas reales del mensaje en vez de la longitud
*/
BitDialogComponent.prototype.calculateHeightNumber = function () {
var msj = this.message.message;
if (msj) {
if (msj.length < 100) {
return 100;
}
else if (msj.length < 200) {
return 200;
}
else if (msj.length < 300) {
return 300;
}
else if (msj.length < 400) {
return 400;
}
else {
return 500;
}
}
else {
this.message.message = BitDialogComponent.MENSAJE_VOID;
return 100;
}
};
BitDialogComponent.prototype.ngOnDestroy = function () {
// prevent memory leak when component destroyed
this.subscriptionMessages.unsubscribe();
};
BitDialogComponent.prototype.syntaxHighlight = function (json) {
if (typeof json != "string") {
json = JSON.stringify(json, undefined, 2);
}
json = json
.replace(/&/g, "&")
.replace(/</g, "<")
.replace(/>/g, ">");
return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function (match) {
var cls = "number";
if (/^"/.test(match)) {
if (/:$/.test(match)) {
cls = "key";
}
else {
cls = "string";
}
}
else if (/true|false/.test(match)) {
cls = "boolean";
}
else if (/null/.test(match)) {
cls = "null";
}
return '<span class="' + cls + '">' + match + "</span>";
});
};
BitDialogComponent.MENSAJE_VOID = "No hi ha dades per mostrar";
BitDialogComponent.ɵfac = function BitDialogComponent_Factory(t) { return new (t || BitDialogComponent)(i0.ɵɵdirectiveInject(i1.MessageService)); };
BitDialogComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BitDialogComponent, selectors: [["bit-dialog"]], decls: 3, vars: 3, consts: [["showEffect", "fade", 3, "class", "width", "header", "visible", "modal", "visibleChange", 4, "ngIf"], ["showEffect", "fade", 3, "width", "header", "visible", "modal", "visibleChange"], [1, "mensaje-dialogo"], [4, "ngIf"], [1, "ui-dialog-buttonpane", "ui-widget-content", "ui-helper-clearfix"], [1, "mensaje-dialogo", 3, "innerHTML"], [3, "innerHTML"]], template: function BitDialogComponent_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, BitDialogComponent_p_dialog_0_Template, 7, 9, "p-dialog", 0);
i0.ɵɵtemplate(1, BitDialogComponent_p_dialog_1_Template, 2, 8, "p-dialog", 0);
i0.ɵɵtemplate(2, BitDialogComponent_p_dialog_2_Template, 2, 8, "p-dialog", 0);
} if (rf & 2) {
i0.ɵɵproperty("ngIf", !ctx.isSeverityInfo);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx.isSeverityInfo && !ctx.message.json);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx.message.json);
} }, directives: [i2.NgIf, i3.Dialog], encapsulation: 2 });
return BitDialogComponent;
}());
exports.BitDialogComponent = BitDialogComponent;
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BitDialogComponent, [{
type: core_1.Component,
args: [{
selector: "bit-dialog",
template: "\n <p-dialog\n *ngIf=\"!isSeverityInfo\"\n class=\"scroll-y scroll-{{ message.height }}\"\n width=\"{{ message.width }}\"\n header=\"{{ message.title }}\"\n [(visible)]=\"display\"\n [modal]=\"message.modal\"\n showEffect=\"fade\"\n >\n <p class=\"mensaje-dialogo\">{{ message.message }}</p>\n <span *ngIf=\"message.masInfo\"\n ><pre>{{ message.masInfo }}</pre></span\n >\n <footer>\n <div class=\"ui-dialog-buttonpane ui-widget-content ui-helper-clearfix\"> </div>\n </footer>\n </p-dialog>\n <p-dialog\n *ngIf=\"isSeverityInfo && !message.json\"\n class=\"scroll-y scroll-{{ message.height }}\"\n width=\"{{ message.width }}\"\n header=\"{{ message.title }}\"\n [(visible)]=\"display\"\n [modal]=\"message.modal\"\n showEffect=\"fade\"\n >\n <p class=\"mensaje-dialogo\" [innerHTML]=\"message.message\"></p>\n </p-dialog>\n <p-dialog\n *ngIf=\"message.json\"\n class=\"scroll-y scroll-{{ message.height }}\"\n width=\"{{ message.width }}\"\n header=\"{{ message.title }}\"\n [(visible)]=\"display\"\n [modal]=\"message.modal\"\n showEffect=\"fade\"\n >\n <pre [innerHTML]=\"syntaxHighlight(message.message)\"></pre>\n </p-dialog>\n "
}]
}], function () { return [{ type: i1.MessageService }]; }, null); })();
//# sourceMappingURL=bit-dialog.component.js.map