\n \u003C/UFormField>\n\u003C/template>\n```\n[Here](https://skrinshoter.ru/vSpJnffwygq) is video demonstration :)\n\n### Description\n\n`placeOpen.value = true` is not opening dropdown after fetching places.",[1984,1987,1990],{"name":1985,"color":1986},"bug","d73a4a",{"name":1988,"color":1989},"v3","49DCB8",{"name":1991,"color":1992},"triage","ffffff",2724,"nuxt","ui","open","UInputMenu property OPEN not working properly","2024-11-23T20:32:41Z","https://github.com/nuxt/ui/issues/2724",0.6570569,{"description":2002,"labels":2003,"number":2008,"owner":1994,"repository":1995,"state":1996,"title":2009,"updated_at":2010,"url":2011,"score":2012},"### Description\n\nIs there currently a way, or future support for overriding the trigger for the Accordion similar to how it worked in v2:\n\n> Example for v2\n\n```vue\n\u003Cu-accordion :items=\"items\" :ui=\"{ wrapper: 'flex flex-col w-full' }\">\n \u003Ctemplate #default=\"{ item, open }\">\n \u003Cu-button variant=\"ghost\" class=\"flex justify-between items-center font-semibold\">\n \u003Cspan>{{ item.label }}\u003C/span>\n \u003Cdiv class=\"flex items-center space-x-2\">\n \u003Cu-icon\n name=\"i-heroicons-chevron-right-20-solid\"\n class=\"w-5 h-5 ms-auto transform transition-transform duration-200\"\n :class=\"[open && 'rotate-90']\"\n />\n \u003C/div>\n \u003C/u-button>\n \u003C/template>\n\n \u003Ctemplate #item=\"{ item }\">\n // Content\n \u003C/template>\n\u003C/u-accordion>\n```\n\nCurrently i don't see a way with the default slot to override the AccordionRoot trigger\n",[2004,2007],{"name":2005,"color":2006},"question","d876e3",{"name":1988,"color":1989},3455,"Override Slot for Accordion Trigger","2025-03-04T17:30:46Z","https://github.com/nuxt/ui/issues/3455",0.7004244,{"description":2014,"labels":2015,"number":2018,"owner":1994,"repository":1995,"state":1996,"title":2019,"updated_at":2020,"url":2021,"score":2022},"### Environment\n\n------------------------------\n- Operating System: Darwin\n- Node Version: v20.12.2\n- Nuxt Version: 3.13.2\n- CLI Version: 3.13.2\n- Nitro Version: 2.9.7\n- Package Manager: pnpm@9.10.0\n- Builder: -\n- User Config: compatibilityDate, future, modules, extends, nuxtHubRateLimit, icon, runtimeConfig, hub, devtools\n- Runtime Modules: @nuxthub/core@0.7.32, @nuxt/ui@2.18.7, @nuxt/fonts@0.10.0, @vueuse/nuxt@11.1.0, radix-vue/nuxt, nuxt-auth-utils@0.4.4, nuxthub-ratelimit@1.0.4, @formkit/auto-animate/nuxt@0.8.2\n- Build Modules: -\n------------------------------\n\n### Version\n\n2.18.7\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-j4n37h?file=app.vue\n\n### Description\n\nI've found a rather rare bug, the first character gets skipped when we're using the `@input` event on `UTextarea` component. Using a watch on the v-model value works fine\n\n\n### Additional context\n\n\n\n### Logs\n\n_No response_",[2016,2017],{"name":1985,"color":1986},{"name":1991,"color":1992},2414,"Bug: UTextarea skips first input with the @input handler","2024-10-18T06:02:09Z","https://github.com/nuxt/ui/issues/2414",0.7030132,{"description":2024,"labels":2025,"number":2030,"owner":1994,"repository":1995,"state":2031,"title":2032,"updated_at":2033,"url":2034,"score":2035},"### Environment\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v20.12.0\n- Nuxt Version: 3.15.0\n- CLI Version: 3.17.2\n- Nitro Version: 2.10.4\n- Package Manager: yarn@1.22.22\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/devtools@1.6.4, @nuxt/ui@2.20.0, @vueuse/nuxt@12.2.0, @vueuse/motion/nuxt@2.2.6, @nuxtjs/device@3.2.4, @nuxt/image@1.8.1, @pinia/nuxt@0.9.0, pinia-plugin-persistedstate/nuxt, @vite-pwa/nuxt@0.10.6, nuxt-snackbar@1.1.2, nuxt-gtag@3.0.2, @nuxt/eslint@0.7.4\n- Build Modules: -\n------------------------------\n\n### Version\n\nv2.20.0\n\n### Reproduction\n\n no reproduction\n\n### Description\n\nI notice there's a syntax error in the code;\nThe error is coming from a syntax error in the Headless UI Vue component code. Specifically, there's an unexpected semicolon in this line: \n(0,;__vite_ssr_import_5__.match)(i.value,{\nThis appears to be a build/compilation issue with the Headless UI Vue component. Let me check if there are any Headless UI Vue dependencies in the package.json.\n\nThe error appears when using nuxt v3.15.0 \nWith the previous \"nuxt\": \"3.14.1592\", no error. I 'm not sure if i should fill the bug Report here or in Nuxt directly!\n\n\n### Additional context\n\nUnexpected token ';'\n\n function g(e=\"\"){return e.split(/\\s+/).filter(t=>t.length>1)}let R=Symbol(\"TransitionContext\");var pe=(a=>(a.Visible=\"visible\",a.Hidden=\"hidden\",a))(pe||{});function me(){return (0,__vite_ssr_import_0__.inject)(R,null)!==null}function Te(){let e=(0,__vite_ssr_import_0__.inject)(R,null);if(e===null)throw new Error(\"A \u003CTransitionChild /> is used but it is missing a parent \u003CTransitionRoot />.\");return e}function ge(){let e=(0,__vite_ssr_import_0__.inject)(N,null);if(e===null)throw new Error(\"A \u003CTransitionChild /> is used but it is missing a parent \u003CTransitionRoot />.\");return e}let N=Symbol(\"NestingContext\");function L(e){return\"children\"in e?L(e.children):e.value.filter(({state:t})=>t===\"visible\").length>0}function Q(e){let t=(0,__vite_ssr_import_0__.ref)([]),a=(0,__vite_ssr_import_0__.ref)(!1);(0,__vite_ssr_import_0__.onMounted)(()=>a.value=!0),(0,__vite_ssr_import_0__.onUnmounted)(()=>a.value=!1);function s(n,r=__vite_ssr_import_6__.RenderStrategy.Hidden){let l=t.value.findIndex(({id:f})=>f===n);l!==-1&&((0,__vite_ssr_import_5__.match)(r,{[__vite_ssr_import_6__.RenderStrategy.Unmount](){t.value.splice(l,1)},[__vite_ssr_import_6__.RenderStrategy.Hidden](){t.value[l].state=\"hidden\"}}),!L(t)&&a.value&&(e==null||e()))}function h(n){let r=t.value.find(({id:l})=>l===n);return r?r.state!==\"visible\"&&(r.state=\"visible\"):t.value.push({id:n,state:\"visible\"}),()=>s(n,__vite_ssr_import_6__.RenderStrategy.Unmount)}return{children:t,register:h,unregister:s}}let W=__vite_ssr_import_6__.Features.RenderStrategy,he=(0,__vite_ssr_import_0__.defineComponent)({props:{as:{type:[Object,String],default:\"div\"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:\"\"},enterFrom:{type:[String],default:\"\"},enterTo:{type:[String],default:\"\"},entered:{type:[String],default:\"\"},leave:{type:[String],default:\"\"},leaveFrom:{type:[String],default:\"\"},leaveTo:{type:[String],default:\"\"}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:a,slots:s,expose:h}){let n=(0,__vite_ssr_import_0__.ref)(0);function r(){n.value|=__vite_ssr_import_2__.State.Opening,t(\"beforeEnter\")}function l(){n.value&=~__vite_ssr_import_2__.State.Opening,t(\"afterEnter\")}function f(){n.value|=__vite_ssr_import_2__.State.Closing,t(\"beforeLeave\")}function S(){n.value&=~__vite_ssr_import_2__.State.Closing,t(\"afterLeave\")}if(!me()&&(0,__vite_ssr_import_2__.hasOpenClosed)())return()=>(0,__vite_ssr_import_0__.h)(Se,{...e,onBeforeEnter:r,onAfterEnter:l,onBeforeLeave:f,onAfterLeave:S},s);let d=(0,__vite_ssr_import_0__.ref)(null),y=(0,__vite_ssr_import_0__.computed)(()=>e.unmount?__vite_ssr_import_6__.RenderStrategy.Unmount:__vite_ssr_import_6__.RenderStrategy.Hidden);h({el:d,$el:d});let{show:v,appear:A}=Te(),{register:D,unregister:H}=ge(),i=(0,__vite_ssr_import_0__.ref)(v.value?\"visible\":\"hidden\"),I={value:!0},c=(0,__vite_ssr_import_1__.useId)(),b={value:!1},P=Q(()=>{!b.value&&i.value!==\"hidden\"&&(i.value=\"hidden\",H(c),S())});(0,__vite_ssr_import_0__.onMounted)(()=>{let o=D(c);(0,__vite_ssr_import_0__.onUnmounted)(o)}),(0,__vite_ssr_import_0__.watchEffect)(()=>{if(y.value===__vite_ssr_import_6__.RenderStrategy.Hidden&&c){if(v.value&&i.value!==\"visible\"){i.value=\"visible\";return}(0,;__vite_ssr_import_5__.match)(i.value,{[\"hidden\"]:()=>H(c),[\"visible\"]:()=>D(c)})}});let j=g(e.enter),M=g(e.enterFrom),X=g(e.enterTo),_=g(e.entered),Y=g(e.leave),Z=g(e.leaveFrom),ee=g(e.leaveTo);(0,__vite_ssr_import_0__.onMounted)(()=>{(0,__vite_ssr_import_0__.watchEffect)(()=>{if(i.value===\"visible\"){let o=(0,__vite_ssr_import_3__.dom)(d);if(o instanceof Comment&&o.data===\"\")throw new Error(\"Did you forget to passthrough the ref to the actual DOM node?\")}})});function te(o){let E=I.value&&!A.value,p=(0,__vite_ssr_import_3__.dom)(d);!p||!(p instanceof HTMLElement)||E||(b.value=!0,v.value&&r(),v.value||f(),o(v.value?(0,__vite_ssr_import_7__.transition)(p,j,M,X,_,V=>{b.value=!1,V===__vite_ssr_import_7__.Reason.Finished&&l()}):(0,__vite_ssr_import_7__.transition)(p,Y,Z,ee,_,V=>{b.value=!1,V===__vite_ssr_import_7__.Reason.Finished&&(L(P)||(i.value=\"hidden\",H(c),S()))})))}return (0,__vite_ssr_import_0__.onMounted)(()=>{(0,__vite_ssr_import_0__.watch)([v],(o,E,p)=>{te(p),I.value=!1},{immediate:!0})}),(0,__vite_ssr_import_0__.provide)(N,P),(0,__vite_ssr_import_2__.useOpenClosedProvider)((0,__vite_ssr_import_0__.computed)(()=>(0,__vite_ssr_import_5__.match)(i.value,{[\"visible\"]:__vite_ssr_import_2__.State.Open,[\"hidden\"]:__vite_ssr_import_2__.State.Closed})|n.value)),()=>{let{appear:o,show:E,enter:p,enterFrom:V,enterTo:Ce,entered:ye,leave:be,leaveFrom:Ee,leaveTo:Ve,...U}=e,ne={ref:d},re={...U,...A.value&&v.value&&__vite_ssr_import_4__.env.isServer?{class:(0,__vite_ssr_import_0__.normalizeClass)([a.class,U.class,...j,...M])}:{}};return (0,__vite_ssr_import_6__.render)({theirProps:re,ourProps:ne,slot:{},slots:s,attrs:a,features:W,visible:i.value===\"visible\",name:\"TransitionChild\"})}}}),ce=he,Se=(0,__vite_ssr_import_0__.defineComponent)({inheritAttrs:!1,props:{as:{type:[Object,String],default:\"div\"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:\"\"},enterFrom:{type:[String],default:\"\"},enterTo:{type:[String],default:\"\"},entered:{type:[String],default:\"\"},leave:{type:[String],default:\"\"},leaveFrom:{type:[String],default:\"\"},leaveTo:{type:[String],default:\"\"}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:a,slots:s}){let h=(0,__vite_ssr_import_2__.useOpenClosed)(),n=(0,__vite_ssr_import_0__.computed)(()=>e.show===null&&h!==null?(h.value&__vite_ssr_import_2__.State.Open)===__vite_ssr_import_2__.State.Open:e.show);(0,__vite_ssr_import_0__.watchEffect)(()=>{if(![!0,!1].includes(n.value))throw new Error('A \u003CTransition /> is used but it is missing a :show=\"true | false\" prop.')});let r=(0,__vite_ssr_import_0__.ref)(n.value?\"visible\":\"hidden\"),l=Q(()=>{r.value=\"hidden\"}),f=(0,__vite_ssr_import_0__.ref)(!0),S={show:n,appear:(0,__vite_ssr_import_0__.computed)(()=>e.appear||!f.value)};return (0,__vite_ssr_import_0__.onMounted)(()=>{(0,__vite_ssr_import_0__.watchEffect)(()=>{f.value=!1,n.value?r.value=\"visible\":L(l)||(r.value=\"hidden\")})}),(0,__vite_ssr_import_0__.provide)(N,l),(0,__vite_ssr_import_0__.provide)(R,S),()=>{let d=(0,__vite_ssr_import_6__.omit)(e,[\"show\",\"appear\",\"unmount\",\"onBeforeEnter\",\"onBeforeLeave\",\"onAfterEnter\",\"onAfterLeave\"]),y={unmount:e.unmount};return (0,__vite_ssr_import_6__.render)({ourProps:{...y,as:\"template\"},theirProps:{},slot:{},slots:{...s,default:()=>[(0,__vite_ssr_import_0__.h)(ce,{onBeforeEnter:()=>t(\"beforeEnter\"),onAfterEnter:()=>t(\"afterEnter\"),onBeforeLeave:()=>t(\"beforeLeave\"),onAfterLeave:()=>t(\"afterLeave\"),...a,...y,...d},s.default)]},attrs:{},features:W,visible:r.value===\"visible\",name:\"Transition\"})}}});\n\n\n SyntaxError: Unexpected token ';'\n at new Script (node:vm:116:7)\n at createScript (node:vm:268:10)\n at Object.runInThisContext (node:vm:316:10)\n at ViteNodeRunner.runModule (/D:/Dev/maideo/maideo-maid/node_modules/vite-node/dist/client.mjs:398:19)\n at ViteNodeRunner.directRequest (/D:/Dev/maideo/maideo-maid/node_modules/vite-node/dist/client.mjs:381:16) \n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async ViteNodeRunner.cachedRequest (/D:/Dev/maideo/maideo-maid/node_modules/vite-node/dist/client.mjs:206:14) \n at async ViteNodeRunner.dependencyRequest (/D:/Dev/maideo/maideo-maid/node_modules/vite-node/dist/client.mjs:259:12)\n at async node_modules\\@headlessui\\vue\\dist\\headlessui.esm.js:23:32\n at async ViteNodeRunner.runModule (/D:/Dev/maideo/maideo-maid/node_modules/vite-node/dist/client.mjs:399:5) \n\n### Logs\n\n```shell-script\n\n```",[2026,2027],{"name":1985,"color":1986},{"name":2028,"color":2029},"duplicate","cfd3d7",2972,"closed","Syntax error in the Headless UI Vue component code","2024-12-25T10:39:30Z","https://github.com/nuxt/ui/issues/2972",0.6595805,{"description":2037,"labels":2038,"number":2041,"owner":1994,"repository":1995,"state":2031,"title":2042,"updated_at":2043,"url":2044,"score":2045},"### Description\n\nI added type of array items. It's Work as well in web but i got error warn in IDE. I use Nuxt + NuxtUi 3 + TS\n\n\n\n\n\nFor items : \n```\nconst items = ref([\n { label: \"Your Order\", slot: \"header\", type: \"label\" },\n { label: \"Item1\" },\n ]);\n```",[2039,2040],{"name":2005,"color":2006},{"name":1988,"color":1989},3456,"DropdownMenuItem type","2025-03-28T17:41:59Z","https://github.com/nuxt/ui/issues/3456",0.6690093,{"description":2047,"labels":2048,"number":2051,"owner":1994,"repository":1995,"state":2031,"title":2052,"updated_at":2053,"url":2054,"score":2055},"### Environment\n\n- Operating System: `Windows_NT`\n- Node Version: `v22.12.0`\n- Nuxt Version: `3.16.0`\n- CLI Version: `3.23.0`\n- Nitro Version: `2.11.6`\n- Package Manager: `pnpm@9.9.0`\n- Builder: `-`\n- User Config: `devtools`, `modules`, `css`, `future`, `compatibilityDate`\n- Runtime Modules: `@nuxt/ui@3.0.0`, `@nuxt/eslint@1.2.0`\n- Build Modules: `-`\n\n### Version\n\nv3.0.0\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/lingering-night-wl8j66\n\n### Description\n\nWhen items have value `null` or `undefined` and click the select menu, app will throw an error. \n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\nUncaught (in promise) TypeError: Cannot read properties of undefined (reading 'disabled') SelectMenu.vue:379\n at SelectMenu.vue:379:35\n at renderList (runtime-core.esm-bundler.js:2904:16)\n at SelectMenu.vue:1:1\n at renderFnWithContext (runtime-core.esm-bundler.js:692:13)\n at renderSlot (runtime-core.esm-bundler.js:2981:53)\n at ComboboxGroup.vue:38:2\n at renderFnWithContext (runtime-core.esm-bundler.js:692:13)\n at renderSlot (runtime-core.esm-bundler.js:2981:53)\n at ListboxGroup.vue:21:34\n at renderFnWithContext (runtime-core.esm-bundler.js:692:13)\n```",[2049,2050],{"name":1985,"color":1986},{"name":1991,"color":1992},3316,"`USelectMenu`: can not open drop select when options have value `null`","2025-03-15T11:31:45Z","https://github.com/nuxt/ui/issues/3316",0.67101675,{"description":2057,"labels":2058,"number":2061,"owner":1994,"repository":1995,"state":2031,"title":2062,"updated_at":2063,"url":2064,"score":2065},"### Environment\n\n- Operating System: Windows_NT\n- Node Version: v18.20.4\n- Nuxt Version: 3.13.2\n- CLI Version: 3.15.0\n- Nitro Version: 2.9.7\n- Package Manager: npm@10.7.0\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/ui@2.18.7\n- Build Modules: -\n\n### Version\n\nv3\n\n### Reproduction\n\nCreat new project with nuxi\n\nInstall nuxt/ui\n\n### Description\n\nCannot destructure property 'nuxt' of 'this' as it is undefined.\n\nNot working on fresh project\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[2059,2060],{"name":1985,"color":1986},{"name":1988,"color":1989},2442,"Cannot destructure property 'nuxt' of 'this' as it is undefined.","2024-10-23T20:22:23Z","https://github.com/nuxt/ui/issues/2442",0.6884882,{"description":2067,"labels":2068,"number":2074,"owner":1994,"repository":1995,"state":2031,"title":2075,"updated_at":2076,"url":2077,"score":2078},"### Environment\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v20.18.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/ui@3.0.0-alpha.8, @pinia/nuxt@0.7.0, @nuxt/image@1.8.1, @vueuse/nuxt@11.2.0, nuxt-gtag@3.0.1, @nuxt/eslint@0.6.1, @nuxtjs/leaflet@1.2.4\n- Build Modules: -\n------------------------------\n\n### Version\n\nv3.0.0-alpha.8\n\n### Reproduction\n\nhttps://github.com/tobychidi/nuxt-nitro-api-reprod\n\nThis a simpler project but the same thing happens. \n\n### Description\n\n ```\nWARN [vite:css] Lexical error on line 1: Unrecognized text. 7:22:01 AM\n\n Erroneous area:\n1: infinity * 1px\n^..^\n3009| &::after {\n3010| content: var(--tw-content);\n3011| border-radius: calc(infinity * 1px);\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n3012| }\n3013| }\n```\n\nAlso:\n```\n[plugin @tailwindcss/vite:generate:build] Sourcemap is likely to be incorrect: a plugin (@tailwindcss/vite:generate:build) was used to transform files, but didn't generate a sourcemap for the transformation. Consult the plugin documentation for help\n```\n\nThis error happens, even on Netlify where I deploy and the build does not finish. \n\n\n\n\nIt gets to the end but never finishes until timeout.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2069,2070,2071],{"name":1985,"color":1986},{"name":1988,"color":1989},{"name":2072,"color":2073},"upstream","78bddb",2589,"Build Error in v3","2024-11-10T18:55:55Z","https://github.com/nuxt/ui/issues/2589",0.69260603,{"description":2080,"labels":2081,"number":2084,"owner":1994,"repository":1995,"state":2031,"title":2085,"updated_at":2086,"url":2087,"score":2088},"### Environment\n\n- Operating System: Darwin\n- Node Version: v22.11.0\n- Nuxt Version: 3.15.2\n- CLI Version: 3.20.0\n- Nitro Version: 2.10.4\n- Package Manager: pnpm@9.15.4\n- Builder: -\n- User Config: compatibilityDate, devtools, modules\n- Runtime Modules: @nuxt/ui@2.21.0\n- Build Modules: -\n\n### Version\n\n 2.21.0\n\n### Reproduction\n\n1. Create a new nuxt project using cli\n2. install nuxt/ui using cli command `npx nuxi@latest module add ui`\n\n### Description\n\n WARN Failed to load config ./.nuxt/nuxtui-tailwind.config.mjs due to the error below. Skipping.. nuxt:tailwindcss 8:47:34 PM\n Cannot find module 'tailwindcss/lib/lib/defaultExtractor.js'\nRequire stack:\n\nPretty sure this has got to do with an update in nitro/nuxt i saw recently @danielroe any ideas?\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n Require stack:\n - .nuxt/nuxtui-tailwind.config.mjs\n at Function._resolveFilename (node:internal/modules/cjs/loader:1249:15)\n at Function.resolve (node:internal/modules/helpers:151:19)\n at jitiResolve (node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:187220)\n at jitiRequire (node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:189288)\n at import (node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:199778)\n at .nuxt/nuxtui-tailwind.config.mjs:2:31\n at eval_evalModule (node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:196325)\n at node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:194552\n at async Function.import (node_modules/.pnpm/jiti@2.4.2/node_modules/jiti/dist/jiti.cjs:1:199772)\n at async resolveConfig (node_modules/.pnpm/c12@2.0.1_magicast@0.3.5/node_modules/c12/dist/shared/c12.B4fc1S0C.mjs:343:18)\n at async loadConfig (node_modules/.pnpm/c12@2.0.1_magicast@0.3.5/node_modules/c12/dist/shared/c12.B4fc1S0C.mjs:147:23)\n at async Promise.all (index 3)\n at async loadConfigs (node_modules/.pnpm/@nuxtjs+tailwindcss@6.13.1_magicast@0.3.5_rollup@4.30.1/node_modules/@nuxtjs/tailwindcss/dist/module.mjs:374:27)\n at async node_modules/.pnpm/@nuxtjs+tailwindcss@6.13.1_magicast@0.3.5_rollup@4.30.1/node_modules/@nuxtjs/tailwindcss/dist/module.mjs:420:9\n at async generateApp (node_modules/.pnpm/nuxt@3.15.2_@parcel+watcher@2.5.0_@types+node@22.10.7_db0@0.2.1_ioredis@5.4.2_magicast@0.3.5__uowpedy6xy2pdmgu2ptesyqdza/node_modules/nuxt/dist/shared/nuxt.BoHAox-C.mjs:6166:5)\n at async _applyPromised (node_modules/.pnpm/perfect-debounce@1.0.0/node_modules/perfect-debounce/dist/index.mjs:54:10)\n\n```",[2082,2083],{"name":1985,"color":1986},{"name":1991,"color":1992},3139,"Failed to load config error on init","2025-03-17T14:13:36Z","https://github.com/nuxt/ui/issues/3139",0.6942179,{"description":2090,"labels":2091,"number":2096,"owner":1994,"repository":1995,"state":2031,"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\nI noticed that using form validation in Nuxt UI is very simple: Add a schema to a `\u003CUForm>` component and then place `\u003CUFormGroup>`'s with the corresponding names.\n\nUnfortunately in Vue I never found a solution this simple. In fact e.g. the use of VeeValidate is very cumberstone and requires a lot of code.\n\nMight it be possible to refactor the form validation of Nuxt UI as a standalone Vue component that uses slots and provides pure functionality without styling?\n\nE.g. by providing the a \"Form\" component, that auto validated the state and providing the error messages in a reactive object, but most things are handled by the developer:\n\n```vue\n\u003CForm :schema=\"schema\" :state=\"state\" @submit=\"onSubmit\" ref=\"form\">\n \u003Clabel for=\"email\">E-Mail\u003C/label>\n \u003Cinput name=\"email\" type=\"text\" v-model=\"state.email\" />\n \u003Cdiv v-if=\"form.errors.email\">{{ form.errors.email }}\u003C/div>\n\n \u003Cbutton type=\"submit\">Submit\u003C/button>\n\u003C/Form>\n```\n\nInstead of configuring how the form validates (e.g. on each change, only after pressing submit, etc) we could use states for each value like Angular does. There the form validates on each change but each value has multiple states like is-pristine, isDirty, isUntouched and by use of those values triggering the visibility of the error messages can be precisely handled. Example:\n\n```vue\n\u003CForm :schema=\"schema\" :state=\"state\" @submit=\"onSubmit\" ref=\"form\">\n \u003Clabel for=\"email\">E-Mail\u003C/label>\n \u003Cinput name=\"email\" type=\"text\" v-model=\"state.email\" />\n \u003Cdiv v-if=\"form.errors.email && form.values.email.dirty\">{{ form.errors.email }}\u003C/div>\n\n \u003Cbutton type=\"submit\" :disabled=\"!form.isValid\">Submit\u003C/button>\n\u003C/Form>\n```",[2092,2095],{"name":2093,"color":2094},"enhancement","a2eeef",{"name":1988,"color":1989},2768,"Release form validation as standalone library","2024-12-16T09:47:15Z","https://github.com/nuxt/ui/issues/2768",0.6944472,["Reactive",2102],{},["Set"],["ShallowReactive",2105],{"TRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"oyY9CqKOLNRaNU5JGE7f_rri_V51Y_ndVnw3XOjGtaE":-1},"/nuxt/ui/3386"]