chore: tailwind and devserver

pull/13/head
moonrailgun 4 years ago
parent b4a356e730
commit 9f0ca12f6c

@ -1,5 +0,0 @@
{
"compilerOptions": {
"lib": ["DOM"],
}
}

@ -7,7 +7,8 @@
"license": "GPLv3",
"private": true,
"scripts": {
"build": "webpack"
"build": "webpack",
"dev": "NODE_ENV=development webpack serve"
},
"dependencies": {
"linaria": "^3.0.0-beta.2",
@ -21,6 +22,7 @@
"@types/react": "^17.0.11",
"@types/react-dom": "^17.0.8",
"@types/webpack": "^5.28.0",
"@types/webpack-dev-server": "^3.11.4",
"autoprefixer": "^10.2.6",
"css-loader": "^5.2.6",
"esbuild-loader": "^2.13.1",

@ -1,11 +1,15 @@
// tailwind.config.js
// Reference: https://www.tailwindcss.cn/docs/configuration
module.exports = {
purge: [],
darkMode: false, // or 'media' or 'class'
purge: {
enabled: process.env.NODE_ENV !== 'development',
content: ['./src/**/*.{js,jsx,ts,tsx}'],
},
darkMode: 'class', // or 'media'
theme: {
extend: {},
},
variants: {},
plugins: [],
}
};

