'use strict';

let path = require('path');

let localDevConfig = {};
try {
	localDevConfig = require('./devConfig');
} catch (e) {}
let devConfig = Object.assign({}, require('./devConfig.defaults'), localDevConfig);

module.exports = {
	entry: devConfig.bundles,
	resolve: {
		modules: [path.resolve('.'), path.join(__dirname, 'node_modules')],
		alias: {
			i18nJson: 'nfvo-utils/i18n/en.json', // only for default build, not through gulp
			'nfvo-utils': 'src/nfvo-utils',
			'nfvo-components': 'src/nfvo-components',
			'sdc-app': 'src/sdc-app',
			'react-select/dist/' : 'node_modules/react-select/dist/',
			'jquery' : 'node_modules/restful-js/node_modules/jquery'
		}
	},
	module: {
		rules: [
			{test: /\.(js|jsx)$/, loader: 'source-map-loader', exclude: /node_modules/, enforce: 'pre'},
			{test: /\.(js|jsx)$/, use: [
				{loader : 'react-hot-loader'},
				{loader : 'babel-loader'},
				{loader : 'eslint-loader'}], exclude: /node_modules/},
			{test: /\.(css|scss)$/, use: [
				{loader: 'style-loader'},
				{loader: 'css-loader?sourceMap'},
				{loader: 'sass-loader?sourceMap', options: { output: { path: path.join(__dirname, 'dist') } }}]},

			// required for font icons
			{test: /\.(woff|woff2)(\?.*)?$/, loader: 'url-loader?limit=16384&mimetype=application/font-woff'},
			{test: /\.(ttf|eot|otf)(\?.*)?$/, loader: 'file-loader'},
			{test: /\.(png|jpg|svg)(\?.*)?$/, loader: 'url-loader?limit=16384', exclude: path.join(__dirname, 'resources/images/svg') },
			{test: /\.html$/, use: [ {loader: 'html-loader'}]}
			]
	},
	plugins: []
};
