Persil/src/Messages.js

45 lines
1.0 KiB
JavaScript

import formatTime from './utils/formatTime.js'
import MessageComponent from './components/message.js'
customElements.define('c-message', MessageComponent)
import InfoComponent from './components/info.js'
customElements.define('c-info', InfoComponent)
class Messages {
constructor () {
this.parent = document.getElementById('messages')
}
add (content,user) {
console.log(content)
let time = formatTime(new Date())
const element = document.createElement('c-message')
element.setAttribute('content', content)
element.setAttribute('user', user)
element.setAttribute('time', time)
this.insertElement(element)
}
addInfo(content) {
const element = document.createElement('c-info')
element.setAttribute('content', content)
this.insertElement(element)
}
insertElement(element) {
if(this.parent.firstChild)
{
this.parent.insertBefore(element,this.parent.firstChild);
}
else
{
this.parent.appendChild(element)
}
}
}
const messages = new Messages()
export default messages