UNPKG

camelot-unchained

Version:
46 lines (45 loc) 1.74 kB
/** * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; var Reflux = require('reflux'); var events_1 = require('../../events'); var ControlGameStore = { create: function create() { var actions = Reflux.createActions(['start', 'stop']); var store = Reflux.createStore({ topic: events_1.default.clientEventTopics.handlesControlGame, listenables: actions, init: function init() { // Initialise the store is basic info. This is so that React components // can use the Store to initialise their state in getDefaultState(). this.info = {}; }, start: function start() { var store = this; // If this store has already been started, then ingore subsequent start // request if (this.started) return; this.started = true; // Listen to the event group for this unit frame events_1.default.on(this.topic, function (controlGame) { // Update store info store.info = controlGame; // Trigger changed notification for this store store.trigger(store.info); }); }, stop: function stop() { // TODO } }); return { store: store, actions: actions }; } }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = ControlGameStore;