eventual.js 517 B

12345678910111213141516171819202122232425262728293031
  1. /**
  2. * Substitute for xeventx
  3. * */
  4. const EventualContext = require('./eventual-context');
  5. class Eventual {
  6. constructor() {
  7. this._events = {
  8. ctx: [],
  9. state: {}
  10. };
  11. }
  12. createContext() {
  13. var ret = new EventualContext(this);
  14. this._events.ctx.push(ret);
  15. return ret;
  16. }
  17. destroyContext(ctx) {
  18. var i = this._events.ctx.indexOf(ctx);
  19. if(i!=-1) this._events.ctx.splice(i,1);
  20. }
  21. state(name,args) {
  22. // Should do this per context
  23. this._events.state[name] = args;
  24. }
  25. }
  26. module.exports = Eventual;