diff --git a/.github/workflows/ci-v3.yml b/.github/workflows/ci-v3.yml index c0d92358f6..d5f649d429 100644 --- a/.github/workflows/ci-v3.yml +++ b/.github/workflows/ci-v3.yml @@ -56,6 +56,9 @@ jobs: - name: Test run: pnpm run test + - name: Test (vue) + run: pnpm run test:vue + - name: Build run: pnpm run build diff --git a/.gitignore b/.gitignore index 4a7f73a2ed..96dceea8ac 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ logs .env .env.* !.env.example + +playground-vue/auto-imports.d.ts +playground-vue/components.d.ts diff --git a/build.config.ts b/build.config.ts index 981b59c3a3..6373e67aec 100644 --- a/build.config.ts +++ b/build.config.ts @@ -1,6 +1,13 @@ import { defineBuildConfig } from 'unbuild' export default defineBuildConfig({ + entries: [ + './src/unplugin', + './src/vite' + ], + rollup: { + emitCJS: true + }, replace: { 'process.env.DEV': 'false' }, @@ -8,5 +15,6 @@ export default defineBuildConfig({ 'mkdist:entry:options'(ctx, entry, options) { options.addRelativeDeclarationExtensions = false } - } + }, + externals: ['#build/ui', 'vite'] }) diff --git a/docs/app/app.vue b/docs/app/app.vue index 63be6b093d..d70202f652 100644 --- a/docs/app/app.vue +++ b/docs/app/app.vue @@ -76,7 +76,16 @@ useServerSeoMeta({ twitterCard: 'summary_large_image' }) -provide('navigation', navigation) +const updatedNavigation = computed(() => navigation.value.map(item => ({ + ...item, + children: item.children?.map(child => ({ + ...child, + active: child.title === 'Installation' ? route.path.startsWith('/getting-started/installation') : undefined, + children: child.title === 'Installation' ? [] : child.children + })) || [] +}))) + +provide('navigation', updatedNavigation) diff --git a/docs/app/pages/[...slug].vue b/docs/app/pages/[...slug].vue index adaa362c15..4cfda96f16 100644 --- a/docs/app/pages/[...slug].vue +++ b/docs/app/pages/[...slug].vue @@ -1,6 +1,7 @@ + + diff --git a/playground-vue/package.json b/playground-vue/package.json new file mode 100644 index 0000000000..6cca12892e --- /dev/null +++ b/playground-vue/package.json @@ -0,0 +1,24 @@ +{ + "name": "playground-vue", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vue-tsc -b && vite build", + "preview": "vite preview" + }, + "dependencies": { + "@nuxt/ui": "latest", + "vue": "^3.5.10", + "vue-router": "^4.4.5" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.1.4", + "typescript": "^5.5.3", + "unplugin-auto-import": "^0.18.3", + "unplugin-vue-components": "^0.27.4", + "vite": "^5.4.8", + "vue-tsc": "^2.1.6" + } +} diff --git a/playground-vue/src/app.vue b/playground-vue/src/app.vue new file mode 100644 index 0000000000..abd46fe55f --- /dev/null +++ b/playground-vue/src/app.vue @@ -0,0 +1,120 @@ + + + + + diff --git a/playground-vue/src/main.ts b/playground-vue/src/main.ts new file mode 100644 index 0000000000..19dd511a73 --- /dev/null +++ b/playground-vue/src/main.ts @@ -0,0 +1,54 @@ +import { createApp, ref } from 'vue' +import { createRouter, createWebHistory } from 'vue-router' +import uiPlugin from '@nuxt/ui/vue-plugin' + +import App from './app.vue' + +const pages = import.meta.glob('../../playground/app/pages/**/*.vue') +const components = import.meta.glob('../../playground/app/components/**/*.vue') + +const routes = Object.keys(pages).map((path) => { + const name = path.match(/\.\.\/\.\.\/playground\/app\/pages(.*)\.vue$/)![1].toLowerCase() + return { + path: name === '/index' ? '/' : name, + component: pages[path] + } +}) + +const router = createRouter({ + routes, + history: createWebHistory() +}) + +const app = createApp(App) + +Object.entries(components).forEach(([path, component]) => { + const name = path.split('/').pop()!.replace('.vue', '') + app.component(name, defineAsyncComponent(component as any)) +}) + +app.use(router) +app.use(uiPlugin) + +// @ts-expect-error unknown global property +globalThis.useFetch = async (url: string, options: RequestInit & { transform?: (data) => any } = {}) => { + const data = ref() + const status = ref('idle') + async function _fetch() { + status.value = 'loading' + try { + data.value = await fetch(url, options).then(r => r.json()).then(r => options.transform ? options.transform(r) : r) + status.value = 'success' + } catch (error) { + console.error(error) + status.value = 'error' + } + } + _fetch() + return Promise.resolve({ + data, + status + }) +} + +app.mount('#app') diff --git a/playground-vue/src/vite-env.d.ts b/playground-vue/src/vite-env.d.ts new file mode 100644 index 0000000000..11f02fe2a0 --- /dev/null +++ b/playground-vue/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/playground-vue/tsconfig.app.json b/playground-vue/tsconfig.app.json new file mode 100644 index 0000000000..7128288240 --- /dev/null +++ b/playground-vue/tsconfig.app.json @@ -0,0 +1,33 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "module": "ESNext", + "lib": [ + "ES2020", + "DOM", + "DOM.Iterable" + ], + "skipLibCheck": true, + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "preserve", + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": [ + "src/**/*.ts", + "src/**/*.tsx", + "src/**/*.vue", + "auto-imports.d.ts", + "components.d.ts", + "app.config.ts" + ] +} diff --git a/playground-vue/tsconfig.json b/playground-vue/tsconfig.json new file mode 100644 index 0000000000..1ffef600d9 --- /dev/null +++ b/playground-vue/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/playground-vue/tsconfig.node.json b/playground-vue/tsconfig.node.json new file mode 100644 index 0000000000..0d3d71446a --- /dev/null +++ b/playground-vue/tsconfig.node.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "target": "ES2022", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["vite.config.ts"] +} diff --git a/playground-vue/vite.config.ts b/playground-vue/vite.config.ts new file mode 100644 index 0000000000..0279f0c688 --- /dev/null +++ b/playground-vue/vite.config.ts @@ -0,0 +1,35 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' +import AutoImports from 'unplugin-auto-import/vite' +import VueComponents from 'unplugin-vue-components' + +import ui from '../src/vite' + +// https://vitejs.dev/config/ +export default defineConfig({ + server: { + fs: { + allow: ['..'] + } + }, + plugins: [ + vue(), + ui({ + ui: { + colors: { + primary: 'green', + neutral: 'slate' + } + } + }), + // these are required as we share the component pages with the Nuxt playground + AutoImports({ imports: ['vue'] }), + VueComponents.vite({ + dirs: ['../playground/app/components'] + }) + ], + optimizeDeps: { + // prevents reloading page when navigating between components + include: ['radix-vue/namespaced', 'vaul-vue', 'fast-deep-equal', 'embla-carousel-vue', 'embla-carousel-autoplay', 'embla-carousel-auto-scroll', 'embla-carousel-auto-height', 'embla-carousel-class-names', 'embla-carousel-fade', 'embla-carousel-wheel-gestures'] + } +}) diff --git a/playground/app/pages/components/collapsible.vue b/playground/app/pages/components/collapsible.vue index 393a247057..b895ca9d43 100644 --- a/playground/app/pages/components/collapsible.vue +++ b/playground/app/pages/components/collapsible.vue @@ -1,4 +1,6 @@ diff --git a/playground/app/pages/components/modal.vue b/playground/app/pages/components/modal.vue index 7fbd4855cb..3ca517ce0a 100644 --- a/playground/app/pages/components/modal.vue +++ b/playground/app/pages/components/modal.vue @@ -1,5 +1,7 @@ + + + + diff --git a/src/runtime/vue/components/Link.vue b/src/runtime/vue/components/Link.vue new file mode 100644 index 0000000000..f383b0f50d --- /dev/null +++ b/src/runtime/vue/components/Link.vue @@ -0,0 +1,195 @@ + + + + + diff --git a/src/runtime/vue/plugins/color-mode.ts b/src/runtime/vue/plugins/color-mode.ts new file mode 100644 index 0000000000..ac3a2d5aa1 --- /dev/null +++ b/src/runtime/vue/plugins/color-mode.ts @@ -0,0 +1,8 @@ +import { useDark } from '@vueuse/core' +import type { Plugin } from 'vue' + +export default { + install() { + useDark() + } +} satisfies Plugin diff --git a/src/runtime/vue/plugins/head.ts b/src/runtime/vue/plugins/head.ts new file mode 100644 index 0000000000..a90adccfce --- /dev/null +++ b/src/runtime/vue/plugins/head.ts @@ -0,0 +1,8 @@ +import { createHead } from '@unhead/vue' +import type { Plugin } from 'vue' + +export default { + install(app) { + app.use(createHead()) + } +} satisfies Plugin diff --git a/src/runtime/vue/stubs.ts b/src/runtime/vue/stubs.ts new file mode 100644 index 0000000000..e96414c6f0 --- /dev/null +++ b/src/runtime/vue/stubs.ts @@ -0,0 +1,36 @@ +import { ref } from 'vue' +import type { Ref, Plugin as VuePlugin } from 'vue' + +import appConfig from '#build/app.config' +import type { NuxtApp } from '#app' + +export { useHead } from '@unhead/vue' +export { useRoute, useRouter } from 'vue-router' + +export const useAppConfig = () => appConfig + +const state: Record = {} + +export const useState = (key: string, init: () => T): Ref => { + if (state[key]) { + return state[key] as Ref + } + const value = ref(init()) + state[key] = value + return value as Ref +} + +export function useNuxtApp() { + return { + isHydrating: true, + payload: { serverRendered: false } + } +} + +export function defineNuxtPlugin(plugin: (nuxtApp: NuxtApp) => void) { + return { + install(app) { + plugin({ vueApp: app } as NuxtApp) + } + } satisfies VuePlugin +} diff --git a/src/templates.ts b/src/templates.ts index 4a9fed9c87..a30047007f 100644 --- a/src/templates.ts +++ b/src/templates.ts @@ -1,13 +1,15 @@ import { fileURLToPath } from 'node:url' import { kebabCase } from 'scule' import { addTemplate, addTypeTemplate } from '@nuxt/kit' -import type { Nuxt } from '@nuxt/schema' +import type { Nuxt, NuxtTemplate, NuxtTypeTemplate } from '@nuxt/schema' import type { ModuleOptions } from './module' import * as theme from './theme' -export function addTemplates(options: ModuleOptions, nuxt: Nuxt) { +export function getTemplates(options: ModuleOptions, uiConfig: Record) { + const templates: NuxtTemplate[] = [] + for (const component in theme) { - addTemplate({ + templates.push({ filename: `ui/${kebabCase(component)}.ts`, write: true, getContents: async () => { @@ -41,20 +43,20 @@ export function addTemplates(options: ModuleOptions, nuxt: Nuxt) { }) } - addTemplate({ + templates.push({ filename: 'ui/index.ts', write: true, getContents: () => Object.keys(theme).map(component => `export { default as ${component} } from './${kebabCase(component)}'`).join('\n') }) // FIXME: `typeof colors[number]` should include all colors from the theme - addTypeTemplate({ + templates.push({ filename: 'types/ui.d.ts', getContents: () => `import * as ui from '#build/ui' import type { DeepPartial } from '#ui/types/utils' import colors from 'tailwindcss/colors' -const icons = ${JSON.stringify(nuxt.options.appConfig.ui.icons)}; +const icons = ${JSON.stringify(uiConfig.icons)}; type NeutralColor = 'slate' | 'gray' | 'zinc' | 'neutral' | 'stone' type Color = Exclude @@ -76,4 +78,17 @@ declare module '@nuxt/schema' { export {} ` }) + + return templates +} + +export function addTemplates(options: ModuleOptions, nuxt: Nuxt) { + const templates = getTemplates(options, nuxt.options.appConfig.ui) + for (const template of templates) { + if (template.filename!.endsWith('.d.ts')) { + addTypeTemplate(template as NuxtTypeTemplate) + } else { + addTemplate(template) + } + } } diff --git a/src/theme/context-menu.ts b/src/theme/context-menu.ts index 1656a1e716..45322c4510 100644 --- a/src/theme/context-menu.ts +++ b/src/theme/context-menu.ts @@ -15,7 +15,7 @@ export default (options: Required) => ({ itemTrailingKbds: 'hidden lg:inline-flex items-center shrink-0', itemTrailingKbdsSize: '', itemLabel: 'truncate', - itemLabelExternalIcon: 'size-3 align-top text-[var(--ui-text-dimmed)]' + itemLabelExternalIcon: 'inline-block size-3 align-top text-[var(--ui-text-dimmed)]' }, variants: { active: { diff --git a/src/theme/dropdown-menu.ts b/src/theme/dropdown-menu.ts index 04f8bb8de4..62b27a24ba 100644 --- a/src/theme/dropdown-menu.ts +++ b/src/theme/dropdown-menu.ts @@ -16,7 +16,7 @@ export default (options: Required) => ({ itemTrailingKbds: 'hidden lg:inline-flex items-center shrink-0', itemTrailingKbdsSize: '', itemLabel: 'truncate', - itemLabelExternalIcon: 'size-3 align-top text-[var(--ui-text-dimmed)]' + itemLabelExternalIcon: 'inline-block size-3 align-top text-[var(--ui-text-dimmed)]' }, variants: { active: { diff --git a/src/theme/navigation-menu.ts b/src/theme/navigation-menu.ts index 3411fa96d7..12eb5a50ee 100644 --- a/src/theme/navigation-menu.ts +++ b/src/theme/navigation-menu.ts @@ -14,14 +14,14 @@ export default (options: Required) => ({ linkTrailingBadgeSize: 'sm', linkTrailingIcon: 'size-5 transform shrink-0 group-data-[state=open]:rotate-180 transition-transform duration-200', linkLabel: 'truncate', - linkLabelExternalIcon: 'size-3 align-top text-[var(--ui-text-dimmed)]', + linkLabelExternalIcon: 'inline-block size-3 align-top text-[var(--ui-text-dimmed)]', childList: '', childItem: '', childLink: 'group size-full px-3 py-2 rounded-[calc(var(--ui-radius)*1.5)] flex items-start gap-2 text-left', childLinkWrapper: 'flex flex-col items-start', childLinkIcon: 'size-5 shrink-0', childLinkLabel: 'font-semibold text-sm relative inline-flex', - childLinkLabelExternalIcon: 'size-3 align-top text-[var(--ui-text-dimmed)]', + childLinkLabelExternalIcon: 'inline-block size-3 align-top text-[var(--ui-text-dimmed)]', childLinkDescription: 'text-sm text-[var(--ui-text-muted)]', separator: 'px-2 h-px bg-[var(--ui-border)]', viewportWrapper: 'absolute top-full inset-x-0 flex w-full', diff --git a/src/unplugin.ts b/src/unplugin.ts new file mode 100644 index 0000000000..0b92c41472 --- /dev/null +++ b/src/unplugin.ts @@ -0,0 +1,63 @@ +import { fileURLToPath } from 'node:url' + +import { join } from 'pathe' +import { createUnplugin } from 'unplugin' +import AutoImport from 'unplugin-auto-import' +import { defu } from 'defu' +import tailwind from '@tailwindcss/vite' +import type colors from 'tailwindcss/colors' + +import type * as ui from '#build/ui' + +import { defaultOptions, getDefaultUiConfig, resolveColors } from './defaults' +import type { ModuleOptions } from './module' +import type icons from './theme/icons' + +import TemplatePlugin from './plugins/templates' +import PluginsPlugin from './plugins/plugins' +import AppConfigPlugin from './plugins/app-config' +import ComponentImportPlugin from './plugins/components' +import NuxtEnvironmentPlugin from './plugins/nuxt-environment' + +import type { DeepPartial } from './runtime/types/utils' + +type NeutralColor = 'slate' | 'gray' | 'zinc' | 'neutral' | 'stone' +type Color = Exclude | (string & {}) + +type AppConfigUI = { + // TODO: add type hinting for colors from `options.theme.colors` + colors?: Record & { neutral?: NeutralColor } + icons?: Partial +} & DeepPartial + +export interface NuxtUIOptions extends Omit { + /** Whether to generate declaration files for auto-imported components. */ + dts?: boolean + ui?: AppConfigUI + /** + * Enable or disable `@vueuse/core` color-mode integration + * @defaultValue `true` + */ + colorMode?: boolean +} + +export const runtimeDir = fileURLToPath(new URL('./runtime', import.meta.url)) + +export const NuxtUIPlugin = createUnplugin((_options = {}, meta) => { + const options = defu(_options, { fonts: false }, defaultOptions) + + options.theme = options.theme || {} + options.theme.colors = resolveColors(options.theme.colors) + + const appConfig = defu({ ui: options.ui }, { ui: getDefaultUiConfig(options.theme.colors) }) + + return [ + NuxtEnvironmentPlugin(), + ...ComponentImportPlugin(meta.framework, options), + AutoImport[meta.framework]({ dts: options.dts ?? true, dirs: [join(runtimeDir, 'composables')] }), + tailwind(), + PluginsPlugin(options), + TemplatePlugin(options, appConfig), + AppConfigPlugin(options, appConfig) + ] +}) diff --git a/src/vite.ts b/src/vite.ts new file mode 100644 index 0000000000..8b344b8191 --- /dev/null +++ b/src/vite.ts @@ -0,0 +1,4 @@ +import { NuxtUIPlugin } from './unplugin' + +export type { NuxtUIOptions } from './unplugin' +export default NuxtUIPlugin.vite diff --git a/test/components/Button.spec.ts b/test/components/Button.spec.ts index 4bdda5d631..7805864d2b 100644 --- a/test/components/Button.spec.ts +++ b/test/components/Button.spec.ts @@ -52,7 +52,7 @@ describe('Button', () => { let resolve: any | null = null const wrapper = await mountSuspended({ components: { Button }, - async setup() { + setup() { function onClick() { return new Promise(res => resolve = res) } @@ -80,7 +80,7 @@ describe('Button', () => { let resolve: any | null = null const wrapper = await mountSuspended({ components: { Button, UForm }, - async setup() { + setup() { function onSubmit() { return new Promise(res => resolve = res) } diff --git a/test/components/Link.spec.ts b/test/components/Link.spec.ts index 26acb77f32..fad63f6f93 100644 --- a/test/components/Link.spec.ts +++ b/test/components/Link.spec.ts @@ -1,5 +1,6 @@ import { describe, it, expect } from 'vitest' -import Link, { type LinkProps, type LinkSlots } from '../../src/runtime/components/Link.vue' +import { ULink as Link } from '#components' +import type { LinkProps, LinkSlots } from '../../src/runtime/components/Link.vue' import ComponentRender from '../component-render' describe('Link', () => { diff --git a/test/components/__snapshots__/Accordion-vue.spec.ts.snap b/test/components/__snapshots__/Accordion-vue.spec.ts.snap new file mode 100644 index 0000000000..2760f7a243 --- /dev/null +++ b/test/components/__snapshots__/Accordion-vue.spec.ts.snap @@ -0,0 +1,735 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Accordion > renders with as correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with body slot correctly 1`] = ` +"
+
+

