\n```\n\nWould it be relevant to add a global attribute to components like Button, Badge, etc., to force their appearance in dark (or light) mode, regardless of the global setting? This would ensure better visual consistency when these elements are placed on a colored background (e.g., `UPageCTA` with `solid` variant).\n\n### Additional context\n\n_No response_",[1984,1987,1990],{"name":1985,"color":1986},"enhancement","a2eeef",{"name":1988,"color":1989},"v3","49DCB8",{"name":1991,"color":1992},"triage","ffffff",3307,"nuxt","ui","open","Better handling of `UButton`, `UBadge`, … colors on colored backgrounds","2025-02-13T19:05:27Z","https://github.com/nuxt/ui/issues/3307",0.7871526,{"description":2002,"labels":2003,"number":2008,"owner":1994,"repository":1995,"state":1996,"title":2009,"updated_at":2010,"url":2011,"score":2012},"### Description\n\nCurrently, when I use `UAvatar` and the user's photo returns a 404, it generates an `\u003Cimg>` with the broken image icon:\n\n\nIs there a way to make the image that returns 404 display text from the alt instead?\nIn the documentation it says:\n>When no icon or text is provided, the initials of the `alt` prop are used as fallback\n\nCan `alt` also be used as a fallback when the image is broken?\n\n\n\nExample:\n\n",[2004,2007],{"name":2005,"color":2006},"question","d876e3",{"name":1988,"color":1989},3809,"[UAvatar] If the image does not exist, return text","2025-04-06T16:07:33Z","https://github.com/nuxt/ui/issues/3809",0.78972995,{"description":2014,"labels":2015,"number":2016,"owner":1994,"repository":2017,"state":2018,"title":2019,"updated_at":2020,"url":2021,"score":2022},"I'm using @nuxt/icon as part of @nuxt/ui, but I don't think, this makes a difference.\n\nWhat I'm doing/I'd like to do:\n- I reference the icon `mdi:cog`. It's displayed nicely in the current text color, switching light/dark mode.\n- I take the SVG code that is used in the rendered HTML. (I want to slightly modify it, but I'm not doing it just to demonstrate the issue.) I put the SVG coder into a `cog.svg` in my custom icons folder.\n- I reference it with `custom:cog`.\n\nWhat I'm expecting:\n- Both icons should behave exactly the same with respect to size/color/...\n\nWhat actually happens:\n- While the `mdi:cog` icon has text color and switches when changing dark/light mode, the `custom:cog` icon is always displayed in black.\n\nWhen looking at the rendered HTML/CSS it looks very different for custom icon than for the non-custom icon:\nWhile the `mdi:cog` uses the css propery `mask-image`, the `custom:cog` uses `background-image´.\n\nIt would be very cool to either change this behavior so that custom icons behave like regular icons or at least document the difference.",[],324,"icon","closed","Custom icon gets rendered differently (mask-image vs. background-image)","2024-12-18T09:49:35Z","https://github.com/nuxt/icon/issues/324",0.7322702,{"description":2024,"labels":2025,"number":2029,"owner":1994,"repository":2030,"state":2018,"title":2031,"updated_at":2032,"url":2033,"score":2034},"\n",[2026],{"name":2027,"color":2028},"bug","ff281a",511,"nuxt.com","[Resources] Live events image on dark mode is broken","2023-02-15T12:32:28Z","https://github.com/nuxt/nuxt.com/issues/511",0.74503624,{"description":2036,"labels":2037,"number":2029,"owner":1994,"repository":2041,"state":2018,"title":2042,"updated_at":2043,"url":2044,"score":2034},"**Something like:**\r\n\r\n**Inspired by**\r\nhttps://github.com/aaron-bond/better-comments\r\n\r\n",[2038],{"name":2039,"color":2040},"vitest-environment","b60205","test-utils","Add support for generating tests by comment","2023-12-02T00:27:09Z","https://github.com/nuxt/test-utils/issues/511",{"description":2046,"labels":2047,"number":2054,"owner":1994,"repository":2041,"state":2018,"title":2055,"updated_at":2056,"url":2057,"score":2058},"### Environment\r\n\r\n\r\n**package.json**\r\n```\r\n{\r\n \"name\": \"z1-pnx-certportal\",\r\n \"private\": true,\r\n \"scripts\": {\r\n \"ci\": \"pnpm i --frozen-lockfile\",\r\n \"dev\": \"nuxt dev --dotenv .env.dev\",\r\n \"build:dev\": \"nuxt build --dotenv .env.dev\",\r\n \"build:staging\": \"nuxt build --dotenv .env.staging\",\r\n \"build:production\": \"nuxt build --dotenv .env.prod\",\r\n \"generate\": \"nuxt generate\",\r\n \"preview\": \"nuxt preview\",\r\n \"postinstall\": \"nuxt prepare\",\r\n \"lint:js\": \"eslint --ext \\\".ts,.vue\\\" --ignore-path .gitignore .\",\r\n \"lint:prettier\": \"prettier --check .\",\r\n \"lint\": \"pnpm lint:js && pnpm lint:prettier\",\r\n \"lintfix\": \"prettier --write --list-different . && pnpm lint:js --fix\",\r\n \"test\": \"vitest --run --reporter verbose --globals\",\r\n \"test:watch\": \"vitest --reporter verbose --globals\"\r\n },\r\n \"devDependencies\": {\r\n \"@nuxt/test-utils\": \"3.9.0\",\r\n \"@nuxtjs/eslint-config-typescript\": \"12.1.0\",\r\n \"@nuxtjs/i18n\": \"8.0.0-rc.4\",\r\n \"@nuxtjs/turnstile\": \"0.6.3\",\r\n \"@types/node\": \"20.10.5\",\r\n \"@types/node-forge\": \"1.3.10\",\r\n \"@types/vue-tel-input\": \"2.1.6\",\r\n \"@typescript-eslint/parser\": \"6.0.0\",\r\n \"@vueuse/core\": \"10.7.0\",\r\n \"@vueuse/nuxt\": \"10.7.0\",\r\n \"autoprefixer\": \"10.4.16\",\r\n \"eslint\": \"8.43.0\",\r\n \"eslint-config-prettier\": \"9.0.0\",\r\n \"eslint-plugin-prettier\": \"5.0.1\",\r\n \"eslint-plugin-vitest\": \"0.3.18\",\r\n \"happy-dom\": \"12.9.1\",\r\n \"libphonenumber-js\": \"1.10.52\",\r\n \"nuxt\": \"3.8.2\",\r\n \"postcss\": \"8.4.32\",\r\n \"prettier\": \"3.1.1\",\r\n \"sass\": \"1.69.5\",\r\n \"sass-loader\": \"13.3.2\",\r\n \"tailwindcss\": \"3.3.7\",\r\n \"typescript\": \"5.3.3\",\r\n \"vite-svg-loader\": \"5.0.1\",\r\n \"vitest\": \"1.0.4\",\r\n \"vitest-environment-nuxt\": \"^1.0.0\",\r\n \"vue-tel-input\": \"8.1.4\"\r\n },\r\n \"dependencies\": {\r\n \"@pinia/nuxt\": \"0.5.1\",\r\n \"@types/got\": \"9.6.12\",\r\n \"dotenv\": \"16.3.1\",\r\n \"got\": \"14.0.0\",\r\n \"hpagent\": \"1.2.0\",\r\n \"node-forge\": \"1.3.1\",\r\n \"pinia\": \"2.1.7\",\r\n \"print-js\": \"1.6.0\",\r\n \"vue\": \"3.3.12\"\r\n }\r\n}\r\n```\r\n\r\n**nuxt.config.ts**\r\n```\r\nexport default defineNuxtConfig({\r\n...\r\n modules: ['@vueuse/nuxt', '@nuxtjs/i18n', '@pinia/nuxt', '@nuxt/test-utils/module', '@nuxtjs/turnstile'],\r\n testUtils: {}\r\n })\r\n```\r\n \r\n **vitest.config.mjs**\r\n```\r\nimport { defineVitestConfig } from '@nuxt/test-utils/config'\r\n\r\nexport default defineVitestConfig({\r\n test: {\r\n environment: 'nuxt'\r\n }\r\n});\r\n```\r\n\r\n**turnstile.test.ts**\r\n\r\n```\r\nimport { it, describe, expect, vi, afterEach } from 'vitest';\r\nimport { mockNuxtImport } from '@nuxt/test-utils/runtime';\r\nimport mockTurnstileResponse from './mocks/mockTurnstileResponse';\r\nimport verifyResponse from './test-data/turnstile-verify-response.json';\r\nimport { validateTurnstileToken } from '@/composables/turnstile';\r\n\r\nmockNuxtImport('useFetch', () => {\r\n return (token:string) => mockTurnstileResponse(token);\r\n});\r\n\r\ndescribe('validateTurnstileToken', () => {\r\n afterEach(() => {\r\n vi.resetAllMocks();\r\n });\r\n\r\n it('should validate a token successfully', async () => {\r\n const result = await validateTurnstileToken('validToken');\r\n expect(result).toBe(verifyResponse);\r\n });\r\n\r\n it('should throw an error when token is not provided', async () => {\r\n await expect(validateTurnstileToken('')).rejects.toThrow('Token not provided.');\r\n });\r\n\r\n it('should throw an error when useFetch returns an error', async () => {\r\n const mockErrorMessage = '';\r\n mockTurnstileResponse.mockImplementation(_token => { return { data: { value: null }, error: { value: mockErrorMessage } }; });\r\n\r\n await expect(validateTurnstileToken('someToken')).rejects.toThrow(mockErrorMessage);\r\n });\r\n\r\n it('should throw an error for unexpected response from useFetch', async () => {\r\n mockTurnstileResponse.mockImplementation(_token => { return { data: { value: null }, error: { value: null } }; });\r\n\r\n await expect(validateTurnstileToken('unexpectedToken')).rejects.toThrow(\r\n 'Unexpected error: Response data and error are both undefined.'\r\n );\r\n });\r\n});\r\n```\r\n\r\n\r\n_EDIT add:_ \r\nmockTurnstileResponse.ts\r\n```\r\nimport { vi } from 'vitest';\r\nimport verifyResponse from '../test-data/turnstile-verify-response.json';\r\nimport type { MockTurnstileValidationResponse } from '@/composables/interfaces';\r\n\r\nconst mockTurnstileResponse = vi.fn((_token):MockTurnstileValidationResponse => {\r\n return {\r\n data: {\r\n value: verifyResponse\r\n },\r\n error: { value: null }\r\n };\r\n});\r\n```\r\n\r\n\r\n### Reproduction\r\n\r\n1. Migrate from nuxt-vitest to test-utils v3.9.0.\r\n2. Run tests using the command pnpm test.\r\nExpected Behavior\r\nTests should run successfully without any import resolution issues.\r\n\r\nActual Behavior\r\nEncountered an error during test execution with the mentioned import resolution problem.\r\n\r\n\u003Cimg width=\"984\" alt=\"Screenshot 2023-12-20 at 11 13 01\" src=\"https://github.com/nuxt/test-utils/assets/89916568/fb5f4df0-a855-4af7-862f-72821c2c2bb3\">migrating from nuxt-vitest to test-utils v3.9.0\r\n\r\n### Describe the bug\r\n\r\nAfter migrating from nuxt-vitest to test-utils v3.9.0, I encountered an error when running tests. The error message suggests a problem with resolving the @vue/test-utils import within the context of @nuxt/test-utils.\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[2048,2050,2051],{"name":2027,"color":2049},"d73a4a",{"name":2039,"color":2040},{"name":2052,"color":2053},"needs reproduction","DE7793",667,"Error: Could not resolve \"@vue/test-utils\" imported by \"@nuxt/test-utils\". Is it installed?","2023-12-20T18:31:27Z","https://github.com/nuxt/test-utils/issues/667",0.75954145,{"description":2060,"labels":2061,"number":2063,"owner":1994,"repository":2041,"state":2018,"title":2064,"updated_at":2065,"url":2066,"score":2067},"It seems after upgrading to 0.7.0 with vitest 0.31 I receive the error:\r\n```\r\nError while requiring module `vitest-environment-nuxt/module`: Error: Cannot find module 'vitest-environment-nuxt/module'\r\n```\r\n\r\nWhich looks like it is trying to be installed by the module required for this package.\r\n\r\nStrange though as I see `vitest-environment-nuxt` as a dependency in the package.json\r\n\r\nIt could be @nuxt/test-utils > vitest conflicting versions. I'll do some digging.",[2062],{"name":2039,"color":2040},584,"Bug: v0.7.0 - Error while requiring module `vitest-environment-nuxt/module`: Error: Cannot find module 'vitest-environment-nuxt/module'","2023-12-02T00:37:12Z","https://github.com/nuxt/test-utils/issues/584",0.761691,{"description":2069,"labels":2070,"number":2073,"owner":1994,"repository":1995,"state":2018,"title":2074,"updated_at":2075,"url":2076,"score":2077},"",[2071,2072],{"name":2027,"color":2049},{"name":1988,"color":1989},2338,"[Tabs] Height shifts of 1px between `pill` and `link` variants","2024-10-28T09:49:02Z","https://github.com/nuxt/ui/issues/2338",0.76359904,{"description":2079,"labels":2080,"number":2086,"owner":1994,"repository":2041,"state":2018,"title":2087,"updated_at":2088,"url":2089,"score":2090},"It would be preferable that the module use the protocol that is specified in either the vitest config or nuxt config.\r\n\r\nhttps://github.com/danielroe/nuxt-vitest/blob/178c11865380b0cadb4c4af196486ebba308d3a9/packages/nuxt-vitest/src/module.ts#L49\r\n\r\nThis is resulting in the dev tools being unable to show the proper page for the ui:\r\n\r\n\r\n",[2081,2082,2085],{"name":2027,"color":2049},{"name":2083,"color":2084},"good first issue","7057ff",{"name":2039,"color":2040},548,"devtools iframe not able to run in https","2023-12-05T15:29:38Z","https://github.com/nuxt/test-utils/issues/548",0.7664206,{"labels":2092,"number":2099,"owner":1994,"repository":1994,"state":2018,"title":2100,"updated_at":2101,"url":2102,"score":2103},[2093,2096],{"name":2094,"color":2095},"pending triage","E99695",{"name":2097,"color":2098},"2.x","d4c5f9",9566,"app/router.scrollBehavior.js does not work on Android","2023-01-22T15:44:59Z","https://github.com/nuxt/nuxt/issues/9566",0.7721007,["Reactive",2105],{},["Set"],["ShallowReactive",2108],{"TRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"J0UDVw_w_nxFI6mNea3xV6wlpC5cjLVBlawh3Q2R5nE":-1},"/nuxt/test-utils/616"]