\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.",[2042],{"name":2043,"color":2044},"question","d876e3",2462,"UInput with type='file', how to validate with Zod?","2025-03-10T01:51:18Z","https://github.com/nuxt/ui/issues/2462",0.68935657,{"description":2051,"labels":2052,"number":2055,"owner":1994,"repository":1995,"state":1996,"title":2056,"updated_at":2057,"url":2058,"score":2059},"### 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```",[2053,2054],{"name":2005,"color":2006},{"name":1991,"color":1992},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.6953662,{"description":2061,"labels":2062,"number":2064,"owner":1994,"repository":1995,"state":2065,"title":2066,"updated_at":2067,"url":2068,"score":2069},"### Environment\n\n- Operating System: Windows_NT\n- Node Version: v22.9.0\n- Nuxt Version: 3.14.159\n- CLI Version: 3.15.0\n- Nitro Version: 2.10.4\n- Package Manager: pnpm@9.12.3\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/image@1.8.1, @nuxt/fonts@0.10.2, @nuxt/ui@2.19.2, @storyblok/nuxt@6.2.0\n- Build Modules: -\n\n### Version\n\nv2.19.2\n\n### Reproduction\n\n-\n\n### Description\n\nThe carousel component typing only allows \"black\" as color for arrow buttons (at least in app.config.ts). But e.g. \"primary\" (and also \"grey\" in the docs) also works fine and different colors are often needed. \n\n\n_carousel.d.ts_\n```\ndeclare const _default: {\n wrapper: string;\n container: string;\n item: string;\n arrows: {\n wrapper: string;\n };\n indicators: {\n wrapper: string;\n base: string;\n active: string;\n inactive: string;\n };\n default: {\n prevButton: {\n color: \"black\";\n class: string;\n icon: string;\n };\n nextButton: {\n color: \"black\";\n class: string;\n icon: string;\n };\n };\n};\nexport default _default;\n\n```\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2063],{"name":2005,"color":2006},2636,"closed","Carousel: arrow color typing in app.config.ts only allows 'black'","2024-12-05T13:48:52Z","https://github.com/nuxt/ui/issues/2636",0.649267,{"description":2071,"labels":2072,"number":2075,"owner":1994,"repository":1995,"state":2065,"title":2076,"updated_at":2077,"url":2078,"score":2079},"### Description\n\nNuxt UI should have the potential to open native links in a Nuxt UI Modal by simply adding a certain `modal` parameter in [NuxtLink](https://nuxt.com/docs/api/components/nuxt-link).\n\n`\u003CNuxtLink to=\"/about\" modal>About page shown in modal but can also be opened natively (e.g. new tab)\u003C/NuxtLink>`\n\nThe link should still be a native link with progressive enhancement, so _if users would like to open the URL in a new tab, they can do_! If not, it will open the content in a modal.\n\nThat would be great DX and UX! 🎉\n\nThe `modal` property is just one possible solution, maybe there's even a better one using a native HTML property like `rel=\"modal\"`, we should discuss that.\n\nIn future versions there might be further control parameters to override the defaults for\n\n- modal size\n- modal style\n- modal opacity\n- ...\n\nBut let's start simple.\n\nSomething similar was done here, but I think this should really be part of Nuxt UI or even Nuxt Core.\nhttps://nuxt-pages-plus.pages.dev/components/plus-modal-link\n\n### Additional context\n\n_No response_",[2073,2074],{"name":1985,"color":1986},{"name":1988,"color":1989},3298,"Enhance NuxtLink to open in Modal using a \"modal\" property","2025-03-08T12:21:53Z","https://github.com/nuxt/ui/issues/3298",0.6615721,{"description":2081,"labels":2082,"number":2086,"owner":1994,"repository":1995,"state":2065,"title":2087,"updated_at":2088,"url":2089,"score":2090},"### Environment\n\n- Operating System: Windows 10 \n- Node Version: v22.10.0 \n- Nuxt Version: 3.16.0 \n- CLI Version: 3.22.5 \n- Nitro Version: 2.11.5 \n- Package Manager: pnpm@9.15.7 \n- Builder: -\n- User Config: compatibilityDate, devtools, modules, css, meta, ssr, runtimeConfig, ui \n- Runtime Modules: @nuxt/ui@3.0.0-beta.3, @nuxt/icon@1.10.3, @nuxt/fonts@0.11.0, @vueuse/nuxt@12.8.2\n\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nNuxt UI 3.0\n\n### Reproduction\n\n```\n\u003Ctemplate>\n\u003CUInput\n v-model=\"translation\"\n ref=\"translationField\" \n />\n\u003C/template>\n\n\u003Cscript setup>\nconst translationField = ref(null)\n\nfunction nextCard() {\n translationField.value.focus() // throws: 'focus is not a function'\n \n nextTick(() => {\n translationField.value.focus() // same error\n })\n\n // below works ok\n nextTick(() => {\n const input = translationField.value?.$el?.querySelector('input')\n if (input) {\n input.focus()\n }\n })\n}\n\u003C/script>\n```\n\n\n### Description\nStandard Vue method of using template ref (for setting a focus, here) throws: 'focus() is not a function'\nIn the above code snippet I included workaround (credits to Sonnet 3.5)\nTried it dozen of times and checked this place to see if it has not been solved earlier.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2083,2084,2085],{"name":2005,"color":2006},{"name":1988,"color":1989},{"name":1991,"color":1992},3644,"\u003CUInput> template ref does not work","2025-03-21T13:14:18Z","https://github.com/nuxt/ui/issues/3644",0.6744682,{"description":2092,"labels":2093,"number":2096,"owner":1994,"repository":1995,"state":2065,"title":2097,"updated_at":2098,"url":2099,"score":2100},"### For what version of Nuxt UI are you suggesting this?\n\nv3.0.0-alpha.x\n\n### Description\n\n[CommandPalette](https://ui3.nuxt.dev/components/command-palette) is great but I wish it could display only an input by default and then open the content in a popper when clicking in the input. I think this is currently not possible but a very common use case. \n\nThis is what I would like to archive, screenshots from Shopify:\n\n\n\n\n\n\n\n### Additional context\n\n_No response_",[2094,2095],{"name":1985,"color":1986},{"name":1988,"color":1989},2832,"v3 CommandPalette: Open only content within popper","2024-12-05T13:24:12Z","https://github.com/nuxt/ui/issues/2832",0.67853546,["Reactive",2102],{},["Set"],["ShallowReactive",2105],{"TRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"TZRX3aApajvfK1QpQD4jS0GNdOqKOFgGiDZvIL6dbYA":-1},"/nuxt/ui/2662"]