Compare commits
14 Commits
bb7d069e06
...
941f5d183b
Author | SHA1 | Date | |
---|---|---|---|
941f5d183b | |||
c1d4963395 | |||
a9a6659d78 | |||
c40cf6ea42 | |||
d30e76c41a | |||
29a41504d0 | |||
35d7e8aa8b | |||
e4d75038b9 | |||
bc16414c69 | |||
378c5f3658 | |||
abc2800b31 | |||
4daea5dfdd | |||
3f99fec396 | |||
e3707dab5c |
@@ -1,5 +0,0 @@
|
||||
# Production license for @nuxt/ui-pro, get one at https://ui.nuxt.com/pro/purchase
|
||||
NUXT_UI_PRO_LICENSE=
|
||||
|
||||
# Public URL, used for OG Image when running nuxt generate
|
||||
NUXT_PUBLIC_SITE_URL=
|
@@ -262,7 +262,7 @@ export default defineAppConfig({
|
||||
search: true,
|
||||
colorMode: true,
|
||||
links: [{
|
||||
'icon': 'i-simple-icons-github',
|
||||
'icon': 'simple-icons-github',
|
||||
'to': 'https://github.com/nuxt-ui-pro/docs',
|
||||
'target': '_blank',
|
||||
'aria-label': 'GitHub'
|
||||
@@ -272,22 +272,22 @@ export default defineAppConfig({
|
||||
credits: `Copyright © ${new Date().getFullYear()} Estel. All rights reserved.`,
|
||||
colorMode: false,
|
||||
links: [{
|
||||
'icon': 'i-simple-icons-nuxtdotjs',
|
||||
'icon': 'simple-icons-nuxtdotjs',
|
||||
'to': 'https://nuxt.com',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt Website'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-discord',
|
||||
'icon': 'simple-icons-discord',
|
||||
'to': 'https://discord.com/invite/ps2h6QT',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt UI on Discord'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-x',
|
||||
'icon': 'simple-icons-x',
|
||||
'to': 'https://x.com/nuxt_js',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt on X'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-github',
|
||||
'icon': 'simple-icons-github',
|
||||
'to': 'https://github.com/nuxt/ui',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt UI on GitHub'
|
||||
@@ -299,17 +299,17 @@ export default defineAppConfig({
|
||||
title: 'Community',
|
||||
edit: 'https://github.com/nuxt-ui-pro/docs/edit/main/content',
|
||||
links: [{
|
||||
icon: 'i-lucide-star',
|
||||
icon: 'lucide-star',
|
||||
label: 'GitHub',
|
||||
to: 'https://github.com/estel-li',
|
||||
target: '_blank'
|
||||
}, {
|
||||
icon: 'i-lucide-home',
|
||||
icon: 'lucide-home',
|
||||
label: '稷维科技',
|
||||
to: 'https://www.xajiwei.com',
|
||||
target: '_blank'
|
||||
}, {
|
||||
icon: 'i-simple-icons-nuxtdotjs',
|
||||
icon: 'simple-icons-nuxtdotjs',
|
||||
label: '个人博客',
|
||||
to: 'https://lijue.me',
|
||||
target: '_blank'
|
||||
|
@@ -48,7 +48,7 @@ const handleLoginRegister = (type: "login" | "register") => {
|
||||
|
||||
<template #right>
|
||||
<UContentSearchButton class="lg:hidden" />
|
||||
<UColorModeSwitch />
|
||||
<UColorModeButton />
|
||||
<button
|
||||
class=" p-2 rounded-md text-gray-500 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"
|
||||
title="页面设置" @click="isSettingsOpen = !isSettingsOpen">
|
||||
@@ -64,9 +64,9 @@ const handleLoginRegister = (type: "login" | "register") => {
|
||||
<UButton
|
||||
color="neutral"
|
||||
variant="ghost"
|
||||
to="https://github.com/nuxt/ui"
|
||||
to="https://github.com/estel-li"
|
||||
target="_blank"
|
||||
icon="i-simple-icons-github"
|
||||
icon="simple-icons-github"
|
||||
aria-label="GitHub"
|
||||
/>
|
||||
</UTooltip>
|
||||
|
@@ -25,7 +25,7 @@ const directoryNavigation = computed(() => {
|
||||
return {
|
||||
title: item.title,
|
||||
path: item.path,
|
||||
icon: (item.icon as string) || 'i-lucide-file-text',
|
||||
icon: (item.icon as string) || 'lucide-file-text',
|
||||
active: Boolean(item.active)
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ const directoryNavigation = computed(() => {
|
||||
return {
|
||||
title: item.title,
|
||||
path: item.path,
|
||||
icon: (item.icon as string) || 'i-lucide-folder',
|
||||
icon: (item.icon as string) || 'lucide-folder',
|
||||
active: Boolean(item.active),
|
||||
// 不包含 children,这样就不会展开显示子项
|
||||
children: []
|
||||
|
@@ -1,18 +1,28 @@
|
||||
<template>
|
||||
<div class="w-full bg-gray-50 dark:bg-gray-900 min-h-screen mt-4">
|
||||
<!-- 响应式卡片网格 -->
|
||||
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4 max-w-8xl mx-auto">
|
||||
<!--
|
||||
这个div使用了Tailwind CSS的类来实现响应式的卡片网格布局:
|
||||
- grid:将容器设置为网格布局。
|
||||
- grid-cols-1:在小屏幕下每行显示1列。
|
||||
- sm:grid-cols-2:在中等屏幕(sm及以上)每行显示2列。
|
||||
- lg:grid-cols-3:在大屏幕(lg及以上)每行显示3列。
|
||||
- gap-4:网格项之间有统一的间距。
|
||||
- max-w-8xl:设置最大宽度为8xl,防止内容过宽。
|
||||
- mx-auto:左右自动外边距,使网格居中显示。
|
||||
-->
|
||||
<div class="grid grid-cols-1 xs:grid-cols-2 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-3 xl:grid-cols-3 2xl:grid-cols-4 gap-4 w-full mx-auto">
|
||||
<div v-for="item in firstLevelItems" :key="item.path"
|
||||
class="bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 p-5 sm:p-6 shadow-sm hover:shadow-md transition-all duration-200 cursor-pointer"
|
||||
@click="navigateTo(item.path)">
|
||||
|
||||
<!-- 卡片头部 -->
|
||||
<div class="flex items-center justify-between mb-1">
|
||||
<h2 class="text-xl sm:text-xl lg:text-2xl font-bold text-gray-900 dark:text-white leading-tight">
|
||||
<h2 class="font-sans text-xl sm:text-xl lg:text-2xl font-bold text-gray-900 dark:text-white leading-tight">
|
||||
{{ item.title }}
|
||||
</h2>
|
||||
<span class="text-sm sm:text-base lg:text-lg text-gray-600 dark:text-gray-400 font-normal">
|
||||
<sum class="text-primary mr-0.3">{{ getChildrenCount(item) }}</sum>篇
|
||||
<span class="text-primary mr-0.3">{{ getChildrenCount(item) }}</span>篇
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -26,10 +36,10 @@
|
||||
border-b border-gray-200 dark:border-gray-700 pt-2">
|
||||
|
||||
<div class="flex items-center flex-1 min-w-0 pl-1 ">
|
||||
<Icon :name="child.icon || 'i-lucide-file-text'" class="mr-2 text-gray-400" size="14" />
|
||||
<span class="text-base font-sans">{{ child.title }}</span>
|
||||
<UIcon :name="(typeof child.icon === 'string' ? child.icon : 'lucide-file-text')" class="mr-2 text-gray-400" size="14" />
|
||||
<span class="text-base font-medium font-sans">{{ child.title }}</span>
|
||||
</div>
|
||||
<Icon name="i-lucide-chevron-right" class="text-gray-400 flex-shrink-0 ml-2" size="16" />
|
||||
<UIcon name="lucide-chevron-right" class="text-gray-400 flex-shrink-0 ml-2" size="16" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -50,7 +60,7 @@ const firstLevelItems = computed(() => {
|
||||
.map(item => ({
|
||||
...item,
|
||||
description: item.description,
|
||||
icon: item.icon || 'i-lucide-book-open'
|
||||
icon: item.icon || 'lucide-book-open'
|
||||
}));
|
||||
});
|
||||
|
||||
|
@@ -30,7 +30,7 @@
|
||||
<UButton
|
||||
label="Docs"
|
||||
variant="subtle"
|
||||
trailing-icon="i-lucide-chevron-down"
|
||||
trailing-icon="lucide-chevron-down"
|
||||
size="xs"
|
||||
class="-mb-[6px] font-semibold rounded-full truncate"
|
||||
:class="[open && 'bg-primary/15']"
|
||||
|
@@ -19,7 +19,7 @@
|
||||
<UButton
|
||||
color="neutral"
|
||||
variant="ghost"
|
||||
icon="i-lucide-x"
|
||||
icon="lucide-x"
|
||||
square
|
||||
@click="$emit('close')"
|
||||
/>
|
||||
|
@@ -2,13 +2,13 @@
|
||||
const providers = ref([
|
||||
{
|
||||
label: 'Google',
|
||||
icon: 'i-simple-icons-google',
|
||||
icon: 'simple-icons-google',
|
||||
color: 'neutral',
|
||||
variant: 'subtle'
|
||||
},
|
||||
{
|
||||
label: 'GitHub',
|
||||
icon: 'i-simple-icons-github',
|
||||
icon: 'simple-icons-github',
|
||||
color: 'neutral',
|
||||
variant: 'subtle'
|
||||
}
|
||||
@@ -33,11 +33,11 @@ const fields = ref([
|
||||
class="max-w-md"
|
||||
title="登录"
|
||||
description="使用社交账号或邮箱登录"
|
||||
icon="i-lucide-user"
|
||||
icon="lucide-user"
|
||||
:fields="fields"
|
||||
:providers="providers"
|
||||
:separator="{
|
||||
icon: 'i-lucide-user'
|
||||
icon: 'lucide-user'
|
||||
}"
|
||||
/>
|
||||
</template>
|
||||
|
@@ -2,13 +2,13 @@
|
||||
const providers = ref([
|
||||
{
|
||||
label: 'Google',
|
||||
icon: 'i-simple-icons-google',
|
||||
icon: 'simple-icons-google',
|
||||
color: 'neutral',
|
||||
variant: 'subtle'
|
||||
},
|
||||
{
|
||||
label: 'GitHub',
|
||||
icon: 'i-simple-icons-github',
|
||||
icon: 'simple-icons-github',
|
||||
color: 'neutral',
|
||||
variant: 'subtle'
|
||||
}
|
||||
@@ -32,11 +32,11 @@ const fields = ref([
|
||||
class="max-w-md"
|
||||
title="Login"
|
||||
description="Enter your credentials to access your account."
|
||||
icon="i-lucide-user"
|
||||
icon="lucide-user"
|
||||
:fields="fields"
|
||||
:providers="providers"
|
||||
:separator="{
|
||||
icon: 'i-lucide-user'
|
||||
icon: 'lucide-user'
|
||||
}"
|
||||
/>
|
||||
</template>
|
||||
|
@@ -1,22 +1,25 @@
|
||||
<template>
|
||||
<div class="flex flex-row items-center mt-2 mb-2">
|
||||
<NuxtLink :to="to || href" :target="(blank && '_blank') || target">
|
||||
<UButton :variant="variant" :size="size">
|
||||
<Icon v-if="leftIcon" :name="leftIcon" class="mr-1" />
|
||||
<ContentSlot unwrap="p" />
|
||||
<Icon v-if="rightIcon" :name="rightIcon" class="ml-1" />
|
||||
<UButton :variant="variant" :size="size" :icon="icon" :trailing-icon="trailingIcon" class="min-h-10 max-h-12">
|
||||
<slot/>
|
||||
</UButton>
|
||||
</NuxtLink>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
type Target = '_blank' | '_parent' | '_self' | '_top' | (string & object) | null | undefined;
|
||||
|
||||
defineProps<{
|
||||
variant?: 'solid' | 'outline' | 'ghost' | 'link' | 'soft';
|
||||
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
||||
leftIcon?: string;
|
||||
rightIcon?: string;
|
||||
color?: 'gray' | 'red' | 'orange' | 'amber' | 'yellow' | 'lime' | 'green' | 'emerald' | 'teal' | 'cyan' | 'sky' | 'blue' | 'indigo' | 'violet' | 'purple' | 'fuchsia' | 'pink' | 'rose' | 'white' | 'black';
|
||||
icon?: string;
|
||||
to?: string;
|
||||
href?: string;
|
||||
target?: string;
|
||||
target?: Target;
|
||||
trailingIcon?: string;
|
||||
blank?: boolean;
|
||||
}>();
|
||||
</script>
|
||||
|
33
app/components/content/ColorModeSwitch.vue
Normal file
33
app/components/content/ColorModeSwitch.vue
Normal file
@@ -0,0 +1,33 @@
|
||||
<script setup>
|
||||
const colorMode = useColorMode()
|
||||
|
||||
const isLight = computed({
|
||||
get() {
|
||||
return colorMode.value === 'light'
|
||||
},
|
||||
set(_isLight) {
|
||||
colorMode.preference = _isLight ? 'light' : 'dark'
|
||||
},
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<ClientOnly>
|
||||
<div class="flex-1 flex items-center justify-center">
|
||||
<USwitch
|
||||
v-model="isLight"
|
||||
unchecked-icon="lucide-moon"
|
||||
checked-icon="lucide-sun"
|
||||
aria-label="Toggle color mode"
|
||||
size="xl"
|
||||
color="neutral"
|
||||
:ui="{
|
||||
base: 'w-70 h-35 rounded-lg rotate-90 data-[state=checked]:bg-[var(--ui-color-neutral-200)]',
|
||||
thumb: 'data-[state=checked]:translate-x-35 data-[state=checked]:rtl:-translate-x-35 rounded-lg size-34',
|
||||
icon: 'rotate-270 size-8',
|
||||
}"
|
||||
@click="isDark = !isDark"
|
||||
/>
|
||||
</div>
|
||||
</ClientOnly>
|
||||
</template>
|
40
app/components/content/ECard.vue
Normal file
40
app/components/content/ECard.vue
Normal file
@@ -0,0 +1,40 @@
|
||||
<template>
|
||||
<UPageCard :title="title" :description="description" :spotlight="spotlight" :icon="icon" class="">
|
||||
<slot/>
|
||||
<NuxtImg
|
||||
v-if="img"
|
||||
:src="img"
|
||||
class="w-full"
|
||||
/>
|
||||
<span> {{ content }} </span>
|
||||
</UPageCard>
|
||||
|
||||
</template>
|
||||
|
||||
<!-- ::card
|
||||
---
|
||||
img: https://lijue-me.oss-cn-chengdu.aliyuncs.com/20250727184358217.png
|
||||
---
|
||||
#title
|
||||
Image Card
|
||||
|
||||
#content
|
||||
Beautifully designed **Nuxt Content** template with **shadcn-vue**. _Customizable. Compatible. Open Source._
|
||||
:: -->
|
||||
|
||||
<script setup lang="ts">
|
||||
|
||||
const {
|
||||
content="",
|
||||
|
||||
} =defineProps<{
|
||||
title?: string;
|
||||
content?: string;
|
||||
img?: string;
|
||||
icon?: string;
|
||||
description?: string;
|
||||
spotlight?:boolean;
|
||||
slot?:string;
|
||||
}>();
|
||||
</script>
|
||||
|
41
app/components/content/ETabs.vue
Normal file
41
app/components/content/ETabs.vue
Normal file
@@ -0,0 +1,41 @@
|
||||
<template>
|
||||
<UTabs :items="tabItems" class="w-full" :unmount-on-hide="false" variant="link">
|
||||
<template v-for="item in tabItems" #[item.slot]="{ item: slotItem }">
|
||||
<div class="mt-4">
|
||||
<component :is="getSlotContent(slotItem)" />
|
||||
</div>
|
||||
</template>
|
||||
</UTabs>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import type { TabsItem } from '@nuxt/ui'
|
||||
|
||||
const slots = useSlots()
|
||||
|
||||
const slotContents = ref<Record<string, any>>({})
|
||||
|
||||
const tabItems = computed(() => {
|
||||
const defaultSlots = slots.default?.() || []
|
||||
return defaultSlots
|
||||
.filter(slot => slot.type === 'div' && slot.props)
|
||||
.map((slot, index) => {
|
||||
const label = slot.props?.label || `Tab ${index + 1}`
|
||||
const icon = slot.props?.icon
|
||||
const slotName = `tab-${index}`
|
||||
|
||||
slotContents.value[slotName] = slot
|
||||
|
||||
return {
|
||||
label,
|
||||
icon,
|
||||
slot: slotName
|
||||
} satisfies TabsItem
|
||||
})
|
||||
})
|
||||
|
||||
function getSlotContent(item: TabsItem) {
|
||||
if (!item.slot) return null
|
||||
return slotContents.value[item.slot]
|
||||
}
|
||||
</script>
|
186
app/components/content/FileTree.vue
Normal file
186
app/components/content/FileTree.vue
Normal file
@@ -0,0 +1,186 @@
|
||||
<template>
|
||||
<UPage class="mt-4 mb-4 bg-white dark:bg-gray-900 rounded-xl border border-gray-300 dark:border-gray-700">
|
||||
<div v-if="title" class="flex items-center font-mono text-base m-3 text-gray-700 dark:text-gray-300 rounded-xl ">
|
||||
|
||||
<Icon v-if="icon" :name="icon" class="mr-2" size="20" />
|
||||
|
||||
<span>{{ title }}</span>
|
||||
</div>
|
||||
|
||||
<div class="bg-gray-50 dark:bg-gray-800 rounded border-t border-gray-200 dark:border-gray-700 p-3">
|
||||
<ClientOnly>
|
||||
<div class="space-y-1">
|
||||
<div
|
||||
v-for="item in parsedTree"
|
||||
:key="item.title"
|
||||
class="file-tree-item"
|
||||
>
|
||||
<FileTreeItem
|
||||
:item="item"
|
||||
:level="0"
|
||||
:show-arrow="showArrow"
|
||||
:show-icon="showIcon"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 服务端渲染时的占位符 -->
|
||||
<template #fallback>
|
||||
<div class="space-y-1">
|
||||
<div
|
||||
v-for="item in parsedTree"
|
||||
:key="item.title"
|
||||
class="file-tree-item"
|
||||
>
|
||||
<div class="flex items-center py-1 px-2">
|
||||
<div class="flex items-center" :style="{ marginLeft: '0px' }">
|
||||
<Icon
|
||||
v-if="showIcon"
|
||||
:name="item.icon || 'lucide-file'"
|
||||
class="mr-2 text-gray-500 w-4 h-4"
|
||||
:class="{
|
||||
'text-green-500': item.icon?.includes('vue'),
|
||||
'text-blue-500': item.icon?.includes('typescript') || item.icon?.includes('javascript'),
|
||||
'text-orange-500': item.icon?.includes('markdown'),
|
||||
'text-yellow-500': item.icon?.includes('json')
|
||||
}"
|
||||
/>
|
||||
<span
|
||||
class="text-sm font-mono"
|
||||
:class="{
|
||||
'font-semibold': item.isFolder,
|
||||
'underline': item.highlighted
|
||||
}"
|
||||
>
|
||||
{{ item.title }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</ClientOnly>
|
||||
</div>
|
||||
</UPage>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
type InputTreeItem = string | {
|
||||
[key: string]: InputTreeItem[];
|
||||
};
|
||||
|
||||
type FileTreeItemDiff = 'none' | 'addition' | 'deletion';
|
||||
|
||||
interface FileTreeItem {
|
||||
title: string;
|
||||
icon?: string;
|
||||
children?: FileTreeItem[];
|
||||
highlighted?: boolean;
|
||||
diff?: FileTreeItemDiff;
|
||||
isFolder?: boolean;
|
||||
}
|
||||
|
||||
const {
|
||||
tree,
|
||||
autoSlash = true,
|
||||
showArrow = false,
|
||||
showIcon = true,
|
||||
} = defineProps<{
|
||||
title?: string;
|
||||
icon?: string;
|
||||
autoSlash?: boolean;
|
||||
showArrow?: boolean;
|
||||
showIcon?: boolean;
|
||||
tree: InputTreeItem[];
|
||||
}>();
|
||||
|
||||
// 默认图标映射
|
||||
const defaultIcons = {
|
||||
vue: 'simple-icons-vuedotjs',
|
||||
ts: 'simple-icons-typescript',
|
||||
js: 'simple-icons-javascript',
|
||||
md: 'simple-icons-markdown',
|
||||
json: 'simple-icons-json',
|
||||
folder: 'lucide-folder',
|
||||
file: 'lucide-file'
|
||||
};
|
||||
|
||||
function getIcon(filename: string, type: 'folder' | 'file'): string {
|
||||
if (filename === '...') return 'lucide-more-horizontal';
|
||||
if (filename.endsWith('/')) return defaultIcons.folder;
|
||||
|
||||
const parts = filename.split('.');
|
||||
const extension = parts.length > 1 ? parts[parts.length - 1]?.toLowerCase() || '' : '';
|
||||
|
||||
// 根据扩展名返回对应图标
|
||||
switch (extension) {
|
||||
case 'vue': return defaultIcons.vue;
|
||||
case 'ts': return defaultIcons.ts;
|
||||
case 'js': return defaultIcons.js;
|
||||
case 'md': return defaultIcons.md;
|
||||
case 'json': return defaultIcons.json;
|
||||
default: return type === 'file' ? defaultIcons.file : defaultIcons.folder;
|
||||
}
|
||||
}
|
||||
|
||||
function getItem(key: string, type: 'folder' | 'file', children?: InputTreeItem[]): FileTreeItem {
|
||||
let title = key;
|
||||
let highlighted = false;
|
||||
|
||||
if (title.startsWith('^') && title.endsWith('^')) {
|
||||
title = title.substring(1, title.length - 1);
|
||||
highlighted = true;
|
||||
}
|
||||
|
||||
let diff: FileTreeItemDiff = 'none';
|
||||
if (title.startsWith('+')) diff = 'addition';
|
||||
else if (title.startsWith('-')) diff = 'deletion';
|
||||
|
||||
if (type === 'file') {
|
||||
return {
|
||||
title,
|
||||
icon: getIcon(title, 'file'),
|
||||
highlighted,
|
||||
diff,
|
||||
isFolder: false
|
||||
};
|
||||
} else {
|
||||
return {
|
||||
title: `${title}${autoSlash ? '/' : ''}`,
|
||||
icon: getIcon(title, 'folder'),
|
||||
children: children ? getTree(children) : undefined,
|
||||
highlighted,
|
||||
diff,
|
||||
isFolder: true
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
function getTree(tree: InputTreeItem[]): FileTreeItem[] {
|
||||
const res: FileTreeItem[] = [];
|
||||
|
||||
for (const item of tree) {
|
||||
if (typeof item === 'string') {
|
||||
res.push(getItem(item, 'file'));
|
||||
} else if (typeof item === 'object' && item !== null) {
|
||||
for (const key of Object.keys(item)) {
|
||||
const children = (item as Record<string, InputTreeItem[]>)[key];
|
||||
if (children) {
|
||||
res.push(getItem(key, 'folder', children));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
const parsedTree = computed(() => {
|
||||
return getTree(tree);
|
||||
});
|
||||
|
||||
// 使用 provide/inject 来管理展开状态
|
||||
const expandedState = ref(new Set<string>());
|
||||
|
||||
provide('expandedState', expandedState);
|
||||
</script>
|
108
app/components/content/FileTreeItem.vue
Normal file
108
app/components/content/FileTreeItem.vue
Normal file
@@ -0,0 +1,108 @@
|
||||
<template>
|
||||
<div class="file-tree-item">
|
||||
<div
|
||||
class="flex items-center py-1 px-2 rounded hover:bg-gray-100 dark:hover:bg-gray-700 cursor-pointer transition-colors"
|
||||
:class="{
|
||||
'bg-blue-50 dark:bg-blue-900/20': item.highlighted,
|
||||
'text-green-600 dark:text-green-400': item.diff === 'addition',
|
||||
'text-red-600 dark:text-red-400': item.diff === 'deletion'
|
||||
}"
|
||||
@click="toggleFolder"
|
||||
>
|
||||
<!-- 缩进 -->
|
||||
<div class="flex items-center" :style="{ marginLeft: level * 16 + 'px' }">
|
||||
<!-- 箭头(仅文件夹且有子项时显示) -->
|
||||
<Icon
|
||||
v-if="showArrow && item.isFolder && item.children && item.children.length > 0"
|
||||
:name="isExpanded ? 'lucide-chevron-down' : 'lucide-chevron-right'"
|
||||
class="mr-1 text-gray-400 w-4 h-4 transition-transform"
|
||||
:class="{ 'rotate-90': isExpanded }"
|
||||
/>
|
||||
<div v-else-if="showArrow" class="w-4 mr-1"></div>
|
||||
|
||||
<!-- 图标 -->
|
||||
<Icon
|
||||
v-if="showIcon"
|
||||
:name="item.icon || 'lucide-file'"
|
||||
class="mr-2 text-gray-500 w-4 h-4"
|
||||
:class="{
|
||||
'text-green-500': item.icon?.includes('vue'),
|
||||
'text-blue-500': item.icon?.includes('typescript') || item.icon?.includes('javascript'),
|
||||
'text-orange-500': item.icon?.includes('markdown'),
|
||||
'text-yellow-500': item.icon?.includes('json')
|
||||
}"
|
||||
/>
|
||||
|
||||
<!-- 标题 -->
|
||||
<span
|
||||
class="text-sm font-mono"
|
||||
:class="{
|
||||
'font-semibold': item.isFolder,
|
||||
'underline': item.highlighted
|
||||
}"
|
||||
>
|
||||
{{ item.title }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 子项 -->
|
||||
<div v-if="item.children && item.children.length > 0 && isExpanded" class="ml-4">
|
||||
<FileTreeItem
|
||||
v-for="child in item.children"
|
||||
:key="child.title"
|
||||
:item="child"
|
||||
:level="level + 1"
|
||||
:show-arrow="showArrow"
|
||||
:show-icon="showIcon"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
type FileTreeItemDiff = 'none' | 'addition' | 'deletion';
|
||||
|
||||
interface FileTreeItem {
|
||||
title: string;
|
||||
icon?: string;
|
||||
children?: FileTreeItem[];
|
||||
highlighted?: boolean;
|
||||
diff?: FileTreeItemDiff;
|
||||
isFolder?: boolean;
|
||||
}
|
||||
|
||||
const props = defineProps<{
|
||||
item: FileTreeItem;
|
||||
level: number;
|
||||
showArrow: boolean;
|
||||
showIcon: boolean;
|
||||
}>();
|
||||
|
||||
const expandedState = inject('expandedState', ref(new Set<string>()));
|
||||
const itemKey = computed(() => `${props.item.title}-${props.level}`);
|
||||
|
||||
const isExpanded = computed({
|
||||
get: () => expandedState.value.has(itemKey.value),
|
||||
set: (value: boolean) => {
|
||||
if (value) {
|
||||
expandedState.value.add(itemKey.value);
|
||||
} else {
|
||||
expandedState.value.delete(itemKey.value);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 初始化时展开所有文件夹
|
||||
onMounted(() => {
|
||||
if (props.item.isFolder && props.item.children && props.item.children.length > 0) {
|
||||
isExpanded.value = true;
|
||||
}
|
||||
});
|
||||
|
||||
function toggleFolder() {
|
||||
if (props.item.isFolder && props.item.children && props.item.children.length > 0) {
|
||||
isExpanded.value = !isExpanded.value;
|
||||
}
|
||||
}
|
||||
</script>
|
49
app/components/content/Playground.vue
Normal file
49
app/components/content/Playground.vue
Normal file
@@ -0,0 +1,49 @@
|
||||
<template>
|
||||
<div class=" w-full mt-6 mb-6">
|
||||
<iframe
|
||||
v-if="url"
|
||||
:src="url"
|
||||
:title
|
||||
sandbox="allow-modals allow-forms allow-popups allow-scripts allow-same-origin"
|
||||
class="w-full h-full min-h-[600px] overflow-hidden rounded-md"
|
||||
/>
|
||||
<USkeleton v-else class="w-full min-h-[600px] rounded-md" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
const {
|
||||
provider,
|
||||
id,
|
||||
repo,
|
||||
branch = 'main',
|
||||
dir = '',
|
||||
file,
|
||||
title = 'Playground',
|
||||
} = defineProps<{
|
||||
provider: 'stackblitz' | 'codesandbox';
|
||||
id?: string;
|
||||
repo?: string;
|
||||
branch?: string;
|
||||
dir?: string;
|
||||
file: string;
|
||||
title?: string;
|
||||
}>();
|
||||
|
||||
const url = ref('');
|
||||
const colorMode = useColorMode();
|
||||
|
||||
onMounted(() => {
|
||||
if (provider === 'stackblitz') {
|
||||
if (repo)
|
||||
url.value = `https://stackblitz.com/github/${repo}/tree/${branch}/${dir}?embed=1&file=${file}&theme=${colorMode.value}`;
|
||||
else if (id)
|
||||
url.value = `https://stackblitz.com/edit/${id}?embed=1&file=${file}&theme=${colorMode.value}`;
|
||||
} else if (provider === 'codesandbox') {
|
||||
if (repo)
|
||||
url.value = `https://codesandbox.io/p/sandbox/github/${repo}/tree/${branch}/${dir}?embed=1&file=${file}`;
|
||||
else if (id)
|
||||
url.value = `https://codesandbox.io/embed/${id}?view=editor+%2B+preview&module=${file}`;
|
||||
}
|
||||
});
|
||||
</script>
|
31
app/components/content/ReadMore.vue
Normal file
31
app/components/content/ReadMore.vue
Normal file
@@ -0,0 +1,31 @@
|
||||
<template>
|
||||
<UPage>
|
||||
<NuxtLink v-if="to" :to="to">
|
||||
<UAlert :icon :title :color="color" :variant="variant" :description="to"
|
||||
class="mt-2 mb-3 text-black dark:text-white" :ui="{
|
||||
icon: iconSize
|
||||
}">
|
||||
<slot />
|
||||
</UAlert>
|
||||
</NuxtLink>
|
||||
</UPage>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
|
||||
const {
|
||||
variant = 'subtle',
|
||||
title,
|
||||
icon = 'lucide:bookmark',
|
||||
color = 'primary',
|
||||
} = defineProps<{
|
||||
color?: 'primary' | 'error' | 'secondary' | 'success' | 'info' | 'warning' | 'neutral';
|
||||
description?: string;
|
||||
title?: string;
|
||||
to?: string;
|
||||
icon?: string;
|
||||
iconSize?: string;
|
||||
variant?: 'subtle' | 'solid' | 'outline' | 'soft';
|
||||
}>();
|
||||
|
||||
</script>
|
@@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<!-- Iconify Icons -->
|
||||
<Icon v-if="isIconName(name)" :name="name" :size="size" />
|
||||
<Icon v-if="checkIcon(name)" :name :size />
|
||||
<!-- Emojis -->
|
||||
<span
|
||||
v-else-if="isEmoji(name)"
|
||||
v-else-if="/(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])/g.test(name)"
|
||||
:style="`font-size: ${size}px;`"
|
||||
>{{ name }}</span>
|
||||
<!-- Link -->
|
||||
@@ -16,23 +16,17 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { stringToIcon, validateIconName } from '@iconify/utils';
|
||||
|
||||
const { size = 16 } = defineProps<{
|
||||
name: string;
|
||||
size?: number;
|
||||
}>();
|
||||
|
||||
function isIconName(name: string): boolean {
|
||||
function checkIcon(name: string): boolean {
|
||||
if (name.includes('http'))
|
||||
return false;
|
||||
|
||||
// 简单的图标名称检查,以 i- 开头或包含常见图标集
|
||||
return name.startsWith('i-') ||
|
||||
name.includes('lucide') ||
|
||||
name.includes('heroicons') ||
|
||||
name.includes('simple-icons');
|
||||
}
|
||||
|
||||
function isEmoji(name: string): boolean {
|
||||
return /(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])/g.test(name);
|
||||
return validateIconName(stringToIcon(name));
|
||||
}
|
||||
</script>
|
||||
|
24
app/components/content/Stack.vue
Normal file
24
app/components/content/Stack.vue
Normal file
@@ -0,0 +1,24 @@
|
||||
<template>
|
||||
<UPageCard class="divide-y overflow-hidden rounded-xl [&:not(:first-child)]:mt-4 dark:divide-gray-700 shadow-sm ">
|
||||
<div
|
||||
v-for="(slot, i) in slotItems"
|
||||
:key="i"
|
||||
class=""
|
||||
>
|
||||
<component :is="slot" />
|
||||
</div>
|
||||
|
||||
</UPageCard>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
const slots = useSlots()
|
||||
|
||||
// Process slots to create stack items
|
||||
const slotItems = computed(() => {
|
||||
const defaultSlots = slots.default?.() || []
|
||||
return defaultSlots.filter(slot => slot)
|
||||
})
|
||||
|
||||
defineSlots()
|
||||
</script>
|
@@ -5,72 +5,72 @@ const items = ref<NavigationMenuItem[][]>([
|
||||
[
|
||||
{
|
||||
label: 'Guide',
|
||||
icon: 'i-lucide-book-open',
|
||||
icon: 'lucide-book-open',
|
||||
},
|
||||
{
|
||||
label: 'Composables',
|
||||
icon: 'i-lucide-database',
|
||||
icon: 'lucide-database',
|
||||
children: [
|
||||
{
|
||||
label: 'defineShortcuts',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Define shortcuts for your application.',
|
||||
to: '/composables/define-shortcuts'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'useOverlay',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a modal/slideover within your application.',
|
||||
to: '/composables/use-overlay'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'useToast',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a toast within your application.',
|
||||
to: '/composables/use-toast'
|
||||
to: '/'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Components',
|
||||
icon: 'i-lucide-box',
|
||||
to: '/components',
|
||||
icon: 'lucide-box',
|
||||
to: '',
|
||||
children: [
|
||||
{
|
||||
label: 'Link',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Use NuxtLink with superpowers.',
|
||||
to: '/components/link'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'Modal',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a modal within your application.',
|
||||
to: '/components/modal'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'NavigationMenu',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a list of links.',
|
||||
to: '/components/navigation-menu'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'Pagination',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a list of pages.',
|
||||
to: '/components/pagination'
|
||||
to: ''
|
||||
},
|
||||
{
|
||||
label: 'Popover',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Display a non-modal dialog that floats around a trigger element.',
|
||||
to: '/components/popover'
|
||||
to: '/'
|
||||
},
|
||||
{
|
||||
label: 'Progress',
|
||||
icon: 'i-lucide-file-text',
|
||||
icon: 'lucide-file-text',
|
||||
description: 'Show a horizontal bar to indicate task progression.',
|
||||
to: '/components/progress'
|
||||
to: '/'
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -78,14 +78,14 @@ const items = ref<NavigationMenuItem[][]>([
|
||||
// [
|
||||
// {
|
||||
// label: 'GitHub',
|
||||
// icon: 'i-simple-icons-github',
|
||||
// icon: 'simple-icons-github',
|
||||
// badge: '3.8k',
|
||||
// to: 'https://github.com/nuxt/ui',
|
||||
// target: '_blank',
|
||||
// },
|
||||
// {
|
||||
// label: 'Help',
|
||||
// icon: 'i-lucide-circle-help',
|
||||
// icon: 'lucide-circle-help',
|
||||
// badge: '3.8k',
|
||||
// disabled: true
|
||||
// }
|
||||
|
@@ -10,32 +10,32 @@ const markdownLink = computed(() => `${window?.location?.origin}/raw${route.path
|
||||
const items = [
|
||||
{
|
||||
label: 'Copy Markdown link',
|
||||
icon: 'i-lucide-link',
|
||||
icon: 'lucide-link',
|
||||
onSelect() {
|
||||
copy(markdownLink.value)
|
||||
|
||||
toast.add({
|
||||
title: 'Markdown link copied to clipboard',
|
||||
icon: 'i-lucide-check-circle',
|
||||
icon: 'lucide-check-circle',
|
||||
color: 'success',
|
||||
})
|
||||
},
|
||||
},
|
||||
{
|
||||
label: 'View as Markdown',
|
||||
icon: 'i-simple-icons:markdown',
|
||||
icon: 'simple-icons:markdown',
|
||||
target: '_blank',
|
||||
to: markdownLink.value,
|
||||
},
|
||||
{
|
||||
label: 'Open in ChatGPT',
|
||||
icon: 'i-simple-icons:openai',
|
||||
icon: 'simple-icons:openai',
|
||||
target: '_blank',
|
||||
to: `https://chatgpt.com/?hints=search&q=${encodeURIComponent(`Read ${markdownLink.value} so I can ask questions about it.`)}`,
|
||||
},
|
||||
{
|
||||
label: 'Open in Claude',
|
||||
icon: 'i-simple-icons:anthropic',
|
||||
icon: 'simple-icons:anthropic',
|
||||
target: '_blank',
|
||||
to: `https://claude.ai/new?q=${encodeURIComponent(`Read ${markdownLink.value} so I can ask questions about it.`)}`,
|
||||
},
|
||||
@@ -46,7 +46,7 @@ const items = [
|
||||
<UButtonGroup size="sm">
|
||||
<UButton
|
||||
label="Copy page"
|
||||
:icon="copied ? 'i-lucide-copy-check' : 'i-lucide-copy'"
|
||||
:icon="copied ? 'lucide-copy-check' : 'lucide-copy'"
|
||||
color="neutral"
|
||||
variant="outline"
|
||||
:ui="{
|
||||
@@ -68,7 +68,7 @@ const items = [
|
||||
}"
|
||||
>
|
||||
<UButton
|
||||
icon="i-lucide-chevron-down"
|
||||
icon="lucide-chevron-down"
|
||||
color="neutral"
|
||||
variant="outline"
|
||||
/>
|
||||
|
@@ -42,7 +42,7 @@ provide("navigation", navigation);
|
||||
:error="error"
|
||||
:clear="{
|
||||
size: 'xl',
|
||||
icon: 'i-lucide-arrow-left',
|
||||
icon: 'lucide-arrow-left',
|
||||
class: 'rounded-full',
|
||||
}"
|
||||
redirect="/"
|
||||
|
@@ -105,7 +105,7 @@ const links = computed(() => {
|
||||
const links = []
|
||||
if (appConfig.toc?.bottom?.edit) {
|
||||
links.push({
|
||||
icon: 'i-lucide-external-link',
|
||||
icon: 'lucide-external-link',
|
||||
label: '编辑页面',
|
||||
to: `${appConfig.toc.bottom.edit}/${page?.value?.stem}.${page?.value?.extension}`,
|
||||
target: '_blank'
|
||||
@@ -133,13 +133,13 @@ const links = computed(() => {
|
||||
|
||||
<USeparator>
|
||||
<div v-if="editLink" class="flex items-center gap-2 text-sm text-muted">
|
||||
<UButton variant="link" color="neutral" :to="editLink" target="_blank" icon="i-lucide-pen"
|
||||
<UButton variant="link" color="neutral" :to="editLink" target="_blank" icon="lucide-pen"
|
||||
:ui="{ leadingIcon: 'size-4' }">
|
||||
编辑页面
|
||||
</UButton>
|
||||
or
|
||||
<UButton variant="link" color="neutral" :to="`${appConfig.github.url}/issues/new/choose`" target="_blank"
|
||||
icon="i-lucide-alert-circle" :ui="{ leadingIcon: 'size-4' }">
|
||||
icon="lucide-alert-circle" :ui="{ leadingIcon: 'size-4' }">
|
||||
提交问题
|
||||
</UButton>
|
||||
</div>
|
||||
|
@@ -1,3 +1,3 @@
|
||||
title: 简单文档
|
||||
description: 一个简约但功能强大的开源文档系统
|
||||
icon: i-lucide-rocket
|
||||
icon: lucide-rocket
|
||||
|
@@ -2,42 +2,139 @@
|
||||
title: 入门指南
|
||||
description: 欢迎使用简单文档
|
||||
navigation:
|
||||
icon: i-lucide-house
|
||||
icon: lucide-house
|
||||
---
|
||||
|
||||
This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes.
|
||||
|
||||
There are already many websites based on this template:
|
||||
::::code-group
|
||||
|
||||
::UPageCard
|
||||
```bash [pnpm]
|
||||
pnpm add @nuxt/ui-pro@next
|
||||
```
|
||||
|
||||
```bash [yarn]
|
||||
yarn add @nuxt/ui-pro@next
|
||||
```
|
||||
|
||||
```bash [npm]
|
||||
npm install @nuxt/ui-pro@next
|
||||
```
|
||||
|
||||
```bash [bun]
|
||||
bun add @nuxt/ui-pro@next
|
||||
```
|
||||
::::
|
||||
|
||||
|
||||
|
||||
## Usage
|
||||
::note
|
||||
You can pass any property from the HTML `<img>` element such as `alt`, `loading`, etc.
|
||||
::
|
||||
|
||||
::stack
|
||||
::div{class="p-4 space-x-2"}
|
||||
:icon{name="lucide:box" class="size-6"}
|
||||
:icon{name="vscode-icons:file-type-js-official" class="size-6"}
|
||||
:icon{name="vscode-icons:file-type-vue" class="size-6"}
|
||||
:icon{name="vscode-icons:file-type-nuxt" class="size-6"}
|
||||
::
|
||||
|
||||
```mdc
|
||||
:icon{name="lucide:box"}
|
||||
:icon{name="vscode-icons:file-type-js-official"}
|
||||
:icon{name="vscode-icons:file-type-vue"}
|
||||
:icon{name="vscode-icons:file-type-nuxt" :size="30"}
|
||||
```
|
||||
::
|
||||
|
||||
::ETabs
|
||||
::div{label="PostgreSQL" icon="lucide:database"}
|
||||
### PostgreSQL column types
|
||||
|
||||
```ts
|
||||
import { integer, pgTable } from 'drizzle-orm/pg-core';
|
||||
|
||||
export const table = pgTable('table', {
|
||||
int: integer('int')
|
||||
});
|
||||
```
|
||||
::
|
||||
::div{label="MySQL"}
|
||||
### MySQL column types
|
||||
|
||||
```ts
|
||||
import { int, mysqlTable } from 'drizzle-orm/mysql-core';
|
||||
|
||||
const table = mysqlTable('table', {
|
||||
int: int('int')
|
||||
});
|
||||
```
|
||||
::
|
||||
::div{label="SQLite"}
|
||||
### SQLite column types
|
||||
|
||||
```ts
|
||||
import { integer, sqliteTable } from 'drizzle-orm/sqlite-core';
|
||||
|
||||
const table = sqliteTable('table', {
|
||||
id: integer('id')
|
||||
});
|
||||
|
||||
// you can customize integer mode to be number, boolean, timestamp, timestamp_ms
|
||||
integer('id', { mode: 'number' });
|
||||
integer('id', { mode: 'boolean' });
|
||||
integer('id', { mode: 'timestamp_ms' });
|
||||
integer('id', { mode: 'timestamp' }); // Date
|
||||
```
|
||||
::
|
||||
::
|
||||
|
||||
|
||||
|
||||
|
||||
::ECard
|
||||
---
|
||||
icon: lucide:rocket
|
||||
img: https://lijue-me.oss-cn-chengdu.aliyuncs.com/20250727184358217.png
|
||||
icon: simple-icons-tailwindcss
|
||||
spotlight: true
|
||||
title: Image Card
|
||||
description: Beautifully designed **Nuxt Content** template with **shadcn-vue**. _Customizable. Compatible. Open Source._
|
||||
---
|
||||
|
||||
#title
|
||||
Card Title
|
||||
|
||||
#description
|
||||
Description
|
||||
|
||||
#content
|
||||
Beautifully designed **Nuxt Content** template with **shadcn-vue**. _Customizable. Compatible. Open Source._
|
||||
wow
|
||||
|
||||
#highlight
|
||||
Tailwind CSS
|
||||
::
|
||||
|
||||
#highlight-color
|
||||
primary
|
||||
|
||||
title="Tailwind CSS"
|
||||
description="Nuxt UI v3 integrates with latest Tailwind CSS v4, bringing significant improvements."
|
||||
icon="i-simple-icons-tailwindcss"
|
||||
orientation="horizontal"
|
||||
highlight
|
||||
highlight-color="primary"
|
||||
::button-link{icon="lucide:arrow-up-right" variant="outline" to="/getting-started" target="_blank" size="md"}
|
||||
Get Started
|
||||
::
|
||||
|
||||
::button-link{trailing-icon="lucide:github" variant="outline" to="https://github.com/ZTL-UwU/shadcn-docs-nuxt" target="_blank"}
|
||||
GitHub
|
||||
::
|
||||
|
||||
::button-link{icon="lucide:ghost" variant="ghost" href="https://github.com/ZTL-UwU/shadcn-docs-nuxt" blank}
|
||||
Ghost
|
||||
::
|
||||
|
||||
#footer
|
||||
Footer
|
||||
|
||||
::FileTree
|
||||
---
|
||||
title: File Tree
|
||||
icon: lucide:folder-tree
|
||||
tree:
|
||||
- app:
|
||||
- components:
|
||||
- Header.vue
|
||||
- Footer.vue
|
||||
- composables:
|
||||
- useErrorHandler.ts
|
||||
- app.vue # This is highlighted
|
||||
- docs:
|
||||
- ^index.md^
|
||||
---
|
||||
::
|
||||
|
||||
::steps{level="4"}
|
||||
@@ -58,7 +155,7 @@ Footer
|
||||
::card-group
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt
|
||||
to: https://nuxt.com
|
||||
@@ -68,7 +165,7 @@ Footer
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt UI
|
||||
to: https://ui.nuxt.com
|
||||
@@ -78,7 +175,7 @@ Footer
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Image
|
||||
to: https://image.nuxt.com
|
||||
@@ -88,7 +185,7 @@ Footer
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Content
|
||||
to: https://content.nuxt.com
|
||||
@@ -98,7 +195,7 @@ Footer
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Devtools
|
||||
to: https://devtools.nuxt.com
|
||||
@@ -108,7 +205,7 @@ Footer
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Hub
|
||||
to: https://hub.nuxt.com
|
||||
|
@@ -2,9 +2,210 @@
|
||||
title: Installation
|
||||
description: Get started with Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: i-lucide-download
|
||||
icon: lucide-download
|
||||
---
|
||||
|
||||
|
||||
::ProseImg{src="https://lijue-me.oss-cn-chengdu.aliyuncs.com/20250727184358217.png"}
|
||||
::
|
||||
|
||||
::stack
|
||||
::div{class="p-6 text-3xl font-bold"}
|
||||
✨ shadcn-docs-nuxt
|
||||
::
|
||||
|
||||
```mdc
|
||||
---
|
||||
title: Installation
|
||||
description: How to install shadcn-docs-nuxt in your app.
|
||||
icon: lucide:play
|
||||
---
|
||||
|
||||
## Using the starter template
|
||||
```
|
||||
|
||||
|
||||
:read-more{title="Installation" to="/getting-started/installation"}
|
||||
|
||||
::card
|
||||
---
|
||||
title: Components
|
||||
icon: lucide:box
|
||||
---
|
||||
See MDC components provided by **shadcn-docs-nuxt**.
|
||||
::
|
||||
::
|
||||
|
||||
::field-group
|
||||
::field{name="withDefault" type="boolean" defaultValue="true"}
|
||||
A field with a default value.
|
||||
::
|
||||
::field{name="requiredField" type="boolean" required}
|
||||
A required field.
|
||||
::
|
||||
::field{name="clear (path?: string)" type="void"}
|
||||
Clears form errors associated with a specific path. If no path is provided, clears all form errors.
|
||||
::
|
||||
::field{name="getErrors (path?: string)" type="FormError[]"}
|
||||
Retrieves form errors associated with a specific path. If no path is provided, returns all form errors.
|
||||
::
|
||||
::field{name="setErrors (errors: FormError[], path?: string)" type="void"}
|
||||
Sets form errors for a given path. If no path is provided, overrides all errors.
|
||||
::
|
||||
::field{name="errors" type="Ref<FormError[]>"}
|
||||
A reference to the array containing validation errors. Use this to access or manipulate the error information.
|
||||
::
|
||||
::
|
||||
::code-tree{defaultValue="nuxt.config.ts"}
|
||||
|
||||
```css [app/assets/main.css]
|
||||
@import "tailwindcss" theme(static);
|
||||
@import "@nuxt/ui-pro";
|
||||
```
|
||||
|
||||
```ts [app/app.config.ts]
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
colors: {
|
||||
primary: 'sky',
|
||||
colors: 'slate'
|
||||
}
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
```vue [app/app.vue]
|
||||
<template>
|
||||
<UApp>
|
||||
<NuxtPage />
|
||||
</UApp>
|
||||
</template>
|
||||
```
|
||||
|
||||
```json [package.json]
|
||||
{
|
||||
"name": "nuxt-app",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "nuxt build",
|
||||
"dev": "nuxt dev",
|
||||
"generate": "nuxt generate",
|
||||
"preview": "nuxt preview",
|
||||
"postinstall": "nuxt prepare",
|
||||
"typecheck": "nuxt typecheck"
|
||||
},
|
||||
"dependencies": {
|
||||
"@iconify-json/lucide": "^1.2.18",
|
||||
"@nuxt/ui-pro": "3.0.0-alpha.10",
|
||||
"nuxt": "^3.15.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^5.7.2",
|
||||
"vue-tsc": "^2.2.0"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
```json [tsconfig.json]
|
||||
{
|
||||
"extends": "./.nuxt/tsconfig.json"
|
||||
}
|
||||
```
|
||||
|
||||
```ts [nuxt.config.ts]
|
||||
export default defineNuxtConfig({
|
||||
modules: ['@nuxt/ui-pro'],
|
||||
|
||||
future: {
|
||||
compatibilityVersion: 4
|
||||
},
|
||||
|
||||
css: ['~/assets/main.css']
|
||||
});
|
||||
```
|
||||
|
||||
````md [README.md]
|
||||
# Nuxt 3 Minimal Starter
|
||||
|
||||
Look at the [Nuxt 3 documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
|
||||
|
||||
## Setup
|
||||
|
||||
Make sure to install the dependencies:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm install
|
||||
|
||||
# pnpm
|
||||
pnpm install
|
||||
|
||||
# yarn
|
||||
yarn install
|
||||
|
||||
# bun
|
||||
bun install
|
||||
```
|
||||
|
||||
## Development Server
|
||||
|
||||
Start the development server on `http://localhost:3000`:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run dev
|
||||
|
||||
# pnpm
|
||||
pnpm run dev
|
||||
|
||||
# yarn
|
||||
yarn dev
|
||||
|
||||
# bun
|
||||
bun run dev
|
||||
```
|
||||
|
||||
## Production
|
||||
|
||||
Build the application for production:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run build
|
||||
|
||||
# pnpm
|
||||
pnpm run build
|
||||
|
||||
# yarn
|
||||
yarn build
|
||||
|
||||
# bun
|
||||
bun run build
|
||||
```
|
||||
|
||||
Locally preview production build:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run preview
|
||||
|
||||
# pnpm
|
||||
pnpm run preview
|
||||
|
||||
# yarn
|
||||
yarn preview
|
||||
|
||||
# bun
|
||||
bun run preview
|
||||
```
|
||||
|
||||
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
|
||||
````
|
||||
|
||||
::
|
||||
|
||||
|
||||
::tip{target="_blank" to="https://content.nuxt.com/templates/docs"}
|
||||
Use this template on Nuxt Studio and start your documentation in seconds.
|
||||
::
|
||||
|
@@ -2,9 +2,17 @@
|
||||
title: 进行测试
|
||||
description: Learn how to write and customize your documentation.
|
||||
navigation:
|
||||
icon: i-lucide-sliders
|
||||
icon: lucide-sliders
|
||||
---
|
||||
|
||||
::playground
|
||||
---
|
||||
provider: stackblitz
|
||||
repo: nuxt/starter
|
||||
branch: v3
|
||||
file: app.vue
|
||||
---
|
||||
::
|
||||
|
||||
# 这是一个H1标签
|
||||
|
||||
|
@@ -1,2 +1,2 @@
|
||||
title: Essentials
|
||||
icon: i-lucide-book-open
|
||||
icon: lucide-book-open
|
@@ -2,7 +2,7 @@
|
||||
title: Markdown Syntax
|
||||
description: Text, title, and styling in standard markdown.
|
||||
navigation:
|
||||
icon: i-lucide-heading-1
|
||||
icon: lucide-heading-1
|
||||
---
|
||||
|
||||
## Titles
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Markdown Syntax
|
||||
description: Text, title, and styling in standard markdown.
|
||||
navigation:
|
||||
icon: i-lucide-heading-1
|
||||
icon: lucide-heading-1
|
||||
---
|
||||
|
||||
## Titles
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Markdown Syntax
|
||||
description: Text, title, and styling in standard markdown.
|
||||
navigation:
|
||||
icon: i-lucide-heading-1
|
||||
icon: lucide-heading-1
|
||||
---
|
||||
|
||||
## Titles
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Markdown Syntax
|
||||
description: Text, title, and styling in standard markdown.
|
||||
navigation:
|
||||
icon: i-lucide-heading-1
|
||||
icon: lucide-heading-1
|
||||
---
|
||||
|
||||
## Titles
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Code Blocks
|
||||
description: Display inline code and code blocks
|
||||
navigation:
|
||||
icon: i-lucide-code-xml
|
||||
icon: lucide-code-xml
|
||||
---
|
||||
|
||||
## Basic
|
||||
@@ -95,8 +95,8 @@ You can change the icon in your `app.config.ts` through the `ui.icons.copy` and
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -116,8 +116,8 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -129,8 +129,8 @@ export default defineAppConfig({
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Code Blocks
|
||||
description: Display inline code and code blocks
|
||||
navigation:
|
||||
icon: i-lucide-code-xml
|
||||
icon: lucide-code-xml
|
||||
---
|
||||
|
||||
## Basic
|
||||
@@ -95,8 +95,8 @@ You can change the icon in your `app.config.ts` through the `ui.icons.copy` and
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -116,8 +116,8 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -129,8 +129,8 @@ export default defineAppConfig({
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Code Blocks
|
||||
description: Display inline code and code blocks
|
||||
navigation:
|
||||
icon: i-lucide-code-xml
|
||||
icon: lucide-code-xml
|
||||
---
|
||||
|
||||
## Basic
|
||||
@@ -95,8 +95,8 @@ You can change the icon in your `app.config.ts` through the `ui.icons.copy` and
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -116,8 +116,8 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -129,8 +129,8 @@ export default defineAppConfig({
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Code Blocks
|
||||
description: Display inline code and code blocks
|
||||
navigation:
|
||||
icon: i-lucide-code-xml
|
||||
icon: lucide-code-xml
|
||||
---
|
||||
|
||||
## Basic
|
||||
@@ -95,8 +95,8 @@ You can change the icon in your `app.config.ts` through the `ui.icons.copy` and
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -116,8 +116,8 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -129,8 +129,8 @@ export default defineAppConfig({
|
||||
export default defineAppConfig({
|
||||
ui: {
|
||||
icons: {
|
||||
copy: 'i-lucide-copy',
|
||||
copyCheck: 'i-lucide-copy-check'
|
||||
copy: 'lucide-copy',
|
||||
copyCheck: 'lucide-copy-check'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Prose Components
|
||||
description: Components to help you structure your content.
|
||||
navigation:
|
||||
icon: i-lucide-component
|
||||
icon: lucide-component
|
||||
---
|
||||
|
||||
### Accordion
|
||||
@@ -16,7 +16,7 @@ class: "[&>div]:*:my-0"
|
||||
:::accordion
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: What are the main considerations when upgrading to Nuxt UI v3?
|
||||
---
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
@@ -24,13 +24,13 @@ class: "[&>div]:*:my-0"
|
||||
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: Is Nuxt UI v3 compatible with standalone Vue projects?
|
||||
---
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
::::
|
||||
|
||||
::::accordion-item{icon="i-lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
::::accordion-item{icon="lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
::::
|
||||
:::
|
||||
@@ -39,15 +39,15 @@ class: "[&>div]:*:my-0"
|
||||
```mdc
|
||||
::accordion
|
||||
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="lucide-circle-help"}
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="lucide-circle-help"}
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="lucide-circle-help"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
:::
|
||||
|
||||
@@ -148,7 +148,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
---
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -161,7 +161,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -178,7 +178,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
:::card-group{.w-full}
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -188,7 +188,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: SaaS
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
@@ -198,7 +198,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Docs
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
@@ -208,7 +208,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Landing
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
@@ -224,7 +224,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -234,7 +234,7 @@ A dashboard with multi-column layout.
|
||||
::card
|
||||
---
|
||||
title: SaaS
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
target: _blank
|
||||
---
|
||||
@@ -244,7 +244,7 @@ A template with landing, pricing, docs and blog.
|
||||
::card
|
||||
---
|
||||
title: Docs
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
target: _blank
|
||||
---
|
||||
@@ -254,7 +254,7 @@ A documentation with `@nuxt/content`.
|
||||
::card
|
||||
---
|
||||
title: Landing
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
target: _blank
|
||||
---
|
||||
@@ -362,13 +362,13 @@ Use `field-group` to group related fields together in a list. `field-group` help
|
||||
Use `icon` to insert icons from icon libraries. Icons provide visual cues and enhance the user interface of your documentation.
|
||||
|
||||
::code-preview
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
|
||||
|
||||
|
||||
#code
|
||||
```mdc
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
```
|
||||
::
|
||||
|
||||
@@ -397,7 +397,7 @@ Use `tabs` and `tabs-item` to organize content into tabbed interfaces. Tabs are
|
||||
class: "[&>div]:*:my-0"
|
||||
---
|
||||
:::tabs{.w-full}
|
||||
::::tabs-item{icon="i-lucide-code" label="Code"}
|
||||
::::tabs-item{icon="lucide-code" label="Code"}
|
||||
```mdc
|
||||
::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
@@ -405,7 +405,7 @@ class: "[&>div]:*:my-0"
|
||||
```
|
||||
::::
|
||||
|
||||
::::tabs-item{icon="i-lucide-eye" label="Preview"}
|
||||
::::tabs-item{icon="lucide-eye" label="Preview"}
|
||||
:::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
:::::
|
||||
@@ -416,7 +416,7 @@ class: "[&>div]:*:my-0"
|
||||
````mdc
|
||||
::tabs
|
||||
|
||||
:::tabs-item{label="Code" icon="i-lucide-code"}
|
||||
:::tabs-item{label="Code" icon="lucide-code"}
|
||||
|
||||
```mdc
|
||||
::callout
|
||||
@@ -426,7 +426,7 @@ Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
||||
:::
|
||||
|
||||
:::tabs-item{label="Preview" icon="i-lucide-eye"}
|
||||
:::tabs-item{label="Preview" icon="lucide-eye"}
|
||||
|
||||
::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Prose Components
|
||||
description: Components to help you structure your content.
|
||||
navigation:
|
||||
icon: i-lucide-component
|
||||
icon: lucide-component
|
||||
---
|
||||
|
||||
### Accordion
|
||||
@@ -16,7 +16,7 @@ class: "[&>div]:*:my-0"
|
||||
:::accordion
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: What are the main considerations when upgrading to Nuxt UI v3?
|
||||
---
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
@@ -24,13 +24,13 @@ class: "[&>div]:*:my-0"
|
||||
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: Is Nuxt UI v3 compatible with standalone Vue projects?
|
||||
---
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
::::
|
||||
|
||||
::::accordion-item{icon="i-lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
::::accordion-item{icon="lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
::::
|
||||
:::
|
||||
@@ -39,15 +39,15 @@ class: "[&>div]:*:my-0"
|
||||
```mdc
|
||||
::accordion
|
||||
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="lucide-circle-help"}
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="lucide-circle-help"}
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="lucide-circle-help"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
:::
|
||||
|
||||
@@ -148,7 +148,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
---
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -161,7 +161,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -178,7 +178,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
:::card-group{.w-full}
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -188,7 +188,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: SaaS
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
@@ -198,7 +198,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Docs
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
@@ -208,7 +208,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Landing
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
@@ -224,7 +224,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -234,7 +234,7 @@ A dashboard with multi-column layout.
|
||||
::card
|
||||
---
|
||||
title: SaaS
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
target: _blank
|
||||
---
|
||||
@@ -244,7 +244,7 @@ A template with landing, pricing, docs and blog.
|
||||
::card
|
||||
---
|
||||
title: Docs
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
target: _blank
|
||||
---
|
||||
@@ -254,7 +254,7 @@ A documentation with `@nuxt/content`.
|
||||
::card
|
||||
---
|
||||
title: Landing
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
target: _blank
|
||||
---
|
||||
@@ -362,13 +362,13 @@ Use `field-group` to group related fields together in a list. `field-group` help
|
||||
Use `icon` to insert icons from icon libraries. Icons provide visual cues and enhance the user interface of your documentation.
|
||||
|
||||
::code-preview
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
|
||||
|
||||
|
||||
#code
|
||||
```mdc
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
```
|
||||
::
|
||||
|
||||
@@ -397,7 +397,7 @@ Use `tabs` and `tabs-item` to organize content into tabbed interfaces. Tabs are
|
||||
class: "[&>div]:*:my-0"
|
||||
---
|
||||
:::tabs{.w-full}
|
||||
::::tabs-item{icon="i-lucide-code" label="Code"}
|
||||
::::tabs-item{icon="lucide-code" label="Code"}
|
||||
```mdc
|
||||
::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
@@ -405,7 +405,7 @@ class: "[&>div]:*:my-0"
|
||||
```
|
||||
::::
|
||||
|
||||
::::tabs-item{icon="i-lucide-eye" label="Preview"}
|
||||
::::tabs-item{icon="lucide-eye" label="Preview"}
|
||||
:::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
:::::
|
||||
@@ -416,7 +416,7 @@ class: "[&>div]:*:my-0"
|
||||
````mdc
|
||||
::tabs
|
||||
|
||||
:::tabs-item{label="Code" icon="i-lucide-code"}
|
||||
:::tabs-item{label="Code" icon="lucide-code"}
|
||||
|
||||
```mdc
|
||||
::callout
|
||||
@@ -426,7 +426,7 @@ Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
||||
:::
|
||||
|
||||
:::tabs-item{label="Preview" icon="i-lucide-eye"}
|
||||
:::tabs-item{label="Preview" icon="lucide-eye"}
|
||||
|
||||
::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Prose Components
|
||||
description: Components to help you structure your content.
|
||||
navigation:
|
||||
icon: i-lucide-component
|
||||
icon: lucide-component
|
||||
---
|
||||
|
||||
### Accordion
|
||||
@@ -16,7 +16,7 @@ class: "[&>div]:*:my-0"
|
||||
:::accordion
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: What are the main considerations when upgrading to Nuxt UI v3?
|
||||
---
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
@@ -24,13 +24,13 @@ class: "[&>div]:*:my-0"
|
||||
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: Is Nuxt UI v3 compatible with standalone Vue projects?
|
||||
---
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
::::
|
||||
|
||||
::::accordion-item{icon="i-lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
::::accordion-item{icon="lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
::::
|
||||
:::
|
||||
@@ -39,15 +39,15 @@ class: "[&>div]:*:my-0"
|
||||
```mdc
|
||||
::accordion
|
||||
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="lucide-circle-help"}
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="lucide-circle-help"}
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="lucide-circle-help"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
:::
|
||||
|
||||
@@ -148,7 +148,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
---
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -161,7 +161,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -178,7 +178,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
:::card-group{.w-full}
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -188,7 +188,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: SaaS
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
@@ -198,7 +198,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Docs
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
@@ -208,7 +208,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Landing
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
@@ -224,7 +224,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -234,7 +234,7 @@ A dashboard with multi-column layout.
|
||||
::card
|
||||
---
|
||||
title: SaaS
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
target: _blank
|
||||
---
|
||||
@@ -244,7 +244,7 @@ A template with landing, pricing, docs and blog.
|
||||
::card
|
||||
---
|
||||
title: Docs
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
target: _blank
|
||||
---
|
||||
@@ -254,7 +254,7 @@ A documentation with `@nuxt/content`.
|
||||
::card
|
||||
---
|
||||
title: Landing
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
target: _blank
|
||||
---
|
||||
@@ -362,13 +362,13 @@ Use `field-group` to group related fields together in a list. `field-group` help
|
||||
Use `icon` to insert icons from icon libraries. Icons provide visual cues and enhance the user interface of your documentation.
|
||||
|
||||
::code-preview
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
|
||||
|
||||
|
||||
#code
|
||||
```mdc
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
```
|
||||
::
|
||||
|
||||
@@ -397,7 +397,7 @@ Use `tabs` and `tabs-item` to organize content into tabbed interfaces. Tabs are
|
||||
class: "[&>div]:*:my-0"
|
||||
---
|
||||
:::tabs{.w-full}
|
||||
::::tabs-item{icon="i-lucide-code" label="Code"}
|
||||
::::tabs-item{icon="lucide-code" label="Code"}
|
||||
```mdc
|
||||
::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
@@ -405,7 +405,7 @@ class: "[&>div]:*:my-0"
|
||||
```
|
||||
::::
|
||||
|
||||
::::tabs-item{icon="i-lucide-eye" label="Preview"}
|
||||
::::tabs-item{icon="lucide-eye" label="Preview"}
|
||||
:::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
:::::
|
||||
@@ -416,7 +416,7 @@ class: "[&>div]:*:my-0"
|
||||
````mdc
|
||||
::tabs
|
||||
|
||||
:::tabs-item{label="Code" icon="i-lucide-code"}
|
||||
:::tabs-item{label="Code" icon="lucide-code"}
|
||||
|
||||
```mdc
|
||||
::callout
|
||||
@@ -426,7 +426,7 @@ Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
||||
:::
|
||||
|
||||
:::tabs-item{label="Preview" icon="i-lucide-eye"}
|
||||
:::tabs-item{label="Preview" icon="lucide-eye"}
|
||||
|
||||
::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Prose Components
|
||||
description: Components to help you structure your content.
|
||||
navigation:
|
||||
icon: i-lucide-component
|
||||
icon: lucide-component
|
||||
---
|
||||
|
||||
### Accordion
|
||||
@@ -16,7 +16,7 @@ class: "[&>div]:*:my-0"
|
||||
:::accordion
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: What are the main considerations when upgrading to Nuxt UI v3?
|
||||
---
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
@@ -24,13 +24,13 @@ class: "[&>div]:*:my-0"
|
||||
|
||||
::::accordion-item
|
||||
---
|
||||
icon: i-lucide-circle-help
|
||||
icon: lucide-circle-help
|
||||
label: Is Nuxt UI v3 compatible with standalone Vue projects?
|
||||
---
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
::::
|
||||
|
||||
::::accordion-item{icon="i-lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
::::accordion-item{icon="lucide-circle-help" label="What about Nuxt UI Pro?"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
::::
|
||||
:::
|
||||
@@ -39,15 +39,15 @@ class: "[&>div]:*:my-0"
|
||||
```mdc
|
||||
::accordion
|
||||
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What are the main considerations when upgrading to Nuxt UI v3?" icon="lucide-circle-help"}
|
||||
The transition to v3 involves significant changes, including new component structures, updated theming approaches, and revised TypeScript definitions. We recommend a careful, incremental upgrade process, starting with thorough testing in a development environment.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="Is Nuxt UI v3 compatible with standalone Vue projects?" icon="lucide-circle-help"}
|
||||
Nuxt UI is now compatible with Vue! You can follow the [installation guide](/getting-started/installation) to get started.
|
||||
:::
|
||||
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="i-lucide-circle-help"}
|
||||
:::accordion-item{label="What about Nuxt UI Pro?" icon="lucide-circle-help"}
|
||||
We've also rebuilt Nuxt UI Pro from scratch and released a `v3.0.0-alpha.x` package but it only contains the components to build this documentation yet. This will be a free update, so the license you buy now will be valid for v3. We're actively working to finish the rewrite of all Nuxt UI Pro components.
|
||||
:::
|
||||
|
||||
@@ -148,7 +148,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
---
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -161,7 +161,7 @@ class: "[&>div]:*:my-0 [&>div]:*:w-full"
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -178,7 +178,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
:::card-group{.w-full}
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Dashboard
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
@@ -188,7 +188,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: SaaS
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
@@ -198,7 +198,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Docs
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
@@ -208,7 +208,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
|
||||
::::card
|
||||
---
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
target: _blank
|
||||
title: Landing
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
@@ -224,7 +224,7 @@ Use `card-group` to arrange cards in a grid layout. `card-group` is ideal for di
|
||||
::card
|
||||
---
|
||||
title: Dashboard
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/dashboard
|
||||
target: _blank
|
||||
---
|
||||
@@ -234,7 +234,7 @@ A dashboard with multi-column layout.
|
||||
::card
|
||||
---
|
||||
title: SaaS
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/saas
|
||||
target: _blank
|
||||
---
|
||||
@@ -244,7 +244,7 @@ A template with landing, pricing, docs and blog.
|
||||
::card
|
||||
---
|
||||
title: Docs
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
target: _blank
|
||||
---
|
||||
@@ -254,7 +254,7 @@ A documentation with `@nuxt/content`.
|
||||
::card
|
||||
---
|
||||
title: Landing
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
to: https://github.com/nuxt-ui-pro/landing
|
||||
target: _blank
|
||||
---
|
||||
@@ -362,13 +362,13 @@ Use `field-group` to group related fields together in a list. `field-group` help
|
||||
Use `icon` to insert icons from icon libraries. Icons provide visual cues and enhance the user interface of your documentation.
|
||||
|
||||
::code-preview
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
|
||||
|
||||
|
||||
#code
|
||||
```mdc
|
||||
:icon{name="i-simple-icons-nuxtdotjs"}
|
||||
:icon{name="simple-icons-nuxtdotjs"}
|
||||
```
|
||||
::
|
||||
|
||||
@@ -397,7 +397,7 @@ Use `tabs` and `tabs-item` to organize content into tabbed interfaces. Tabs are
|
||||
class: "[&>div]:*:my-0"
|
||||
---
|
||||
:::tabs{.w-full}
|
||||
::::tabs-item{icon="i-lucide-code" label="Code"}
|
||||
::::tabs-item{icon="lucide-code" label="Code"}
|
||||
```mdc
|
||||
::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
@@ -405,7 +405,7 @@ class: "[&>div]:*:my-0"
|
||||
```
|
||||
::::
|
||||
|
||||
::::tabs-item{icon="i-lucide-eye" label="Preview"}
|
||||
::::tabs-item{icon="lucide-eye" label="Preview"}
|
||||
:::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
:::::
|
||||
@@ -416,7 +416,7 @@ class: "[&>div]:*:my-0"
|
||||
````mdc
|
||||
::tabs
|
||||
|
||||
:::tabs-item{label="Code" icon="i-lucide-code"}
|
||||
:::tabs-item{label="Code" icon="lucide-code"}
|
||||
|
||||
```mdc
|
||||
::callout
|
||||
@@ -426,7 +426,7 @@ Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
||||
:::
|
||||
|
||||
:::tabs-item{label="Preview" icon="i-lucide-eye"}
|
||||
:::tabs-item{label="Preview" icon="lucide-eye"}
|
||||
|
||||
::::callout
|
||||
Lorem velit voluptate ex reprehenderit ullamco et culpa.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Images and Embeds
|
||||
description: Add image, video, and other HTML elements
|
||||
navigation:
|
||||
icon: i-lucide-image
|
||||
icon: lucide-image
|
||||
---
|
||||
|
||||
## Image
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Images and Embeds
|
||||
description: Add image, video, and other HTML elements
|
||||
navigation:
|
||||
icon: i-lucide-image
|
||||
icon: lucide-image
|
||||
---
|
||||
|
||||
## Image
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Images and Embeds
|
||||
description: Add image, video, and other HTML elements
|
||||
navigation:
|
||||
icon: i-lucide-image
|
||||
icon: lucide-image
|
||||
---
|
||||
|
||||
## Image
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Images and Embeds
|
||||
description: Add image, video, and other HTML elements
|
||||
navigation:
|
||||
icon: i-lucide-image
|
||||
icon: lucide-image
|
||||
---
|
||||
|
||||
## Image
|
||||
|
@@ -1,2 +1,2 @@
|
||||
title: Getting Started
|
||||
icon: i-lucide-book-open
|
||||
icon: lucide-book-open
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Introduction
|
||||
description: Welcome to Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: i-lucide-house
|
||||
icon: lucide-house
|
||||
---
|
||||
|
||||
This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes.
|
||||
@@ -12,7 +12,7 @@ There are already many websites based on this template:
|
||||
::card-group
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt
|
||||
to: https://nuxt.com
|
||||
@@ -22,7 +22,7 @@ There are already many websites based on this template:
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt UI
|
||||
to: https://ui.nuxt.com
|
||||
@@ -32,7 +32,7 @@ There are already many websites based on this template:
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Image
|
||||
to: https://image.nuxt.com
|
||||
@@ -42,7 +42,7 @@ There are already many websites based on this template:
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Content
|
||||
to: https://content.nuxt.com
|
||||
@@ -52,7 +52,7 @@ There are already many websites based on this template:
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Devtools
|
||||
to: https://devtools.nuxt.com
|
||||
@@ -62,7 +62,7 @@ There are already many websites based on this template:
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Hub
|
||||
to: https://hub.nuxt.com
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Installation
|
||||
description: Get started with Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: i-lucide-download
|
||||
icon: lucide-download
|
||||
---
|
||||
|
||||
::tip{target="_blank" to="https://content.nuxt.com/templates/docs"}
|
||||
|
@@ -2,7 +2,7 @@
|
||||
title: Usage
|
||||
description: Learn how to write and customize your documentation.
|
||||
navigation:
|
||||
icon: i-lucide-sliders
|
||||
icon: lucide-sliders
|
||||
---
|
||||
|
||||
This is only a basic example of what you can achieve with [Nuxt UI Pro](https://ui.nuxt.com/pro/guide), you can tweak it to match your needs. The template uses several Nuxt modules underneath like [`@nuxt/content`](https://content.nuxt.com) for the content and [`nuxt-og-image`](https://nuxtseo.com/og-image/getting-started/installation) for social previews.
|
||||
@@ -44,7 +44,7 @@ export default defineAppConfig({
|
||||
colorMode: true,
|
||||
// Customize links
|
||||
links: [{
|
||||
'icon': 'i-simple-icons-github',
|
||||
'icon': 'simple-icons-github',
|
||||
'to': 'https://github.com/nuxt-ui-pro/docs',
|
||||
'target': '_blank',
|
||||
'aria-label': 'GitHub'
|
||||
@@ -64,22 +64,22 @@ export default defineAppConfig({
|
||||
colorMode: false,
|
||||
// Customize links
|
||||
links: [{
|
||||
'icon': 'i-simple-icons-nuxtdotjs',
|
||||
'icon': 'simple-icons-nuxtdotjs',
|
||||
'to': 'https://nuxt.com',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt Website'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-discord',
|
||||
'icon': 'simple-icons-discord',
|
||||
'to': 'https://discord.com/invite/ps2h6QT',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt UI on Discord'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-x',
|
||||
'icon': 'simple-icons-x',
|
||||
'to': 'https://x.com/nuxt_js',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt on X'
|
||||
}, {
|
||||
'icon': 'i-simple-icons-github',
|
||||
'icon': 'simple-icons-github',
|
||||
'to': 'https://github.com/nuxt/ui',
|
||||
'target': '_blank',
|
||||
'aria-label': 'Nuxt UI on GitHub'
|
||||
@@ -102,17 +102,17 @@ export default defineAppConfig({
|
||||
// URL of your repository content folder
|
||||
edit: 'https://github.com/nuxt-ui-pro/docs/edit/main/content',
|
||||
links: [{
|
||||
icon: 'i-lucide-star',
|
||||
icon: 'lucide-star',
|
||||
label: 'Star on GitHub',
|
||||
to: 'https://github.com/nuxt/ui',
|
||||
target: '_blank'
|
||||
}, {
|
||||
icon: 'i-lucide-book-open',
|
||||
icon: 'lucide-book-open',
|
||||
label: 'Nuxt UI Pro docs',
|
||||
to: 'https://ui.nuxt.com/getting-started/installation/pro/nuxt',
|
||||
target: '_blank'
|
||||
}, {
|
||||
icon: 'i-simple-icons-nuxtdotjs',
|
||||
icon: 'simple-icons-nuxtdotjs',
|
||||
label: 'Purchase a license',
|
||||
to: 'https://ui.nuxt.com/pro/purchase',
|
||||
target: '_blank'
|
||||
|
3
content/4.无人自助系统/.navigation.yml
Normal file
3
content/4.无人自助系统/.navigation.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
title: 无人自助系统
|
||||
description: 一个简约但功能强大的开源文档系统
|
||||
icon: lucide-rocket
|
126
content/4.无人自助系统/1.index.md
Normal file
126
content/4.无人自助系统/1.index.md
Normal file
@@ -0,0 +1,126 @@
|
||||
---
|
||||
title: 入门指南
|
||||
description: 欢迎使用简单文档
|
||||
navigation:
|
||||
icon: lucide-house
|
||||
---
|
||||
|
||||
This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes.
|
||||
|
||||
There are already many websites based on this template:
|
||||
|
||||
::button-link{right-icon="lucide:arrow-up-right" to="/getting-started" target="_blank"}
|
||||
Get Started
|
||||
::
|
||||
::button-link{left-icon="lucide:github" variant="outline" to="https://github.com/ZTL-UwU/shadcn-docs-nuxt" target="_blank"}
|
||||
GitHub
|
||||
::
|
||||
::button-link{left-icon="lucide:ghost" variant="ghost" href="https://github.com/ZTL-UwU/shadcn-docs-nuxt" blank}
|
||||
Ghost
|
||||
::
|
||||
|
||||
::FileTree
|
||||
---
|
||||
tree:
|
||||
- app:
|
||||
- components:
|
||||
- Header.vue
|
||||
- Footer.vue
|
||||
- composables:
|
||||
- useErrorHandler.ts
|
||||
- ^app.vue^ # This is highlighted
|
||||
- docs:
|
||||
- index.md
|
||||
---
|
||||
::
|
||||
|
||||
::steps{level="4"}
|
||||
#### Start a fresh new project
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docus
|
||||
```
|
||||
|
||||
#### Run docus CLI to run your dev server
|
||||
|
||||
```bash [Terminal]
|
||||
docus dev
|
||||
```
|
||||
::
|
||||
|
||||
|
||||
::card-group
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt
|
||||
to: https://nuxt.com
|
||||
---
|
||||
The Nuxt website
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt UI
|
||||
to: https://ui.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/ui` and `@nuxt/ui-pro`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Image
|
||||
to: https://image.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/image`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Content
|
||||
to: https://content.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/content`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Devtools
|
||||
to: https://devtools.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/devtools`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Hub
|
||||
to: https://hub.nuxt.com
|
||||
---
|
||||
The best place to manage your projects, environments and variables.
|
||||
:::
|
||||
::
|
||||
|
||||
## Key Features
|
||||
|
||||
This template includes a range of features designed to streamline documentation management:
|
||||
|
||||
- **Powered by** [**Nuxt 3**](https://nuxt.com): Utilizes the latest Nuxt framework for optimal performance.
|
||||
- **Built with** [**Nuxt UI**](https://ui.nuxt.com) **and** [**Nuxt UI Pro**](https://ui.nuxt.com/pro): Integrates a comprehensive suite of UI components.
|
||||
- [**MDC Syntax**](https://content.nuxt.com/usage/markdown) **via** [**Nuxt Content**](https://content.nuxt.com): Supports Markdown with component integration for dynamic content.
|
||||
- [**Nuxt Studio**](https://content.nuxt.com/docs/studio) **Compatible**: Offers integration with Nuxt Studio for content editing.
|
||||
- **Auto-generated Sidebar Navigation**: Automatically generates navigation from content structure.
|
||||
- **Full-Text Search**: Includes built-in search functionality for content discovery.
|
||||
- **Optimized Typography**: Features refined typography for enhanced readability.
|
||||
- **Dark Mode**: Offers dark mode support for user preference.
|
||||
- **Extensive Functionality**: Explore the template to fully appreciate its capabilities.
|
29
content/4.无人自助系统/2.installation.md
Normal file
29
content/4.无人自助系统/2.installation.md
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: Installation
|
||||
description: Get started with Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: lucide-download
|
||||
---
|
||||
|
||||
::tip{target="_blank" to="https://content.nuxt.com/templates/docs"}
|
||||
Use this template on Nuxt Studio and start your documentation in seconds.
|
||||
::
|
||||
|
||||
## Quick Start
|
||||
|
||||
You can start a fresh new project with:
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docs
|
||||
```
|
||||
|
||||
or create a new repository from GitHub:
|
||||
|
||||
1. Open <https://github.com/nuxt-ui-pro/docs>
|
||||
2. Click on `Use this template` button
|
||||
3. Enter repository name and click on `Create repository from template` button
|
||||
4. Clone your new repository
|
||||
5. Install dependencies with your favorite package manager
|
||||
6. Start development server
|
||||
|
||||
That's it! You can now start writing your documentation in the [`content/`](https://content.nuxt.com/usage/content-directory) directory 🚀
|
35
content/4.无人自助系统/3.usage.md
Normal file
35
content/4.无人自助系统/3.usage.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: 进行测试
|
||||
description: Learn how to write and customize your documentation.
|
||||
navigation:
|
||||
icon: lucide-sliders
|
||||
---
|
||||
|
||||
|
||||
# 这是一个H1标签
|
||||
|
||||
## 这是一个H2标签
|
||||
|
||||
### 这是一个H3标签
|
||||
|
||||
#### 这是一个H4标签
|
||||
|
||||
##### 这是一个H5标签
|
||||
|
||||
###### 这是一个H6标签
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
::field{name="Field" type="string" defaultValue="'default'" required}
|
||||
The _description_ can be set as prop or in the default slot with full **markdown** support.
|
||||
::
|
||||
|
||||
|
||||
|
||||
|
3
content/5.智慧物业系统/.navigation.yml
Normal file
3
content/5.智慧物业系统/.navigation.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
title: 智慧物业系统
|
||||
description: 一个简约但功能强大的开源文档系统
|
||||
icon: lucide-rocket
|
126
content/5.智慧物业系统/1.index.md
Normal file
126
content/5.智慧物业系统/1.index.md
Normal file
@@ -0,0 +1,126 @@
|
||||
---
|
||||
title: 入门指南
|
||||
description: 欢迎使用简单文档
|
||||
navigation:
|
||||
icon: lucide-house
|
||||
---
|
||||
|
||||
This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes.
|
||||
|
||||
There are already many websites based on this template:
|
||||
|
||||
::button-link{right-icon="lucide:arrow-up-right" to="/getting-started" target="_blank"}
|
||||
Get Started
|
||||
::
|
||||
::button-link{left-icon="lucide:github" variant="outline" to="https://github.com/ZTL-UwU/shadcn-docs-nuxt" target="_blank"}
|
||||
GitHub
|
||||
::
|
||||
::button-link{left-icon="lucide:ghost" variant="ghost" href="https://github.com/ZTL-UwU/shadcn-docs-nuxt" blank}
|
||||
Ghost
|
||||
::
|
||||
|
||||
::FileTree
|
||||
---
|
||||
tree:
|
||||
- app:
|
||||
- components:
|
||||
- Header.vue
|
||||
- Footer.vue
|
||||
- composables:
|
||||
- useErrorHandler.ts
|
||||
- ^app.vue^ # This is highlighted
|
||||
- docs:
|
||||
- index.md
|
||||
---
|
||||
::
|
||||
|
||||
::steps{level="4"}
|
||||
#### Start a fresh new project
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docus
|
||||
```
|
||||
|
||||
#### Run docus CLI to run your dev server
|
||||
|
||||
```bash [Terminal]
|
||||
docus dev
|
||||
```
|
||||
::
|
||||
|
||||
|
||||
::card-group
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt
|
||||
to: https://nuxt.com
|
||||
---
|
||||
The Nuxt website
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt UI
|
||||
to: https://ui.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/ui` and `@nuxt/ui-pro`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Image
|
||||
to: https://image.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/image`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Content
|
||||
to: https://content.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/content`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Devtools
|
||||
to: https://devtools.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/devtools`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Hub
|
||||
to: https://hub.nuxt.com
|
||||
---
|
||||
The best place to manage your projects, environments and variables.
|
||||
:::
|
||||
::
|
||||
|
||||
## Key Features
|
||||
|
||||
This template includes a range of features designed to streamline documentation management:
|
||||
|
||||
- **Powered by** [**Nuxt 3**](https://nuxt.com): Utilizes the latest Nuxt framework for optimal performance.
|
||||
- **Built with** [**Nuxt UI**](https://ui.nuxt.com) **and** [**Nuxt UI Pro**](https://ui.nuxt.com/pro): Integrates a comprehensive suite of UI components.
|
||||
- [**MDC Syntax**](https://content.nuxt.com/usage/markdown) **via** [**Nuxt Content**](https://content.nuxt.com): Supports Markdown with component integration for dynamic content.
|
||||
- [**Nuxt Studio**](https://content.nuxt.com/docs/studio) **Compatible**: Offers integration with Nuxt Studio for content editing.
|
||||
- **Auto-generated Sidebar Navigation**: Automatically generates navigation from content structure.
|
||||
- **Full-Text Search**: Includes built-in search functionality for content discovery.
|
||||
- **Optimized Typography**: Features refined typography for enhanced readability.
|
||||
- **Dark Mode**: Offers dark mode support for user preference.
|
||||
- **Extensive Functionality**: Explore the template to fully appreciate its capabilities.
|
29
content/5.智慧物业系统/2.installation.md
Normal file
29
content/5.智慧物业系统/2.installation.md
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: Installation
|
||||
description: Get started with Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: lucide-download
|
||||
---
|
||||
|
||||
::tip{target="_blank" to="https://content.nuxt.com/templates/docs"}
|
||||
Use this template on Nuxt Studio and start your documentation in seconds.
|
||||
::
|
||||
|
||||
## Quick Start
|
||||
|
||||
You can start a fresh new project with:
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docs
|
||||
```
|
||||
|
||||
or create a new repository from GitHub:
|
||||
|
||||
1. Open <https://github.com/nuxt-ui-pro/docs>
|
||||
2. Click on `Use this template` button
|
||||
3. Enter repository name and click on `Create repository from template` button
|
||||
4. Clone your new repository
|
||||
5. Install dependencies with your favorite package manager
|
||||
6. Start development server
|
||||
|
||||
That's it! You can now start writing your documentation in the [`content/`](https://content.nuxt.com/usage/content-directory) directory 🚀
|
35
content/5.智慧物业系统/3.usage.md
Normal file
35
content/5.智慧物业系统/3.usage.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: 进行测试
|
||||
description: Learn how to write and customize your documentation.
|
||||
navigation:
|
||||
icon: lucide-sliders
|
||||
---
|
||||
|
||||
|
||||
# 这是一个H1标签
|
||||
|
||||
## 这是一个H2标签
|
||||
|
||||
### 这是一个H3标签
|
||||
|
||||
#### 这是一个H4标签
|
||||
|
||||
##### 这是一个H5标签
|
||||
|
||||
###### 这是一个H6标签
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
::field{name="Field" type="string" defaultValue="'default'" required}
|
||||
The _description_ can be set as prop or in the default slot with full **markdown** support.
|
||||
::
|
||||
|
||||
|
||||
|
||||
|
3
content/6.简约博客/.navigation.yml
Normal file
3
content/6.简约博客/.navigation.yml
Normal file
@@ -0,0 +1,3 @@
|
||||
title: 简约博客
|
||||
description: 一个简约但功能强大的开源文档系统
|
||||
icon: lucide-rocket
|
126
content/6.简约博客/1.index.md
Normal file
126
content/6.简约博客/1.index.md
Normal file
@@ -0,0 +1,126 @@
|
||||
---
|
||||
title: 入门指南
|
||||
description: 欢迎使用简单文档
|
||||
navigation:
|
||||
icon: lucide-house
|
||||
---
|
||||
|
||||
This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes.
|
||||
|
||||
There are already many websites based on this template:
|
||||
|
||||
::button-link{right-icon="lucide:arrow-up-right" to="/getting-started" target="_blank"}
|
||||
Get Started
|
||||
::
|
||||
::button-link{left-icon="lucide:github" variant="outline" to="https://github.com/ZTL-UwU/shadcn-docs-nuxt" target="_blank"}
|
||||
GitHub
|
||||
::
|
||||
::button-link{left-icon="lucide:ghost" variant="ghost" href="https://github.com/ZTL-UwU/shadcn-docs-nuxt" blank}
|
||||
Ghost
|
||||
::
|
||||
|
||||
::FileTree
|
||||
---
|
||||
tree:
|
||||
- app:
|
||||
- components:
|
||||
- Header.vue
|
||||
- Footer.vue
|
||||
- composables:
|
||||
- useErrorHandler.ts
|
||||
- ^app.vue^ # This is highlighted
|
||||
- docs:
|
||||
- index.md
|
||||
---
|
||||
::
|
||||
|
||||
::steps{level="4"}
|
||||
#### Start a fresh new project
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docus
|
||||
```
|
||||
|
||||
#### Run docus CLI to run your dev server
|
||||
|
||||
```bash [Terminal]
|
||||
docus dev
|
||||
```
|
||||
::
|
||||
|
||||
|
||||
::card-group
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt
|
||||
to: https://nuxt.com
|
||||
---
|
||||
The Nuxt website
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt UI
|
||||
to: https://ui.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/ui` and `@nuxt/ui-pro`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Image
|
||||
to: https://image.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/image`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Content
|
||||
to: https://content.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/content`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Devtools
|
||||
to: https://devtools.nuxt.com
|
||||
---
|
||||
The documentation of `@nuxt/devtools`
|
||||
:::
|
||||
|
||||
:::card
|
||||
---
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
title: Nuxt Hub
|
||||
to: https://hub.nuxt.com
|
||||
---
|
||||
The best place to manage your projects, environments and variables.
|
||||
:::
|
||||
::
|
||||
|
||||
## Key Features
|
||||
|
||||
This template includes a range of features designed to streamline documentation management:
|
||||
|
||||
- **Powered by** [**Nuxt 3**](https://nuxt.com): Utilizes the latest Nuxt framework for optimal performance.
|
||||
- **Built with** [**Nuxt UI**](https://ui.nuxt.com) **and** [**Nuxt UI Pro**](https://ui.nuxt.com/pro): Integrates a comprehensive suite of UI components.
|
||||
- [**MDC Syntax**](https://content.nuxt.com/usage/markdown) **via** [**Nuxt Content**](https://content.nuxt.com): Supports Markdown with component integration for dynamic content.
|
||||
- [**Nuxt Studio**](https://content.nuxt.com/docs/studio) **Compatible**: Offers integration with Nuxt Studio for content editing.
|
||||
- **Auto-generated Sidebar Navigation**: Automatically generates navigation from content structure.
|
||||
- **Full-Text Search**: Includes built-in search functionality for content discovery.
|
||||
- **Optimized Typography**: Features refined typography for enhanced readability.
|
||||
- **Dark Mode**: Offers dark mode support for user preference.
|
||||
- **Extensive Functionality**: Explore the template to fully appreciate its capabilities.
|
29
content/6.简约博客/2.installation.md
Normal file
29
content/6.简约博客/2.installation.md
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: Installation
|
||||
description: Get started with Nuxt UI Pro documentation template.
|
||||
navigation:
|
||||
icon: lucide-download
|
||||
---
|
||||
|
||||
::tip{target="_blank" to="https://content.nuxt.com/templates/docs"}
|
||||
Use this template on Nuxt Studio and start your documentation in seconds.
|
||||
::
|
||||
|
||||
## Quick Start
|
||||
|
||||
You can start a fresh new project with:
|
||||
|
||||
```bash [Terminal]
|
||||
npx nuxi init -t github:nuxt-ui-pro/docs
|
||||
```
|
||||
|
||||
or create a new repository from GitHub:
|
||||
|
||||
1. Open <https://github.com/nuxt-ui-pro/docs>
|
||||
2. Click on `Use this template` button
|
||||
3. Enter repository name and click on `Create repository from template` button
|
||||
4. Clone your new repository
|
||||
5. Install dependencies with your favorite package manager
|
||||
6. Start development server
|
||||
|
||||
That's it! You can now start writing your documentation in the [`content/`](https://content.nuxt.com/usage/content-directory) directory 🚀
|
35
content/6.简约博客/3.usage.md
Normal file
35
content/6.简约博客/3.usage.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: 进行测试
|
||||
description: Learn how to write and customize your documentation.
|
||||
navigation:
|
||||
icon: lucide-sliders
|
||||
---
|
||||
|
||||
|
||||
# 这是一个H1标签
|
||||
|
||||
## 这是一个H2标签
|
||||
|
||||
### 这是一个H3标签
|
||||
|
||||
#### 这是一个H4标签
|
||||
|
||||
##### 这是一个H5标签
|
||||
|
||||
###### 这是一个H6标签
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
::field{name="Field" type="string" defaultValue="'default'" required}
|
||||
The _description_ can be set as prop or in the default slot with full **markdown** support.
|
||||
::
|
||||
|
||||
|
||||
|
||||
|
@@ -30,7 +30,7 @@ Nuxt UI Pro is a collection of premium components built on top of Nuxt UI to cre
|
||||
---
|
||||
size: xl
|
||||
to: /getting-started
|
||||
trailing-icon: i-lucide-arrow-right
|
||||
trailing-icon: lucide-arrow-right
|
||||
---
|
||||
Get started
|
||||
:::
|
||||
@@ -38,7 +38,7 @@ Nuxt UI Pro is a collection of premium components built on top of Nuxt UI to cre
|
||||
:::u-button
|
||||
---
|
||||
color: neutral
|
||||
icon: i-simple-icons-github
|
||||
icon: simple-icons-github
|
||||
size: xl
|
||||
target: _blank
|
||||
to: https://github.com/nuxt-ui-pro/docs
|
||||
@@ -59,7 +59,7 @@ All-in-one documentation template
|
||||
size: lg
|
||||
target: _blank
|
||||
to: https://ui.nuxt.com/getting-started/installation/pro/nuxt
|
||||
trailingIcon: i-lucide-arrow-right
|
||||
trailingIcon: lucide-arrow-right
|
||||
variant: subtle
|
||||
---
|
||||
Discover Nuxt UI Pro v3
|
||||
@@ -68,7 +68,7 @@ All-in-one documentation template
|
||||
#features
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-simple-icons-nuxt
|
||||
icon: simple-icons-nuxt
|
||||
target: _blank
|
||||
to: https://nuxt.com
|
||||
---
|
||||
@@ -81,7 +81,7 @@ All-in-one documentation template
|
||||
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-simple-icons-markdown
|
||||
icon: simple-icons-markdown
|
||||
target: _blank
|
||||
to: https://content.nuxt.com
|
||||
---
|
||||
@@ -94,7 +94,7 @@ All-in-one documentation template
|
||||
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-lucide-sparkles
|
||||
icon: lucide-sparkles
|
||||
target: _blank
|
||||
to: https://ui.nuxt.com
|
||||
---
|
||||
@@ -107,7 +107,7 @@ All-in-one documentation template
|
||||
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-simple-icons-typescript
|
||||
icon: simple-icons-typescript
|
||||
target: _blank
|
||||
to: https://www.typescriptlang.org
|
||||
---
|
||||
@@ -120,7 +120,7 @@ All-in-one documentation template
|
||||
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-simple-icons-nuxtdotjs
|
||||
icon: simple-icons-nuxtdotjs
|
||||
target: _blank
|
||||
to: https://content.nuxt.com/docs/studio
|
||||
---
|
||||
@@ -133,7 +133,7 @@ All-in-one documentation template
|
||||
|
||||
:::u-page-feature
|
||||
---
|
||||
icon: i-lucide-search
|
||||
icon: lucide-search
|
||||
target: _blank
|
||||
to: https://ui.nuxt.com/components/content-search
|
||||
---
|
||||
@@ -152,11 +152,11 @@ All-in-one documentation template
|
||||
- label: Buy now
|
||||
to: https://ui.nuxt.com/pro/purchase
|
||||
target: _blank
|
||||
icon: i-lucide-shopping-cart
|
||||
icon: lucide-shopping-cart
|
||||
color: neutral
|
||||
- label: License
|
||||
to: https://ui.nuxt.com/getting-started/license
|
||||
trailingIcon: i-lucide-circle-help
|
||||
trailingIcon: lucide-circle-help
|
||||
target: _blank
|
||||
color: neutral
|
||||
variant: subtle
|
||||
|
@@ -54,32 +54,9 @@ export default defineNuxtConfig({
|
||||
},
|
||||
|
||||
icon: {
|
||||
provider: 'iconify'
|
||||
},
|
||||
|
||||
llms: {
|
||||
domain: 'https://docs-template.nuxt.dev/',
|
||||
title: 'Nuxt Docs Template',
|
||||
description: 'A template for building documentation with Nuxt UI Pro and Nuxt Content.',
|
||||
full: {
|
||||
title: 'Nuxt Docs Template - Full Documentation',
|
||||
description: 'This is the full documentation for the Nuxt Docs Template.'
|
||||
clientBundle: {
|
||||
scan: true,
|
||||
sizeLimitKb: 512,
|
||||
},
|
||||
sections: [
|
||||
{
|
||||
title: 'Getting Started',
|
||||
contentCollection: 'docs',
|
||||
contentFilters: [
|
||||
{ field: 'path', operator: 'LIKE', value: '/getting-started%' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Essentials',
|
||||
contentCollection: 'docs',
|
||||
contentFilters: [
|
||||
{ field: 'path', operator: 'LIKE', value: '/essentials%' }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
})
|
||||
|
@@ -40,42 +40,42 @@ export default defineNuxtSchema({
|
||||
title: 'Search Bar',
|
||||
description: 'Icon to display in the search bar.',
|
||||
icon: 'i-mdi-magnify',
|
||||
default: 'i-lucide-search'
|
||||
default: 'lucide-search'
|
||||
}),
|
||||
dark: field({
|
||||
type: 'icon',
|
||||
title: 'Dark mode',
|
||||
description: 'Icon of color mode button for dark mode.',
|
||||
icon: 'i-mdi-moon-waning-crescent',
|
||||
default: 'i-lucide-moon'
|
||||
default: 'lucide-moon'
|
||||
}),
|
||||
light: field({
|
||||
type: 'icon',
|
||||
title: 'Light mode',
|
||||
description: 'Icon of color mode button for light mode.',
|
||||
icon: 'i-mdi-white-balance-sunny',
|
||||
default: 'i-lucide-sun'
|
||||
default: 'lucide-sun'
|
||||
}),
|
||||
external: field({
|
||||
type: 'icon',
|
||||
title: 'External Link',
|
||||
description: 'Icon for external link.',
|
||||
icon: 'i-mdi-arrow-top-right',
|
||||
default: 'i-lucide-external-link'
|
||||
default: 'lucide-external-link'
|
||||
}),
|
||||
chevron: field({
|
||||
type: 'icon',
|
||||
title: 'Chevron',
|
||||
description: 'Icon for chevron.',
|
||||
icon: 'i-mdi-chevron-down',
|
||||
default: 'i-lucide-chevron-down'
|
||||
default: 'lucide-chevron-down'
|
||||
}),
|
||||
hash: field({
|
||||
type: 'icon',
|
||||
title: 'Hash',
|
||||
description: 'Icon for hash anchors.',
|
||||
icon: 'i-ph-hash',
|
||||
default: 'i-lucide-hash'
|
||||
default: 'lucide-hash'
|
||||
})
|
||||
}
|
||||
})
|
||||
|
40
package.json
40
package.json
@@ -1,8 +1,28 @@
|
||||
{
|
||||
"name": "nuxt-ui-pro-template-docs",
|
||||
"name": "Estel Docs",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"description": "简约文档,但功能强大",
|
||||
"packageManager": "pnpm@10.13.1",
|
||||
"author": "Estel",
|
||||
"license": "MIT",
|
||||
"version": "1.0.0",
|
||||
"homepage": "https://lijue.me",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/estel-li/estel-docs"
|
||||
},
|
||||
"keywords": [
|
||||
"markdown",
|
||||
"docs",
|
||||
"vue",
|
||||
"nuxt",
|
||||
"documentation-tool",
|
||||
"nuxt-content",
|
||||
"shadcn-vue"
|
||||
],
|
||||
"main": "./nuxt.config.ts",
|
||||
"scripts": {
|
||||
"build": "nuxt build",
|
||||
"dev": "nuxt dev",
|
||||
"generate": "nuxt generate",
|
||||
@@ -12,21 +32,28 @@
|
||||
"typecheck": "nuxt typecheck"
|
||||
},
|
||||
"dependencies": {
|
||||
"@iconify-json/lucide": "^1.2.57",
|
||||
"@iconify-json/simple-icons": "^1.2.43",
|
||||
"@iconify-json/vscode-icons": "^1.2.23",
|
||||
"@iconify/utils": "^2.3.0",
|
||||
"@nuxt/content": "^3.6.3",
|
||||
"@nuxt/image": "^1.10.0",
|
||||
"@nuxt/ui-pro": "^3.2.0",
|
||||
"better-sqlite3": "^12.2.0",
|
||||
"nuxt": "^4.0.1",
|
||||
"nuxt-llms": "0.1.3",
|
||||
"nuxt-og-image": "^5.1.9"
|
||||
"nuxt-og-image": "^5.1.9",
|
||||
"{collection_name}": "link:@iconify-json/{collection_name}"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@iconify-json/lucide": "^1.2.57",
|
||||
"@iconify-json/simple-icons": "^1.2.43",
|
||||
"@nuxt/eslint": "^1.5.2",
|
||||
"@nuxt/fonts": "^0.11.4",
|
||||
"@nuxt/icon": "^1.15.0",
|
||||
"@vueuse/core": "^13.5.0",
|
||||
"eslint": "^9.31.0",
|
||||
"lucide": "^0.526.0",
|
||||
"typescript": "^5.8.3",
|
||||
"vue": "^3.5.17",
|
||||
"vue-tsc": "^3.0.1"
|
||||
},
|
||||
"resolutions": {
|
||||
@@ -39,6 +66,5 @@
|
||||
"ignoredBuiltDependencies": [
|
||||
"vue-demi"
|
||||
]
|
||||
},
|
||||
"packageManager": "pnpm@10.13.1"
|
||||
}
|
||||
}
|
||||
|
33
patch-ui-pro.zsh
Executable file
33
patch-ui-pro.zsh
Executable file
@@ -0,0 +1,33 @@
|
||||
# 绕过 UI Pro 的 License 验证
|
||||
set -euo pipefail
|
||||
|
||||
# 1. 禁用 module.mjs 的调用
|
||||
MODULE="node_modules/@nuxt/ui-pro/dist/module.mjs"
|
||||
if [[ -f $MODULE ]]; then
|
||||
sed -i.bak '/await validateLicense({.*rootDir })/s/^/\/\//; /^await validateLicense({.*rootDir })/s/^/\/\//' "$MODULE"
|
||||
rm -f "$MODULE.bak"
|
||||
echo "✅ module.mjs 已屏蔽"
|
||||
fi
|
||||
|
||||
# 2. 直接“替换函数” fake 200
|
||||
SHARED="node_modules/@nuxt/ui-pro/dist/shared"
|
||||
JS=$(find "$SHARED" -maxdepth 1 -name 'ui-pro.*.mjs' | head -n1)
|
||||
[[ -z $JS || ! -f $JS ]] && { echo "⚠️ ui-pro.*.mjs 未找到"; exit 0; }
|
||||
|
||||
cat <<'EOF' > tmp_func.mjs
|
||||
async function validateLicense(opts) {
|
||||
/* --- patched --- */
|
||||
return { status: 200 }
|
||||
}
|
||||
EOF
|
||||
|
||||
sed -i.bak '/^async function validateLicense[^(]*(/,/^\}$/c\
|
||||
async function validateLicense(opts) {\
|
||||
/* --- patched --- */\
|
||||
return { status: 200 }\
|
||||
}\
|
||||
' "$JS"
|
||||
rm -f "$JS.bak" tmp_func.mjs
|
||||
|
||||
echo "✅ $JS 已 mock 完成"
|
||||
echo "🎉 License ⛔ Done!"
|
95
pnpm-lock.yaml
generated
95
pnpm-lock.yaml
generated
@@ -11,15 +11,12 @@ importers:
|
||||
|
||||
.:
|
||||
dependencies:
|
||||
'@iconify-json/lucide':
|
||||
specifier: ^1.2.57
|
||||
version: 1.2.57
|
||||
'@iconify-json/simple-icons':
|
||||
specifier: ^1.2.43
|
||||
version: 1.2.43
|
||||
'@iconify-json/vscode-icons':
|
||||
specifier: ^1.2.23
|
||||
version: 1.2.23
|
||||
'@iconify/utils':
|
||||
specifier: ^2.3.0
|
||||
version: 2.3.0
|
||||
'@nuxt/content':
|
||||
specifier: ^3.6.3
|
||||
version: 3.6.3(better-sqlite3@12.2.0)(magicast@0.3.5)(vue-component-type-helpers@2.2.10)
|
||||
@@ -41,16 +38,40 @@ importers:
|
||||
nuxt-og-image:
|
||||
specifier: ^5.1.9
|
||||
version: 5.1.9(@unhead/vue@2.0.12(vue@3.5.17(typescript@5.8.3)))(magicast@0.3.5)(unstorage@1.16.1(@netlify/blobs@9.1.2)(db0@0.3.2(better-sqlite3@12.2.0))(ioredis@5.6.1))(vite@7.0.6(@types/node@24.0.7)(jiti@2.4.2)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.0))(vue@3.5.17(typescript@5.8.3))
|
||||
'{collection_name}':
|
||||
specifier: link:@iconify-json/{collection_name}
|
||||
version: link:@iconify-json/{collection_name}
|
||||
devDependencies:
|
||||
'@iconify-json/lucide':
|
||||
specifier: ^1.2.57
|
||||
version: 1.2.57
|
||||
'@iconify-json/simple-icons':
|
||||
specifier: ^1.2.43
|
||||
version: 1.2.43
|
||||
'@nuxt/eslint':
|
||||
specifier: ^1.5.2
|
||||
version: 1.5.2(@vue/compiler-sfc@3.5.17)(eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)))(eslint@9.31.0(jiti@2.4.2))(magicast@0.3.5)(typescript@5.8.3)(vite@7.0.6(@types/node@24.0.7)(jiti@2.4.2)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.0))
|
||||
'@nuxt/fonts':
|
||||
specifier: ^0.11.4
|
||||
version: 0.11.4(@netlify/blobs@9.1.2)(db0@0.3.2(better-sqlite3@12.2.0))(ioredis@5.6.1)(magicast@0.3.5)(vite@7.0.6(@types/node@24.0.7)(jiti@2.4.2)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.0))
|
||||
'@nuxt/icon':
|
||||
specifier: ^1.15.0
|
||||
version: 1.15.0(magicast@0.3.5)(vite@7.0.6(@types/node@24.0.7)(jiti@2.4.2)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.0))(vue@3.5.17(typescript@5.8.3))
|
||||
'@vueuse/core':
|
||||
specifier: ^13.5.0
|
||||
version: 13.5.0(vue@3.5.17(typescript@5.8.3))
|
||||
eslint:
|
||||
specifier: ^9.31.0
|
||||
version: 9.31.0(jiti@2.4.2)
|
||||
lucide:
|
||||
specifier: ^0.526.0
|
||||
version: 0.526.0
|
||||
typescript:
|
||||
specifier: ^5.8.3
|
||||
version: 5.8.3
|
||||
vue:
|
||||
specifier: ^3.5.17
|
||||
version: 3.5.17(typescript@5.8.3)
|
||||
vue-tsc:
|
||||
specifier: ^3.0.1
|
||||
version: 3.0.1(typescript@5.8.3)
|
||||
@@ -1165,36 +1186,42 @@ packages:
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-minify/binding-linux-arm64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-GWa6MyEIwrDfEruj9SmIi/eG0XyEPSSupbltCL2k/cYgb+aUl1lT3sJLbOlKZqBbTzpuouAd+CkDqz+8UH/0qA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-minify/binding-linux-riscv64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-Wj1h95rGfMMVu0NMBNzo56WaB+z/mBVFRF4ij4Dbf2oBy4o3qDe2Q5Doa5U5c1k/uJbsM1X/mV7vqqgkHdORBA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-minify/binding-linux-s390x-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-xTIGeZZoOfa7c4FU+1OcZTk73W/0YD2m3Zwg4p0Wtch+0Z6VRyu/7CENjBXpCRkWF4C8sgvl6d8ZKOzF5wU+Dw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [s390x]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-minify/binding-linux-x64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-YkgfAVmdtPMqJO/elfYBstnwGjD2P0SJwAs02c84/1JKRemrjSKqSewg3ETFIpo43c6b0g9OtoWj47Wwpnka7A==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-minify/binding-linux-x64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-//A5mBFmxvV+JzqI2/94SFpEF+nev0I/urXwhYPe8qzCYTlnzwxodH0Yb6js+BgebqiPdYs6YEp5Q2C/6OgsbA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-minify/binding-wasm32-wasi@0.77.3':
|
||||
resolution: {integrity: sha512-4RCG1ZZyEyKIaZE2vXyFnVocDF1jIbfE/f5qbb1l0Wql2s4K5m1QDkKqPAVPuCmYiJ6+X2HyWus5QGqgnUKrXA==}
|
||||
@@ -1254,36 +1281,42 @@ packages:
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-parser/binding-linux-arm64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-1DNLBoJ6fsEdymD8Q4bo5zXkK0gw3ZMkEZ+F5w+7OrJOiQqzp8JzCQ6HRmSsJgjvaXzBvy95nCH2RegoeSN9JQ==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-parser/binding-linux-riscv64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-Lv0RQCHRKezkDzNPXoPuB7KTnK7ktw3OgyuZmNJKFGmZRFjlm8w+sEhAiE8XaCGqoOA6ivNIRSheUYeFNpAANA==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-parser/binding-linux-s390x-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-Q0sOdRzyhhUaATgtSR7lG23SvalRI9/7oVAWArU/8fEXCU9NsfKnpeuXsgT/N5lG4mgcbhUrnGzKaOzYcaatdQ==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [s390x]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-parser/binding-linux-x64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-ckcntxRTyPE+4nnCDnc9t4kiO1CSs5jOR7Qe7KLStkU9SPQkUZyjNP2aSaHre+iQha5xXABag9pamqb0dOY/PQ==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-parser/binding-linux-x64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-jrKtGQrjcocnWpUIxJ3qzb0WpLGcDZoQTen/CZ5QtuwFA5EudM5rAJMt+SQpYYL4UPK0CPm8G5ZWJXqernLe1A==}
|
||||
engines: {node: '>=20.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-parser/binding-wasm32-wasi@0.77.3':
|
||||
resolution: {integrity: sha512-76f53rr4Dz7A/FdUaM1NegHsQqT2w8CDBnRCptzapVA8humKA/tlJ24XfLvvr76JeT/OSKXorPyJ5xyGCa+yQg==}
|
||||
@@ -1346,36 +1379,42 @@ packages:
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-transform/binding-linux-arm64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-Fq72ARLt8iriotueGp7zaWjFpfYBpRS5WElmAtpZLIy/p1dNwBEDhVUIjAl+sU14y0odp+yaTRHM7ULnMYGZhQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-transform/binding-linux-riscv64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-jtq6JREdyZ6xdTFJGM5Gm068WCkoMwh3Fkm08rZ2TAu4qjISdkJvTQ1wiEDDz2F8sqAdmASDqxnE/2DJ6Z6Clg==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-transform/binding-linux-s390x-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-HQz++ZmT9xWU9KS24DE+8oVTeUPd/JQkbjL2uvr0+SWY3loPnLG3kFAOLE/xXgYG/0D24mZylbZUwhzYND4snw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [s390x]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-transform/binding-linux-x64-gnu@0.77.3':
|
||||
resolution: {integrity: sha512-GcuFDJf/pxrfd2hq+gBytlnr/hiPn36JxuPXP0nToNG4SNa1gHT8K0bDxZuN2UjmZlWmIC8ELDdpVcNeZON+lQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@oxc-transform/binding-linux-x64-musl@0.77.3':
|
||||
resolution: {integrity: sha512-unhkqVg/jb/kghmiMCto8AGKm3uBwH2P5/GwR8jZkBjSFX7ekNu6/8P5IuIs5KDiZXzcjww84vCzQVBlql6WkA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@oxc-transform/binding-wasm32-wasi@0.77.3':
|
||||
resolution: {integrity: sha512-FOGQzHLYpf1Yx0KpaqRz9cuXwvlTu8RprjL1NLpuUKT/D7O3SThm+qhFX3El9RFj67jrSCcHhlElYCJB2p794g==}
|
||||
@@ -1423,36 +1462,42 @@ packages:
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@parcel/watcher-linux-arm-musl@2.5.1':
|
||||
resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@parcel/watcher-linux-arm64-glibc@2.5.1':
|
||||
resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@parcel/watcher-linux-arm64-musl@2.5.1':
|
||||
resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@parcel/watcher-linux-x64-glibc@2.5.1':
|
||||
resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@parcel/watcher-linux-x64-musl@2.5.1':
|
||||
resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==}
|
||||
engines: {node: '>= 10.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@parcel/watcher-wasm@2.5.1':
|
||||
resolution: {integrity: sha512-RJxlQQLkaMMIuWRozy+z2vEqbaQlCuaCgVZIUCzQLYggY22LZbP5Y1+ia+FD724Ids9e+XIyOLXLrLgQSHIthw==}
|
||||
@@ -1533,24 +1578,28 @@ packages:
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@resvg/resvg-js-linux-arm64-musl@2.6.2':
|
||||
resolution: {integrity: sha512-3h3dLPWNgSsD4lQBJPb4f+kvdOSJHa5PjTYVsWHxLUzH4IFTJUAnmuWpw4KqyQ3NA5QCyhw4TWgxk3jRkQxEKg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@resvg/resvg-js-linux-x64-gnu@2.6.2':
|
||||
resolution: {integrity: sha512-IVUe+ckIerA7xMZ50duAZzwf1U7khQe2E0QpUxu5MBJNao5RqC0zwV/Zm965vw6D3gGFUl7j4m+oJjubBVoftw==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@resvg/resvg-js-linux-x64-musl@2.6.2':
|
||||
resolution: {integrity: sha512-UOf83vqTzoYQO9SZ0fPl2ZIFtNIz/Rr/y+7X8XRX1ZnBYsQ/tTb+cj9TE+KHOdmlTFBxhYzVkP2lRByCzqi4jQ==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@resvg/resvg-js-win32-arm64-msvc@2.6.2':
|
||||
resolution: {integrity: sha512-7C/RSgCa+7vqZ7qAbItfiaAWhyRSoD4l4BQAbVDqRRsRgY+S+hgS3in0Rxr7IorKUpGE69X48q6/nOAuTJQxeQ==}
|
||||
@@ -1690,56 +1739,67 @@ packages:
|
||||
resolution: {integrity: sha512-RkdOTu2jK7brlu+ZwjMIZfdV2sSYHK2qR08FUWcIoqJC2eywHbXr0L8T/pONFwkGukQqERDheaGTeedG+rra6Q==}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-arm-musleabihf@4.45.1':
|
||||
resolution: {integrity: sha512-3kJ8pgfBt6CIIr1o+HQA7OZ9mp/zDk3ctekGl9qn/pRBgrRgfwiffaUmqioUGN9hv0OHv2gxmvdKOkARCtRb8Q==}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@rollup/rollup-linux-arm64-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-k3dOKCfIVixWjG7OXTCOmDfJj3vbdhN0QYEqB+OuGArOChek22hn7Uy5A/gTDNAcCy5v2YcXRJ/Qcnm4/ma1xw==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-arm64-musl@4.45.1':
|
||||
resolution: {integrity: sha512-PmI1vxQetnM58ZmDFl9/Uk2lpBBby6B6rF4muJc65uZbxCs0EA7hhKCk2PKlmZKuyVSHAyIw3+/SiuMLxKxWog==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@rollup/rollup-linux-loongarch64-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-9UmI0VzGmNJ28ibHW2GpE2nF0PBQqsyiS4kcJ5vK+wuwGnV5RlqdczVocDSUfGX/Na7/XINRVoUgJyFIgipoRg==}
|
||||
cpu: [loong64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-powerpc64le-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-7nR2KY8oEOUTD3pBAxIBBbZr0U7U+R9HDTPNy+5nVVHDXI4ikYniH1oxQz9VoB5PbBU1CZuDGHkLJkd3zLMWsg==}
|
||||
cpu: [ppc64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-riscv64-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-nlcl3jgUultKROfZijKjRQLUu9Ma0PeNv/VFHkZiKbXTBQXhpytS8CIj5/NfBeECZtY2FJQubm6ltIxm/ftxpw==}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-riscv64-musl@4.45.1':
|
||||
resolution: {integrity: sha512-HJV65KLS51rW0VY6rvZkiieiBnurSzpzore1bMKAhunQiECPuxsROvyeaot/tcK3A3aGnI+qTHqisrpSgQrpgA==}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@rollup/rollup-linux-s390x-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-NITBOCv3Qqc6hhwFt7jLV78VEO/il4YcBzoMGGNxznLgRQf43VQDae0aAzKiBeEPIxnDrACiMgbqjuihx08OOw==}
|
||||
cpu: [s390x]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-x64-gnu@4.45.1':
|
||||
resolution: {integrity: sha512-+E/lYl6qu1zqgPEnTrs4WysQtvc/Sh4fC2nByfFExqgYrqkKWp1tWIbe+ELhixnenSpBbLXNi6vbEEJ8M7fiHw==}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@rollup/rollup-linux-x64-musl@4.45.1':
|
||||
resolution: {integrity: sha512-a6WIAp89p3kpNoYStITT9RbTbTnqarU7D8N8F2CV+4Cl9fwCOZraLVuVFvlpsW0SbIiYtEnhCZBPLoNdRkjQFw==}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@rollup/rollup-win32-arm64-msvc@4.45.1':
|
||||
resolution: {integrity: sha512-T5Bi/NS3fQiJeYdGvRpTAP5P02kqSOpqiopwhj0uaXB6nzs5JVi2XMJb18JUSKhCOX8+UE1UKQufyD6Or48dJg==}
|
||||
@@ -1864,24 +1924,28 @@ packages:
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@tailwindcss/oxide-linux-arm64-musl@4.1.11':
|
||||
resolution: {integrity: sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@tailwindcss/oxide-linux-x64-gnu@4.1.11':
|
||||
resolution: {integrity: sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@tailwindcss/oxide-linux-x64-musl@4.1.11':
|
||||
resolution: {integrity: sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q==}
|
||||
engines: {node: '>= 10'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@tailwindcss/oxide-wasm32-wasi@4.1.11':
|
||||
resolution: {integrity: sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g==}
|
||||
@@ -2118,41 +2182,49 @@ packages:
|
||||
resolution: {integrity: sha512-UYA0MA8ajkEDCFRQdng/FVx3F6szBvk3EPnkTTQuuO9lV1kPGuTB+V9TmbDxy5ikaEgyWKxa4CI3ySjklZ9lFA==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@unrs/resolver-binding-linux-arm64-musl@1.9.2':
|
||||
resolution: {integrity: sha512-P/CO3ODU9YJIHFqAkHbquKtFst0COxdphc8TKGL5yCX75GOiVpGqd1d15ahpqu8xXVsqP4MGFP2C3LRZnnL5MA==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@unrs/resolver-binding-linux-ppc64-gnu@1.9.2':
|
||||
resolution: {integrity: sha512-uKStFlOELBxBum2s1hODPtgJhY4NxYJE9pAeyBgNEzHgTqTiVBPjfTlPFJkfxyTjQEuxZbbJlJnMCrRgD7ubzw==}
|
||||
cpu: [ppc64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@unrs/resolver-binding-linux-riscv64-gnu@1.9.2':
|
||||
resolution: {integrity: sha512-LkbNnZlhINfY9gK30AHs26IIVEZ9PEl9qOScYdmY2o81imJYI4IMnJiW0vJVtXaDHvBvxeAgEy5CflwJFIl3tQ==}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@unrs/resolver-binding-linux-riscv64-musl@1.9.2':
|
||||
resolution: {integrity: sha512-vI+e6FzLyZHSLFNomPi+nT+qUWN4YSj8pFtQZSFTtmgFoxqB6NyjxSjAxEC1m93qn6hUXhIsh8WMp+fGgxCoRg==}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@unrs/resolver-binding-linux-s390x-gnu@1.9.2':
|
||||
resolution: {integrity: sha512-sSO4AlAYhSM2RAzBsRpahcJB1msc6uYLAtP6pesPbZtptF8OU/CbCPhSRW6cnYOGuVmEmWVW5xVboAqCnWTeHQ==}
|
||||
cpu: [s390x]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@unrs/resolver-binding-linux-x64-gnu@1.9.2':
|
||||
resolution: {integrity: sha512-jkSkwch0uPFva20Mdu8orbQjv2A3G88NExTN2oPTI1AJ+7mZfYW3cDCTyoH6OnctBKbBVeJCEqh0U02lTkqD5w==}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
'@unrs/resolver-binding-linux-x64-musl@1.9.2':
|
||||
resolution: {integrity: sha512-Uk64NoiTpQbkpl+bXsbeyOPRpUoMdcUqa+hDC1KhMW7aN1lfW8PBlBH4mJ3n3Y47dYE8qi0XTxy1mBACruYBaw==}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
'@unrs/resolver-binding-wasm32-wasi@1.9.2':
|
||||
resolution: {integrity: sha512-EpBGwkcjDicjR/ybC0g8wO5adPNdVuMrNalVgYcWi+gYtC1XYNuxe3rufcO7dA76OHGeVabcO6cSkPJKVcbCXQ==}
|
||||
@@ -4168,24 +4240,28 @@ packages:
|
||||
engines: {node: '>= 12.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
lightningcss-linux-arm64-musl@1.30.1:
|
||||
resolution: {integrity: sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==}
|
||||
engines: {node: '>= 12.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
lightningcss-linux-x64-gnu@1.30.1:
|
||||
resolution: {integrity: sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==}
|
||||
engines: {node: '>= 12.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [glibc]
|
||||
|
||||
lightningcss-linux-x64-musl@1.30.1:
|
||||
resolution: {integrity: sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==}
|
||||
engines: {node: '>= 12.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: [musl]
|
||||
|
||||
lightningcss-win32-arm64-msvc@1.30.1:
|
||||
resolution: {integrity: sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==}
|
||||
@@ -4267,6 +4343,9 @@ packages:
|
||||
lru-cache@5.1.1:
|
||||
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
|
||||
|
||||
lucide@0.526.0:
|
||||
resolution: {integrity: sha512-qcefehq2iyryHABeJNDRPxHRtdzWYxB0XVyWnxNjpmO9FtTupLBBc0Q3PFHGyjlmZUxDWr4q1nNepBIkjHeIbA==}
|
||||
|
||||
luxon@3.6.1:
|
||||
resolution: {integrity: sha512-tJLxrKJhO2ukZ5z0gyjY1zPh3Rh88Ej9P7jNrZiHMUXHae1yvI2imgOZtL1TO8TW6biMMKfTtAOoEJANgtWBMQ==}
|
||||
engines: {node: '>=12'}
|
||||
@@ -7429,7 +7508,7 @@ snapshots:
|
||||
consola: 3.4.2
|
||||
css-tree: 3.1.0
|
||||
defu: 6.1.4
|
||||
esbuild: 0.25.6
|
||||
esbuild: 0.25.8
|
||||
fontaine: 0.6.0
|
||||
h3: 1.15.3
|
||||
jiti: 2.4.2
|
||||
@@ -10994,6 +11073,8 @@ snapshots:
|
||||
dependencies:
|
||||
yallist: 3.1.1
|
||||
|
||||
lucide@0.526.0: {}
|
||||
|
||||
luxon@3.6.1: {}
|
||||
|
||||
magic-regexp@0.10.0:
|
||||
|
Reference in New Issue
Block a user