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```",[2934,2935],{"name":2920,"color":2921},{"name":2936,"color":2937},"duplicate","cfd3d7",2972,"Syntax error in the Headless UI Vue component code","2024-12-25T10:39:30Z","https://github.com/nuxt/ui/issues/2972",0.7220345,{"description":2944,"labels":2945,"number":2947,"owner":2875,"repository":2926,"state":2911,"title":2948,"updated_at":2949,"url":2950,"score":2951},"### Environment\n\nmacOS 14.2.1 (23C71)\r\nnode.js v20.9.0\r\nvue v3.5.6.\r\nnuxt v3.13.2\r\n@nuxt/ui v2.18.4\r\n@nuxt/ui-pro v1.4.2\r\ndate-fns 4.0.0\r\nv-calendar v3.1.2\r\n\n\n### Version\n\n2.18.4\n\n### Reproduction\n\n1. Create a custom date component as specified (https://ui.nuxt.com/components/date-picker#daterangepicker) \r\n```html\r\n\u003Cscript setup lang=\"ts\">\r\nimport { DatePicker as VCalendarDatePicker } from 'v-calendar'\r\nimport type { DatePickerDate, DatePickerRangeObject } from 'v-calendar/dist/types/src/use/datePicker'\r\nimport 'v-calendar/dist/style.css'\r\n\r\nconst props = defineProps({\r\n modelValue: {\r\n type: [Date, Object] as PropType\u003CDatePickerDate | DatePickerRangeObject | null>,\r\n default: null\r\n }\r\n})\r\n\r\nconst emit = defineEmits(['update:model-value', 'close'])\r\n\r\nconst date = computed({\r\n get: () => props.modelValue,\r\n set: (value) => {\r\n emit('update:model-value', value)\r\n emit('close')\r\n }\r\n})\r\n\r\nconst attrs = {\r\n transparent: true,\r\n borderless: true,\r\n color: 'primary',\r\n 'is-dark': { selector: 'html', darkClass: 'dark' },\r\n 'first-day-of-week': 2,\r\n}\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CVCalendarDatePicker v-if=\"date && (typeof date === 'object')\" v-model.range=\"date\" :columns=\"2\" v-bind=\"{ ...attrs, ...$attrs }\" />\r\n \u003CVCalendarDatePicker v-else v-model=\"date\" v-bind=\"{ ...attrs, ...$attrs }\" />\r\n\u003C/template>\r\n\r\n\u003Cstyle>\r\n:root {\r\n --vc-gray-50: rgb(var(--color-gray-50));\r\n --vc-gray-100: rgb(var(--color-gray-100));\r\n --vc-gray-200: rgb(var(--color-gray-200));\r\n --vc-gray-300: rgb(var(--color-gray-300));\r\n --vc-gray-400: rgb(var(--color-gray-400));\r\n --vc-gray-500: rgb(var(--color-gray-500));\r\n --vc-gray-600: rgb(var(--color-gray-600));\r\n --vc-gray-700: rgb(var(--color-gray-700));\r\n --vc-gray-800: rgb(var(--color-gray-800));\r\n --vc-gray-900: rgb(var(--color-gray-900));\r\n}\r\n\r\n.vc-primary {\r\n --vc-accent-50: rgb(var(--color-primary-50));\r\n --vc-accent-100: rgb(var(--color-primary-100));\r\n --vc-accent-200: rgb(var(--color-primary-200));\r\n --vc-accent-300: rgb(var(--color-primary-300));\r\n --vc-accent-400: rgb(var(--color-primary-400));\r\n --vc-accent-500: rgb(var(--color-primary-500));\r\n --vc-accent-600: rgb(var(--color-primary-600));\r\n --vc-accent-700: rgb(var(--color-primary-700));\r\n --vc-accent-800: rgb(var(--color-primary-800));\r\n --vc-accent-900: rgb(var(--color-primary-900));\r\n}\r\n\u003C/style>\r\n```\r\n\r\n2. Create this date range page as specified\r\n```html\r\n\u003Cscript setup lang=\"ts\">\r\nimport { sub, format, isSameDay, type Duration } from 'date-fns'\r\n\r\nconst ranges = [\r\n { label: 'Last 7 days', duration: { days: 7 } },\r\n { label: 'Last 14 days', duration: { days: 14 } },\r\n { label: 'Last 30 days', duration: { days: 30 } },\r\n { label: 'Last 3 months', duration: { months: 3 } },\r\n { label: 'Last 6 months', duration: { months: 6 } },\r\n { label: 'Last year', duration: { years: 1 } }\r\n]\r\nconst selected = ref({ start: sub(new Date(), { days: 14 }), end: new Date() })\r\n\r\nfunction isRangeSelected (duration: Duration) {\r\n return isSameDay(selected.value.start, sub(new Date(), duration)) && isSameDay(selected.value.end, new Date())\r\n}\r\n\r\nfunction selectRange (duration: Duration) {\r\n selected.value = { start: sub(new Date(), duration), end: new Date() }\r\n}\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CUPopover :popper=\"{ placement: 'bottom-start' }\">\r\n \u003CUButton icon=\"i-heroicons-calendar-days-20-solid\">\r\n {{ format(selected.start, 'd MMM, yyy') }} - {{ format(selected.end, 'd MMM, yyy') }}\r\n \u003C/UButton>\r\n\r\n \u003Ctemplate #panel=\"{ close }\">\r\n \u003Cdiv class=\"flex items-center sm:divide-x divide-gray-200 dark:divide-gray-800\">\r\n \u003Cdiv class=\"hidden sm:flex flex-col py-4\">\r\n \u003CUButton\r\n v-for=\"(range, index) in ranges\"\r\n :key=\"index\"\r\n :label=\"range.label\"\r\n color=\"gray\"\r\n variant=\"ghost\"\r\n class=\"rounded-none px-6\"\r\n :class=\"[isRangeSelected(range.duration) ? 'bg-gray-100 dark:bg-gray-800' : 'hover:bg-gray-50 dark:hover:bg-gray-800/50']\"\r\n truncate\r\n @click=\"selectRange(range.duration)\"\r\n />\r\n \u003C/div>\r\n\r\n \u003CDatePicker v-model=\"selected\" @close=\"close\" />\r\n \u003C/div>\r\n \u003C/template>\r\n \u003C/UPopover>\r\n\u003C/template>\r\n```\r\n\r\n3. Click on the 5th of September and then on the 9th of October and witness the error in console logs\r\n\r\n\r\n \n\n### Description\n\nFollowing the daterange section here (https://ui.nuxt.com/components/date-picker#daterangepicker) exactly and then selecting a custom start and end date results in this error:\r\n```text\r\nv-calendar.js?v=4705749a:4740 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'dayIndex')\r\n at DateRangeContext.render (v-calendar.js?v=4705749a:4740:35)\r\n```\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[2946],{"name":2920,"color":2921},2208,"DatePicker undefined 'dayIndex' error for custom date selection (docs out of date?)","2025-03-14T12:54:49Z","https://github.com/nuxt/ui/issues/2208",0.72375107,{"description":2953,"labels":2954,"number":2962,"owner":2875,"repository":2875,"state":2911,"title":2963,"updated_at":2964,"url":2965,"score":2966},"### Environment\n\n- Operating System: `Darwin`\n- Node Version: `v20.17.0`\n- Nuxt Version: `3.13.2`\n- CLI Version: `3.14.0`\n- Nitro Version: `2.9.7`\n- Package Manager: `npm@10.8.3`\n- Builder: `-`\n- User Config: `-`\n- Runtime Modules: `-`\n- Build Modules: `-`\n\n### Reproduction\n\n--\n\n### Describe the bug\n\nHi everyone,\n\nI'm using a custom useFetch similar to the one from the given example: https://nuxt.com/docs/examples/advanced/use-custom-fetch-composable\n\nAfter upgrading to nuxt 3.13 it seems to not work anymore when the page is fetch server side (client side there are no problems).\nI get the following error:\n\n```\nModule.useNuxtApp (node_modules/nuxt/dist/app/nuxt.js:251:13)\n at Module.useRequestEvent (node_modules/nuxt/dist/app/composables/ssr.js:11:58)\n at readRawCookies (node_modules/nuxt/dist/app/composables/cookie.js:144:101)\n at Module.useCookie (node_modules/nuxt/dist/app/composables/cookie.js:29:19)\n at onRequest (plugins/apiFetch.ts:21:43)\n at callHooks (node_modules/ofetch/dist/shared/ofetch.03887fc3.mjs:134:13)\n at $fetchRaw2 (node_modules/ofetch/dist/shared/ofetch.03887fc3.mjs:207:13)\n at onError (node_modules/ofetch/dist/shared/ofetch.03887fc3.mjs:179:16)\n at $fetchRaw2 (node_modules/ofetch/dist/shared/ofetch.03887fc3.mjs:311:20)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n[nuxt] A composable that requires access to the Nuxt instance was called outside of a plugin, Nuxt hook, Nuxt middleware, or Vue setup function. This is probably not a Nuxt bug. Find out more at https://nuxt.com/docs/guide/concepts/auto-imports#vue-and-nuxt-composables.\n```\n\nBefore upgrading everything worked fine. In a script setup i use the custom fetch as follows:\n`const { data: posts, error } = await useApiFetch\u003CFeed>('/posts')`\n\nAny ideas? Can it be related to change of nuxt on useCookie() ?\n\nThank you very much for your help,\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[2955,2956,2959],{"name":2869,"color":2870},{"name":2957,"color":2958},"needs reproduction","FBCA04",{"name":2960,"color":2961},"possible regression","B90A42",29636,"Custom useFetch SSR is not working after upgrading to 3.13","2024-11-04T12:46:08Z","https://github.com/nuxt/nuxt/issues/29636",0.7238461,{"description":2968,"labels":2969,"number":2972,"owner":2875,"repository":2875,"state":2911,"title":2973,"updated_at":2974,"url":2975,"score":2976},"### Discussed in https://github.com/nuxt/nuxt/discussions/28835\r\n\r\n\u003Cdiv type='discussions-op-text'>\r\n\r\n\u003Csup>Originally posted by **Fiyuva** September 4, 2024\u003C/sup>\r\n Hello, I get this error when I try to build after the latest update.\r\n\r\nERROR Nuxt Build Error: node_modules/nuxt/dist/app/composables/id.js (1:9): \"useId\" is not exported by \"node_modules/vue/dist/vue.runtime.esm-bundler.js\", imported by \"node_modules/nuxt/dist/app/composables/id.js\".\r\n\r\nin dev mode it says\r\n\r\nUncaught (in promise) SyntaxError: The requested module '/_nuxt/node_modules/vue/dist/vue.runtime.esm-bundler.js?v=66f24f9d' does not provide an export named 'useId' (at id.js:1:10)\r\n\r\n`{\r\n \"type\": \"module\",\r\n \"private\": true,\r\n \"scripts\": {\r\n \"build\": \"nuxt build\",\r\n \"dev\": \"nuxt dev\",\r\n \"generate\": \"nuxt generate\",\r\n \"preview\": \"nuxt preview\",\r\n \"postinstall\": \"nuxt prepare\"\r\n },\r\n \"devDependencies\": {\r\n \"@fortawesome/fontawesome-svg-core\": \"^6.6.0\",\r\n \"@fortawesome/free-brands-svg-icons\": \"^6.6.0\",\r\n \"@fortawesome/free-regular-svg-icons\": \"^6.6.0\",\r\n \"@fortawesome/free-solid-svg-icons\": \"^6.6.0\",\r\n \"@fortawesome/vue-fontawesome\": \"^3.0.8\",\r\n \"@nuxtjs/color-mode\": \"^3.4.4\",\r\n \"@nuxtjs/i18n\": \"^8.5.1\",\r\n \"@types/bootstrap\": \"^5.2.10\",\r\n \"@vite-pwa/nuxt\": \"^0.10.4\",\r\n \"bootstrap\": \"^5.3.3\",\r\n \"eslint\": \"^9.9.1\",\r\n \"eslint-plugin-security-node\": \"^1.1.4\",\r\n \"nuxt\": \"^3.13.1\",\r\n \"nuxt-aos\": \"^1.2.5\",\r\n \"sweetalert2\": \"^11.6.13\",\r\n \"typescript\": \"^5.5.4\",\r\n \"vue-tsc\": \"^2.1.4\"\r\n },\r\n \"dependencies\": {\r\n \"@pinia/nuxt\": \"^0.5.4\",\r\n \"@types/crypto-js\": \"^4.2.2\",\r\n \"crypto-js\": \"^4.2.0\",\r\n \"eslint-plugin-anti-trojan-source\": \"^1.1.1\",\r\n \"flag-icons\": \"^7.2.3\",\r\n \"nuxt-purgecss\": \"^2.0.0\",\r\n \"pinia\": \"^2.2.2\",\r\n \"sass\": \"^1.78.0\",\r\n \"vue-recaptcha\": \"^3.0.0-alpha.6\"\r\n },\r\n \"resolutions\": {\r\n \"@nuxt/kit\": \"3.0.0-rc.13\"\r\n },\r\n \"overrides\": {\r\n \"vue\": \"latest\"\r\n }\r\n}\r\n`\r\n\r\n\u003C/div>\r\n",[2970,2971],{"name":2869,"color":2870},{"name":2957,"color":2958},28837,"useId modules error","2024-10-01T15:22:03Z","https://github.com/nuxt/nuxt/issues/28837",0.72740746,{"description":2978,"labels":2979,"number":2988,"owner":2875,"repository":2875,"state":2911,"title":2989,"updated_at":2990,"url":2991,"score":2992},"### Environment\r\n\r\n------------------------------\r\n- Operating System: Darwin\r\n- Node Version: v20.14.0\r\n- Nuxt Version: 3.12.1\r\n- CLI Version: 3.12.0\r\n- Nitro Version: 2.9.6\r\n- Package Manager: bun@1.1.12\r\n- Builder: -\r\n- User Config: ssr, devtools\r\n- Runtime Modules: -\r\n- Build Modules: -\r\n------------------------------\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/~/github.com/mitjans/nuxt-repro\r\n\r\n### Describe the bug\r\n\r\n1. Once the repro app builds, you'll see that the increment button works correctly.\r\n2. Head to `nuxt.config.ts` and change `ssr: true` to `ssr: false`\r\n3. Refresh the app\r\n4. Increment button stops working\r\n\r\n### Additional context\r\n\r\n_Further looking into this...._",[2980,2983,2984,2985],{"name":2981,"color":2982},"3.x","29bc7f",{"name":2866,"color":2867},{"name":2920,"color":2921},{"name":2986,"color":2987},"❗ p4-important","D93F0B",27536,"`useState` is non reactive when `ssr: false`","2024-06-11T18:59:49Z","https://github.com/nuxt/nuxt/issues/27536",0.72796273,["Reactive",2994],{},["Set"],["ShallowReactive",2997],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fkfOryos6H3MtxSLMjM94QR0p9vT7jNhjjnYX_gflRHY":-1},"/nuxt/nuxt.com/1343"]