From 6d886d8bbc58ab629e552ee29c7a08a1213cd35c Mon Sep 17 00:00:00 2001 From: sthzg Date: Mon, 9 Nov 2015 19:25:20 +0100 Subject: [PATCH] Config -- added base config object for env-independent settings --- package.json | 1 + server.js | 1 + src/components/run.js | 1 + src/config/base.js | 6 ++++++ src/config/dev.js | 7 +++++-- src/config/dist.js | 8 ++++++-- src/config/test.js | 8 ++++++-- test/loadtests.js | 2 ++ 8 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 src/config/base.js diff --git a/package.json b/package.json index f3aa98f..995e79c 100644 --- a/package.json +++ b/package.json @@ -72,6 +72,7 @@ "webpack-dev-server": "^1.12.0" }, "dependencies": { + "core-js": "^1.2.6", "lodash": "^3.10.1", "normalize.css": "^3.0.3", "react": "^0.14.0", diff --git a/server.js b/server.js index a6fbcb0..3004e1c 100644 --- a/server.js +++ b/server.js @@ -1,4 +1,5 @@ /*eslint no-console:0 */ +require('core-js/fn/object/assign'); var webpack = require('webpack'); var WebpackDevServer = require('webpack-dev-server'); var config = require('./webpack.config'); diff --git a/src/components/run.js b/src/components/run.js index 633e4b8..33370a3 100644 --- a/src/components/run.js +++ b/src/components/run.js @@ -1,3 +1,4 @@ +import 'core-js/fn/object/assign'; import React from 'react'; import ReactDOM from 'react-dom'; import App from './Main'; diff --git a/src/config/base.js b/src/config/base.js new file mode 100644 index 0000000..46049ab --- /dev/null +++ b/src/config/base.js @@ -0,0 +1,6 @@ +'use strict'; + + +// Settings configured here will be merged into the final config object. +export default { +} diff --git a/src/config/dev.js b/src/config/dev.js index 96009da..da33d9e 100644 --- a/src/config/dev.js +++ b/src/config/dev.js @@ -1,7 +1,10 @@ 'use strict'; -const config = { +import baseConfig from './base'; + + +let config = { appEnv: 'dev' // feel free to remove the appEnv property here }; -export default config; +export default Object.freeze(Object.assign({}, baseConfig, config)); diff --git a/src/config/dist.js b/src/config/dist.js index 10661f6..d944587 100644 --- a/src/config/dist.js +++ b/src/config/dist.js @@ -1,7 +1,11 @@ 'use strict'; -const config = { +import baseConfig from './base'; + + +let config = { appEnv: 'dist' // feel free to remove the appEnv property here }; -export default config; +export default Object.freeze(Object.assign({}, baseConfig, config)); + diff --git a/src/config/test.js b/src/config/test.js index d76ca29..2141398 100644 --- a/src/config/test.js +++ b/src/config/test.js @@ -1,7 +1,11 @@ 'use strict'; -const config = { +import baseConfig from './base'; + + +let config = { appEnv: 'test' // don't remove the appEnv property here }; -export default config; +export default Object.freeze(Object.assign(baseConfig, config)); + diff --git a/test/loadtests.js b/test/loadtests.js index 68f8af6..416bc13 100644 --- a/test/loadtests.js +++ b/test/loadtests.js @@ -1,5 +1,7 @@ 'use strict'; +require('core-js/fn/object/assign'); + // Add support for all files in the test directory const testsContext = require.context('.', true, /(Test\.js$)|(Helper\.js$)/); testsContext.keys().forEach(testsContext);