1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-21 04:41:36 +02:00

Docs: Sass automatic recompilation in dev mode with Astro (#41574)

Co-authored-by: Julien Déramond <juderamond@gmail.com>
This commit is contained in:
Maxime Lardenois
2025-07-02 12:58:34 +02:00
committed by GitHub
parent c5074c7c18
commit 9566444580
3 changed files with 21 additions and 3 deletions

View File

@@ -6,7 +6,6 @@ import Stylesheet from '@components/head/Stylesheet.astro'
import Favicons from '@components/head/Favicons.astro' import Favicons from '@components/head/Favicons.astro'
import Social from '@components/head/Social.astro' import Social from '@components/head/Social.astro'
import Analytics from '@components/head/Analytics.astro' import Analytics from '@components/head/Analytics.astro'
import Scss from '@components/head/Scss.astro'
interface Props { interface Props {
description: string description: string
@@ -25,6 +24,10 @@ const isHome = Astro.url.pathname === '/'
const pageTitle = isHome const pageTitle = isHome
? `${getConfig().title} · ${getConfig().subtitle}` ? `${getConfig().title} · ${getConfig().subtitle}`
: `${title} · ${getConfig().title} v${getConfig().docs_version}` : `${title} · ${getConfig().title} v${getConfig().docs_version}`
// Dynamic imports to avoid build-time processing
const Scss = import.meta.env.PROD ? null : await import('@components/head/Scss.astro')
const ScssProd = import.meta.env.PROD ? await import('@components/head/ScssProd.astro') : null
--- ---
<meta charset="UTF-8" /> <meta charset="UTF-8" />
@@ -47,8 +50,15 @@ const pageTitle = isHome
<script is:inline src={getVersionedDocsPath('assets/js/color-modes.js')}></script> <script is:inline src={getVersionedDocsPath('assets/js/color-modes.js')}></script>
{import.meta.env.PROD && ScssProd && (
<Stylesheet direction={direction} layout={layout} /> <Stylesheet direction={direction} layout={layout} />
<Scss /> <ScssProd.default />
)}
{!import.meta.env.PROD && Scss && (
<Scss.default />
)}
<Favicons /> <Favicons />
<Social description={description} layout={layout} thumbnail={thumbnail} title={title} /> <Social description={description} layout={layout} thumbnail={thumbnail} title={title} />
<Analytics /> <Analytics />

View File

@@ -2,6 +2,7 @@
--- ---
<style is:global lang="scss"> <style is:global lang="scss">
@import '../../../../scss/bootstrap.scss';
@import '../../scss/docs'; @import '../../scss/docs';
@import '../../scss/docs_search'; @import '../../scss/docs_search';
</style> </style>

View File

@@ -0,0 +1,7 @@
---
---
<style is:global lang="scss">
@import '../../scss/docs';
@import '../../scss/docs_search';
</style>