mframejs
Version:
simple framework
32 lines • 1.66 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var exported_1 = require("../decorator/exported");
var exported_2 = require("../binding/exported");
var exported_3 = require("../utils/exported");
var createBindingContext_1 = require("../binding/createBindingContext");
var TriggerEventsAttribute = (function () {
function TriggerEventsAttribute() {
}
TriggerEventsAttribute.prototype.created = function () {
this.name = this.$attribute.name.replace('.trigger', '');
this.value = this.$attribute.value;
this.expressionValue = this.$attribute.value;
this.eventHandlerBinded = this.eventHandler.bind(this);
exported_3.connectBehavior(this.expressionValue, this);
this.$element.addEventListener(this.name, this.eventHandlerBinded, false);
};
TriggerEventsAttribute.prototype.attached = function () {
};
TriggerEventsAttribute.prototype.detached = function () {
this.$element.removeEventListener(this.name, this.eventHandlerBinded);
};
TriggerEventsAttribute.prototype.eventHandler = function (event) {
exported_2.BindingEngine.tokenizeParseAndTraverseAST(this.value, createBindingContext_1.createBindingContext(this.$bindingContext.$context, this.$bindingContext.$overrideContext, event));
};
TriggerEventsAttribute = tslib_1.__decorate([
exported_1.customAttribute('#VARIABLE#.trigger')
], TriggerEventsAttribute);
return TriggerEventsAttribute;
}());
exports.TriggerEventsAttribute = TriggerEventsAttribute;
//# sourceMappingURL=triggerEventsAttribute.js.map