+ +
+
+

+
+
Body slot
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with class correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with collapsible correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with content slot correctly 1`] = ` +"
+
+

+ +
+
+

+
Content slot
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with custom body slot correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+
+
Custom body slot
+
+
+
" +`; + +exports[`Accordion > renders with custom slot correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+
Custom slot
+
+
" +`; + +exports[`Accordion > renders with default slot correctly 1`] = ` +"
+
+

+ +
+
+

+
+
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.
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with defaultValue correctly 1`] = ` +"
+
+

+ +
+
+

+
+
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.
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with disabled correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with items correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with labelKey correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with leading slot correctly 1`] = ` +"
+
+

+ +
+
+

+
+
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.
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with modelValue correctly 1`] = ` +"
+
+

+ +
+
+

+
+
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.
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with trailing slot correctly 1`] = ` +"
+
+

+ +
+
+

+
+
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.
+
+
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with trailingIcon correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with type correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; + +exports[`Accordion > renders with ui correctly 1`] = ` +"
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
+

+ +
+
" +`; diff --git a/test/components/__snapshots__/Alert-vue.spec.ts.snap b/test/components/__snapshots__/Alert-vue.spec.ts.snap new file mode 100644 index 0000000000..520de56406 --- /dev/null +++ b/test/components/__snapshots__/Alert-vue.spec.ts.snap @@ -0,0 +1,257 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Alert > renders with as correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with avatar correctly 1`] = ` +"
+
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with class correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with close correctly 1`] = ` +"
+ +
+
Alert
+ + +
+
+
" +`; + +exports[`Alert > renders with close slot correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with closeIcon correctly 1`] = ` +"
+ +
+
Alert
+ + +
+
+
" +`; + +exports[`Alert > renders with description correctly 1`] = ` +"
+ +
+
Alert
+
Description
+ +
+ +
" +`; + +exports[`Alert > renders with description slot correctly 1`] = ` +"
+ +
+
Alert
+
Description slot
+ +
+ +
" +`; + +exports[`Alert > renders with icon correctly 1`] = ` +"
+
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with leading slot correctly 1`] = ` +"
+ +
+
Leading slot
+ + +
+ +
" +`; + +exports[`Alert > renders with neutral variant outline correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with neutral variant soft correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with neutral variant solid correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with neutral variant subtle correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with primary variant outline correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with primary variant soft correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with primary variant solid correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with primary variant subtle correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with title correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; + +exports[`Alert > renders with title slot correctly 1`] = ` +"
+ +
+
Title slot
+ + +
+ +
" +`; + +exports[`Alert > renders with ui correctly 1`] = ` +"
+ +
+
Alert
+ + +
+ +
" +`; diff --git a/test/components/__snapshots__/Avatar-vue.spec.ts.snap b/test/components/__snapshots__/Avatar-vue.spec.ts.snap new file mode 100644 index 0000000000..6e8091a4de --- /dev/null +++ b/test/components/__snapshots__/Avatar-vue.spec.ts.snap @@ -0,0 +1,31 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Avatar > renders with alt correctly 1`] = `"BC"`; + +exports[`Avatar > renders with class correctly 1`] = `""`; + +exports[`Avatar > renders with icon correctly 1`] = `""`; + +exports[`Avatar > renders with size 2xl correctly 1`] = `""`; + +exports[`Avatar > renders with size 2xs correctly 1`] = `""`; + +exports[`Avatar > renders with size 3xl correctly 1`] = `""`; + +exports[`Avatar > renders with size 3xs correctly 1`] = `""`; + +exports[`Avatar > renders with size lg correctly 1`] = `""`; + +exports[`Avatar > renders with size md correctly 1`] = `""`; + +exports[`Avatar > renders with size sm correctly 1`] = `""`; + +exports[`Avatar > renders with size xl correctly 1`] = `""`; + +exports[`Avatar > renders with size xs correctly 1`] = `""`; + +exports[`Avatar > renders with src correctly 1`] = `""`; + +exports[`Avatar > renders with text correctly 1`] = `"+1"`; + +exports[`Avatar > renders with ui correctly 1`] = `""`; diff --git a/test/components/__snapshots__/AvatarGroup-vue.spec.ts.snap b/test/components/__snapshots__/AvatarGroup-vue.spec.ts.snap new file mode 100644 index 0000000000..50228a063c --- /dev/null +++ b/test/components/__snapshots__/AvatarGroup-vue.spec.ts.snap @@ -0,0 +1,77 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`AvatarGroup > renders with as correctly 1`] = `"NRRHBC"`; + +exports[`AvatarGroup > renders with class correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with default slot correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with max correctly 1`] = `"
+1RHBC
"`; + +exports[`AvatarGroup > renders with size 2xl correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size 2xs correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size 3xl correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size 3xs correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size lg correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size md correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size sm correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size xl correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with size xs correctly 1`] = ` +"
+ NRRHBC +
" +`; + +exports[`AvatarGroup > renders with ui correctly 1`] = ` +"
+ NRRHBC +
" +`; diff --git a/test/components/__snapshots__/Badge-vue.spec.ts.snap b/test/components/__snapshots__/Badge-vue.spec.ts.snap new file mode 100644 index 0000000000..5e7c6e38ea --- /dev/null +++ b/test/components/__snapshots__/Badge-vue.spec.ts.snap @@ -0,0 +1,31 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Badge > renders with as correctly 1`] = `"
Badge
"`; + +exports[`Badge > renders with class correctly 1`] = `"Badge"`; + +exports[`Badge > renders with default slot correctly 1`] = `"Default slot"`; + +exports[`Badge > renders with label correctly 1`] = `"Badge"`; + +exports[`Badge > renders with neutral variant outline correctly 1`] = `"Badge"`; + +exports[`Badge > renders with neutral variant soft correctly 1`] = `"Badge"`; + +exports[`Badge > renders with neutral variant solid correctly 1`] = `"Badge"`; + +exports[`Badge > renders with neutral variant subtle correctly 1`] = `"Badge"`; + +exports[`Badge > renders with primary variant outline correctly 1`] = `"Badge"`; + +exports[`Badge > renders with primary variant soft correctly 1`] = `"Badge"`; + +exports[`Badge > renders with primary variant solid correctly 1`] = `"Badge"`; + +exports[`Badge > renders with primary variant subtle correctly 1`] = `"Badge"`; + +exports[`Badge > renders with size lg correctly 1`] = `"Badge"`; + +exports[`Badge > renders with size md correctly 1`] = `"Badge"`; + +exports[`Badge > renders with size sm correctly 1`] = `"Badge"`; diff --git a/test/components/__snapshots__/Breadcrumb-vue.spec.ts.snap b/test/components/__snapshots__/Breadcrumb-vue.spec.ts.snap new file mode 100644 index 0000000000..86912ef3b8 --- /dev/null +++ b/test/components/__snapshots__/Breadcrumb-vue.spec.ts.snap @@ -0,0 +1,146 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Breadcrumb > renders with class correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with custom slot correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Custom slot
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with item slot correctly 1`] = ` +"
+
    +
  1. Item slot
  2. + +
  3. Item slot
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with item-label slot correctly 1`] = ` +"
+
    +
  1. Item label slot
  2. + +
  3. Item label slot
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with item-leading slot correctly 1`] = ` +"
+
    +
  1. Item leading slotHome
  2. + +
  3. Item leading slotComponents
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with item-trailing slot correctly 1`] = ` +"
+
    +
  1. HomeItem trailing slot
  2. + +
  3. ComponentsItem trailing slot
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with items correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with labelKey correctly 1`] = ` +"
+
    +
  1. + +
  2. + +
  3. i-heroicons-cube-transparent
  4. + +
  5. i-heroicons-link
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with separator slot correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with separatorIcon correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; + +exports[`Breadcrumb > renders with ui correctly 1`] = ` +"
+
    +
  1. Home
  2. + +
  3. Components
  4. + +
  5. Breadcrumb
  6. + +
+
" +`; diff --git a/test/components/__snapshots__/Button-vue.spec.ts.snap b/test/components/__snapshots__/Button-vue.spec.ts.snap new file mode 100644 index 0000000000..0a9e556c50 --- /dev/null +++ b/test/components/__snapshots__/Button-vue.spec.ts.snap @@ -0,0 +1,269 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Button > renders with avatar and leadingIcon correctly 1`] = ` +"" +`; + +exports[`Button > renders with avatar and trailingIcon correctly 1`] = ` +"" +`; + +exports[`Button > renders with avatar correctly 1`] = ` +"" +`; + +exports[`Button > renders with block correctly 1`] = ` +"" +`; + +exports[`Button > renders with class correctly 1`] = `""`; + +exports[`Button > renders with default slot correctly 1`] = ` +"" +`; + +exports[`Button > renders with disabled and with link correctly 1`] = ` +" + Button + +" +`; + +exports[`Button > renders with disabled correctly 1`] = ` +"" +`; + +exports[`Button > renders with icon correctly 1`] = ` +"" +`; + +exports[`Button > renders with label correctly 1`] = ` +"" +`; + +exports[`Button > renders with leading and icon correctly 1`] = ` +"" +`; + +exports[`Button > renders with leading slot correctly 1`] = ` +"" +`; + +exports[`Button > renders with leadingIcon correctly 1`] = ` +"" +`; + +exports[`Button > renders with loading and avatar correctly 1`] = ` +"" +`; + +exports[`Button > renders with loading correctly 1`] = ` +"" +`; + +exports[`Button > renders with loading trailing and avatar correctly 1`] = ` +"" +`; + +exports[`Button > renders with loading trailing correctly 1`] = ` +"" +`; + +exports[`Button > renders with loadingIcon correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant ghost correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant link correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant outline correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant soft correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant solid correctly 1`] = ` +"" +`; + +exports[`Button > renders with neutral variant subtle correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant ghost correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant link correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant outline correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant soft correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant solid correctly 1`] = ` +"" +`; + +exports[`Button > renders with primary variant subtle correctly 1`] = ` +"" +`; + +exports[`Button > renders with size lg correctly 1`] = ` +"" +`; + +exports[`Button > renders with size md correctly 1`] = ` +"" +`; + +exports[`Button > renders with size sm correctly 1`] = ` +"" +`; + +exports[`Button > renders with size xl correctly 1`] = ` +"" +`; + +exports[`Button > renders with size xs correctly 1`] = ` +"" +`; + +exports[`Button > renders with square correctly 1`] = ` +"" +`; + +exports[`Button > renders with trailing and icon correctly 1`] = ` +"" +`; + +exports[`Button > renders with trailing slot correctly 1`] = ` +"" +`; + +exports[`Button > renders with trailingIcon correctly 1`] = ` +"" +`; + +exports[`Button > renders with ui correctly 1`] = `""`; diff --git a/test/components/__snapshots__/ButtonGroup-vue.spec.ts.snap b/test/components/__snapshots__/ButtonGroup-vue.spec.ts.snap new file mode 100644 index 0000000000..ff12dd1e79 --- /dev/null +++ b/test/components/__snapshots__/ButtonGroup-vue.spec.ts.snap @@ -0,0 +1,89 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`ButtonGroup > renders orientation vertical with default slot correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with as correctly 1`] = `"
"`; + +exports[`ButtonGroup > renders with class correctly 1`] = `"
"`; + +exports[`ButtonGroup > renders with default slot correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with size lg correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with size md correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with size sm correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with size xl correctly 1`] = ` +"
+
+ + +
+
" +`; + +exports[`ButtonGroup > renders with size xs correctly 1`] = ` +"
+
+ + +
+
" +`; diff --git a/test/components/__snapshots__/Card-vue.spec.ts.snap b/test/components/__snapshots__/Card-vue.spec.ts.snap new file mode 100644 index 0000000000..73949194d7 --- /dev/null +++ b/test/components/__snapshots__/Card-vue.spec.ts.snap @@ -0,0 +1,49 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Card > renders with as correctly 1`] = ` +"
+ + + +
" +`; + +exports[`Card > renders with class correctly 1`] = ` +"
+ + + +
" +`; + +exports[`Card > renders with default slot correctly 1`] = ` +"
+ +
Default slot
+ +
" +`; + +exports[`Card > renders with footer slot correctly 1`] = ` +"
+ + +
Footer slot
+
" +`; + +exports[`Card > renders with header slot correctly 1`] = ` +"
+
Header slot
+ + +
" +`; + +exports[`Card > renders with ui correctly 1`] = ` +"
+ + + +
" +`; diff --git a/test/components/__snapshots__/Carousel-vue.spec.ts.snap b/test/components/__snapshots__/Carousel-vue.spec.ts.snap new file mode 100644 index 0000000000..64a4deff16 --- /dev/null +++ b/test/components/__snapshots__/Carousel-vue.spec.ts.snap @@ -0,0 +1,225 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Carousel > renders with arrows correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
" +`; + +exports[`Carousel > renders with as correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+ +
" +`; + +exports[`Carousel > renders with class correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+ +
" +`; + +exports[`Carousel > renders with dots correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
" +`; + +exports[`Carousel > renders with items correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+ +
" +`; + +exports[`Carousel > renders with next correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
" +`; + +exports[`Carousel > renders with nextIcon correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
" +`; + +exports[`Carousel > renders with orientation vertical correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+ +
" +`; + +exports[`Carousel > renders with prev correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
" +`; + +exports[`Carousel > renders with prevIcon correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
" +`; + +exports[`Carousel > renders with ui correctly 1`] = ` +"
+
+
+
+
+
+
+
+
+
+
+ +
" +`; diff --git a/test/components/__snapshots__/Checkbox-vue.spec.ts.snap b/test/components/__snapshots__/Checkbox-vue.spec.ts.snap new file mode 100644 index 0000000000..31130b58d4 --- /dev/null +++ b/test/components/__snapshots__/Checkbox-vue.spec.ts.snap @@ -0,0 +1,234 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Checkbox > renders with class correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with color neutral correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with defaultValue correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with description correctly 1`] = ` +"
+
+ +
+
+

