UNPKG

uc-base-libraries

Version:
137 lines 6.66 kB
System.register(["./Tasks", "./DateTime"], function (exports_1, context_1) { "use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var Tasks, DateTime, Message, Messages, messages; var __moduleName = context_1 && context_1.id; function debugWrite(msg) { messages.addMessage(msg); } exports_1("debugWrite", debugWrite); function addMessage(when, msg) { messages.addMessage(new Message(when, msg)); } exports_1("addMessage", addMessage); return { setters: [ function (Tasks_1) { Tasks = Tasks_1; }, function (DateTime_1) { DateTime = DateTime_1; } ], execute: function () { String.prototype.replaceAll = function (str1, str2, ignore) { return this.replace(new RegExp(str1.replace(/([\/\,\!\\\^\$\{\}\[\]\(\)\.\*\+\?\|\<\>\-\&])/g, '\\$&'), ignore ? 'gi' : 'g'), typeof str2 === 'string' ? str2.replace(/\$/g, '$$$$') : str2); }; Message = class Message { constructor(_date, _message) { this._date = _date; this._message = _message; } get date() { return this._date; } set date(value) { this._date = value; } get message() { return this._message; } set message(value) { this._message = value; } }; exports_1("Message", Message); Messages = class Messages { constructor(displayLocation) { this.displayLocation = displayLocation; this.isReady = false; this.messages = new Array(); this.area = null; this.init = () => __awaiter(this, void 0, void 0, function* () { this.addMessage('Script Loaded in Browser'); yield Tasks.whenReady(); this.addMessage('Page Loaded in Browser'); DateTime.serverTime.raiseMessageEvent.addListener((msg) => { this.addMessage(msg); }); yield Tasks.delay(1); if ($) { this.area = $(this.displayLocation); const area = this.area; if (area.length === 0) { $('body').append("<ol class='MessageArea' style='display:block;'></ol>"); this.displayLocation = $('.MessageArea'); } yield Tasks.whenTrue(() => { return DateTime.serverTime.serverTimeLoaded; }); } this.isReady = true; this.refreshMessages(); }); this.refreshMessages = () => { if (DateTime.serverTime.serverStartTime != null) { DateTime.serverTime.startTime = new Date(DateTime.serverTime.serverStartTime.getTime() - DateTime.serverTime.offset); } const area = this.area; this.messages.forEach((item) => { const dt = item.date; const secondsFromStart = (dt.getTime() - DateTime.serverTime.startTime.getTime()) / 1000; dt.setTime(dt.getTime() + DateTime.serverTime.offset); const msgTP = DateTime.formatTime(dt); const msgPt = item.message; const msgElapsed = 'Time Elapsed From Start: ' + DateTime.formatTimeSpan(secondsFromStart); if ($) { // tslint:disable-next-line:no-console console.log(msgTP + ' ' + msgPt + ' - ' + msgElapsed); $(area).append("<li><span class='timePart'>" + msgTP + "</span> - <span class='messagePart'>" + msgPt + "</span> - <span class='timeElapsedPart'>" + msgElapsed + '</span></li>'); } }); this.messages = new Array(); try { if ($) { const item = $(area).find('li:last-child'); const t = item.position().top + item.height() - $(area).height() + $(area).scrollTop(); $(area).scrollTop(t); } } catch (err) { } }; this.showMessages = () => { if (this.isReady) { this.refreshMessages(); } }; this.addMessage = (msg) => { if (!(msg instanceof Message)) { const now = new Date(); msg = new Message(now, msg); } this.messages.push(msg); this.showMessages(); }; this.init(); } }; exports_1("Messages", Messages); exports_1("messages", messages = new Messages('.MessageArea')); } }; }); //# sourceMappingURL=Debug.js.map