Yuki Takei 4 лет назад
Родитель
Сommit
e2808152c1

+ 4 - 4
packages/app/config/webpack.dev.dll.js

@@ -1,8 +1,8 @@
 /**
  * @author: Yuki Takei <yuki@weseek.co.jp>
  */
+ const path = require('path');
 const webpack = require('webpack');
-const helpers = require('../src/lib/util/helpers');
 
 
 module.exports = {
@@ -34,17 +34,17 @@ module.exports = {
     ],
   },
   output: {
-    path: helpers.root('public/dll'),
+    path: path.resolve(__dirname, '../public/dll'),
     filename: 'dll.js',
     library: 'growi_dlls',
   },
   resolve: {
     extensions: ['.js', '.json'],
-    modules: [helpers.root('src'), helpers.root('node_modules')],
+    modules: [path.resolve(__dirname, '../src'), path.resolve(__dirname, '../node_modules')],
   },
   plugins: [
     new webpack.DllPlugin({
-      path: helpers.root('public/dll/manifest.json'),
+      path: path.resolve(__dirname, '../public/dll/manifest.json'),
       name: 'growi_dlls',
     }),
   ],

+ 7 - 7
packages/app/config/webpack.dev.js

@@ -2,6 +2,8 @@
  * @author: Yuki Takei <yuki@weseek.co.jp>
  */
 
+const path = require('path');
+
 /*
  * Webpack Plugins
  */
@@ -9,8 +11,6 @@ const MiniCssExtractPlugin = require('mini-css-extract-plugin');
 const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
 const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
 
-const helpers = require('../src/lib/util/helpers');
-
 /**
  * Webpack Constants
  */
@@ -20,7 +20,7 @@ module.exports = require('./webpack.common')({
   mode: 'development',
   devtool: 'cheap-module-eval-source-map',
   entry: {
-    'js/dev': './src/client/js/dev',
+    'js/dev': './src/client/dev',
   },
   resolve: {
     modules: ['../node_modules'],
@@ -35,8 +35,8 @@ module.exports = require('./webpack.common')({
           { loader: 'sass-loader', options: { sourceMap: true } },
         ],
         exclude: [
-          helpers.root('src/client/styles/hackmd'),
-          helpers.root('src/client/styles/scss/style-presentation.scss'),
+          path.resolve(__dirname, '../src/styles-hackmd'),
+          path.resolve(__dirname, '../src/styles/style-presentation.scss'),
         ],
       },
       { // Dump CSS for HackMD
@@ -47,8 +47,8 @@ module.exports = require('./webpack.common')({
           'sass-loader',
         ],
         include: [
-          helpers.root('src/client/styles/hackmd'),
-          helpers.root('src/client/styles/scss/style-presentation.scss'),
+          path.resolve(__dirname, '../src/styles-hackmd'),
+          path.resolve(__dirname, '../src/styles/style-presentation.scss'),
         ],
       },
     ],

+ 5 - 1
packages/app/package.json

@@ -4,6 +4,9 @@
   "license": "MIT",
   "scripts": {
     "build": "env-cmd -f config/env.prod.js webpack --config config/webpack.prod.js --profile --bail",
+    "dev:build": "env-cmd -f config/env.dev.js webpack --config config/webpack.dev.js --progress --watch",
+    "dev:server": "env-cmd -f config/env.dev.js yarn ts-node-dev src/server/app.js --expose_gc --inspect",
+    "dev": "npm-run-all -p dev:*",
     "prebuild": "yarn ts-node bin/generate-plugin-definitions-source.ts && yarn ts-node bin/download-cdn-resources.ts",
     "lint:js:fix": "eslint \"**/*.{js,jsx}\" --fix",
     "lint:js": "eslint \"**/*.{js,jsx}\"",
@@ -11,7 +14,8 @@
     "lint:styles": "stylelint src/**/*.scss",
     "lint:swagger2openapi": "node node_modules/swagger2openapi/oas-validate tmp/swagger.json",
     "lint": "npm-run-all -p lint:js lint:styles lint:swagger2openapi",
-    "ts-node": "ts-node -r tsconfig-paths/register -r dotenv-flow/config"
+    "ts-node": "ts-node -r tsconfig-paths/register -r dotenv-flow/config",
+    "ts-node-dev": "ts-node-dev -r tsconfig-paths/register -r dotenv-flow/config"
   },
   "// comments for dependencies": {
     "openid-client": "Node.js 12 or higher is required for openid-client@3 and above.",