\n \u003C/UFormGroup>\n\n \u003CUButton type=\"submit\">\n Submit\n \u003C/UButton>\n\n\u003C/UForm>\n```\n\n```ts\n\u003Cscript setup lang=\"ts\">\n import { z } from 'zod';\n\n const state = reactive({\n picture: undefined,\n })\n\n const schema = z.object({\n picture: z.custom\u003CFileList>()\n .transform((val) => {\n if (val instanceof File) return val;\n if (val instanceof FileList) return val[0];\n return null;\n })\n .superRefine((file, ctx) => {\n if (!(file instanceof File)) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n fatal: true,\n message: 'Not a file',\n });\n return z.NEVER;\n }\n if (file.size > 5 * 1024 * 1024) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'Max file size allowed is 5MB',\n });\n }\n if (\n !['image/jpeg', 'image/png', 'image/webp', 'image/jpg'].includes(\n file.type\n )\n ) {\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: 'File must be an image (jpeg, jpg, png, webp)',\n });\n }\n })\n });\n\n type Schema = z.infer\u003Ctypeof schema>;\n\n async function onSubmit (event: FormSubmitEvent\u003CSchema>) {\n console.log(event.data);\n }\n\u003C/script>\n```\n\nAs aspected the following onChange function logs a FileList\n\n```ts\nfunction onChangeFile(event: Event) {\n console.log(event)\n}\n```\n\nBut when I log val in the transform function of Zod\n\n```ts\n.transform((val) => {\n console.log(val);\n if (val instanceof File) return val;\n if (val instanceof FileList) return val[0];\n return null;\n})\n```\n\nI get a string like this:\n\n```\nC:\\fakepath\\Screenshot 2024-10-25 at 10.26.36.png\n```\n\nCan someone please help me out, i'm looking for a few days now for a solution.",[2867],{"name":2868,"color":2869},"question","d876e3",2462,"nuxt","ui","open","UInput with type='file', how to validate with Zod?","2025-03-10T01:51:18Z","https://github.com/nuxt/ui/issues/2462",0.6564389,{"description":2879,"labels":2880,"number":2887,"owner":2871,"repository":2872,"state":2873,"title":2888,"updated_at":2889,"url":2890,"score":2891},"### For what version of Nuxt UI are you suggesting this?\n\nv2.x\n\n### Description\n\nI have a use case where I'd like this value to be `false`. Would it be possible to make this configurable?\n\n### Additional context\n\nhttps://github.com/nuxt/ui/blob/dev/src/runtime/components/navigation/CommandPalette.vue#L30",[2881,2884],{"name":2882,"color":2883},"enhancement","a2eeef",{"name":2885,"color":2886},"triage","ffffff",2710,"[CommandPalette] Make the `hold` prop of ComboboxOptions configurable","2024-12-06T22:38:02Z","https://github.com/nuxt/ui/issues/2710",0.6859228,{"description":2893,"labels":2894,"number":2899,"owner":2871,"repository":2872,"state":2873,"title":2900,"updated_at":2901,"url":2902,"score":2903},"### Environment\n\n- Operating System: `Darwin`\n- Node Version: `v18.20.7`\n- Nuxt Version: `3.14.1592`\n- CLI Version: `3.15.0`\n- Nitro Version: `2.10.4`\n- Package Manager: `yarn@1.22.22`\n- Builder: `-`\n- User Config: `default`\n- Runtime Modules: `@nuxt/ui@2.19.2`, `@artmizu/nuxt-prometheus@2.4.0`, `@nuxt/icon@1.10.3`\n- Build Modules: `-`\n\n### Version\n\nv2.21.1\n\n### Reproduction\n\nhttps://ui2.nuxt.com/components/select-menu#control-the-query\n\nTry to select `Wade` in the query input with mouse or trackpad \n\u003Cimg width=\"494\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/a0e90d62-aabb-4d40-9d8d-a6fed67fee02\" />\n\nBrowser: `Google Chrome Version 134.0.6998.89 (Official Build) (arm64)`\n\nAlso reproduced on `Safari Version 18.3.1 (20620.2.4.11.6)`\n\n### Description\n\nUser may want to copy the text in the query input of a `select-menu` component by moving cursor around text, now it's unable to do it without a keyboard (`Shift + left/right arrow` or `Cmd/Ctrl + A` to select all).\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2895,2898],{"name":2896,"color":2897},"bug","d73a4a",{"name":2885,"color":2886},3583,"Accessibility: unable to select text in the query input of a select-menu","2025-03-17T00:34:07Z","https://github.com/nuxt/ui/issues/3583",0.6985352,{"description":2905,"labels":2906,"number":2910,"owner":2871,"repository":2871,"state":2873,"title":2911,"updated_at":2912,"url":2913,"score":2914},"### Environment\r\n\r\n------------------------------\r\n- Operating System: `Windows_NT`\r\n- Node Version: `v16.17.1`\r\n- Nuxt Version: `3.0.0-rc.12`\r\n- Nitro Version: `0.6.0`\r\n- Package Manager: `npm@8.15.0`\r\n- Builder: `vite`\r\n- User Config: `publicRuntimeConfig`, `privateRuntimeConfig`, `modules`, `css`, `typescript`, `alias`, `build`\r\n- Runtime Modules: `@nuxtjs/svg@0.1.12`, `nuxt-lodash@2.3.0`\r\n- Build Modules: `-`\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\ncreate a server api\r\n`\\server\\routes\\webapi\\[...].post.ts`\r\n\r\ncontent:\r\n```\r\nexport default defineEventHandler(async (event) => {\r\ntry {\r\n const body = await useRawBody(event, false);\r\n\r\n const res = await $fetch(url + queryStr, {\r\n baseURL,\r\n method: \"POST\",\r\n body,\r\n });\r\n\r\n return res;\r\n } catch (error: any) {\r\n const err = createError({\r\n statusCode: error?.response?.status || 500,\r\n data: error?.data, --> error.data is: {message: 'please insert a valid amount for the current offer'}\r\n message: \"Error fetching from WebAPI, URL \" + url,\r\n });\r\n throw err;\r\n}\r\n});\r\n```\r\n\r\n\r\ncall the api using \r\n\r\n```\r\nconst formData= new FormData();\r\nformData.append('filename', fileContent);\r\n\r\n try {\r\n const { data, error } = await useFetch\u003CT>(url, {\r\n baseURL: \"/webapi\",\r\n method: \"POST\",\r\n body: formData\r\n });\r\n\r\n if (error && error.value != null) {\r\n throw error.value; --> here error.value.data is not the object i expect but is an html like: '\u003C!DOCTYPE html>\u003Chtml>\u003Chead>\u003Ctitle>400 - | Nuxt\u003C/title>\u003Cmeta charset=\"utf-8\">\u003Cmeta content=\"width=device-width,initial-scale=1,minimum-scale=1\" name=\"viewport\">\u003Cstyle>.spotlight{background:linear-gradient(45deg, #00DC82 0%, #36E4DA 50%, #0047E1 100%);opacity:0.8;filter:blur(30vh);height:60vh;bottom:-40vh}*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}*{--tw-ring-inset:var(--tw-empty, );--tw-ring-offset-width:0px;--tw-r…dex.mjs:35:15)\u003C/span>\\n\u003Cspan class=\"stack\">at /D:/root_git/ale.frontend/.nuxt/dev/index.mjs:967:17\u003C/span>\\n\u003Cspan class=\"stack internal\">at processTicksAndRejections (node:internal/process/task_queues:96:5)\u003C/span>\\n\u003Cspan class=\"stack internal\">at async Object.handler (/D:/root_git/ale.frontend/node_modules/h3/dist/index.mjs:567:19)\u003C/span>\\n\u003Cspan class=\"stack internal\">at async Server.toNodeHandle (/D:/root_git/ale.frontend/node_modules/h3/dist/index.mjs:631:7)\u003C/span>\u003C/pre>\u003C/pre>\u003C/div>\u003C/body>\u003C/html>'\r\n\r\n }\r\n\r\n return data.value as T;\r\n } catch (err) {\r\n throw err;\r\n }\r\n };\r\n```\r\n\r\n### Describe the bug\r\n\r\nWhen calling a server route to try to upload a file to a backend (multipart/form-data header is present), if a error is thrown the data property of the error is not the expected object but the default HTML error by nuxt\r\nThis does not happen if the error is thrown when doing a normal POST/GET\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_",[2907],{"name":2908,"color":2909},"pending triage","E99695",15390,"Cannot retreive data from createError when uploading files","2024-06-30T11:10:00Z","https://github.com/nuxt/nuxt/issues/15390",0.7200839,{"description":2916,"labels":2917,"number":2923,"owner":2871,"repository":2872,"state":2873,"title":2924,"updated_at":2925,"url":2926,"score":2927},"### For what version of Nuxt UI are you suggesting this?\n\nv3.0.0-alpha.x\n\n### Description\n\nUTabs documentation could benefit from an example of how to use it to display nested pages. An example use case could be a profile page with tabs for profile information and settings, where navigating through each would lead to a sub-page (profile information being in /profile, and settings being in /profile/settings)\n\n### Additional context\n\n_No response_",[2918,2919,2922],{"name":2882,"color":2883},{"name":2920,"color":2921},"v3","49DCB8",{"name":2885,"color":2886},2872,"[v3 docs]: example for nested pages with UTabs","2024-12-16T09:46:36Z","https://github.com/nuxt/ui/issues/2872",0.7253087,{"description":2929,"labels":2930,"number":2931,"owner":2871,"repository":2932,"state":2873,"title":2933,"updated_at":2934,"url":2935,"score":2936},"It would be nice if you could alias and entire collection instead of just an icon.\n\nRight now I do it this way.\n```ts\nconst createIconAliases = (newPrefix: string, iconifyJson: IconifyJSON) => {\n const exisitngPrefix = iconifyJson.prefix;\n const icons = Object.keys(iconifyJson.icons);\n\n return icons.reduce(\n (object, value) => {\n object[`${newPrefix}:${value}`] = `${exisitngPrefix}:${value}`;\n return object;\n },\n {} as Record\u003Cstring, string>,\n );\n};\n```",[],362,"icon","[feature request] Allow aliasing entire collection","2025-02-21T20:10:51Z","https://github.com/nuxt/icon/issues/362",0.73180026,{"description":2938,"labels":2939,"number":2942,"owner":2871,"repository":2872,"state":2943,"title":2944,"updated_at":2945,"url":2946,"score":2947},"### Environment\n\n-\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.16.0\n\n### Reproduction\n\n- \n\n### Description\n\nUpgraded all deps to the latest and bam Nuxt 3.16.0 is added. We get errors now as Nuxt UI 3 still ships with\n\n`'@unhead/vue': 1.11.20(vue@3.5.13(typescript@5.8.2))\n`\n\nAs of Nuxt 3.16.0 ships with @unhead2:\nhttps://nuxt.com/blog/v3-16#unhead-v2\n\nActual error:\n`[@nuxt/scripts 9:42:20 PM] ERROR Nuxt Scripts requires Unhead >= 2, you are using v1.11.20. Please run nuxi upgrade --clean to upgrade...`\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2940,2941],{"name":2896,"color":2897},{"name":2920,"color":2921},3513,"closed","Nuxt 3.16.0 - ships with @unhead2","2025-03-10T08:49:36Z","https://github.com/nuxt/ui/issues/3513",0.6988469,{"description":2949,"labels":2950,"number":2953,"owner":2871,"repository":2872,"state":2943,"title":2954,"updated_at":2955,"url":2956,"score":2957},"### Environment\n\n\n\nI get this error anytime I try and use \u003CUInput /> even without any other code.\n\n### Version\n\nv3.0.0-alpha.5\n\n### Reproduction\n\n`\u003Ctemplate>\n \u003CUContainer>\n \u003CUForm :schema=\"schema\" :state=\"state\" class=\"space-y-4\" @submit=\"onSubmit\">\n \u003CUFormField label=\"Code\" name=\"Code\"\n >\u003CUInput v-model=\"state.code\" />\n \u003C/UFormField>\n \u003C/UForm>\n \u003C/UContainer>\n\u003C/template>\n\n\u003Cscript setup lang=\"ts\">\nimport { z } from 'zod';\nimport type { FormSubmitEvent } from '#ui/types';\n\nconst supabase = useSupabaseClient();\nconst toast = useToast();\n\n//Form\nconst schema = z.object({\n code: z.string().min(3),\n});\n\ntype Schema = z.output\u003Ctypeof schema>;\n\nconst state = reactive\u003CPartial\u003CSchema>>({\n code: undefined,\n});\n\nasync function onSubmit(event: FormSubmitEvent\u003CSchema>) {\n toast.add({\n title: 'Success',\n description: 'The form has been submitted.',\n color: 'success',\n });\n console.log(event.data);\n}\n\u003C/script>\n`\n\n### Description\n\nUInput causes an error\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[2951,2952],{"name":2896,"color":2897},{"name":2920,"color":2921},2349,"UInput causes error","2024-10-10T14:15:25Z","https://github.com/nuxt/ui/issues/2349",0.70192796,{"description":2959,"labels":2960,"number":2966,"owner":2871,"repository":2872,"state":2943,"title":2967,"updated_at":2968,"url":2969,"score":2970},"### Environment\n\n- Operating System: Windows_NT\n- Node Version: v18.20.5\n- Nuxt Version: 3.14.1592\n- CLI Version: 3.15.0\n- Nitro Version: 2.10.4\n- Package Manager: npm@10.8.2\n- Builder: -\n- User Config: default\n- Runtime Modules: nuxt-vuefire@1.0.4, @nuxt/ui@3.0.0-alpha.9\n- Build Modules: -\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.0.0-alpha.9\n\n### Reproduction\n\n\n\n\n\n```\n \u003CUTooltip :delay-duration=\"0\" :text=\"`R$ ${transactionCost.brl}`\">\n \u003CUIcon class=\"text-yellow-500 text-xs\" name=\"i-lucide-coins\" />\n \u003Cp class=\"text-neutral-200 text-xs\">\n {{ transactionCost.credits }}\n \u003C/p>\n\u003C/UTooltip>\n```\n\n``` \n\u003CNuxtLayout>\n \u003CUApp :toaster=\"{ position: 'top-right' }\">\n \u003CNuxtPage />\n \u003C/UApp>\n\u003C/NuxtLayout>\n```\n\n\n### Description\n\nThe `app.vue` is already using the `UApp`. When I try to add a `UTooltip` inside the modal, it throw an error.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```\nUncaught (in promise) Error: Injection `Symbol(TooltipProviderContext)` not found. Component must be used within `TooltipProvider`\n```",[2961,2962,2965],{"name":2896,"color":2897},{"name":2963,"color":2964},"needs reproduction","CB47CF",{"name":2920,"color":2921},2801,"[v3][UTooltip] `UTooltip` inside `UModal` causing error","2025-02-06T15:28:30Z","https://github.com/nuxt/ui/issues/2801",0.71966195,{"labels":2972,"number":2979,"owner":2871,"repository":2871,"state":2943,"title":2980,"updated_at":2981,"url":2982,"score":2983},[2973,2976,2977],{"name":2974,"color":2975},"3.x","29bc7f",{"name":2896,"color":2897},{"name":2963,"color":2978},"FBCA04",12686,"bug on server/api side.","2023-01-19T16:09:51Z","https://github.com/nuxt/nuxt/issues/12686",0.72362036,["Reactive",2985],{},["Set"],["ShallowReactive",2988],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fixbCjDYiZeUMz8827HU2WVagA5jeqg_PnlvzrdN98jk":-1},"/nuxt/ui/3622"]