Skip to content

Commit 5b3f6d2

Browse files
committed
fix(css): ensure tailwind whitelisting without overriding
1 parent 78e6db7 commit 5b3f6d2

File tree

9 files changed

+34
-54
lines changed

9 files changed

+34
-54
lines changed

docs/app/assets/css/main.css

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
@import "tailwindcss";
2-
@import "@nuxt/ui-pro";
3-
4-
@source "../../../content/**/*";
5-
@source "../../../../layer/app/**/*";
6-
71
@theme static {
82
--font-sans: 'Public Sans', sans-serif;
93
--container-8xl: 90rem;

docs/content/en/2.concepts/4.theme.md

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,12 @@ For a full overview of Nuxt UI theming, check out the Nuxt UI documentation.
1616

1717
You can customize your theme with CSS variables inside a [`@theme`](https://tailwindcss.com/docs/functions-and-directives#theme-directive) directive to define your project's custom design tokens, like fonts, colors, and breakpoints
1818

19-
You can override this theme by creating your own `main.css` file in your application.
20-
21-
::warning
22-
To ensure a good behaviour with Docus, you must always start by importing `tailwindcss` and `ui-pro` but also source `content/` files and `app.config.ts` :
23-
24-
```css [app/assets/css/main.css]
25-
@import "tailwindcss";
26-
@import "@nuxt/ui-pro";
27-
28-
@source "../../../content/**/*";
29-
@source "../../../node_modules/docus/app/**/*";
30-
```
31-
::
19+
You can override this theme by creating a `main.css` file in your application.
3220

3321
This way you can override your theme:
3422

3523
::code-group
3624
```css [assets/css/main.css]
37-
@import "tailwindcss";
38-
@import "@nuxt/ui-pro";
39-
40-
@source "../../../content/**/*";
41-
@source "../../../node_modules/docus/app/**/*";
42-
4325
@theme static {
4426
--font-sans: 'Public Sans', sans-serif;
4527

docs/content/fr/2.concepts/4.theme.md

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,12 @@ Pour un aperçu complet du système de thème Nuxt UI, consultez la documentatio
1515

1616
Vous pouvez personnaliser votre thème avec des variables CSS à l'intérieur d'une directive [`@theme`](https://tailwindcss.com/docs/functions-and-directives#theme-directive) pour définir les tokens de design personnalisés de votre projet, comme les polices, couleurs et breakpoints.
1717

18-
Vous pouvez surcharger ce thème en créant votre propre fichier `main.css` dans votre application.
19-
20-
::warning
21-
Pour garantir un bon fonctionnement avec Docus, vous devez toujours commencer par importer `tailwindcss` et `ui-pro` mais aussi sourcer les fichiers `content/` et `app.config.ts` :
22-
23-
```css [app/assets/css/main.css]
24-
@import "tailwindcss";
25-
@import "@nuxt/ui-pro";
26-
27-
@source "../../../content/**/*";
28-
@source "../../../node_modules/docus/app/**/*";
29-
```
30-
::
18+
Vous pouvez surcharger ce thème en créant un fichier `main.css` dans votre application.
3119

3220
De cette façon, vous pouvez surcharger votre thème :
3321

3422
::code-group
3523
```css [assets/css/main.css]
36-
@import "tailwindcss";
37-
@import "@nuxt/ui-pro";
38-
39-
@source "../../../content/**/*";
40-
@source "../../../node_modules/docus/app/**/*";
41-
4224
@theme static {
4325
--font-sans: 'Public Sans', sans-serif;
4426

docs/nuxt.config.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
export default defineNuxtConfig({
2+
extends: ['docus'],
23
modules: ['@nuxtjs/plausible', '@nuxtjs/i18n'],
34
css: ['~/assets/css/main.css'],
45
site: {

docs/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
"description": "Official documentation for Docus, also used as playground.",
44
"type": "module",
55
"scripts": {
6-
"build": "nuxt build --extends docus",
7-
"dev": "nuxt dev --extends docus"
6+
"build": "nuxt build",
7+
"dev": "nuxt dev"
88
},
99
"dependencies": {
1010
"@nuxtjs/i18n": "^10.0.3",

layer/app/assets/css/main.css

Lines changed: 0 additions & 5 deletions
This file was deleted.

layer/modules/default-configs.ts renamed to layer/modules/config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { getGitBranch, getGitEnv, getLocalGitInfo } from '../utils/git'
55

66
export default defineNuxtModule({
77
meta: {
8-
name: 'default-configs',
8+
name: 'config',
99
},
1010
async setup(_options, nuxt) {
1111
const dir = nuxt.options.rootDir

layer/modules/css.ts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import { defineNuxtModule, addTemplate } from '@nuxt/kit'
2+
import { joinURL } from 'ufo'
3+
4+
export default defineNuxtModule({
5+
meta: {
6+
name: 'css',
7+
},
8+
async setup(_options, nuxt) {
9+
const dir = nuxt.options.rootDir
10+
11+
const contentDir = joinURL(dir, 'content')
12+
13+
const cssTemplate = addTemplate({
14+
filename: 'docus.css',
15+
getContents: () => {
16+
return `@import "tailwindcss";
17+
@import "@nuxt/ui-pro";
18+
19+
@source "${contentDir.replace(/\\/g, '/')}/**/*";
20+
@source "../../app.config.ts";`
21+
},
22+
})
23+
24+
nuxt.options.css.push(cssTemplate.dst)
25+
},
26+
})

layer/nuxt.config.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ const { resolve } = createResolver(import.meta.url)
44

55
export default defineNuxtConfig({
66
modules: [
7-
resolve('./modules/default-configs'),
7+
resolve('./modules/config'),
88
resolve('./modules/routing'),
9+
resolve('./modules/css'),
910
'@nuxt/ui-pro',
1011
'@nuxt/content',
1112
'@nuxt/image',
@@ -26,7 +27,6 @@ export default defineNuxtConfig({
2627
devtools: {
2728
enabled: true,
2829
},
29-
css: [resolve('./app/assets/css/main.css')],
3030
content: {
3131
build: {
3232
markdown: {

0 commit comments

Comments
 (0)