UNPKG

@robotlegsjs/pixi-signalmediator

Version:
59 lines 2.62 kB
"use strict"; // ------------------------------------------------------------------------------ // Copyright (c) 2017-present, RobotlegsJS. All Rights Reserved. // Copyright (c) 2016 San Dinh Studios. All Rights Reserved. // // NOTICE: You are permitted to use, modify, and distribute this file // in accordance with the terms of the license agreement accompanying it. // ------------------------------------------------------------------------------ Object.defineProperty(exports, "__esModule", { value: true }); exports.SignalMediator = void 0; var tslib_1 = require("tslib"); var core_1 = require("@robotlegsjs/core"); var pixi_1 = require("@robotlegsjs/pixi"); var SignalMap_1 = require("./SignalMap"); /** * Signal mediator implementation * * <p>Override initialize and destroy to hook into the mediator lifecycle.</p> */ var SignalMediator = /** @class */ (function (_super) { tslib_1.__extends(SignalMediator, _super); function SignalMediator() { return _super !== null && _super.apply(this, arguments) || this; } Object.defineProperty(SignalMediator.prototype, "signalMap", { get: function () { this._signalMap = this._signalMap || new SignalMap_1.SignalMap(); return this._signalMap; }, enumerable: false, configurable: true }); /*============================================================================*/ /* Public Functions */ /*============================================================================*/ /** * Runs after the mediator has been destroyed. * Cleans up listeners mapped through the local EventMap. */ SignalMediator.prototype.postDestroy = function () { this.signalMap.removeAll(); _super.prototype.postDestroy.call(this); }; /*============================================================================*/ /* Protected Functions */ /*============================================================================*/ SignalMediator.prototype.addToSignal = function (signal, handler) { this.signalMap.addToSignal(signal, handler); }; SignalMediator.prototype.addOnceToSignal = function (signal, handler) { this.signalMap.addOnceToSignal(signal, handler); }; SignalMediator = tslib_1.__decorate([ core_1.injectable() ], SignalMediator); return SignalMediator; }(pixi_1.Mediator)); exports.SignalMediator = SignalMediator; //# sourceMappingURL=SignalMediator.js.map