Compare commits

..

No commits in common. "193a959e65d871255be68143f561cb5dfcc50b09" and "fae03cf5b63bfd1381f160b952fc6a4e76fc986e" have entirely different histories.

13 changed files with 17 additions and 20 deletions

View File

@ -12,4 +12,5 @@ FROM node:alpine
RUN npm install serve -g --silent RUN npm install serve -g --silent
WORKDIR /app WORKDIR /app
COPY --from=builder /app/build . COPY --from=builder /app/build .
CMD serve -p ${PORT:-8080} -s . EXPOSE 80
CMD ["serve", "-p", "80", "-s", "."]

View File

@ -7,7 +7,7 @@
"h": "cat ./webpack.config.dev.js" "h": "cat ./webpack.config.dev.js"
}, },
"devDependencies": { "devDependencies": {
"@svgr/webpack": "^6.3.1", "@svgr/webpack": "^5.5.0",
"@types/react": "^17.0.15", "@types/react": "^17.0.15",
"@types/react-dom": "^17.0.9", "@types/react-dom": "^17.0.9",
"copy-webpack-plugin": "^9.0.1", "copy-webpack-plugin": "^9.0.1",
@ -16,9 +16,10 @@
"fork-ts-checker-webpack-plugin": "^6.2.13", "fork-ts-checker-webpack-plugin": "^6.2.13",
"style-loader": "^3.2.1", "style-loader": "^3.2.1",
"typescript": "^4.3.5", "typescript": "^4.3.5",
"typescript-plugin-css-modules": "^3.4.0",
"webpack": "^5.46.0", "webpack": "^5.46.0",
"webpack-cli": "^4.7.2", "webpack-cli": "^4.7.2",
"webpack-dev-server": "^4.11.1" "webpack-dev-server": "^3.11.2"
}, },
"dependencies": { "dependencies": {
"idb": "^6.1.2", "idb": "^6.1.2",

Binary file not shown.

After

Width:  |  Height:  |  Size: 599 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

View File

@ -29,18 +29,18 @@
"description": "eBook reader supporting EPUB and FB2 files", "description": "eBook reader supporting EPUB and FB2 files",
"screenshots": [ "screenshots": [
{ {
"src": "/images/screenshot1.webp", "src": "/images/screenshot1.jpg",
"type": "image/webp", "type": "image/jpg",
"sizes": "1080x2400" "sizes": "1080x2400"
}, },
{ {
"src": "/images/screenshot2.webp", "src": "/images/screenshot2.jpg",
"type": "image/webp", "type": "image/jpg",
"sizes": "1080x2400" "sizes": "1080x2400"
}, },
{ {
"src": "/images/screenshot3.webp", "src": "/images/screenshot3.jpg",
"type": "image/webp", "type": "image/jpg",
"sizes": "1080x2400" "sizes": "1080x2400"
} }
] ]

View File

@ -23,11 +23,7 @@ export const UploadForm = ({ setLoading }: IPageProps) => {
} }
} catch (err) { } catch (err) {
setLoading(false); setLoading(false);
setError(err.message);
if (err instanceof Error)
setError(err.message);
else
setError(String(err))
} }
}; };

View File

@ -8,8 +8,8 @@ export const getHash = (path: string) => {
return path.substr("/book/".length, hashLength); return path.substr("/book/".length, hashLength);
}; };
export const composeResponseStatus = (err: unknown): ResponseInit => { export const composeResponseStatus = (err: Error): ResponseInit => {
if (err instanceof Error && err.name === "NetowrkError") if (err.name === "NetowrkError")
return { status: 503, statusText: err.message }; return { status: 503, statusText: err.message };
else return { status: 500, statusText: "Something bad happened (IDK)" }; else return { status: 500, statusText: "Something bad happened (IDK)" };
}; };

View File

@ -34,9 +34,7 @@ export const submitFile = async (
return await res.json(); return await res.json();
} catch (err) { } catch (err) {
if (err instanceof Error) console.error("Network error:", err.message);
console.error("Network error:", err.message);
throw err; throw err;
} }
}; };

View File

@ -8,10 +8,11 @@ module.exports = {
mode: "development", mode: "development",
watchOptions: { ignored: /node_modules/ }, watchOptions: { ignored: /node_modules/ },
devServer: { devServer: {
static: path.join(__dirname, "build"), contentBase: path.join(__dirname, "build"),
compress: true, compress: true,
port: 8080, port: 8080,
hot: false, hot: false,
inline: false,
historyApiFallback: { historyApiFallback: {
index: "index.html", index: "index.html",
}, },