@ -2,7 +2,8 @@
* Reference: https://webpack.js.org/configuration/configuration-languages/
*/
import { Configuration } from 'webpack';
import type { Configuration } from 'webpack';
import type WebpackDevServer from 'webpack-dev-server';
import path from 'path';
import HtmlWebpackPlugin from 'html-webpack-plugin';
@ -10,7 +11,17 @@ const ROOT_PATH = path.resolve(__dirname, './');
const DIST_PATH = path.resolve(ROOT_PATH, './dist');
const ASSET_PATH = process.env.ASSET_PATH || '/';
declare module 'webpack' {
interface Configuration {
devServer?: WebpackDevServer.Configuration;
}
}
const mode =
process.env.NODE_ENV === 'development' ? 'development' : 'production';
const config: Configuration = {
mode,
entry: {
app: './src/index.tsx',
},
@ -19,6 +30,9 @@ const config: Configuration = {
filename: '[name].[contenthash].js',
publicPath: ASSET_PATH,
},
devServer: {
port: 11011,
},
module: {
rules: [
{

@ -1040,11 +1040,34 @@
resolved "http://npm.gllue.net/@tsconfig%2fnode16/-/node16-1.0.1.tgz#a6ca6a9a0ff366af433f42f5f0e124794ff6b8f1"
integrity sha1-pspqmg/zZq9DP0L18OEkeU/2uPE=
"@types/body-parser@*":
version "1.19.0"
resolved "http://npm.gllue.net/@types%2fbody-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f"
integrity sha1-BoWzxH6zAG/+0RfN1VFkth+AU48=
dependencies:
"@types/connect" "*"
"@types/node" "*"
"@types/component-emitter@^1.2.10":
version "1.2.10"
resolved "https://registry.yarnpkg.com/@types/component-emitter/-/component-emitter-1.2.10.tgz#ef5b1589b9f16544642e473db5ea5639107ef3ea"
integrity sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==
"@types/connect-history-api-fallback@*":
version "1.3.4"
resolved "http://npm.gllue.net/@types%2fconnect-history-api-fallback/-/connect-history-api-fallback-1.3.4.tgz#8c0f0e6e5d8252b699f5a662f51bdf82fd9d8bb8"
integrity sha1-jA8Obl2CUraZ9aZi9Rvfgv2di7g=
dependencies:
"@types/express-serve-static-core" "*"
"@types/node" "*"
"@types/connect@*":
version "3.4.34"
resolved "http://npm.gllue.net/@types%2fconnect/-/connect-3.4.34.tgz#170a40223a6d666006d93ca128af2beb1d9b1901"
integrity sha1-FwpAIjptZmAG2TyhKK8r6x2bGQE=
dependencies:
"@types/node" "*"
"@types/eslint-scope@^3.7.0":
version "3.7.0"
resolved "http://npm.gllue.net/@types%2feslint-scope/-/eslint-scope-3.7.0.tgz#4792816e31119ebd506902a482caec4951fabd86"
@ -1066,6 +1089,25 @@
resolved "http://npm.gllue.net/@types%2festree/-/estree-0.0.48.tgz#18dc8091b285df90db2f25aa7d906cfc394b7f74"
integrity sha1-GNyAkbKF35DbLyWqfZBs/DlLf3Q=
"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18":
version "4.17.22"
resolved "http://npm.gllue.net/@types%2fexpress-serve-static-core/-/express-serve-static-core-4.17.22.tgz#e011c55de3f17ddf1161f790042a15c5a218744d"
integrity sha1-4BHFXePxfd8RYfeQBCoVxaIYdE0=
dependencies:
"@types/node" "*"
"@types/qs" "*"
"@types/range-parser" "*"
"@types/express@*":
version "4.17.12"
resolved "http://npm.gllue.net/@types%2fexpress/-/express-4.17.12.tgz#4bc1bf3cd0cfe6d3f6f2853648b40db7d54de350"
integrity sha1-S8G/PNDP5tP28oU2SLQNt9VN41A=
dependencies:
"@types/body-parser" "*"
"@types/express-serve-static-core" "^4.17.18"
"@types/qs" "*"
"@types/serve-static" "*"
"@types/glob@^7.1.1":
version "7.1.3"
resolved "http://npm.gllue.net/@types%2fglob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183"
@ -1079,11 +1121,23 @@
resolved "http://npm.gllue.net/@types%2fhtml-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50"
integrity sha1-PJ7pgPGhDWAhrmYyyj55yi7E+1A=
"@types/http-proxy@^1.17.5":
version "1.17.6"
resolved "http://npm.gllue.net/@types%2fhttp-proxy/-/http-proxy-1.17.6.tgz#62dc3fade227d6ac2862c8f19ee0da9da9fd8616"
integrity sha1-Ytw/reIn1qwoYsjxnuDanan9hhY=
dependencies:
"@types/node" "*"
"@types/json-schema@*", "@types/json-schema@^7.0.6":
version "7.0.7"
resolved "http://npm.gllue.net/@types%2fjson-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad"
integrity sha1-mKmTUWyFnrDVxMjwmDF6nqaNua0=
"@types/mime@^1":
version "1.3.2"
resolved "http://npm.gllue.net/@types%2fmime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a"
integrity sha1-k+Jb+e51/g/YC1lLxP6w6GIRG1o=
"@types/minimatch@*":
version "3.0.4"
resolved "http://npm.gllue.net/@types%2fminimatch/-/minimatch-3.0.4.tgz#f0ec25dbf2f0e4b18647313ac031134ca5b24b21"
@ -1109,6 +1163,16 @@
resolved "http://npm.gllue.net/@types%2fprop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7"
integrity sha1-KrDV2i5YFflLC51LldHl8kOrLKc=
"@types/qs@*":
version "6.9.6"
resolved "http://npm.gllue.net/@types%2fqs/-/qs-6.9.6.tgz#df9c3c8b31a247ec315e6996566be3171df4b3b1"
integrity sha1-35w8izGiR+wxXmmWVmvjFx30s7E=
"@types/range-parser@*":
version "1.2.3"
resolved "http://npm.gllue.net/@types%2frange-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c"
integrity sha1-fuMwunyq+5gJC+zoal7kQRWQTCw=
"@types/react-dom@^17.0.8":
version "17.0.8"
resolved "http://npm.gllue.net/@types%2freact-dom/-/react-dom-17.0.8.tgz#3180de6d79bf53762001ad854e3ce49f36dd71fc"
@ -1130,6 +1194,63 @@
resolved "http://npm.gllue.net/@types%2fscheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275"
integrity sha1-GIRSBehv8AOFF6q3oYpiprn3EnU=
"@types/serve-static@*":
version "1.13.9"
resolved "http://npm.gllue.net/@types%2fserve-static/-/serve-static-1.13.9.tgz#aacf28a85a05ee29a11fb7c3ead935ac56f33e4e"
integrity sha1-qs8oqFoF7imhH7fD6tk1rFbzPk4=
dependencies:
"@types/mime" "^1"
"@types/node" "*"
"@types/source-list-map@*":
version "0.1.2"
resolved "http://npm.gllue.net/@types%2fsource-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9"
integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==
"@types/tapable@^1":
version "1.0.7"
resolved "http://npm.gllue.net/@types%2ftapable/-/tapable-1.0.7.tgz#545158342f949e8fd3bfd813224971ecddc3fac4"
integrity sha1-VFFYNC+Uno/Tv9gTIklx7N3D+sQ=
"@types/uglify-js@*":
version "3.13.0"
resolved "http://npm.gllue.net/@types%2fuglify-js/-/uglify-js-3.13.0.tgz#1cad8df1fb0b143c5aba08de5712ea9d1ff71124"
integrity sha1-HK2N8fsLFDxaugjeVxLqnR/3ESQ=
dependencies:
source-map "^0.6.1"
"@types/webpack-dev-server@^3.11.4":
version "3.11.4"
resolved "http://npm.gllue.net/@types%2fwebpack-dev-server/-/webpack-dev-server-3.11.4.tgz#90d47dd660b696d409431ab8c1e9fa3615103a07"
integrity sha1-kNR91mC2ltQJQxq4wen6NhUQOgc=
dependencies:
"@types/connect-history-api-fallback" "*"
"@types/express" "*"
"@types/serve-static" "*"
"@types/webpack" "^4"
http-proxy-middleware "^1.0.0"
"@types/webpack-sources@*":
version "2.1.0"
resolved "http://npm.gllue.net/@types%2fwebpack-sources/-/webpack-sources-2.1.0.tgz#8882b0bd62d1e0ce62f183d0d01b72e6e82e8c10"
integrity sha1-iIKwvWLR4M5i8YPQ0Bty5ugujBA=
dependencies:
"@types/node" "*"
"@types/source-list-map" "*"
source-map "^0.7.3"
"@types/webpack@^4":
version "4.41.29"
resolved "http://npm.gllue.net/@types%2fwebpack/-/webpack-4.41.29.tgz#2e66c1de8223c440366469415c50a47d97625773"
integrity sha1-LmbB3oIjxEA2ZGlBXFCkfZdiV3M=
dependencies:
"@types/node" "*"
"@types/tapable" "^1"
"@types/uglify-js" "*"
"@types/webpack-sources" "*"
anymatch "^3.0.0"
source-map "^0.6.0"
"@types/webpack@^5.28.0":
version "5.28.0"
resolved "http://npm.gllue.net/@types%2fwebpack/-/webpack-5.28.0.tgz#78dde06212f038d77e54116cfe69e88ae9ed2c03"
@ -1381,7 +1502,7 @@ anymatch@^2.0.0:
micromatch "^3.1.4"
normalize-path "^2.1.1"
anymatch@~3.1.2:
anymatch@^3.0.0, anymatch@~3.1.2:
version "3.1.2"
resolved "http://npm.gllue.net/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
integrity sha1-wFV8CWrzLxBhmPT04qODU343hxY=
@ -3019,7 +3140,18 @@ http-proxy-middleware@0.19.1:
lodash "^4.17.11"
micromatch "^3.1.10"
http-proxy@^1.17.0:
http-proxy-middleware@^1.0.0:
version "1.3.1"
resolved "http://npm.gllue.net/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz#43700d6d9eecb7419bf086a128d0f7205d9eb665"
integrity sha1-Q3ANbZ7st0Gb8IahKND3IF2etmU=
dependencies:
"@types/http-proxy" "^1.17.5"
http-proxy "^1.18.1"
is-glob "^4.0.1"
is-plain-obj "^3.0.0"
micromatch "^4.0.2"
http-proxy@^1.17.0, http-proxy@^1.18.1:
version "1.18.1"
resolved "http://npm.gllue.net/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549"
integrity sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk=
@ -3308,6 +3440,11 @@ is-path-inside@^2.1.0:
dependencies:
path-is-inside "^1.0.2"
is-plain-obj@^3.0.0:
version "3.0.0"
resolved "http://npm.gllue.net/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7"
integrity sha1-r28uoUrFpkYYOlu9tbqrvBVq2dc=
is-plain-object@^2.0.3, is-plain-object@^2.0.4:
version "2.0.4"
resolved "http://npm.gllue.net/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
@ -3672,7 +3809,7 @@ micromatch@^3.1.10, micromatch@^3.1.4:
snapdragon "^0.8.1"
to-regex "^3.0.2"
micromatch@^4.0.4:
micromatch@^4.0.2, micromatch@^4.0.4:
version "4.0.4"
resolved "http://npm.gllue.net/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
integrity sha1-iW1Rnf6dsl/OlM63pQCRm/iB6/k=

Loading…
Cancel
Save