\r\n\u003C/template>\r\n\u003Cscript setup lang=\"ts\">\u003C/script>\r\n```\r\n\r\nApp.vue\r\n```\r\n\u003Ctemplate>\r\n \u003Cdiv>Message: {{ getMessage(\"Hello World\") }}\u003C/div>\r\n\u003C/template>\r\n\u003Cscript setup lang=\"ts\">\r\nimport { getMessage } from \"@/service/message-service\";\r\n```\r\n\r\nApp.test.ts\r\n```\r\nimport { it, expect, vi } from \"vitest\";\r\nimport { mountSuspended } from \"@nuxt/test-utils/runtime\";\r\nimport App from \"../../layouts/default.vue\";\r\n\r\nvi.mock(\"@/service/message-service\", () => {\r\n return {\r\n getMessage: () => \"hello from mock!!\",\r\n };\r\n});\r\n\r\n\r\nit(\"nuxt unit testing\", async () => {\r\n const component = await mountSuspended(App, { route: \"/\" });\r\n expect(component.html()).toMatchInlineSnapshot(\r\n `\"\u003Cdiv>Message: hello Hello World\u003C/div>\"`\r\n );\r\n});\r\n\r\n```\r\n\r\nmessage-service.ts\r\n```\r\nexport function getMessage(message: string): string {\r\n console.log(\"FROM ACTUAL\");\r\n return `hell ${message}`;\r\n}\r\n```\r\n\n\n### Describe the bug\n\nI was expecting vitest vi.mock should be able to mock imports to provide custom/mock implementation, however it seems that vi.mock is not working in the context of nuxt test?\r\n\r\nIf so, how are we suppose to create unit tests and/or E2E using nuxt/test-utils package and be able to provide flexible mocking mechanism?\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[2884,2887,2890],{"name":2885,"color":2886},"bug","d73a4a",{"name":2888,"color":2889},"vitest-environment","b60205",{"name":2891,"color":2892},"pending triage","5D08F5",935,"How to mock custom imports while using mountSuspended to test","2024-09-09T02:17:10Z","https://github.com/nuxt/test-utils/issues/935",0.7518675,{"description":2899,"labels":2900,"number":2908,"owner":2874,"repository":2909,"state":2876,"title":2910,"updated_at":2911,"url":2912,"score":2913},"### Reproduction\n\n````\n\u003Ctemplate>\n \u003CUChip text=\"test\" size=\"3xl\">\n \u003CUButton icon=\"i-lucide-mail\" color=\"neutral\" variant=\"subtle\" />\n \u003C/UChip>\n\u003C/template>\n````\n\n### Description\n\nHey,\n\nThanks for your great work.\n\nI have noticed this on a few elements in UI3, but especaily here padding just is not right. Yes of course you can change it, but i belive there needs to be some sane defaults across all elements.\n\nText in chip, and even a simple number is almost unreadable see screenshot below. Happy to open a pr or list all other elements where this seems to have happened (one that comes to mind is UAvatar https://github.com/nuxt/ui/issues/3558).\n\n\n\n### Additional context\n\nThis example is directly from the UI website",[2901,2902,2905],{"name":2885,"color":2886},{"name":2903,"color":2904},"v3","49DCB8",{"name":2906,"color":2907},"triage","ffffff",3633,"ui","Default padding on `UChip`","2025-03-20T09:21:01Z","https://github.com/nuxt/ui/issues/3633",0.7699776,{"description":2915,"labels":2916,"number":2920,"owner":2874,"repository":2909,"state":2921,"title":2922,"updated_at":2923,"url":2924,"score":2925},"### Description\n\nHi,\n\nIs it possible to trigger an open / change of a tab in the tabs module? I'm using url queries to track tab changes and I want to be able to trigger a change to open a specific tab without having to refresh the page (as mentioned in the docs \"Control the selected index\"). Is there a way to reliably do this? I can hack this using document.querySelector..click() but it's not ideal.\n\nWould be v useful!",[2917],{"name":2918,"color":2919},"question","d876e3",3403,"closed","Trigger change of tab","2025-02-28T11:40:41Z","https://github.com/nuxt/ui/issues/3403",0.70251596,{"description":2927,"labels":2928,"number":2932,"owner":2874,"repository":2875,"state":2921,"title":2933,"updated_at":2934,"url":2935,"score":2936},"### Environment\n\nReproduction: https://stackblitz.com/edit/github-gu1sj1-xq3xf8?file=tests%2Fe2e%2Fbasic.e2e.test.ts\r\n\r\nA minimal repo with just [vitest](https://github.com/vitest-dev/vitest) and [@nuxt/test-utils](https://github.com/nuxt/test-utils), an app.vue, and a `pages/index.vue` fails with error:\r\n\r\n```js\r\n❯ npm run test\r\n\r\n> test\r\n> vitest\r\n\r\nRunning with compatibility version `4`\r\n\r\n DEV v1.6.0 /home/projects/github-gu1sj1-xq3xf8/app\r\n\r\n ❯ ../tests/e2e/basic.e2e.test.ts (1)\r\n ❯ basic (1)\r\n ⠹ [ beforeAll ]\r\n · contains Welcome to Nuxt! string\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Suites 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯\r\n\r\n FAIL ../tests/e2e/basic.e2e.test.ts > basic\r\nError: Cannot find any nuxt version from ./app\r\n ❯ Module.loadNuxt ../node_modules/@nuxt/kit/dist/index.mjs:2729:11\r\n ❯ loadFixture ../node_modules/@nuxt/test-utils/dist/shared/test-utils.C7cWLW4C.mjs:102:14\r\n 100| });\r\n 101| const buildDir = ctx.nuxt.options.buildDir;\r\n 102| if (!existsSync(buildDir)) {\r\n | ^\r\n 103| await promises.mkdir(buildDir, { recursive: true });\r\n 104| ctx.teardown = ctx.teardown || [];\r\n ❯ setup2 ../node_modules/@nuxt/test-utils/dist/shared/test-utils.C7cWLW4C.mjs:178:7\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯\r\n\r\n Test Files 1 failed (1)\r\n Tests (1)\r\n Start at 09:54:14\r\n Duration 4.84s (transform 445ms, setup 45ms, collect 2.14s, tests 5ms, environment 0ms, prepare 807ms)\r\n```\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-gu1sj1-xq3xf8?file=tests%2Fe2e%2Fbasic.e2e.test.ts\n\n### Describe the bug\n\nCannot successfully end-to-end test if there is a pages directory with an index.vue.\n\n### Additional context\n\n```\r\n\"dependencies\": {\r\n \"@nuxt/test-utils\": \"^3.13.1\",\r\n \"nuxt\": \"^3.12.3\",\r\n \"vitest\": \"^1.4.0\",\r\n \"vue\": \"latest\"\r\n }\r\n```\n\n### Logs\n\n```shell-script\n❯ npm run test\r\n\r\n> test\r\n> vitest\r\n\r\nRunning with compatibility version `4`\r\n\r\n DEV v1.6.0 /home/projects/github-gu1sj1-xq3xf8/app\r\n\r\n ❯ ../tests/e2e/basic.e2e.test.ts (1)\r\n ❯ basic (1)\r\n ⠹ [ beforeAll ]\r\n · contains Welcome to Nuxt! string\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Suites 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯\r\n\r\n FAIL ../tests/e2e/basic.e2e.test.ts > basic\r\nError: Cannot find any nuxt version from ./app\r\n ❯ Module.loadNuxt ../node_modules/@nuxt/kit/dist/index.mjs:2729:11\r\n ❯ loadFixture ../node_modules/@nuxt/test-utils/dist/shared/test-utils.C7cWLW4C.mjs:102:14\r\n 100| });\r\n 101| const buildDir = ctx.nuxt.options.buildDir;\r\n 102| if (!existsSync(buildDir)) {\r\n | ^\r\n 103| await promises.mkdir(buildDir, { recursive: true });\r\n 104| ctx.teardown = ctx.teardown || [];\r\n ❯ setup2 ../node_modules/@nuxt/test-utils/dist/shared/test-utils.C7cWLW4C.mjs:178:7\r\n\r\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯\r\n\r\n Test Files 1 failed (1)\r\n Tests (1)\r\n Start at 09:54:14\r\n Duration 4.84s (transform 445ms, setup 45ms, collect 2.14s, tests 5ms, environment 0ms, prepare 807ms)\n```\n",[2929,2930,2931],{"name":2885,"color":2886},{"name":2888,"color":2889},{"name":2891,"color":2892},895,"Adding `/pages/index.vue` breaks e2e testing","2024-07-18T14:13:18Z","https://github.com/nuxt/test-utils/issues/895",0.708999,{"description":2938,"labels":2939,"number":2940,"owner":2874,"repository":2941,"state":2921,"title":2942,"updated_at":2943,"url":2944,"score":2945},"Going on this Page: https://nuxt.com/docs/getting-started/configuration and clicking on \"nuxt.config.ts\" results in a 404\r\nalso going to https://nuxt.com/docs/guide and going to nuxt.config.ts via the directory structure also returns into 404.",[],1391,"nuxt.com","nuxt config returning 404","2023-10-25T09:32:28Z","https://github.com/nuxt/nuxt.com/issues/1391",0.7232442,{"description":2947,"labels":2948,"number":2949,"owner":2874,"repository":2950,"state":2921,"title":2951,"updated_at":2952,"url":2953,"score":2954},"SSR works as the icons show up on initial load. \r\nAlso tested with `ssr: false`.\r\n\r\nRepro: https://github.com/JakeIsMeh/nuxt-icon-static-repro\r\n\r\nhttps://github.com/nuxt/icon/assets/33054273/d3855208-8ecb-4433-a754-2e271a2c1dab",[],179,"icon","Component does not fall back to Iconify API when using client-side rendering","2024-07-16T13:13:44Z","https://github.com/nuxt/icon/issues/179",0.7345508,{"description":2956,"labels":2957,"number":2958,"owner":2874,"repository":2941,"state":2921,"title":2959,"updated_at":2960,"url":2961,"score":2962},"https://nuxt.com/docs/api/utils/call-once\n\n",[],1810,"% is in title for OG image","2025-03-19T09:28:40Z","https://github.com/nuxt/nuxt.com/issues/1810",0.7452044,{"description":2964,"labels":2965,"number":2971,"owner":2874,"repository":2909,"state":2921,"title":2972,"updated_at":2973,"url":2974,"score":2975},"### For what version of Nuxt UI are you asking this question?\n\nv3.0.0-alpha.x\n\n### Description\n\nHi,\n\nI'm exploring the Vue 3 compatibility section. When I run the following command:\n```bash\npnpm run dev:prepare\n```\nI encounter this error:\n\n```bash\nℹ Nuxt Icon client bundle consist of 99 icons with 47.35KB(uncompressed) in size 09:58:26\n✔ Types generated in docs/.nuxt 09:58:27\nℹ Nuxt Icon server bundle mode is set to local 09:58:29\nℹ Running with compatibility version 4 09:58:29\n✔ Types generated in devtools/.nuxt 09:58:30\nfailed to load config from C:\\Users\\chris\\code\\nuxt_ui\\playground-vue\\vite.config.ts\nerror during build:\nTypeError [ERR_INVALID_URL_SCHEME]: The URL must be of scheme file\n at fileURLToPath (node:internal/url:1393:11)\n at fileURLToPath (file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/mlly@1.7.3/node_modules/mlly/dist/index.mjs:1971:25)\n at pathToFileURL (file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/mlly@1.7.3/node_modules/mlly/dist/index.mjs:1974:26)\n at _resolve (file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/mlly@1.7.3/node_modules/mlly/dist/index.mjs:2108:10)\n at resolveSync (file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/mlly@1.7.3/node_modules/mlly/dist/index.mjs:2111:10)\n at resolvePathSync (file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/mlly@1.7.3/node_modules/mlly/dist/index.mjs:2121:24)\n at NuxtEnvironmentPlugin (file:///C:/Users/chris/code/nuxt_ui/playground-vue/vite.config.ts.timestamp-1733302710251-85be7b7cfbb28.mjs:3303:20)\n at file:///C:/Users/chris/code/nuxt_ui/playground-vue/vite.config.ts.timestamp-1733302710251-85be7b7cfbb28.mjs:3339:5\n at file:///C:/Users/chris/code/nuxt_ui/node_modules/.pnpm/unplugin@1.16.0/node_modules/unplugin/dist/index.mjs:1800:32\n at file:///C:/Users/chris/code/nuxt_ui/playground-vue/vite.config.ts.timestamp-1733302710251-85be7b7cfbb28.mjs:3361:5\n ELIFECYCLE Command failed with exit code 1.\n```\n\nAny guidance on how to resolve this issue would be greatly appreciated.\n\n\n\n\n\n\n",[2966,2967,2968],{"name":2918,"color":2919},{"name":2903,"color":2904},{"name":2969,"color":2970},"vue","42b883",2831,"build of the vue version","2024-12-06T09:56:56Z","https://github.com/nuxt/ui/issues/2831",0.74582916,{"description":2977,"labels":2978,"number":2985,"owner":2874,"repository":2941,"state":2921,"title":2986,"updated_at":2987,"url":2988,"score":2989},"### Environment\r\n\r\nFirefox Browser on Windows\r\n\r\n### Reproduction\r\n\r\nN/A\r\n\r\n### Describe the bug\r\n\r\nText is aggressively wrapped in `\u003Ccode>` blocks inside a table, so the Lifecycle Hooks page is difficult to read.\r\n\r\n\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[2979,2982],{"name":2980,"color":2981},"duplicate","cfd3d7",{"name":2983,"color":2984},"responsive","1cd1c6",1400,"Documentation Lifecycle Hooks code blocks is aggresively wrapped","2023-12-08T15:49:41Z","https://github.com/nuxt/nuxt.com/issues/1400",0.7489375,["Reactive",2991],{},["Set"],["ShallowReactive",2994],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fQUE2WVKnCgV3rBQ8CKIMV7eBT8XaNmB8G6FXvJ65RN8":-1},"/nuxt/ui/3557"]