Skip to content

Commit

Permalink
feat: configure alias in aver config file (#113)
Browse files Browse the repository at this point in the history
* refactor(config): added alias config param to renderer

* refactor(renderer): use alias config to add aliases to webpack

* test(config): updated test for snapshot so paths are correct on every environment
  • Loading branch information
exreplay committed Nov 2, 2019
1 parent 077056f commit 03dbade
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 10 deletions.
9 changes: 9 additions & 0 deletions packages/config/__tests__/__snapshots__/index.spec.js.snap
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ Object {
"progressbar": true,
"store": Object {},
"webpack": Object {
"alias": Object {
"@": "/aver",
"@@": "/",
"@components": "/aver/components",
"@mixins": "/aver/mixins",
"@pages": "/aver/pages",
"@resources": "/aver/resources",
"@vuex": "/aver/vuex",
},
"base": false,
"client": false,
"css": Object {
Expand Down
2 changes: 1 addition & 1 deletion packages/config/__tests__/index.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ test('should change progressbar option to false', () => {
});

test('should match default snapshot config when no config file is present', () => {
process.env.PROJECT_PATH = '';
process.env.PROJECT_PATH = '/aver';
const config = getAverjsConfig();
expect(config).toMatchSnapshot();
});
11 changes: 11 additions & 0 deletions packages/config/lib/configs/renderer.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import path from 'path';

export default () => ({
css: {
extract: false,
Expand All @@ -6,6 +8,15 @@ export default () => ({
options: {}
}
},
alias: {
'@': path.join(process.env.PROJECT_PATH),
'@@': path.resolve(process.env.PROJECT_PATH, '../'),
'@components': path.resolve(process.env.PROJECT_PATH, './components'),
'@resources': path.resolve(process.env.PROJECT_PATH, './resources'),
'@mixins': path.resolve(process.env.PROJECT_PATH, './mixins'),
'@pages': path.resolve(process.env.PROJECT_PATH, './pages'),
'@vuex': path.resolve(process.env.PROJECT_PATH, './vuex')
},
purgeCss: false,
base: false,
client: false,
Expand Down
12 changes: 3 additions & 9 deletions packages/renderer/lib/config/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,15 +78,9 @@ export default class WebpackBaseConfiguration {
}

alias() {
this.chainConfig.resolve
.alias
.set('@', path.join(process.env.PROJECT_PATH))
.set('@@', path.resolve(process.env.PROJECT_PATH, '../'))
.set('@components', path.resolve(process.env.PROJECT_PATH, './components'))
.set('@resources', path.resolve(process.env.PROJECT_PATH, './resources'))
.set('@mixins', path.resolve(process.env.PROJECT_PATH, './mixins'))
.set('@pages', path.resolve(process.env.PROJECT_PATH, './pages'))
.set('@vuex', path.resolve(process.env.PROJECT_PATH, './vuex'));
for (const alias of Object.keys(this.globalConfig.alias)) {
this.chainConfig.resolve.alias.set(alias, this.globalConfig.alias[alias]);
}
}

rules() {
Expand Down

0 comments on commit 03dbade

Please sign in to comment.