ferngully-aurelia-tools
Version:
Ferngully Tools for Aurelia
73 lines • 4.06 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
define(["require", "exports", "aurelia-framework", "aurelia-dependency-injection"], function (require, exports, aurelia_framework_1, aurelia_dependency_injection_1) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var AureliaHelperService = (function () {
function AureliaHelperService(container, bindingEngine, templatingEngine) {
this.container = container;
this.bindingEngine = bindingEngine;
this.templatingEngine = templatingEngine;
}
AureliaHelperService.prototype.createPropertyWatch = function (object, propertyName, func) {
return this.bindingEngine.propertyObserver(object, propertyName)
.subscribe(function (newValue, oldValue) {
func(newValue, oldValue);
});
};
AureliaHelperService.prototype.createArrayWatch = function (array, func) {
return this.bindingEngine.collectionObserver(array)
.subscribe(function (splices) {
func(splices);
});
};
AureliaHelperService.prototype.createObservableProperty = function (object, propertyName) {
this.bindingEngine.propertyObserver(object, propertyName);
};
AureliaHelperService.prototype.createObservableComputedProperty = function (object, propertyName, func, dependencies) {
Object.defineProperty(object, propertyName, { get: func });
if (dependencies) {
object.get.dependencies = dependencies;
}
this.createObservableProperty(object, propertyName);
};
AureliaHelperService.prototype.getInstanceOf = function (whateverClass) {
return this.container.get(whateverClass);
};
AureliaHelperService.prototype.instanceIsRegistered = function (whateverClass, container, checkParent) {
if (!container) {
container = this.container;
}
return container.hasResolver(whateverClass, checkParent);
};
AureliaHelperService.prototype.createForCurrentScope = function (whateverClass, registerAs) {
var instance = this.getInstanceOf(whateverClass);
this.container.registerInstance(registerAs ? registerAs : whateverClass, instance);
return instance;
};
AureliaHelperService.prototype.enhance = function (elementSelector, bindingContext) {
var el = document.querySelector(elementSelector);
if (el) {
if (!el.querySelectorAll('.au-target').length) {
this.templatingEngine.enhance({ element: el, bindingContext: bindingContext });
}
}
};
AureliaHelperService = __decorate([
aurelia_framework_1.autoinject,
__metadata("design:paramtypes", [aurelia_dependency_injection_1.Container,
aurelia_framework_1.BindingEngine,
aurelia_framework_1.TemplatingEngine])
], AureliaHelperService);
return AureliaHelperService;
}());
exports.AureliaHelperService = AureliaHelperService;
});
//# sourceMappingURL=aurelia-helper-service.js.map