27 lines
622 B
JavaScript
27 lines
622 B
JavaScript
var Store = module.exports = {
|
|
layout: 'message-on-right',
|
|
quickReply: true,
|
|
msg: null,
|
|
threads: false,
|
|
|
|
listeners: {},
|
|
on: function(ev, cb)
|
|
{
|
|
this.listeners[ev] = this.listeners[ev] || [];
|
|
this.listeners[ev].push(cb);
|
|
},
|
|
un: function(ev, cb)
|
|
{
|
|
if (!this.listeners[ev])
|
|
return;
|
|
for (var i = this.listeners[ev].length; i >= 0; i--)
|
|
if (this.listeners[ev] == cb)
|
|
this.listeners[ev].splice(i, 1);
|
|
},
|
|
set: function(k, v)
|
|
{
|
|
this[k] = v;
|
|
(this.listeners[k] || []).map(i => i());
|
|
}
|
|
};
|