library-ts/browser/messages/Message.ts

66 lines
1.4 KiB
TypeScript
Raw Permalink Normal View History

2025-03-08 12:22:18 +00:00
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 );
}
}