From d22c3b0c257f5daf5b401988a35ab9ce981a2341 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Fri, 12 Aug 2022 19:54:46 +0200 Subject: refactor(frontend): move from Webpack to Vite Also overhaulds the building and linting for frontend assets. --- subprojects/frontend/package.json | 85 ++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 50 deletions(-) (limited to 'subprojects/frontend/package.json') diff --git a/subprojects/frontend/package.json b/subprojects/frontend/package.json index 12aff7bf..59a042b3 100644 --- a/subprojects/frontend/package.json +++ b/subprojects/frontend/package.json @@ -2,16 +2,14 @@ "name": "@refinery/frontend", "version": "0.0.0", "description": "Web frontend for Refinery", - "main": "index.js", + "prive": true, "scripts": { - "assemble:lezer": "lezer-generator src/language/problem.grammar -o build/generated/sources/lezer/problem.ts", - "assemble:webpack": "webpack --node-env production", - "serve": "webpack serve --node-env development --hot", - "check": "yarn run check:eslint && yarn run check:stylelint", - "check:eslint": "eslint .", - "check:eslint:ci": "eslint -f json -o build/eslint.json .", - "check:stylelint": "stylelint src/**/*.scss", - "check:stylelint:ci": "stylelint -f json src/**/*.scss > build/stylelint.json" + "build": "cross-env MODE=production vite build", + "serve": "cross-env MODE=development vite serve", + "typecheck": "tsc -p tsconfig.node.json && tsc -p tsconfig.json", + "lint": "eslint .", + "lint:ci": "eslint -f json -o build/eslint.json .", + "lint:fix": "yarn run lint --fix" }, "repository": { "type": "git", @@ -23,47 +21,7 @@ "url": "https://github.com/graphs4value/issues" }, "homepage": "https://refinery.tools", - "devDependencies": { - "@babel/core": "^7.18.10", - "@babel/plugin-transform-runtime": "^7.18.10", - "@babel/preset-env": "^7.18.10", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@lezer/generator": "^1.1.1", - "@principalstudio/html-webpack-inject-preload": "^1.2.7", - "@types/react": "^18.0.17", - "@types/react-dom": "^18.0.6", - "@typescript-eslint/eslint-plugin": "^5.33.0", - "@typescript-eslint/parser": "^5.33.0", - "babel-loader": "^8.2.5", - "css-loader": "^6.7.1", - "eslint": "^8.21.0", - "eslint-config-airbnb": "^19.0.4", - "eslint-config-airbnb-typescript": "^17.0.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsx-a11y": "^6.6.1", - "eslint-plugin-react": "^7.30.1", - "eslint-plugin-react-hooks": "^4.6.0", - "html-webpack-plugin": "^5.5.0", - "image-webpack-loader": "^8.1.0", - "mini-css-extract-plugin": "^2.6.1", - "postcss": "^8.4.16", - "postcss-scss": "^4.0.4", - "sass": "^1.54.4", - "sass-loader": "^13.0.2", - "style-loader": "^3.3.1", - "stylelint": "^14.10.0", - "stylelint-config-recommended-scss": "^7.0.0", - "stylelint-scss": "^4.3.0", - "typescript": "~4.7.4", - "webpack": "^5.74.0", - "webpack-cli": "^4.10.0", - "webpack-dev-server": "^4.10.0", - "webpack-subresource-integrity": "^5.1.0" - }, "dependencies": { - "@babel/runtime": "^7.18.9", "@codemirror/autocomplete": "^6.1.0", "@codemirror/commands": "^6.0.1", "@codemirror/language": "^6.2.1", @@ -77,7 +35,7 @@ "@fontsource/roboto": "^4.5.8", "@lezer/common": "^1.0.0", "@lezer/highlight": "^1.0.0", - "@lezer/lr": "^1.2.1", + "@lezer/lr": "^1.2.2", "@mui/icons-material": "5.8.4", "@mui/material": "5.10.0", "ansi-styles": "^6.1.0", @@ -90,5 +48,32 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "zod": "^3.18.0" + }, + "devDependencies": { + "@lezer/generator": "^1.1.1", + "@types/eslint": "^8.4.5", + "@types/node": "^18.7.2", + "@types/prettier": "^2.7.0", + "@types/react": "^18.0.17", + "@types/react-dom": "^18.0.6", + "@typescript-eslint/eslint-plugin": "^5.33.0", + "@typescript-eslint/parser": "^5.33.0", + "@vitejs/plugin-react": "^2.0.1", + "cross-env": "^7.0.3", + "eslint": "^8.21.0", + "eslint-config-airbnb": "^19.0.4", + "eslint-config-airbnb-typescript": "^17.0.0", + "eslint-config-prettier": "^8.5.0", + "eslint-import-resolver-typescript": "^3.4.0", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.6.1", + "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-react": "^7.30.1", + "eslint-plugin-react-hooks": "^4.6.0", + "prettier": "^2.7.1", + "rollup": "^2.77.3", + "typescript": "~4.7.4", + "vite": "^3.0.6", + "vite-plugin-inject-preload": "^1.0.1" } } -- cgit v1.2.3-70-g09d2