\n\n \u003Ctemplate #panel>\n \u003CRegioloketPreview \n :data=\"row\"\n />\n \u003C/template>\n \u003C/UPopover>\n \u003C/template>\n\n```\n\n",[1984,1987],{"name":1985,"color":1986},"question","d876e3",{"name":1988,"color":1989},"stale","ededed",2435,"nuxt","ui","open","@hover event for UTable rows","2025-02-14T01:58:49Z","https://github.com/nuxt/ui/issues/2435",0.75063276,{"description":1999,"labels":2000,"number":2010,"owner":1991,"repository":1992,"state":1993,"title":2011,"updated_at":2012,"url":2013,"score":2014},"### Description\n\nFor building modular forms it think it would make sense to support all components within for example `UInput`\n\nSo `\u003CUSlider v-model=\"value\" />` would be equivelant to `\u003CUInput type=\"slider\" v-model=\"value\" />` \n\nAnd also add support for validating/typing these components\n```\nconst schema = z.object({\n email: u('email'), // Equivelant to z.string().email('Invalid email')\n password: u('password').min(8) // z.string().min(8, 'Password must be at least 8 characters')\n age: u('slider').min(18) // Equivelant to z.number().min(18, 'Age must be 18 or higher')\n})\n```\nOr with custom validation messages \n```\nconst schema = z.object({\n email: u('email', 'Please enter valid email!'), // Equivelant to z.string().email('Please enter a valid email!')\n password: u('password').min(8, \"Password must be at least 8 characters!\") // Equivelant to z.string().min(8, \"Password must be at least 8 characters!\")\n age: u('slider').min(18, \"You must be 18 years or older!\") // Equivelant to z.number().min(18, \"You must be 18 years or older!\")\n})\n```\n\n\n### Additional context\n\n_No response_",[2001,2004,2007],{"name":2002,"color":2003},"enhancement","a2eeef",{"name":2005,"color":2006},"v3","49DCB8",{"name":2008,"color":2009},"triage","ffffff",3934,"Add support for all components in UInput","2025-04-19T08:42:50Z","https://github.com/nuxt/ui/issues/3934",0.79010767,{"description":2016,"labels":2017,"number":2020,"owner":1991,"repository":1992,"state":1993,"title":2021,"updated_at":2022,"url":2023,"score":2024},"### Description\n\nI am using the Nuxt UI playground template from [here](https://codesandbox.io/p/sandbox/cranky-swartz-54zg6c). \n\nAfter running `pnpm build`, I noticed that `.output/server/node_modules/reka-ui/dist` contains many unused components. How can I configure it to tree-shake these unused components after the build?",[2018,2019],{"name":1985,"color":1986},{"name":2005,"color":2006},3376,"How can I tree-sake reka-ui?","2025-02-22T10:09:54Z","https://github.com/nuxt/ui/issues/3376",0.79223394,{"description":2026,"labels":2027,"number":2033,"owner":1991,"repository":1992,"state":1993,"title":2034,"updated_at":2035,"url":2036,"score":2037},"### Environment\n\nFirefox 136.0.4\nGoogle Chrome 134.0.6998.178\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.0.2\n\n### Reproduction\n\nChange the multiple property from true to false and then to true again.\n\n### Description\n\nInitially the property is set to true. This works as intended and you can select multiple items. After changing the property to false and then to true again you can only select one item instead of multiple.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[2028,2031,2032],{"name":2029,"color":2030},"bug","d73a4a",{"name":2005,"color":2006},{"name":2008,"color":2009},3725,"UTree: multiple property not working in docs","2025-03-28T22:46:38Z","https://github.com/nuxt/ui/issues/3725",0.7945466,{"description":2039,"labels":2040,"number":2045,"owner":1991,"repository":1992,"state":1993,"title":2046,"updated_at":2047,"url":2048,"score":2049},"### Description\n\nReka UI has its own [Time Field](https://reka-ui.com/docs/components/time-field) component, but Nuxt UI doesn't provide any component based on that, to easily pick time. I think it would be nice to have.\nI see it with a similar structure to the `Calendar` one, so with both single and range.\nI'm not sure about the name, should it be `Clock` or `Time Field`?\n\nI would like to start a PR for that to get confident with the codebase, can I ?\n\n\n### Additional context\n\n_No response_",[2041,2044],{"name":2042,"color":2043},"feature","A27AF6",{"name":2005,"color":2006},3089,"[InputTime] Implement component","2025-01-14T09:57:06Z","https://github.com/nuxt/ui/issues/3089",0.80011564,{"description":2051,"labels":2052,"number":2058,"owner":1991,"repository":2059,"state":2060,"title":2061,"updated_at":2062,"url":2063,"score":2064},"",[2053,2055],{"name":2002,"color":2054},"1ad6ff",{"name":2056,"color":2057},"responsive","1cd1c6",821,"nuxt.com","closed","[Navbar] Add color mode switch in mobile aside nav","2023-02-15T12:31:01Z","https://github.com/nuxt/nuxt.com/issues/821",0.75611603,{"description":2066,"labels":2067,"number":2074,"owner":1991,"repository":2059,"state":2060,"title":2075,"updated_at":2076,"url":2077,"score":2078},"_Improve the design of the modules page with [Raycast](https://www.raycast.com/store) page as the main source of inspiration._\n\n### Todos\n- [ ] Create a responsive design for the modules listing page sync with the API.\n- [ ] Card are external links.\n",[2068,2071],{"name":2069,"color":2070},"design","00bd6f",{"name":2072,"color":2073},"dev","018415",1337,"Modules Page","2023-10-10T14:44:51Z","https://github.com/nuxt/nuxt.com/issues/1337",0.7680688,{"description":2080,"labels":2081,"number":2084,"owner":1991,"repository":1992,"state":2060,"title":2085,"updated_at":2086,"url":2087,"score":2088},"After many requests from the community (nuxt/ui#187, nuxt/ui#298, nuxt/ui#543, nuxt/ui#850, nuxt/ui#1514, etc.), the goal would be to make `@nuxt/ui` compatible for non-Nuxt apps as a Vite plugin I guess.\r\n\r\nThe minimal features would be to:\r\n\r\n- Run Tailwind CSS vite plugin\r\n- Inject components\r\n- Inject composables\r\n- Use `@iconify/vue` instead of `@nuxt/icon` (we don't need that much complexity I guess)\r\n- Use VueUse https://vueuse.org/core/useDark/#usedark instead of `@nuxtjs/color-mode`\r\n- Make Nuxt specific imports (`#imports`, `#build`, etc.) work\r\n- Make Nuxt specific composables (`useAppConfig`, ~~`useId`~~, etc.) work\r\n- Make theming with `app.config.ts` work in some way",[2082,2083],{"name":2042,"color":2043},{"name":2005,"color":2006},2129,"Vue compatibility","2024-11-21T09:41:35Z","https://github.com/nuxt/ui/issues/2129",0.7699392,{"description":2090,"labels":2091,"number":2092,"owner":1991,"repository":2059,"state":2060,"title":2093,"updated_at":2094,"url":2095,"score":2096},"### Environment\n\nbrowser chrome\n\n### Reproduction\n\nopen https://nuxt.com/modules in browser.\n\n### Describe the bug\n\n\u003Cimg width=\"1271\" alt=\"image\" src=\"https://github.com/nuxt/nuxt/assets/32301380/7363e730-5eda-4fee-8790-375987e293ef\">\r\n\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[],1353,"[Document] nuxt modules page has been crashed.","2023-10-10T14:44:55Z","https://github.com/nuxt/nuxt.com/issues/1353",0.7772465,{"description":2098,"labels":2099,"number":2102,"owner":1991,"repository":1992,"state":2060,"title":2103,"updated_at":2104,"url":2105,"score":2106},"### Environment\n\n- Operating System: Darwin\n- Node Version: v20.18.0\n- Nuxt Version: 3.13.2\n- CLI Version: 3.15.0\n- Nitro Version: 2.9.7\n- Package Manager: npm@10.8.2\n- Builder: -\n- User Config: default\n- Runtime Modules: @nuxt/eslint@0.6.0, @nuxtjs/prismic@3.4.3, @vueuse/nuxt@11.1.0, @nuxtjs/seo@2.0.0-rc.23, @nuxt/scripts@0.9.5, @formkit/nuxt@1.6.7, @nuxtjs/i18n@9.0.0-rc.2, @nuxt/ui@3.0.0-alpha.7\n- Build Modules: -\n\n### Version\n\n3.0.0-alpha.7\n\n### Reproduction\n\nhttps://stackblitz.com/edit/nuxt-starter-rufada?file=nuxt.config.ts\n\n### Description\n\nIt's seams that tailwind did not expose something named \"compile\" or, as Netlify Ai says, the build failure is caused by a syntax error related to a CommonJS module.\n\nI think that the problem was related to the way you import the `@tailwindcss/vite` plugin in line 77 of the `src/module.ts` but i don't understand if it's caused by the `await import()`. \n\nIn your project all work perfect after pnpm run prepare:dev. Maybe it's the way NPM (and not PNPM) installs the module? \n\n### Additional context\n\n_No response_\n\n### Logs\n\n```\n ERROR Cannot start nuxt: The requested module 'tailwindcss' does not provide an export named 'compile' 4:27:03 PM\n\n var P=Object.defineProperty;var F=(e,t)=>{for(var s in t)P(e,s,{get:t[s],enumerable:!0})};import*as u from\"node:module\";import{pathToFileURL as X}from\"node:url\";var d={};F(d,{DEBUG:()=>T});var T=C(process.env.DEBUG);function C(e){if(e===void 0)return!1;if(e===\"true\"||e===\"1\")return!0;if(e===\"false\"||e===\"0\")return!1;if(e===\"*\")return!0;let t=e.split(\",\").map(s=>s.split(\":\")[0]);return t.includes(\"-tailwindcss\")?!1:!!t.includes(\"tailwindcss\")}import f from\"enhanced-resolve\";import{createJiti as U}from\"jiti\";import x from\"node:fs\";import J from\"node:fs/promises\";import y,{dirname as v}from\"node:path\";import{pathToFileURL as _}from\"node:url\";import{__unstable__loadDesignSystem as b,compile as W}from\"tailwindcss\";import m from\"node:fs/promises\";import a from\"node:path\";var $=[/import[\\s\\S]*?['\"](.{3,}?)['\"]/gi,/import[\\s\\S]*from[\\s\\S]*?['\"](.{3,}?)['\"]/gi,/export[\\s\\S]*from[\\s\\S]*?['\"](.{3,}?)['\"]/gi,/require\\(['\"](.+)['\"]\\)/gi],M=[\".js\",\".cjs\",\".mjs\"],N=[\"\",\".js\",\".cjs\",\".mjs\",\".ts\",\".cts\",\".mts\",\".jsx\",\".tsx\"],I=[\"\",\".ts\",\".cts\",\".mts\",\".tsx\",\".js\",\".cjs\",\".mjs\",\".jsx\"];async function O(e,t){for(let s of t){let r=${e}${s};if((await m.stat(r).catch(()=>null))?.isFile())return r}for(let s of t){let r=${e}/index${s};if(await m.access(r).then(()=>!0,()=>!1))return r}return null}async function p(e,t,s,r){let i=M.includes(r)?N:I,n=await O(a.resolve(s,t),i);if(n===null||e.has(n))return;e.add(n),s=a.dirname(n),r=a.extname(n);let o=await m.readFile(n,\"utf-8\"),l=[];for(let j of $)for(let c of o.matchAll(j))c[1].startsWith(\".\")&&l.push(p(e,c[1],s,r));await Promise.all(l)}async function g(e){let t=new Set;return await p(t,e,a.dirname(e),a.extname(e)),Array.from(t)}function B(e,{base:t,onDependency:s}){return W(e,{base:t,async loadModule(r,i){return R(r,i,s)},async loadStylesheet(r,i){return E(r,i,s)}})}async function L(e,{base:t}){return b(e,{base:t,async loadModule(s,r){return R(s,r,()=>{})},async loadStylesheet(s,r){return E(s,r,()=>{})}})}async function R(e,t,s){if(e[0]!==\".\"){let o=await S(e,t);if(!o)throw new Error(Could not resolve '${e}' from '${t}');let l=await h(_(o).href);return{base:v(o),module:l.default??l}}let r=await S(e,t);if(!r)throw new Error(Could not resolve '${e}' from '${t}');let[i,n]=await Promise.all([h(_(r).href+\"?id=\"+Date.now()),g(r)]);for(let o of n)s(o);return{base:v(r),module:i.default??i}}async function E(e,t,s){let r=await z(e,t);if(!r)throw new Error(Could not resolve '${e}' from '${t}');if(s(r),typeof globalThis.__tw_readFile==\"function\"){let n=await globalThis.__tw_readFile(r,\"utf-8\");if(n)return{base:y.dirname(r),content:n}}let i=await J.readFile(r,\"utf-8\");return{base:y.dirname(r),content:i}}var w=null;async function h(e){try{return await import(e)}catch{return w??=U(import.meta.url,{moduleCache:!1,fsCache:!1}),await w.import(e)}}var q=f.ResolverFactory.createResolver({fileSystem:new f.CachedInputFileSystem(x,4e3),useSyncFileSystemCalls:!0,extensions:[\".css\"],mainFields:[\"style\"],conditionNames:[\"style\"]});async function z(e,t){if(typeof globalThis.__tw_resolve==\"function\"){let s=globalThis.__tw_resolve(e,t);if(s)return Promise.resolve(s)}return D(q,e,t)}var A=f.ResolverFactory.createResolver({fileSystem:new f.CachedInputFileSystem(x,4e3),useSyncFileSystemCalls:!0,extensions:[\".js\",\".json\",\".node\",\".ts\"]});function S(e,t){return D(A,e,t)}function D(e,t,s){return new Promise((r,i)=>e.resolve({},s,t,{},(n,o)=>{if(n)return i(n);r(o)}))}function G(e,t){if(typeof e!=\"string\")throw new TypeError(\"expected path to be a string\");if(e===\"\\\\\"||e===\"/\")return\"/\";var s=e.length;if(s\u003C=1)return e;var r=\"\";if(s>4&&e[3]===\"\\\\\"){var i=e[2];(i===\"?\"||i===\".\")&&e.slice(0,2)===\"\\\\\\\\\"&&(e=e.slice(2),r=\"//\")}var n=e.split(/[/\\\\]+/);return t!==!1&&n[n.length-1]===\"\"&&n.pop(),r+n.join(\"/\")}function oe(e){let t=G(e);return e.startsWith(\"\\\\\\\\\")&&t.startsWith(\"/\")&&!t.startsWith(\"//\")?/${t}:t}if(!process.versions.bun){let e=u.createRequire(import.meta.url);u.register?.(X(e.resolve(\"@tailwindcss/node/esm-cache-loader\")))}export{L as __unstable__loadDesignSystem,B as compile,d as env,oe as normalizePath};\n ^^^^^^^\n SyntaxError: The requested module 'tailwindcss' does not provide an export named 'compile'\n\n at ModuleJob._instantiate (node:internal/modules/esm/module_job:146:21)\n at async ModuleJob.run (node:internal/modules/esm/module_job:229:5)\n at async ModuleLoader.import (node:internal/modules/esm/loader:473:24)\n at async setup (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/@nuxt/ui/dist/module.mjs:2788:22)\n at async normalizedModule (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/@nuxt/kit/dist/index.mjs:2136:17)\n at async installModule (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/@nuxt/kit/dist/index.mjs:2478:95)\n at async initNuxt (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/nuxt/dist/index.mjs:4506:5)\n at async NuxtDevServer._load (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/nuxi/dist/chunks/dev2.mjs:1894:5)\n at async NuxtDevServer.load (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/nuxi/dist/chunks/dev2.mjs:1828:7)\n at async NuxtDevServer.init (/Users/lucabortolussi/Projects/v3%20-%20Smartness/node_modules/nuxi/dist/chunks/dev2.mjs:1823:5)\n```\n",[2100,2101],{"name":2029,"color":2030},{"name":2005,"color":2006},2455,"The requested module `tailwindcss` does not provide an export named `compile`","2024-11-04T20:48:46Z","https://github.com/nuxt/ui/issues/2455",0.78769624,["Reactive",2108],{},["Set"],["ShallowReactive",2111],{"TRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"DIhPbkWaMk1o-I5Jk0mGqJ3H5eh8GToHMr9vo0iSEO0":-1},"/nuxt/ui/1722"]