Skip to content

Commit 302006a

Browse files
author
valentinab25
committed
test: Update jest,Jenkinsfile,lint to volto-addons-template PR30
1 parent 42c89fa commit 302006a

File tree

2 files changed

+26
-64
lines changed

2 files changed

+26
-64
lines changed

.eslintrc.js

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,43 @@
11
const fs = require('fs');
22
const path = require('path');
3-
4-
const projectRootPath = fs.existsSync('./project')
5-
? fs.realpathSync('./project')
6-
: fs.realpathSync('./../../../');
7-
const packageJson = require(path.join(projectRootPath, 'package.json'));
8-
const jsConfig = require(path.join(projectRootPath, 'jsconfig.json')).compilerOptions;
9-
10-
const pathsConfig = jsConfig.paths;
3+
const projectRootPath = fs.realpathSync(__dirname + '/../../../');
114

125
let voltoPath = path.join(projectRootPath, 'node_modules/@plone/volto');
6+
let configFile;
7+
if (fs.existsSync(`${projectRootPath}/tsconfig.json`))
8+
configFile = `${projectRootPath}/tsconfig.json`;
9+
else if (fs.existsSync(`${projectRootPath}/jsconfig.json`))
10+
configFile = `${projectRootPath}/jsconfig.json`;
11+
12+
if (configFile) {
13+
const jsConfig = require(configFile).compilerOptions;
14+
const pathsConfig = jsConfig.paths;
15+
if (pathsConfig['@plone/volto'])
16+
voltoPath = `./${jsConfig.baseUrl}/${pathsConfig['@plone/volto'][0]}`;
17+
}
1318

14-
Object.keys(pathsConfig).forEach(pkg => {
15-
if (pkg === '@plone/volto') {
16-
voltoPath = `./${jsConfig.baseUrl}/${pathsConfig[pkg][0]}`;
17-
}
18-
});
1919
const AddonConfigurationRegistry = require(`${voltoPath}/addon-registry.js`);
2020
const reg = new AddonConfigurationRegistry(projectRootPath);
2121

2222
// Extends ESlint configuration for adding the aliases to `src` directories in Volto addons
23-
const addonAliases = Object.keys(reg.packages).map(o => [
23+
const addonAliases = Object.keys(reg.packages).map((o) => [
2424
o,
2525
reg.packages[o].modulePath,
2626
]);
2727

28+
const addonExtenders = reg.getEslintExtenders().map((m) => require(m));
2829

29-
module.exports = {
30-
extends: `${projectRootPath}/node_modules/@plone/volto/.eslintrc`,
30+
const defaultConfig = {
31+
extends: `${voltoPath}/.eslintrc`,
3132
settings: {
3233
'import/resolver': {
3334
alias: {
3435
map: [
3536
['@plone/volto', '@plone/volto/src'],
37+
['@plone/volto-slate', '@plone/volto/packages/volto-slate/src'],
3638
...addonAliases,
3739
['@package', `${__dirname}/src`],
40+
['@root', `${__dirname}/src`],
3841
['~', `${__dirname}/src`],
3942
],
4043
extensions: ['.js', '.jsx', '.json'],
@@ -53,3 +56,10 @@ module.exports = {
5356
],
5457
}
5558
};
59+
60+
const config = addonExtenders.reduce(
61+
(acc, extender) => extender.modify(acc),
62+
defaultConfig,
63+
);
64+
65+
module.exports = config;

.project.eslintrc.js

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)