Tidy
This commit is contained in:
parent
d429f820e9
commit
80a417d33f
@ -1,13 +1,3 @@
|
||||
// @remove-on-eject-begin
|
||||
/**
|
||||
* Copyright (c) 2015-present, Facebook, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under the BSD-style license found in the
|
||||
* LICENSE file in the root directory of this source tree. An additional grant
|
||||
* of patent rights can be found in the PATENTS file in the same directory.
|
||||
*/
|
||||
// @remove-on-eject-end
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
@ -26,86 +16,66 @@ const MODULES = [
|
||||
path.join(UI_ROOT, 'node_modules'),
|
||||
'node_modules'
|
||||
];
|
||||
const FRONTEND = path.join(FRONTEND_ROOT, 'src'); // duplicate
|
||||
const FRONTEND = path.join(FRONTEND_ROOT, 'src');
|
||||
const UI = process.env.NODE_ENV === 'production'
|
||||
? path.join(FRONTEND_ROOT, 'node_modules', '@tomgco/joyent-portal-ui', 'dist')
|
||||
: path.join(UI_ROOT, 'src'); // also duplicate
|
||||
: path.join(UI_ROOT, 'src');
|
||||
const STATIC = path.join(FRONTEND_ROOT, 'static');
|
||||
const ESLINT = path.join(__dirname, '.eslintrc');
|
||||
|
||||
// module.exports = originalConfig;
|
||||
const rules = originalConfig.module.rules.reduce((loaders, loader, index) => {
|
||||
if(loader.test === /\.(js|jsx)$/) {
|
||||
loaders.push({
|
||||
test: loader.test,
|
||||
include: [loader.include, UI],
|
||||
loader: loader.loader,
|
||||
options: {
|
||||
babelrc: false,
|
||||
presets: [require.resolve('babel-preset-react-app')],
|
||||
plugins: [['inline-react-svg', {
|
||||
ignorePattern: 'libre-franklin'
|
||||
}]],
|
||||
cacheDirectory: true
|
||||
}
|
||||
})
|
||||
}
|
||||
else if(index === 1) {
|
||||
loaders.push({
|
||||
exclude: loader.exclude.concat([/\.(graphql|gql)$/]),
|
||||
loader: loader.loader,
|
||||
options: loader.options
|
||||
})
|
||||
}
|
||||
else if(loader.include) {
|
||||
loaders.push(Object.assign({}, loader, {include: [loader.include, UI]}));
|
||||
}
|
||||
else {
|
||||
loaders.push(loader);
|
||||
}
|
||||
return loaders;
|
||||
}, []);
|
||||
|
||||
// module.exports = function() {
|
||||
rules.push({
|
||||
test: /\.(graphql|gql)$/,
|
||||
exclude: /node_modules/,
|
||||
loader: require.resolve('graphql-tag/loader')
|
||||
});
|
||||
|
||||
console.log('originalConfig = ', originalConfig);
|
||||
// return originalConfig;
|
||||
const aliases = Object.assign({}, originalConfig.resolve.alias, fs.readdirSync(FRONTEND)
|
||||
.map((name) => path.join(FRONTEND, name))
|
||||
.filter((fullpath) => fs.statSync(fullpath).isDirectory())
|
||||
.reduce((aliases, fullpath) => Object.assign(aliases, {
|
||||
[`@${path.basename(fullpath)}`]: fullpath
|
||||
}), {
|
||||
'@root': FRONTEND,
|
||||
'@ui': UI
|
||||
}));
|
||||
|
||||
// config.module.rules[1].exclude.push(/\.(graphql|gql)$/);
|
||||
const resolveModules = originalConfig.resolve.modules.concat(MODULES);
|
||||
|
||||
const rules = originalConfig.module.rules.reduce((loaders, loader, index) => {
|
||||
if(loader.test === /\.(js|jsx)$/) {
|
||||
loaders.push({
|
||||
test: loader.test,
|
||||
include: [loader.include, UI],
|
||||
loader: loader.loader,
|
||||
options: {
|
||||
babelrc: false,
|
||||
presets: [require.resolve('babel-preset-react-app')],
|
||||
plugins: [['inline-react-svg', {
|
||||
ignorePattern: 'libre-franklin'
|
||||
}]],
|
||||
cacheDirectory: true
|
||||
}
|
||||
})
|
||||
}
|
||||
else if(index === 1) {
|
||||
loaders.push({
|
||||
exclude: loader.exclude.concat([/\.(graphql|gql)$/]),
|
||||
loader: loader.loader,
|
||||
options: loader.options
|
||||
})
|
||||
}
|
||||
else if(loader.include) {
|
||||
loaders.push(Object.assign({}, loader, {include: [loader.include, UI]}));
|
||||
}
|
||||
else {
|
||||
loaders.push(loader);
|
||||
}
|
||||
return loaders;
|
||||
}, []);
|
||||
originalConfig.module.rules = rules;
|
||||
originalConfig.resolve.alias = aliases;
|
||||
originalConfig.resolve.modules = resolveModules;
|
||||
originalConfig.resolve.plugins = [];
|
||||
|
||||
rules.push({
|
||||
test: /\.(graphql|gql)$/,
|
||||
exclude: /node_modules/,
|
||||
loader: require.resolve('graphql-tag/loader')
|
||||
});
|
||||
|
||||
const aliases = Object.assign({}, originalConfig.resolve.alias, fs.readdirSync(FRONTEND)
|
||||
.map((name) => path.join(FRONTEND, name))
|
||||
.filter((fullpath) => fs.statSync(fullpath).isDirectory())
|
||||
.reduce((aliases, fullpath) => Object.assign(aliases, {
|
||||
[`@${path.basename(fullpath)}`]: fullpath
|
||||
}), {
|
||||
'@root': FRONTEND,
|
||||
'@ui': UI
|
||||
}));
|
||||
|
||||
const resolveModules = originalConfig.resolve.modules.concat(MODULES);
|
||||
|
||||
originalConfig.module.rules = rules;
|
||||
originalConfig.resolve.alias = aliases;
|
||||
originalConfig.resolve.modules = resolveModules;
|
||||
originalConfig.resolve.plugins = [];
|
||||
|
||||
module.exports = originalConfig;
|
||||
|
||||
// return originalConfig;
|
||||
|
||||
// resolves
|
||||
// config.resolveLoader.modules = MODULES;
|
||||
|
||||
// config.resolve.modules = MODULES;
|
||||
|
||||
// set rules and return
|
||||
|
||||
// }
|
||||
module.exports = originalConfig;
|
||||
|
Loading…
Reference in New Issue
Block a user