Skip to content

Commit 1fac9d0

Browse files
chore(all): prepare release 0.5.0
1 parent 63c5d36 commit 1fac9d0

File tree

16 files changed

+579
-318
lines changed

16 files changed

+579
-318
lines changed

bower.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "aurelia-framework",
3-
"version": "0.4.0",
3+
"version": "0.5.0",
44
"description": "The aurelia framework brings together all the required core aurelia libraries into a ready-to-go application-building platform.",
55
"keywords": [
66
"aurelia",

dist/amd/aurelia.js

Lines changed: 64 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
define(["exports", "aurelia-logging", "aurelia-dependency-injection", "aurelia-loader", "aurelia-templating", "aurelia-event-aggregator"], function (exports, _aureliaLogging, _aureliaDependencyInjection, _aureliaLoader, _aureliaTemplating, _aureliaEventAggregator) {
1+
define(["exports", "aurelia-logging", "aurelia-dependency-injection", "aurelia-loader", "aurelia-templating", "./plugins"], function (exports, _aureliaLogging, _aureliaDependencyInjection, _aureliaLoader, _aureliaTemplating, _plugins) {
22
"use strict";
33

44
var LogManager = _aureliaLogging;
@@ -8,121 +8,85 @@ define(["exports", "aurelia-logging", "aurelia-dependency-injection", "aurelia-l
88
var ResourceCoordinator = _aureliaTemplating.ResourceCoordinator;
99
var ViewSlot = _aureliaTemplating.ViewSlot;
1010
var ResourceRegistry = _aureliaTemplating.ResourceRegistry;
11-
var EventAggregator = _aureliaEventAggregator.EventAggregator;
12-
var includeEventsIn = _aureliaEventAggregator.includeEventsIn;
11+
var Plugins = _plugins.Plugins;
1312

1413

1514
var logger = LogManager.getLogger("aurelia");
1615

17-
function loadPlugins(loader, plugins) {
18-
var toLoad = [], i, ii, current;
19-
20-
for (i = 0, ii = plugins.length; i < ii; ++i) {
21-
current = plugins[i];
22-
logger.debug("Loading plugin " + current.moduleId + ".");
23-
toLoad.push(loader.loadModule(current.moduleId).then(function (exportedValue) {
24-
if ("install" in exportedValue) {
25-
return exportedValue.install(current.config || {}).then(function () {
26-
logger.debug("Installed plugin " + current.moduleId + ".");
27-
});
28-
} else {
29-
logger.debug("Loaded plugin " + current.moduleId + ".");
30-
}
31-
}));
16+
var Aurelia = function Aurelia(loader, container, resources) {
17+
this.loader = loader || Loader.createDefaultLoader();
18+
this.container = container || new Container();
19+
this.resources = resources || new ResourceRegistry();
20+
this.resourcesToLoad = [];
21+
this.plugins = new Plugins(this);
22+
23+
this.withInstance(Aurelia, this);
24+
this.withInstance(Loader, this.loader);
25+
this.withInstance(ResourceRegistry, this.resources);
26+
};
27+
28+
Aurelia.prototype.withInstance = function (type, instance) {
29+
this.container.registerInstance(type, instance);
30+
return this;
31+
};
32+
33+
Aurelia.prototype.withSingleton = function (type, implementation) {
34+
this.container.registerSingleton(type, implementation);
35+
return this;
36+
};
37+
38+
Aurelia.prototype.withResources = function (resources) {
39+
if (Array.isArray(resources)) {
40+
this.resourcesToLoad = this.resourcesToLoad.concat(resources);
41+
} else {
42+
this.resourcesToLoad = this.resourcesToLoad.concat(Array.prototype.slice.call(arguments));
3243
}
3344

34-
return Promise.all(toLoad);
35-
}
36-
37-
var Aurelia = (function () {
38-
var Aurelia = function Aurelia(loader, container, resources) {
39-
this.loader = loader || Loader.createDefaultLoader();
40-
this.container = container || new Container();
41-
this.resources = resources || new ResourceRegistry();
42-
this.resourcesToLoad = [];
43-
this.plugins = [];
44-
45-
this.withInstance(Aurelia, this);
46-
this.withInstance(Loader, this.loader);
47-
this.withInstance(ResourceRegistry, this.resources);
48-
this.withInstance(EventAggregator, includeEventsIn(this));
49-
};
50-
51-
Aurelia.prototype.withInstance = function (type, instance) {
52-
this.container.registerInstance(type, instance);
53-
return this;
54-
};
55-
56-
Aurelia.prototype.withSingleton = function (type, implementation) {
57-
this.container.registerSingleton(type, implementation);
58-
return this;
59-
};
60-
61-
Aurelia.prototype.withBindingLanguage = function (languageType) {
62-
this.container.registerSingleton(BindingLanguage, languageType);
63-
return this;
64-
};
65-
66-
Aurelia.prototype.withPlugin = function (moduleId, config) {
67-
this.plugins.push({ moduleId: moduleId, config: config });
68-
return this;
69-
};
70-
71-
Aurelia.prototype.withResources = function (resources) {
72-
if (Array.isArray(resources)) {
73-
this.resourcesToLoad = this.resourcesToLoad.concat(resources);
74-
} else {
75-
this.resourcesToLoad = this.resourcesToLoad.concat(Array.prototype.slice.call(arguments));
76-
}
77-
78-
return this;
79-
};
45+
return this;
46+
};
8047

81-
Aurelia.prototype.start = function () {
82-
var _this = this;
83-
if (this.started) {
84-
return;
85-
}
48+
Aurelia.prototype.start = function () {
49+
var _this = this;
50+
if (this.started) {
51+
return;
52+
}
8653

87-
this.started = true;
88-
logger.info("Aurelia Starting");
54+
this.started = true;
55+
logger.info("Aurelia Starting");
8956

90-
if (!this.container.hasHandler(BindingLanguage)) {
57+
return this.plugins.process().then(function () {
58+
if (!_this.container.hasHandler(BindingLanguage)) {
9159
logger.error("You must configure Aurelia with a BindingLanguage implementation.");
9260
}
9361

94-
return loadPlugins(this.loader, this.plugins).then(function () {
95-
return _this.container.get(ResourceCoordinator).importResources(_this.resourcesToLoad).then(function (resources) {
96-
resources.forEach(function (x) {
97-
return x.register(_this.resources);
98-
});
99-
logger.info("Aurelia Started");
100-
return _this;
62+
return _this.container.get(ResourceCoordinator).importResources(_this.resourcesToLoad).then(function (resources) {
63+
resources.forEach(function (x) {
64+
return x.register(_this.resources);
10165
});
66+
logger.info("Aurelia Started");
67+
return _this;
10268
});
103-
};
104-
105-
Aurelia.prototype.setRoot = function (root, applicationHost) {
106-
var _this2 = this;
107-
if (!applicationHost || typeof applicationHost == "string") {
108-
this.host = document.getElementById(applicationHost || "applicationHost") || document.body;
109-
} else {
110-
this.host = applicationHost;
111-
}
112-
113-
this.host.aurelia = this;
69+
});
70+
};
71+
72+
Aurelia.prototype.setRoot = function (root, applicationHost) {
73+
var _this2 = this;
74+
if (!applicationHost || typeof applicationHost == "string") {
75+
this.host = document.getElementById(applicationHost || "applicationHost") || document.body;
76+
} else {
77+
this.host = applicationHost;
78+
}
11479

115-
return this.container.get(ResourceCoordinator).loadElement(root).then(function (type) {
116-
_this2.root = type.create(_this2.container);
117-
var slot = new ViewSlot(_this2.host, true);
118-
slot.swap(_this2.root.view);
119-
slot.attached();
120-
return _this2;
121-
});
122-
};
80+
this.host.aurelia = this;
12381

124-
return Aurelia;
125-
})();
82+
return this.container.get(ResourceCoordinator).loadElement(root).then(function (type) {
83+
_this2.root = type.create(_this2.container);
84+
var slot = new ViewSlot(_this2.host, true);
85+
slot.swap(_this2.root.view);
86+
slot.attached();
87+
return _this2;
88+
});
89+
};
12690

12791
exports.Aurelia = Aurelia;
12892
});

dist/amd/index.js

Lines changed: 19 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,32 @@
1-
define(["exports", "./aurelia", "aurelia-dependency-injection", "aurelia-binding", "aurelia-metadata", "aurelia-templating", "aurelia-loader", "aurelia-task-queue", "aurelia-event-aggregator", "aurelia-logging"], function (exports, _aurelia, _aureliaDependencyInjection, _aureliaBinding, _aureliaMetadata, _aureliaTemplating, _aureliaLoader, _aureliaTaskQueue, _aureliaEventAggregator, _aureliaLogging) {
1+
define(["exports", "./aurelia", "aurelia-dependency-injection", "aurelia-binding", "aurelia-metadata", "aurelia-templating", "aurelia-loader", "aurelia-task-queue", "aurelia-logging"], function (exports, _aurelia, _aureliaDependencyInjection, _aureliaBinding, _aureliaMetadata, _aureliaTemplating, _aureliaLoader, _aureliaTaskQueue, _aureliaLogging) {
22
"use strict";
33

4-
exports.Aurelia = _aurelia.Aurelia;
5-
(function (obj) {
6-
for (var i in obj) {
7-
exports[i] = obj[i];
8-
}
9-
})(_aureliaDependencyInjection);
4+
var _interopRequireWildcard = function (obj) {
5+
return obj && obj.constructor === Object ? obj : {
6+
"default": obj
7+
};
8+
};
109

11-
(function (obj) {
10+
var _exportsWildcard = function (obj) {
1211
for (var i in obj) {
13-
exports[i] = obj[i];
12+
if (exports[i] !== undefined) {
13+
exports[i] = obj[i];
14+
}
1415
}
15-
})(_aureliaBinding);
16+
};
1617

17-
(function (obj) {
18-
for (var i in obj) {
19-
exports[i] = obj[i];
20-
}
21-
})(_aureliaMetadata);
18+
exports.Aurelia = _aurelia.Aurelia;
19+
_exportsWildcard(_interopRequireWildcard(_aureliaDependencyInjection));
2220

23-
(function (obj) {
24-
for (var i in obj) {
25-
exports[i] = obj[i];
26-
}
27-
})(_aureliaTemplating);
21+
_exportsWildcard(_interopRequireWildcard(_aureliaBinding));
2822

29-
(function (obj) {
30-
for (var i in obj) {
31-
exports[i] = obj[i];
32-
}
33-
})(_aureliaLoader);
23+
_exportsWildcard(_interopRequireWildcard(_aureliaMetadata));
3424

35-
(function (obj) {
36-
for (var i in obj) {
37-
exports[i] = obj[i];
38-
}
39-
})(_aureliaTaskQueue);
25+
_exportsWildcard(_interopRequireWildcard(_aureliaTemplating));
4026

41-
(function (obj) {
42-
for (var i in obj) {
43-
exports[i] = obj[i];
44-
}
45-
})(_aureliaEventAggregator);
27+
_exportsWildcard(_interopRequireWildcard(_aureliaLoader));
28+
29+
_exportsWildcard(_interopRequireWildcard(_aureliaTaskQueue));
4630

4731
var TheLogManager = _aureliaLogging;
4832
var LogManager = exports.LogManager = TheLogManager;

dist/amd/plugins.js

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
define(["exports", "aurelia-logging"], function (exports, _aureliaLogging) {
2+
"use strict";
3+
4+
var LogManager = _aureliaLogging;
5+
6+
7+
var logger = LogManager.getLogger("aurelia");
8+
9+
function loadPlugin(aurelia, loader, info) {
10+
logger.debug("Loading plugin " + info.moduleId + ".");
11+
12+
return loader.loadModule(info.moduleId, "").then(function (exportedValue) {
13+
if ("install" in exportedValue) {
14+
var result = exportedValue.install(aurelia, info.config || {});
15+
16+
if (result) {
17+
return result.then(function () {
18+
logger.debug("Installed plugin " + info.moduleId + ".");
19+
});
20+
} else {
21+
logger.debug("Installed plugin " + info.moduleId + ".");
22+
}
23+
} else {
24+
logger.debug("Loaded plugin " + info.moduleId + ".");
25+
}
26+
});
27+
}
28+
29+
var Plugins = function Plugins(aurelia) {
30+
this.aurelia = aurelia;
31+
this.info = [];
32+
this.hasProcessed = false;
33+
};
34+
35+
Plugins.prototype.install = function (moduleId, config) {
36+
this.info.push({ moduleId: moduleId, config: config });
37+
return this;
38+
};
39+
40+
Plugins.prototype.process = function () {
41+
var toLoad = [], aurelia = this.aurelia, loader = aurelia.loader, info = this.info, i, ii;
42+
43+
if (this.hasProcessed) {
44+
return Promise.resolve();
45+
}
46+
47+
this.hasProcessed = true;
48+
49+
for (i = 0, ii = info.length; i < ii; ++i) {
50+
toLoad.push(loadPlugin(aurelia, loader, info[i]));
51+
}
52+
53+
return Promise.all(toLoad);
54+
};
55+
56+
exports.Plugins = Plugins;
57+
});

0 commit comments

Comments
 (0)