@zoranwong/acc-engine.js
Version:
A javascript framework to accelerate your applicatin developement
66 lines (47 loc) • 2.94 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/newArrowCheck"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _ServiceProvider2 = _interopRequireDefault(require("../constracts/ServiceProvider"));
var _Dispatcher = _interopRequireDefault(require("./Dispatcher"));
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
var EventServiceProvider = /*#__PURE__*/function (_ServiceProvider) {
(0, _inherits2["default"])(EventServiceProvider, _ServiceProvider);
var _super = _createSuper(EventServiceProvider);
function EventServiceProvider() {
(0, _classCallCheck2["default"])(this, EventServiceProvider);
return _super.apply(this, arguments);
}
(0, _createClass2["default"])(EventServiceProvider, [{
key: "register",
value: function register() {
var _this = this;
this.app.singleton('dispatcher', function (app) {
(0, _newArrowCheck2["default"])(this, _this);
return new _Dispatcher["default"](app);
}.bind(this)); // Add event-listener method and event fire method to Application instance
this.app.mixin({
on: function on(event, listener) {
this.dispatcher.on(event, listener);
},
once: function once(event, listener) {
this.dispatcher.once(event, listener);
},
emitter: function emitter(event) {
this.dispatcher.emitter(event);
}
});
}
}]);
return EventServiceProvider;
}(_ServiceProvider2["default"]);
exports["default"] = EventServiceProvider;