\n \u003CUIcon name=\"i-carbon-close-filled\" class=\"absolute top-0 left-0 size-4 peer-hover:block hidden\" />\n \u003C/div>\n\u003C/button>\n```\n\nI would also like to avoid JS (same with `:name`)\n\n```\nconst icon = ref\u003CHTMLElement | null>(null)\nconst isHovered = useElementHover(icon)\n...\n\u003Cbutton>\n \u003Cdiv ref=\"icon\" class=\"size-4\">\n \u003CUIcon v-show=\"isHovered\" name=\"i-carbon-close-outline\" class=\"size-4\" />\n \u003CUIcon v-show=\"!isHovered\" name=\"i-carbon-close-filled\" class=\"size-4\" />\n \u003C/div>\n\u003C/button>\n```",[],"[Question] Recommended way to change icon based on CSS states","2024-11-05T19:10:03Z","https://github.com/nuxt/icon/issues/270",{"description":3213,"labels":3214,"number":3220,"owner":3138,"repository":3160,"state":3192,"title":3221,"updated_at":3222,"url":3223,"score":3224},"### Environment\n\n- Operating System: Darwin\n- Node Version: v22.11.0\n- Nuxt Version: 3.16.0\n- CLI Version: 3.22.5\n- Nitro Version: 2.11.6\n- Package Manager: pnpm@9.15.4\n- Builder: -\n- User Config: modules, devtools, app, css, runtimeConfig, future, compatibilityDate, telemetry, eslint\n- Runtime Modules: @nuxt/ui-pro@3.0.0, @nuxt/eslint@1.0.1, @vueuse/nuxt@12.5.0, @nuxt/image@1.9.0\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3\n\n### Reproduction\n\nSee below\n\n### Description\n\nHey,\n\nIn UI2 when placing a UAvatar (which often is done for a user dropdown) in the DropdownMenu - clicking the Dropdown menu would trigger opening the dropdown.\nBased on UI3 docs it seems that it should work since it says Button or any other element - however this doesnt work\n\n### Additional context\n\n```ts\n\u003CUDropdownMenu :items=\"accountItems\">\n \u003CUAvatar\n v-if=\"session && session.user\"\n :src=\"session.user.image ? session.user.image : undefined\"\n :alt=\"session.user.name\"\n size=\"md\"\n />\n\u003C/UDropdownMenu>\n```\n\n### Logs\n\n```shell-script\n\n```",[3215,3216,3219],{"name":3172,"color":3173},{"name":3217,"color":3218},"needs reproduction","CB47CF",{"name":3152,"color":3153},3546,"`UAvatar` doesn't trigger `UDropdownMenu`","2025-03-28T17:43:01Z","https://github.com/nuxt/ui/issues/3546",0.6647697,{"description":3226,"labels":3227,"number":3229,"owner":3138,"repository":3191,"state":3192,"title":3230,"updated_at":3231,"url":3232,"score":3233},"Redirect to `/projects` public page instead\n\nBlocked by #403 ",[3228],{"name":3149,"color":3189},402,"Beta page integration `/beta`","2022-06-07T09:41:42Z","https://github.com/nuxt/nuxt.com/issues/402",0.6820141,{"description":3235,"labels":3236,"number":3238,"owner":3138,"repository":3239,"state":3192,"title":3240,"updated_at":3241,"url":3242,"score":3243},"### 🐛 The bug\n\n> You are correct $script.remove() works but still requires the $script.entry = undefined; if you ever wanted to reload the script.\n\n### 🛠️ To reproduce\n\n-\n\n### 🌈 Expected behavior\n\n-\n\n### ℹ️ Additional context\n\n_No response_",[3237],{"name":3172,"color":3173},334,"scripts","Removing a script won't let you reload it","2024-12-08T02:26:36Z","https://github.com/nuxt/scripts/issues/334",0.7063151,{"description":3245,"labels":3246,"number":3254,"owner":3138,"repository":3138,"state":3192,"title":3255,"updated_at":3256,"url":3257,"score":3258},"### Environment\r\n\r\n- Operating System: Linux\r\n- Node Version: v18.20.3\r\n- Nuxt Version: 3.13.1\r\n- CLI Version: 3.13.1\r\n- Nitro Version: 2.9.7\r\n- Package Manager: npm@10.2.3\r\n- Builder: -\r\n- User Config: compatibilityDate, devtools\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/github-t1vjvm?file=components%2Fcomp.vue,app.vue\r\n\r\n### Describe the bug\r\n\r\nDefining props with default value using the new vue 3.5 props destructure is compiled differently in nuxt.\r\n\r\nIn the [vue playground (vue3.5.1, SSR)](https://play.vuejs.org/#__SSR__eNp9Uk1Lw0AQ/SvjXmqhpEj1UpOKSkE9aFHBy4LEZBJTN7vL7qYWQv67sxtbU1BPycx7s+/NR8sutY42DbI5i21mKu3Aomv0gsuq1so4uFa1hsKoGkbR1AeePjrf4y0YLKD7pniMSy4zJa2D2paQePx4dINCKHhRRuRHozGX8bSXIyEKHNZapA4pAoi9yiIOYpSIpwOUTZiz9HhRldHaKkm+W1/DWUbsSqB50K4icc7mEBCPpaT9eRdyzjQ42eWzd8w+fsmv7dbnOFsZtGg2yNkec6kp0fXw8uket/S/B2uVN4LY/4CPaJVovMeedtXInGwPeMHtbZhuJctnu9w6lHbXlDfqmV3gc0YT94P6q/Ufu7PoNNRx2dEUd5v0iz+YfttCoRR0xDuYPIXDAwGRyjKh90mO0H7ffWkSPNJJJJBjUUlcGaVtHCwRfjGHN6UEppKOqFscj+kzuAby9rpB4/slb7PoLDph3RcS1OLs):\r\n\r\n\r\n\r\n```js\r\n/* Analyzed bindings: {\r\n \"foo\": \"props\"\r\n} */\r\nimport { defineComponent as _defineComponent } from 'vue'\r\n\r\nconst __sfc__ = /*@__PURE__*/_defineComponent({\r\n __name: 'Comp',\r\n props: {\r\n foo: { type: Boolean, required: false, default: true }\r\n },\r\n setup(__props, { expose: __expose }) {\r\n __expose();\r\n\r\n\r\n\r\nconst __returned__ = { }\r\nObject.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true })\r\nreturn __returned__\r\n}\r\n\r\n});\r\nimport { ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\r\nfunction ssrRender(_ctx, _push, _parent, _attrs, $props, $setup, $data, $options) {\r\n _push(`${_ssrInterpolate($props.foo)}`)\r\n}\r\n__sfc__.ssrRender = ssrRender\r\n__sfc__.__file = \"src/Comp.vue\"\r\nexport default __sfc__\r\n```\r\n\r\nIn Nuxt:\r\n\r\n\r\n```js\r\nimport { createHotContext as __vite__createHotContext } from \"/_nuxt/@vite/client\";import.meta.hot = __vite__createHotContext(\"/components/comp.vue\");import { defineComponent as _defineComponent } from \"/_nuxt/node_modules/vue/dist/vue.runtime.esm-bundler.js?v=8fea97c8\";\r\nconst _sfc_main = /* @__PURE__ */ _defineComponent({\r\n __name: \"comp\",\r\n props: {\r\n foo: { type: Boolean, required: false }\r\n },\r\n setup(__props, { expose: __expose }) {\r\n __expose();\r\n const { foo = true } = __props;\r\n const __returned__ = { foo };\r\n Object.defineProperty(__returned__, \"__isScriptSetup\", { enumerable: false, value: true });\r\n return __returned__;\r\n }\r\n});\r\nimport { toDisplayString as _toDisplayString } from \"/_nuxt/node_modules/vue/dist/vue.runtime.esm-bundler.js?v=8fea97c8\";\r\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\r\n return _toDisplayString($setup.foo);\r\n}\r\n_sfc_main.__hmrId = \"ea5b442f\";\r\ntypeof __VUE_HMR_RUNTIME__ !== \"undefined\" && __VUE_HMR_RUNTIME__.createRecord(_sfc_main.__hmrId, _sfc_main);\r\nimport.meta.hot.accept((mod) => {\r\n if (!mod) return;\r\n const { default: updated, _rerender_only } = mod;\r\n if (_rerender_only) {\r\n __VUE_HMR_RUNTIME__.rerender(updated.__hmrId, updated.render);\r\n } else {\r\n __VUE_HMR_RUNTIME__.reload(updated.__hmrId, updated);\r\n }\r\n});\r\nimport _export_sfc from \"/_nuxt/@id/__x00__plugin-vue:export-helper\";\r\nexport default /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render], [\"__file\", \"/home/projects/github-t1vjvm/components/comp.vue\"]]);\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_",[3247,3250,3251],{"name":3248,"color":3249},"workaround available","11376d",{"name":3172,"color":3173},{"name":3252,"color":3253},"🍰 p2-nice-to-have","0E8A16",28829,"reactive props destructure with default values doesn't work","2024-09-24T15:17:28Z","https://github.com/nuxt/nuxt/issues/28829",0.71319497,["Reactive",3260],{},["Set"],["ShallowReactive",3263],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fk4hiZ_pE2SMamaWCvAA3-xBuYPhAe6A1dSFn_21_WKQ":-1},"/nuxt/scripts/297"]