System.register(['aurelia-templating', 'aurelia-dependency-injection', 'aurelia-router'], function (_export) {
'use strict';
var customAttribute, bindable, inject, Router, RouteHref;
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
return {
setters: [function (_aureliaTemplating) {
customAttribute = _aureliaTemplating.customAttribute;
bindable = _aureliaTemplating.bindable;
}, function (_aureliaDependencyInjection) {
inject = _aureliaDependencyInjection.inject;
}, function (_aureliaRouter) {
Router = _aureliaRouter.Router;
}],
execute: function () {
RouteHref = (function () {
function RouteHref(router, element) {
_classCallCheck(this, _RouteHref);
this.router = router;
this.element = element;
}
var _RouteHref = RouteHref;
_RouteHref.prototype.bind = function bind() {
this.processChange();
};
_RouteHref.prototype.attributeChanged = function attributeChanged(value, previous) {
if (previous) {
this.element.removeAttribute(previous);
}
this.processChange();
};
_RouteHref.prototype.processChange = function processChange() {
var href = this.router.generate(this.route, this.params);
this.element.setAttribute(this.attribute, href);
};
RouteHref = inject(Router, Element)(RouteHref) || RouteHref;
RouteHref = bindable({ name: 'attribute', defaultValue: 'href' })(RouteHref) || RouteHref;
RouteHref = bindable({ name: 'params', changeHandler: 'processChange' })(RouteHref) || RouteHref;
RouteHref = bindable({ name: 'route', changeHandler: 'processChange' })(RouteHref) || RouteHref;
RouteHref = customAttribute('route-href')(RouteHref) || RouteHref;
return RouteHref;
})();
_export('RouteHref', RouteHref);
}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9FaXNlbmJlcmdFZmZlY3QvRG9jdW1lbnRzL0dpdEh1Yi9UaGUgRHVyYW5kYWwgUHJvamVjdC9hdXJlbGlhL3RlbXBsYXRpbmctcm91dGVyL3NyYy9yb3V0ZS1ocmVmLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztpREFTYSxTQUFTOzs7Ozs7MkNBVGQsZUFBZTtvQ0FBRSxRQUFROzsyQ0FDekIsTUFBTTs7OEJBQ04sTUFBTTs7O0FBT0QsZUFBUztBQUNULGlCQURBLFNBQVMsQ0FDUixNQUFNLEVBQUUsT0FBTyxFQUFFOzs7QUFDM0IsY0FBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7QUFDckIsY0FBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7U0FDeEI7O3lCQUpVLFNBQVM7OzZCQU1wQixJQUFJLEdBQUEsZ0JBQUc7QUFDTCxjQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7OzZCQUVELGdCQUFnQixHQUFBLDBCQUFDLEtBQUssRUFBRSxRQUFRLEVBQUU7QUFDaEMsY0FBSSxRQUFRLEVBQUU7QUFDWixnQkFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7V0FDeEM7O0FBRUQsY0FBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCOzs2QkFFRCxhQUFhLEdBQUEseUJBQUc7QUFDZCxjQUFJLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN6RCxjQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ2pEOztBQXJCVSxpQkFBUyxHQURyQixNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUNYLFNBQVMsS0FBVCxTQUFTO0FBQVQsaUJBQVMsR0FGckIsUUFBUSxDQUFDLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FFdkMsU0FBUyxLQUFULFNBQVM7QUFBVCxpQkFBUyxHQUhyQixRQUFRLENBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUMsQ0FBQyxDQUc5QyxTQUFTLEtBQVQsU0FBUztBQUFULGlCQUFTLEdBSnJCLFFBQVEsQ0FBQyxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBQyxDQUFDLENBSTdDLFNBQVMsS0FBVCxTQUFTO0FBQVQsaUJBQVMsR0FMckIsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUtqQixTQUFTLEtBQVQsU0FBUztlQUFULFNBQVM7OzsyQkFBVCxTQUFTIiwiZmlsZSI6Ii9Vc2Vycy9FaXNlbmJlcmdFZmZlY3QvRG9jdW1lbnRzL0dpdEh1Yi9UaGUgRHVyYW5kYWwgUHJvamVjdC9hdXJlbGlhL3RlbXBsYXRpbmctcm91dGVyL3NyYy9yb3V0ZS1ocmVmLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjdXN0b21BdHRyaWJ1dGUsIGJpbmRhYmxlfSBmcm9tICdhdXJlbGlhLXRlbXBsYXRpbmcnO1xuaW1wb3J0IHtpbmplY3R9IGZyb20gJ2F1cmVsaWEtZGVwZW5kZW5jeS1pbmplY3Rpb24nO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ2F1cmVsaWEtcm91dGVyJztcblxuQGN1c3RvbUF0dHJpYnV0ZSgncm91dGUtaHJlZicpXG5AYmluZGFibGUoe25hbWU6ICdyb3V0ZScsIGNoYW5nZUhhbmRsZXI6ICdwcm9jZXNzQ2hhbmdlJ30pXG5AYmluZGFibGUoe25hbWU6ICdwYXJhbXMnLCBjaGFuZ2VIYW5kbGVyOiAncHJvY2Vzc0NoYW5nZSd9KVxuQGJpbmRhYmxlKHtuYW1lOiAnYXR0cmlidXRlJywgZGVmYXVsdFZhbHVlOiAnaHJlZid9KVxuQGluamVjdChSb3V0ZXIsIEVsZW1lbnQpXG5leHBvcnQgY2xhc3MgUm91dGVIcmVmIHtcbiAgY29uc3RydWN0b3Iocm91dGVyLCBlbGVtZW50KSB7XG4gICAgdGhpcy5yb3V0ZXIgPSByb3V0ZXI7XG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDtcbiAgfVxuXG4gIGJpbmQoKSB7XG4gICAgdGhpcy5wcm9jZXNzQ2hhbmdlKCk7XG4gIH1cblxuICBhdHRyaWJ1dGVDaGFuZ2VkKHZhbHVlLCBwcmV2aW91cykge1xuICAgIGlmIChwcmV2aW91cykge1xuICAgICAgdGhpcy5lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZShwcmV2aW91cyk7XG4gICAgfVxuXG4gICAgdGhpcy5wcm9jZXNzQ2hhbmdlKCk7XG4gIH1cblxuICBwcm9jZXNzQ2hhbmdlKCkge1xuICAgIGxldCBocmVmID0gdGhpcy5yb3V0ZXIuZ2VuZXJhdGUodGhpcy5yb3V0ZSwgdGhpcy5wYXJhbXMpO1xuICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUodGhpcy5hdHRyaWJ1dGUsIGhyZWYpO1xuICB9XG59Il19 |