Skip to content

Commit 9cecb80

Browse files
authoredJan 4, 2024
feat: support for project option (#152)
1 parent 17dce1c commit 9cecb80

35 files changed

+3081
-3586
lines changed
 

Diff for: ‎.eslintrc

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"extends": [
3-
"@nuxtjs/eslint-config-typescript"
3+
"@nuxt/eslint-config"
44
],
55
"rules": {
66
"@typescript-eslint/no-unused-vars": "off",

Diff for: ‎.npmrc

+1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
shamefully-hoist=true
2+
strict-peer-dependencies=false

Diff for: ‎.vscode/settings.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"editor.codeActionsOnSave": {
3-
"source.fixAll.eslint": true
3+
"source.fixAll.eslint": "explicit"
44
},
55
"files.associations": {
66
"*.css": "postcss"

Diff for: ‎README.md

+12-4
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
Official module of [Nuxt Studio](https://nuxt.studio).
1010

11-
A new experience to build website with [Nuxt](https://nuxt.com) and [Nuxt Content](https://content.nuxt.com/).
11+
Edit your websites made with [Nuxt Content](https://content.nuxt.com/), in production on any device.
1212

1313
📖  Official [Documentation](https://nuxt.studio/docs/projects/setup#requirements-to-use-the-studio-editor)
1414

@@ -20,13 +20,20 @@ A new experience to build website with [Nuxt](https://nuxt.com) and [Nuxt Conten
2020

2121
## Installation
2222

23+
Install the dependency to you project:
24+
2325
```bash
26+
# NPM
27+
npm install --save-dev @nuxthq/studio
28+
# Yarn
2429
yarn add --dev @nuxthq/studio
30+
# pnpm
31+
pnpm add --save-dev @nuxthq/studio
2532
```
2633

2734
Then, register the module in your `nuxt.config.ts`:
2835

29-
```js
36+
```ts
3037
export default defineNuxtConfig({
3138
modules: [
3239
'@nuxthq/studio'
@@ -47,8 +54,9 @@ STUDIO_API=http://localhost:{PORT}
4754

4855
### Development
4956

50-
- Run `yarn install` to install dependencies.
51-
- Run `yarn dev` to start the dev server using [`playground/`](./playground/) as the project.
57+
- Run `pnpm i` to install dependencies.
58+
- Run `pnpm dev:prepare` to prepare the module in development mode.
59+
- Run `pnpm dev` to start the dev server using [`playground/`](./playground/) as the project.
5260
- Visit http://localhost:3000/
5361

5462
## License

Diff for: ‎package.json

+23-24
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
{
22
"name": "@nuxthq/studio",
3+
"description": "Nuxt Studio is a visual editor for content-driven Nuxt application with Markdown.",
34
"version": "1.0.6",
45
"repository": "nuxtlabs/studio-module",
56
"homepage": "https://nuxt.studio",
67
"packageManager": "pnpm@8.10.0",
78
"keywords": [
89
"nuxt",
9-
"studio"
10+
"studio",
11+
"nuxtcms",
12+
"nuxtcontent"
1013
],
1114
"license": "MIT",
1215
"files": [
@@ -29,37 +32,34 @@
2932
"main": "./dist/module.cjs",
3033
"types": "./dist/types.d.ts",
3134
"scripts": {
32-
"prepare": "nuxt prepare playground",
33-
"dev": "NUXT_STUDIO_DEV_PROXY=true nuxt dev playground",
34-
"build": "nuxt-module-build",
35-
"lint": "eslint --ext .vue,.ts,.js,.mjs .",
35+
"dev:prepare": "nuxt-module-build build --stub && nuxt-module-build prepare && nuxt prepare playground",
36+
"dev": "nuxt dev playground --tunnel",
37+
"build": "nuxt-module-build build",
38+
"lint": "eslint .",
3639
"prepack": "pnpm lint && pnpm build",
3740
"release": "pnpm lint && release-it",
3841
"pre:release": "pnpm lint && release-it --preRelease"
3942
},
4043
"dependencies": {
41-
"@nuxt/kit": "^3.8.0",
44+
"@nuxt/kit": "^3.9.0",
4245
"defu": "^6.1.3",
4346
"nuxt-component-meta": "^0.6.0",
44-
"nuxt-config-schema": "^0.4.6",
45-
"socket.io-client": "^4.7.2",
46-
"ufo": "^1.3.1"
47+
"socket.io-client": "^4.7.3",
48+
"ufo": "^1.3.2"
4749
},
4850
"devDependencies": {
49-
"@nuxt-themes/alpine": "^1.6.4",
50-
"@nuxt-themes/elements": "0.9.5",
51-
"@nuxt/content": "^2.9.0",
52-
"@nuxt/module-builder": "^0.5.2",
53-
"@nuxt/schema": "^3.8.0",
54-
"@nuxtjs/color-mode": "^3.3.0",
55-
"@nuxtjs/eslint-config-typescript": "^12.1.0",
56-
"@types/node": "^20.8.9",
57-
"eslint": "^8.52.0",
58-
"jiti": "^1.20.0",
59-
"nuxt": "^3.8.0",
60-
"pinceau": "^0.20.1",
61-
"release-it": "^16.2.1",
62-
"typescript": "^5.2.2"
51+
"@nuxt/content": "^2.10.0",
52+
"@nuxt/eslint-config": "^0.2.0",
53+
"@nuxt/image": "^1.1.0",
54+
"@nuxt/module-builder": "^0.5.5",
55+
"@nuxt/schema": "^3.9.0",
56+
"@nuxt/ui-pro": "^0.6.1",
57+
"@types/node": "^20.10.6",
58+
"consola": "^3.2.3",
59+
"eslint": "^8.56.0",
60+
"nuxt": "^3.9.0",
61+
"release-it": "^17.0.1",
62+
"typescript": "^5.3.3"
6363
},
6464
"release-it": {
6565
"git": {
@@ -76,7 +76,6 @@
7676
"vue": "*"
7777
},
7878
"ignoreMissing": [
79-
"prosemirror-*",
8079
"@babel/core",
8180
"webpack",
8281
"axios",

Diff for: ‎playground/.studio/app.config.json

-1
This file was deleted.

Diff for: ‎playground/.studio/tokens.config.json

-1
This file was deleted.

Diff for: ‎playground/app.config.ts

+1-41
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,3 @@
11
export default defineAppConfig({
2-
// @ts-ignore
3-
alpine: {
4-
title: 'Alpine',
5-
description: 'The minimalist blog theme',
6-
image: {
7-
src: '/social-card-preview.png',
8-
alt: 'An image showcasing my project.',
9-
width: 400,
10-
height: 300
11-
},
12-
header: {
13-
position: 'right', // possible value are : | 'left' | 'center' | 'right'
14-
logo: {
15-
path: '/logo.svg', // path of the logo
16-
pathDark: '/logo-dark.svg', // path of the logo in dark mode, leave this empty if you want to use the same logo
17-
alt: 'alpine' // alt of the logo
18-
}
19-
},
20-
footer: {
21-
credits: {
22-
enabled: true, // possible value are : true | false
23-
repository: 'https://www.github.com/nuxt-themes/alpine' // our github repository
24-
},
25-
navigation: true, // possible value are : true | false
26-
alignment: 'center', // possible value are : 'none' | 'left' | 'center' | 'right'
27-
message: 'Follow me on' // string that will be displayed in the footer (leave empty or delete to disable)
28-
},
29-
socials: {
30-
twitter: 'nuxtlabs',
31-
instagram: 'atinuxt',
32-
// @ts-ignore
33-
linkedin: {
34-
icon: 'uil:linkedin',
35-
label: 'LinkedIn',
36-
href: 'https://www.linkedin.com/company/nuxtlabs'
37-
}
38-
},
39-
form: {
40-
successMessage: 'Message sent. Thank you!'
41-
}
42-
}
2+
433
})

Diff for: ‎playground/app.vue

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<script setup>
2+
const appConfig = useAppConfig()
3+
const { data: navigation } = useAsyncData('navigation', () => fetchContentNavigation())
4+
</script>
5+
6+
<template>
7+
<UHeader
8+
:title="appConfig.title"
9+
:links="mapContentNavigation(navigation)"
10+
/>
11+
<UMain>
12+
<UContainer>
13+
<NuxtPage />
14+
</UContainer>
15+
</UMain>
16+
</template>

Diff for: ‎playground/components/content/AppConfig.vue

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<script setup>
2+
const appConfig = useAppConfig()
3+
</script>
4+
5+
<template>
6+
<pre>{{ appConfig }}</pre>
7+
</template>

Diff for: ‎playground/components/content/ArticlesList.vue

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<script setup>
2+
const { data: articles } = useAsyncData('articles', () => queryContent('/articles/').find())
3+
</script>
4+
5+
<template>
6+
<UPageGrid>
7+
<UPageCard
8+
v-for="article in articles"
9+
:key="article._slug"
10+
:title="article.title"
11+
:description="article.description"
12+
:to="article._path"
13+
/>
14+
</UPageGrid>
15+
</template>

Diff for: ‎playground/components/content/ArticlesListItem.vue

-103
This file was deleted.

Diff for: ‎playground/components/content/Config.vue

-12
This file was deleted.

Diff for: ‎playground/components/content/Debug.vue

-20
This file was deleted.

Diff for: ‎playground/components/content/StudioComponents.vue

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<script setup>
2+
const { data: studio } = await useFetch('/__studio.json')
3+
</script>
4+
5+
<template>
6+
<pre>{{ studio.components }}</pre>
7+
</template>

Diff for: ‎playground/content/1.index.md

-24
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,7 @@
11
---
2-
layout: default
3-
head.title: Alpine
4-
description: An open source blog theme powered by Nuxt.
52
title: About
63
---
74

8-
::hero
9-
---
10-
image: '/alpine-0.webp'
11-
---
12-
#title
13-
Hi, I am Alpine.
14-
#description
15-
- An [open source blog theme](https://github.com/nuxt-themes/alpine) powered by [Nuxt Content](https://content.nuxtjs.org), editable on [Nuxt Studio](https://studio.nuxt.com).
16-
- Write pages in Markdown and Vue components with the [MDC syntax](https://content.nuxtjs.org/guide/writing/mdc).
17-
- Use [**30+ built-in**](https://elements.nuxt.space) components in your Markdown pages.
18-
::
19-
205
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor, dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam. Maecenas ligula massa, varius a, semper congue, euismod non, mi. Proin porttitor, orci nec nonummy molestie, enim est eleifend mi, non fermentum diam nisl sit amet erat. Duis semper. Duis arcu massa, scelerisque vitae, consequat in, pretium a, enim.
216

227
Pellentesque congue. Ut in risus volutpat libero pharetra tempor. Cras vestibulum bibendum augue. Praesent egestas leo in pede. Praesent blandit odio eu enim. Pellentesque sed dui ut augue blandit sodales. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aliquam nibh. Mauris ac mauris sed pede pellentesque fermentum. Maecenas adipiscing ante non diam sodales hendrerit.
23-
24-
::gallery
25-
---
26-
images:
27-
- /alpine-0.webp
28-
- /alpine-1.webp
29-
- /alpine-2.webp
30-
---
31-
::

Diff for: ‎playground/content/2.articles.md

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
---
22
title: 'Articles'
3-
layout: 'page'
43
---
54

6-
::articles-list
7-
---
8-
path: articles
9-
---
10-
::
5+
:articles-list

Diff for: ‎playground/content/3.contact.md

-32
This file was deleted.

Diff for: ‎playground/content/4.app-config.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# App Config
2+
3+
:app-config

Diff for: ‎playground/content/4.config.md

-3
This file was deleted.

Diff for: ‎playground/content/5.components.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Components
2+
3+
:studio-components

Diff for: ‎playground/content/5.debug.md

-3
This file was deleted.

Diff for: ‎playground/content/articles/1.get-started.md

-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,3 @@
1-
---
2-
cover: /articles/get-started.webp
3-
author:
4-
name: Sébastien Chopin
5-
avatarUrl: https://pbs.twimg.com/profile_images/1042510623962275840/1Iw_Mvud_400x400.jpg
6-
link: https://twitter.com/atinux
7-
date: 2022-08-23
8-
layout: article
9-
---
10-
111
# Get started with Alpine
122

133
Creating a blog with Alpine is a command away, as well as deploying to many platforms.

Diff for: ‎playground/content/articles/2.configure.md

-11
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,3 @@
1-
---
2-
cover: /articles/configure-alpine.webp
3-
author:
4-
name: Clément Ollivier
5-
avatarUrl: https://pbs.twimg.com/profile_images/1370286658432724996/ZMSDzzIi_400x400.jpg
6-
link: https://twitter.com/clemcodes
7-
date: 2022-08-23
8-
description: Learn how to configure Alpine with the app.config.ts file.
9-
layout: article
10-
---
11-
121
# Configure Alpine
132

143
To configure meta tags, social links or even the Alpine theme display, update the `alpine` key in the `app.config.ts` at the root of your project:

Diff for: ‎playground/content/articles/3.write-articles.md

-7
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,3 @@
1-
---
2-
cover: /articles/write-articles.webp
3-
date: 2022-08-23
4-
description: Writing Markdown articles in Alpine is straightforward.
5-
layout: article
6-
---
7-
81
# Write Articles
92

103
Write Markdown articles in Alpine is straightforward.

Diff for: ‎playground/content/articles/4.design-tokens.md

-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
---
2-
cover: /articles/design-tokens.webp
3-
date: 2022-08-23
4-
layout: article
5-
---
6-
71
# Customize Alpine
82

93
Leverage the `tokens.config.ts` to give your identity to Alpine.

Diff for: ‎playground/nuxt.config.ts

+26-12
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,32 @@
1+
import { consola } from 'consola'
12
import { defineNuxtConfig } from 'nuxt/config'
23

34
export default defineNuxtConfig({
4-
extends: '@nuxt-themes/alpine',
5-
alias: {
6-
'@nuxthq/studio': '../src/module'
7-
},
8-
modules: [
9-
// TODO: module functions are not supported yet
10-
'../src/module'
11-
],
5+
extends: '@nuxt/ui-pro',
6+
modules: ['@nuxt/ui', '@nuxt/content', '../src/module', "@nuxt/image"],
127
studio: {
13-
enabled: true
8+
enabled: true,
9+
project: 'studio/studio-module'
10+
},
11+
hooks: {
12+
// Set all components to global
13+
'components:extend': (components) => {
14+
// components.forEach(component => {
15+
// if (component.pascalName[0] === 'U') {
16+
// component.global = true
17+
// }
18+
// })
19+
},
20+
'listen': async (_, { getURLs }) => {
21+
const urls = await getURLs()
22+
const tunnelURL = urls.find(u => u.type === 'tunnel')
23+
if (!tunnelURL) return consola.warn('Could not get Tunnel URL')
24+
consola.box(
25+
'Nuxt Studio Playground Ready.\n\n' +
26+
'1. Go to https://nuxt.studio/@studio/studio-module\n' +
27+
'2. Paste `'+tunnelURL.url+'` in the Deployed URL field\n' +
28+
'3. Play with the Studio Playground!'
29+
)
30+
}
1431
}
15-
// app: {
16-
// baseURL: '/test/'
17-
// }
1832
})

Diff for: ‎playground/nuxt.schema.ts

+4-6
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
import { field, group } from '../src/theme'
1+
import { field, group } from '@nuxthq/studio/theme'
22

33
export default defineNuxtSchema({
44
appConfig: {
5-
parent: group({
6-
title: 'Parent',
7-
description: 'Parent description',
5+
header: group({
6+
title: 'Header',
87
fields: {
9-
someConfig: field({ type: 'string', default: 'schema default' }),
10-
configFromNuxtSchema: field({ type: 'boolean' })
8+
title: field({ type: 'string' })
119
}
1210
})
1311
}

Diff for: ‎playground/pages/[...slug].vue

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<template>
2+
<UPageBody prose>
3+
<ContentDoc />
4+
</UPageBody>
5+
</template>

Diff for: ‎playground/tokens.config.ts

-3
This file was deleted.

Diff for: ‎pnpm-lock.yaml

+2,907-3,236
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: ‎src/module.ts

+17-5
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,17 @@ export interface ModuleOptions {
1010
* @default: 'production'
1111
**/
1212
enabled: 'production' | true
13+
/**
14+
* Studio project(s) to link
15+
*
16+
* If you have multiple projects, you can use an array of strings.
17+
*
18+
* @example 'team-slug/project-slug'
19+
* or
20+
* @example ['team-slug/project-slug', 'team-slug/project-slug-2']
21+
* @default: ''
22+
**/
23+
project: string | string[]
1324
}
1425

1526
export interface ModuleHooks {}
@@ -20,7 +31,8 @@ export default defineNuxtModule<ModuleOptions>({
2031
configKey: 'studio'
2132
},
2233
defaults: {
23-
enabled: 'production'
34+
enabled: 'production',
35+
project: ''
2436
},
2537
async setup (options, nuxt) {
2638
// @ts-ignore
@@ -75,9 +87,10 @@ export default defineNuxtModule<ModuleOptions>({
7587

7688
const apiURL = process.env.NUXT_PUBLIC_STUDIO_API_URL || process.env.STUDIO_API || 'https://api.nuxt.studio'
7789
const publicToken = process.env.NUXT_PUBLIC_STUDIO_TOKENS
78-
nuxt.options.runtimeConfig.studio = nuxt.options.runtimeConfig.studio || {
79-
publicToken
80-
}
90+
nuxt.options.runtimeConfig.studio = defu(nuxt.options.runtimeConfig.studio, {
91+
publicToken,
92+
project: options.project
93+
})
8194
nuxt.options.runtimeConfig.public.studio = defu(nuxt.options.runtimeConfig.public.studio, { apiURL })
8295

8396
extendViteConfig((config) => {
@@ -103,7 +116,6 @@ export default defineNuxtModule<ModuleOptions>({
103116
addPrerenderRoutes('/__studio.json')
104117

105118
// Install dependencies
106-
await installModule('nuxt-config-schema')
107119
await installModule('nuxt-component-meta', {
108120
globalsOnly: true
109121
})

Diff for: ‎src/runtime/components/ContentPreviewMode.vue

+29-5
Original file line numberDiff line numberDiff line change
@@ -167,12 +167,27 @@ onUnmounted(() => {
167167

168168
<template>
169169
<div>
170-
<div v-if="open" id="__nuxt_preview" :class="{ __preview_ready: previewReady, __preview_refreshing: refreshing }">
170+
<div
171+
v-if="open"
172+
id="__nuxt_preview"
173+
:class="{ __preview_ready: previewReady, __preview_refreshing: refreshing }"
174+
>
171175
<template v-if="previewReady">
172-
<svg viewBox="0 0 90 90" fill="none" xmlns="http://www.w3.org/2000/svg">
173-
<path d="M50.0016 71.0999h29.2561c.9293.0001 1.8422-.241 2.6469-.6992.8047-.4582 1.4729-1.1173 1.9373-1.9109.4645-.7936.7088-1.6939.7083-2.6102-.0004-.9162-.2455-1.8163-.7106-2.6095L64.192 29.713c-.4644-.7934-1.1325-1.4523-1.937-1.9105-.8046-.4581-1.7173-.6993-2.6463-.6993-.9291 0-1.8418.2412-2.6463.6993-.8046.4582-1.4726 1.1171-1.937 1.9105l-5.0238 8.5861-9.8224-16.7898c-.4648-.7934-1.1332-1.4522-1.938-1.9102-.8047-.4581-1.7176-.6992-2.6468-.6992-.9292 0-1.842.2411-2.6468.6992-.8048.458-1.4731 1.1168-1.9379 1.9102L6.56062 63.2701c-.46512.7932-.71021 1.6933-.71061 2.6095-.00041.9163.24389 1.8166.70831 2.6102.46443.7936 1.1326 1.4527 1.93732 1.9109.80473.4582 1.71766.6993 2.64686.6992h18.3646c7.2763 0 12.6422-3.1516 16.3345-9.3002l8.9642-15.3081 4.8015-8.1925 14.4099 24.6083H54.8058l-4.8042 8.1925ZM29.2077 62.899l-12.8161-.0028L35.603 30.0869l9.5857 16.4047-6.418 10.9645c-2.4521 3.9894-5.2377 5.4429-9.563 5.4429Z" fill="currentColor" />
176+
<svg
177+
viewBox="0 0 90 90"
178+
fill="none"
179+
xmlns="http://www.w3.org/2000/svg"
180+
>
181+
<path
182+
d="M50.0016 71.0999h29.2561c.9293.0001 1.8422-.241 2.6469-.6992.8047-.4582 1.4729-1.1173 1.9373-1.9109.4645-.7936.7088-1.6939.7083-2.6102-.0004-.9162-.2455-1.8163-.7106-2.6095L64.192 29.713c-.4644-.7934-1.1325-1.4523-1.937-1.9105-.8046-.4581-1.7173-.6993-2.6463-.6993-.9291 0-1.8418.2412-2.6463.6993-.8046.4582-1.4726 1.1171-1.937 1.9105l-5.0238 8.5861-9.8224-16.7898c-.4648-.7934-1.1332-1.4522-1.938-1.9102-.8047-.4581-1.7176-.6992-2.6468-.6992-.9292 0-1.842.2411-2.6468.6992-.8048.458-1.4731 1.1168-1.9379 1.9102L6.56062 63.2701c-.46512.7932-.71021 1.6933-.71061 2.6095-.00041.9163.24389 1.8166.70831 2.6102.46443.7936 1.1326 1.4527 1.93732 1.9109.80473.4582 1.71766.6993 2.64686.6992h18.3646c7.2763 0 12.6422-3.1516 16.3345-9.3002l8.9642-15.3081 4.8015-8.1925 14.4099 24.6083H54.8058l-4.8042 8.1925ZM29.2077 62.899l-12.8161-.0028L35.603 30.0869l9.5857 16.4047-6.418 10.9645c-2.4521 3.9894-5.2377 5.4429-9.563 5.4429Z"
183+
fill="currentColor"
184+
/>
174185
</svg>
175-
<span>Preview mode enabled</span>
186+
<span><a
187+
href="https://nuxt.studio"
188+
target="_blank"
189+
rel="noopener"
190+
>Nuxt Studio</a>: Preview enabled</span>
176191
<button @click="closePreviewMode">
177192
Close
178193
</button>
@@ -182,7 +197,12 @@ onUnmounted(() => {
182197
<div v-if="open && !previewReady && !error">
183198
<div id="__preview_background" />
184199
<div id="__preview_loader">
185-
<svg id="__preview_loading_icon" width="32" height="32" viewBox="0 0 24 24">
200+
<svg
201+
id="__preview_loading_icon"
202+
width="32"
203+
height="32"
204+
viewBox="0 0 24 24"
205+
>
186206
<path
187207
fill="none"
188208
stroke="currentColor"
@@ -366,6 +386,10 @@ button:hover {
366386
.dark-mode #__nuxt_preview button:active {
367387
background: rgba(255, 255, 255, 0.2);
368388
}
389+
390+
a {
391+
font-weight: 600;
392+
}
369393
#__nuxt_preview.__preview_refreshing svg,
370394
#__nuxt_preview.__preview_refreshing span,
371395
#__nuxt_preview.__preview_refreshing button {

Diff for: ‎src/runtime/server/routes/studio.ts

+1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ export default eventHandler(async () => {
6060
return {
6161
// Studio version
6262
version,
63+
project: studio?.project,
6364
tokens: studio?.publicToken,
6465
// nuxt.schema for Nuxt Content frontmatter
6566
contentSchema: contentSchema || {},

Diff for: ‎tsconfig.json

+1-9
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,3 @@
11
{
2-
"extends": "./playground/.nuxt/tsconfig.json",
3-
"compilerOptions": {
4-
"baseUrl": "./"
5-
},
6-
"exclude": [
7-
"node_modules",
8-
".nuxt",
9-
"dist"
10-
]
2+
"extends": "./playground/.nuxt/tsconfig.json"
113
}

0 commit comments

Comments
 (0)
Please sign in to comment.