API Docs for:
Show:

File: development/modules/__base/basemodule.js

import Mediator from '../../js/mixins/mediator';
import Observable from '../../js/mixins/observable';
import FSM from '../../js/mixins/fsm';

/**
 * @module Modules
 */



/**
 * A basic module to build other modules upon
 * @class Modules._BaseModule
 * @constructor
 * @uses Mixins.Mediator
 * @uses Mixins.Observable
 * @uses Mixins.FSM
 */
const BaseModule =  Mediator(Observable(FSM(class {
    /**
     * Destroys the instance and removes all observers and states
     *
     * @method destroy
     * @for Modules._BaseModule
     * @return {undefined} Nothing
     */
    destroy() {
        this.destroyObservers();
        this.destroyStates();
    }
})));



export default BaseModule;