|
@@ -1,6 +1,7 @@
|
|
|
-define(["amber/boot", "require"], function (boot, require) {
|
|
|
+define(["./boot", "./kernel-goodies", "require"], function (boot, $goodies, require) {
|
|
|
var globals = boot.globals,
|
|
|
exports = {},
|
|
|
+ extend = $goodies.extend,
|
|
|
api = boot.api;
|
|
|
|
|
|
|
|
@@ -29,13 +30,6 @@ define(["amber/boot", "require"], function (boot, require) {
|
|
|
enumerable: true, configurable: true, writable: false
|
|
|
});
|
|
|
|
|
|
- function mixinToSettings (source) {
|
|
|
- var settings = globals.SmalltalkSettings;
|
|
|
- Object.keys(source).forEach(function (key) {
|
|
|
- settings[key] = source[key];
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
function settingsInLocalStorage () {
|
|
|
|
|
|
var storage = 'localStorage' in global && global.localStorage;
|
|
@@ -47,7 +41,7 @@ define(["amber/boot", "require"], function (boot, require) {
|
|
|
} catch (ex) {
|
|
|
|
|
|
}
|
|
|
- mixinToSettings(fromStorage || {});
|
|
|
+ extend(globals.SmalltalkSettings, fromStorage || {});
|
|
|
if (typeof window !== "undefined") {
|
|
|
window.addEventListener('beforeunload', function () {
|
|
|
storage.setItem('amber.SmalltalkSettings', JSON.stringify(globals.SmalltalkSettings));
|
|
@@ -61,7 +55,7 @@ define(["amber/boot", "require"], function (boot, require) {
|
|
|
globals.SmalltalkSettings['transport.defaultAmdNamespace'] = "amber/core";
|
|
|
api.amdRequire = require;
|
|
|
settingsInLocalStorage();
|
|
|
- mixinToSettings(options || {});
|
|
|
+ extend(globals.SmalltalkSettings, options || {});
|
|
|
resolve(api.initialize());
|
|
|
});
|
|
|
};
|