\n\n**Steps to reproduce:**\n\n- Set up a Nuxt 4 project with Nuxt UI (version 4+).\n- Implement a UNavigationMenu component with nested children items.\n- In the ui prop of UNavigationMenu, define both link and childLink with conflicting horizontal padding classes (e.g., link: 'px-6 ...' and childLink: 'px-10 ...').\n- Inspect the rendered HTML of the nested links in the browser developer tools.\n- Observe that the px-10 from childLink is not applied, and px-6 (or similar padding from link) remains.\n\n**Example Code**\n\n```\n\u003Ctemplate>\n \u003CUNavigationMenu :ui=\"{\n link: 'px-6 py-3 before:bg-transparent before:inset-0 before:rounded-none text-md text-white space-x-2',\n item: 'border-b border-default',\n childList: 'border-none ml-0',\n childItem: 'p-0',\n childLink: 'px-10 bg-red-500', // These styles are not fully applied\n root: 'border-t border-default'\n }\" :collapsed=\"collapsed\" :items=\"primaryItems\" orientation=\"vertical\" color=\"neutral\" />\n\u003C/template>\n\n\u003Cscript setup lang=\"ts\">\nimport type { NavigationMenuItem } from '@nuxt/ui'\n\ninterface Props {\n collapsed?: boolean\n}\n\ndefineProps\u003CProps>()\n\n\nconst primaryItems = computed\u003CNavigationMenuItem[][]>(() => [[\n {\n label: 'Portfolios',\n icon: 'i-lucide-briefcase',\n to: '/portfolio',\n children: [ // These children's links are affected\n {\n label: 'Portfolio 1',\n description: 'Description 1',\n to: `/portfolio/1`,\n active: false\n },\n {\n label: 'Portfolio 2',\n description: 'Description 2',\n to: `/portfolio/2`,\n active: false\n }\n ]\n }\n]])\n\u003C/script>\n```\n\n### Description\n\nThe ui.childLink slot within the UNavigationMenu component is not applying any custom Tailwind CSS classes to the links of nested list items (children of items). This issue persists even when ui.link styles are not defined or do not conflict, indicating a broader problem with the childLink slot's functionality. This affects all classes defined in childLink, not just padding.\n\n**Expected Behavior:**\n\nStyles defined in ui.childLink (e.g., px-10, bg-red-500, etc.) should be exclusively and consistently applied to the \u003Ca> tags of nested list items.\n\n**Current Behavior:**\n\nDespite defining ui.childLink with various Tailwind CSS classes (e.g., 'px-10 bg-red-500') for UNavigationMenu, none of these styles are applied to the rendered HTML for nested links (children of items) in the DOM. The links retain their default styling or styling inherited from other sources, completely ignoring the childLink definition. This happens even when the ui.link slot is empty or configured not to conflict.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3187,3190,3193],{"name":3188,"color":3189},"bug","d73a4a",{"name":3191,"color":3192},"triage","ffffff",{"name":3194,"color":3195},"v4","49DCB8",5223,"ui","[NavigationMenu]: childLink styles not applying to nested list item links","2025-10-13T20:15:29Z","https://github.com/nuxt/ui/issues/5223",0.7686406,{"description":3203,"labels":3204,"number":3206,"owner":3177,"repository":3207,"state":3179,"title":3208,"updated_at":3209,"url":3210,"score":3211},"### Environment\n\n```\n------------------------------\n- Operating System: Darwin\n- Node Version: v20.13.0\n- Nuxt Version: 3.14.1592\n- CLI Version: 3.16.0\n- Nitro Version: 2.10.4\n- Package Manager: npm@10.5.2\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/eslint@0.7.2, nuxt-open-fetch@0.9.5, @nuxtjs/i18n@9.1.0, nuxt-jsonld@2.1.0, @nuxtjs/device@3.2.4, @nuxtjs/robots@5.0.0, @vueuse/nuxt@12.0.0, @sidebase/nuxt-auth@0.9.4, @vesp/nuxt-fontawesome@1.1.0\n- Build Modules: -\n------------------------------\n```\n\n### Reproduction\n\nWhen using a vitest workspace, vitest complains that it can't resolve the config files, this is due to `defineVitestConfig`.\n```\n> vitest\n\nfailed to load config from /Users/reinierkaper/rvezy/rvezy-web-client/src/tests/unit/vitest.config.ts\n```\n\n### Describe the bug\n\nI think the `defineVitestConfig` wrapper conflicts with what vitest expects back in a workspace configuration file.\nEverything works fine when the tests are ran directly with a config file reference, just not in a workspace.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3205],{"name":3188,"color":3189},1043,"test-utils","Vitest workspaces not properly supported by `defineVitestConfig`","2025-02-21T09:20:04Z","https://github.com/nuxt/test-utils/issues/1043",0.79238147,{"description":3213,"labels":3214,"number":3219,"owner":3177,"repository":3197,"state":3220,"title":3221,"updated_at":3222,"url":3223,"score":3224},"### Environment\n\nin codesandbox\n------------------------------\n- Operating System: Linux\n- Node Version: v20.12.0\n- Nuxt Version: 3.16.1\n- CLI Version: 3.24.0\n- Nitro Version: 2.11.8\n- Package Manager: pnpm@8.15.6\n- Builder: -\n- User Config: modules, devtools, compatibilityDate, future, css\n- Runtime Modules: @nuxt/ui@3.0.2\n- Build Modules: -\n------------------------------\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\n3.16.1\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/condescending-bouman-f7zx5z?workspaceId=ws_H6Jd4FNHPBp8UPT5Y6QHKZ\n\n### Description\n\nThe `ui` prop on Nuxt UI components (like `UTable`) is currently typed to only accept `string` values for its nested properties. However, the official documentation example for expandable table rows ([https://ui.nuxt.com/components/table#with-expandable-rows](https://ui.nuxt.com/components/table#with-expandable-rows)) demonstrates using a `string[]` for customizing the `button ui.leadingIcon` property.\n\nWhile using a `string[]` works correctly at runtime, it triggers a TypeScript error during development:\n\n\n\nThe relevant type definition should be updated:\n\n```typescript\nexport type PartialString\u003CT> = {\n [K in keyof T]?: string;\n};\n```\n**Proposed Change:**\n```typescript\nimport type { ClassValue } from 'tailwind-variants';\n\nexport type PartialString\u003CT> = {\n [K in keyof T]?: ClassValue;\n};\n```\n\n\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3215,3216,3218],{"name":3188,"color":3189},{"name":3217,"color":3195},"v3",{"name":3191,"color":3192},3860,"closed","Type Error: Component 'ui' prop incorrectly typed as 'string', should allow ClassValue (e.g., string[])","2025-04-12T16:28:50Z","https://github.com/nuxt/ui/issues/3860",0.7409569,{"description":3226,"labels":3227,"number":3230,"owner":3177,"repository":3197,"state":3220,"title":3231,"updated_at":3232,"url":3233,"score":3234},"### Environment\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v20.11.1\n- Nuxt Version: 3.14.0\n- CLI Version: 3.15.0\n- Nitro Version: 2.10.2\n- Package Manager: pnpm@9.11.0\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/ui@3.0.0-alpha.7\n- Build Modules: -\n------------------------------\n\n\n### Version\n\nv3.0.0-alpha.7\n\n### Reproduction\n\nhttps://github.com/some-user123/nuxt-ui-3-typeerrors\n\n### Description\n\nAfter adding this `app.config.ts` to a plain project, type errors occur:\n\n```ts\n// app.config.ts\nexport default defineAppConfig({\n ui: {\n button: {\n slots: {\n base: 'font-normal'\n },\n variants: {\n size: {\n lg: 'px-4 py-2',\n }\n },\n compoundVariants: [\n {\n color: 'error',\n variant: 'link',\n class: 'text-lg'\n }\n ]\n },\n dropdownMenu: {\n variants: {\n active: {\n false: 'data-highlighted:before:bg-red-500',\n }\n }\n }\n }\n})\n```\n\n```\n$ npx nuxi typecheck\napp.config.ts:5:17 - error TS2322: Type 'string' is not assignable to type 'DeepPartial\u003Cstring[], string>'.\n Type 'string' is not assignable to type '(string | undefined)[]'.\n\n5 base: 'font-normal'\n ~~~~\n\napp.config.ts:9:21 - error TS2322: Type 'string' is not assignable to type 'DeepPartial\u003C{ base: string; leadingIcon: string; leadingAvatarSize: string; trailingIcon: string; }, string>'.\n Type 'string' is not assignable to type '{ [key: string]: string | TightMap\u003Cstring>; }'.\n\n9 lg: 'px-4 py-2',\n ~~\n\napp.config.ts:12:13 - error TS2322: Type '{ color: \"error\"; variant: \"link\"; class: string; }[]' is not assignable to type 'DeepPartial\u003C({ color: \"primary\"; variant: \"solid\"; class: string; size?: undefined; square?: undefined; loading?: undefined; leading?: undefined; trailing?: undefined; } | { color: \"secondary\"; variant: \"solid\"; ... 5 more ...; trailing?: undefined; } | ... 46 more ... | { ...; })[], string>'.\n Type '{ color: \"error\"; variant: \"link\"; class: string; }[]' is not assignable to type '{ [key: string]: string | TightMap\u003Cstring>; }'.\n Index signature for type 'string' is missing in type '{ color: \"error\"; variant: \"link\"; class: string; }[]'.\n\n12 compoundVariants: [\n ~~~~~~~~~~~~~~~~\n\napp.config.ts:23:21 - error TS2322: Type 'string' is not assignable to type 'DeepPartial\u003C{ item: string[]; itemLeadingIcon: string[]; }, string>'.\n Type 'string' is not assignable to type '{ [key: string]: string | TightMap\u003Cstring>; }'.\n\n23 false: 'data-highlighted:before:bg-red-500',\n ~~~~~\n\n```\n\n\n### Additional context\n\n(There are actually more type errors, see #2532. Above errors occur in addition.)\n\n### Logs\n\n_No response_",[3228,3229],{"name":3188,"color":3189},{"name":3217,"color":3195},2536,"Type errors in app.config.ts","2024-12-06T23:55:12Z","https://github.com/nuxt/ui/issues/2536",0.75680584,{"description":3236,"labels":3237,"number":3243,"owner":3177,"repository":3197,"state":3220,"title":3244,"updated_at":3245,"url":3246,"score":3247},"### Environment\n\n- Operating System: Darwin\n- Node Version: v20.11.1\n- Nuxt Version: 3.16.2\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@10.2.4\n- Builder: -\n- User Config: css, compatibilityDate, devtools, future, modules, runtimeConfig, ssr, typescript\n- Runtime Modules: @nuxt/eslint@1.4.0, @nuxt/fonts@0.11.4, @nuxt/ui-pro@3.1.2, @pinia/nuxt@0.5.5, @vueuse/nuxt@10.11.1, nuxt-auth-utils@0.5.20, nuxt-authorization@0.3.4\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.1.2\n\n### Reproduction\n\nJust use the code of https://github.com/nuxt-ui-pro/dashboard/blob/main/app/pages/settings.vue and add a child to one of the links used for the UNavigationMenu. Like :\n````\n{\n label: \"General\",\n icon: \"i-lucide-user\",\n to: \"/settings\",\n children: [\n {\n label: \"Hello\",\n icon: \"i-lucide-book-open\",\n },\n ],\n exact: true,\n },\n````\n\n### Description\n\nIt seems wrapping the UNavigationMenu component in UDashboardToolbar will cause the UNavigationMenu's links children dropdown to not appear or be hidden.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3238,3239,3240],{"name":3188,"color":3189},{"name":3217,"color":3195},{"name":3241,"color":3242},"nuxt/ui-pro","00dc82",4177,"UNavigationMenu item children not visible when wrapped in UDashboardToolbar","2025-05-23T12:23:17Z","https://github.com/nuxt/ui/issues/4177",0.7689912,{"description":3249,"labels":3250,"number":3251,"owner":3177,"repository":3252,"state":3220,"title":3253,"updated_at":3254,"url":3255,"score":3256},"\nWhen using the Icon component from @nuxt/icon, the icon size cannot be changed using TailwindCSS v4 classes.\n\nExample :\n```Vue\n\u003CIcon name=\"mdi:home\" class=\"size-10\" />\n\u003CIcon name=\"mdi:home\" class=\"w-10 h-10\" />\n```\nThese icons should be 40x40px, but instead, they are using the default size of the icon.\n\n\u003Cimg width=\"441\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/dbbfec71-fefa-4b0d-85c5-e915de7b11db\" />\n\n\u003Cimg width=\"292\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6253bc82-4c82-490f-a0db-3276ab42d6b6\" />\n\n\u003Cimg width=\"527\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/a7b5e557-9b1e-48bc-812b-fc3d831e4f1d\" />\n\nExpected behavior :\nThe icon should be 40x40px.\n\nPackage version :\n- \"@nuxt/icon\": \"1.10.3\",\n- \"@tailwindcss/vite\": \"^4.0.0\",\n- \"tailwindcss\": \"^4.0.0\",\n\nMinimal Reproduction:\nhttps://github.com/misbahansori/nuxt-icons-issue",[],346,"icon","Icon size cannot be change with TailwindCSS v4 class","2025-03-11T20:50:56Z","https://github.com/nuxt/icon/issues/346",0.77832085,{"description":3258,"labels":3259,"number":3263,"owner":3177,"repository":3207,"state":3220,"title":3264,"updated_at":3265,"url":3266,"score":3267},"### Environment\n\n- Operating System: Windows_NT\r\n- Node Version: v18.19.0\r\n- Nuxt Version: 3.11.1\r\n- CLI Version: 3.11.1\r\n- Nitro Version: 2.9.4\r\n- Package Manager: npm@10.2.3\r\n- Builder: -\r\n- User Config: devtools, modules\r\n- Runtime Modules: @nuxt/test-utils/module\n\n### Reproduction\n\nhttps://github.com/chronicadventure/nuxt-bug\r\n\r\njust run `npm test` and the console will error out. *Note* you don't even need an actual test, just the import causes the entire file to fail.\n\n### Describe the bug\n\nImporting `import { mockNuxtImport } from '@nuxt/test-utils/runtime'` as stated in the docs causes the entire test file to fail.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\nDEV v1.4.0 C:/Users/AdrianCampos/BugRepo/repro\r\n\r\n ❯ tests/random.nuxt.test.js (0)\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Suites 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯\r\n\r\n FAIL tests/random.nuxt.test.js [ tests/random.nuxt.test.js ]\r\nError: Failed to load url #imports (resolved id: #imports) in C:/Users/AdrianCampos/BugRepo/node_modules/@nuxt/test-utils/dist/runtime-utils/index.mjs. Does the file exist?\r\n ❯ loadAndTransform ../node_modules/vite/dist/node/chunks/dep-B-u6xNiR.js:53832:21\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯\r\n\r\n Test Files 1 failed (1)\r\n Tests no tests\r\n Start at 21:58:52\r\n Duration 2.22s (transform 69ms, setup 0ms, collect 0ms, tests 0ms, environment 0ms, prepare 846ms)\r\n\r\n\r\n FAIL Tests failed. Watching for file changes...\r\n press h to show help, press q to quit\n```\n",[3260],{"name":3261,"color":3262},"pending triage","5D08F5",800,"Failed to load url #imports after importing mockNuxtImport","2024-05-26T19:14:39Z","https://github.com/nuxt/test-utils/issues/800",0.7801488,{"description":3269,"labels":3270,"number":3274,"owner":3177,"repository":3178,"state":3220,"title":3275,"updated_at":3276,"url":3277,"score":3278},"We should replace the Bootstrap icon with the Content module icon\n\n\n\n",[3271],{"name":3272,"color":3273},"design","00bd6f",775,"[Homepage] Update modules list","2023-09-05T08:18:35Z","https://github.com/nuxt/nuxt.com/issues/775",0.7803932,{"description":3280,"labels":3281,"number":3274,"owner":3177,"repository":3207,"state":3220,"title":3283,"updated_at":3284,"url":3285,"score":3278},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Darwin\r\n- Node Version: v18.19.1\r\n- Nuxt Version: 3.10.3\r\n- CLI Version: 3.10.1\r\n- Nitro Version: 2.9.3\r\n- Package Manager: npm@10.2.4\r\n- Builder: -\r\n- User Config: devtools\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/~/github.com/rinux55/nuxt-fetch\r\n\r\nSee `app.test.ts`. In the `test/setup.ts` and `test/server.ts` there is an `msw` server being set up with a mocked endpoint.\r\n\r\n### Describe the bug\r\n\r\nTo mock requests made using `$fetch` and `useFetch`, I expect to be able to use a utility like [`msw`](https://mswjs.io/). \r\n\r\nUnfortunately, this doesn't seem to work in combination with `@nuxt/test-utils`. \r\n\r\nI've created a reproduction where you can see that `globalThis.fetch` is mocked just fine, but `useFetch` or `fetch` is not:\r\n\r\nhttps://stackblitz.com/~/github.com/rinux55/nuxt-fetch\r\n\r\nAny help with this would be greatly appreciated.\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3282],{"name":3261,"color":3262},"Unable to use with `msw` to mock requests","2024-10-29T12:08:01Z","https://github.com/nuxt/test-utils/issues/775",["Reactive",3287],{},["Set"],["ShallowReactive",3290],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fk3xSAa_ONQL48VN5PTpWEgtkj74QRpamuj83_Am53LM":-1},"/nuxt/nuxt.com/1158"]