import { MessageType, MessageTypes } from './MessageType'; export class Message { type:MessageType; content:string; static with( type:MessageType, content:string ) { let message = new Message(); message.type =type; message.content = content; return message; } static Info( ...content:any[] ) { return Message.with( MessageTypes.Info, content.join( ", " ) ); } static addInfo( messages:Message[], ...content:any[] ) { messages.push( Message.with( MessageTypes.Info, content.join( " " ) ) ); } static Error( ...content:any[] ) { return Message.with( MessageTypes.Error, content.join( " " ) ); } static addError( messages:Message[], ...content:any[] ) { messages.push( Message.with( MessageTypes.Error, content.join( " " ) ) ); } static Warning( ...content:any[] ) { return Message.with( MessageTypes.Warning, content.join( " " ) ); } static addWarning( messages:Message[], ...content:any[] ) { messages.push( Message.with( MessageTypes.Warning, content.join( " " ) ) ); } static toConsole( message:Message ) { if ( MessageTypes.Error == message.type ) { console.error( message.content ); return } if ( MessageTypes.Warning == message.type ) { console.warn( message.content ); return } console.log( message.content ); } }