movie-web/vite.config.ts

97 lines
2.3 KiB
TypeScript
Raw Normal View History

2023-02-22 21:15:37 +01:00
import { defineConfig } from "vitest/config";
import react from "@vitejs/plugin-react";
2023-01-07 21:36:18 +01:00
import loadVersion from "vite-plugin-package-version";
2023-02-24 19:23:00 +01:00
import { VitePWA } from "vite-plugin-pwa";
import checker from "vite-plugin-checker";
2022-12-13 23:19:07 +01:00
import path from "path";
export default defineConfig({
plugins: [
react({
babel: {
presets: [
"@babel/preset-typescript",
"@babel/preset-react",
[
"@babel/preset-env",
{
modules: "umd",
useBuiltIns: "entry",
corejs: {
version: "3.29",
proposals: true,
},
},
],
],
},
}),
2023-02-24 19:23:00 +01:00
VitePWA({
registerType: "autoUpdate",
2023-02-24 20:12:20 +01:00
workbox: {
globIgnores: ["**ping.txt**"],
2023-02-24 19:23:00 +01:00
},
includeAssets: [
"favicon.ico",
"apple-touch-icon.png",
"safari-pinned-tab.svg",
],
manifest: {
name: "movie-web",
short_name: "movie-web",
description: "The place for your favourite movies & shows",
theme_color: "#120f1d",
background_color: "#120f1d",
display: "standalone",
start_url: "/",
icons: [
2023-02-24 22:20:35 +01:00
{
src: "android-chrome-192x192.png",
sizes: "192x192",
type: "image/png",
purpose: "any",
},
{
src: "android-chrome-512x512.png",
sizes: "512x512",
type: "image/png",
purpose: "any",
},
2023-02-24 19:23:00 +01:00
{
src: "android-chrome-192x192.png",
sizes: "192x192",
type: "image/png",
2023-02-24 22:16:51 +01:00
purpose: "maskable",
2023-02-24 19:23:00 +01:00
},
{
src: "android-chrome-512x512.png",
sizes: "512x512",
type: "image/png",
2023-02-24 22:16:51 +01:00
purpose: "maskable",
2023-02-24 19:23:00 +01:00
},
],
},
}),
loadVersion(),
checker({
typescript: true, // check typescript build errors in dev server
eslint: {
// check lint errors in dev server
lintCommand: "eslint --ext .tsx,.ts src",
dev: {
logLevel: ["error"],
},
},
}),
],
2022-12-13 23:19:07 +01:00
resolve: {
alias: {
2022-12-13 23:50:13 +01:00
"@": path.resolve(__dirname, "./src"),
2022-12-13 23:19:07 +01:00
},
},
2023-02-22 21:15:37 +01:00
test: {
environment: "jsdom",
},
2022-12-13 23:19:07 +01:00
});