UNPKG

trc-client-core

Version:
28 lines (26 loc) 770 B
var Reflux = require('reflux'); var ImmutableStoreMixin = require('reflux-immutable/ImmutableStoreMixin'); var VideoActions = require('trc-client-core/src/media/VideoActions'); var VideoStore = Reflux.createStore({ listenables: VideoActions, mixins: [ImmutableStoreMixin], init: function () { this.setState({ videos: {} }); }, onFetchVideoCompleted: function (data) { this.setState({ videos: this.get('videos').set(data.video_id.toString(), data) }); }, onGetVideo: function (id) { var video = this.get('videos').get(id); if(video) { this.trigger(); } else { VideoActions.fetchVideo(id); } } }); module.exports = VideoStore;