Description

+
+
" +`; + +exports[`Checkbox > renders with description slot correctly 1`] = ` +"
+
+ +
+
+ +
+
" +`; + +exports[`Checkbox > renders with disabled correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with icon correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with id correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with indeterminate correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with indeterminateIcon correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with label correctly 1`] = ` +"
+
+ +
+
+ +
+
" +`; + +exports[`Checkbox > renders with label slot correctly 1`] = ` +"
+
+ +
+
+ +
+
" +`; + +exports[`Checkbox > renders with name correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with required correctly 1`] = ` +"
+
+ +
+
+ +
+
" +`; + +exports[`Checkbox > renders with size lg correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with size md correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with size sm correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with size xl correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with size xs correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with ui correctly 1`] = ` +"
+
+ +
+ +
" +`; + +exports[`Checkbox > renders with value correctly 1`] = ` +"
+
+ +
+ +
" +`; diff --git a/test/components/__snapshots__/Chip-vue.spec.ts.snap b/test/components/__snapshots__/Chip-vue.spec.ts.snap new file mode 100644 index 0000000000..261b1a4666 --- /dev/null +++ b/test/components/__snapshots__/Chip-vue.spec.ts.snap @@ -0,0 +1,49 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Chip > renders with as correctly 1`] = `""`; + +exports[`Chip > renders with class correctly 1`] = `"
"`; + +exports[`Chip > renders with color neutral correctly 1`] = `"
"`; + +exports[`Chip > renders with content slot correctly 1`] = `"
Content slot
"`; + +exports[`Chip > renders with default slot correctly 1`] = `"
Default slot
"`; + +exports[`Chip > renders with inset correctly 1`] = `"
"`; + +exports[`Chip > renders with position bottom-left correctly 1`] = `"
"`; + +exports[`Chip > renders with position bottom-right correctly 1`] = `"
"`; + +exports[`Chip > renders with position top-left correctly 1`] = `"
"`; + +exports[`Chip > renders with position top-right correctly 1`] = `"
"`; + +exports[`Chip > renders with size 2xl correctly 1`] = `"
"`; + +exports[`Chip > renders with size 2xs correctly 1`] = `"
"`; + +exports[`Chip > renders with size 3xl correctly 1`] = `"
"`; + +exports[`Chip > renders with size 3xs correctly 1`] = `"
"`; + +exports[`Chip > renders with size lg correctly 1`] = `"
"`; + +exports[`Chip > renders with size md correctly 1`] = `"
"`; + +exports[`Chip > renders with size sm correctly 1`] = `"
"`; + +exports[`Chip > renders with size xl correctly 1`] = `"
"`; + +exports[`Chip > renders with size xs correctly 1`] = `"
"`; + +exports[`Chip > renders with text correctly 1`] = `"
Text
"`; + +exports[`Chip > renders with ui correctly 1`] = `"
"`; + +exports[`Chip > renders without show correctly 1`] = ` +"
+ +
" +`; diff --git a/test/components/__snapshots__/Collapsible-vue.spec.ts.snap b/test/components/__snapshots__/Collapsible-vue.spec.ts.snap new file mode 100644 index 0000000000..ac86be50b0 --- /dev/null +++ b/test/components/__snapshots__/Collapsible-vue.spec.ts.snap @@ -0,0 +1,34 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Collapsible > renders with class correctly 1`] = ` +"
+ +
+
" +`; + +exports[`Collapsible > renders with content slot correctly 1`] = ` +"
+ +
Content slot
+
" +`; + +exports[`Collapsible > renders with default slot correctly 1`] = ` +"
Default slot
+
" +`; + +exports[`Collapsible > renders with open correctly 1`] = ` +"
+ +
+
" +`; + +exports[`Collapsible > renders with ui correctly 1`] = ` +"
+ +
+
" +`; diff --git a/test/components/__snapshots__/CommandPalette-vue.spec.ts.snap b/test/components/__snapshots__/CommandPalette-vue.spec.ts.snap new file mode 100644 index 0000000000..9aa4ff8d30 --- /dev/null +++ b/test/components/__snapshots__/CommandPalette-vue.spec.ts.snap @@ -0,0 +1,1299 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`CommandPalette > renders with as correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with class correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with close correctly 1`] = ` +"
+
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with close slot correctly 1`] = ` +"
+
Close slot
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with closeIcon correctly 1`] = ` +"
+
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with custom slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with defaultValue correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with disabled correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with empty slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with groups correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with icon correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with item slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with item-label slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with item-leading slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with item-trailing slot correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with labelKey correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with loading correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with loadingIcon correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with modelValue correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with placeholder correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with selectedIcon correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders with ui correctly 1`] = ` +"
+
+ +
+ +
+ + + +
+ + +
" +`; + +exports[`CommandPalette > renders without results correctly 1`] = ` +"
+
+ +
+ +
+
No results
+ + +
+ + +
" +`; diff --git a/test/components/__snapshots__/Container-vue.spec.ts.snap b/test/components/__snapshots__/Container-vue.spec.ts.snap new file mode 100644 index 0000000000..ab02df77ea --- /dev/null +++ b/test/components/__snapshots__/Container-vue.spec.ts.snap @@ -0,0 +1,7 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Container > renders with as correctly 1`] = `"
"`; + +exports[`Container > renders with class correctly 1`] = `"
"`; + +exports[`Container > renders with default slot correctly 1`] = `"
Default slot
"`; diff --git a/test/components/__snapshots__/ContextMenu-vue.spec.ts.snap b/test/components/__snapshots__/ContextMenu-vue.spec.ts.snap new file mode 100644 index 0000000000..00dab32d7f --- /dev/null +++ b/test/components/__snapshots__/ContextMenu-vue.spec.ts.snap @@ -0,0 +1,209 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`ContextMenu > renders with class correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with custom slot correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with default slot correctly 1`] = ` +"Default slot + + + + + + + + +" +`; + +exports[`ContextMenu > renders with disabled correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with item slot correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with item-label slot correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with item-leading slot correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with item-trailing slot correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with items correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with labelKey correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with size lg correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with size md correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with size sm correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with size xl correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with size xs correctly 1`] = ` +" + + + + + + + + +" +`; + +exports[`ContextMenu > renders with ui correctly 1`] = ` +" + + + + + + + + +" +`; diff --git a/test/components/__snapshots__/Drawer-vue.spec.ts.snap b/test/components/__snapshots__/Drawer-vue.spec.ts.snap new file mode 100644 index 0000000000..72e5bfe08e --- /dev/null +++ b/test/components/__snapshots__/Drawer-vue.spec.ts.snap @@ -0,0 +1,327 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Drawer > renders with body slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with class correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with content slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with default slot correctly 1`] = ` +"Default slot + + + +
+ + + +" +`; + +exports[`Drawer > renders with description correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with description slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with footer slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with header slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with left direction correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with right direction correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with title correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with title slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with top direction correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders with ui correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders without handle correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Drawer > renders without overlay correctly 1`] = ` +" + + + + + + + +" +`; diff --git a/test/components/__snapshots__/DropdownMenu-vue.spec.ts.snap b/test/components/__snapshots__/DropdownMenu-vue.spec.ts.snap new file mode 100644 index 0000000000..7abe26187a --- /dev/null +++ b/test/components/__snapshots__/DropdownMenu-vue.spec.ts.snap @@ -0,0 +1,633 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`DropdownMenu > renders with arrow correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with class correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with custom slot correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with default slot correctly 1`] = ` +"Default slot + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with disabled correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with item slot correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with item-label slot correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with item-leading slot correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with item-trailing slot correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with items correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with labelKey correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with size lg correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with size md correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with size sm correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with size xl correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with size xs correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; + +exports[`DropdownMenu > renders with ui correctly 1`] = ` +" + + + + +
+ +
+ + + +" +`; diff --git a/test/components/__snapshots__/DropdownMenu.spec.ts.snap b/test/components/__snapshots__/DropdownMenu.spec.ts.snap index 50ab58f76b..2cc8777a24 100644 --- a/test/components/__snapshots__/DropdownMenu.spec.ts.snap +++ b/test/components/__snapshots__/DropdownMenu.spec.ts.snap @@ -26,7 +26,7 @@ exports[`DropdownMenu > renders with arrow correctly 1`] = ` -
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
Item label slotItem label slot +
Item label slotItem label slot
-
Item leading slotGitHubItem leading slotSupport +
Item leading slotGitHubItem leading slotSupport
-
GitHubItem trailing slotSupportItem trailing slot +
GitHubItem trailing slotSupportItem trailing slot
@@ -366,7 +366,7 @@ exports[`DropdownMenu > renders with items correctly 1`] = `
-
GitHubSupport +
GitHubSupport
-
i-simple-icons-githubi-heroicons-lifebuoy +
i-simple-icons-githubi-heroicons-lifebuoy
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
-
GitHubSupport +
GitHubSupport
+ +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with as correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with avatar and leadingIcon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with avatar and trailingIcon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with avatar correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with class correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with default slot correctly 1`] = ` +"
+ + + + +
" +`; + +exports[`InputMenu > renders with defaultValue correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with disabled correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with icon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with id correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with item slot correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with item-label slot correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with item-leading slot correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with item-trailing slot correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with items correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with labelKey correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with leading and icon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with leading slot correctly 1`] = ` +"
Leading slot + + + +
" +`; + +exports[`InputMenu > renders with leadingIcon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with loading and avatar correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with loading correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with loading trailing and avatar correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with loading trailing correctly 1`] = ` +"
+ + + + +
" +`; + +exports[`InputMenu > renders with loadingIcon correctly 1`] = ` +"
+ + + +
" +`; + +exports[`InputMenu > renders with modelValue correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with name correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with neutral variant ghost correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with neutral variant none correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with neutral variant outline correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with neutral variant soft correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with neutral variant subtle correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with placeholder correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with primary variant ghost correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with primary variant none correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with primary variant outline correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with primary variant soft correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with primary variant subtle correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with required correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with selectedIcon correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with size lg correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with size md correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with size sm correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with size xl correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with size xs correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with trailing and icon correctly 1`] = ` +"
+ + + + +
" +`; + +exports[`InputMenu > renders with trailing slot correctly 1`] = ` +"
+ + + + +
" +`; + +exports[`InputMenu > renders with trailingIcon correctly 1`] = ` +"
+ + + + +
" +`; + +exports[`InputMenu > renders with trailingIcon correctly 2`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with ui correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; + +exports[`InputMenu > renders with valueKey correctly 1`] = ` +"
+ + +
+
+ + + +
+
+ + +
" +`; diff --git a/test/components/__snapshots__/Kbd-vue.spec.ts.snap b/test/components/__snapshots__/Kbd-vue.spec.ts.snap new file mode 100644 index 0000000000..f73f895659 --- /dev/null +++ b/test/components/__snapshots__/Kbd-vue.spec.ts.snap @@ -0,0 +1,21 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Kbd > renders with as correctly 1`] = `"K"`; + +exports[`Kbd > renders with class correctly 1`] = `"K"`; + +exports[`Kbd > renders with default slot correctly 1`] = `"Default slot"`; + +exports[`Kbd > renders with size lg correctly 1`] = `"K"`; + +exports[`Kbd > renders with size md correctly 1`] = `"K"`; + +exports[`Kbd > renders with size sm correctly 1`] = `"K"`; + +exports[`Kbd > renders with value correctly 1`] = `"K"`; + +exports[`Kbd > renders with variant outline correctly 1`] = `"K"`; + +exports[`Kbd > renders with variant solid correctly 1`] = `"K"`; + +exports[`Kbd > renders with variant subtle correctly 1`] = `"K"`; diff --git a/test/components/__snapshots__/Link-vue.spec.ts.snap b/test/components/__snapshots__/Link-vue.spec.ts.snap new file mode 100644 index 0000000000..dbc76aaf0a --- /dev/null +++ b/test/components/__snapshots__/Link-vue.spec.ts.snap @@ -0,0 +1,19 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Link > renders with activeClass correctly 1`] = `""`; + +exports[`Link > renders with as correctly 1`] = `"
"`; + +exports[`Link > renders with class correctly 1`] = `""`; + +exports[`Link > renders with default slot correctly 1`] = `""`; + +exports[`Link > renders with disabled correctly 1`] = `""`; + +exports[`Link > renders with inactiveClass correctly 1`] = `""`; + +exports[`Link > renders with raw correctly 1`] = `""`; + +exports[`Link > renders with to correctly 1`] = `""`; + +exports[`Link > renders with type correctly 1`] = `""`; diff --git a/test/components/__snapshots__/Modal-vue.spec.ts.snap b/test/components/__snapshots__/Modal-vue.spec.ts.snap new file mode 100644 index 0000000000..4096b847b1 --- /dev/null +++ b/test/components/__snapshots__/Modal-vue.spec.ts.snap @@ -0,0 +1,375 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Modal > renders with body slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with class correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with close slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with closeIcon correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with content slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with default slot correctly 1`] = ` +"Default slot + + + +
+ + + +" +`; + +exports[`Modal > renders with description correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with description slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with footer slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with fullscreen correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with header slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with open correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with title correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with title slot correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders with ui correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders without close correctly 1`] = ` +" + + + +
+ + + +" +`; + +exports[`Modal > renders without overlay correctly 1`] = ` +" + + + + + + + +" +`; + +exports[`Modal > renders without transition correctly 1`] = ` +" + + + +
+ + + +" +`; diff --git a/test/components/__snapshots__/NavigationMenu-vue.spec.ts.snap b/test/components/__snapshots__/NavigationMenu-vue.spec.ts.snap new file mode 100644 index 0000000000..02222e184b --- /dev/null +++ b/test/components/__snapshots__/NavigationMenu-vue.spec.ts.snap @@ -0,0 +1,894 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`NavigationMenu > renders with arrow correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with class correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with custom slot correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with item slot correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with item-label slot correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with item-leading slot correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with item-trailing slot correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with items correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with labelKey correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant link correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant link highlight correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant link highlight neutral correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant pill correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant pill highlight correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with neutral variant pill highlight neutral correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with orientation vertical correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with primary variant link correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with primary variant link highlight correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with primary variant pill correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with primary variant pill highlight correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with trailingIcon correctly 1`] = ` +"" +`; + +exports[`NavigationMenu > renders with ui correctly 1`] = ` +"" +`; diff --git a/test/components/__snapshots__/NavigationMenu.spec.ts.snap b/test/components/__snapshots__/NavigationMenu.spec.ts.snap index 9534878f5f..2a2fb6c50a 100644 --- a/test/components/__snapshots__/NavigationMenu.spec.ts.snap +++ b/test/components/__snapshots__/NavigationMenu.spec.ts.snap @@ -21,7 +21,7 @@ exports[`NavigationMenu > renders with arrow correctly 1`] = `
    -
  • GitHub +
  • GitHub @@ -64,7 +64,7 @@ exports[`NavigationMenu > renders with class correctly 1`] = `
      -
    • GitHub +
    • GitHub @@ -105,7 +105,7 @@ exports[`NavigationMenu > renders with custom slot correctly 1`] = `
        -
      • GitHub +
      • GitHub @@ -183,7 +183,7 @@ exports[`NavigationMenu > renders with item-label slot correctly 1`] = `
          -
        • Item label slot +
        • Item label slot @@ -224,7 +224,7 @@ exports[`NavigationMenu > renders with item-leading slot correctly 1`] = `
            -
          • Item leading slotGitHub +
          • Item leading slotGitHub @@ -265,7 +265,7 @@ exports[`NavigationMenu > renders with item-trailing slot correctly 1`] = `
              -
            • GitHubItem trailing slot +
            • GitHubItem trailing slot
            • @@ -302,7 +302,7 @@ exports[`NavigationMenu > renders with items correctly 1`] = `
                -
              • GitHub +
              • GitHub @@ -343,7 +343,7 @@ exports[`NavigationMenu > renders with labelKey correctly 1`] = `
                  -
                • i-simple-icons-github +
                • i-simple-icons-github @@ -384,7 +384,7 @@ exports[`NavigationMenu > renders with neutral variant link correctly 1`] = `
                    -
                  • GitHub +
                  • GitHub @@ -425,7 +425,7 @@ exports[`NavigationMenu > renders with neutral variant link highlight correctly
                      -
                    • GitHub +
                    • GitHub @@ -466,7 +466,7 @@ exports[`NavigationMenu > renders with neutral variant link highlight neutral co
                        -
                      • GitHub +
                      • GitHub @@ -507,7 +507,7 @@ exports[`NavigationMenu > renders with neutral variant pill correctly 1`] = `
                          -
                        • GitHub +
                        • GitHub @@ -548,7 +548,7 @@ exports[`NavigationMenu > renders with neutral variant pill highlight correctly
                            -
                          • GitHub +
                          • GitHub @@ -589,7 +589,7 @@ exports[`NavigationMenu > renders with neutral variant pill highlight neutral co
                              -
                            • GitHub +
                            • GitHub @@ -630,7 +630,7 @@ exports[`NavigationMenu > renders with orientation vertical correctly 1`] = `
                                -
                              • GitHub +
                              • GitHub @@ -668,7 +668,7 @@ exports[`NavigationMenu > renders with primary variant link correctly 1`] = `
                                  -
                                • GitHub +
                                • GitHub @@ -709,7 +709,7 @@ exports[`NavigationMenu > renders with primary variant link highlight correctly
                                    -
                                  • GitHub +
                                  • GitHub @@ -750,7 +750,7 @@ exports[`NavigationMenu > renders with primary variant pill correctly 1`] = `
                                      -
                                    • GitHub +
                                    • GitHub @@ -791,7 +791,7 @@ exports[`NavigationMenu > renders with primary variant pill highlight correctly
                                        -
                                      • GitHub +
                                      • GitHub @@ -832,7 +832,7 @@ exports[`NavigationMenu > renders with trailingIcon correctly 1`] = `
                                          -
                                        • GitHub +
                                        • GitHub @@ -873,7 +873,7 @@ exports[`NavigationMenu > renders with ui correctly 1`] = `
                                            -
                                          • GitHub +
                                          • GitHub diff --git a/test/components/__snapshots__/Pagination-vue.spec.ts.snap b/test/components/__snapshots__/Pagination-vue.spec.ts.snap new file mode 100644 index 0000000000..aa446bbe6d --- /dev/null +++ b/test/components/__snapshots__/Pagination-vue.spec.ts.snap @@ -0,0 +1,1674 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Pagination > renders with as correctly 1`] = ` +"
                                            +
                                            +
                                            " +`; + +exports[`Pagination > renders with class correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with defaultPage correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with disabled correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with ellipsis slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with ellipsisIcon correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with first slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with firstIcon correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with item slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with itemsPerPage correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with last slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with lastIcon correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant ghost correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant link correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant outline correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant soft correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant solid correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral active variant subtle correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant ghost correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant link correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant outline correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant soft correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant solid correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with neutral variant subtle correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with next slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with nextIcon correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with page correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with prev slot correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with prevIcon correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant ghost correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant link correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant outline correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant soft correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant solid correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary active variant subtle correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant ghost correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant link correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant outline correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant soft correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant solid correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with primary variant subtle correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with showEdges correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with siblingCount correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with size lg correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with size md correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with size sm correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with size xl correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with size xs correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with total correctly 1`] = ` +"" +`; + +exports[`Pagination > renders with ui correctly 1`] = ` +"" +`; + +exports[`Pagination > renders without showControls correctly 1`] = ` +"" +`; diff --git a/test/components/__snapshots__/Popover-vue.spec.ts.snap b/test/components/__snapshots__/Popover-vue.spec.ts.snap new file mode 100644 index 0000000000..f3cd1bfe7d --- /dev/null +++ b/test/components/__snapshots__/Popover-vue.spec.ts.snap @@ -0,0 +1,55 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Popover > renders with arrow correctly 1`] = ` +" + + + +
                                            + +
                                            + + +" +`; + +exports[`Popover > renders with content slot correctly 1`] = ` +" + + + +
                                            + +
                                            + + +" +`; + +exports[`Popover > renders with default slot correctly 1`] = ` +"Default slot + + + +
                                            + +
                                            + + +" +`; + +exports[`Popover > renders with open correctly 1`] = ` +" + + + +
                                            + +
                                            + + +" +`; diff --git a/test/components/__snapshots__/Progress-vue.spec.ts.snap b/test/components/__snapshots__/Progress-vue.spec.ts.snap new file mode 100644 index 0000000000..becda39008 --- /dev/null +++ b/test/components/__snapshots__/Progress-vue.spec.ts.snap @@ -0,0 +1,240 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Progress > renders with animation carousel correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with animation carousel-inverse correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with animation elastic correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with animation swing correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with as correctly 1`] = ` +"
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with class correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with color neutral correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with max correctly 1`] = ` +"
                                            +
                                            50%
                                            +
                                            +
                                            +
                                            +
                                            +
                                            Waiting...
                                            +
                                            Cloning...
                                            +
                                            Migrating...
                                            +
                                            Deploying...
                                            +
                                            Done!
                                            +
                                            +
                                            " +`; + +exports[`Progress > renders with max inverted correctly 1`] = ` +"
                                            +
                                            50%
                                            +
                                            +
                                            +
                                            +
                                            +
                                            Waiting...
                                            +
                                            Cloning...
                                            +
                                            Migrating...
                                            +
                                            Deploying...
                                            +
                                            Done!
                                            +
                                            +
                                            " +`; + +exports[`Progress > renders with modelValue correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with orientation horizontal correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with orientation vertical correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size 2xl correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size 2xs correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size lg correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size md correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size sm correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size xl correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with size xs correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with status correctly 1`] = ` +"
                                            +
                                            50%
                                            +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with status inverted correctly 1`] = ` +"
                                            +
                                            50%
                                            +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with status slot correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; + +exports[`Progress > renders with ui correctly 1`] = ` +"
                                            + +
                                            +
                                            +
                                            + +
                                            " +`; diff --git a/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap b/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap new file mode 100644 index 0000000000..f58bcf40f0 --- /dev/null +++ b/test/components/__snapshots__/RadioGroup-vue.spec.ts.snap @@ -0,0 +1,673 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`RadioGroup > renders with class correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with color neutral correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with defaultValue correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with description correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            +

                                            Description 0

                                            +
                                            +
                                            +
                                            +
                                            +
                                            +

                                            Description 1

                                            +
                                            +
                                            +
                                            +
                                            +
                                            +

                                            Description 2

                                            +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with description slot correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with descriptionKey correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            +

                                            1

                                            +
                                            +
                                            +
                                            +
                                            +
                                            +

                                            2

                                            +
                                            +
                                            +
                                            +
                                            +
                                            +

                                            3

                                            +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with disabled correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with items correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with label slot correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with labelKey correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with legend slot correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with orientation correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with required correctly 1`] = ` +"
                                            +
                                            + Legend +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with size lg correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with size md correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with size sm correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with size xl correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with size xs correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with ui correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; + +exports[`RadioGroup > renders with valueKey correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            +
                                            + +
                                            +
                                            +
                                            +
                                            " +`; diff --git a/test/components/__snapshots__/Select-vue.spec.ts.snap b/test/components/__snapshots__/Select-vue.spec.ts.snap new file mode 100644 index 0000000000..ad590d1b1a --- /dev/null +++ b/test/components/__snapshots__/Select-vue.spec.ts.snap @@ -0,0 +1,2059 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Select > renders with arrow correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with avatar and leadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with avatar and trailingIcon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with avatar correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with class correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with defaultValue correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with disabled correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with icon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with id correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with item slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with item-label slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with item-leading slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with item-trailing slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with items correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with labelKey correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with leading and icon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with leading slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with leadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with loading and avatar correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with loading correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with loading trailing and avatar correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with loading trailing correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with loadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with modelValue correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with name correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with neutral variant ghost correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with neutral variant none correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with neutral variant outline correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with neutral variant soft correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with neutral variant subtle correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with placeholder correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with primary variant ghost correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with primary variant none correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with primary variant outline correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with primary variant soft correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with primary variant subtle correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with required correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with selectedIcon correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with size lg correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with size md correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with size sm correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with size xl correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with size xs correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with trailing and icon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with trailing slot correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with trailingIcon correctly 1`] = ` +" + + +" +`; + +exports[`Select > renders with trailingIcon correctly 2`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with ui correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; + +exports[`Select > renders with valueKey correctly 1`] = ` +" + + + +
                                            +
                                            + + +
                                            +
                                            + + + +" +`; diff --git a/test/components/__snapshots__/SelectMenu-vue.spec.ts.snap b/test/components/__snapshots__/SelectMenu-vue.spec.ts.snap new file mode 100644 index 0000000000..f7f88530eb --- /dev/null +++ b/test/components/__snapshots__/SelectMenu-vue.spec.ts.snap @@ -0,0 +1,1696 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`SelectMenu > renders with arrow correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with avatar and leadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with avatar and trailingIcon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with avatar correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with class correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with default slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with defaultValue correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with disabled correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with icon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with id correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with item slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with item-label slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with item-leading slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with item-trailing slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with items correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with labelKey correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with leading and icon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with leading slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with leadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with loading and avatar correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with loading correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with loading trailing and avatar correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with loading trailing correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with loadingIcon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with modelValue correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with multiple and modelValue correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with multiple correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with name correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with neutral variant ghost correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with neutral variant none correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with neutral variant outline correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with neutral variant soft correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with neutral variant subtle correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with placeholder correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with primary variant ghost correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with primary variant none correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with primary variant outline correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with primary variant soft correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with primary variant subtle correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with required correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with searchInput placeholder correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with selectedIcon correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with size lg correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with size md correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with size sm correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with size xl correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with size xs correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with trailing and icon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with trailing slot correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with trailingIcon correctly 1`] = ` +" + + +" +`; + +exports[`SelectMenu > renders with trailingIcon correctly 2`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with ui correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders with valueKey correctly 1`] = ` +" + + + +
                                            +
                                            + + + +
                                            +
                                            + + + +" +`; + +exports[`SelectMenu > renders without searchInput correctly 1`] = ` +" + + + +
                                            +
                                            + + + + +
                                            +
                                            + + + +" +`; diff --git a/test/components/__snapshots__/Separator-vue.spec.ts.snap b/test/components/__snapshots__/Separator-vue.spec.ts.snap new file mode 100644 index 0000000000..62bb775c6c --- /dev/null +++ b/test/components/__snapshots__/Separator-vue.spec.ts.snap @@ -0,0 +1,118 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Separator > renders with as correctly 1`] = `"
                                            "`; + +exports[`Separator > renders with avatar correctly 1`] = ` +"" +`; + +exports[`Separator > renders with class correctly 1`] = ` +"" +`; + +exports[`Separator > renders with color primary correctly 1`] = ` +"" +`; + +exports[`Separator > renders with decorative correctly 1`] = ` +"
                                            +
                                            + +
                                            " +`; + +exports[`Separator > renders with icon correctly 1`] = ` +"" +`; + +exports[`Separator > renders with label correctly 1`] = ` +"" +`; + +exports[`Separator > renders with orientation vertical correctly 1`] = ` +"" +`; + +exports[`Separator > renders with size lg correctly 1`] = ` +"" +`; + +exports[`Separator > renders with size md correctly 1`] = ` +"" +`; + +exports[`Separator > renders with size sm correctly 1`] = ` +"" +`; + +exports[`Separator > renders with size xl correctly 1`] = ` +"" +`; + +exports[`Separator > renders with size xs correctly 1`] = ` +"" +`; + +exports[`Separator > renders with type dashed correctly 1`] = ` +"" +`; + +exports[`Separator > renders with type dotted correctly 1`] = ` +"" +`; + +exports[`Separator > renders with type solid correctly 1`] = ` +"" +`; + +exports[`Separator > renders with ui correctly 1`] = ` +"" +`; diff --git a/test/components/__snapshots__/Skeleton-vue.spec.ts.snap b/test/components/__snapshots__/Skeleton-vue.spec.ts.snap new file mode 100644 index 0000000000..f263501c14 --- /dev/null +++ b/test/components/__snapshots__/Skeleton-vue.spec.ts.snap @@ -0,0 +1,5 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Skeleton > renders with as correctly 1`] = `""`; + +exports[`Skeleton > renders with class correctly 1`] = `"
                                            "`; diff --git a/test/components/__snapshots__/Slideover-vue.spec.ts.snap b/test/components/__snapshots__/Slideover-vue.spec.ts.snap new file mode 100644 index 0000000000..15b85c1bcd --- /dev/null +++ b/test/components/__snapshots__/Slideover-vue.spec.ts.snap @@ -0,0 +1,419 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Slideover > renders with body slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with bottom side correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with class correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with close slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with closeIcon correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with content slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with default slot correctly 1`] = ` +"Default slot + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with description correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with description slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with footer slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with header slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with left side correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with open correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with title correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with title slot correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with top side correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders with ui correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders without close correctly 1`] = ` +" + + + +
                                            + + + +" +`; + +exports[`Slideover > renders without overlay correctly 1`] = ` +" + + + + + + + +" +`; + +exports[`Slideover > renders without transition correctly 1`] = ` +" + + + +
                                            + + + +" +`; diff --git a/test/components/__snapshots__/Slider-vue.spec.ts.snap b/test/components/__snapshots__/Slider-vue.spec.ts.snap new file mode 100644 index 0000000000..e195e52dbd --- /dev/null +++ b/test/components/__snapshots__/Slider-vue.spec.ts.snap @@ -0,0 +1,99 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Slider > renders with class correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with color neutral correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with defaultValue correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with disabled correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with inverted correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with min max step correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with min steps between thumbs correctly 1`] = ` +" +
                                            +
                                            +" +`; + +exports[`Slider > renders with multiple thumbs correctly 1`] = ` +" +
                                            +
                                            +" +`; + +exports[`Slider > renders with name correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with orientation vertical correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with size lg correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with size md correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with size sm correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with size xl correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with size xs correctly 1`] = ` +" +
                                            +" +`; + +exports[`Slider > renders with ui correctly 1`] = ` +" +
                                            +" +`; diff --git a/test/components/__snapshots__/Switch-vue.spec.ts.snap b/test/components/__snapshots__/Switch-vue.spec.ts.snap new file mode 100644 index 0000000000..e8f02c863a --- /dev/null +++ b/test/components/__snapshots__/Switch-vue.spec.ts.snap @@ -0,0 +1,219 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Switch > renders with as correctly 1`] = ` +"
                                            +
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with checkedIcon correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with class correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with color neutral correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with defaultValue correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with description correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            +

                                            Description

                                            +
                                            +
                                            " +`; + +exports[`Switch > renders with description slot correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            + +
                                            +
                                            " +`; + +exports[`Switch > renders with disabled correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with id correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with label correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            + +
                                            +
                                            " +`; + +exports[`Switch > renders with label slot correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            + +
                                            +
                                            " +`; + +exports[`Switch > renders with loading correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with loadingIcon correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with name correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with required correctly 1`] = ` +"
                                            +
                                            + +
                                            +
                                            + +
                                            +
                                            " +`; + +exports[`Switch > renders with size lg correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with size md correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with size sm correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with size xl correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with size xs correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with ui correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with uncheckedIcon correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; + +exports[`Switch > renders with value correctly 1`] = ` +"
                                            +
                                            + +
                                            + +
                                            " +`; diff --git a/test/components/__snapshots__/Table-vue.spec.ts.snap b/test/components/__snapshots__/Table-vue.spec.ts.snap new file mode 100644 index 0000000000..340037de55 --- /dev/null +++ b/test/components/__snapshots__/Table-vue.spec.ts.snap @@ -0,0 +1,1043 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Table > renders with class correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with columns correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #DateStatus +
                                            Amount
                                            +
                                            + +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #m5gr84i9Invalid Datesuccess +
                                            ken99@yahoo.com
                                            +
                                            +
                                            €316.00
                                            +
                                            +
                                            + + + +
                                            +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #3u1reuv4Invalid Datesuccess +
                                            Abe45@gmail.com
                                            +
                                            +
                                            €242.00
                                            +
                                            +
                                            + + + +
                                            +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #derv1ws0Invalid Dateprocessing +
                                            Monserrat44@gmail.com
                                            +
                                            +
                                            €837.00
                                            +
                                            +
                                            + + + +
                                            +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #5kma53aeInvalid Datesuccess +
                                            Silas22@gmail.com
                                            +
                                            +
                                            €874.00
                                            +
                                            +
                                            + + + +
                                            +
                                            +
                                            +
                                            + +
                                            + +
                                            +
                                            #bhqecj4pInvalid Datefailed +
                                            carmella@hotmail.com
                                            +
                                            +
                                            €721.00
                                            +
                                            +
                                            + + + +
                                            +
                                            +
                                            " +`; + +exports[`Table > renders with data correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading animation carousel correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading animation carousel-inverse correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading animation elastic correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading animation swing correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color error correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color info correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color neutral correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color primary correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color secondary correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color success correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading color warning correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with loading correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with sticky correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders with ui correctly 1`] = ` +"
                                            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                                            IdAmountStatusEmail
                                            m5gr84i9316successken99@yahoo.com
                                            3u1reuv4242successAbe45@gmail.com
                                            derv1ws0837processingMonserrat44@gmail.com
                                            5kma53ae874successSilas22@gmail.com
                                            bhqecj4p721failedcarmella@hotmail.com
                                            +
                                            " +`; + +exports[`Table > renders without results correctly 1`] = ` +"
                                            + + + + + + + + + +
                                            No results
                                            +
                                            " +`; diff --git a/test/components/__snapshots__/Tabs-vue.spec.ts.snap b/test/components/__snapshots__/Tabs-vue.spec.ts.snap new file mode 100644 index 0000000000..54c4227e5d --- /dev/null +++ b/test/components/__snapshots__/Tabs-vue.spec.ts.snap @@ -0,0 +1,243 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Tabs > renders with class correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with content slot correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            Content slot
                                            + + +
                                            " +`; + +exports[`Tabs > renders with custom slot correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with default slot correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with defaultValue correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            + +
                                            And, this is the content for Tab2
                                            + +
                                            " +`; + +exports[`Tabs > renders with items correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with labelKey correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with leading slot correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with modelValue correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            + +
                                            And, this is the content for Tab2
                                            + +
                                            " +`; + +exports[`Tabs > renders with neutral variant link correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with neutral variant pill correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with orientation vertical correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with primary variant link correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with primary variant pill correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with size lg correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with size md correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with size sm correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with size xl correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with size xs correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with trailing slot correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders with ui correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            +
                                            This is the content shown for Tab1
                                            + + +
                                            " +`; + +exports[`Tabs > renders without content correctly 1`] = ` +"
                                            +
                                            +
                                            +
                                            + +
                                            " +`; diff --git a/test/components/__snapshots__/Textarea-vue.spec.ts.snap b/test/components/__snapshots__/Textarea-vue.spec.ts.snap new file mode 100644 index 0000000000..34f5ae4188 --- /dev/null +++ b/test/components/__snapshots__/Textarea-vue.spec.ts.snap @@ -0,0 +1,49 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Textarea > renders with class correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with default slot correctly 1`] = `"
                                            Default slot
                                            "`; + +exports[`Textarea > renders with disabled correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with id correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with name correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with neutral variant ghost correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with neutral variant none correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with neutral variant outline correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with neutral variant soft correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with neutral variant subtle correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with placeholder correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with primary variant ghost correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with primary variant none correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with primary variant outline correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with primary variant soft correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with primary variant subtle correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with required correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with rows correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with size lg correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with size md correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with size sm correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with size xl correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with size xs correctly 1`] = `"
                                            "`; + +exports[`Textarea > renders with ui correctly 1`] = `"
                                            "`; diff --git a/test/components/__snapshots__/Toast-vue.spec.ts.snap b/test/components/__snapshots__/Toast-vue.spec.ts.snap new file mode 100644 index 0000000000..70744f1e7c --- /dev/null +++ b/test/components/__snapshots__/Toast-vue.spec.ts.snap @@ -0,0 +1,369 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Toast > renders with actions correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with avatar correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with class correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with close slot correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              Close slot
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with closeIcon correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with color neutral correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with description actions correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              +
                                              This is a toast
                                              +
                                              +
                                              +
                                              + +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with description correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              +
                                              This is a toast
                                              + +
                                              +
                                              + +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with description slot correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              +
                                              Description slot
                                              + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with icon correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with leading slot correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. Leading slot
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with title correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with title slot correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Title slot
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with type correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders with ui correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; + +exports[`Toast > renders without close correctly 1`] = ` +" + + +
                                            +
                                              +
                                            1. + +
                                              +
                                              Toast
                                              + + +
                                              +
                                              +
                                              +
                                            2. +
                                            +
                                            " +`; diff --git a/test/components/__snapshots__/Tooltip-vue.spec.ts.snap b/test/components/__snapshots__/Tooltip-vue.spec.ts.snap new file mode 100644 index 0000000000..2aa93ec08e --- /dev/null +++ b/test/components/__snapshots__/Tooltip-vue.spec.ts.snap @@ -0,0 +1,78 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Tooltip > renders with arrow correctly 1`] = ` +" + + + +
                                            +
                                            Tooltip + Tooltip +
                                            +
                                            + + +" +`; + +exports[`Tooltip > renders with content slot correctly 1`] = ` +" + + + +
                                            +
                                            Content slot + Content slot +
                                            +
                                            + + +" +`; + +exports[`Tooltip > renders with default slot correctly 1`] = ` +"Default slot + + + +
                                            +
                                            Tooltip + + Tooltip +
                                            +
                                            + + +" +`; + +exports[`Tooltip > renders with kbds correctly 1`] = ` +" + + + +
                                            +
                                            Tooltip + Tooltip +
                                            +
                                            + + +" +`; + +exports[`Tooltip > renders with text correctly 1`] = ` +" + + + +
                                            +
                                            Tooltip + + Tooltip +
                                            +
                                            + + +" +`; diff --git a/test/utils/mount.ts b/test/utils/mount.ts new file mode 100644 index 0000000000..3a28a05ce4 --- /dev/null +++ b/test/utils/mount.ts @@ -0,0 +1,34 @@ +import { mount } from '@vue/test-utils' +import { createRouter, createWebHistory } from 'vue-router' +import { defu } from 'defu' +import type { SetupContext } from 'vue' + +const router = createRouter({ + history: createWebHistory(), + routes: [{ path: '/', component: { template: '
                                            Home
                                            ' } }] +}) + +export function mountSuspended(...args: Parameters) { + let setupState = {} + const comp = args[0] as any + if (comp.setup) { + const originalSetup = comp.setup + comp.setup = function (props: Record, ctx: SetupContext) { + setupState = originalSetup.call(this, props, ctx) + return setupState + } + } + const wrapper = mount(args[0], defu({}, args[1], { + global: { + stubs: { + ClientOnly: { template: '' } + }, + plugins: [router] + } + })) + + // @ts-expect-error - setupState does not exist in type + wrapper.setupState = setupState + + return wrapper +} diff --git a/test/utils/setup.ts b/test/utils/setup.ts new file mode 100644 index 0000000000..e8351dc97a --- /dev/null +++ b/test/utils/setup.ts @@ -0,0 +1,8 @@ +// @ts-expect-error incomplete implementation +window.IntersectionObserver = class IntersectionObserver { + // eslint-disable-next-line + constructor() {} + observe() {} + unobserve() {} + disconnect() {} +} diff --git a/vitest.config.ts b/vitest.config.ts index 0461bcd6b2..c2199d6582 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -1,11 +1,13 @@ import { fileURLToPath } from 'node:url' import { defineVitestConfig } from '@nuxt/test-utils/config' +import { defaultExclude } from 'vitest/config' export default defineVitestConfig({ test: { testTimeout: 1000, globals: true, silent: true, + exclude: [...defaultExclude, './test/vue/**.spec.ts'], environment: 'nuxt', environmentOptions: { nuxt: { diff --git a/vitest.vue.config.ts b/vitest.vue.config.ts new file mode 100644 index 0000000000..4cacb06610 --- /dev/null +++ b/vitest.vue.config.ts @@ -0,0 +1,55 @@ +import vue from '@vitejs/plugin-vue' +import ui from './src/vite' +import { defineConfig } from 'vitest/config' +import { glob } from 'tinyglobby' +import { resolve } from 'pathe' + +const components = await glob('./src/runtime/components/*.vue', { absolute: true }) +const vueComponents = await glob('./src/runtime/vue/components/*.vue', { absolute: true }) + +export default defineConfig({ + test: { + environment: 'happy-dom', + include: ['./test/components/**.spec.ts'], + setupFiles: ['./test/utils/setup.ts'], + resolveSnapshotPath(path, extension) { + return path.replace(/\/([^/]+)\.spec\.ts$/, `/__snapshots__/$1-vue.spec.ts${extension}`) + } + }, + plugins: [ + vue(), + ui({ dts: false }), + { + name: 'nuxt-ui-test:components', + enforce: 'pre', + resolveId(id) { + if (id === '@nuxt/test-utils/runtime') { + return resolve('./test/utils/mount') + } + } + }, + { + name: 'nuxt-ui-test:components', + enforce: 'pre', + resolveId(id) { + if (id === '#components') { + return '#components' + } + }, + load(id) { + if (id === '#components' || id === '?#components') { + const resolvedComponents = [...vueComponents, ...components] + const renderedComponents = new Set() + return resolvedComponents.map((file) => { + const componentName = file.split('/').pop()!.replace('.vue', '') + if (renderedComponents.has(componentName)) { + return '' + } + renderedComponents.add(componentName) + return `export { default as U${componentName} } from '${file}'` + }).join('\n') + } + } + } + ] +}) diff --git a/vue-plugin.d.ts b/vue-plugin.d.ts new file mode 100644 index 0000000000..d12797adc1 --- /dev/null +++ b/vue-plugin.d.ts @@ -0,0 +1,5 @@ +import type { Plugin } from 'vue' + +declare const plugin: Plugin + +export default plugin