aurelia-bootstrap
Version:
Bootstrap components written in Aurelia.
41 lines (35 loc) • 1.28 kB
JavaScript
/* */
define(['exports', 'aurelia-templating', './dynamic-element'], function (exports, _aureliaTemplating, _dynamicElement) {
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getElementName = getElementName;
exports.configure = configure;
function getElementName(address) {
return (/([^\/^\?]+)\.html/i.exec(address)[1].toLowerCase()
);
}
function configure(config) {
var viewEngine = config.container.get(_aureliaTemplating.ViewEngine);
var loader = config.aurelia.loader;
viewEngine.addResourcePlugin('.html', {
'fetch': function fetch(address) {
return loader.loadTemplate(address).then(function (registryEntry) {
var _ref;
var bindable = registryEntry.template.getAttribute('bindable');
var elementName = getElementName(address);
if (bindable) {
bindable = bindable.split(',').map(function (x) {
return x.trim();
});
registryEntry.template.removeAttribute('bindable');
} else {
bindable = [];
}
return _ref = {}, _ref[elementName] = (0, _dynamicElement._createDynamicElement)(elementName, address, bindable), _ref;
});
}
});
}
});