From 1d55d19fb9e04b2675d895506dd7b786cf44e714 Mon Sep 17 00:00:00 2001 From: Alexis Gousseau Date: Wed, 13 Mar 2024 17:23:35 +0100 Subject: [PATCH] fix purge sass in vite.config.ts --- resources/ts/utilities/sass-safelist.ts | 4 +++- vite.config.ts | 18 ++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/resources/ts/utilities/sass-safelist.ts b/resources/ts/utilities/sass-safelist.ts index a485131..f9d115e 100644 --- a/resources/ts/utilities/sass-safelist.ts +++ b/resources/ts/utilities/sass-safelist.ts @@ -1,4 +1,6 @@ -const sassSafelist = [ +import type { UserDefinedSafelist } from "purgecss"; + +const sassSafelist: UserDefinedSafelist = [ // Bootstrap /^cropper-/, /^offcanvas-/, diff --git a/vite.config.ts b/vite.config.ts index 996a07f..44cc311 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -6,7 +6,7 @@ import laravel from "laravel-vite-plugin"; import path from "path"; import postcssDiscard from "postcss-discard-comments"; import copy from "rollup-plugin-copy"; -import { defineConfig, loadEnv } from "vite"; +import { ConfigEnv, UserConfig, defineConfig, loadEnv } from "vite"; import babel from "vite-plugin-babel"; import checker from "vite-plugin-checker"; import eslint from "vite-plugin-eslint"; @@ -15,6 +15,14 @@ import { sassSafelist } from "./resources/ts/utilities/sass-safelist"; const env = loadEnv("r", process.cwd(), ""); +const purgePlugin = purge({ + templates: ["blade"], + paths: ["resources/{js,ts,views}/**/*.{ts,js,vue}"], + safelist: sassSafelist, +}); + +purgePlugin.apply = (config: UserConfig, env: ConfigEnv) => env.mode === "production"; + export default defineConfig({ build: { rollupOptions: { @@ -142,13 +150,7 @@ export default defineConfig({ isProduction: process.env.NODE_ENV !== "local" ? true : false, exclude: ["node_modules", "vendor"], }), - purge({ - templates: ["blade"], - paths: [ - "resources/{js,ts,views}/**/*.{ts,js,vue}" - ], - safelist: sassSafelist, - }) + purgePlugin ], server: { https: true,