diff --git a/.github/workflows/code_style.yml b/.github/workflows/code_style.yml new file mode 100644 index 00000000..2c384dc8 --- /dev/null +++ b/.github/workflows/code_style.yml @@ -0,0 +1,27 @@ +name: Code Layout + +on: push + +jobs: + code_style_python: + name: Python code convention check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - uses: psf/black@stable + with: + options: "--check --verbose --diff" + src: "./server" + + code_style_js: + name: JavaScript code convention check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + - name: Check JS + run: | + cd web-app + yarn install + yarn run lint:all diff --git a/LICENSES/CLA-signed-list.md b/LICENSES/CLA-signed-list.md index 1fdad7a2..309bfd91 100644 --- a/LICENSES/CLA-signed-list.md +++ b/LICENSES/CLA-signed-list.md @@ -12,4 +12,7 @@ C/ My company has custom contribution contract with Lutra Consulting Ltd. or I a * PeterPetrik, 31st March 2023 * tomasMizera, 31st March 2023 +* MarcelGeo, 19th April 2023 * harminius, 18th Aril 2023 +* varmar05, 12th April 2023 +* lavor, 26th April 2023 diff --git a/README.md b/README.md index 56ef4dd6..b0d6fc4f 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,8 @@

- +
+[![Code Layout](https://github.com/MerginMaps/mergin/actions/workflows/code_style.yml/badge.svg)](https://github.com/MerginMaps/mergin/actions/workflows/code_style.yml)

## About diff --git a/web-app/babel.config.js b/web-app/babel.config.js new file mode 100644 index 00000000..716b0237 --- /dev/null +++ b/web-app/babel.config.js @@ -0,0 +1,3 @@ +module.exports = { + presets: ['@vue/cli-plugin-babel/preset'] +} diff --git a/web-app/package.json b/web-app/package.json index 22091a1d..2de18a63 100644 --- a/web-app/package.json +++ b/web-app/package.json @@ -26,13 +26,13 @@ "build:admin:dev": "yarn workspace @mergin/admin-app build:dev", "clean:libs": "yarn workspace @mergin/lib clean && yarn workspace @mergin/admin-lib clean", "clean:libs:noadmin": "yarn workspace @mergin/lib clean", - "lint": "yarn workspace @mergin/app lint", "i18n:report": "yarn workspace @mergin/app 18n:report", "types:libs": "yarn workspaces run build:types", "types:lib": "yarn workspace @mergin/lib build:types", "types:admin-lib": "yarn workspace @mergin/admin-lib build:types", "watch:lib": "yarn workspace @mergin/lib build:lib:watch", - "watch:admin-lib": "yarn workspace @mergin/admin-lib build:lib:watch" + "watch:admin-lib": "yarn workspace @mergin/admin-lib build:lib:watch", + "lint:all": "yarn workspaces run lint" }, "devDependencies": { "@babel/core": "^7.17.9", diff --git a/web-app/packages/admin-app/package.json b/web-app/packages/admin-app/package.json index d4565b8d..0e75b39d 100644 --- a/web-app/packages/admin-app/package.json +++ b/web-app/packages/admin-app/package.json @@ -13,7 +13,7 @@ "build:lib:all:prod": "yarn build:lib:prod && yarn build:types", "build:types": "echo 'Not defined script'", "clean": "echo 'Nothing to clean.'", - "lint": "vue-cli-service lint --fix", + "lint": "eslint . --config .eslintrc.js --ext .js,.vue,.ts", "i18n:report": "vue-cli-service i18n:report --src './src/admin/**/*.?(js|vue)' --locales './src/admin/locales/**/*.json'" }, "dependencies": { diff --git a/web-app/packages/admin-lib/.eslintrc.js b/web-app/packages/admin-lib/.eslintrc.js index 53487599..51dfd9e4 100644 --- a/web-app/packages/admin-lib/.eslintrc.js +++ b/web-app/packages/admin-lib/.eslintrc.js @@ -1,13 +1,11 @@ module.exports = { - root: true, env: { node: true }, extends: [ 'plugin:vue/essential', 'eslint:recommended', - '@vue/typescript/recommended', - '../../.eslintrc.js' + '@vue/typescript/recommended' ], parser: 'vue-eslint-parser', parserOptions: { diff --git a/web-app/packages/admin-lib/.eslintrc.lint.js b/web-app/packages/admin-lib/.eslintrc.lint.js new file mode 100644 index 00000000..defb45a1 --- /dev/null +++ b/web-app/packages/admin-lib/.eslintrc.lint.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '.eslintrc.js' +} diff --git a/web-app/packages/admin-lib/package.json b/web-app/packages/admin-lib/package.json index c87bd7da..c7c8175d 100644 --- a/web-app/packages/admin-lib/package.json +++ b/web-app/packages/admin-lib/package.json @@ -17,7 +17,7 @@ "clean:lib": "rimraf ./dist", "clean:types:temp": "rimraf ./**/*.vue.ts", "clean:types": "rimraf ./types ./tsconfig.tsbuildinfo && yarn clean:types:temp", - "lint": "vue-cli-service lint" + "lint": "eslint . --config .eslintrc.lint.js ../../.eslintrc.js --no-eslintrc --ext .js,.vue,.ts" }, "dependencies": { "@mergin/lib": "file:../lib", diff --git a/web-app/packages/app/package.json b/web-app/packages/app/package.json index 4adf89c5..c21986b6 100644 --- a/web-app/packages/app/package.json +++ b/web-app/packages/app/package.json @@ -13,7 +13,7 @@ "build:lib:all": "yarn build:lib && yarn build:types", "build:lib:all:prod": "yarn build:lib:prod && yarn build:types", "clean": "echo 'Nothing to clean.'", - "lint": "vue-cli-service lint --fix", + "lint": "eslint . --config .eslintrc.js --ext .js,.vue,.ts", "i18n:report": "vue-cli-service i18n:report --src './src/admin/**/*.?(js|vue)' --locales './src/admin/locales/**/*.json'" }, "dependencies": { diff --git a/web-app/packages/lib/.eslintrc.js b/web-app/packages/lib/.eslintrc.js index 53487599..51dfd9e4 100644 --- a/web-app/packages/lib/.eslintrc.js +++ b/web-app/packages/lib/.eslintrc.js @@ -1,13 +1,11 @@ module.exports = { - root: true, env: { node: true }, extends: [ 'plugin:vue/essential', 'eslint:recommended', - '@vue/typescript/recommended', - '../../.eslintrc.js' + '@vue/typescript/recommended' ], parser: 'vue-eslint-parser', parserOptions: { diff --git a/web-app/packages/lib/.eslintrc.lint.js b/web-app/packages/lib/.eslintrc.lint.js new file mode 100644 index 00000000..defb45a1 --- /dev/null +++ b/web-app/packages/lib/.eslintrc.lint.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '.eslintrc.js' +} diff --git a/web-app/packages/lib/package.json b/web-app/packages/lib/package.json index b56bffb1..64e45ac6 100644 --- a/web-app/packages/lib/package.json +++ b/web-app/packages/lib/package.json @@ -18,7 +18,7 @@ "clean:lib": "rimraf ./dist", "clean:types:temp": "rimraf ./**/*.vue.ts", "clean:types": "rimraf ./types ./tsconfig.tsbuildinfo && yarn clean:types:temp", - "lint": "vue-cli-service lint" + "lint": "eslint . -c ./.eslintrc.lint.js ../../.eslintrc.js --no-eslintrc --ext .js,.vue,.ts" }, "dependencies": { "axios": "^0.26.1",