From d698e6464f6071d99073b94b811be66ed0011101 Mon Sep 17 00:00:00 2001 From: csjh <61282104+csjh@users.noreply.github.com> Date: Mon, 7 Aug 2023 11:50:58 -0400 Subject: [PATCH] externalize fonts for vitejs/vite#12873 --- packages/evidence/scripts/build-template.js | 7 +- packages/tailwind/fonts.css | 144 ++++++++++---------- packages/tailwind/package.json | 3 +- sites/example-project/vite.config.js | 10 ++ 4 files changed, 90 insertions(+), 74 deletions(-) diff --git a/packages/evidence/scripts/build-template.js b/packages/evidence/scripts/build-template.js index cde1361dd..a7b5ca1a5 100644 --- a/packages/evidence/scripts/build-template.js +++ b/packages/evidence/scripts/build-template.js @@ -81,7 +81,12 @@ fs.outputFileSync( fs: { strict: strictFs // allow template to get dependencies outside the .evidence folder } - } + }, + build: { + rollupOptions: { + external: [/^@evidence-dev\\/tailwind\\/fonts\\//] + } + } } export default config` ); diff --git a/packages/tailwind/fonts.css b/packages/tailwind/fonts.css index 59261372a..dce7a097a 100644 --- a/packages/tailwind/fonts.css +++ b/packages/tailwind/fonts.css @@ -3,16 +3,16 @@ font-style: normal; font-weight: 100; font-display: block; - src: url('fonts/Inter-3.19/Inter-Thin.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Thin.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Thin.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Thin.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 100; font-display: block; - src: url('fonts/Inter-3.19/Inter-ThinItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-ThinItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ThinItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ThinItalic.woff?v=3.19') format('woff'); } @font-face { @@ -20,16 +20,16 @@ font-style: normal; font-weight: 200; font-display: block; - src: url('fonts/Inter-3.19/Inter-ExtraLight.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-ExtraLight.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraLight.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraLight.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 200; font-display: block; - src: url('fonts/Inter-3.19/Inter-ExtraLightItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-ExtraLightItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraLightItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraLightItalic.woff?v=3.19') format('woff'); } @font-face { @@ -37,16 +37,16 @@ font-style: normal; font-weight: 300; font-display: block; - src: url('fonts/Inter-3.19/Inter-Light.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Light.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Light.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Light.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 300; font-display: block; - src: url('fonts/Inter-3.19/Inter-LightItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-LightItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-LightItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-LightItalic.woff?v=3.19') format('woff'); } @font-face { @@ -54,16 +54,16 @@ font-style: normal; font-weight: 400; font-display: block; - src: url('fonts/Inter-3.19/Inter-Regular.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Regular.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Regular.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Regular.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 400; font-display: block; - src: url('fonts/Inter-3.19/Inter-Italic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Italic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Italic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Italic.woff?v=3.19') format('woff'); } @font-face { @@ -71,16 +71,16 @@ font-style: normal; font-weight: 500; font-display: block; - src: url('fonts/Inter-3.19/Inter-Medium.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Medium.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Medium.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Medium.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 500; font-display: block; - src: url('fonts/Inter-3.19/Inter-MediumItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-MediumItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-MediumItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-MediumItalic.woff?v=3.19') format('woff'); } @font-face { @@ -88,16 +88,16 @@ font-style: normal; font-weight: 600; font-display: block; - src: url('fonts/Inter-3.19/Inter-SemiBold.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-SemiBold.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-SemiBold.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-SemiBold.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 600; font-display: block; - src: url('fonts/Inter-3.19/Inter-SemiBoldItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-SemiBoldItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-SemiBoldItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-SemiBoldItalic.woff?v=3.19') format('woff'); } @font-face { @@ -105,16 +105,16 @@ font-style: normal; font-weight: 700; font-display: block; - src: url('fonts/Inter-3.19/Inter-Bold.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Bold.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Bold.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Bold.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 700; font-display: block; - src: url('fonts/Inter-3.19/Inter-BoldItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-BoldItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-BoldItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-BoldItalic.woff?v=3.19') format('woff'); } @font-face { @@ -122,16 +122,16 @@ font-style: normal; font-weight: 800; font-display: block; - src: url('fonts/Inter-3.19/Inter-ExtraBold.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-ExtraBold.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraBold.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraBold.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 800; font-display: block; - src: url('fonts/Inter-3.19/Inter-ExtraBoldItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-ExtraBoldItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraBoldItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-ExtraBoldItalic.woff?v=3.19') format('woff'); } @font-face { @@ -139,16 +139,16 @@ font-style: normal; font-weight: 900; font-display: block; - src: url('fonts/Inter-3.19/Inter-Black.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-Black.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Black.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-Black.woff?v=3.19') format('woff'); } @font-face { font-family: 'Inter'; font-style: italic; font-weight: 900; font-display: block; - src: url('fonts/Inter-3.19/Inter-BlackItalic.woff2?v=3.19') format('woff2'), - url('fonts/Inter-3.19/Inter-BlackItalic.woff?v=3.19') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-BlackItalic.woff2?v=3.19') format('woff2'), + url('@evidence-dev/tailwind/fonts/Inter-3.19/Inter-BlackItalic.woff?v=3.19') format('woff'); } @font-face { @@ -156,16 +156,16 @@ font-style: normal; font-weight: 100; font-display: block; - src: url('fonts/Spectral/Spectral-Light.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Light.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Light.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Light.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 100; font-display: block; - src: url('fonts/Spectral/Spectral-LightItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-LightItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-LightItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-LightItalic.woff') format('woff'); } @font-face { @@ -173,16 +173,16 @@ font-style: normal; font-weight: 200; font-display: block; - src: url('fonts/Spectral/Spectral-ExtraLight.woff2') format('woff2'), - url('fonts/Spectral/Spectral-ExtraLight.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraLight.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraLight.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 200; font-display: block; - src: url('fonts/Spectral/Spectral-ExtraLightItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-ExtraLightItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraLightItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraLightItalic.woff') format('woff'); } @font-face { @@ -190,16 +190,16 @@ font-style: normal; font-weight: 300; font-display: block; - src: url('fonts/Spectral/Spectral-Light.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Light.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Light.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Light.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 300; font-display: block; - src: url('fonts/Spectral/Spectral-LightItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-LightItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-LightItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-LightItalic.woff') format('woff'); } @font-face { @@ -207,16 +207,16 @@ font-style: normal; font-weight: 400; font-display: block; - src: url('fonts/Spectral/Spectral-Regular.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Regular.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Regular.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Regular.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 400; font-display: block; - src: url('fonts/Spectral/Spectral-Italic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Italic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Italic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Italic.woff') format('woff'); } @font-face { @@ -224,16 +224,16 @@ font-style: normal; font-weight: 500; font-display: block; - src: url('fonts/Spectral/Spectral-Medium.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Medium.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Medium.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Medium.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 500; font-display: block; - src: url('fonts/Spectral/Spectral-MediumItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-MediumItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-MediumItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-MediumItalic.woff') format('woff'); } @font-face { @@ -241,16 +241,16 @@ font-style: normal; font-weight: 600; font-display: block; - src: url('fonts/Spectral/Spectral-SemiBold.woff2') format('woff2'), - url('fonts/Spectral/Spectral-SemiBold.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-SemiBold.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-SemiBold.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 600; font-display: block; - src: url('fonts/Spectral/Spectral-SemiBoldItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-SemiBoldItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-SemiBoldItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-SemiBoldItalic.woff') format('woff'); } @font-face { @@ -258,16 +258,16 @@ font-style: normal; font-weight: 700; font-display: block; - src: url('fonts/Spectral/Spectral-Bold.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Bold.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Bold.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Bold.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 700; font-display: block; - src: url('fonts/Spectral/Spectral-BoldItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-BoldItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-BoldItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-BoldItalic.woff') format('woff'); } @font-face { @@ -275,16 +275,16 @@ font-style: normal; font-weight: 800; font-display: block; - src: url('fonts/Spectral/Spectral-ExtraBold.woff2') format('woff2'), - url('fonts/Spectral/Spectral-ExtraBold.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraBold.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraBold.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 800; font-display: block; - src: url('fonts/Spectral/Spectral-ExtraBoldItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-ExtraBoldItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraBoldItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-ExtraBoldItalic.woff') format('woff'); } @font-face { @@ -292,14 +292,14 @@ font-style: normal; font-weight: 900; font-display: block; - src: url('fonts/Spectral/Spectral-Black.woff2') format('woff2'), - url('fonts/Spectral/Spectral-Black.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Black.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-Black.woff') format('woff'); } @font-face { font-family: 'Spectral'; font-style: italic; font-weight: 900; font-display: block; - src: url('fonts/Spectral/Spectral-BlackItalic.woff2') format('woff2'), - url('fonts/Spectral/Spectral-BlackItalic.woff') format('woff'); + src: url('@evidence-dev/tailwind/fonts/Spectral/Spectral-BlackItalic.woff2') format('woff2'), + url('@evidence-dev/tailwind/fonts/Spectral/Spectral-BlackItalic.woff') format('woff'); } diff --git a/packages/tailwind/package.json b/packages/tailwind/package.json index 8f0d938ab..591921381 100644 --- a/packages/tailwind/package.json +++ b/packages/tailwind/package.json @@ -20,7 +20,8 @@ "import": "./dist/index.mjs", "require": "./dist/index.cjs" }, - "./fonts.css": "./fonts.css" + "./fonts.css": "./fonts.css", + "./fonts/*": "./fonts/*" }, "main": "dist/index.cjs", "module": "dist/index.mjs", diff --git a/sites/example-project/vite.config.js b/sites/example-project/vite.config.js index c7cdef0c6..29889b118 100644 --- a/sites/example-project/vite.config.js +++ b/sites/example-project/vite.config.js @@ -9,6 +9,16 @@ const config = { }, ssr: { external: ['@evidence-dev/db-orchestrator', '@evidence-dev/telemetry', 'blueimp-md5'] + }, + server: { + fs: { + strict: process.env.NODE_ENV !== 'development' + } + }, + build: { + rollupOptions: { + external: [/^@evidence-dev\/tailwind\/fonts\//] + } } };