mirror of
https://github.com/ArthurDanjou/ui.git
synced 2026-02-01 12:47:57 +01:00
feat(theme)!: migrate from heroicons to lucide (#2540)
Co-authored-by: Benjamin Canac <canacb1@gmail.com>
This commit is contained in:
@@ -64,7 +64,7 @@ function onComponentLoaded() {
|
|||||||
const tabs = computed(() => {
|
const tabs = computed(() => {
|
||||||
if (!component.value) return
|
if (!component.value) return
|
||||||
return [
|
return [
|
||||||
{ label: 'Props', slot: 'props', icon: 'i-heroicons-cog-6-tooth', disabled: !component.value.meta?.props?.length }
|
{ label: 'Props', slot: 'props', icon: 'i-lucide-settings', disabled: !component.value.meta?.props?.length }
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -93,7 +93,7 @@ const isDark = computed({
|
|||||||
<div v-if="status === 'pending' || error || !component || !components?.length">
|
<div v-if="status === 'pending' || error || !component || !components?.length">
|
||||||
<div v-if="error" class="flex flex-col justify-center items-center h-screen w-screen text-center text-[var(--ui-color-error-500)]">
|
<div v-if="error" class="flex flex-col justify-center items-center h-screen w-screen text-center text-[var(--ui-color-error-500)]">
|
||||||
<UILogo class="h-8" />
|
<UILogo class="h-8" />
|
||||||
<UIcon name="i-heroicons-exclamation-circle" size="20" class="mt-2" />
|
<UIcon name="i-lucide-circle-alert" size="20" class="mt-2" />
|
||||||
<p>
|
<p>
|
||||||
{{ (error.data as any)?.error ?? 'Unexpected error' }}
|
{{ (error.data as any)?.error ?? 'Unexpected error' }}
|
||||||
</p>
|
</p>
|
||||||
@@ -111,7 +111,7 @@ const isDark = computed({
|
|||||||
:items="components"
|
:items="components"
|
||||||
placeholder="Search component..."
|
placeholder="Search component..."
|
||||||
class="top-0 translate-y-0 w-full mx-2"
|
class="top-0 translate-y-0 w-full mx-2"
|
||||||
icon="i-heroicons-magnifying-glass"
|
icon="i-lucide-search"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div class="absolute top-[49px] bottom-0 inset-x-0 grid xl:grid-cols-8 grid-cols-4 bg-[var(--ui-bg)]">
|
<div class="absolute top-[49px] bottom-0 inset-x-0 grid xl:grid-cols-8 grid-cols-4 bg-[var(--ui-bg)]">
|
||||||
@@ -127,7 +127,7 @@ const isDark = computed({
|
|||||||
<ComponentPreview :component="component" :props="componentProps" class="h-full" />
|
<ComponentPreview :component="component" :props="componentProps" class="h-full" />
|
||||||
<div class="flex gap-2 absolute top-1 right-2">
|
<div class="flex gap-2 absolute top-1 right-2">
|
||||||
<UButton
|
<UButton
|
||||||
:icon="isDark ? 'i-heroicons-moon-20-solid' : 'i-heroicons-sun-20-solid'"
|
:icon="isDark ? 'i-lucide-moon' : 'i-lucide-sun'"
|
||||||
variant="ghost"
|
variant="ghost"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
@click="isDark = !isDark"
|
@click="isDark = !isDark"
|
||||||
@@ -136,7 +136,7 @@ const isDark = computed({
|
|||||||
v-if="component"
|
v-if="component"
|
||||||
variant="ghost"
|
variant="ghost"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
icon="i-heroicons-arrow-top-right-on-square"
|
icon="i-lucide-external-link"
|
||||||
@click="openDocs()"
|
@click="openDocs()"
|
||||||
>
|
>
|
||||||
Open docs
|
Open docs
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ onMounted(() => {
|
|||||||
class="bg-[var(--ui-bg)] group w-full flex justify-center my-1 border-t border-[var(--ui-border)] rounded-t-none"
|
class="bg-[var(--ui-bg)] group w-full flex justify-center my-1 border-t border-[var(--ui-border)] rounded-t-none"
|
||||||
variant="link"
|
variant="link"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
trailing-icon="i-heroicons-chevron-down"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
:data-state="collapsed ? 'closed' : 'open'"
|
:data-state="collapsed ? 'closed' : 'open'"
|
||||||
:ui="{ trailingIcon: 'transition group-data-[state=open]:rotate-180' }"
|
:ui="{ trailingIcon: 'transition group-data-[state=open]:rotate-180' }"
|
||||||
@click="collapsed = !collapsed"
|
@click="collapsed = !collapsed"
|
||||||
|
|||||||
@@ -118,7 +118,7 @@ const previewUrl = computed(() => {
|
|||||||
@load="onRendererReady"
|
@load="onRendererReady"
|
||||||
/>
|
/>
|
||||||
<div v-if="!rendererVisible" class="grow w-full flex justify-center items-center px-8">
|
<div v-if="!rendererVisible" class="grow w-full flex justify-center items-center px-8">
|
||||||
<UAlert color="error" variant="subtle" title="Component preview not found" icon="i-heroicons-exclamation-circle">
|
<UAlert color="error" variant="subtle" title="Component preview not found" icon="i-lucide-circle-alert">
|
||||||
<template #description>
|
<template #description>
|
||||||
<p>Ensure your <code>app.vue</code> file includes a <code><NuxtPage /></code> component, as the component preview is mounted as a page. </p>
|
<p>Ensure your <code>app.vue</code> file includes a <code><NuxtPage /></code> component, as the component preview is mounted as a page. </p>
|
||||||
</template>
|
</template>
|
||||||
@@ -130,7 +130,7 @@ const previewUrl = computed(() => {
|
|||||||
<UButton
|
<UButton
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="link"
|
variant="link"
|
||||||
:icon="copied ? 'i-heroicons-clipboard-document-check' : 'i-heroicons-clipboard-document'"
|
:icon="copied ? 'i-lucide-clipboard-check' : 'i-lucide-clipboard'"
|
||||||
class="absolute top-6 right-6"
|
class="absolute top-6 right-6"
|
||||||
@click="copy(formattedCode)"
|
@click="copy(formattedCode)"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -47,12 +47,12 @@ function addArrayItem() {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<UPopover>
|
<UPopover>
|
||||||
<UButton variant="ghost" color="neutral" icon="i-heroicons-ellipsis-vertical" class="absolute top-4 right-1" />
|
<UButton variant="ghost" color="neutral" icon="i-lucide-ellipsis-vertical" class="absolute top-4 right-1" />
|
||||||
<template #content>
|
<template #content>
|
||||||
<UButton
|
<UButton
|
||||||
variant="ghost"
|
variant="ghost"
|
||||||
color="error"
|
color="error"
|
||||||
icon="i-heroicons-trash"
|
icon="i-lucide-trash"
|
||||||
block
|
block
|
||||||
@click="removeArrayItem(index)"
|
@click="removeArrayItem(index)"
|
||||||
>
|
>
|
||||||
@@ -63,7 +63,7 @@ function addArrayItem() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<UButton
|
<UButton
|
||||||
icon="i-heroicons-plus"
|
icon="i-lucide-plus"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="ghost"
|
variant="ghost"
|
||||||
block
|
block
|
||||||
|
|||||||
@@ -23,27 +23,27 @@ const searchTerm = ref('')
|
|||||||
const links = computed(() => {
|
const links = computed(() => {
|
||||||
return [{
|
return [{
|
||||||
label: 'Docs',
|
label: 'Docs',
|
||||||
icon: 'i-heroicons-book-open',
|
icon: 'i-lucide-book-open',
|
||||||
to: '/getting-started',
|
to: '/getting-started',
|
||||||
active: route.path.startsWith('/getting-started') || route.path.startsWith('/components')
|
active: route.path.startsWith('/getting-started') || route.path.startsWith('/components')
|
||||||
}, ...(navigation.value?.find(item => item.path === '/pro')
|
}, ...(navigation.value?.find(item => item.path === '/pro')
|
||||||
? [{
|
? [{
|
||||||
label: 'Pro',
|
label: 'Pro',
|
||||||
icon: 'i-heroicons-square-3-stack-3d',
|
icon: 'i-lucide-layers-3',
|
||||||
to: '/pro',
|
to: '/pro',
|
||||||
active: route.path.startsWith('/pro/getting-started') || route.path.startsWith('/pro/components') || route.path.startsWith('/pro/prose')
|
active: route.path.startsWith('/pro/getting-started') || route.path.startsWith('/pro/components') || route.path.startsWith('/pro/prose')
|
||||||
}, {
|
}, {
|
||||||
label: 'Pricing',
|
label: 'Pricing',
|
||||||
icon: 'i-heroicons-credit-card',
|
icon: 'i-lucide-credit-card',
|
||||||
to: '/pro/pricing'
|
to: '/pro/pricing'
|
||||||
}, {
|
}, {
|
||||||
label: 'Templates',
|
label: 'Templates',
|
||||||
icon: 'i-heroicons-computer-desktop',
|
icon: 'i-lucide-monitor',
|
||||||
to: '/pro/templates'
|
to: '/pro/templates'
|
||||||
}]
|
}]
|
||||||
: []), {
|
: []), {
|
||||||
label: 'Releases',
|
label: 'Releases',
|
||||||
icon: 'i-heroicons-rocket-launch',
|
icon: 'i-lucide-rocket',
|
||||||
to: '/releases'
|
to: '/releases'
|
||||||
}].filter(Boolean)
|
}].filter(Boolean)
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<UBanner icon="i-heroicons-wrench-screwdriver" :actions="[{ label: 'Go to Nuxt UI v2', to: 'https://ui.nuxt.com', trailingIcon: 'i-heroicons-arrow-right-20-solid' }]" :close="false">
|
<UBanner icon="i-lucide-wrench" :actions="[{ label: 'Go to Nuxt UI v2', to: 'https://ui.nuxt.com', trailingIcon: 'i-lucide-arrow-right' }]" :close="false">
|
||||||
<template #title>
|
<template #title>
|
||||||
You're looking at the documentation for <span class="font-semibold">Nuxt UI v3</span>!
|
You're looking at the documentation for <span class="font-semibold">Nuxt UI v3</span>!
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -2,15 +2,15 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Icons',
|
label: 'Icons',
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Colors',
|
label: 'Colors',
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -2,15 +2,15 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Icons',
|
label: 'Icons',
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Colors',
|
label: 'Colors',
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -2,18 +2,18 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Icons',
|
label: 'Icons',
|
||||||
icon: 'i-heroicons-face-smile',
|
icon: 'i-lucide-smile',
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Colors',
|
label: 'Colors',
|
||||||
icon: 'i-heroicons-swatch',
|
icon: 'i-lucide-swatch-book',
|
||||||
slot: 'colors',
|
slot: 'colors',
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent',
|
icon: 'i-lucide-box',
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -2,17 +2,17 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Icons',
|
label: 'Icons',
|
||||||
icon: 'i-heroicons-face-smile',
|
icon: 'i-lucide-smile',
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Colors',
|
label: 'Colors',
|
||||||
icon: 'i-heroicons-swatch',
|
icon: 'i-lucide-swatch-book',
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent',
|
icon: 'i-lucide-box',
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ const items = [{
|
|||||||
to: '/'
|
to: '/'
|
||||||
}, {
|
}, {
|
||||||
slot: 'dropdown',
|
slot: 'dropdown',
|
||||||
icon: 'i-heroicons-ellipsis-horizontal',
|
icon: 'i-lucide-ellipsis',
|
||||||
children: [{
|
children: [{
|
||||||
label: 'Documentation'
|
label: 'Documentation'
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Team',
|
label: 'Team',
|
||||||
icon: 'i-heroicons-users'
|
icon: 'i-lucide-users'
|
||||||
}, {
|
}, {
|
||||||
label: 'Invite users',
|
label: 'Invite users',
|
||||||
icon: 'i-heroicons-user-plus',
|
icon: 'i-lucide-user-plus',
|
||||||
children: [{
|
children: [{
|
||||||
label: 'Invite by email',
|
label: 'Invite by email',
|
||||||
icon: 'i-heroicons-paper-airplane'
|
icon: 'i-lucide-send-horizontal'
|
||||||
}, {
|
}, {
|
||||||
label: 'Invite by link',
|
label: 'Invite by link',
|
||||||
icon: 'i-heroicons-link'
|
icon: 'i-lucide-link'
|
||||||
}]
|
}]
|
||||||
}, {
|
}, {
|
||||||
label: 'New team',
|
label: 'New team',
|
||||||
icon: 'i-heroicons-plus'
|
icon: 'i-lucide-plus'
|
||||||
}]
|
}]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ const items = [{
|
|||||||
<UButton
|
<UButton
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="outline"
|
variant="outline"
|
||||||
icon="i-heroicons-chevron-down-20-solid"
|
icon="i-lucide-chevron-down"
|
||||||
/>
|
/>
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</UButtonGroup>
|
</UButtonGroup>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<UButton
|
<UButton
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
icon="i-heroicons-clipboard-document"
|
icon="i-lucide-clipboard"
|
||||||
/>
|
/>
|
||||||
</UTooltip>
|
</UTooltip>
|
||||||
</UButtonGroup>
|
</UButtonGroup>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
label="Open"
|
label="Open"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
trailing-icon="i-heroicons-chevron-down-20-solid"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
:ui="{
|
:ui="{
|
||||||
trailingIcon: 'group-data-[state=open]:rotate-180 transition-transform duration-200'
|
trailingIcon: 'group-data-[state=open]:rotate-180 transition-transform duration-200'
|
||||||
}"
|
}"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ defineShortcuts({
|
|||||||
label="Open"
|
label="Open"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
trailing-icon="i-heroicons-chevron-down-20-solid"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
block
|
block
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
|||||||
@@ -4,22 +4,22 @@ const groups = [{
|
|||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
label: 'Profile',
|
label: 'Profile',
|
||||||
icon: 'i-heroicons-user',
|
icon: 'i-lucide-user',
|
||||||
kbds: ['meta', 'P']
|
kbds: ['meta', 'P']
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Billing',
|
label: 'Billing',
|
||||||
icon: 'i-heroicons-credit-card',
|
icon: 'i-lucide-credit-card',
|
||||||
kbds: ['meta', 'B'],
|
kbds: ['meta', 'B'],
|
||||||
slot: 'billing'
|
slot: 'billing'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Notifications',
|
label: 'Notifications',
|
||||||
icon: 'i-heroicons-bell'
|
icon: 'i-lucide-bell'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Security',
|
label: 'Security',
|
||||||
icon: 'i-heroicons-lock-closed'
|
icon: 'i-lucide-lock'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ const users = [
|
|||||||
label="Search users..."
|
label="Search users..."
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
icon="i-heroicons-magnifying-glass"
|
icon="i-lucide-search"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<template #content>
|
<template #content>
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ const groups = ref([
|
|||||||
{
|
{
|
||||||
label: 'Add new file',
|
label: 'Add new file',
|
||||||
suffix: 'Create a new file in the current directory or workspace.',
|
suffix: 'Create a new file in the current directory or workspace.',
|
||||||
icon: 'i-heroicons-document-plus',
|
icon: 'i-lucide-file-plus',
|
||||||
kbds: [
|
kbds: [
|
||||||
'meta',
|
'meta',
|
||||||
'N'
|
'N'
|
||||||
@@ -96,7 +96,7 @@ const groups = ref([
|
|||||||
{
|
{
|
||||||
label: 'Add new folder',
|
label: 'Add new folder',
|
||||||
suffix: 'Create a new folder in the current directory or workspace.',
|
suffix: 'Create a new folder in the current directory or workspace.',
|
||||||
icon: 'i-heroicons-folder-plus',
|
icon: 'i-lucide-folder-plus',
|
||||||
kbds: [
|
kbds: [
|
||||||
'meta',
|
'meta',
|
||||||
'F'
|
'F'
|
||||||
@@ -108,7 +108,7 @@ const groups = ref([
|
|||||||
{
|
{
|
||||||
label: 'Add hashtag',
|
label: 'Add hashtag',
|
||||||
suffix: 'Add a hashtag to the current item.',
|
suffix: 'Add a hashtag to the current item.',
|
||||||
icon: 'i-heroicons-hashtag',
|
icon: 'i-lucide-hash',
|
||||||
kbds: [
|
kbds: [
|
||||||
'meta',
|
'meta',
|
||||||
'H'
|
'H'
|
||||||
@@ -120,7 +120,7 @@ const groups = ref([
|
|||||||
{
|
{
|
||||||
label: 'Add label',
|
label: 'Add label',
|
||||||
suffix: 'Add a label to the current item.',
|
suffix: 'Add a label to the current item.',
|
||||||
icon: 'i-heroicons-tag',
|
icon: 'i-lucide-tag',
|
||||||
kbds: [
|
kbds: [
|
||||||
'meta',
|
'meta',
|
||||||
'L'
|
'L'
|
||||||
|
|||||||
@@ -3,22 +3,22 @@ const items = [
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
label: 'View',
|
label: 'View',
|
||||||
icon: 'i-heroicons-eye'
|
icon: 'i-lucide-eye'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Copy',
|
label: 'Copy',
|
||||||
icon: 'i-heroicons-document-duplicate'
|
icon: 'i-lucide-copy'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Edit',
|
label: 'Edit',
|
||||||
icon: 'i-heroicons-pencil'
|
icon: 'i-lucide-pencil'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
label: 'Delete',
|
label: 'Delete',
|
||||||
color: 'error' as const,
|
color: 'error' as const,
|
||||||
icon: 'i-heroicons-trash'
|
icon: 'i-lucide-trash'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ const items = [{
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template #refresh-trailing>
|
<template #refresh-trailing>
|
||||||
<UIcon v-if="loading" name="i-heroicons-arrow-path-20-solid" class="shrink-0 size-5 text-[var(--ui-primary)] animate-spin" />
|
<UIcon v-if="loading" name="i-lucide-refresh-ccw" class="shrink-0 size-5 text-[var(--ui-primary)] animate-spin" />
|
||||||
</template>
|
</template>
|
||||||
</UContextMenu>
|
</UContextMenu>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ const groups = computed(() => [{
|
|||||||
label="Search users..."
|
label="Search users..."
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
icon="i-heroicons-magnifying-glass"
|
icon="i-lucide-search"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<template #content>
|
<template #content>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ const open = ref(false)
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDrawer v-model:open="open" title="Drawer with footer" description="This is useful when you want a form in a Drawer." :ui="{ container: 'max-w-xl mx-auto' }">
|
<UDrawer v-model:open="open" title="Drawer with footer" description="This is useful when you want a form in a Drawer." :ui="{ container: 'max-w-xl mx-auto' }">
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
<template #body>
|
<template #body>
|
||||||
<Placeholder class="h-48" />
|
<Placeholder class="h-48" />
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ defineShortcuts({
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDrawer v-model:open="open">
|
<UDrawer v-model:open="open">
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
<template #content>
|
<template #content>
|
||||||
<Placeholder class="h-48 m-4" />
|
<Placeholder class="h-48 m-4" />
|
||||||
|
|||||||
@@ -5,13 +5,13 @@ const showDownloads = ref(false)
|
|||||||
|
|
||||||
const items = computed(() => [{
|
const items = computed(() => [{
|
||||||
label: 'Interface',
|
label: 'Interface',
|
||||||
icon: 'i-heroicons-window',
|
icon: 'i-lucide-app-window',
|
||||||
type: 'label' as const
|
type: 'label' as const
|
||||||
}, {
|
}, {
|
||||||
type: 'separator' as const
|
type: 'separator' as const
|
||||||
}, {
|
}, {
|
||||||
label: 'Show Bookmarks',
|
label: 'Show Bookmarks',
|
||||||
icon: 'i-heroicons-bookmark',
|
icon: 'i-lucide-bookmark',
|
||||||
type: 'checkbox' as const,
|
type: 'checkbox' as const,
|
||||||
checked: showBookmarks.value,
|
checked: showBookmarks.value,
|
||||||
onUpdateChecked(checked: boolean) {
|
onUpdateChecked(checked: boolean) {
|
||||||
@@ -22,7 +22,7 @@ const items = computed(() => [{
|
|||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
label: 'Show History',
|
label: 'Show History',
|
||||||
icon: 'i-heroicons-clock',
|
icon: 'i-lucide-clock',
|
||||||
type: 'checkbox' as const,
|
type: 'checkbox' as const,
|
||||||
checked: showHistory.value,
|
checked: showHistory.value,
|
||||||
onUpdateChecked(checked: boolean) {
|
onUpdateChecked(checked: boolean) {
|
||||||
@@ -30,7 +30,7 @@ const items = computed(() => [{
|
|||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
label: 'Show Downloads',
|
label: 'Show Downloads',
|
||||||
icon: 'i-heroicons-arrow-down-on-square',
|
icon: 'i-lucide-download',
|
||||||
type: 'checkbox' as const,
|
type: 'checkbox' as const,
|
||||||
checked: showDownloads.value,
|
checked: showDownloads.value,
|
||||||
onUpdateChecked(checked: boolean) {
|
onUpdateChecked(checked: boolean) {
|
||||||
@@ -41,6 +41,6 @@ const items = computed(() => [{
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDropdownMenu :items="items" :content="{ align: 'start' }" class="w-48">
|
<UDropdownMenu :items="items" :content="{ align: 'start' }" class="w-48">
|
||||||
<UButton label="Open" color="neutral" variant="outline" icon="i-heroicons-bars-3" />
|
<UButton label="Open" color="neutral" variant="outline" icon="i-lucide-menu" />
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -3,22 +3,22 @@ const items = [
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
label: 'View',
|
label: 'View',
|
||||||
icon: 'i-heroicons-eye'
|
icon: 'i-lucide-eye'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Copy',
|
label: 'Copy',
|
||||||
icon: 'i-heroicons-document-duplicate'
|
icon: 'i-lucide-copy'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Edit',
|
label: 'Edit',
|
||||||
icon: 'i-heroicons-pencil'
|
icon: 'i-lucide-pencil'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
label: 'Delete',
|
label: 'Delete',
|
||||||
color: 'error' as const,
|
color: 'error' as const,
|
||||||
icon: 'i-heroicons-trash'
|
icon: 'i-lucide-trash'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
@@ -26,10 +26,10 @@ const items = [
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDropdownMenu :items="items" class="w-48">
|
<UDropdownMenu :items="items" class="w-48">
|
||||||
<UButton label="Open" color="neutral" variant="outline" icon="i-heroicons-bars-3" />
|
<UButton label="Open" color="neutral" variant="outline" icon="i-lucide-menu" />
|
||||||
|
|
||||||
<template #profile-trailing>
|
<template #profile-trailing>
|
||||||
<UIcon name="i-heroicons-check-badge" class="shrink-0 size-5 text-[var(--ui-primary)]" />
|
<UIcon name="i-lucide-badge-check" class="shrink-0 size-5 text-[var(--ui-primary)]" />
|
||||||
</template>
|
</template>
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,23 +1,23 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Profile',
|
label: 'Profile',
|
||||||
icon: 'i-heroicons-user',
|
icon: 'i-lucide-user',
|
||||||
slot: 'profile'
|
slot: 'profile'
|
||||||
}, {
|
}, {
|
||||||
label: 'Billing',
|
label: 'Billing',
|
||||||
icon: 'i-heroicons-credit-card'
|
icon: 'i-lucide-credit-card'
|
||||||
}, {
|
}, {
|
||||||
label: 'Settings',
|
label: 'Settings',
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
}]
|
}]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDropdownMenu :items="items" class="w-48">
|
<UDropdownMenu :items="items" class="w-48">
|
||||||
<UButton label="Open" color="neutral" variant="outline" icon="i-heroicons-bars-3" />
|
<UButton label="Open" color="neutral" variant="outline" icon="i-lucide-menu" />
|
||||||
|
|
||||||
<template #profile-trailing>
|
<template #profile-trailing>
|
||||||
<UIcon name="i-heroicons-check-badge" class="shrink-0 size-5 text-[var(--ui-primary)]" />
|
<UIcon name="i-lucide-badge-check" class="shrink-0 size-5 text-[var(--ui-primary)]" />
|
||||||
</template>
|
</template>
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -7,18 +7,18 @@ defineShortcuts({
|
|||||||
|
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Profile',
|
label: 'Profile',
|
||||||
icon: 'i-heroicons-user'
|
icon: 'i-lucide-user'
|
||||||
}, {
|
}, {
|
||||||
label: 'Billing',
|
label: 'Billing',
|
||||||
icon: 'i-heroicons-credit-card'
|
icon: 'i-lucide-credit-card'
|
||||||
}, {
|
}, {
|
||||||
label: 'Settings',
|
label: 'Settings',
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
}]
|
}]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UDropdownMenu v-model:open="open" :items="items" class="w-48">
|
<UDropdownMenu v-model:open="open" :items="items" class="w-48">
|
||||||
<UButton label="Open" color="neutral" variant="outline" icon="i-heroicons-bars-3" />
|
<UButton label="Open" color="neutral" variant="outline" icon="i-lucide-menu" />
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
<UInputMenu
|
<UInputMenu
|
||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
>
|
>
|
||||||
<template #leading="{ modelValue, ui }">
|
<template #leading="{ modelValue, ui }">
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
:filter="false"
|
:filter="false"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
>
|
>
|
||||||
<template #leading="{ modelValue, ui }">
|
<template #leading="{ modelValue, ui }">
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
:filter="['name', 'email']"
|
:filter="['name', 'email']"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
class="w-80"
|
class="w-80"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -3,22 +3,22 @@ const items = ref([
|
|||||||
{
|
{
|
||||||
label: 'Backlog',
|
label: 'Backlog',
|
||||||
value: 'backlog',
|
value: 'backlog',
|
||||||
icon: 'i-heroicons-question-mark-circle'
|
icon: 'i-lucide-circle-help'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Todo',
|
label: 'Todo',
|
||||||
value: 'todo',
|
value: 'todo',
|
||||||
icon: 'i-heroicons-plus-circle'
|
icon: 'i-lucide-circle-plus'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'In Progress',
|
label: 'In Progress',
|
||||||
value: 'in_progress',
|
value: 'in_progress',
|
||||||
icon: 'i-heroicons-arrow-up-circle'
|
icon: 'i-lucide-circle-arrow-up'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Done',
|
label: 'Done',
|
||||||
value: 'done',
|
value: 'done',
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
const value = ref(items.value[0])
|
const value = ref(items.value[0])
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ const value = ref('Click to clear')
|
|||||||
color="neutral"
|
color="neutral"
|
||||||
variant="link"
|
variant="link"
|
||||||
size="sm"
|
size="sm"
|
||||||
icon="i-heroicons-x-circle"
|
icon="i-lucide-circle-x"
|
||||||
aria-label="Clear input"
|
aria-label="Clear input"
|
||||||
@click="value = ''"
|
@click="value = ''"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -4,6 +4,6 @@ const email = ref('')
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UFormField label="Email" help="We won't share your email." required>
|
<UFormField label="Email" help="We won't share your email." required>
|
||||||
<UInput v-model="email" placeholder="Enter your email" icon="i-heroicons-at-symbol" />
|
<UInput v-model="email" placeholder="Enter your email" icon="i-lucide-at-sign" />
|
||||||
</UFormField>
|
</UFormField>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ const text = computed(() => {
|
|||||||
color="neutral"
|
color="neutral"
|
||||||
variant="link"
|
variant="link"
|
||||||
size="sm"
|
size="sm"
|
||||||
:icon="show ? 'i-heroicons-eye-slash' : 'i-heroicons-eye'"
|
:icon="show ? 'i-lucide-eye-off' : 'i-lucide-eye'"
|
||||||
aria-label="show ? 'Hide password' : 'Show password'"
|
aria-label="show ? 'Hide password' : 'Show password'"
|
||||||
:aria-pressed="show"
|
:aria-pressed="show"
|
||||||
aria-controls="password"
|
aria-controls="password"
|
||||||
@@ -79,7 +79,7 @@ const text = computed(() => {
|
|||||||
class="flex items-center gap-0.5"
|
class="flex items-center gap-0.5"
|
||||||
:class="req.met ? 'text-[var(--ui-success)]' : 'text-[var(--ui-text-muted)]'"
|
:class="req.met ? 'text-[var(--ui-success)]' : 'text-[var(--ui-text-muted)]'"
|
||||||
>
|
>
|
||||||
<UIcon :name="req.met ? 'i-heroicons-check-circle' : 'i-heroicons-x-circle'" class="size-4 shrink-0" />
|
<UIcon :name="req.met ? 'i-lucide-circle-check' : 'i-lucide-circle-x'" class="size-4 shrink-0" />
|
||||||
|
|
||||||
<span class="text-xs font-light">
|
<span class="text-xs font-light">
|
||||||
{{ req.text }}
|
{{ req.text }}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ const password = ref('password')
|
|||||||
color="neutral"
|
color="neutral"
|
||||||
variant="link"
|
variant="link"
|
||||||
size="sm"
|
size="sm"
|
||||||
:icon="show ? 'i-heroicons-eye-slash' : 'i-heroicons-eye'"
|
:icon="show ? 'i-lucide-eye-off' : 'i-lucide-eye'"
|
||||||
aria-label="show ? 'Hide password' : 'Show password'"
|
aria-label="show ? 'Hide password' : 'Show password'"
|
||||||
:aria-pressed="show"
|
:aria-pressed="show"
|
||||||
aria-controls="password"
|
aria-controls="password"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ const groups = computed(() => [{
|
|||||||
label="Search users..."
|
label="Search users..."
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
icon="i-heroicons-magnifying-glass"
|
icon="i-lucide-search"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<template #content>
|
<template #content>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Docs',
|
label: 'Docs',
|
||||||
icon: 'i-heroicons-book-open',
|
icon: 'i-lucide-book-open',
|
||||||
slot: 'docs',
|
slot: 'docs',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
@@ -21,7 +21,7 @@ const items = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent',
|
icon: 'i-lucide-box',
|
||||||
slot: 'components',
|
slot: 'components',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,17 +2,17 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Guide',
|
label: 'Guide',
|
||||||
icon: 'i-heroicons-book-open'
|
icon: 'i-lucide-book-open'
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Composables',
|
label: 'Composables',
|
||||||
icon: 'i-heroicons-circle-stack'
|
icon: 'i-lucide-database'
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent',
|
icon: 'i-lucide-box',
|
||||||
slot: 'components'
|
slot: 'components'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -2,93 +2,93 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Guide',
|
label: 'Guide',
|
||||||
icon: 'i-heroicons-book-open',
|
icon: 'i-lucide-book-open',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
label: 'Introduction',
|
label: 'Introduction',
|
||||||
description: 'Fully styled and customizable components for Nuxt.',
|
description: 'Fully styled and customizable components for Nuxt.',
|
||||||
icon: 'i-heroicons-home'
|
icon: 'i-lucide-house'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Installation',
|
label: 'Installation',
|
||||||
description: 'Learn how to install and configure Nuxt UI in your application.',
|
description: 'Learn how to install and configure Nuxt UI in your application.',
|
||||||
icon: 'i-heroicons-cloud-arrow-down'
|
icon: 'i-lucide-cloud-download'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Icons',
|
label: 'Icons',
|
||||||
icon: 'i-heroicons-face-smile',
|
icon: 'i-lucide-smile',
|
||||||
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Colors',
|
label: 'Colors',
|
||||||
icon: 'i-heroicons-swatch',
|
icon: 'i-lucide-swatch-book',
|
||||||
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Theme',
|
label: 'Theme',
|
||||||
icon: 'i-heroicons-cog',
|
icon: 'i-lucide-cog',
|
||||||
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Composables',
|
label: 'Composables',
|
||||||
icon: 'i-heroicons-circle-stack',
|
icon: 'i-lucide-database',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
label: 'defineShortcuts',
|
label: 'defineShortcuts',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Define shortcuts for your application.'
|
description: 'Define shortcuts for your application.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'useModal',
|
label: 'useModal',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a modal within your application.'
|
description: 'Display a modal within your application.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'useSlideover',
|
label: 'useSlideover',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a slideover within your application.'
|
description: 'Display a slideover within your application.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'useToast',
|
label: 'useToast',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a toast within your application.'
|
description: 'Display a toast within your application.'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-cube-transparent',
|
icon: 'i-lucide-box',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
label: 'Link',
|
label: 'Link',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Use NuxtLink with superpowers.'
|
description: 'Use NuxtLink with superpowers.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Modal',
|
label: 'Modal',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a modal within your application.'
|
description: 'Display a modal within your application.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'NavigationMenu',
|
label: 'NavigationMenu',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a list of links.'
|
description: 'Display a list of links.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Pagination',
|
label: 'Pagination',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a list of pages.'
|
description: 'Display a list of pages.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Popover',
|
label: 'Popover',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Display a non-modal dialog that floats around a trigger element.'
|
description: 'Display a non-modal dialog that floats around a trigger element.'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Progress',
|
label: 'Progress',
|
||||||
icon: 'i-heroicons-document-text',
|
icon: 'i-lucide-file-text',
|
||||||
description: 'Show a horizontal bar to indicate task progression.'
|
description: 'Show a horizontal bar to indicate task progression.'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ const label = ref([])
|
|||||||
<template>
|
<template>
|
||||||
<UPopover :content="{ side: 'right', align: 'start' }">
|
<UPopover :content="{ side: 'right', align: 'start' }">
|
||||||
<UButton
|
<UButton
|
||||||
icon="i-heroicons-tag"
|
icon="i-lucide-tag"
|
||||||
label="Select labels"
|
label="Select labels"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="subtle"
|
variant="subtle"
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
<USelectMenu
|
<USelectMenu
|
||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
class="w-48"
|
class="w-48"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
:filter="false"
|
:filter="false"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
class="w-48"
|
class="w-48"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const { data: users, status } = await useFetch('https://jsonplaceholder.typicode
|
|||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
:filter="['name', 'email']"
|
:filter="['name', 'email']"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
class="w-80"
|
class="w-80"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -3,22 +3,22 @@ const items = ref([
|
|||||||
{
|
{
|
||||||
label: 'Backlog',
|
label: 'Backlog',
|
||||||
value: 'backlog',
|
value: 'backlog',
|
||||||
icon: 'i-heroicons-question-mark-circle'
|
icon: 'i-lucide-circle-help'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Todo',
|
label: 'Todo',
|
||||||
value: 'todo',
|
value: 'todo',
|
||||||
icon: 'i-heroicons-plus-circle'
|
icon: 'i-lucide-circle-plus'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'In Progress',
|
label: 'In Progress',
|
||||||
value: 'in_progress',
|
value: 'in_progress',
|
||||||
icon: 'i-heroicons-arrow-up-circle'
|
icon: 'i-lucide-circle-arrow-up'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Done',
|
label: 'Done',
|
||||||
value: 'done',
|
value: 'done',
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
const value = ref(items.value[0])
|
const value = ref(items.value[0])
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ function getUserAvatar(value: string) {
|
|||||||
<USelect
|
<USelect
|
||||||
:items="users || []"
|
:items="users || []"
|
||||||
:loading="status === 'pending'"
|
:loading="status === 'pending'"
|
||||||
icon="i-heroicons-user"
|
icon="i-lucide-user"
|
||||||
placeholder="Select user"
|
placeholder="Select user"
|
||||||
class="w-48"
|
class="w-48"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -3,22 +3,22 @@ const items = ref([
|
|||||||
{
|
{
|
||||||
label: 'Backlog',
|
label: 'Backlog',
|
||||||
value: 'backlog',
|
value: 'backlog',
|
||||||
icon: 'i-heroicons-question-mark-circle'
|
icon: 'i-lucide-circle-help'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Todo',
|
label: 'Todo',
|
||||||
value: 'todo',
|
value: 'todo',
|
||||||
icon: 'i-heroicons-plus-circle'
|
icon: 'i-lucide-circle-plus'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'In Progress',
|
label: 'In Progress',
|
||||||
value: 'in_progress',
|
value: 'in_progress',
|
||||||
icon: 'i-heroicons-arrow-up-circle'
|
icon: 'i-lucide-circle-arrow-up'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Done',
|
label: 'Done',
|
||||||
value: 'done',
|
value: 'done',
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
const value = ref(items.value[0]?.value)
|
const value = ref(items.value[0]?.value)
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ function getHeader(column: Column<Payment>, label: string, position: 'left' | 'r
|
|||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
label,
|
label,
|
||||||
icon: isPinned ? 'i-heroicons-star-20-solid' : 'i-heroicons-star',
|
icon: isPinned ? 'i-lucide-pin-off' : 'i-lucide-pin',
|
||||||
class: '-mx-2.5',
|
class: '-mx-2.5',
|
||||||
onClick() {
|
onClick() {
|
||||||
column.pin(isPinned === position ? false : position)
|
column.pin(isPinned === position ? false : position)
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
label: 'Email',
|
label: 'Email',
|
||||||
icon: isSorted ? (isSorted === 'asc' ? 'i-heroicons-bars-arrow-up-20-solid' : 'i-heroicons-bars-arrow-down-20-solid') : 'i-heroicons-arrows-up-down-20-solid',
|
icon: isSorted ? (isSorted === 'asc' ? 'i-lucide-arrow-up-narrow-wide' : 'i-lucide-arrow-down-wide-narrow') : 'i-lucide-arrow-up-down',
|
||||||
class: '-mx-2.5',
|
class: '-mx-2.5',
|
||||||
onClick: () => column.toggleSorting(column.getIsSorted() === 'asc')
|
onClick: () => column.toggleSorting(column.getIsSorted() === 'asc')
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ function getHeader(column: Column<Payment>, label: string) {
|
|||||||
items: [{
|
items: [{
|
||||||
label: 'Asc',
|
label: 'Asc',
|
||||||
type: 'checkbox',
|
type: 'checkbox',
|
||||||
icon: 'i-heroicons-bars-arrow-up-20-solid',
|
icon: 'i-lucide-arrow-up-narrow-wide',
|
||||||
checked: isSorted === 'asc',
|
checked: isSorted === 'asc',
|
||||||
onSelect: () => {
|
onSelect: () => {
|
||||||
if (isSorted === 'asc') {
|
if (isSorted === 'asc') {
|
||||||
@@ -114,7 +114,7 @@ function getHeader(column: Column<Payment>, label: string) {
|
|||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
label: 'Desc',
|
label: 'Desc',
|
||||||
icon: 'i-heroicons-bars-arrow-down-20-solid',
|
icon: 'i-lucide-arrow-down-wide-narrow',
|
||||||
type: 'checkbox',
|
type: 'checkbox',
|
||||||
checked: isSorted === 'desc',
|
checked: isSorted === 'desc',
|
||||||
onSelect: () => {
|
onSelect: () => {
|
||||||
@@ -129,7 +129,7 @@ function getHeader(column: Column<Payment>, label: string) {
|
|||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
label,
|
label,
|
||||||
icon: isSorted ? (isSorted === 'asc' ? 'i-heroicons-bars-arrow-up-20-solid' : 'i-heroicons-bars-arrow-down-20-solid') : 'i-heroicons-arrows-up-down-20-solid',
|
icon: isSorted ? (isSorted === 'asc' ? 'i-lucide-arrow-up-narrow-wide' : 'i-lucide-arrow-down-wide-narrow') : 'i-lucide-arrow-up-down',
|
||||||
class: '-mx-2.5 data-[state=open]:bg-[var(--ui-bg-elevated)]'
|
class: '-mx-2.5 data-[state=open]:bg-[var(--ui-bg-elevated)]'
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ const columnVisibility = ref({
|
|||||||
label="Columns"
|
label="Columns"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="outline"
|
variant="outline"
|
||||||
trailing-icon="i-heroicons-chevron-down-20-solid"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
/>
|
/>
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
label: 'Email',
|
label: 'Email',
|
||||||
icon: isSorted ? (isSorted === 'asc' ? 'i-heroicons-bars-arrow-up-20-solid' : 'i-heroicons-bars-arrow-down-20-solid') : 'i-heroicons-arrows-up-down-20-solid',
|
icon: isSorted ? (isSorted === 'asc' ? 'i-lucide-arrow-up-narrow-wide' : 'i-lucide-arrow-down-wide-narrow') : 'i-lucide-arrow-up-down',
|
||||||
class: '-mx-2.5',
|
class: '-mx-2.5',
|
||||||
onClick: () => column.toggleSorting(column.getIsSorted() === 'asc')
|
onClick: () => column.toggleSorting(column.getIsSorted() === 'asc')
|
||||||
})
|
})
|
||||||
@@ -226,7 +226,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
toast.add({
|
toast.add({
|
||||||
title: 'Payment ID copied to clipboard!',
|
title: 'Payment ID copied to clipboard!',
|
||||||
color: 'success',
|
color: 'success',
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
@@ -248,7 +248,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
},
|
},
|
||||||
items
|
items
|
||||||
}, () => h(UButton, {
|
}, () => h(UButton, {
|
||||||
icon: 'i-heroicons-ellipsis-vertical-20-solid',
|
icon: 'i-lucide-ellipsis-vertical',
|
||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
class: 'ml-auto'
|
class: 'ml-auto'
|
||||||
@@ -293,7 +293,7 @@ function randomize() {
|
|||||||
label="Columns"
|
label="Columns"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
variant="outline"
|
variant="outline"
|
||||||
trailing-icon="i-heroicons-chevron-down-20-solid"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
class="ml-auto"
|
class="ml-auto"
|
||||||
/>
|
/>
|
||||||
</UDropdownMenu>
|
</UDropdownMenu>
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
},
|
},
|
||||||
items: getRowItems(row)
|
items: getRowItems(row)
|
||||||
}, () => h(UButton, {
|
}, () => h(UButton, {
|
||||||
icon: 'i-heroicons-ellipsis-vertical-20-solid',
|
icon: 'i-lucide-ellipsis-vertical',
|
||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
class: 'ml-auto'
|
class: 'ml-auto'
|
||||||
@@ -122,7 +122,7 @@ function getRowItems(row: Row<Payment>) {
|
|||||||
toast.add({
|
toast.add({
|
||||||
title: 'Payment ID copied to clipboard!',
|
title: 'Payment ID copied to clipboard!',
|
||||||
color: 'success',
|
color: 'success',
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ const columns: TableColumn<Payment>[] = [{
|
|||||||
cell: ({ row }) => h(UButton, {
|
cell: ({ row }) => h(UButton, {
|
||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'ghost',
|
variant: 'ghost',
|
||||||
icon: 'i-heroicons-chevron-down-20-solid',
|
icon: 'i-lucide-chevron-down',
|
||||||
square: true,
|
square: true,
|
||||||
ui: {
|
ui: {
|
||||||
leadingIcon: ['transition-transform', row.getIsExpanded() ? 'duration-200 rotate-180' : '']
|
leadingIcon: ['transition-transform', row.getIsExpanded() ? 'duration-200 rotate-180' : '']
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
const items = [
|
const items = [
|
||||||
{
|
{
|
||||||
label: 'Account',
|
label: 'Account',
|
||||||
icon: 'i-heroicons-user'
|
icon: 'i-lucide-user'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Password',
|
label: 'Password',
|
||||||
icon: 'i-heroicons-lock-closed'
|
icon: 'i-lucide-lock'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ const items = [
|
|||||||
{
|
{
|
||||||
label: 'Account',
|
label: 'Account',
|
||||||
description: 'Make changes to your account here. Click save when you\'re done.',
|
description: 'Make changes to your account here. Click save when you\'re done.',
|
||||||
icon: 'i-heroicons-user',
|
icon: 'i-lucide-user',
|
||||||
slot: 'account'
|
slot: 'account'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Password',
|
label: 'Password',
|
||||||
description: 'Change your password here. After saving, you\'ll be logged out.',
|
description: 'Change your password here. After saving, you\'ll be logged out.',
|
||||||
icon: 'i-heroicons-lock-closed',
|
icon: 'i-lucide-lock',
|
||||||
slot: 'password'
|
slot: 'password'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ function showToast() {
|
|||||||
title: 'Uh oh! Something went wrong.',
|
title: 'Uh oh! Something went wrong.',
|
||||||
description: props.description,
|
description: props.description,
|
||||||
actions: [{
|
actions: [{
|
||||||
icon: 'i-heroicons-arrow-path-20-solid',
|
icon: 'i-lucide-refresh-ccw',
|
||||||
label: 'Retry',
|
label: 'Retry',
|
||||||
color: 'neutral',
|
color: 'neutral',
|
||||||
variant: 'outline',
|
variant: 'outline',
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ function showToast() {
|
|||||||
toast.add({
|
toast.add({
|
||||||
title: 'Uh oh! Something went wrong.',
|
title: 'Uh oh! Something went wrong.',
|
||||||
description: 'There was a problem with your request.',
|
description: 'There was a problem with your request.',
|
||||||
icon: 'i-heroicons-wifi',
|
icon: 'i-lucide-wifi',
|
||||||
close: {
|
close: {
|
||||||
color: 'primary',
|
color: 'primary',
|
||||||
variant: 'outline',
|
variant: 'outline',
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ function showToast() {
|
|||||||
toast.add({
|
toast.add({
|
||||||
title: 'Uh oh! Something went wrong.',
|
title: 'Uh oh! Something went wrong.',
|
||||||
description: 'There was a problem with your request.',
|
description: 'There was a problem with your request.',
|
||||||
icon: 'i-heroicons-wifi',
|
icon: 'i-lucide-wifi',
|
||||||
color: props.color
|
color: props.color
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,11 +8,11 @@ function addToCalendar() {
|
|||||||
toast.add({
|
toast.add({
|
||||||
title: 'Event added to calendar',
|
title: 'Event added to calendar',
|
||||||
description: `This event is scheduled for ${formattedDate}.`,
|
description: `This event is scheduled for ${formattedDate}.`,
|
||||||
icon: 'i-heroicons-calendar-days'
|
icon: 'i-lucide-calendar-days'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<UButton label="Add to calendar" color="neutral" variant="outline" icon="i-heroicons-plus" @click="addToCalendar" />
|
<UButton label="Add to calendar" color="neutral" variant="outline" icon="i-lucide-plus" @click="addToCalendar" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<UPopover :ui="{ content: 'w-72 px-6 py-4 flex flex-col gap-4' }">
|
<UPopover :ui="{ content: 'w-72 px-6 py-4 flex flex-col gap-4' }">
|
||||||
<template #default="{ open }">
|
<template #default="{ open }">
|
||||||
<UButton
|
<UButton
|
||||||
icon="i-heroicons-swatch"
|
icon="i-lucide-swatch-book"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
:variant="open ? 'soft' : 'ghost'"
|
:variant="open ? 'soft' : 'ghost'"
|
||||||
square
|
square
|
||||||
|
|||||||
@@ -16,27 +16,27 @@ const { data: files } = await useAsyncData('files', () => queryCollectionSearchS
|
|||||||
const links = computed(() => {
|
const links = computed(() => {
|
||||||
return [{
|
return [{
|
||||||
label: 'Docs',
|
label: 'Docs',
|
||||||
icon: 'i-heroicons-book-open',
|
icon: 'i-lucide-book-open',
|
||||||
to: '/getting-started',
|
to: '/getting-started',
|
||||||
active: route.path.startsWith('/getting-started') || route.path.startsWith('/components')
|
active: route.path.startsWith('/getting-started') || route.path.startsWith('/components')
|
||||||
}, ...(navigation.value?.find(item => item.path === '/pro')
|
}, ...(navigation.value?.find(item => item.path === '/pro')
|
||||||
? [{
|
? [{
|
||||||
label: 'Pro',
|
label: 'Pro',
|
||||||
icon: 'i-heroicons-square-3-stack-3d',
|
icon: 'i-lucide-layers-3',
|
||||||
to: '/pro',
|
to: '/pro',
|
||||||
active: route.path.startsWith('/pro/getting-started') || route.path.startsWith('/pro/components') || route.path.startsWith('/pro/prose')
|
active: route.path.startsWith('/pro/getting-started') || route.path.startsWith('/pro/components') || route.path.startsWith('/pro/prose')
|
||||||
}, {
|
}, {
|
||||||
label: 'Pricing',
|
label: 'Pricing',
|
||||||
icon: 'i-heroicons-credit-card',
|
icon: 'i-lucide-credit-card',
|
||||||
to: '/pro/pricing'
|
to: '/pro/pricing'
|
||||||
}, {
|
}, {
|
||||||
label: 'Templates',
|
label: 'Templates',
|
||||||
icon: 'i-heroicons-computer-desktop',
|
icon: 'i-lucide-monitor',
|
||||||
to: '/pro/templates'
|
to: '/pro/templates'
|
||||||
}]
|
}]
|
||||||
: []), {
|
: []), {
|
||||||
label: 'Releases',
|
label: 'Releases',
|
||||||
icon: 'i-heroicons-rocket-launch',
|
icon: 'i-lucide-rocket',
|
||||||
to: '/releases'
|
to: '/releases'
|
||||||
}].filter(Boolean)
|
}].filter(Boolean)
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -34,18 +34,18 @@ defineOgImageComponent('Docs', {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const communityLinks = computed(() => [{
|
const communityLinks = computed(() => [{
|
||||||
icon: 'i-heroicons-pencil-square',
|
icon: 'i-lucide-square-pen',
|
||||||
label: 'Edit this page',
|
label: 'Edit this page',
|
||||||
to: `https://github.com/nuxt/ui/edit/v3/docs/content/${page?.value?.stem}.md`,
|
to: `https://github.com/nuxt/ui/edit/v3/docs/content/${page?.value?.stem}.md`,
|
||||||
target: '_blank'
|
target: '_blank'
|
||||||
}, {
|
}, {
|
||||||
icon: 'i-heroicons-star',
|
icon: 'i-lucide-star',
|
||||||
label: 'Star on GitHub',
|
label: 'Star on GitHub',
|
||||||
to: 'https://github.com/nuxt/ui',
|
to: 'https://github.com/nuxt/ui',
|
||||||
target: '_blank'
|
target: '_blank'
|
||||||
}, {
|
}, {
|
||||||
label: 'Roadmap',
|
label: 'Roadmap',
|
||||||
icon: 'i-heroicons-map',
|
icon: 'i-lucide-map',
|
||||||
to: '/roadmap'
|
to: '/roadmap'
|
||||||
}])
|
}])
|
||||||
|
|
||||||
@@ -85,7 +85,7 @@ const communityLinks = computed(() => [{
|
|||||||
variant="subtle"
|
variant="subtle"
|
||||||
v-bind="page.select.items.find((item: any) => item.to === route.path)"
|
v-bind="page.select.items.find((item: any) => item.to === route.path)"
|
||||||
block
|
block
|
||||||
trailing-icon="i-heroicons-chevron-down-20-solid"
|
trailing-icon="i-lucide-chevron-down"
|
||||||
:class="[open && 'bg-[var(--ui-bg-accented)]/75']"
|
:class="[open && 'bg-[var(--ui-bg-accented)]/75']"
|
||||||
:ui="{
|
:ui="{
|
||||||
trailingIcon: ['transition-transform duration-200', open ? 'rotate-180' : undefined].filter(Boolean).join(' ')
|
trailingIcon: ['transition-transform duration-200', open ? 'rotate-180' : undefined].filter(Boolean).join(' ')
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ export default defineAppConfig({
|
|||||||
```
|
```
|
||||||
|
|
||||||
::note
|
::note
|
||||||
Try the :prose-icon{name="i-heroicons-swatch" class="text-[var(--ui-primary)]"} theme picker in the header above to change `primary` and `neutral` colors.
|
Try the :prose-icon{name="i-lucide-swatch-book" class="text-[var(--ui-primary)]"} theme picker in the header above to change `primary` and `neutral` colors.
|
||||||
::
|
::
|
||||||
|
|
||||||
These colors are used to style the components but also to generate the `color` variants:
|
These colors are used to style the components but also to generate the `color` variants:
|
||||||
@@ -345,7 +345,7 @@ Nuxt UI uses a global `--ui-radius` CSS variable for consistent border rounding.
|
|||||||
```
|
```
|
||||||
|
|
||||||
::note
|
::note
|
||||||
Try the :prose-icon{name="i-heroicons-swatch" class="text-[var(--ui-primary)]"} theme picker in the header above to change the base radius value.
|
Try the :prose-icon{name="i-lucide-swatch-book" class="text-[var(--ui-primary)]"} theme picker in the header above to change the base radius value.
|
||||||
::
|
::
|
||||||
|
|
||||||
::tip
|
::tip
|
||||||
@@ -522,7 +522,7 @@ ignore:
|
|||||||
- size
|
- size
|
||||||
- icon
|
- icon
|
||||||
props:
|
props:
|
||||||
trailingIcon: i-heroicons-chevron-right
|
trailingIcon: i-lucide-chevron-right
|
||||||
size: md
|
size: md
|
||||||
color: neutral
|
color: neutral
|
||||||
variant: outline
|
variant: outline
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ You can use the [Icon](/components/icon) component with a `name` prop to display
|
|||||||
::component-code{slug="icon"}
|
::component-code{slug="icon"}
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
name: 'i-heroicons-light-bulb'
|
name: 'i-lucide-lightbulb'
|
||||||
class: 'size-5'
|
class: 'size-5'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -38,7 +38,7 @@ ignore:
|
|||||||
- color
|
- color
|
||||||
- variant
|
- variant
|
||||||
props:
|
props:
|
||||||
icon: i-heroicons-sun
|
icon: i-lucide-sun
|
||||||
variant: subtle
|
variant: subtle
|
||||||
slots:
|
slots:
|
||||||
default: Button
|
default: Button
|
||||||
|
|||||||
@@ -121,14 +121,14 @@ The `extractShortcuts` utility can be used to automatically define shortcuts fro
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Save',
|
label: 'Save',
|
||||||
icon: 'i-heroicons-document-arrow-down',
|
icon: 'i-lucide-file-down',
|
||||||
kbds: ['meta', 'S'],
|
kbds: ['meta', 'S'],
|
||||||
onSelect() {
|
onSelect() {
|
||||||
save()
|
save()
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
label: 'Copy',
|
label: 'Copy',
|
||||||
icon: 'i-heroicons-document-duplicate',
|
icon: 'i-lucide-copy',
|
||||||
kbds: ['meta', 'C'],
|
kbds: ['meta', 'C'],
|
||||||
onSelect() {
|
onSelect() {
|
||||||
copy()
|
copy()
|
||||||
|
|||||||
@@ -35,13 +35,13 @@ props:
|
|||||||
class: 'px-4'
|
class: 'px-4'
|
||||||
items:
|
items:
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -64,13 +64,13 @@ props:
|
|||||||
type: 'multiple'
|
type: 'multiple'
|
||||||
items:
|
items:
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -93,13 +93,13 @@ props:
|
|||||||
collapsible: false
|
collapsible: false
|
||||||
items:
|
items:
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -123,21 +123,21 @@ props:
|
|||||||
disabled: true
|
disabled: true
|
||||||
items:
|
items:
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
disabled: true
|
disabled: true
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
### Trailing Icon
|
### Trailing Icon
|
||||||
|
|
||||||
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon) of each item. Defaults to `i-heroicons-chevron-down-20-solid`.
|
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon) of each item. Defaults to `i-lucide-chevron-down`.
|
||||||
|
|
||||||
::tip
|
::tip
|
||||||
You can also set an icon for a specific item by using the `trailingIcon` property in the item object.
|
You can also set an icon for a specific item by using the `trailingIcon` property in the item object.
|
||||||
@@ -153,17 +153,17 @@ hide:
|
|||||||
- class
|
- class
|
||||||
props:
|
props:
|
||||||
class: 'px-4'
|
class: 'px-4'
|
||||||
trailingIcon: 'i-heroicons-arrow-small-down-20-solid'
|
trailingIcon: 'i-lucide-arrow-down'
|
||||||
items:
|
items:
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
content: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
trailingIcon: 'i-heroicons-plus-20-solid'
|
trailingIcon: 'i-lucide-plus'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
content: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
content: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ ignore:
|
|||||||
props:
|
props:
|
||||||
title: 'Heads up!'
|
title: 'Heads up!'
|
||||||
description: 'You can change the primary color in your app config.'
|
description: 'You can change the primary color in your app config.'
|
||||||
icon: 'i-heroicons-command-line'
|
icon: 'i-lucide-terminal'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
@@ -81,7 +81,7 @@ props:
|
|||||||
color: neutral
|
color: neutral
|
||||||
title: 'Heads up!'
|
title: 'Heads up!'
|
||||||
description: 'You can change the primary color in your app config.'
|
description: 'You can change the primary color in your app config.'
|
||||||
icon: 'i-heroicons-command-line'
|
icon: 'i-lucide-terminal'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
@@ -101,7 +101,7 @@ props:
|
|||||||
variant: subtle
|
variant: subtle
|
||||||
title: 'Heads up!'
|
title: 'Heads up!'
|
||||||
description: 'You can change the primary color in your app config.'
|
description: 'You can change the primary color in your app config.'
|
||||||
icon: 'i-heroicons-command-line'
|
icon: 'i-lucide-terminal'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
@@ -157,7 +157,7 @@ props:
|
|||||||
|
|
||||||
### Close Icon
|
### Close Icon
|
||||||
|
|
||||||
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-heroicons-x-mark-20-solid`.
|
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-lucide-x`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -174,7 +174,7 @@ props:
|
|||||||
color: neutral
|
color: neutral
|
||||||
variant: outline
|
variant: outline
|
||||||
close: true
|
close: true
|
||||||
closeIcon: 'i-heroicons-arrow-right'
|
closeIcon: 'i-lucide-arrow-right'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ ignore:
|
|||||||
props:
|
props:
|
||||||
title: 'Heads up!'
|
title: 'Heads up!'
|
||||||
description: 'You can change the primary color in your app config.'
|
description: 'You can change the primary color in your app config.'
|
||||||
icon: i-heroicons-rocket-launch
|
icon: i-lucide-rocket
|
||||||
ui:
|
ui:
|
||||||
icon: 'size-11'
|
icon: 'size-11'
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ Use the `icon` prop to display a fallback [Icon](/components/icon).
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
icon: 'i-heroicons-photo'
|
icon: 'i-lucide-image'
|
||||||
size: md
|
size: md
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ Use the `icon` prop to show an [Icon](/components/icon) inside the Badge.
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
icon: i-heroicons-rocket-launch
|
icon: i-lucide-rocket
|
||||||
size: md
|
size: md
|
||||||
color: primary
|
color: primary
|
||||||
variant: solid
|
variant: solid
|
||||||
@@ -89,7 +89,7 @@ Use the `leading` and `trailing` props to set the icon position or the `leading-
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
trailingIcon: i-heroicons-arrow-right
|
trailingIcon: i-lucide-arrow-right
|
||||||
size: md
|
size: md
|
||||||
slots:
|
slots:
|
||||||
default: Badge
|
default: Badge
|
||||||
|
|||||||
@@ -29,12 +29,12 @@ external:
|
|||||||
props:
|
props:
|
||||||
items:
|
items:
|
||||||
- label: 'Home'
|
- label: 'Home'
|
||||||
icon: 'i-heroicons-home'
|
icon: 'i-lucide-house'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
to: '/components'
|
to: '/components'
|
||||||
- label: 'Breadcrumb'
|
- label: 'Breadcrumb'
|
||||||
icon: 'i-heroicons-link'
|
icon: 'i-lucide-link'
|
||||||
to: '/components/breadcrumb'
|
to: '/components/breadcrumb'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -45,7 +45,7 @@ A `span` is rendered instead of a link when the `to` property is not defined.
|
|||||||
|
|
||||||
### Separator Icon
|
### Separator Icon
|
||||||
|
|
||||||
Use the `separator-icon` prop to customize the [Icon](/components/icon) between each item. Defaults to `i-heroicons-chevron-right-20-solid`.
|
Use the `separator-icon` prop to customize the [Icon](/components/icon) between each item. Defaults to `i-lucide-chevron-right`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -54,15 +54,15 @@ ignore:
|
|||||||
external:
|
external:
|
||||||
- items
|
- items
|
||||||
props:
|
props:
|
||||||
separatorIcon: 'i-heroicons-arrow-right-20-solid'
|
separatorIcon: 'i-lucide-arrow-right'
|
||||||
items:
|
items:
|
||||||
- label: 'Home'
|
- label: 'Home'
|
||||||
icon: 'i-heroicons-home'
|
icon: 'i-lucide-house'
|
||||||
- label: 'Components'
|
- label: 'Components'
|
||||||
icon: 'i-heroicons-cube-transparent'
|
icon: 'i-lucide-box'
|
||||||
to: '/components'
|
to: '/components'
|
||||||
- label: 'Breadcrumb'
|
- label: 'Breadcrumb'
|
||||||
icon: 'i-heroicons-link'
|
icon: 'i-lucide-link'
|
||||||
to: '/components/breadcrumb'
|
to: '/components/breadcrumb'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ slots:
|
|||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton color="neutral" variant="subtle" label="Button" />
|
<UButton color="neutral" variant="subtle" label="Button" />
|
||||||
<UButton color="neutral" variant="outline" icon="i-heroicons-chevron-down-20-solid" />
|
<UButton color="neutral" variant="outline" icon="i-lucide-chevron-down" />
|
||||||
---
|
---
|
||||||
:u-button{color="neutral" variant="subtle" label="Button"}
|
:u-button{color="neutral" variant="subtle" label="Button"}
|
||||||
:u-button{color="neutral" variant="outline" icon="i-heroicons-chevron-down-20-solid"}
|
:u-button{color="neutral" variant="outline" icon="i-lucide-chevron-down"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Size
|
### Size
|
||||||
@@ -37,10 +37,10 @@ slots:
|
|||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton color="neutral" variant="subtle" label="Button" />
|
<UButton color="neutral" variant="subtle" label="Button" />
|
||||||
<UButton color="neutral" variant="outline" icon="i-heroicons-chevron-down-20-solid" />
|
<UButton color="neutral" variant="outline" icon="i-lucide-chevron-down" />
|
||||||
---
|
---
|
||||||
:u-button{color="neutral" variant="subtle" label="Button"}
|
:u-button{color="neutral" variant="subtle" label="Button"}
|
||||||
:u-button{color="neutral" variant="outline" icon="i-heroicons-chevron-down-20-solid"}
|
:u-button{color="neutral" variant="outline" icon="i-lucide-chevron-down"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Orientation
|
### Orientation
|
||||||
@@ -76,10 +76,10 @@ slots:
|
|||||||
|
|
||||||
<UInput color="neutral" variant="outline" placeholder="Enter token" />
|
<UInput color="neutral" variant="outline" placeholder="Enter token" />
|
||||||
|
|
||||||
<UButton color="neutral" variant="subtle" icon="i-heroicons-clipboard-document" />
|
<UButton color="neutral" variant="subtle" icon="i-lucide-clipboard" />
|
||||||
---
|
---
|
||||||
:u-input{color="neutral" variant="outline" placeholder="Enter token"}
|
:u-input{color="neutral" variant="outline" placeholder="Enter token"}
|
||||||
:u-button{color="neutral" variant="subtle" icon="i-heroicons-clipboard-document"}
|
:u-button{color="neutral" variant="subtle" icon="i-lucide-clipboard"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### With tooltip
|
### With tooltip
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ Use the `icon` prop to show an [Icon](/components/icon) inside the Button.
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
icon: i-heroicons-rocket-launch
|
icon: i-lucide-rocket
|
||||||
size: md
|
size: md
|
||||||
color: primary
|
color: primary
|
||||||
variant: solid
|
variant: solid
|
||||||
@@ -106,7 +106,7 @@ Use the `leading` and `trailing` props to set the icon position or the `leading-
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
trailingIcon: i-heroicons-arrow-right
|
trailingIcon: i-lucide-arrow-right
|
||||||
size: md
|
size: md
|
||||||
slots:
|
slots:
|
||||||
default: Button
|
default: Button
|
||||||
@@ -118,7 +118,7 @@ The `label` as prop or slot is optional so you can use the Button as an icon-onl
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
icon: i-heroicons-magnifying-glass
|
icon: i-lucide-search
|
||||||
size: md
|
size: md
|
||||||
color: primary
|
color: primary
|
||||||
variant: solid
|
variant: solid
|
||||||
@@ -184,13 +184,13 @@ This also works with the [Form](/components/form) component.
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
slots:
|
slots:
|
||||||
default: Button
|
default: Button
|
||||||
---
|
---
|
||||||
@@ -244,7 +244,7 @@ ignore:
|
|||||||
- variant
|
- variant
|
||||||
- icon
|
- icon
|
||||||
props:
|
props:
|
||||||
icon: i-heroicons-rocket-launch
|
icon: i-lucide-rocket
|
||||||
color: neutral
|
color: neutral
|
||||||
variant: outline
|
variant: outline
|
||||||
ui:
|
ui:
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ class: 'p-8'
|
|||||||
|
|
||||||
### Prev Icon / Next Icon
|
### Prev Icon / Next Icon
|
||||||
|
|
||||||
Use the `prev-icon` and `next-icon` props to customize the buttons [Icon](/components/icon). Defaults to `i-heroicons-arrow-left-20-solid` / `i-heroicons-arrow-right-20-solid`.
|
Use the `prev-icon` and `next-icon` props to customize the buttons [Icon](/components/icon). Defaults to `i-lucide-arrow-left` / `i-lucide-arrow-right`.
|
||||||
|
|
||||||
::component-example
|
::component-example
|
||||||
---
|
---
|
||||||
@@ -87,10 +87,10 @@ class: 'p-8'
|
|||||||
options:
|
options:
|
||||||
- name: 'prevIcon'
|
- name: 'prevIcon'
|
||||||
label: 'prevIcon'
|
label: 'prevIcon'
|
||||||
default: 'i-heroicons-chevron-left'
|
default: 'i-lucide-chevron-left'
|
||||||
- name: 'nextIcon'
|
- name: 'nextIcon'
|
||||||
label: 'nextIcon'
|
label: 'nextIcon'
|
||||||
default: 'i-heroicons-chevron-right'
|
default: 'i-lucide-chevron-right'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
|
|||||||
@@ -48,13 +48,13 @@ props:
|
|||||||
|
|
||||||
### Indeterminate Icon
|
### Indeterminate Icon
|
||||||
|
|
||||||
Use the `indeterminate-icon` prop to customize the indeterminate icon. Defaults to `i-heroicons-minus-20-solid`.
|
Use the `indeterminate-icon` prop to customize the indeterminate icon. Defaults to `i-lucide-minus`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
indeterminate: true
|
indeterminate: true
|
||||||
indeterminateIcon: 'i-heroicons-plus-20-solid'
|
indeterminateIcon: 'i-lucide-plus'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
@@ -101,7 +101,7 @@ props:
|
|||||||
|
|
||||||
### Icon
|
### Icon
|
||||||
|
|
||||||
Use the `icon` prop to set the icon of the Checkbox when it is checked. Defaults to `i-heroicons-check-20-solid`.
|
Use the `icon` prop to set the icon of the Checkbox when it is checked. Defaults to `i-lucide-check`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -109,7 +109,7 @@ ignore:
|
|||||||
- label
|
- label
|
||||||
- defaultValue
|
- defaultValue
|
||||||
props:
|
props:
|
||||||
icon: 'i-heroicons-heart'
|
icon: 'i-lucide-heart'
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
label: Check me
|
label: Check me
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -16,9 +16,9 @@ prettier: true
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-envelope" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-mail" color="neutral" variant="subtle" />
|
||||||
---
|
---
|
||||||
:u-button{icon="i-heroicons-envelope" color="neutral" variant="subtle"}
|
:u-button{icon="i-lucide-mail" color="neutral" variant="subtle"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Color
|
### Color
|
||||||
@@ -33,9 +33,9 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-envelope" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-mail" color="neutral" variant="subtle" />
|
||||||
---
|
---
|
||||||
:u-button{icon="i-heroicons-envelope" color="neutral" variant="subtle"}
|
:u-button{icon="i-lucide-mail" color="neutral" variant="subtle"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Size
|
### Size
|
||||||
@@ -50,9 +50,9 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-envelope" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-mail" color="neutral" variant="subtle" />
|
||||||
---
|
---
|
||||||
:u-button{icon="i-heroicons-envelope" color="neutral" variant="subtle"}
|
:u-button{icon="i-lucide-mail" color="neutral" variant="subtle"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Text
|
### Text
|
||||||
@@ -68,9 +68,9 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-envelope" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-mail" color="neutral" variant="subtle" />
|
||||||
---
|
---
|
||||||
:u-button{icon="i-heroicons-envelope" color="neutral" variant="subtle"}
|
:u-button{icon="i-lucide-mail" color="neutral" variant="subtle"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Position
|
### Position
|
||||||
@@ -85,9 +85,9 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-envelope" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-mail" color="neutral" variant="subtle" />
|
||||||
---
|
---
|
||||||
:u-button{icon="i-heroicons-envelope" color="neutral" variant="subtle"}
|
:u-button{icon="i-lucide-mail" color="neutral" variant="subtle"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Inset
|
### Inset
|
||||||
|
|||||||
@@ -25,14 +25,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-down" block />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48" />
|
<Placeholder class="h-48" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-down" block}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-48"}
|
:placeholder{class="h-48"}
|
||||||
@@ -53,14 +53,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-down" block />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48" />
|
<Placeholder class="h-48" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-down" block}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-48"}
|
:placeholder{class="h-48"}
|
||||||
|
|||||||
@@ -177,18 +177,18 @@ props:
|
|||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
### Icon
|
### Icon
|
||||||
|
|
||||||
Use the `icon` prop to customize the input [Icon](/components/icon). Defaults to `i-heroicons-magnifying-glass-20-solid`.
|
Use the `icon` prop to customize the input [Icon](/components/icon). Defaults to `i-lucide-search`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -200,16 +200,16 @@ external:
|
|||||||
- groups
|
- groups
|
||||||
class: '!p-0'
|
class: '!p-0'
|
||||||
props:
|
props:
|
||||||
icon: 'i-heroicons-cube'
|
icon: 'i-lucide-box'
|
||||||
groups:
|
groups:
|
||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -237,18 +237,18 @@ props:
|
|||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -261,16 +261,16 @@ external:
|
|||||||
class: '!p-0'
|
class: '!p-0'
|
||||||
props:
|
props:
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
groups:
|
groups:
|
||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -298,11 +298,11 @@ props:
|
|||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -331,11 +331,11 @@ props:
|
|||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -363,18 +363,18 @@ props:
|
|||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|
||||||
### Close Icon
|
### Close Icon
|
||||||
|
|
||||||
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-heroicons-x-mark-20-solid`.
|
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-lucide-x`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -388,16 +388,16 @@ external:
|
|||||||
class: '!p-0'
|
class: '!p-0'
|
||||||
props:
|
props:
|
||||||
close: true
|
close: true
|
||||||
closeIcon: 'i-heroicons-arrow-right'
|
closeIcon: 'i-lucide-arrow-right'
|
||||||
groups:
|
groups:
|
||||||
- id: 'apps'
|
- id: 'apps'
|
||||||
items:
|
items:
|
||||||
- label: 'Calendar'
|
- label: 'Calendar'
|
||||||
icon: 'i-heroicons-calendar'
|
icon: 'i-lucide-calendar'
|
||||||
- label: 'Music'
|
- label: 'Music'
|
||||||
icon: 'i-heroicons-musical-note'
|
icon: 'i-lucide-music'
|
||||||
- label: 'Maps'
|
- label: 'Maps'
|
||||||
icon: 'i-heroicons-map'
|
icon: 'i-lucide-map'
|
||||||
class: 'flex-1'
|
class: 'flex-1'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -48,11 +48,11 @@ props:
|
|||||||
- - label: Appearance
|
- - label: Appearance
|
||||||
children:
|
children:
|
||||||
- label: System
|
- label: System
|
||||||
icon: i-heroicons-computer-desktop
|
icon: i-lucide-monitor
|
||||||
- label: Light
|
- label: Light
|
||||||
icon: i-heroicons-sun
|
icon: i-lucide-sun
|
||||||
- label: Dark
|
- label: Dark
|
||||||
icon: i-heroicons-moon
|
icon: i-lucide-moon
|
||||||
- - label: Show Sidebar
|
- - label: Show Sidebar
|
||||||
kbds:
|
kbds:
|
||||||
- meta
|
- meta
|
||||||
@@ -126,11 +126,11 @@ props:
|
|||||||
size: xl
|
size: xl
|
||||||
items:
|
items:
|
||||||
- label: System
|
- label: System
|
||||||
icon: i-heroicons-computer-desktop
|
icon: i-lucide-monitor
|
||||||
- label: Light
|
- label: Light
|
||||||
icon: i-heroicons-sun
|
icon: i-lucide-sun
|
||||||
- label: Dark
|
- label: Dark
|
||||||
icon: i-heroicons-moon
|
icon: i-lucide-moon
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
@@ -159,11 +159,11 @@ props:
|
|||||||
disabled: true
|
disabled: true
|
||||||
items:
|
items:
|
||||||
- label: System
|
- label: System
|
||||||
icon: i-heroicons-computer-desktop
|
icon: i-lucide-monitor
|
||||||
- label: Light
|
- label: Light
|
||||||
icon: i-heroicons-sun
|
icon: i-lucide-sun
|
||||||
- label: Dark
|
- label: Dark
|
||||||
icon: i-heroicons-moon
|
icon: i-lucide-moon
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|||||||
@@ -21,14 +21,14 @@ prettier: true
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48 m-4" />
|
<Placeholder class="h-48 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-48 m-4"}
|
:placeholder{class="h-48 m-4"}
|
||||||
@@ -48,14 +48,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
body: |
|
body: |
|
||||||
|
|
||||||
<Placeholder class="h-48" />
|
<Placeholder class="h-48" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#body
|
#body
|
||||||
:placeholder{class="h-48"}
|
:placeholder{class="h-48"}
|
||||||
@@ -76,14 +76,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
body: |
|
body: |
|
||||||
|
|
||||||
<Placeholder class="h-48" />
|
<Placeholder class="h-48" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#body
|
#body
|
||||||
:placeholder{class="h-48"}
|
:placeholder{class="h-48"}
|
||||||
@@ -105,14 +105,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-96 m-4" />
|
<Placeholder class="h-96 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-96 m-4"}
|
:placeholder{class="h-96 m-4"}
|
||||||
@@ -130,14 +130,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="w-96 m-4" />
|
<Placeholder class="w-96 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="w-96 m-4"}
|
:placeholder{class="w-96 m-4"}
|
||||||
@@ -155,14 +155,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48 m-4" />
|
<Placeholder class="h-48 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-48 m-4"}
|
:placeholder{class="h-48 m-4"}
|
||||||
@@ -180,14 +180,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48 m-4" />
|
<Placeholder class="h-48 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-48 m-4"}
|
:placeholder{class="h-48 m-4"}
|
||||||
@@ -205,14 +205,14 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid" />
|
<UButton label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up" />
|
||||||
|
|
||||||
content: |
|
content: |
|
||||||
|
|
||||||
<Placeholder class="h-48 m-4" />
|
<Placeholder class="h-48 m-4" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-heroicons-chevron-up-20-solid"}
|
:u-button{label="Open" color="neutral" variant="subtle" trailing-icon="i-lucide-chevron-up"}
|
||||||
|
|
||||||
#content
|
#content
|
||||||
:placeholder{class="h-screen m-4"}
|
:placeholder{class="h-screen m-4"}
|
||||||
|
|||||||
@@ -50,28 +50,28 @@ props:
|
|||||||
src: 'https://github.com/benjamincanac.png'
|
src: 'https://github.com/benjamincanac.png'
|
||||||
type: label
|
type: label
|
||||||
- - label: Profile
|
- - label: Profile
|
||||||
icon: i-heroicons-user
|
icon: i-lucide-user
|
||||||
- label: Billing
|
- label: Billing
|
||||||
icon: i-heroicons-credit-card
|
icon: i-lucide-credit-card
|
||||||
- label: Settings
|
- label: Settings
|
||||||
icon: i-heroicons-cog
|
icon: i-lucide-cog
|
||||||
kbds:
|
kbds:
|
||||||
- ','
|
- ','
|
||||||
- label: Keyboard shortcuts
|
- label: Keyboard shortcuts
|
||||||
icon: i-heroicons-computer-desktop
|
icon: i-lucide-monitor
|
||||||
- - label: Team
|
- - label: Team
|
||||||
icon: i-heroicons-users
|
icon: i-lucide-users
|
||||||
- label: Invite users
|
- label: Invite users
|
||||||
icon: i-heroicons-user-plus
|
icon: i-lucide-user-plus
|
||||||
children:
|
children:
|
||||||
- - label: Email
|
- - label: Email
|
||||||
icon: i-heroicons-envelope
|
icon: i-lucide-mail
|
||||||
- label: Message
|
- label: Message
|
||||||
icon: i-heroicons-chat-bubble-left
|
icon: i-lucide-message-square
|
||||||
- - label: More
|
- - label: More
|
||||||
icon: i-heroicons-plus-circle
|
icon: i-lucide-circle-plus
|
||||||
- label: New team
|
- label: New team
|
||||||
icon: i-heroicons-plus
|
icon: i-lucide-plus
|
||||||
kbds:
|
kbds:
|
||||||
- meta
|
- meta
|
||||||
- n
|
- n
|
||||||
@@ -80,13 +80,13 @@ props:
|
|||||||
to: 'https://github.com/nuxt/ui'
|
to: 'https://github.com/nuxt/ui'
|
||||||
target: _blank
|
target: _blank
|
||||||
- label: Support
|
- label: Support
|
||||||
icon: i-heroicons-lifebuoy
|
icon: i-lucide-life-buoy
|
||||||
to: '/components/dropdown-menu'
|
to: '/components/dropdown-menu'
|
||||||
- label: API
|
- label: API
|
||||||
icon: i-heroicons-cloud
|
icon: i-lucide-cloud
|
||||||
disabled: true
|
disabled: true
|
||||||
- - label: Logout
|
- - label: Logout
|
||||||
icon: i-heroicons-arrow-right-on-rectangle
|
icon: i-lucide-log-out
|
||||||
kbds:
|
kbds:
|
||||||
- shift
|
- shift
|
||||||
- meta
|
- meta
|
||||||
@@ -95,10 +95,10 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton icon="i-heroicons-bars-3" color="neutral" variant="outline" />
|
<UButton icon="i-lucide-menu" color="neutral" variant="outline" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{icon="i-heroicons-bars-3" color="neutral" variant="outline"}
|
:u-button{icon="i-lucide-menu" color="neutral" variant="outline"}
|
||||||
::
|
::
|
||||||
|
|
||||||
::note
|
::note
|
||||||
@@ -134,11 +134,11 @@ items:
|
|||||||
props:
|
props:
|
||||||
items:
|
items:
|
||||||
- label: Profile
|
- label: Profile
|
||||||
icon: i-heroicons-user
|
icon: i-lucide-user
|
||||||
- label: Billing
|
- label: Billing
|
||||||
icon: i-heroicons-credit-card
|
icon: i-lucide-credit-card
|
||||||
- label: Settings
|
- label: Settings
|
||||||
icon: i-heroicons-cog
|
icon: i-lucide-cog
|
||||||
content:
|
content:
|
||||||
align: start
|
align: start
|
||||||
side: bottom
|
side: bottom
|
||||||
@@ -147,10 +147,10 @@ props:
|
|||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline" />
|
<UButton label="Open" icon="i-lucide-menu" color="neutral" variant="outline" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline"}
|
:u-button{label="Open" icon="i-lucide-menu" color="neutral" variant="outline"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Arrow
|
### Arrow
|
||||||
@@ -170,19 +170,19 @@ props:
|
|||||||
arrow: true
|
arrow: true
|
||||||
items:
|
items:
|
||||||
- label: Profile
|
- label: Profile
|
||||||
icon: i-heroicons-user
|
icon: i-lucide-user
|
||||||
- label: Billing
|
- label: Billing
|
||||||
icon: i-heroicons-credit-card
|
icon: i-lucide-credit-card
|
||||||
- label: Settings
|
- label: Settings
|
||||||
icon: i-heroicons-cog
|
icon: i-lucide-cog
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline" />
|
<UButton label="Open" icon="i-lucide-menu" color="neutral" variant="outline" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline"}
|
:u-button{label="Open" icon="i-lucide-menu" color="neutral" variant="outline"}
|
||||||
::
|
::
|
||||||
|
|
||||||
### Size
|
### Size
|
||||||
@@ -202,21 +202,21 @@ props:
|
|||||||
size: xl
|
size: xl
|
||||||
items:
|
items:
|
||||||
- label: Profile
|
- label: Profile
|
||||||
icon: i-heroicons-user
|
icon: i-lucide-user
|
||||||
- label: Billing
|
- label: Billing
|
||||||
icon: i-heroicons-credit-card
|
icon: i-lucide-credit-card
|
||||||
- label: Settings
|
- label: Settings
|
||||||
icon: i-heroicons-cog
|
icon: i-lucide-cog
|
||||||
content:
|
content:
|
||||||
align: start
|
align: start
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton size="xl" label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline" />
|
<UButton size="xl" label="Open" icon="i-lucide-menu" color="neutral" variant="outline" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{size="xl" label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline"}
|
:u-button{size="xl" label="Open" icon="i-lucide-menu" color="neutral" variant="outline"}
|
||||||
::
|
::
|
||||||
|
|
||||||
::warning
|
::warning
|
||||||
@@ -243,19 +243,19 @@ props:
|
|||||||
disabled: true
|
disabled: true
|
||||||
items:
|
items:
|
||||||
- label: Profile
|
- label: Profile
|
||||||
icon: i-heroicons-user
|
icon: i-lucide-user
|
||||||
- label: Billing
|
- label: Billing
|
||||||
icon: i-heroicons-credit-card
|
icon: i-lucide-credit-card
|
||||||
- label: Settings
|
- label: Settings
|
||||||
icon: i-heroicons-cog
|
icon: i-lucide-cog
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
<UButton label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline" />
|
<UButton label="Open" icon="i-lucide-menu" color="neutral" variant="outline" />
|
||||||
---
|
---
|
||||||
|
|
||||||
:u-button{label="Open" icon="i-heroicons-bars-3" color="neutral" variant="outline"}
|
:u-button{label="Open" icon="i-lucide-menu" color="neutral" variant="outline"}
|
||||||
::
|
::
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
@@ -330,17 +330,17 @@ Inside the `defineShortcuts` composable, there is an `extractShortcuts` utility
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Invite users',
|
label: 'Invite users',
|
||||||
icon: 'i-heroicons-user-plus',
|
icon: 'i-lucide-user-plus',
|
||||||
children: [{
|
children: [{
|
||||||
label: 'Invite by email',
|
label: 'Invite by email',
|
||||||
icon: 'i-heroicons-paper-airplane',
|
icon: 'i-lucide-send-horizontal',
|
||||||
kbds: ['meta', 'e'],
|
kbds: ['meta', 'e'],
|
||||||
onSelect() {
|
onSelect() {
|
||||||
console.log('Invite by email clicked')
|
console.log('Invite by email clicked')
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
label: 'Invite by link',
|
label: 'Invite by link',
|
||||||
icon: 'i-heroicons-link',
|
icon: 'i-lucide-link',
|
||||||
kbds: ['meta', 'i'],
|
kbds: ['meta', 'i'],
|
||||||
onSelect() {
|
onSelect() {
|
||||||
console.log('Invite by link clicked')
|
console.log('Invite by link clicked')
|
||||||
@@ -348,7 +348,7 @@ const items = [{
|
|||||||
}]
|
}]
|
||||||
}, {
|
}, {
|
||||||
label: 'New team',
|
label: 'New team',
|
||||||
icon: 'i-heroicons-plus',
|
icon: 'i-lucide-plus',
|
||||||
kbds: ['meta', 'n'],
|
kbds: ['meta', 'n'],
|
||||||
onSelect() {
|
onSelect() {
|
||||||
console.log('New team clicked')
|
console.log('New team clicked')
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ You can use any name from the https://icones.js.org collection:
|
|||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
props:
|
props:
|
||||||
name: 'i-heroicons-light-bulb'
|
name: 'i-lucide-lightbulb'
|
||||||
class: 'size-5'
|
class: 'size-5'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -163,7 +163,7 @@ Ensure to pass an array to the `default-value` prop or the `v-model` directive.
|
|||||||
|
|
||||||
### Delete Icon
|
### Delete Icon
|
||||||
|
|
||||||
With `multiple`, use the `delete-icon` prop to customize the delete [Icon](/components/icon) in the badges. Defaults to `i-heroicons-x-mark-20-solid`.
|
With `multiple`, use the `delete-icon` prop to customize the delete [Icon](/components/icon) in the badges. Defaults to `i-lucide-x`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -180,7 +180,7 @@ props:
|
|||||||
- Backlog
|
- Backlog
|
||||||
- Todo
|
- Todo
|
||||||
multiple: true
|
multiple: true
|
||||||
deleteIcon: 'i-heroicons-trash'
|
deleteIcon: 'i-lucide-trash'
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
- Todo
|
- Todo
|
||||||
@@ -370,7 +370,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
icon: 'i-heroicons-magnifying-glass'
|
icon: 'i-lucide-search'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -382,7 +382,7 @@ props:
|
|||||||
|
|
||||||
### Trailing Icon
|
### Trailing Icon
|
||||||
|
|
||||||
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-heroicons-chevron-down-20-solid`.
|
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-lucide-chevron-down`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -395,7 +395,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
trailingIcon: 'i-heroicons-arrow-small-down-20-solid'
|
trailingIcon: 'i-lucide-arrow-down'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -411,7 +411,7 @@ You can customize this icon globally in your `app.config.ts` under `ui.icons.che
|
|||||||
|
|
||||||
### Selected Icon
|
### Selected Icon
|
||||||
|
|
||||||
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-heroicons-check-20-solid`.
|
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-lucide-check`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -424,7 +424,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
selectedIcon: 'i-heroicons-fire'
|
selectedIcon: 'i-lucide-flame'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -491,7 +491,7 @@ props:
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -505,7 +505,7 @@ external:
|
|||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
- Todo
|
- Todo
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ prettier: true
|
|||||||
ignore:
|
ignore:
|
||||||
- placeholder
|
- placeholder
|
||||||
props:
|
props:
|
||||||
icon: 'i-heroicons-magnifying-glass'
|
icon: 'i-lucide-search'
|
||||||
size: md
|
size: md
|
||||||
variant: outline
|
variant: outline
|
||||||
placeholder: 'Search...'
|
placeholder: 'Search...'
|
||||||
@@ -130,7 +130,7 @@ prettier: true
|
|||||||
ignore:
|
ignore:
|
||||||
- placeholder
|
- placeholder
|
||||||
props:
|
props:
|
||||||
trailingIcon: i-heroicons-at-symbol
|
trailingIcon: i-lucide-at-sign
|
||||||
placeholder: 'Enter your email'
|
placeholder: 'Enter your email'
|
||||||
size: md
|
size: md
|
||||||
---
|
---
|
||||||
@@ -171,7 +171,7 @@ props:
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -179,7 +179,7 @@ ignore:
|
|||||||
- placeholder
|
- placeholder
|
||||||
props:
|
props:
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
placeholder: 'Search...'
|
placeholder: 'Search...'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ The close button is not displayed if the `#content` slot is used as it's a part
|
|||||||
|
|
||||||
### Close Icon
|
### Close Icon
|
||||||
|
|
||||||
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-heroicons-x-mark-20-solid`.
|
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-lucide-x`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -139,7 +139,7 @@ ignore:
|
|||||||
- title
|
- title
|
||||||
props:
|
props:
|
||||||
title: 'Modal with close button'
|
title: 'Modal with close button'
|
||||||
closeIcon: 'i-heroicons-arrow-right'
|
closeIcon: 'i-lucide-arrow-right'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
|
|||||||
@@ -40,71 +40,71 @@ external:
|
|||||||
props:
|
props:
|
||||||
items:
|
items:
|
||||||
- label: Guide
|
- label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
children:
|
children:
|
||||||
- label: Introduction
|
- label: Introduction
|
||||||
description: Fully styled and customizable components for Nuxt.
|
description: Fully styled and customizable components for Nuxt.
|
||||||
icon: i-heroicons-home
|
icon: i-lucide-house
|
||||||
- label: Installation
|
- label: Installation
|
||||||
description: Learn how to install and configure Nuxt UI in your application.
|
description: Learn how to install and configure Nuxt UI in your application.
|
||||||
icon: i-heroicons-cloud-arrow-down
|
icon: i-lucide-cloud-download
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Theme'
|
- label: 'Theme'
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
children:
|
children:
|
||||||
- label: defineShortcuts
|
- label: defineShortcuts
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Define shortcuts for your application.
|
description: Define shortcuts for your application.
|
||||||
to: /composables/define-shortcuts
|
to: /composables/define-shortcuts
|
||||||
- label: useModal
|
- label: useModal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /composables/use-modal
|
to: /composables/use-modal
|
||||||
- label: useSlideover
|
- label: useSlideover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a slideover within your application.
|
description: Display a slideover within your application.
|
||||||
to: /composables/use-slideover
|
to: /composables/use-slideover
|
||||||
- label: useToast
|
- label: useToast
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a toast within your application.
|
description: Display a toast within your application.
|
||||||
to: /composables/use-toast
|
to: /composables/use-toast
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
children:
|
children:
|
||||||
- label: Link
|
- label: Link
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Use NuxtLink with superpowers.
|
description: Use NuxtLink with superpowers.
|
||||||
to: /components/link
|
to: /components/link
|
||||||
- label: Modal
|
- label: Modal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /components/modal
|
to: /components/modal
|
||||||
- label: NavigationMenu
|
- label: NavigationMenu
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of links.
|
description: Display a list of links.
|
||||||
to: /components/navigation-menu
|
to: /components/navigation-menu
|
||||||
- label: Pagination
|
- label: Pagination
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of pages.
|
description: Display a list of pages.
|
||||||
to: /components/pagination
|
to: /components/pagination
|
||||||
- label: Popover
|
- label: Popover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a non-modal dialog that floats around a trigger element.
|
description: Display a non-modal dialog that floats around a trigger element.
|
||||||
to: /components/popover
|
to: /components/popover
|
||||||
- label: Progress
|
- label: Progress
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Show a horizontal bar to indicate task progression.
|
description: Show a horizontal bar to indicate task progression.
|
||||||
to: /components/progress
|
to: /components/progress
|
||||||
- label: GitHub
|
- label: GitHub
|
||||||
@@ -113,7 +113,7 @@ props:
|
|||||||
to: https://github.com/nuxt/ui
|
to: https://github.com/nuxt/ui
|
||||||
target: _blank
|
target: _blank
|
||||||
- label: Help
|
- label: Help
|
||||||
icon: i-heroicons-question-mark-circle
|
icon: i-lucide-circle-help
|
||||||
disabled: true
|
disabled: true
|
||||||
class: 'justify-center'
|
class: 'justify-center'
|
||||||
---
|
---
|
||||||
@@ -151,68 +151,68 @@ props:
|
|||||||
orientation: 'vertical'
|
orientation: 'vertical'
|
||||||
items:
|
items:
|
||||||
- - label: Guide
|
- - label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
children:
|
children:
|
||||||
- label: Introduction
|
- label: Introduction
|
||||||
description: Fully styled and customizable components for Nuxt.
|
description: Fully styled and customizable components for Nuxt.
|
||||||
icon: i-heroicons-home
|
icon: i-lucide-house
|
||||||
- label: Installation
|
- label: Installation
|
||||||
description: Learn how to install and configure Nuxt UI in your application.
|
description: Learn how to install and configure Nuxt UI in your application.
|
||||||
icon: i-heroicons-cloud-arrow-down
|
icon: i-lucide-cloud-download
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Theme'
|
- label: 'Theme'
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
children:
|
children:
|
||||||
- label: defineShortcuts
|
- label: defineShortcuts
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Define shortcuts for your application.
|
description: Define shortcuts for your application.
|
||||||
to: /composables/define-shortcuts
|
to: /composables/define-shortcuts
|
||||||
- label: useModal
|
- label: useModal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /composables/use-modal
|
to: /composables/use-modal
|
||||||
- label: useSlideover
|
- label: useSlideover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a slideover within your application.
|
description: Display a slideover within your application.
|
||||||
to: /composables/use-slideover
|
to: /composables/use-slideover
|
||||||
- label: useToast
|
- label: useToast
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a toast within your application.
|
description: Display a toast within your application.
|
||||||
to: /composables/use-toast
|
to: /composables/use-toast
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
active: true
|
active: true
|
||||||
children:
|
children:
|
||||||
- label: Link
|
- label: Link
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Use NuxtLink with superpowers.
|
description: Use NuxtLink with superpowers.
|
||||||
to: /components/link
|
to: /components/link
|
||||||
- label: Modal
|
- label: Modal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /components/modal
|
to: /components/modal
|
||||||
- label: NavigationMenu
|
- label: NavigationMenu
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of links.
|
description: Display a list of links.
|
||||||
to: /components/navigation-menu
|
to: /components/navigation-menu
|
||||||
- label: Pagination
|
- label: Pagination
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of pages.
|
description: Display a list of pages.
|
||||||
to: /components/pagination
|
to: /components/pagination
|
||||||
- label: Popover
|
- label: Popover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a non-modal dialog that floats around a trigger element.
|
description: Display a non-modal dialog that floats around a trigger element.
|
||||||
to: /components/popover
|
to: /components/popover
|
||||||
- label: Progress
|
- label: Progress
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Show a horizontal bar to indicate task progression.
|
description: Show a horizontal bar to indicate task progression.
|
||||||
to: /components/progress
|
to: /components/progress
|
||||||
- - label: GitHub
|
- - label: GitHub
|
||||||
@@ -221,7 +221,7 @@ props:
|
|||||||
to: https://github.com/nuxt/ui
|
to: https://github.com/nuxt/ui
|
||||||
target: _blank
|
target: _blank
|
||||||
- label: Help
|
- label: Help
|
||||||
icon: i-heroicons-question-mark-circle
|
icon: i-lucide-circle-help
|
||||||
disabled: true
|
disabled: true
|
||||||
class: 'data-[orientation=vertical]:w-48'
|
class: 'data-[orientation=vertical]:w-48'
|
||||||
---
|
---
|
||||||
@@ -252,13 +252,13 @@ props:
|
|||||||
orientation: 'horizontal'
|
orientation: 'horizontal'
|
||||||
items:
|
items:
|
||||||
- - label: Guide
|
- - label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
- - label: GitHub
|
- - label: GitHub
|
||||||
@@ -288,13 +288,13 @@ props:
|
|||||||
color: neutral
|
color: neutral
|
||||||
items:
|
items:
|
||||||
- - label: Guide
|
- - label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
- - label: GitHub
|
- - label: GitHub
|
||||||
@@ -321,13 +321,13 @@ props:
|
|||||||
highlight: false
|
highlight: false
|
||||||
items:
|
items:
|
||||||
- - label: Guide
|
- - label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
- - label: GitHub
|
- - label: GitHub
|
||||||
@@ -344,7 +344,7 @@ The `highlight` prop changes the `pill` variant active item style. Try it out to
|
|||||||
|
|
||||||
### Trailing Icon
|
### Trailing Icon
|
||||||
|
|
||||||
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon) of each item. Defaults to `i-heroicons-chevron-down-20-solid`. This icon is only displayed when an item has children.
|
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon) of each item. Defaults to `i-lucide-chevron-down`. This icon is only displayed when an item has children.
|
||||||
|
|
||||||
::tip
|
::tip
|
||||||
You can also set an icon for a specific item by using the `trailingIcon` property in the item object.
|
You can also set an icon for a specific item by using the `trailingIcon` property in the item object.
|
||||||
@@ -359,74 +359,74 @@ ignore:
|
|||||||
external:
|
external:
|
||||||
- items
|
- items
|
||||||
props:
|
props:
|
||||||
trailingIcon: 'i-heroicons-arrow-small-down-20-solid'
|
trailingIcon: 'i-lucide-arrow-down'
|
||||||
items:
|
items:
|
||||||
- label: Guide
|
- label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
children:
|
children:
|
||||||
- label: Introduction
|
- label: Introduction
|
||||||
description: Fully styled and customizable components for Nuxt.
|
description: Fully styled and customizable components for Nuxt.
|
||||||
icon: i-heroicons-home
|
icon: i-lucide-house
|
||||||
- label: Installation
|
- label: Installation
|
||||||
description: Learn how to install and configure Nuxt UI in your application.
|
description: Learn how to install and configure Nuxt UI in your application.
|
||||||
icon: i-heroicons-cloud-arrow-down
|
icon: i-lucide-cloud-download
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Theme'
|
- label: 'Theme'
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
children:
|
children:
|
||||||
- label: defineShortcuts
|
- label: defineShortcuts
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Define shortcuts for your application.
|
description: Define shortcuts for your application.
|
||||||
to: /composables/define-shortcuts
|
to: /composables/define-shortcuts
|
||||||
- label: useModal
|
- label: useModal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /composables/use-modal
|
to: /composables/use-modal
|
||||||
- label: useSlideover
|
- label: useSlideover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a slideover within your application.
|
description: Display a slideover within your application.
|
||||||
to: /composables/use-slideover
|
to: /composables/use-slideover
|
||||||
- label: useToast
|
- label: useToast
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a toast within your application.
|
description: Display a toast within your application.
|
||||||
to: /composables/use-toast
|
to: /composables/use-toast
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
children:
|
children:
|
||||||
- label: Link
|
- label: Link
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Use NuxtLink with superpowers.
|
description: Use NuxtLink with superpowers.
|
||||||
to: /components/link
|
to: /components/link
|
||||||
- label: Modal
|
- label: Modal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /components/modal
|
to: /components/modal
|
||||||
- label: NavigationMenu
|
- label: NavigationMenu
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of links.
|
description: Display a list of links.
|
||||||
to: /components/navigation-menu
|
to: /components/navigation-menu
|
||||||
- label: Pagination
|
- label: Pagination
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of pages.
|
description: Display a list of pages.
|
||||||
to: /components/pagination
|
to: /components/pagination
|
||||||
- label: Popover
|
- label: Popover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a non-modal dialog that floats around a trigger element.
|
description: Display a non-modal dialog that floats around a trigger element.
|
||||||
to: /components/popover
|
to: /components/popover
|
||||||
- label: Progress
|
- label: Progress
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Show a horizontal bar to indicate task progression.
|
description: Show a horizontal bar to indicate task progression.
|
||||||
to: /components/progress
|
to: /components/progress
|
||||||
class: 'justify-center'
|
class: 'justify-center'
|
||||||
@@ -454,71 +454,71 @@ props:
|
|||||||
arrow: true
|
arrow: true
|
||||||
items:
|
items:
|
||||||
- label: Guide
|
- label: Guide
|
||||||
icon: i-heroicons-book-open
|
icon: i-lucide-book-open
|
||||||
to: /getting-started
|
to: /getting-started
|
||||||
children:
|
children:
|
||||||
- label: Introduction
|
- label: Introduction
|
||||||
description: Fully styled and customizable components for Nuxt.
|
description: Fully styled and customizable components for Nuxt.
|
||||||
icon: i-heroicons-home
|
icon: i-lucide-house
|
||||||
- label: Installation
|
- label: Installation
|
||||||
description: Learn how to install and configure Nuxt UI in your application.
|
description: Learn how to install and configure Nuxt UI in your application.
|
||||||
icon: i-heroicons-cloud-arrow-down
|
icon: i-lucide-cloud-download
|
||||||
- label: 'Icons'
|
- label: 'Icons'
|
||||||
icon: 'i-heroicons-face-smile'
|
icon: 'i-lucide-smile'
|
||||||
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
description: 'You have nothing to do, @nuxt/icon will handle it automatically.'
|
||||||
- label: 'Colors'
|
- label: 'Colors'
|
||||||
icon: 'i-heroicons-swatch'
|
icon: 'i-lucide-swatch-book'
|
||||||
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
description: 'Choose a primary and a neutral color from your Tailwind CSS theme.'
|
||||||
- label: 'Theme'
|
- label: 'Theme'
|
||||||
icon: 'i-heroicons-cog'
|
icon: 'i-lucide-cog'
|
||||||
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
description: 'You can customize components by using the `class` / `ui` props or in your app.config.ts.'
|
||||||
- label: Composables
|
- label: Composables
|
||||||
icon: i-heroicons-circle-stack
|
icon: i-lucide-database
|
||||||
to: /composables
|
to: /composables
|
||||||
children:
|
children:
|
||||||
- label: defineShortcuts
|
- label: defineShortcuts
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Define shortcuts for your application.
|
description: Define shortcuts for your application.
|
||||||
to: /composables/define-shortcuts
|
to: /composables/define-shortcuts
|
||||||
- label: useModal
|
- label: useModal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /composables/use-modal
|
to: /composables/use-modal
|
||||||
- label: useSlideover
|
- label: useSlideover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a slideover within your application.
|
description: Display a slideover within your application.
|
||||||
to: /composables/use-slideover
|
to: /composables/use-slideover
|
||||||
- label: useToast
|
- label: useToast
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a toast within your application.
|
description: Display a toast within your application.
|
||||||
to: /composables/use-toast
|
to: /composables/use-toast
|
||||||
- label: Components
|
- label: Components
|
||||||
icon: i-heroicons-cube-transparent
|
icon: i-lucide-box
|
||||||
to: /components
|
to: /components
|
||||||
active: true
|
active: true
|
||||||
children:
|
children:
|
||||||
- label: Link
|
- label: Link
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Use NuxtLink with superpowers.
|
description: Use NuxtLink with superpowers.
|
||||||
to: /components/link
|
to: /components/link
|
||||||
- label: Modal
|
- label: Modal
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a modal within your application.
|
description: Display a modal within your application.
|
||||||
to: /components/modal
|
to: /components/modal
|
||||||
- label: NavigationMenu
|
- label: NavigationMenu
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of links.
|
description: Display a list of links.
|
||||||
to: /components/navigation-menu
|
to: /components/navigation-menu
|
||||||
- label: Pagination
|
- label: Pagination
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a list of pages.
|
description: Display a list of pages.
|
||||||
to: /components/pagination
|
to: /components/pagination
|
||||||
- label: Popover
|
- label: Popover
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Display a non-modal dialog that floats around a trigger element.
|
description: Display a non-modal dialog that floats around a trigger element.
|
||||||
to: /components/popover
|
to: /components/popover
|
||||||
- label: Progress
|
- label: Progress
|
||||||
icon: i-heroicons-document-text
|
icon: i-lucide-file-text
|
||||||
description: Show a horizontal bar to indicate task progression.
|
description: Show a horizontal bar to indicate task progression.
|
||||||
to: /components/progress
|
to: /components/progress
|
||||||
class: 'justify-center'
|
class: 'justify-center'
|
||||||
|
|||||||
@@ -216,18 +216,18 @@ external:
|
|||||||
props:
|
props:
|
||||||
modelValue:
|
modelValue:
|
||||||
label: 'Backlog'
|
label: 'Backlog'
|
||||||
icon: 'i-heroicons-question-mark-circle'
|
icon: 'i-lucide-circle-help'
|
||||||
searchInput:
|
searchInput:
|
||||||
placeholder: 'Filter...'
|
placeholder: 'Filter...'
|
||||||
items:
|
items:
|
||||||
- label: Backlog
|
- label: Backlog
|
||||||
icon: 'i-heroicons-question-mark-circle'
|
icon: 'i-lucide-circle-help'
|
||||||
- label: Todo
|
- label: Todo
|
||||||
icon: 'i-heroicons-plus-circle'
|
icon: 'i-lucide-circle-plus'
|
||||||
- label: In Progress
|
- label: In Progress
|
||||||
icon: 'i-heroicons-arrow-up-circle'
|
icon: 'i-lucide-circle-arrow-up'
|
||||||
- label: Done
|
- label: Done
|
||||||
icon: 'i-heroicons-check-circle'
|
icon: 'i-lucide-circle-check'
|
||||||
class: 'w-48'
|
class: 'w-48'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -403,7 +403,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
icon: 'i-heroicons-magnifying-glass'
|
icon: 'i-lucide-search'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -416,7 +416,7 @@ props:
|
|||||||
|
|
||||||
### Trailing Icon
|
### Trailing Icon
|
||||||
|
|
||||||
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-heroicons-chevron-down-20-solid`.
|
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-lucide-chevron-down`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -430,7 +430,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
trailingIcon: 'i-heroicons-arrow-small-down-20-solid'
|
trailingIcon: 'i-lucide-arrow-down'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -447,7 +447,7 @@ You can customize this icon globally in your `app.config.ts` under `ui.icons.che
|
|||||||
|
|
||||||
### Selected Icon
|
### Selected Icon
|
||||||
|
|
||||||
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-heroicons-check-20-solid`.
|
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-lucide-check`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -461,7 +461,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
selectedIcon: 'i-heroicons-fire'
|
selectedIcon: 'i-lucide-flame'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -533,7 +533,7 @@ props:
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -548,7 +548,7 @@ external:
|
|||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
- Todo
|
- Todo
|
||||||
|
|||||||
@@ -340,7 +340,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
icon: 'i-heroicons-magnifying-glass'
|
icon: 'i-lucide-search'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -353,7 +353,7 @@ props:
|
|||||||
|
|
||||||
### Trailing Icon
|
### Trailing Icon
|
||||||
|
|
||||||
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-heroicons-chevron-down-20-solid`.
|
Use the `trailing-icon` prop to customize the trailing [Icon](/components/icon). Defaults to `i-lucide-chevron-down`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -367,7 +367,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
trailingIcon: 'i-heroicons-arrow-small-down-20-solid'
|
trailingIcon: 'i-lucide-arrow-down'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -384,7 +384,7 @@ You can customize this icon globally in your `app.config.ts` under `ui.icons.che
|
|||||||
|
|
||||||
### Selected Icon
|
### Selected Icon
|
||||||
|
|
||||||
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-heroicons-check-20-solid`.
|
Use the `selected-icon` prop to customize the icon when an item is selected. Defaults to `i-lucide-check`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -398,7 +398,7 @@ external:
|
|||||||
- modelValue
|
- modelValue
|
||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
selectedIcon: 'i-heroicons-fire'
|
selectedIcon: 'i-lucide-flame'
|
||||||
size: md
|
size: md
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
@@ -470,7 +470,7 @@ props:
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -485,7 +485,7 @@ external:
|
|||||||
props:
|
props:
|
||||||
modelValue: 'Backlog'
|
modelValue: 'Backlog'
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
items:
|
items:
|
||||||
- Backlog
|
- Backlog
|
||||||
- Todo
|
- Todo
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ The close button is not displayed if the `#content` slot is used as it's a part
|
|||||||
|
|
||||||
### Close Icon
|
### Close Icon
|
||||||
|
|
||||||
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-heroicons-x-mark-20-solid`.
|
Use the `close-icon` prop to customize the close button [Icon](/components/icon). Defaults to `i-lucide-x`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -139,7 +139,7 @@ ignore:
|
|||||||
- title
|
- title
|
||||||
props:
|
props:
|
||||||
title: 'Slideover with close button'
|
title: 'Slideover with close button'
|
||||||
closeIcon: 'i-heroicons-arrow-right'
|
closeIcon: 'i-lucide-arrow-right'
|
||||||
slots:
|
slots:
|
||||||
default: |
|
default: |
|
||||||
|
|
||||||
|
|||||||
@@ -83,8 +83,8 @@ ignore:
|
|||||||
- label
|
- label
|
||||||
- defaultValue
|
- defaultValue
|
||||||
props:
|
props:
|
||||||
uncheckedIcon: 'i-heroicons-x-mark'
|
uncheckedIcon: 'i-lucide-x'
|
||||||
checkedIcon: 'i-heroicons-check'
|
checkedIcon: 'i-lucide-check'
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
label: Check me
|
label: Check me
|
||||||
---
|
---
|
||||||
@@ -108,7 +108,7 @@ props:
|
|||||||
|
|
||||||
### Loading Icon
|
### Loading Icon
|
||||||
|
|
||||||
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-heroicons-arrow-path-20-solid`.
|
Use the `loading-icon` prop to customize the loading icon. Defaults to `i-lucide-refresh-ccw`.
|
||||||
|
|
||||||
::component-code
|
::component-code
|
||||||
---
|
---
|
||||||
@@ -117,7 +117,7 @@ ignore:
|
|||||||
- defaultValue
|
- defaultValue
|
||||||
props:
|
props:
|
||||||
loading: true
|
loading: true
|
||||||
loadingIcon: 'i-heroicons-arrow-path-rounded-square'
|
loadingIcon: 'i-lucide-repeat-2'
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
label: Check me
|
label: Check me
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -33,10 +33,10 @@ external:
|
|||||||
props:
|
props:
|
||||||
items:
|
items:
|
||||||
- label: Account
|
- label: Account
|
||||||
icon: 'i-heroicons-user'
|
icon: 'i-lucide-user'
|
||||||
content: 'This is the account content.'
|
content: 'This is the account content.'
|
||||||
- label: Password
|
- label: Password
|
||||||
icon: 'i-heroicons-lock-closed'
|
icon: 'i-lucide-lock'
|
||||||
content: 'This is the password content.'
|
content: 'This is the password content.'
|
||||||
class: 'w-full'
|
class: 'w-full'
|
||||||
---
|
---
|
||||||
@@ -60,10 +60,10 @@ props:
|
|||||||
content: false
|
content: false
|
||||||
items:
|
items:
|
||||||
- label: Account
|
- label: Account
|
||||||
icon: 'i-heroicons-user'
|
icon: 'i-lucide-user'
|
||||||
content: 'This is the account content.'
|
content: 'This is the account content.'
|
||||||
- label: Password
|
- label: Password
|
||||||
icon: 'i-heroicons-lock-closed'
|
icon: 'i-lucide-lock'
|
||||||
content: 'This is the password content.'
|
content: 'This is the password content.'
|
||||||
class: 'w-full'
|
class: 'w-full'
|
||||||
---
|
---
|
||||||
@@ -85,10 +85,10 @@ props:
|
|||||||
forceMount: false
|
forceMount: false
|
||||||
items:
|
items:
|
||||||
- label: Account
|
- label: Account
|
||||||
icon: 'i-heroicons-user'
|
icon: 'i-lucide-user'
|
||||||
content: 'This is the account content.'
|
content: 'This is the account content.'
|
||||||
- label: Password
|
- label: Password
|
||||||
icon: 'i-heroicons-lock-closed'
|
icon: 'i-lucide-lock'
|
||||||
content: 'This is the password content.'
|
content: 'This is the password content.'
|
||||||
class: 'w-full'
|
class: 'w-full'
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ Pass an `icon` field to the `toast.add` method to display an [Icon](/components/
|
|||||||
options:
|
options:
|
||||||
- name: 'icon'
|
- name: 'icon'
|
||||||
label: 'icon'
|
label: 'icon'
|
||||||
default: 'i-heroicons-wifi'
|
default: 'i-lucide-wifi'
|
||||||
name: 'toast-icon-example'
|
name: 'toast-icon-example'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
@@ -116,14 +116,14 @@ name: 'toast-close-example'
|
|||||||
|
|
||||||
### Close Icon
|
### Close Icon
|
||||||
|
|
||||||
Pass a `closeIcon` field to customize the close button [Icon](/components/icon). Default to `i-heroicons-x-mark-20-solid`.
|
Pass a `closeIcon` field to customize the close button [Icon](/components/icon). Default to `i-lucide-x`.
|
||||||
|
|
||||||
::component-example
|
::component-example
|
||||||
---
|
---
|
||||||
options:
|
options:
|
||||||
- name: 'closeIcon'
|
- name: 'closeIcon'
|
||||||
label: 'closeIcon'
|
label: 'closeIcon'
|
||||||
default: 'i-heroicons-arrow-right'
|
default: 'i-lucide-arrow-right'
|
||||||
name: 'toast-close-icon-example'
|
name: 'toast-close-icon-example'
|
||||||
---
|
---
|
||||||
::
|
::
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"name": "@nuxt/ui-docs",
|
"name": "@nuxt/ui-docs",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@iconify-json/heroicons": "^1.2.1",
|
"@iconify-json/lucide": "^1.2.11",
|
||||||
"@iconify-json/simple-icons": "^1.2.10",
|
"@iconify-json/simple-icons": "^1.2.10",
|
||||||
"@iconify-json/vscode-icons": "^1.2.2",
|
"@iconify-json/vscode-icons": "^1.2.2",
|
||||||
"@nuxt/content": "3.0.0-alpha.5",
|
"@nuxt/content": "3.0.0-alpha.5",
|
||||||
|
|||||||
@@ -1,29 +1,29 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
const items = [{
|
const items = [{
|
||||||
label: 'Getting Started',
|
label: 'Getting Started',
|
||||||
icon: 'i-heroicons-information-circle',
|
icon: 'i-lucide-info',
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}, {
|
}, {
|
||||||
label: 'Installation',
|
label: 'Installation',
|
||||||
icon: 'i-heroicons-arrow-down-tray',
|
icon: 'i-lucide-download',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}, {
|
}, {
|
||||||
label: 'Theming',
|
label: 'Theming',
|
||||||
icon: 'i-heroicons-eye-dropper',
|
icon: 'i-lucide-pipette',
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}, {
|
}, {
|
||||||
label: 'Layouts',
|
label: 'Layouts',
|
||||||
icon: 'i-heroicons-rectangle-group',
|
icon: 'i-lucide-layout-dashboard',
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}, {
|
}, {
|
||||||
label: 'Components',
|
label: 'Components',
|
||||||
icon: 'i-heroicons-square-3-stack-3d',
|
icon: 'i-lucide-layers-3',
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}, {
|
}, {
|
||||||
label: 'Utilities',
|
label: 'Utilities',
|
||||||
slot: 'custom' as const,
|
slot: 'custom' as const,
|
||||||
icon: 'i-heroicons-wrench-screwdriver',
|
icon: 'i-lucide-wrench',
|
||||||
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed neque elit, tristique placerat feugiat ac, facilisis vitae arcu. Proin eget egestas augue. Praesent ut sem nec arcu pellentesque aliquet. Duis dapibus diam vel metus tempus vulputate.'
|
||||||
}]
|
}]
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ const actions = (color: string) => [{
|
|||||||
const data = {
|
const data = {
|
||||||
title: 'Heads up!',
|
title: 'Heads up!',
|
||||||
description: 'You can change the primary color in your app config.',
|
description: 'You can change the primary color in your app config.',
|
||||||
icon: 'i-heroicons-command-line',
|
icon: 'i-lucide-terminal',
|
||||||
close: true
|
close: true
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ const sizes = Object.keys(theme.variants.size) as Array<keyof typeof theme.varia
|
|||||||
<UAvatar v-for="size in sizes" :key="size" src="https://github.com/benjamincanac.png" alt="Benjamin Canac" :size="size" />
|
<UAvatar v-for="size in sizes" :key="size" src="https://github.com/benjamincanac.png" alt="Benjamin Canac" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-1.5">
|
<div class="flex items-center gap-1.5">
|
||||||
<UAvatar v-for="size in sizes" :key="size" icon="i-heroicons-photo" :size="size" />
|
<UAvatar v-for="size in sizes" :key="size" icon="i-lucide-image" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-1.5">
|
<div class="flex items-center gap-1.5">
|
||||||
<UAvatar v-for="size in sizes" :key="size" alt="Benjamin Canac" :size="size" />
|
<UAvatar v-for="size in sizes" :key="size" alt="Benjamin Canac" :size="size" />
|
||||||
|
|||||||
@@ -14,13 +14,13 @@ const variants = Object.keys(theme.variants.variant) as Array<keyof typeof theme
|
|||||||
</UBadge>
|
</UBadge>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UBadge v-for="variant in variants" :key="variant" icon="i-heroicons-rocket-launch" :label="upperFirst(variant)" :variant="variant" />
|
<UBadge v-for="variant in variants" :key="variant" icon="i-lucide-rocket" :label="upperFirst(variant)" :variant="variant" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UBadge
|
<UBadge
|
||||||
v-for="variant in variants"
|
v-for="variant in variants"
|
||||||
:key="variant"
|
:key="variant"
|
||||||
icon="i-heroicons-rocket-launch"
|
icon="i-lucide-rocket"
|
||||||
:label="upperFirst(variant)"
|
:label="upperFirst(variant)"
|
||||||
:variant="variant"
|
:variant="variant"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
@@ -40,7 +40,7 @@ const variants = Object.keys(theme.variants.variant) as Array<keyof typeof theme
|
|||||||
<UBadge v-for="size in sizes" :key="size" label="Badge" :size="size" />
|
<UBadge v-for="size in sizes" :key="size" label="Badge" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-86px]">
|
<div class="flex items-center gap-2 ms-[-86px]">
|
||||||
<UBadge v-for="size in sizes" :key="size" icon="i-heroicons-rocket-launch" label="Badge" :size="size" />
|
<UBadge v-for="size in sizes" :key="size" icon="i-lucide-rocket" label="Badge" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-86px]">
|
<div class="flex items-center gap-2 ms-[-86px]">
|
||||||
<UBadge v-for="size in sizes" :key="size" :avatar="{ src: 'https://github.com/benjamincanac.png' }" label="Badge" :size="size" />
|
<UBadge v-for="size in sizes" :key="size" :avatar="{ src: 'https://github.com/benjamincanac.png' }" label="Badge" :size="size" />
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ const items = [{
|
|||||||
to: '/'
|
to: '/'
|
||||||
}, {
|
}, {
|
||||||
slot: 'dropdown' as const,
|
slot: 'dropdown' as const,
|
||||||
icon: 'i-heroicons-ellipsis-horizontal',
|
icon: 'i-lucide-ellipsis',
|
||||||
children: [{
|
children: [{
|
||||||
label: 'Documentation'
|
label: 'Documentation'
|
||||||
}, {
|
}, {
|
||||||
|
|||||||
@@ -47,13 +47,13 @@ function onClick() {
|
|||||||
</UButton>
|
</UButton>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UButton v-for="variant in variants" :key="variant" icon="i-heroicons-rocket-launch" :label="upperFirst(variant)" :variant="variant" />
|
<UButton v-for="variant in variants" :key="variant" icon="i-lucide-rocket" :label="upperFirst(variant)" :variant="variant" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UButton
|
<UButton
|
||||||
v-for="variant in variants"
|
v-for="variant in variants"
|
||||||
:key="variant"
|
:key="variant"
|
||||||
icon="i-heroicons-rocket-launch"
|
icon="i-lucide-rocket"
|
||||||
:label="upperFirst(variant)"
|
:label="upperFirst(variant)"
|
||||||
:variant="variant"
|
:variant="variant"
|
||||||
color="neutral"
|
color="neutral"
|
||||||
@@ -73,7 +73,7 @@ function onClick() {
|
|||||||
<UButton v-for="size in sizes" :key="size" label="Button" :size="size" />
|
<UButton v-for="size in sizes" :key="size" label="Button" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-171px]">
|
<div class="flex items-center gap-2 ms-[-171px]">
|
||||||
<UButton v-for="size in sizes" :key="size" icon="i-heroicons-rocket-launch" label="Button" :size="size" />
|
<UButton v-for="size in sizes" :key="size" icon="i-lucide-rocket" label="Button" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-171px]">
|
<div class="flex items-center gap-2 ms-[-171px]">
|
||||||
<UButton v-for="size in sizes" :key="size" :avatar="{ src: 'https://github.com/benjamincanac.png' }" label="Button" :size="size" />
|
<UButton v-for="size in sizes" :key="size" :avatar="{ src: 'https://github.com/benjamincanac.png' }" label="Button" :size="size" />
|
||||||
@@ -82,7 +82,7 @@ function onClick() {
|
|||||||
<UButton
|
<UButton
|
||||||
v-for="size in sizes"
|
v-for="size in sizes"
|
||||||
:key="size"
|
:key="size"
|
||||||
icon="i-heroicons-rocket-launch"
|
icon="i-lucide-rocket"
|
||||||
label="Square"
|
label="Square"
|
||||||
square
|
square
|
||||||
:size="size"
|
:size="size"
|
||||||
@@ -99,7 +99,7 @@ function onClick() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-68px]">
|
<div class="flex items-center gap-2 ms-[-68px]">
|
||||||
<UButton v-for="size in sizes" :key="size" icon="i-heroicons-rocket-launch" :size="size" />
|
<UButton v-for="size in sizes" :key="size" icon="i-lucide-rocket" :size="size" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2 ms-[-68px]">
|
<div class="flex items-center gap-2 ms-[-68px]">
|
||||||
<UButton
|
<UButton
|
||||||
@@ -112,10 +112,10 @@ function onClick() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UButton icon="i-heroicons-rocket-launch" trailing-icon="i-heroicons-chevron-down-20-solid" label="Block" block />
|
<UButton icon="i-lucide-rocket" trailing-icon="i-lucide-chevron-down" label="Block" block />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UButton icon="i-heroicons-cloud-arrow-down" label="Button" class="group" :ui="{ leadingIcon: 'group-hover:animate-pulse' }" />
|
<UButton icon="i-lucide-cloud-download" label="Button" class="group" :ui="{ leadingIcon: 'group-hover:animate-pulse' }" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ const checked = ref(true)
|
|||||||
<UCheckbox v-model="checked" label="Primary" />
|
<UCheckbox v-model="checked" label="Primary" />
|
||||||
<UCheckbox label="Neutral" color="neutral" :default-value="true" />
|
<UCheckbox label="Neutral" color="neutral" :default-value="true" />
|
||||||
<UCheckbox label="Error" color="error" :model-value="true" />
|
<UCheckbox label="Error" color="error" :model-value="true" />
|
||||||
<UCheckbox label="Icon" icon="i-heroicons-heart-solid" :model-value="true" />
|
<UCheckbox label="Icon" icon="i-lucide-heart" :model-value="true" />
|
||||||
<UCheckbox label="Default value" :default-value="true" />
|
<UCheckbox label="Default value" :default-value="true" />
|
||||||
<UCheckbox label="Indeterminate" indeterminate />
|
<UCheckbox label="Indeterminate" indeterminate />
|
||||||
<UCheckbox label="Required" required />
|
<UCheckbox label="Required" required />
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ const positions = Object.keys(theme.variants.position) as Array<keyof typeof the
|
|||||||
|
|
||||||
const items = [{
|
const items = [{
|
||||||
name: 'messages',
|
name: 'messages',
|
||||||
icon: 'i-heroicons-chat-bubble-oval-left',
|
icon: 'i-lucide-message-circle',
|
||||||
count: 3
|
count: 3
|
||||||
}, {
|
}, {
|
||||||
name: 'notifications',
|
name: 'notifications',
|
||||||
icon: 'i-heroicons-bell',
|
icon: 'i-lucide-bell',
|
||||||
count: 0
|
count: 0
|
||||||
}]
|
}]
|
||||||
</script>
|
</script>
|
||||||
@@ -19,7 +19,7 @@ const items = [{
|
|||||||
<div class="flex flex-col gap-4">
|
<div class="flex flex-col gap-4">
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<UChip v-for="position in positions" :key="position" :position="position">
|
<UChip v-for="position in positions" :key="position" :position="position">
|
||||||
<UButton icon="i-heroicons-inbox" color="neutral" variant="subtle" />
|
<UButton icon="i-lucide-inbox" color="neutral" variant="subtle" />
|
||||||
</UChip>
|
</UChip>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user