[{"data":1,"prerenderedAt":1968},["ShallowReactive",2],{"docs-navigation:en":3,"content-page:docs:FTH0WEL9YyznGc7C9nNhscWto_x6praVB2dxHw1okEo":595,"content-page-surround:docs:FTH0WEL9YyznGc7C9nNhscWto_x6praVB2dxHw1okEo":1956,"i-logos:typescript-icon":1961,"i-lucide:clipboard":1965},[4,55,123,191,450,509,554,590],{"title":5,"page":6,"canonicalKey":7,"locale":8,"id":9,"draft":6,"icon":10,"sidebar":11,"children":12},"Learn",false,"1","en","content:docs:1.overview:.navigation.yml","i-lucide-book-open","section",[13,20,27,34,41,48],{"title":14,"id":15,"canonicalKey":16,"locale":8,"draft":6,"navigation":17,"icon":18,"path":19},"Better Convex Nuxt","content:docs:1.overview:1.introduction.md","1\u002F1",{"icon":18},"i-lucide-orbit","\u002Fdocs\u002Foverview\u002Fintroduction",{"title":21,"id":22,"canonicalKey":23,"locale":8,"draft":6,"navigation":24,"icon":25,"path":26},"Why Better Convex Nuxt","content:docs:1.overview:2.why-better-convex-nuxt.md","1\u002F2",{"icon":25},"i-lucide-badge-check","\u002Fdocs\u002Foverview\u002Fwhy-better-convex-nuxt",{"title":28,"id":29,"canonicalKey":30,"locale":8,"draft":6,"navigation":31,"icon":32,"path":33},"Who It Is For","content:docs:1.overview:3.who-it-is-for.md","1\u002F3",{"icon":32},"i-lucide-users","\u002Fdocs\u002Foverview\u002Fwho-it-is-for",{"title":35,"id":36,"canonicalKey":37,"locale":8,"draft":6,"navigation":38,"icon":39,"path":40},"Use Cases","content:docs:1.overview:4.use-cases.md","1\u002F4",{"icon":39},"i-lucide-layout-dashboard","\u002Fdocs\u002Foverview\u002Fuse-cases",{"title":42,"id":43,"canonicalKey":44,"locale":8,"draft":6,"navigation":45,"icon":46,"path":47},"Compare Nuxt Integrations","content:docs:1.overview:5.comparison.md","1\u002F5",{"icon":46},"i-lucide-scale","\u002Fdocs\u002Foverview\u002Fcomparison",{"title":49,"id":50,"canonicalKey":51,"locale":8,"draft":6,"navigation":52,"icon":53,"path":54},"Limitations and Trade-offs","content:docs:1.overview:6.limitations.md","1\u002F6",{"icon":53},"i-lucide-triangle-alert","\u002Fdocs\u002Foverview\u002Flimitations",{"title":56,"page":6,"canonicalKey":57,"locale":8,"id":58,"draft":6,"icon":59,"children":60},"Understand","2","content:docs:2.understand:.navigation.yml","i-lucide-brain",[61,67,74,81,88,95,102,109,116],{"title":62,"id":63,"canonicalKey":64,"locale":8,"draft":6,"navigation":65,"icon":59,"path":66},"Mental Model","content:docs:2.understand:1.mental-model.md","2\u002F1",{"icon":59},"\u002Fdocs\u002Funderstand\u002Fmental-model",{"title":68,"id":69,"canonicalKey":70,"locale":8,"draft":6,"navigation":71,"icon":72,"path":73},"Request Lifecycle","content:docs:2.understand:2.request-lifecycle.md","2\u002F2",{"icon":72},"i-lucide-route","\u002Fdocs\u002Funderstand\u002Frequest-lifecycle",{"title":75,"id":76,"canonicalKey":77,"locale":8,"draft":6,"navigation":78,"icon":79,"path":80},"SSR, Hydration, and Real-Time","content:docs:2.understand:3.ssr-hydration-realtime.md","2\u002F3",{"icon":79},"i-lucide-refresh-cw","\u002Fdocs\u002Funderstand\u002Fssr-hydration-realtime",{"title":82,"id":83,"canonicalKey":84,"locale":8,"draft":6,"navigation":85,"icon":86,"path":87},"Query Ownership and Caching","content:docs:2.understand:4.query-ownership-and-caching.md","2\u002F4",{"icon":86},"i-lucide-database","\u002Fdocs\u002Funderstand\u002Fquery-ownership-and-caching",{"title":89,"id":90,"canonicalKey":91,"locale":8,"draft":6,"navigation":92,"icon":93,"path":94},"Authentication and Identity","content:docs:2.understand:5.authentication-and-identity.md","2\u002F5",{"icon":93},"i-lucide-fingerprint","\u002Fdocs\u002Funderstand\u002Fauthentication-and-identity",{"title":96,"id":97,"canonicalKey":98,"locale":8,"draft":6,"navigation":99,"icon":100,"path":101},"Server and Client Boundaries","content:docs:2.understand:6.server-and-client-boundaries.md","2\u002F6",{"icon":100},"i-lucide-panels-top-left","\u002Fdocs\u002Funderstand\u002Fserver-and-client-boundaries",{"title":103,"id":104,"canonicalKey":105,"locale":8,"draft":6,"navigation":106,"icon":107,"path":108},"Errors and Failures","content:docs:2.understand:7.errors-and-failures.md","2\u002F7",{"icon":107},"i-lucide-circle-x","\u002Fdocs\u002Funderstand\u002Ferrors-and-failures",{"title":110,"id":111,"canonicalKey":112,"locale":8,"draft":6,"navigation":113,"icon":114,"path":115},"Design Decisions","content:docs:2.understand:8.design-decisions.md","2\u002F8",{"icon":114},"i-lucide-git-branch","\u002Fdocs\u002Funderstand\u002Fdesign-decisions",{"title":117,"id":118,"canonicalKey":119,"locale":8,"draft":6,"navigation":120,"icon":121,"path":122},"Glossary","content:docs:2.understand:9.glossary.md","2\u002F9",{"icon":121},"i-lucide-book-a","\u002Fdocs\u002Funderstand\u002Fglossary",{"title":124,"page":6,"canonicalKey":125,"locale":8,"id":126,"draft":6,"icon":127,"children":128},"Get Started","3","content:docs:3.get-started:.navigation.yml","i-lucide-rocket",[129,136,143,150,157,164,171,178,185],{"title":130,"id":131,"canonicalKey":132,"locale":8,"draft":6,"navigation":133,"icon":134,"path":135},"Choose Your Path","content:docs:3.get-started:1.choose-your-path.md","3\u002F1",{"icon":134},"i-lucide-signpost","\u002Fdocs\u002Fget-started\u002Fchoose-your-path",{"title":137,"id":138,"canonicalKey":139,"locale":8,"draft":6,"navigation":140,"icon":141,"path":142},"Installation","content:docs:3.get-started:2.installation.md","3\u002F2",{"icon":141},"i-lucide-download","\u002Fdocs\u002Fget-started\u002Finstallation",{"title":144,"id":145,"canonicalKey":146,"locale":8,"draft":6,"navigation":147,"icon":148,"path":149},"First Real-Time Page","content:docs:3.get-started:3.first-realtime-page.md","3\u002F3",{"icon":148},"i-lucide-radio","\u002Fdocs\u002Fget-started\u002Ffirst-realtime-page",{"title":151,"id":152,"canonicalKey":153,"locale":8,"draft":6,"navigation":154,"icon":155,"path":156},"Add a Mutation","content:docs:3.get-started:4.add-a-mutation.md","3\u002F4",{"icon":155},"i-lucide-square-pen","\u002Fdocs\u002Fget-started\u002Fadd-a-mutation",{"title":158,"id":159,"canonicalKey":160,"locale":8,"draft":6,"navigation":161,"icon":162,"path":163},"Add Authentication","content:docs:3.get-started:5.add-authentication.md","3\u002F5",{"icon":162},"i-lucide-log-in","\u002Fdocs\u002Fget-started\u002Fadd-authentication",{"title":165,"id":166,"canonicalKey":167,"locale":8,"draft":6,"navigation":168,"icon":169,"path":170},"Protect Data","content:docs:3.get-started:6.protect-data.md","3\u002F6",{"icon":169},"i-lucide-shield-check","\u002Fdocs\u002Fget-started\u002Fprotect-data",{"title":172,"id":173,"canonicalKey":174,"locale":8,"draft":6,"navigation":175,"icon":176,"path":177},"Project Structure","content:docs:3.get-started:7.project-structure.md","3\u002F7",{"icon":176},"i-lucide-folder-tree","\u002Fdocs\u002Fget-started\u002Fproject-structure",{"title":179,"id":180,"canonicalKey":181,"locale":8,"draft":6,"navigation":182,"icon":183,"path":184},"Next Steps","content:docs:3.get-started:8.next-steps.md","3\u002F8",{"icon":183},"i-lucide-arrow-right","\u002Fdocs\u002Fget-started\u002Fnext-steps",{"title":186,"id":187,"canonicalKey":188,"locale":8,"draft":6,"navigation":189,"icon":100,"path":190},"Plain Vue and Vite","content:docs:3.get-started:9.plain-vue.md","3\u002F9",{"icon":100},"\u002Fdocs\u002Fget-started\u002Fplain-vue",{"title":192,"page":6,"canonicalKey":193,"locale":8,"id":194,"draft":6,"icon":195,"sidebar":11,"children":196},"Build","4","content:docs:4.build:.navigation.yml","i-lucide-blocks",[197,234,265,336,368,393,432],{"title":198,"page":6,"canonicalKey":199,"locale":8,"children":200},"Queries","4\u002F1",[201,206,213,220,227],{"title":198,"id":202,"canonicalKey":203,"locale":8,"draft":6,"navigation":204,"icon":86,"path":205},"content:docs:4.build:1.queries:1.queries.md","4\u002F1\u002F1",{"icon":86},"\u002Fdocs\u002Fbuild\u002Fqueries\u002Fqueries",{"title":207,"id":208,"canonicalKey":209,"locale":8,"draft":6,"navigation":210,"icon":211,"path":212},"Reactive Arguments","content:docs:4.build:1.queries:2.reactive-arguments.md","4\u002F1\u002F2",{"icon":211},"i-lucide-sliders-horizontal","\u002Fdocs\u002Fbuild\u002Fqueries\u002Freactive-arguments",{"title":214,"id":215,"canonicalKey":216,"locale":8,"draft":6,"navigation":217,"icon":218,"path":219},"Loading and Stale Data","content:docs:4.build:1.queries:3.loading-and-stale-data.md","4\u002F1\u002F3",{"icon":218},"i-lucide-loader-circle","\u002Fdocs\u002Fbuild\u002Fqueries\u002Floading-and-stale-data",{"title":221,"id":222,"canonicalKey":223,"locale":8,"draft":6,"navigation":224,"icon":225,"path":226},"Query Execution Options","content:docs:4.build:1.queries:4.ssr-options.md","4\u002F1\u002F4",{"icon":225},"i-lucide-server-cog","\u002Fdocs\u002Fbuild\u002Fqueries\u002Fssr-options",{"title":228,"id":229,"canonicalKey":230,"locale":8,"draft":6,"navigation":231,"icon":232,"path":233},"Pagination","content:docs:4.build:1.queries:6.pagination.md","4\u002F1\u002F6",{"icon":232},"i-lucide-list-plus","\u002Fdocs\u002Fbuild\u002Fqueries\u002Fpagination",{"title":235,"page":6,"canonicalKey":236,"locale":8,"children":237},"Write Data","4\u002F2",[238,244,251,258],{"title":239,"id":240,"canonicalKey":241,"locale":8,"draft":6,"navigation":242,"icon":155,"path":243},"Mutations","content:docs:4.build:2.write-data:1.mutations.md","4\u002F2\u002F1",{"icon":155},"\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Fmutations",{"title":245,"id":246,"canonicalKey":247,"locale":8,"draft":6,"navigation":248,"icon":249,"path":250},"Actions","content:docs:4.build:2.write-data:2.actions.md","4\u002F2\u002F2",{"icon":249},"i-lucide-zap","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Factions",{"title":252,"id":253,"canonicalKey":254,"locale":8,"draft":6,"navigation":255,"icon":256,"path":257},"Optimistic Updates","content:docs:4.build:2.write-data:3.optimistic-updates.md","4\u002F2\u002F3",{"icon":256},"i-lucide-gauge","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Foptimistic-updates",{"title":259,"id":260,"canonicalKey":261,"locale":8,"draft":6,"navigation":262,"icon":263,"path":264},"Concurrent Operations","content:docs:4.build:2.write-data:4.concurrent-operations.md","4\u002F2\u002F4",{"icon":263},"i-lucide-git-fork","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Fconcurrent-operations",{"title":266,"page":6,"canonicalKey":267,"locale":8,"children":268},"Authentication","4\u002F3",[269,275,282,289,295,301,308,315,322,329],{"title":266,"id":270,"canonicalKey":271,"locale":8,"draft":6,"navigation":272,"icon":273,"path":274},"content:docs:4.build:3.authentication:1.overview.md","4\u002F3\u002F1",{"icon":273},"i-lucide-shield","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Foverview",{"title":276,"id":277,"canonicalKey":278,"locale":8,"draft":6,"navigation":279,"icon":280,"path":281},"Better Auth Setup","content:docs:4.build:3.authentication:2.better-auth-setup.md","4\u002F3\u002F2",{"icon":280},"i-lucide-settings-2","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbetter-auth-setup",{"title":283,"id":284,"canonicalKey":285,"locale":8,"draft":6,"navigation":286,"icon":287,"path":288},"Auth State and User Data","content:docs:4.build:3.authentication:3.auth-state-and-user.md","4\u002F3\u002F3",{"icon":287},"i-lucide-user-round","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fauth-state-and-user",{"title":290,"id":291,"canonicalKey":292,"locale":8,"draft":6,"navigation":293,"icon":162,"path":294},"Sign In and Sign Out","content:docs:4.build:3.authentication:4.sign-in-and-sign-out.md","4\u002F3\u002F4",{"icon":162},"\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fsign-in-and-sign-out",{"title":296,"id":297,"canonicalKey":298,"locale":8,"draft":6,"navigation":299,"icon":72,"path":300},"Route Protection","content:docs:4.build:3.authentication:5.route-protection.md","4\u002F3\u002F5",{"icon":72},"\u002Fdocs\u002Fbuild\u002Fauthentication\u002Froute-protection",{"title":302,"id":303,"canonicalKey":304,"locale":8,"draft":6,"navigation":305,"icon":306,"path":307},"Backend Authorization","content:docs:4.build:3.authentication:6.backend-authorization.md","4\u002F3\u002F6",{"icon":306},"i-lucide-lock-keyhole","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbackend-authorization",{"title":309,"id":310,"canonicalKey":311,"locale":8,"draft":6,"navigation":312,"icon":313,"path":314},"Better Auth Plugins","content:docs:4.build:3.authentication:7.better-auth-plugins.md","4\u002F3\u002F7",{"icon":313},"i-lucide-plug","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbetter-auth-plugins",{"title":316,"id":317,"canonicalKey":318,"locale":8,"draft":6,"navigation":319,"icon":320,"path":321},"Custom User Fields","content:docs:4.build:3.authentication:8.custom-user-fields.md","4\u002F3\u002F8",{"icon":320},"i-lucide-user-cog","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fcustom-user-fields",{"title":323,"id":324,"canonicalKey":325,"locale":8,"draft":6,"navigation":326,"icon":327,"path":328},"User Synchronization","content:docs:4.build:3.authentication:9.user-synchronization.md","4\u002F3\u002F9",{"icon":327},"i-lucide-refresh-ccw","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fuser-synchronization",{"title":330,"id":331,"canonicalKey":332,"locale":8,"draft":6,"navigation":333,"icon":334,"path":335},"Delegated OAuth and MCP","content:docs:4.build:3.authentication:10.delegated-oauth-and-mcp.md","4\u002F3\u002F10",{"icon":334},"i-lucide-bot","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fdelegated-oauth-and-mcp",{"title":337,"page":6,"canonicalKey":338,"locale":8,"children":339},"Server","4\u002F4",[340,347,354,361],{"title":341,"id":342,"canonicalKey":343,"locale":8,"draft":6,"navigation":344,"icon":345,"path":346},"serverConvex","content:docs:4.build:4.server:1.server-convex.md","4\u002F4\u002F1",{"icon":345},"i-lucide-server","\u002Fdocs\u002Fbuild\u002Fserver\u002Fserver-convex",{"title":348,"id":349,"canonicalKey":350,"locale":8,"draft":6,"navigation":351,"icon":352,"path":353},"Server Routes","content:docs:4.build:4.server:2.server-routes.md","4\u002F4\u002F2",{"icon":352},"i-lucide-waypoints","\u002Fdocs\u002Fbuild\u002Fserver\u002Fserver-routes",{"title":355,"id":356,"canonicalKey":357,"locale":8,"draft":6,"navigation":358,"icon":359,"path":360},"Webhooks and Jobs","content:docs:4.build:4.server:3.webhooks-and-jobs.md","4\u002F4\u002F3",{"icon":359},"i-lucide-webhook","\u002Fdocs\u002Fbuild\u002Fserver\u002Fwebhooks-and-jobs",{"title":362,"id":363,"canonicalKey":364,"locale":8,"draft":6,"navigation":365,"icon":366,"path":367},"Credentials and Server Security","content:docs:4.build:4.server:4.credentials-and-security.md","4\u002F4\u002F4",{"icon":366},"i-lucide-key-round","\u002Fdocs\u002Fbuild\u002Fserver\u002Fcredentials-and-security",{"title":369,"page":6,"canonicalKey":370,"locale":8,"children":371},"Files","4\u002F5",[372,379,386],{"title":373,"id":374,"canonicalKey":375,"locale":8,"draft":6,"navigation":376,"icon":377,"path":378},"Upload Files","content:docs:4.build:5.files:1.upload-files.md","4\u002F5\u002F1",{"icon":377},"i-lucide-upload","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fupload-files",{"title":380,"id":381,"canonicalKey":382,"locale":8,"draft":6,"navigation":383,"icon":384,"path":385},"Storage URLs","content:docs:4.build:5.files:3.storage-urls.md","4\u002F5\u002F3",{"icon":384},"i-lucide-link","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fstorage-urls",{"title":387,"id":388,"canonicalKey":389,"locale":8,"draft":6,"navigation":390,"icon":391,"path":392},"File Validation and Deletion","content:docs:4.build:5.files:4.validation-and-deletion.md","4\u002F5\u002F4",{"icon":391},"i-lucide-file-x","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fvalidation-and-deletion",{"title":394,"page":6,"canonicalKey":395,"locale":8,"children":396},"Application Behavior","4\u002F6",[397,404,411,418,425],{"title":398,"id":399,"canonicalKey":400,"locale":8,"draft":6,"navigation":401,"icon":402,"path":403},"Connection State","content:docs:4.build:6.application-behavior:1.connection-state.md","4\u002F6\u002F1",{"icon":402},"i-lucide-wifi","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fconnection-state",{"title":405,"id":406,"canonicalKey":407,"locale":8,"draft":6,"navigation":408,"icon":409,"path":410},"Error Handling","content:docs:4.build:6.application-behavior:2.error-handling.md","4\u002F6\u002F2",{"icon":409},"i-lucide-circle-alert","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Ferror-handling",{"title":412,"id":413,"canonicalKey":414,"locale":8,"draft":6,"navigation":415,"icon":416,"path":417},"Logging","content:docs:4.build:6.application-behavior:3.logging.md","4\u002F6\u002F3",{"icon":416},"i-lucide-scroll-text","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Flogging",{"title":419,"id":420,"canonicalKey":421,"locale":8,"draft":6,"navigation":422,"icon":423,"path":424},"DevTools","content:docs:4.build:6.application-behavior:4.devtools.md","4\u002F6\u002F4",{"icon":423},"i-lucide-wrench","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fdevtools",{"title":426,"id":427,"canonicalKey":428,"locale":8,"draft":6,"navigation":429,"icon":430,"path":431},"Performance","content:docs:4.build:6.application-behavior:5.performance.md","4\u002F6\u002F5",{"icon":430},"i-lucide-chart-no-axes-combined","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fperformance",{"title":433,"page":6,"canonicalKey":434,"locale":8,"id":435,"draft":6,"icon":334,"children":436},"Agents and MCP","4\u002F7","content:docs:4.build:7.agents:.navigation.yml",[437,444],{"title":438,"id":439,"canonicalKey":440,"locale":8,"draft":6,"navigation":441,"icon":442,"path":443},"MCP on Convex","content:docs:4.build:7.agents:1.mcp.md","4\u002F7\u002F1",{"icon":442},"i-lucide-plug-zap","\u002Fdocs\u002Fbuild\u002Fagents\u002Fmcp",{"title":445,"id":446,"canonicalKey":447,"locale":8,"draft":6,"navigation":448,"icon":100,"path":449},"Vue MCP Apps","content:docs:4.build:7.agents:2.mcp-apps.md","4\u002F7\u002F2",{"icon":100},"\u002Fdocs\u002Fbuild\u002Fagents\u002Fmcp-apps",{"title":451,"page":6,"canonicalKey":452,"locale":8,"id":453,"draft":6,"icon":454,"children":455},"Recipes","5","content:docs:5.recipes:.navigation.yml","i-lucide-cooking-pot",[456,462,469,476,483,490,497,503],{"title":457,"id":458,"canonicalKey":459,"locale":8,"draft":6,"navigation":460,"icon":39,"path":461},"Protected Dashboard","content:docs:5.recipes:1.protected-dashboard.md","5\u002F1",{"icon":39},"\u002Fdocs\u002Frecipes\u002Fprotected-dashboard",{"title":463,"id":464,"canonicalKey":465,"locale":8,"draft":6,"navigation":466,"icon":467,"path":468},"Real-Time Feed","content:docs:5.recipes:2.realtime-feed.md","5\u002F2",{"icon":467},"i-lucide-messages-square","\u002Fdocs\u002Frecipes\u002Frealtime-feed",{"title":470,"id":471,"canonicalKey":472,"locale":8,"draft":6,"navigation":473,"icon":474,"path":475},"Optimistic Todo List","content:docs:5.recipes:3.optimistic-todo-list.md","5\u002F3",{"icon":474},"i-lucide-list-todo","\u002Fdocs\u002Frecipes\u002Foptimistic-todo-list",{"title":477,"id":478,"canonicalKey":479,"locale":8,"draft":6,"navigation":480,"icon":481,"path":482},"Infinite Scroll","content:docs:5.recipes:4.infinite-scroll.md","5\u002F4",{"icon":481},"i-lucide-mouse","\u002Fdocs\u002Frecipes\u002Finfinite-scroll",{"title":484,"id":485,"canonicalKey":486,"locale":8,"draft":6,"navigation":487,"icon":488,"path":489},"File Upload Form","content:docs:5.recipes:5.file-upload-form.md","5\u002F5",{"icon":488},"i-lucide-file-up","\u002Fdocs\u002Frecipes\u002Ffile-upload-form",{"title":491,"id":492,"canonicalKey":493,"locale":8,"draft":6,"navigation":494,"icon":495,"path":496},"Organization Permissions","content:docs:5.recipes:6.organization-permissions.md","5\u002F6",{"icon":495},"i-lucide-building-2","\u002Fdocs\u002Frecipes\u002Forganization-permissions",{"title":498,"id":499,"canonicalKey":500,"locale":8,"draft":6,"navigation":501,"icon":345,"path":502},"Authenticated Server Route","content:docs:5.recipes:7.authenticated-server-route.md","5\u002F7",{"icon":345},"\u002Fdocs\u002Frecipes\u002Fauthenticated-server-route",{"title":504,"id":505,"canonicalKey":506,"locale":8,"draft":6,"navigation":507,"icon":100,"path":508},"Public and Private Data","content:docs:5.recipes:8.public-and-private-data.md","5\u002F8",{"icon":100},"\u002Fdocs\u002Frecipes\u002Fpublic-and-private-data",{"title":510,"page":6,"canonicalKey":511,"locale":8,"id":512,"draft":6,"icon":513,"children":514},"Reference","6","content:docs:6.reference:.navigation.yml","i-lucide-braces",[515,521,527,533,540,547],{"title":516,"id":517,"canonicalKey":518,"locale":8,"draft":6,"navigation":519,"icon":513,"path":520},"Composables","content:docs:6.reference:1.composables.md","6\u002F1",{"icon":513},"\u002Fdocs\u002Freference\u002Fcomposables",{"title":522,"id":523,"canonicalKey":524,"locale":8,"draft":6,"navigation":525,"icon":345,"path":526},"Server API","content:docs:6.reference:3.server-api.md","6\u002F3",{"icon":345},"\u002Fdocs\u002Freference\u002Fserver-api",{"title":528,"id":529,"canonicalKey":530,"locale":8,"draft":6,"navigation":531,"icon":107,"path":532},"Error Types","content:docs:6.reference:4.error-types.md","6\u002F4",{"icon":107},"\u002Fdocs\u002Freference\u002Ferror-types",{"title":534,"id":535,"canonicalKey":536,"locale":8,"draft":6,"navigation":537,"icon":538,"path":539},"Module Configuration","content:docs:6.reference:5.module-configuration.md","6\u002F5",{"icon":538},"i-lucide-settings","\u002Fdocs\u002Freference\u002Fmodule-configuration",{"title":541,"id":542,"canonicalKey":543,"locale":8,"draft":6,"navigation":544,"icon":545,"path":546},"Package Exports","content:docs:6.reference:6.package-exports.md","6\u002F6",{"icon":545},"i-lucide-package-open","\u002Fdocs\u002Freference\u002Fpackage-exports",{"title":548,"id":549,"canonicalKey":550,"locale":8,"draft":6,"navigation":551,"icon":552,"path":553},"API Surface","content:docs:6.reference:7.api-surface.md","6\u002F7",{"icon":552},"i-lucide-list","\u002Fdocs\u002Freference\u002Fapi-surface",{"title":555,"page":6,"canonicalKey":556,"locale":8,"id":557,"draft":6,"icon":280,"children":558},"Operations","7","content:docs:7.operations:.navigation.yml",[559,566,572,578,584],{"title":560,"id":561,"canonicalKey":562,"locale":8,"draft":6,"navigation":563,"icon":564,"path":565},"Environment Variables","content:docs:7.operations:1.environment-variables.md","7\u002F1",{"icon":564},"i-lucide-variable","\u002Fdocs\u002Foperations\u002Fenvironment-variables",{"title":567,"id":568,"canonicalKey":569,"locale":8,"draft":6,"navigation":570,"icon":127,"path":571},"Deployment","content:docs:7.operations:2.deployment.md","7\u002F2",{"icon":127},"\u002Fdocs\u002Foperations\u002Fdeployment",{"title":573,"id":574,"canonicalKey":575,"locale":8,"draft":6,"navigation":576,"icon":169,"path":577},"Security Model","content:docs:7.operations:3.security-model.md","7\u002F3",{"icon":169},"\u002Fdocs\u002Foperations\u002Fsecurity-model",{"title":579,"id":580,"canonicalKey":581,"locale":8,"draft":6,"navigation":582,"icon":423,"path":583},"Troubleshooting","content:docs:7.operations:4.troubleshooting.md","7\u002F4",{"icon":423},"\u002Fdocs\u002Foperations\u002Ftroubleshooting",{"title":585,"id":586,"canonicalKey":587,"locale":8,"draft":6,"navigation":588,"icon":25,"path":589},"Release Compatibility","content:docs:7.operations:5.release-compatibility.md","7\u002F5",{"icon":25},"\u002Fdocs\u002Foperations\u002Frelease-compatibility",{"title":591,"id":592,"canonicalKey":593,"locale":8,"draft":6,"path":594},"Better Convex documentation","content:docs:index.md","\u002F","\u002Fdocs",{"title":470,"description":596,"navigation":597,"body":598,"type":1943,"id":471,"canonicalKey":472,"draft":6,"partial":6,"locale":8,"collection":1944,"navigationFile":6,"file":1945,"route":1951,"resolution":1953},"Create, toggle, and remove todos immediately with direct local-store updates and automatic rollback.",{"icon":474},{"type":599,"children":600,"toc":1932},"root",[601,610,616,622,1104,1110,1524,1530,1880,1886,1891,1897,1902,1927],{"type":602,"tag":603,"props":604,"children":606},"element","h2",{"id":605},"result",[607],{"type":608,"value":609},"text","Result",{"type":602,"tag":611,"props":612,"children":613},"p",{},[614],{"type":608,"value":615},"Todo interactions update the currently loaded list before the mutation response. Convex confirmation replaces the optimistic view; failures restore the previous result.",{"type":602,"tag":603,"props":617,"children":619},{"id":618},"create",[620],{"type":608,"value":621},"Create",{"type":602,"tag":623,"props":624,"children":627},"pre",{"language":625,"class":626},"ts","shiki shiki-themes light-plus dark-plus dark:dark-plus",[628],{"type":602,"tag":629,"props":630,"children":632},"code",{"class":631},"language-ts",[633,697,699,747,748,808,809,850,851,854,855,901,902,910,911,965,966,993,994,1020,1021,1038,1039,1047,1048,1064,1065,1073,1074,1086,1087,1095,1096],{"type":602,"tag":634,"props":635,"children":638},"span",{"class":636,"style":637},"line","display: inline",[639,645,651,657,663,668,674,679,684,688,692],{"type":602,"tag":634,"props":640,"children":642},{"style":641},"color:#0000FF;--shiki-dark:#569CD6",[643],{"type":608,"value":644},"const",{"type":602,"tag":634,"props":646,"children":648},{"style":647},"color:#0070C1;--shiki-dark:#4FC1FF",[649],{"type":608,"value":650}," createTodo",{"type":602,"tag":634,"props":652,"children":654},{"style":653},"color:#000000;--shiki-dark:#D4D4D4",[655],{"type":608,"value":656}," = ",{"type":602,"tag":634,"props":658,"children":660},{"style":659},"color:#795E26;--shiki-dark:#DCDCAA",[661],{"type":608,"value":662},"useConvexMutation",{"type":602,"tag":634,"props":664,"children":665},{"style":653},[666],{"type":608,"value":667},"(",{"type":602,"tag":634,"props":669,"children":671},{"style":670},"color:#001080;--shiki-dark:#9CDCFE",[672],{"type":608,"value":673},"api",{"type":602,"tag":634,"props":675,"children":676},{"style":653},[677],{"type":608,"value":678},".",{"type":602,"tag":634,"props":680,"children":681},{"style":670},[682],{"type":608,"value":683},"todos",{"type":602,"tag":634,"props":685,"children":686},{"style":653},[687],{"type":608,"value":678},{"type":602,"tag":634,"props":689,"children":690},{"style":670},[691],{"type":608,"value":618},{"type":602,"tag":634,"props":693,"children":694},{"style":653},[695],{"type":608,"value":696},", {",{"type":608,"value":698},"\n",{"type":602,"tag":634,"props":700,"children":701},{"class":636,"style":637},[702,707,712,717,722,727,732,737,742],{"type":602,"tag":634,"props":703,"children":704},{"style":659},[705],{"type":608,"value":706},"  optimisticUpdate",{"type":602,"tag":634,"props":708,"children":709},{"style":670},[710],{"type":608,"value":711},":",{"type":602,"tag":634,"props":713,"children":714},{"style":653},[715],{"type":608,"value":716}," (",{"type":602,"tag":634,"props":718,"children":719},{"style":670},[720],{"type":608,"value":721},"store",{"type":602,"tag":634,"props":723,"children":724},{"style":653},[725],{"type":608,"value":726},", ",{"type":602,"tag":634,"props":728,"children":729},{"style":670},[730],{"type":608,"value":731},"args",{"type":602,"tag":634,"props":733,"children":734},{"style":653},[735],{"type":608,"value":736},") ",{"type":602,"tag":634,"props":738,"children":739},{"style":641},[740],{"type":608,"value":741},"=>",{"type":602,"tag":634,"props":743,"children":744},{"style":653},[745],{"type":608,"value":746}," {",{"type":608,"value":698},{"type":602,"tag":634,"props":749,"children":750},{"class":636,"style":637},[751,756,761,765,769,773,778,782,786,790,794,798,803],{"type":602,"tag":634,"props":752,"children":753},{"style":641},[754],{"type":608,"value":755},"    const",{"type":602,"tag":634,"props":757,"children":758},{"style":647},[759],{"type":608,"value":760}," todos",{"type":602,"tag":634,"props":762,"children":763},{"style":653},[764],{"type":608,"value":656},{"type":602,"tag":634,"props":766,"children":767},{"style":670},[768],{"type":608,"value":721},{"type":602,"tag":634,"props":770,"children":771},{"style":653},[772],{"type":608,"value":678},{"type":602,"tag":634,"props":774,"children":775},{"style":659},[776],{"type":608,"value":777},"getQuery",{"type":602,"tag":634,"props":779,"children":780},{"style":653},[781],{"type":608,"value":667},{"type":602,"tag":634,"props":783,"children":784},{"style":670},[785],{"type":608,"value":673},{"type":602,"tag":634,"props":787,"children":788},{"style":653},[789],{"type":608,"value":678},{"type":602,"tag":634,"props":791,"children":792},{"style":670},[793],{"type":608,"value":683},{"type":602,"tag":634,"props":795,"children":796},{"style":653},[797],{"type":608,"value":678},{"type":602,"tag":634,"props":799,"children":800},{"style":670},[801],{"type":608,"value":802},"list",{"type":602,"tag":634,"props":804,"children":805},{"style":653},[806],{"type":608,"value":807},", {})",{"type":608,"value":698},{"type":602,"tag":634,"props":810,"children":811},{"class":636,"style":637},[812,818,822,826,831,836,840,845],{"type":602,"tag":634,"props":813,"children":815},{"style":814},"color:#AF00DB;--shiki-dark:#C586C0",[816],{"type":608,"value":817},"    if",{"type":602,"tag":634,"props":819,"children":820},{"style":653},[821],{"type":608,"value":716},{"type":602,"tag":634,"props":823,"children":824},{"style":670},[825],{"type":608,"value":683},{"type":602,"tag":634,"props":827,"children":828},{"style":653},[829],{"type":608,"value":830}," === ",{"type":602,"tag":634,"props":832,"children":833},{"style":641},[834],{"type":608,"value":835},"undefined",{"type":602,"tag":634,"props":837,"children":838},{"style":653},[839],{"type":608,"value":736},{"type":602,"tag":634,"props":841,"children":842},{"style":814},[843],{"type":608,"value":844},"return",{"type":602,"tag":634,"props":846,"children":847},{"style":641},[848],{"type":608,"value":849}," undefined",{"type":608,"value":698},{"type":602,"tag":634,"props":852,"children":853},{"class":636,"style":637},[],{"type":608,"value":698},{"type":602,"tag":634,"props":856,"children":857},{"class":636,"style":637},[858,863,867,872,876,880,884,888,892,896],{"type":602,"tag":634,"props":859,"children":860},{"style":670},[861],{"type":608,"value":862},"    store",{"type":602,"tag":634,"props":864,"children":865},{"style":653},[866],{"type":608,"value":678},{"type":602,"tag":634,"props":868,"children":869},{"style":659},[870],{"type":608,"value":871},"setQuery",{"type":602,"tag":634,"props":873,"children":874},{"style":653},[875],{"type":608,"value":667},{"type":602,"tag":634,"props":877,"children":878},{"style":670},[879],{"type":608,"value":673},{"type":602,"tag":634,"props":881,"children":882},{"style":653},[883],{"type":608,"value":678},{"type":602,"tag":634,"props":885,"children":886},{"style":670},[887],{"type":608,"value":683},{"type":602,"tag":634,"props":889,"children":890},{"style":653},[891],{"type":608,"value":678},{"type":602,"tag":634,"props":893,"children":894},{"style":670},[895],{"type":608,"value":802},{"type":602,"tag":634,"props":897,"children":898},{"style":653},[899],{"type":608,"value":900},", {}, [",{"type":608,"value":698},{"type":602,"tag":634,"props":903,"children":904},{"class":636,"style":637},[905],{"type":602,"tag":634,"props":906,"children":907},{"style":653},[908],{"type":608,"value":909},"      {",{"type":608,"value":698},{"type":602,"tag":634,"props":912,"children":913},{"class":636,"style":637},[914,919,924,928,933,938,943,949,954,960],{"type":602,"tag":634,"props":915,"children":916},{"style":670},[917],{"type":608,"value":918},"        _id:",{"type":602,"tag":634,"props":920,"children":921},{"style":670},[922],{"type":608,"value":923}," crypto",{"type":602,"tag":634,"props":925,"children":926},{"style":653},[927],{"type":608,"value":678},{"type":602,"tag":634,"props":929,"children":930},{"style":659},[931],{"type":608,"value":932},"randomUUID",{"type":602,"tag":634,"props":934,"children":935},{"style":653},[936],{"type":608,"value":937},"() ",{"type":602,"tag":634,"props":939,"children":940},{"style":814},[941],{"type":608,"value":942},"as",{"type":602,"tag":634,"props":944,"children":946},{"style":945},"color:#267F99;--shiki-dark:#4EC9B0",[947],{"type":608,"value":948}," Id",{"type":602,"tag":634,"props":950,"children":951},{"style":653},[952],{"type":608,"value":953},"\u003C",{"type":602,"tag":634,"props":955,"children":957},{"style":956},"color:#A31515;--shiki-dark:#CE9178",[958],{"type":608,"value":959},"'todos'",{"type":602,"tag":634,"props":961,"children":962},{"style":653},[963],{"type":608,"value":964},">,",{"type":608,"value":698},{"type":602,"tag":634,"props":967,"children":968},{"class":636,"style":637},[969,974,979,983,988],{"type":602,"tag":634,"props":970,"children":971},{"style":670},[972],{"type":608,"value":973},"        _creationTime:",{"type":602,"tag":634,"props":975,"children":976},{"style":670},[977],{"type":608,"value":978}," Date",{"type":602,"tag":634,"props":980,"children":981},{"style":653},[982],{"type":608,"value":678},{"type":602,"tag":634,"props":984,"children":985},{"style":659},[986],{"type":608,"value":987},"now",{"type":602,"tag":634,"props":989,"children":990},{"style":653},[991],{"type":608,"value":992},"(),",{"type":608,"value":698},{"type":602,"tag":634,"props":995,"children":996},{"class":636,"style":637},[997,1002,1007,1011,1015],{"type":602,"tag":634,"props":998,"children":999},{"style":670},[1000],{"type":608,"value":1001},"        text:",{"type":602,"tag":634,"props":1003,"children":1004},{"style":670},[1005],{"type":608,"value":1006}," args",{"type":602,"tag":634,"props":1008,"children":1009},{"style":653},[1010],{"type":608,"value":678},{"type":602,"tag":634,"props":1012,"children":1013},{"style":670},[1014],{"type":608,"value":608},{"type":602,"tag":634,"props":1016,"children":1017},{"style":653},[1018],{"type":608,"value":1019},",",{"type":608,"value":698},{"type":602,"tag":634,"props":1022,"children":1023},{"class":636,"style":637},[1024,1029,1034],{"type":602,"tag":634,"props":1025,"children":1026},{"style":670},[1027],{"type":608,"value":1028},"        completed:",{"type":602,"tag":634,"props":1030,"children":1031},{"style":641},[1032],{"type":608,"value":1033}," false",{"type":602,"tag":634,"props":1035,"children":1036},{"style":653},[1037],{"type":608,"value":1019},{"type":608,"value":698},{"type":602,"tag":634,"props":1040,"children":1041},{"class":636,"style":637},[1042],{"type":602,"tag":634,"props":1043,"children":1044},{"style":653},[1045],{"type":608,"value":1046},"      },",{"type":608,"value":698},{"type":602,"tag":634,"props":1049,"children":1050},{"class":636,"style":637},[1051,1056,1060],{"type":602,"tag":634,"props":1052,"children":1053},{"style":653},[1054],{"type":608,"value":1055},"      ...",{"type":602,"tag":634,"props":1057,"children":1058},{"style":670},[1059],{"type":608,"value":683},{"type":602,"tag":634,"props":1061,"children":1062},{"style":653},[1063],{"type":608,"value":1019},{"type":608,"value":698},{"type":602,"tag":634,"props":1066,"children":1067},{"class":636,"style":637},[1068],{"type":602,"tag":634,"props":1069,"children":1070},{"style":653},[1071],{"type":608,"value":1072},"    ])",{"type":608,"value":698},{"type":602,"tag":634,"props":1075,"children":1076},{"class":636,"style":637},[1077,1082],{"type":602,"tag":634,"props":1078,"children":1079},{"style":814},[1080],{"type":608,"value":1081},"    return",{"type":602,"tag":634,"props":1083,"children":1084},{"style":641},[1085],{"type":608,"value":849},{"type":608,"value":698},{"type":602,"tag":634,"props":1088,"children":1089},{"class":636,"style":637},[1090],{"type":602,"tag":634,"props":1091,"children":1092},{"style":653},[1093],{"type":608,"value":1094},"  },",{"type":608,"value":698},{"type":602,"tag":634,"props":1097,"children":1098},{"class":636,"style":637},[1099],{"type":602,"tag":634,"props":1100,"children":1101},{"style":653},[1102],{"type":608,"value":1103},"})",{"type":602,"tag":603,"props":1105,"children":1107},{"id":1106},"toggle",[1108],{"type":608,"value":1109},"Toggle",{"type":602,"tag":623,"props":1111,"children":1112},{"language":625,"class":626},[1113],{"type":602,"tag":629,"props":1114,"children":1115},{"class":631},[1116,1164,1165,1204,1205,1260,1261,1296,1297,1300,1301,1320,1321,1349,1350,1358,1359,1394,1395,1478,1479,1487,1488,1496,1497,1508,1509,1516,1517],{"type":602,"tag":634,"props":1117,"children":1118},{"class":636,"style":637},[1119,1123,1128,1132,1136,1140,1144,1148,1152,1156,1160],{"type":602,"tag":634,"props":1120,"children":1121},{"style":641},[1122],{"type":608,"value":644},{"type":602,"tag":634,"props":1124,"children":1125},{"style":647},[1126],{"type":608,"value":1127}," toggleTodo",{"type":602,"tag":634,"props":1129,"children":1130},{"style":653},[1131],{"type":608,"value":656},{"type":602,"tag":634,"props":1133,"children":1134},{"style":659},[1135],{"type":608,"value":662},{"type":602,"tag":634,"props":1137,"children":1138},{"style":653},[1139],{"type":608,"value":667},{"type":602,"tag":634,"props":1141,"children":1142},{"style":670},[1143],{"type":608,"value":673},{"type":602,"tag":634,"props":1145,"children":1146},{"style":653},[1147],{"type":608,"value":678},{"type":602,"tag":634,"props":1149,"children":1150},{"style":670},[1151],{"type":608,"value":683},{"type":602,"tag":634,"props":1153,"children":1154},{"style":653},[1155],{"type":608,"value":678},{"type":602,"tag":634,"props":1157,"children":1158},{"style":670},[1159],{"type":608,"value":1106},{"type":602,"tag":634,"props":1161,"children":1162},{"style":653},[1163],{"type":608,"value":696},{"type":608,"value":698},{"type":602,"tag":634,"props":1166,"children":1167},{"class":636,"style":637},[1168,1172,1176,1180,1184,1188,1192,1196,1200],{"type":602,"tag":634,"props":1169,"children":1170},{"style":659},[1171],{"type":608,"value":706},{"type":602,"tag":634,"props":1173,"children":1174},{"style":670},[1175],{"type":608,"value":711},{"type":602,"tag":634,"props":1177,"children":1178},{"style":653},[1179],{"type":608,"value":716},{"type":602,"tag":634,"props":1181,"children":1182},{"style":670},[1183],{"type":608,"value":721},{"type":602,"tag":634,"props":1185,"children":1186},{"style":653},[1187],{"type":608,"value":726},{"type":602,"tag":634,"props":1189,"children":1190},{"style":670},[1191],{"type":608,"value":731},{"type":602,"tag":634,"props":1193,"children":1194},{"style":653},[1195],{"type":608,"value":736},{"type":602,"tag":634,"props":1197,"children":1198},{"style":641},[1199],{"type":608,"value":741},{"type":602,"tag":634,"props":1201,"children":1202},{"style":653},[1203],{"type":608,"value":746},{"type":608,"value":698},{"type":602,"tag":634,"props":1206,"children":1207},{"class":636,"style":637},[1208,1212,1216,1220,1224,1228,1232,1236,1240,1244,1248,1252,1256],{"type":602,"tag":634,"props":1209,"children":1210},{"style":641},[1211],{"type":608,"value":755},{"type":602,"tag":634,"props":1213,"children":1214},{"style":647},[1215],{"type":608,"value":760},{"type":602,"tag":634,"props":1217,"children":1218},{"style":653},[1219],{"type":608,"value":656},{"type":602,"tag":634,"props":1221,"children":1222},{"style":670},[1223],{"type":608,"value":721},{"type":602,"tag":634,"props":1225,"children":1226},{"style":653},[1227],{"type":608,"value":678},{"type":602,"tag":634,"props":1229,"children":1230},{"style":659},[1231],{"type":608,"value":777},{"type":602,"tag":634,"props":1233,"children":1234},{"style":653},[1235],{"type":608,"value":667},{"type":602,"tag":634,"props":1237,"children":1238},{"style":670},[1239],{"type":608,"value":673},{"type":602,"tag":634,"props":1241,"children":1242},{"style":653},[1243],{"type":608,"value":678},{"type":602,"tag":634,"props":1245,"children":1246},{"style":670},[1247],{"type":608,"value":683},{"type":602,"tag":634,"props":1249,"children":1250},{"style":653},[1251],{"type":608,"value":678},{"type":602,"tag":634,"props":1253,"children":1254},{"style":670},[1255],{"type":608,"value":802},{"type":602,"tag":634,"props":1257,"children":1258},{"style":653},[1259],{"type":608,"value":807},{"type":608,"value":698},{"type":602,"tag":634,"props":1262,"children":1263},{"class":636,"style":637},[1264,1268,1272,1276,1280,1284,1288,1292],{"type":602,"tag":634,"props":1265,"children":1266},{"style":814},[1267],{"type":608,"value":817},{"type":602,"tag":634,"props":1269,"children":1270},{"style":653},[1271],{"type":608,"value":716},{"type":602,"tag":634,"props":1273,"children":1274},{"style":670},[1275],{"type":608,"value":683},{"type":602,"tag":634,"props":1277,"children":1278},{"style":653},[1279],{"type":608,"value":830},{"type":602,"tag":634,"props":1281,"children":1282},{"style":641},[1283],{"type":608,"value":835},{"type":602,"tag":634,"props":1285,"children":1286},{"style":653},[1287],{"type":608,"value":736},{"type":602,"tag":634,"props":1289,"children":1290},{"style":814},[1291],{"type":608,"value":844},{"type":602,"tag":634,"props":1293,"children":1294},{"style":641},[1295],{"type":608,"value":849},{"type":608,"value":698},{"type":602,"tag":634,"props":1298,"children":1299},{"class":636,"style":637},[],{"type":608,"value":698},{"type":602,"tag":634,"props":1302,"children":1303},{"class":636,"style":637},[1304,1308,1312,1316],{"type":602,"tag":634,"props":1305,"children":1306},{"style":670},[1307],{"type":608,"value":862},{"type":602,"tag":634,"props":1309,"children":1310},{"style":653},[1311],{"type":608,"value":678},{"type":602,"tag":634,"props":1313,"children":1314},{"style":659},[1315],{"type":608,"value":871},{"type":602,"tag":634,"props":1317,"children":1318},{"style":653},[1319],{"type":608,"value":667},{"type":608,"value":698},{"type":602,"tag":634,"props":1322,"children":1323},{"class":636,"style":637},[1324,1329,1333,1337,1341,1345],{"type":602,"tag":634,"props":1325,"children":1326},{"style":670},[1327],{"type":608,"value":1328},"      api",{"type":602,"tag":634,"props":1330,"children":1331},{"style":653},[1332],{"type":608,"value":678},{"type":602,"tag":634,"props":1334,"children":1335},{"style":670},[1336],{"type":608,"value":683},{"type":602,"tag":634,"props":1338,"children":1339},{"style":653},[1340],{"type":608,"value":678},{"type":602,"tag":634,"props":1342,"children":1343},{"style":670},[1344],{"type":608,"value":802},{"type":602,"tag":634,"props":1346,"children":1347},{"style":653},[1348],{"type":608,"value":1019},{"type":608,"value":698},{"type":602,"tag":634,"props":1351,"children":1352},{"class":636,"style":637},[1353],{"type":602,"tag":634,"props":1354,"children":1355},{"style":653},[1356],{"type":608,"value":1357},"      {},",{"type":608,"value":698},{"type":602,"tag":634,"props":1360,"children":1361},{"class":636,"style":637},[1362,1367,1371,1376,1381,1386,1390],{"type":602,"tag":634,"props":1363,"children":1364},{"style":670},[1365],{"type":608,"value":1366},"      todos",{"type":602,"tag":634,"props":1368,"children":1369},{"style":653},[1370],{"type":608,"value":678},{"type":602,"tag":634,"props":1372,"children":1373},{"style":659},[1374],{"type":608,"value":1375},"map",{"type":602,"tag":634,"props":1377,"children":1378},{"style":653},[1379],{"type":608,"value":1380},"((",{"type":602,"tag":634,"props":1382,"children":1383},{"style":670},[1384],{"type":608,"value":1385},"todo",{"type":602,"tag":634,"props":1387,"children":1388},{"style":653},[1389],{"type":608,"value":736},{"type":602,"tag":634,"props":1391,"children":1392},{"style":641},[1393],{"type":608,"value":741},{"type":608,"value":698},{"type":602,"tag":634,"props":1396,"children":1397},{"class":636,"style":637},[1398,1403,1407,1412,1416,1420,1424,1429,1434,1438,1442,1447,1452,1456,1460,1465,1470,1474],{"type":602,"tag":634,"props":1399,"children":1400},{"style":670},[1401],{"type":608,"value":1402},"        todo",{"type":602,"tag":634,"props":1404,"children":1405},{"style":653},[1406],{"type":608,"value":678},{"type":602,"tag":634,"props":1408,"children":1409},{"style":670},[1410],{"type":608,"value":1411},"_id",{"type":602,"tag":634,"props":1413,"children":1414},{"style":653},[1415],{"type":608,"value":830},{"type":602,"tag":634,"props":1417,"children":1418},{"style":670},[1419],{"type":608,"value":731},{"type":602,"tag":634,"props":1421,"children":1422},{"style":653},[1423],{"type":608,"value":678},{"type":602,"tag":634,"props":1425,"children":1426},{"style":670},[1427],{"type":608,"value":1428},"todoId",{"type":602,"tag":634,"props":1430,"children":1431},{"style":653},[1432],{"type":608,"value":1433}," ? { ...",{"type":602,"tag":634,"props":1435,"children":1436},{"style":670},[1437],{"type":608,"value":1385},{"type":602,"tag":634,"props":1439,"children":1440},{"style":653},[1441],{"type":608,"value":726},{"type":602,"tag":634,"props":1443,"children":1444},{"style":670},[1445],{"type":608,"value":1446},"completed:",{"type":602,"tag":634,"props":1448,"children":1449},{"style":653},[1450],{"type":608,"value":1451}," !",{"type":602,"tag":634,"props":1453,"children":1454},{"style":670},[1455],{"type":608,"value":1385},{"type":602,"tag":634,"props":1457,"children":1458},{"style":653},[1459],{"type":608,"value":678},{"type":602,"tag":634,"props":1461,"children":1462},{"style":670},[1463],{"type":608,"value":1464},"completed",{"type":602,"tag":634,"props":1466,"children":1467},{"style":653},[1468],{"type":608,"value":1469}," } : ",{"type":602,"tag":634,"props":1471,"children":1472},{"style":670},[1473],{"type":608,"value":1385},{"type":602,"tag":634,"props":1475,"children":1476},{"style":653},[1477],{"type":608,"value":1019},{"type":608,"value":698},{"type":602,"tag":634,"props":1480,"children":1481},{"class":636,"style":637},[1482],{"type":602,"tag":634,"props":1483,"children":1484},{"style":653},[1485],{"type":608,"value":1486},"      ),",{"type":608,"value":698},{"type":602,"tag":634,"props":1489,"children":1490},{"class":636,"style":637},[1491],{"type":602,"tag":634,"props":1492,"children":1493},{"style":653},[1494],{"type":608,"value":1495},"    )",{"type":608,"value":698},{"type":602,"tag":634,"props":1498,"children":1499},{"class":636,"style":637},[1500,1504],{"type":602,"tag":634,"props":1501,"children":1502},{"style":814},[1503],{"type":608,"value":1081},{"type":602,"tag":634,"props":1505,"children":1506},{"style":641},[1507],{"type":608,"value":849},{"type":608,"value":698},{"type":602,"tag":634,"props":1510,"children":1511},{"class":636,"style":637},[1512],{"type":602,"tag":634,"props":1513,"children":1514},{"style":653},[1515],{"type":608,"value":1094},{"type":608,"value":698},{"type":602,"tag":634,"props":1518,"children":1519},{"class":636,"style":637},[1520],{"type":602,"tag":634,"props":1521,"children":1522},{"style":653},[1523],{"type":608,"value":1103},{"type":602,"tag":603,"props":1525,"children":1527},{"id":1526},"remove",[1528],{"type":608,"value":1529},"Remove",{"type":602,"tag":623,"props":1531,"children":1532},{"language":625,"class":626},[1533],{"type":602,"tag":629,"props":1534,"children":1535},{"class":631},[1536,1584,1585,1624,1625,1680,1681,1716,1717,1720,1721,1740,1741,1768,1769,1776,1777,1844,1845,1852,1853,1864,1865,1872,1873],{"type":602,"tag":634,"props":1537,"children":1538},{"class":636,"style":637},[1539,1543,1548,1552,1556,1560,1564,1568,1572,1576,1580],{"type":602,"tag":634,"props":1540,"children":1541},{"style":641},[1542],{"type":608,"value":644},{"type":602,"tag":634,"props":1544,"children":1545},{"style":647},[1546],{"type":608,"value":1547}," removeTodo",{"type":602,"tag":634,"props":1549,"children":1550},{"style":653},[1551],{"type":608,"value":656},{"type":602,"tag":634,"props":1553,"children":1554},{"style":659},[1555],{"type":608,"value":662},{"type":602,"tag":634,"props":1557,"children":1558},{"style":653},[1559],{"type":608,"value":667},{"type":602,"tag":634,"props":1561,"children":1562},{"style":670},[1563],{"type":608,"value":673},{"type":602,"tag":634,"props":1565,"children":1566},{"style":653},[1567],{"type":608,"value":678},{"type":602,"tag":634,"props":1569,"children":1570},{"style":670},[1571],{"type":608,"value":683},{"type":602,"tag":634,"props":1573,"children":1574},{"style":653},[1575],{"type":608,"value":678},{"type":602,"tag":634,"props":1577,"children":1578},{"style":670},[1579],{"type":608,"value":1526},{"type":602,"tag":634,"props":1581,"children":1582},{"style":653},[1583],{"type":608,"value":696},{"type":608,"value":698},{"type":602,"tag":634,"props":1586,"children":1587},{"class":636,"style":637},[1588,1592,1596,1600,1604,1608,1612,1616,1620],{"type":602,"tag":634,"props":1589,"children":1590},{"style":659},[1591],{"type":608,"value":706},{"type":602,"tag":634,"props":1593,"children":1594},{"style":670},[1595],{"type":608,"value":711},{"type":602,"tag":634,"props":1597,"children":1598},{"style":653},[1599],{"type":608,"value":716},{"type":602,"tag":634,"props":1601,"children":1602},{"style":670},[1603],{"type":608,"value":721},{"type":602,"tag":634,"props":1605,"children":1606},{"style":653},[1607],{"type":608,"value":726},{"type":602,"tag":634,"props":1609,"children":1610},{"style":670},[1611],{"type":608,"value":731},{"type":602,"tag":634,"props":1613,"children":1614},{"style":653},[1615],{"type":608,"value":736},{"type":602,"tag":634,"props":1617,"children":1618},{"style":641},[1619],{"type":608,"value":741},{"type":602,"tag":634,"props":1621,"children":1622},{"style":653},[1623],{"type":608,"value":746},{"type":608,"value":698},{"type":602,"tag":634,"props":1626,"children":1627},{"class":636,"style":637},[1628,1632,1636,1640,1644,1648,1652,1656,1660,1664,1668,1672,1676],{"type":602,"tag":634,"props":1629,"children":1630},{"style":641},[1631],{"type":608,"value":755},{"type":602,"tag":634,"props":1633,"children":1634},{"style":647},[1635],{"type":608,"value":760},{"type":602,"tag":634,"props":1637,"children":1638},{"style":653},[1639],{"type":608,"value":656},{"type":602,"tag":634,"props":1641,"children":1642},{"style":670},[1643],{"type":608,"value":721},{"type":602,"tag":634,"props":1645,"children":1646},{"style":653},[1647],{"type":608,"value":678},{"type":602,"tag":634,"props":1649,"children":1650},{"style":659},[1651],{"type":608,"value":777},{"type":602,"tag":634,"props":1653,"children":1654},{"style":653},[1655],{"type":608,"value":667},{"type":602,"tag":634,"props":1657,"children":1658},{"style":670},[1659],{"type":608,"value":673},{"type":602,"tag":634,"props":1661,"children":1662},{"style":653},[1663],{"type":608,"value":678},{"type":602,"tag":634,"props":1665,"children":1666},{"style":670},[1667],{"type":608,"value":683},{"type":602,"tag":634,"props":1669,"children":1670},{"style":653},[1671],{"type":608,"value":678},{"type":602,"tag":634,"props":1673,"children":1674},{"style":670},[1675],{"type":608,"value":802},{"type":602,"tag":634,"props":1677,"children":1678},{"style":653},[1679],{"type":608,"value":807},{"type":608,"value":698},{"type":602,"tag":634,"props":1682,"children":1683},{"class":636,"style":637},[1684,1688,1692,1696,1700,1704,1708,1712],{"type":602,"tag":634,"props":1685,"children":1686},{"style":814},[1687],{"type":608,"value":817},{"type":602,"tag":634,"props":1689,"children":1690},{"style":653},[1691],{"type":608,"value":716},{"type":602,"tag":634,"props":1693,"children":1694},{"style":670},[1695],{"type":608,"value":683},{"type":602,"tag":634,"props":1697,"children":1698},{"style":653},[1699],{"type":608,"value":830},{"type":602,"tag":634,"props":1701,"children":1702},{"style":641},[1703],{"type":608,"value":835},{"type":602,"tag":634,"props":1705,"children":1706},{"style":653},[1707],{"type":608,"value":736},{"type":602,"tag":634,"props":1709,"children":1710},{"style":814},[1711],{"type":608,"value":844},{"type":602,"tag":634,"props":1713,"children":1714},{"style":641},[1715],{"type":608,"value":849},{"type":608,"value":698},{"type":602,"tag":634,"props":1718,"children":1719},{"class":636,"style":637},[],{"type":608,"value":698},{"type":602,"tag":634,"props":1722,"children":1723},{"class":636,"style":637},[1724,1728,1732,1736],{"type":602,"tag":634,"props":1725,"children":1726},{"style":670},[1727],{"type":608,"value":862},{"type":602,"tag":634,"props":1729,"children":1730},{"style":653},[1731],{"type":608,"value":678},{"type":602,"tag":634,"props":1733,"children":1734},{"style":659},[1735],{"type":608,"value":871},{"type":602,"tag":634,"props":1737,"children":1738},{"style":653},[1739],{"type":608,"value":667},{"type":608,"value":698},{"type":602,"tag":634,"props":1742,"children":1743},{"class":636,"style":637},[1744,1748,1752,1756,1760,1764],{"type":602,"tag":634,"props":1745,"children":1746},{"style":670},[1747],{"type":608,"value":1328},{"type":602,"tag":634,"props":1749,"children":1750},{"style":653},[1751],{"type":608,"value":678},{"type":602,"tag":634,"props":1753,"children":1754},{"style":670},[1755],{"type":608,"value":683},{"type":602,"tag":634,"props":1757,"children":1758},{"style":653},[1759],{"type":608,"value":678},{"type":602,"tag":634,"props":1761,"children":1762},{"style":670},[1763],{"type":608,"value":802},{"type":602,"tag":634,"props":1765,"children":1766},{"style":653},[1767],{"type":608,"value":1019},{"type":608,"value":698},{"type":602,"tag":634,"props":1770,"children":1771},{"class":636,"style":637},[1772],{"type":602,"tag":634,"props":1773,"children":1774},{"style":653},[1775],{"type":608,"value":1357},{"type":608,"value":698},{"type":602,"tag":634,"props":1778,"children":1779},{"class":636,"style":637},[1780,1784,1788,1793,1797,1801,1805,1809,1814,1818,1822,1827,1831,1835,1839],{"type":602,"tag":634,"props":1781,"children":1782},{"style":670},[1783],{"type":608,"value":1366},{"type":602,"tag":634,"props":1785,"children":1786},{"style":653},[1787],{"type":608,"value":678},{"type":602,"tag":634,"props":1789,"children":1790},{"style":659},[1791],{"type":608,"value":1792},"filter",{"type":602,"tag":634,"props":1794,"children":1795},{"style":653},[1796],{"type":608,"value":1380},{"type":602,"tag":634,"props":1798,"children":1799},{"style":670},[1800],{"type":608,"value":1385},{"type":602,"tag":634,"props":1802,"children":1803},{"style":653},[1804],{"type":608,"value":736},{"type":602,"tag":634,"props":1806,"children":1807},{"style":641},[1808],{"type":608,"value":741},{"type":602,"tag":634,"props":1810,"children":1811},{"style":670},[1812],{"type":608,"value":1813}," todo",{"type":602,"tag":634,"props":1815,"children":1816},{"style":653},[1817],{"type":608,"value":678},{"type":602,"tag":634,"props":1819,"children":1820},{"style":670},[1821],{"type":608,"value":1411},{"type":602,"tag":634,"props":1823,"children":1824},{"style":653},[1825],{"type":608,"value":1826}," !== ",{"type":602,"tag":634,"props":1828,"children":1829},{"style":670},[1830],{"type":608,"value":731},{"type":602,"tag":634,"props":1832,"children":1833},{"style":653},[1834],{"type":608,"value":678},{"type":602,"tag":634,"props":1836,"children":1837},{"style":670},[1838],{"type":608,"value":1428},{"type":602,"tag":634,"props":1840,"children":1841},{"style":653},[1842],{"type":608,"value":1843},"),",{"type":608,"value":698},{"type":602,"tag":634,"props":1846,"children":1847},{"class":636,"style":637},[1848],{"type":602,"tag":634,"props":1849,"children":1850},{"style":653},[1851],{"type":608,"value":1495},{"type":608,"value":698},{"type":602,"tag":634,"props":1854,"children":1855},{"class":636,"style":637},[1856,1860],{"type":602,"tag":634,"props":1857,"children":1858},{"style":814},[1859],{"type":608,"value":1081},{"type":602,"tag":634,"props":1861,"children":1862},{"style":641},[1863],{"type":608,"value":849},{"type":608,"value":698},{"type":602,"tag":634,"props":1866,"children":1867},{"class":636,"style":637},[1868],{"type":602,"tag":634,"props":1869,"children":1870},{"style":653},[1871],{"type":608,"value":1094},{"type":608,"value":698},{"type":602,"tag":634,"props":1874,"children":1875},{"class":636,"style":637},[1876],{"type":602,"tag":634,"props":1877,"children":1878},{"style":653},[1879],{"type":608,"value":1103},{"type":602,"tag":603,"props":1881,"children":1883},{"id":1882},"security-boundary",[1884],{"type":608,"value":1885},"Security boundary",{"type":602,"tag":611,"props":1887,"children":1888},{},[1889],{"type":608,"value":1890},"The backend loads the todo and checks ownership before toggling or deleting. The local predicate is presentation only.",{"type":602,"tag":603,"props":1892,"children":1894},{"id":1893},"verify-rollback",[1895],{"type":608,"value":1896},"Verify rollback",{"type":602,"tag":611,"props":1898,"children":1899},{},[1900],{"type":608,"value":1901},"Temporarily make each mutation reject after validation and confirm:",{"type":602,"tag":1903,"props":1904,"children":1905},"ul",{},[1906,1912,1917,1922],{"type":602,"tag":1907,"props":1908,"children":1909},"li",{},[1910],{"type":608,"value":1911},"a created temporary todo disappears;",{"type":602,"tag":1907,"props":1913,"children":1914},{},[1915],{"type":608,"value":1916},"a toggle returns to its server value;",{"type":602,"tag":1907,"props":1918,"children":1919},{},[1920],{"type":608,"value":1921},"a removed todo reappears;",{"type":602,"tag":1907,"props":1923,"children":1924},{},[1925],{"type":608,"value":1926},"the error is visible and the form remains usable.",{"type":602,"tag":611,"props":1928,"children":1929},{},[1930],{"type":608,"value":1931},"Remove the forced failures after verification.",{"title":1933,"searchDepth":1934,"depth":1934,"links":1935},"",4,[1936,1938,1939,1940,1941,1942],{"id":605,"depth":1937,"text":609},2,{"id":618,"depth":1937,"text":621},{"id":1106,"depth":1937,"text":1109},{"id":1526,"depth":1937,"text":1529},{"id":1882,"depth":1937,"text":1885},{"id":1893,"depth":1937,"text":1896},"markdown","docs",{"source":1946,"path":1947,"stem":1948,"dir":1949,"extension":1950},"content","docs\u002F5.recipes\u002F3.optimistic-todo-list.md","docs\u002F5.recipes\u002F3.optimistic-todo-list","recipes","md",{"requestedPath":475,"resolvedPath":475,"alternates":1952},[],{"requested":1954,"resolved":1955,"usedFallback":6},{},{"locale":8},{"previous":1957,"next":1959},{"title":463,"id":464,"canonicalKey":465,"locale":8,"draft":6,"navigation":1958,"icon":467,"path":468},{"icon":467},{"title":477,"id":478,"canonicalKey":479,"locale":8,"draft":6,"navigation":1960,"icon":481,"path":482},{"icon":481},{"left":1962,"top":1962,"width":1963,"height":1963,"rotate":1962,"vFlip":6,"hFlip":6,"body":1964},0,256,"\u003Cpath fill=\"#3178c6\" d=\"M20 0h216c11.046 0 20 8.954 20 20v216c0 11.046-8.954 20-20 20H20c-11.046 0-20-8.954-20-20V20C0 8.954 8.954 0 20 0\"\u002F>\u003Cpath fill=\"#fff\" d=\"M150.518 200.475v27.62q6.738 3.453 15.938 5.179T185.849 235q9.934 0 18.874-1.899t15.678-6.257q6.738-4.359 10.669-11.394q3.93-7.033 3.93-17.391q0-7.51-2.246-13.163a30.8 30.8 0 0 0-6.479-10.055q-4.232-4.402-10.149-7.898t-13.347-6.602q-5.442-2.245-9.761-4.359t-7.342-4.316q-3.024-2.2-4.665-4.661t-1.641-5.567q0-2.848 1.468-5.135q1.469-2.288 4.147-3.927t6.565-2.547q3.887-.906 8.638-.906q3.456 0 7.299.518q3.844.517 7.732 1.597a54 54 0 0 1 7.558 2.719a41.7 41.7 0 0 1 6.781 3.797v-25.807q-6.306-2.417-13.778-3.582T198.633 107q-9.847 0-18.658 2.115q-8.811 2.114-15.506 6.602q-6.694 4.49-10.582 11.437Q150 134.102 150 143.769q0 12.342 7.127 21.06t21.638 14.759a292 292 0 0 1 10.625 4.575q4.924 2.244 8.509 4.66t5.658 5.265t2.073 6.474a9.9 9.9 0 0 1-1.296 4.963q-1.295 2.287-3.93 3.97t-6.565 2.632t-9.2.95q-8.983 0-17.794-3.151t-16.327-9.451m-46.036-68.733H140V109H41v22.742h35.345V233h28.137z\"\u002F>",{"left":1962,"top":1962,"width":1966,"height":1966,"rotate":1962,"vFlip":6,"hFlip":6,"body":1967},24,"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Crect width=\"8\" height=\"4\" x=\"8\" y=\"2\" rx=\"1\" ry=\"1\"\u002F>\u003Cpath d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"\u002F>\u003C\u002Fg>",1786627527517]