chore: improve setup of the tooling (#4)

* chore: lockfile should be committed to the repo

See https://classic.yarnpkg.com/blog/2016/11/24/lockfiles-for-all/

* chore: explicitly set the npm client to yarn

* chore: set up yarn workspaces

* chore: use jest.config.js

See: https://jestjs.io/docs/en/configuration

Better follow the convention than to define yet another config file name

* test: the `globals` configuration is redundant

* chore: prefer babel.config.js over .babelrc

See https://babeljs.io/docs/en/config-files

* chore: the jsxInjection alias is extraneous

* chore: add .js extension to eslint config

It is the preferred configuration file format.
https://eslint.org/docs/user-guide/configuring#configuration-file-formats

Also deleted the jasmine env as it's not used in this project.

* chore: downgrade to eslint v6 for compatibility with other dependencies

* chore: use eslint-config-airbnb-base instead of the full airbnb config

* chore: remove babel-eslint

Syntax used in this repo can already be parsed with the default ESLint
parser

* chore: add missing peer dependency for `@vue/test-utils`

* chore: enable useWorkspaces in lerna
This commit is contained in:
Haoqun Jiang
2020-05-28 21:20:39 +08:00
committed by GitHub
parent 5f7c77ad88
commit 9c464f4ce5
12 changed files with 10474 additions and 59 deletions

View File

@ -1,13 +0,0 @@
{
"presets": [
[
"@babel/env",
{
// "modules": "cjs"
}
]
],
"plugins": [
["./src/index.js", { "transformOn": true }]
]
}

View File

@ -1,10 +0,0 @@
const { h, mergeProps, withDirectives } = require('vue');
module.exports = {
globals: {
'_h': h,
'_mergeProps': mergeProps,
'_withDirectives': withDirectives
},
setupFiles: ['./test/setup.js'],
}

View File

@ -0,0 +1,13 @@
module.exports = {
presets: [
[
'@babel/env',
{
// "modules": "cjs"
},
],
],
plugins: [
['./src/index.js', { transformOn: true }],
],
};

View File

@ -0,0 +1,3 @@
module.exports = {
setupFiles: ['./test/setup.js'],
};

View File

@ -13,7 +13,7 @@
"scripts": {
"dev": "webpack-dev-server",
"lint": "eslint --ext .js src",
"test": "jest --config .jest.js"
"test": "jest"
},
"bugs": {
"url": "https://github.com/vueComponent/jsx/issues"
@ -30,6 +30,7 @@
"devDependencies": {
"@babel/core": "^7.9.6",
"@babel/preset-env": "^7.9.6",
"@vue/compiler-dom": "^3.0.0-beta.14",
"@vue/test-utils": "^2.0.0-alpha.6",
"babel-jest": "^26.0.1",
"babel-loader": "^8.1.0",

View File

@ -1,7 +1,5 @@
const path = require('path');
const jsxInjectionPATH = 'PACKAGE/lib/jsxInjection';
module.exports = {
mode: 'development',
devtool: 'cheap-module-eval-source-map',
@ -19,14 +17,6 @@ module.exports = {
},
],
},
resolve: {
alias: {
[jsxInjectionPATH]: path.resolve(
__dirname,
'./lib/jsxInjection',
),
},
},
devServer: {
inline: true,
open: true,