[{"data":1,"prerenderedAt":2513},["ShallowReactive",2],{"docs-navigation:en":3,"content-page:docs:o5z-e-vvqMRXBH1d8ycPG9nPNW71sT5GSNqicN-Kcck":576,"content-page-surround:docs:o5z-e-vvqMRXBH1d8ycPG9nPNW71sT5GSNqicN-Kcck":2495,"i-logos:typescript-icon":2500,"i-logos:nuxt-icon":2504,"i-logos:vue":2507,"i-lucide:clipboard":2510},[4,52,119,179,425,482,533],{"title":5,"page":6,"canonicalKey":7,"locale":8,"children":9},"Overview",false,"docs\u002F1","en",[10,17,24,31,38,45],{"title":11,"id":12,"canonicalKey":13,"locale":8,"draft":6,"navigation":14,"icon":15,"path":16},"Better Convex Nuxt","content:docs:1.overview:1.introduction.md","docs\u002F1\u002F1",{"icon":15},"i-lucide-orbit","\u002Fdocs\u002Foverview\u002Fintroduction",{"title":18,"id":19,"canonicalKey":20,"locale":8,"draft":6,"navigation":21,"icon":22,"path":23},"Why Better Convex Nuxt","content:docs:1.overview:2.why-better-convex-nuxt.md","docs\u002F1\u002F2",{"icon":22},"i-lucide-badge-check","\u002Fdocs\u002Foverview\u002Fwhy-better-convex-nuxt",{"title":25,"id":26,"canonicalKey":27,"locale":8,"draft":6,"navigation":28,"icon":29,"path":30},"Who It Is For","content:docs:1.overview:3.who-it-is-for.md","docs\u002F1\u002F3",{"icon":29},"i-lucide-users","\u002Fdocs\u002Foverview\u002Fwho-it-is-for",{"title":32,"id":33,"canonicalKey":34,"locale":8,"draft":6,"navigation":35,"icon":36,"path":37},"Use Cases","content:docs:1.overview:4.use-cases.md","docs\u002F1\u002F4",{"icon":36},"i-lucide-layout-dashboard","\u002Fdocs\u002Foverview\u002Fuse-cases",{"title":39,"id":40,"canonicalKey":41,"locale":8,"draft":6,"navigation":42,"icon":43,"path":44},"Compare Nuxt Integrations","content:docs:1.overview:5.comparison.md","docs\u002F1\u002F5",{"icon":43},"i-lucide-scale","\u002Fdocs\u002Foverview\u002Fcomparison",{"title":46,"id":47,"canonicalKey":48,"locale":8,"draft":6,"navigation":49,"icon":50,"path":51},"Limitations and Trade-offs","content:docs:1.overview:6.limitations.md","docs\u002F1\u002F6",{"icon":50},"i-lucide-triangle-alert","\u002Fdocs\u002Foverview\u002Flimitations",{"title":53,"page":6,"canonicalKey":54,"locale":8,"children":55},"Understand","docs\u002F2",[56,63,70,77,84,91,98,105,112],{"title":57,"id":58,"canonicalKey":59,"locale":8,"draft":6,"navigation":60,"icon":61,"path":62},"Mental Model","content:docs:2.understand:1.mental-model.md","docs\u002F2\u002F1",{"icon":61},"i-lucide-brain","\u002Fdocs\u002Funderstand\u002Fmental-model",{"title":64,"id":65,"canonicalKey":66,"locale":8,"draft":6,"navigation":67,"icon":68,"path":69},"Request Lifecycle","content:docs:2.understand:2.request-lifecycle.md","docs\u002F2\u002F2",{"icon":68},"i-lucide-route","\u002Fdocs\u002Funderstand\u002Frequest-lifecycle",{"title":71,"id":72,"canonicalKey":73,"locale":8,"draft":6,"navigation":74,"icon":75,"path":76},"SSR, Hydration, and Real-Time","content:docs:2.understand:3.ssr-hydration-realtime.md","docs\u002F2\u002F3",{"icon":75},"i-lucide-refresh-cw","\u002Fdocs\u002Funderstand\u002Fssr-hydration-realtime",{"title":78,"id":79,"canonicalKey":80,"locale":8,"draft":6,"navigation":81,"icon":82,"path":83},"Query Ownership and Caching","content:docs:2.understand:4.query-ownership-and-caching.md","docs\u002F2\u002F4",{"icon":82},"i-lucide-database","\u002Fdocs\u002Funderstand\u002Fquery-ownership-and-caching",{"title":85,"id":86,"canonicalKey":87,"locale":8,"draft":6,"navigation":88,"icon":89,"path":90},"Authentication and Identity","content:docs:2.understand:5.authentication-and-identity.md","docs\u002F2\u002F5",{"icon":89},"i-lucide-fingerprint","\u002Fdocs\u002Funderstand\u002Fauthentication-and-identity",{"title":92,"id":93,"canonicalKey":94,"locale":8,"draft":6,"navigation":95,"icon":96,"path":97},"Server and Client Boundaries","content:docs:2.understand:6.server-and-client-boundaries.md","docs\u002F2\u002F6",{"icon":96},"i-lucide-panels-top-left","\u002Fdocs\u002Funderstand\u002Fserver-and-client-boundaries",{"title":99,"id":100,"canonicalKey":101,"locale":8,"draft":6,"navigation":102,"icon":103,"path":104},"Errors and Failures","content:docs:2.understand:7.errors-and-failures.md","docs\u002F2\u002F7",{"icon":103},"i-lucide-circle-x","\u002Fdocs\u002Funderstand\u002Ferrors-and-failures",{"title":106,"id":107,"canonicalKey":108,"locale":8,"draft":6,"navigation":109,"icon":110,"path":111},"Design Decisions","content:docs:2.understand:8.design-decisions.md","docs\u002F2\u002F8",{"icon":110},"i-lucide-git-branch","\u002Fdocs\u002Funderstand\u002Fdesign-decisions",{"title":113,"id":114,"canonicalKey":115,"locale":8,"draft":6,"navigation":116,"icon":117,"path":118},"Glossary","content:docs:2.understand:9.glossary.md","docs\u002F2\u002F9",{"icon":117},"i-lucide-book-a","\u002Fdocs\u002Funderstand\u002Fglossary",{"title":120,"page":6,"canonicalKey":121,"locale":8,"children":122},"Get Started","docs\u002F3",[123,130,137,144,151,158,165,172],{"title":124,"id":125,"canonicalKey":126,"locale":8,"draft":6,"navigation":127,"icon":128,"path":129},"Choose Your Path","content:docs:3.get-started:1.choose-your-path.md","docs\u002F3\u002F1",{"icon":128},"i-lucide-signpost","\u002Fdocs\u002Fget-started\u002Fchoose-your-path",{"title":131,"id":132,"canonicalKey":133,"locale":8,"draft":6,"navigation":134,"icon":135,"path":136},"Installation","content:docs:3.get-started:2.installation.md","docs\u002F3\u002F2",{"icon":135},"i-lucide-download","\u002Fdocs\u002Fget-started\u002Finstallation",{"title":138,"id":139,"canonicalKey":140,"locale":8,"draft":6,"navigation":141,"icon":142,"path":143},"First Real-Time Page","content:docs:3.get-started:3.first-realtime-page.md","docs\u002F3\u002F3",{"icon":142},"i-lucide-radio","\u002Fdocs\u002Fget-started\u002Ffirst-realtime-page",{"title":145,"id":146,"canonicalKey":147,"locale":8,"draft":6,"navigation":148,"icon":149,"path":150},"Add a Mutation","content:docs:3.get-started:4.add-a-mutation.md","docs\u002F3\u002F4",{"icon":149},"i-lucide-square-pen","\u002Fdocs\u002Fget-started\u002Fadd-a-mutation",{"title":152,"id":153,"canonicalKey":154,"locale":8,"draft":6,"navigation":155,"icon":156,"path":157},"Add Authentication","content:docs:3.get-started:5.add-authentication.md","docs\u002F3\u002F5",{"icon":156},"i-lucide-log-in","\u002Fdocs\u002Fget-started\u002Fadd-authentication",{"title":159,"id":160,"canonicalKey":161,"locale":8,"draft":6,"navigation":162,"icon":163,"path":164},"Protect Data","content:docs:3.get-started:6.protect-data.md","docs\u002F3\u002F6",{"icon":163},"i-lucide-shield-check","\u002Fdocs\u002Fget-started\u002Fprotect-data",{"title":166,"id":167,"canonicalKey":168,"locale":8,"draft":6,"navigation":169,"icon":170,"path":171},"Project Structure","content:docs:3.get-started:7.project-structure.md","docs\u002F3\u002F7",{"icon":170},"i-lucide-folder-tree","\u002Fdocs\u002Fget-started\u002Fproject-structure",{"title":173,"id":174,"canonicalKey":175,"locale":8,"draft":6,"navigation":176,"icon":177,"path":178},"Next Steps","content:docs:3.get-started:8.next-steps.md","docs\u002F3\u002F8",{"icon":177},"i-lucide-arrow-right","\u002Fdocs\u002Fget-started\u002Fnext-steps",{"title":180,"page":6,"canonicalKey":181,"locale":8,"children":182},"Build","docs\u002F4",[183,227,258,322,354,386],{"title":184,"page":6,"canonicalKey":185,"locale":8,"children":186},"Queries","docs\u002F4\u002F1",[187,192,199,206,213,220],{"title":184,"id":188,"canonicalKey":189,"locale":8,"draft":6,"navigation":190,"icon":82,"path":191},"content:docs:4.build:1.queries:1.queries.md","docs\u002F4\u002F1\u002F1",{"icon":82},"\u002Fdocs\u002Fbuild\u002Fqueries\u002Fqueries",{"title":193,"id":194,"canonicalKey":195,"locale":8,"draft":6,"navigation":196,"icon":197,"path":198},"Reactive Arguments","content:docs:4.build:1.queries:2.reactive-arguments.md","docs\u002F4\u002F1\u002F2",{"icon":197},"i-lucide-sliders-horizontal","\u002Fdocs\u002Fbuild\u002Fqueries\u002Freactive-arguments",{"title":200,"id":201,"canonicalKey":202,"locale":8,"draft":6,"navigation":203,"icon":204,"path":205},"Loading and Stale Data","content:docs:4.build:1.queries:3.loading-and-stale-data.md","docs\u002F4\u002F1\u002F3",{"icon":204},"i-lucide-loader-circle","\u002Fdocs\u002Fbuild\u002Fqueries\u002Floading-and-stale-data",{"title":207,"id":208,"canonicalKey":209,"locale":8,"draft":6,"navigation":210,"icon":211,"path":212},"Query Execution Options","content:docs:4.build:1.queries:4.ssr-options.md","docs\u002F4\u002F1\u002F4",{"icon":211},"i-lucide-server-cog","\u002Fdocs\u002Fbuild\u002Fqueries\u002Fssr-options",{"title":214,"id":215,"canonicalKey":216,"locale":8,"draft":6,"navigation":217,"icon":218,"path":219},"Share Query State","content:docs:4.build:1.queries:5.sharing-query-state.md","docs\u002F4\u002F1\u002F5",{"icon":218},"i-lucide-share-2","\u002Fdocs\u002Fbuild\u002Fqueries\u002Fsharing-query-state",{"title":221,"id":222,"canonicalKey":223,"locale":8,"draft":6,"navigation":224,"icon":225,"path":226},"Pagination","content:docs:4.build:1.queries:6.pagination.md","docs\u002F4\u002F1\u002F6",{"icon":225},"i-lucide-list-plus","\u002Fdocs\u002Fbuild\u002Fqueries\u002Fpagination",{"title":228,"page":6,"canonicalKey":229,"locale":8,"children":230},"Write Data","docs\u002F4\u002F2",[231,237,244,251],{"title":232,"id":233,"canonicalKey":234,"locale":8,"draft":6,"navigation":235,"icon":149,"path":236},"Mutations","content:docs:4.build:2.write-data:1.mutations.md","docs\u002F4\u002F2\u002F1",{"icon":149},"\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Fmutations",{"title":238,"id":239,"canonicalKey":240,"locale":8,"draft":6,"navigation":241,"icon":242,"path":243},"Actions","content:docs:4.build:2.write-data:2.actions.md","docs\u002F4\u002F2\u002F2",{"icon":242},"i-lucide-zap","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Factions",{"title":245,"id":246,"canonicalKey":247,"locale":8,"draft":6,"navigation":248,"icon":249,"path":250},"Optimistic Updates","content:docs:4.build:2.write-data:3.optimistic-updates.md","docs\u002F4\u002F2\u002F3",{"icon":249},"i-lucide-gauge","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Foptimistic-updates",{"title":252,"id":253,"canonicalKey":254,"locale":8,"draft":6,"navigation":255,"icon":256,"path":257},"Concurrent Operations","content:docs:4.build:2.write-data:4.concurrent-operations.md","docs\u002F4\u002F2\u002F4",{"icon":256},"i-lucide-git-fork","\u002Fdocs\u002Fbuild\u002Fwrite-data\u002Fconcurrent-operations",{"title":259,"page":6,"canonicalKey":260,"locale":8,"children":261},"Authentication","docs\u002F4\u002F3",[262,268,275,282,288,294,301,308,315],{"title":259,"id":263,"canonicalKey":264,"locale":8,"draft":6,"navigation":265,"icon":266,"path":267},"content:docs:4.build:3.authentication:1.overview.md","docs\u002F4\u002F3\u002F1",{"icon":266},"i-lucide-shield","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Foverview",{"title":269,"id":270,"canonicalKey":271,"locale":8,"draft":6,"navigation":272,"icon":273,"path":274},"Better Auth Setup","content:docs:4.build:3.authentication:2.better-auth-setup.md","docs\u002F4\u002F3\u002F2",{"icon":273},"i-lucide-settings-2","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbetter-auth-setup",{"title":276,"id":277,"canonicalKey":278,"locale":8,"draft":6,"navigation":279,"icon":280,"path":281},"Auth State and User Data","content:docs:4.build:3.authentication:3.auth-state-and-user.md","docs\u002F4\u002F3\u002F3",{"icon":280},"i-lucide-user-round","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fauth-state-and-user",{"title":283,"id":284,"canonicalKey":285,"locale":8,"draft":6,"navigation":286,"icon":156,"path":287},"Sign In and Sign Out","content:docs:4.build:3.authentication:4.sign-in-and-sign-out.md","docs\u002F4\u002F3\u002F4",{"icon":156},"\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fsign-in-and-sign-out",{"title":289,"id":290,"canonicalKey":291,"locale":8,"draft":6,"navigation":292,"icon":68,"path":293},"Route Protection","content:docs:4.build:3.authentication:5.route-protection.md","docs\u002F4\u002F3\u002F5",{"icon":68},"\u002Fdocs\u002Fbuild\u002Fauthentication\u002Froute-protection",{"title":295,"id":296,"canonicalKey":297,"locale":8,"draft":6,"navigation":298,"icon":299,"path":300},"Backend Authorization","content:docs:4.build:3.authentication:6.backend-authorization.md","docs\u002F4\u002F3\u002F6",{"icon":299},"i-lucide-lock-keyhole","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbackend-authorization",{"title":302,"id":303,"canonicalKey":304,"locale":8,"draft":6,"navigation":305,"icon":306,"path":307},"Better Auth Plugins","content:docs:4.build:3.authentication:7.better-auth-plugins.md","docs\u002F4\u002F3\u002F7",{"icon":306},"i-lucide-plug","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fbetter-auth-plugins",{"title":309,"id":310,"canonicalKey":311,"locale":8,"draft":6,"navigation":312,"icon":313,"path":314},"Custom User Fields","content:docs:4.build:3.authentication:8.custom-user-fields.md","docs\u002F4\u002F3\u002F8",{"icon":313},"i-lucide-user-cog","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fcustom-user-fields",{"title":316,"id":317,"canonicalKey":318,"locale":8,"draft":6,"navigation":319,"icon":320,"path":321},"User Synchronization","content:docs:4.build:3.authentication:9.user-synchronization.md","docs\u002F4\u002F3\u002F9",{"icon":320},"i-lucide-refresh-ccw","\u002Fdocs\u002Fbuild\u002Fauthentication\u002Fuser-synchronization",{"title":323,"page":6,"canonicalKey":324,"locale":8,"children":325},"Server","docs\u002F4\u002F4",[326,333,340,347],{"title":327,"id":328,"canonicalKey":329,"locale":8,"draft":6,"navigation":330,"icon":331,"path":332},"serverConvex","content:docs:4.build:4.server:1.server-convex.md","docs\u002F4\u002F4\u002F1",{"icon":331},"i-lucide-server","\u002Fdocs\u002Fbuild\u002Fserver\u002Fserver-convex",{"title":334,"id":335,"canonicalKey":336,"locale":8,"draft":6,"navigation":337,"icon":338,"path":339},"Server Routes","content:docs:4.build:4.server:2.server-routes.md","docs\u002F4\u002F4\u002F2",{"icon":338},"i-lucide-waypoints","\u002Fdocs\u002Fbuild\u002Fserver\u002Fserver-routes",{"title":341,"id":342,"canonicalKey":343,"locale":8,"draft":6,"navigation":344,"icon":345,"path":346},"Webhooks and Jobs","content:docs:4.build:4.server:3.webhooks-and-jobs.md","docs\u002F4\u002F4\u002F3",{"icon":345},"i-lucide-webhook","\u002Fdocs\u002Fbuild\u002Fserver\u002Fwebhooks-and-jobs",{"title":348,"id":349,"canonicalKey":350,"locale":8,"draft":6,"navigation":351,"icon":352,"path":353},"Credentials and Server Security","content:docs:4.build:4.server:4.credentials-and-security.md","docs\u002F4\u002F4\u002F4",{"icon":352},"i-lucide-key-round","\u002Fdocs\u002Fbuild\u002Fserver\u002Fcredentials-and-security",{"title":355,"page":6,"canonicalKey":356,"locale":8,"children":357},"Files","docs\u002F4\u002F5",[358,365,372,379],{"title":359,"id":360,"canonicalKey":361,"locale":8,"draft":6,"navigation":362,"icon":363,"path":364},"Upload Files","content:docs:4.build:5.files:1.upload-files.md","docs\u002F4\u002F5\u002F1",{"icon":363},"i-lucide-upload","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fupload-files",{"title":366,"id":367,"canonicalKey":368,"locale":8,"draft":6,"navigation":369,"icon":370,"path":371},"Upload Queues","content:docs:4.build:5.files:2.upload-queues.md","docs\u002F4\u002F5\u002F2",{"icon":370},"i-lucide-list-checks","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fupload-queues",{"title":373,"id":374,"canonicalKey":375,"locale":8,"draft":6,"navigation":376,"icon":377,"path":378},"Storage URLs","content:docs:4.build:5.files:3.storage-urls.md","docs\u002F4\u002F5\u002F3",{"icon":377},"i-lucide-link","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fstorage-urls",{"title":380,"id":381,"canonicalKey":382,"locale":8,"draft":6,"navigation":383,"icon":384,"path":385},"File Validation and Deletion","content:docs:4.build:5.files:4.validation-and-deletion.md","docs\u002F4\u002F5\u002F4",{"icon":384},"i-lucide-file-x","\u002Fdocs\u002Fbuild\u002Ffiles\u002Fvalidation-and-deletion",{"title":387,"page":6,"canonicalKey":388,"locale":8,"children":389},"Application Behavior","docs\u002F4\u002F6",[390,397,404,411,418],{"title":391,"id":392,"canonicalKey":393,"locale":8,"draft":6,"navigation":394,"icon":395,"path":396},"Connection State","content:docs:4.build:6.application-behavior:1.connection-state.md","docs\u002F4\u002F6\u002F1",{"icon":395},"i-lucide-wifi","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fconnection-state",{"title":398,"id":399,"canonicalKey":400,"locale":8,"draft":6,"navigation":401,"icon":402,"path":403},"Error Handling","content:docs:4.build:6.application-behavior:2.error-handling.md","docs\u002F4\u002F6\u002F2",{"icon":402},"i-lucide-circle-alert","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Ferror-handling",{"title":405,"id":406,"canonicalKey":407,"locale":8,"draft":6,"navigation":408,"icon":409,"path":410},"Logging","content:docs:4.build:6.application-behavior:3.logging.md","docs\u002F4\u002F6\u002F3",{"icon":409},"i-lucide-scroll-text","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Flogging",{"title":412,"id":413,"canonicalKey":414,"locale":8,"draft":6,"navigation":415,"icon":416,"path":417},"DevTools","content:docs:4.build:6.application-behavior:4.devtools.md","docs\u002F4\u002F6\u002F4",{"icon":416},"i-lucide-wrench","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fdevtools",{"title":419,"id":420,"canonicalKey":421,"locale":8,"draft":6,"navigation":422,"icon":423,"path":424},"Performance","content:docs:4.build:6.application-behavior:5.performance.md","docs\u002F4\u002F6\u002F5",{"icon":423},"i-lucide-chart-no-axes-combined","\u002Fdocs\u002Fbuild\u002Fapplication-behavior\u002Fperformance",{"title":426,"page":6,"canonicalKey":427,"locale":8,"children":428},"Recipes","docs\u002F5",[429,435,442,449,456,463,470,476],{"title":430,"id":431,"canonicalKey":432,"locale":8,"draft":6,"navigation":433,"icon":36,"path":434},"Protected Dashboard","content:docs:5.recipes:1.protected-dashboard.md","docs\u002F5\u002F1",{"icon":36},"\u002Fdocs\u002Frecipes\u002Fprotected-dashboard",{"title":436,"id":437,"canonicalKey":438,"locale":8,"draft":6,"navigation":439,"icon":440,"path":441},"Real-Time Feed","content:docs:5.recipes:2.realtime-feed.md","docs\u002F5\u002F2",{"icon":440},"i-lucide-messages-square","\u002Fdocs\u002Frecipes\u002Frealtime-feed",{"title":443,"id":444,"canonicalKey":445,"locale":8,"draft":6,"navigation":446,"icon":447,"path":448},"Optimistic Todo List","content:docs:5.recipes:3.optimistic-todo-list.md","docs\u002F5\u002F3",{"icon":447},"i-lucide-list-todo","\u002Fdocs\u002Frecipes\u002Foptimistic-todo-list",{"title":450,"id":451,"canonicalKey":452,"locale":8,"draft":6,"navigation":453,"icon":454,"path":455},"Infinite Scroll","content:docs:5.recipes:4.infinite-scroll.md","docs\u002F5\u002F4",{"icon":454},"i-lucide-mouse","\u002Fdocs\u002Frecipes\u002Finfinite-scroll",{"title":457,"id":458,"canonicalKey":459,"locale":8,"draft":6,"navigation":460,"icon":461,"path":462},"File Upload Form","content:docs:5.recipes:5.file-upload-form.md","docs\u002F5\u002F5",{"icon":461},"i-lucide-file-up","\u002Fdocs\u002Frecipes\u002Ffile-upload-form",{"title":464,"id":465,"canonicalKey":466,"locale":8,"draft":6,"navigation":467,"icon":468,"path":469},"Organization Permissions","content:docs:5.recipes:6.organization-permissions.md","docs\u002F5\u002F6",{"icon":468},"i-lucide-building-2","\u002Fdocs\u002Frecipes\u002Forganization-permissions",{"title":471,"id":472,"canonicalKey":473,"locale":8,"draft":6,"navigation":474,"icon":331,"path":475},"Authenticated Server Route","content:docs:5.recipes:7.authenticated-server-route.md","docs\u002F5\u002F7",{"icon":331},"\u002Fdocs\u002Frecipes\u002Fauthenticated-server-route",{"title":477,"id":478,"canonicalKey":479,"locale":8,"draft":6,"navigation":480,"icon":96,"path":481},"Public and Private Data","content:docs:5.recipes:8.public-and-private-data.md","docs\u002F5\u002F8",{"icon":96},"\u002Fdocs\u002Frecipes\u002Fpublic-and-private-data",{"title":483,"page":6,"canonicalKey":484,"locale":8,"children":485},"Reference","docs\u002F6",[486,493,500,506,512,519,526],{"title":487,"id":488,"canonicalKey":489,"locale":8,"draft":6,"navigation":490,"icon":491,"path":492},"Composables","content:docs:6.reference:1.composables.md","docs\u002F6\u002F1",{"icon":491},"i-lucide-braces","\u002Fdocs\u002Freference\u002Fcomposables",{"title":494,"id":495,"canonicalKey":496,"locale":8,"draft":6,"navigation":497,"icon":498,"path":499},"Auth Components","content:docs:6.reference:2.auth-components.md","docs\u002F6\u002F2",{"icon":498},"i-lucide-component","\u002Fdocs\u002Freference\u002Fauth-components",{"title":501,"id":502,"canonicalKey":503,"locale":8,"draft":6,"navigation":504,"icon":331,"path":505},"Server API","content:docs:6.reference:3.server-api.md","docs\u002F6\u002F3",{"icon":331},"\u002Fdocs\u002Freference\u002Fserver-api",{"title":507,"id":508,"canonicalKey":509,"locale":8,"draft":6,"navigation":510,"icon":103,"path":511},"Error Types","content:docs:6.reference:4.error-types.md","docs\u002F6\u002F4",{"icon":103},"\u002Fdocs\u002Freference\u002Ferror-types",{"title":513,"id":514,"canonicalKey":515,"locale":8,"draft":6,"navigation":516,"icon":517,"path":518},"Module Configuration","content:docs:6.reference:5.module-configuration.md","docs\u002F6\u002F5",{"icon":517},"i-lucide-settings","\u002Fdocs\u002Freference\u002Fmodule-configuration",{"title":520,"id":521,"canonicalKey":522,"locale":8,"draft":6,"navigation":523,"icon":524,"path":525},"Package Exports","content:docs:6.reference:6.package-exports.md","docs\u002F6\u002F6",{"icon":524},"i-lucide-package-open","\u002Fdocs\u002Freference\u002Fpackage-exports",{"title":527,"id":528,"canonicalKey":529,"locale":8,"draft":6,"navigation":530,"icon":531,"path":532},"API Surface","content:docs:6.reference:7.api-surface.md","docs\u002F6\u002F7",{"icon":531},"i-lucide-list","\u002Fdocs\u002Freference\u002Fapi-surface",{"title":534,"page":6,"canonicalKey":535,"locale":8,"children":536},"Operations","docs\u002F7",[537,544,551,557,563,570],{"title":538,"id":539,"canonicalKey":540,"locale":8,"draft":6,"navigation":541,"icon":542,"path":543},"Environment Variables","content:docs:7.operations:1.environment-variables.md","docs\u002F7\u002F1",{"icon":542},"i-lucide-variable","\u002Fdocs\u002Foperations\u002Fenvironment-variables",{"title":545,"id":546,"canonicalKey":547,"locale":8,"draft":6,"navigation":548,"icon":549,"path":550},"Deployment","content:docs:7.operations:2.deployment.md","docs\u002F7\u002F2",{"icon":549},"i-lucide-rocket","\u002Fdocs\u002Foperations\u002Fdeployment",{"title":552,"id":553,"canonicalKey":554,"locale":8,"draft":6,"navigation":555,"icon":163,"path":556},"Security Model","content:docs:7.operations:3.security-model.md","docs\u002F7\u002F3",{"icon":163},"\u002Fdocs\u002Foperations\u002Fsecurity-model",{"title":558,"id":559,"canonicalKey":560,"locale":8,"draft":6,"navigation":561,"icon":416,"path":562},"Troubleshooting","content:docs:7.operations:4.troubleshooting.md","docs\u002F7\u002F4",{"icon":416},"\u002Fdocs\u002Foperations\u002Ftroubleshooting",{"title":564,"id":565,"canonicalKey":566,"locale":8,"draft":6,"navigation":567,"icon":568,"path":569},"Migration Guide","content:docs:7.operations:5.migration-guide.md","docs\u002F7\u002F5",{"icon":568},"i-lucide-git-compare-arrows","\u002Fdocs\u002Foperations\u002Fmigration-guide",{"title":571,"id":572,"canonicalKey":573,"locale":8,"draft":6,"navigation":574,"icon":22,"path":575},"Release Compatibility","content:docs:7.operations:6.release-compatibility.md","docs\u002F7\u002F6",{"icon":22},"\u002Fdocs\u002Foperations\u002Frelease-compatibility",{"title":159,"description":577,"navigation":578,"body":579,"type":2482,"id":160,"draft":6,"partial":6,"locale":8,"canonicalKey":161,"collection":2483,"navigationFile":6,"file":2484,"route":2490,"resolution":2492},"Enforce ownership in Convex and add Nuxt route protection for navigation.",{"icon":163},{"type":580,"children":581,"toc":2472},"root",[582,590,597,901,906,912,2013,2018,2024,2194,2206,2211,2217,2222,2381,2386,2418,2430,2436,2441,2467],{"type":583,"tag":584,"props":585,"children":586},"element","p",{},[587],{"type":588,"value":589},"text","Authentication does not secure a function by itself. Update the todo app so every document belongs to the authenticated Convex identity.",{"type":583,"tag":591,"props":592,"children":594},"h2",{"id":593},"add-an-owner-to-the-schema",[595],{"type":588,"value":596},"Add an owner to the schema",{"type":583,"tag":598,"props":599,"children":604},"pre",{"language":600,"filename":601,"class":602,"tabindex":603},"ts","convex\u002Fschema.ts","shiki shiki-themes light-plus dark-plus dark:dark-plus","0",[605],{"type":583,"tag":606,"props":607,"children":609},"code",{"class":608},"language-ts",[610,660,662,691,692,695,696,720,721,738,739,767,768,792,793,818,819,844,845,892,893],{"type":583,"tag":611,"props":612,"children":615},"span",{"class":613,"style":614},"line","display: inline",[616,622,628,634,639,644,649,654],{"type":583,"tag":611,"props":617,"children":619},{"style":618},"color:#AF00DB;--shiki-dark:#C586C0",[620],{"type":588,"value":621},"import",{"type":583,"tag":611,"props":623,"children":625},{"style":624},"color:#000000;--shiki-dark:#D4D4D4",[626],{"type":588,"value":627}," { ",{"type":583,"tag":611,"props":629,"children":631},{"style":630},"color:#001080;--shiki-dark:#9CDCFE",[632],{"type":588,"value":633},"defineSchema",{"type":583,"tag":611,"props":635,"children":636},{"style":624},[637],{"type":588,"value":638},", ",{"type":583,"tag":611,"props":640,"children":641},{"style":630},[642],{"type":588,"value":643},"defineTable",{"type":583,"tag":611,"props":645,"children":646},{"style":624},[647],{"type":588,"value":648}," } ",{"type":583,"tag":611,"props":650,"children":651},{"style":618},[652],{"type":588,"value":653},"from",{"type":583,"tag":611,"props":655,"children":657},{"style":656},"color:#A31515;--shiki-dark:#CE9178",[658],{"type":588,"value":659}," 'convex\u002Fserver'",{"type":588,"value":661},"\n",{"type":583,"tag":611,"props":663,"children":664},{"class":613,"style":614},[665,669,673,678,682,686],{"type":583,"tag":611,"props":666,"children":667},{"style":618},[668],{"type":588,"value":621},{"type":583,"tag":611,"props":670,"children":671},{"style":624},[672],{"type":588,"value":627},{"type":583,"tag":611,"props":674,"children":675},{"style":630},[676],{"type":588,"value":677},"v",{"type":583,"tag":611,"props":679,"children":680},{"style":624},[681],{"type":588,"value":648},{"type":583,"tag":611,"props":683,"children":684},{"style":618},[685],{"type":588,"value":653},{"type":583,"tag":611,"props":687,"children":688},{"style":656},[689],{"type":588,"value":690}," 'convex\u002Fvalues'",{"type":588,"value":661},{"type":583,"tag":611,"props":693,"children":694},{"class":613,"style":614},[],{"type":588,"value":661},{"type":583,"tag":611,"props":697,"children":698},{"class":613,"style":614},[699,704,709,715],{"type":583,"tag":611,"props":700,"children":701},{"style":618},[702],{"type":588,"value":703},"export",{"type":583,"tag":611,"props":705,"children":706},{"style":618},[707],{"type":588,"value":708}," default",{"type":583,"tag":611,"props":710,"children":712},{"style":711},"color:#795E26;--shiki-dark:#DCDCAA",[713],{"type":588,"value":714}," defineSchema",{"type":583,"tag":611,"props":716,"children":717},{"style":624},[718],{"type":588,"value":719},"({",{"type":588,"value":661},{"type":583,"tag":611,"props":722,"children":723},{"class":613,"style":614},[724,729,734],{"type":583,"tag":611,"props":725,"children":726},{"style":630},[727],{"type":588,"value":728},"  todos:",{"type":583,"tag":611,"props":730,"children":731},{"style":711},[732],{"type":588,"value":733}," defineTable",{"type":583,"tag":611,"props":735,"children":736},{"style":624},[737],{"type":588,"value":719},{"type":588,"value":661},{"type":583,"tag":611,"props":740,"children":741},{"class":613,"style":614},[742,747,752,757,762],{"type":583,"tag":611,"props":743,"children":744},{"style":630},[745],{"type":588,"value":746},"    ownerId:",{"type":583,"tag":611,"props":748,"children":749},{"style":630},[750],{"type":588,"value":751}," v",{"type":583,"tag":611,"props":753,"children":754},{"style":624},[755],{"type":588,"value":756},".",{"type":583,"tag":611,"props":758,"children":759},{"style":711},[760],{"type":588,"value":761},"string",{"type":583,"tag":611,"props":763,"children":764},{"style":624},[765],{"type":588,"value":766},"(),",{"type":588,"value":661},{"type":583,"tag":611,"props":769,"children":770},{"class":613,"style":614},[771,776,780,784,788],{"type":583,"tag":611,"props":772,"children":773},{"style":630},[774],{"type":588,"value":775},"    text:",{"type":583,"tag":611,"props":777,"children":778},{"style":630},[779],{"type":588,"value":751},{"type":583,"tag":611,"props":781,"children":782},{"style":624},[783],{"type":588,"value":756},{"type":583,"tag":611,"props":785,"children":786},{"style":711},[787],{"type":588,"value":761},{"type":583,"tag":611,"props":789,"children":790},{"style":624},[791],{"type":588,"value":766},{"type":588,"value":661},{"type":583,"tag":611,"props":794,"children":795},{"class":613,"style":614},[796,801,805,809,814],{"type":583,"tag":611,"props":797,"children":798},{"style":630},[799],{"type":588,"value":800},"    completed:",{"type":583,"tag":611,"props":802,"children":803},{"style":630},[804],{"type":588,"value":751},{"type":583,"tag":611,"props":806,"children":807},{"style":624},[808],{"type":588,"value":756},{"type":583,"tag":611,"props":810,"children":811},{"style":711},[812],{"type":588,"value":813},"boolean",{"type":583,"tag":611,"props":815,"children":816},{"style":624},[817],{"type":588,"value":766},{"type":588,"value":661},{"type":583,"tag":611,"props":820,"children":821},{"class":613,"style":614},[822,827,831,835,840],{"type":583,"tag":611,"props":823,"children":824},{"style":630},[825],{"type":588,"value":826},"    createdAt:",{"type":583,"tag":611,"props":828,"children":829},{"style":630},[830],{"type":588,"value":751},{"type":583,"tag":611,"props":832,"children":833},{"style":624},[834],{"type":588,"value":756},{"type":583,"tag":611,"props":836,"children":837},{"style":711},[838],{"type":588,"value":839},"number",{"type":583,"tag":611,"props":841,"children":842},{"style":624},[843],{"type":588,"value":766},{"type":588,"value":661},{"type":583,"tag":611,"props":846,"children":847},{"class":613,"style":614},[848,853,858,863,868,873,878,882,887],{"type":583,"tag":611,"props":849,"children":850},{"style":624},[851],{"type":588,"value":852},"  }).",{"type":583,"tag":611,"props":854,"children":855},{"style":711},[856],{"type":588,"value":857},"index",{"type":583,"tag":611,"props":859,"children":860},{"style":624},[861],{"type":588,"value":862},"(",{"type":583,"tag":611,"props":864,"children":865},{"style":656},[866],{"type":588,"value":867},"'by_owner_created'",{"type":583,"tag":611,"props":869,"children":870},{"style":624},[871],{"type":588,"value":872},", [",{"type":583,"tag":611,"props":874,"children":875},{"style":656},[876],{"type":588,"value":877},"'ownerId'",{"type":583,"tag":611,"props":879,"children":880},{"style":624},[881],{"type":588,"value":638},{"type":583,"tag":611,"props":883,"children":884},{"style":656},[885],{"type":588,"value":886},"'createdAt'",{"type":583,"tag":611,"props":888,"children":889},{"style":624},[890],{"type":588,"value":891},"]),",{"type":588,"value":661},{"type":583,"tag":611,"props":894,"children":895},{"class":613,"style":614},[896],{"type":583,"tag":611,"props":897,"children":898},{"style":624},[899],{"type":588,"value":900},"})",{"type":583,"tag":584,"props":902,"children":903},{},[904],{"type":588,"value":905},"Delete or migrate public development records before deploying this schema change. Do not assign existing records to the first user who reads them.",{"type":583,"tag":591,"props":907,"children":909},{"id":908},"require-identity-in-the-backend",[910],{"type":588,"value":911},"Require identity in the backend",{"type":583,"tag":598,"props":913,"children":915},{"language":600,"filename":914,"class":602,"tabindex":603},"convex\u002Ftodos.ts",[916],{"type":583,"tag":606,"props":917,"children":918},{"class":608},[919,957,958,994,995,998,999,1032,1033,1096,1097,1105,1106,1157,1158,1216,1217,1229,1230,1238,1239,1242,1243,1272,1273,1286,1287,1328,1329,1366,1367,1393,1394,1419,1420,1501,1502,1527,1528,1554,1555,1563,1564,1571,1572,1575,1576,1604,1605,1638,1639,1683,1684,1719,1720,1761,1762,1811,1812,1845,1846,1854,1855,1858,1859,1904,1905,1930,1931,1943,1944,1961,1962,1988,1989,1997,1998,2005,2006],{"type":583,"tag":611,"props":920,"children":921},{"class":613,"style":614},[922,926,930,935,939,944,948,952],{"type":583,"tag":611,"props":923,"children":924},{"style":618},[925],{"type":588,"value":621},{"type":583,"tag":611,"props":927,"children":928},{"style":624},[929],{"type":588,"value":627},{"type":583,"tag":611,"props":931,"children":932},{"style":630},[933],{"type":588,"value":934},"mutation",{"type":583,"tag":611,"props":936,"children":937},{"style":624},[938],{"type":588,"value":638},{"type":583,"tag":611,"props":940,"children":941},{"style":630},[942],{"type":588,"value":943},"query",{"type":583,"tag":611,"props":945,"children":946},{"style":624},[947],{"type":588,"value":648},{"type":583,"tag":611,"props":949,"children":950},{"style":618},[951],{"type":588,"value":653},{"type":583,"tag":611,"props":953,"children":954},{"style":656},[955],{"type":588,"value":956}," '.\u002F_generated\u002Fserver'",{"type":588,"value":661},{"type":583,"tag":611,"props":959,"children":960},{"class":613,"style":614},[961,965,969,974,978,982,986,990],{"type":583,"tag":611,"props":962,"children":963},{"style":618},[964],{"type":588,"value":621},{"type":583,"tag":611,"props":966,"children":967},{"style":624},[968],{"type":588,"value":627},{"type":583,"tag":611,"props":970,"children":971},{"style":630},[972],{"type":588,"value":973},"ConvexError",{"type":583,"tag":611,"props":975,"children":976},{"style":624},[977],{"type":588,"value":638},{"type":583,"tag":611,"props":979,"children":980},{"style":630},[981],{"type":588,"value":677},{"type":583,"tag":611,"props":983,"children":984},{"style":624},[985],{"type":588,"value":648},{"type":583,"tag":611,"props":987,"children":988},{"style":618},[989],{"type":588,"value":653},{"type":583,"tag":611,"props":991,"children":992},{"style":656},[993],{"type":588,"value":690},{"type":588,"value":661},{"type":583,"tag":611,"props":996,"children":997},{"class":613,"style":614},[],{"type":588,"value":661},{"type":583,"tag":611,"props":1000,"children":1001},{"class":613,"style":614},[1002,1008,1013,1018,1022,1027],{"type":583,"tag":611,"props":1003,"children":1005},{"style":1004},"color:#0000FF;--shiki-dark:#569CD6",[1006],{"type":588,"value":1007},"async",{"type":583,"tag":611,"props":1009,"children":1010},{"style":1004},[1011],{"type":588,"value":1012}," function",{"type":583,"tag":611,"props":1014,"children":1015},{"style":711},[1016],{"type":588,"value":1017}," requireIdentity",{"type":583,"tag":611,"props":1019,"children":1020},{"style":624},[1021],{"type":588,"value":862},{"type":583,"tag":611,"props":1023,"children":1024},{"style":630},[1025],{"type":588,"value":1026},"ctx",{"type":583,"tag":611,"props":1028,"children":1029},{"style":624},[1030],{"type":588,"value":1031},": {",{"type":588,"value":661},{"type":583,"tag":611,"props":1034,"children":1035},{"class":613,"style":614},[1036,1041,1046,1051,1056,1062,1067,1072,1077,1081,1086,1091],{"type":583,"tag":611,"props":1037,"children":1038},{"style":630},[1039],{"type":588,"value":1040},"  auth",{"type":583,"tag":611,"props":1042,"children":1043},{"style":624},[1044],{"type":588,"value":1045},": { ",{"type":583,"tag":611,"props":1047,"children":1048},{"style":711},[1049],{"type":588,"value":1050},"getUserIdentity",{"type":583,"tag":611,"props":1052,"children":1053},{"style":624},[1054],{"type":588,"value":1055},"(): ",{"type":583,"tag":611,"props":1057,"children":1059},{"style":1058},"color:#267F99;--shiki-dark:#4EC9B0",[1060],{"type":588,"value":1061},"Promise",{"type":583,"tag":611,"props":1063,"children":1064},{"style":624},[1065],{"type":588,"value":1066},"\u003C{ ",{"type":583,"tag":611,"props":1068,"children":1069},{"style":630},[1070],{"type":588,"value":1071},"subject",{"type":583,"tag":611,"props":1073,"children":1074},{"style":624},[1075],{"type":588,"value":1076},": ",{"type":583,"tag":611,"props":1078,"children":1079},{"style":1058},[1080],{"type":588,"value":761},{"type":583,"tag":611,"props":1082,"children":1083},{"style":624},[1084],{"type":588,"value":1085}," } | ",{"type":583,"tag":611,"props":1087,"children":1088},{"style":1058},[1089],{"type":588,"value":1090},"null",{"type":583,"tag":611,"props":1092,"children":1093},{"style":624},[1094],{"type":588,"value":1095},"> }",{"type":588,"value":661},{"type":583,"tag":611,"props":1098,"children":1099},{"class":613,"style":614},[1100],{"type":583,"tag":611,"props":1101,"children":1102},{"style":624},[1103],{"type":588,"value":1104},"}) {",{"type":588,"value":661},{"type":583,"tag":611,"props":1107,"children":1108},{"class":613,"style":614},[1109,1114,1120,1125,1130,1135,1139,1144,1148,1152],{"type":583,"tag":611,"props":1110,"children":1111},{"style":1004},[1112],{"type":588,"value":1113},"  const",{"type":583,"tag":611,"props":1115,"children":1117},{"style":1116},"color:#0070C1;--shiki-dark:#4FC1FF",[1118],{"type":588,"value":1119}," identity",{"type":583,"tag":611,"props":1121,"children":1122},{"style":624},[1123],{"type":588,"value":1124}," = ",{"type":583,"tag":611,"props":1126,"children":1127},{"style":618},[1128],{"type":588,"value":1129},"await",{"type":583,"tag":611,"props":1131,"children":1132},{"style":630},[1133],{"type":588,"value":1134}," ctx",{"type":583,"tag":611,"props":1136,"children":1137},{"style":624},[1138],{"type":588,"value":756},{"type":583,"tag":611,"props":1140,"children":1141},{"style":630},[1142],{"type":588,"value":1143},"auth",{"type":583,"tag":611,"props":1145,"children":1146},{"style":624},[1147],{"type":588,"value":756},{"type":583,"tag":611,"props":1149,"children":1150},{"style":711},[1151],{"type":588,"value":1050},{"type":583,"tag":611,"props":1153,"children":1154},{"style":624},[1155],{"type":588,"value":1156},"()",{"type":588,"value":661},{"type":583,"tag":611,"props":1159,"children":1160},{"class":613,"style":614},[1161,1166,1171,1176,1181,1186,1191,1196,1201,1206,1211],{"type":583,"tag":611,"props":1162,"children":1163},{"style":618},[1164],{"type":588,"value":1165},"  if",{"type":583,"tag":611,"props":1167,"children":1168},{"style":624},[1169],{"type":588,"value":1170}," (!",{"type":583,"tag":611,"props":1172,"children":1173},{"style":630},[1174],{"type":588,"value":1175},"identity",{"type":583,"tag":611,"props":1177,"children":1178},{"style":624},[1179],{"type":588,"value":1180},") ",{"type":583,"tag":611,"props":1182,"children":1183},{"style":618},[1184],{"type":588,"value":1185},"throw",{"type":583,"tag":611,"props":1187,"children":1188},{"style":1004},[1189],{"type":588,"value":1190}," new",{"type":583,"tag":611,"props":1192,"children":1193},{"style":711},[1194],{"type":588,"value":1195}," ConvexError",{"type":583,"tag":611,"props":1197,"children":1198},{"style":624},[1199],{"type":588,"value":1200},"({ ",{"type":583,"tag":611,"props":1202,"children":1203},{"style":630},[1204],{"type":588,"value":1205},"code:",{"type":583,"tag":611,"props":1207,"children":1208},{"style":656},[1209],{"type":588,"value":1210}," 'UNAUTHENTICATED'",{"type":583,"tag":611,"props":1212,"children":1213},{"style":624},[1214],{"type":588,"value":1215}," })",{"type":588,"value":661},{"type":583,"tag":611,"props":1218,"children":1219},{"class":613,"style":614},[1220,1225],{"type":583,"tag":611,"props":1221,"children":1222},{"style":618},[1223],{"type":588,"value":1224},"  return",{"type":583,"tag":611,"props":1226,"children":1227},{"style":630},[1228],{"type":588,"value":1119},{"type":588,"value":661},{"type":583,"tag":611,"props":1231,"children":1232},{"class":613,"style":614},[1233],{"type":583,"tag":611,"props":1234,"children":1235},{"style":624},[1236],{"type":588,"value":1237},"}",{"type":588,"value":661},{"type":583,"tag":611,"props":1240,"children":1241},{"class":613,"style":614},[],{"type":588,"value":661},{"type":583,"tag":611,"props":1244,"children":1245},{"class":613,"style":614},[1246,1250,1255,1260,1264,1268],{"type":583,"tag":611,"props":1247,"children":1248},{"style":618},[1249],{"type":588,"value":703},{"type":583,"tag":611,"props":1251,"children":1252},{"style":1004},[1253],{"type":588,"value":1254}," const",{"type":583,"tag":611,"props":1256,"children":1257},{"style":1116},[1258],{"type":588,"value":1259}," list",{"type":583,"tag":611,"props":1261,"children":1262},{"style":624},[1263],{"type":588,"value":1124},{"type":583,"tag":611,"props":1265,"children":1266},{"style":711},[1267],{"type":588,"value":943},{"type":583,"tag":611,"props":1269,"children":1270},{"style":624},[1271],{"type":588,"value":719},{"type":588,"value":661},{"type":583,"tag":611,"props":1274,"children":1275},{"class":613,"style":614},[1276,1281],{"type":583,"tag":611,"props":1277,"children":1278},{"style":630},[1279],{"type":588,"value":1280},"  args:",{"type":583,"tag":611,"props":1282,"children":1283},{"style":624},[1284],{"type":588,"value":1285}," {},",{"type":588,"value":661},{"type":583,"tag":611,"props":1288,"children":1289},{"class":613,"style":614},[1290,1295,1300,1305,1310,1314,1318,1323],{"type":583,"tag":611,"props":1291,"children":1292},{"style":711},[1293],{"type":588,"value":1294},"  handler",{"type":583,"tag":611,"props":1296,"children":1297},{"style":630},[1298],{"type":588,"value":1299},":",{"type":583,"tag":611,"props":1301,"children":1302},{"style":1004},[1303],{"type":588,"value":1304}," async",{"type":583,"tag":611,"props":1306,"children":1307},{"style":624},[1308],{"type":588,"value":1309}," (",{"type":583,"tag":611,"props":1311,"children":1312},{"style":630},[1313],{"type":588,"value":1026},{"type":583,"tag":611,"props":1315,"children":1316},{"style":624},[1317],{"type":588,"value":1180},{"type":583,"tag":611,"props":1319,"children":1320},{"style":1004},[1321],{"type":588,"value":1322},"=>",{"type":583,"tag":611,"props":1324,"children":1325},{"style":624},[1326],{"type":588,"value":1327}," {",{"type":588,"value":661},{"type":583,"tag":611,"props":1330,"children":1331},{"class":613,"style":614},[1332,1337,1341,1345,1349,1353,1357,1361],{"type":583,"tag":611,"props":1333,"children":1334},{"style":1004},[1335],{"type":588,"value":1336},"    const",{"type":583,"tag":611,"props":1338,"children":1339},{"style":1116},[1340],{"type":588,"value":1119},{"type":583,"tag":611,"props":1342,"children":1343},{"style":624},[1344],{"type":588,"value":1124},{"type":583,"tag":611,"props":1346,"children":1347},{"style":618},[1348],{"type":588,"value":1129},{"type":583,"tag":611,"props":1350,"children":1351},{"style":711},[1352],{"type":588,"value":1017},{"type":583,"tag":611,"props":1354,"children":1355},{"style":624},[1356],{"type":588,"value":862},{"type":583,"tag":611,"props":1358,"children":1359},{"style":630},[1360],{"type":588,"value":1026},{"type":583,"tag":611,"props":1362,"children":1363},{"style":624},[1364],{"type":588,"value":1365},")",{"type":588,"value":661},{"type":583,"tag":611,"props":1368,"children":1369},{"class":613,"style":614},[1370,1375,1380,1384,1388],{"type":583,"tag":611,"props":1371,"children":1372},{"style":618},[1373],{"type":588,"value":1374},"    return",{"type":583,"tag":611,"props":1376,"children":1377},{"style":618},[1378],{"type":588,"value":1379}," await",{"type":583,"tag":611,"props":1381,"children":1382},{"style":630},[1383],{"type":588,"value":1134},{"type":583,"tag":611,"props":1385,"children":1386},{"style":624},[1387],{"type":588,"value":756},{"type":583,"tag":611,"props":1389,"children":1390},{"style":630},[1391],{"type":588,"value":1392},"db",{"type":588,"value":661},{"type":583,"tag":611,"props":1395,"children":1396},{"class":613,"style":614},[1397,1402,1406,1410,1415],{"type":583,"tag":611,"props":1398,"children":1399},{"style":624},[1400],{"type":588,"value":1401},"      .",{"type":583,"tag":611,"props":1403,"children":1404},{"style":711},[1405],{"type":588,"value":943},{"type":583,"tag":611,"props":1407,"children":1408},{"style":624},[1409],{"type":588,"value":862},{"type":583,"tag":611,"props":1411,"children":1412},{"style":656},[1413],{"type":588,"value":1414},"'todos'",{"type":583,"tag":611,"props":1416,"children":1417},{"style":624},[1418],{"type":588,"value":1365},{"type":588,"value":661},{"type":583,"tag":611,"props":1421,"children":1422},{"class":613,"style":614},[1423,1427,1432,1436,1440,1445,1450,1454,1458,1463,1467,1472,1476,1480,1484,1488,1492,1496],{"type":583,"tag":611,"props":1424,"children":1425},{"style":624},[1426],{"type":588,"value":1401},{"type":583,"tag":611,"props":1428,"children":1429},{"style":711},[1430],{"type":588,"value":1431},"withIndex",{"type":583,"tag":611,"props":1433,"children":1434},{"style":624},[1435],{"type":588,"value":862},{"type":583,"tag":611,"props":1437,"children":1438},{"style":656},[1439],{"type":588,"value":867},{"type":583,"tag":611,"props":1441,"children":1442},{"style":624},[1443],{"type":588,"value":1444},", (",{"type":583,"tag":611,"props":1446,"children":1447},{"style":630},[1448],{"type":588,"value":1449},"q",{"type":583,"tag":611,"props":1451,"children":1452},{"style":624},[1453],{"type":588,"value":1180},{"type":583,"tag":611,"props":1455,"children":1456},{"style":1004},[1457],{"type":588,"value":1322},{"type":583,"tag":611,"props":1459,"children":1460},{"style":630},[1461],{"type":588,"value":1462}," q",{"type":583,"tag":611,"props":1464,"children":1465},{"style":624},[1466],{"type":588,"value":756},{"type":583,"tag":611,"props":1468,"children":1469},{"style":711},[1470],{"type":588,"value":1471},"eq",{"type":583,"tag":611,"props":1473,"children":1474},{"style":624},[1475],{"type":588,"value":862},{"type":583,"tag":611,"props":1477,"children":1478},{"style":656},[1479],{"type":588,"value":877},{"type":583,"tag":611,"props":1481,"children":1482},{"style":624},[1483],{"type":588,"value":638},{"type":583,"tag":611,"props":1485,"children":1486},{"style":630},[1487],{"type":588,"value":1175},{"type":583,"tag":611,"props":1489,"children":1490},{"style":624},[1491],{"type":588,"value":756},{"type":583,"tag":611,"props":1493,"children":1494},{"style":630},[1495],{"type":588,"value":1071},{"type":583,"tag":611,"props":1497,"children":1498},{"style":624},[1499],{"type":588,"value":1500},"))",{"type":588,"value":661},{"type":583,"tag":611,"props":1503,"children":1504},{"class":613,"style":614},[1505,1509,1514,1518,1523],{"type":583,"tag":611,"props":1506,"children":1507},{"style":624},[1508],{"type":588,"value":1401},{"type":583,"tag":611,"props":1510,"children":1511},{"style":711},[1512],{"type":588,"value":1513},"order",{"type":583,"tag":611,"props":1515,"children":1516},{"style":624},[1517],{"type":588,"value":862},{"type":583,"tag":611,"props":1519,"children":1520},{"style":656},[1521],{"type":588,"value":1522},"'desc'",{"type":583,"tag":611,"props":1524,"children":1525},{"style":624},[1526],{"type":588,"value":1365},{"type":588,"value":661},{"type":583,"tag":611,"props":1529,"children":1530},{"class":613,"style":614},[1531,1535,1540,1544,1550],{"type":583,"tag":611,"props":1532,"children":1533},{"style":624},[1534],{"type":588,"value":1401},{"type":583,"tag":611,"props":1536,"children":1537},{"style":711},[1538],{"type":588,"value":1539},"take",{"type":583,"tag":611,"props":1541,"children":1542},{"style":624},[1543],{"type":588,"value":862},{"type":583,"tag":611,"props":1545,"children":1547},{"style":1546},"color:#098658;--shiki-dark:#B5CEA8",[1548],{"type":588,"value":1549},"50",{"type":583,"tag":611,"props":1551,"children":1552},{"style":624},[1553],{"type":588,"value":1365},{"type":588,"value":661},{"type":583,"tag":611,"props":1556,"children":1557},{"class":613,"style":614},[1558],{"type":583,"tag":611,"props":1559,"children":1560},{"style":624},[1561],{"type":588,"value":1562},"  },",{"type":588,"value":661},{"type":583,"tag":611,"props":1565,"children":1566},{"class":613,"style":614},[1567],{"type":583,"tag":611,"props":1568,"children":1569},{"style":624},[1570],{"type":588,"value":900},{"type":588,"value":661},{"type":583,"tag":611,"props":1573,"children":1574},{"class":613,"style":614},[],{"type":588,"value":661},{"type":583,"tag":611,"props":1577,"children":1578},{"class":613,"style":614},[1579,1583,1587,1592,1596,1600],{"type":583,"tag":611,"props":1580,"children":1581},{"style":618},[1582],{"type":588,"value":703},{"type":583,"tag":611,"props":1584,"children":1585},{"style":1004},[1586],{"type":588,"value":1254},{"type":583,"tag":611,"props":1588,"children":1589},{"style":1116},[1590],{"type":588,"value":1591}," create",{"type":583,"tag":611,"props":1593,"children":1594},{"style":624},[1595],{"type":588,"value":1124},{"type":583,"tag":611,"props":1597,"children":1598},{"style":711},[1599],{"type":588,"value":934},{"type":583,"tag":611,"props":1601,"children":1602},{"style":624},[1603],{"type":588,"value":719},{"type":588,"value":661},{"type":583,"tag":611,"props":1606,"children":1607},{"class":613,"style":614},[1608,1612,1616,1621,1625,1629,1633],{"type":583,"tag":611,"props":1609,"children":1610},{"style":630},[1611],{"type":588,"value":1280},{"type":583,"tag":611,"props":1613,"children":1614},{"style":624},[1615],{"type":588,"value":627},{"type":583,"tag":611,"props":1617,"children":1618},{"style":630},[1619],{"type":588,"value":1620},"text:",{"type":583,"tag":611,"props":1622,"children":1623},{"style":630},[1624],{"type":588,"value":751},{"type":583,"tag":611,"props":1626,"children":1627},{"style":624},[1628],{"type":588,"value":756},{"type":583,"tag":611,"props":1630,"children":1631},{"style":711},[1632],{"type":588,"value":761},{"type":583,"tag":611,"props":1634,"children":1635},{"style":624},[1636],{"type":588,"value":1637},"() },",{"type":588,"value":661},{"type":583,"tag":611,"props":1640,"children":1641},{"class":613,"style":614},[1642,1646,1650,1654,1658,1662,1666,1671,1675,1679],{"type":583,"tag":611,"props":1643,"children":1644},{"style":711},[1645],{"type":588,"value":1294},{"type":583,"tag":611,"props":1647,"children":1648},{"style":630},[1649],{"type":588,"value":1299},{"type":583,"tag":611,"props":1651,"children":1652},{"style":1004},[1653],{"type":588,"value":1304},{"type":583,"tag":611,"props":1655,"children":1656},{"style":624},[1657],{"type":588,"value":1309},{"type":583,"tag":611,"props":1659,"children":1660},{"style":630},[1661],{"type":588,"value":1026},{"type":583,"tag":611,"props":1663,"children":1664},{"style":624},[1665],{"type":588,"value":638},{"type":583,"tag":611,"props":1667,"children":1668},{"style":630},[1669],{"type":588,"value":1670},"args",{"type":583,"tag":611,"props":1672,"children":1673},{"style":624},[1674],{"type":588,"value":1180},{"type":583,"tag":611,"props":1676,"children":1677},{"style":1004},[1678],{"type":588,"value":1322},{"type":583,"tag":611,"props":1680,"children":1681},{"style":624},[1682],{"type":588,"value":1327},{"type":588,"value":661},{"type":583,"tag":611,"props":1685,"children":1686},{"class":613,"style":614},[1687,1691,1695,1699,1703,1707,1711,1715],{"type":583,"tag":611,"props":1688,"children":1689},{"style":1004},[1690],{"type":588,"value":1336},{"type":583,"tag":611,"props":1692,"children":1693},{"style":1116},[1694],{"type":588,"value":1119},{"type":583,"tag":611,"props":1696,"children":1697},{"style":624},[1698],{"type":588,"value":1124},{"type":583,"tag":611,"props":1700,"children":1701},{"style":618},[1702],{"type":588,"value":1129},{"type":583,"tag":611,"props":1704,"children":1705},{"style":711},[1706],{"type":588,"value":1017},{"type":583,"tag":611,"props":1708,"children":1709},{"style":624},[1710],{"type":588,"value":862},{"type":583,"tag":611,"props":1712,"children":1713},{"style":630},[1714],{"type":588,"value":1026},{"type":583,"tag":611,"props":1716,"children":1717},{"style":624},[1718],{"type":588,"value":1365},{"type":588,"value":661},{"type":583,"tag":611,"props":1721,"children":1722},{"class":613,"style":614},[1723,1727,1732,1736,1740,1744,1748,1752,1757],{"type":583,"tag":611,"props":1724,"children":1725},{"style":1004},[1726],{"type":588,"value":1336},{"type":583,"tag":611,"props":1728,"children":1729},{"style":1116},[1730],{"type":588,"value":1731}," text",{"type":583,"tag":611,"props":1733,"children":1734},{"style":624},[1735],{"type":588,"value":1124},{"type":583,"tag":611,"props":1737,"children":1738},{"style":630},[1739],{"type":588,"value":1670},{"type":583,"tag":611,"props":1741,"children":1742},{"style":624},[1743],{"type":588,"value":756},{"type":583,"tag":611,"props":1745,"children":1746},{"style":630},[1747],{"type":588,"value":588},{"type":583,"tag":611,"props":1749,"children":1750},{"style":624},[1751],{"type":588,"value":756},{"type":583,"tag":611,"props":1753,"children":1754},{"style":711},[1755],{"type":588,"value":1756},"trim",{"type":583,"tag":611,"props":1758,"children":1759},{"style":624},[1760],{"type":588,"value":1156},{"type":588,"value":661},{"type":583,"tag":611,"props":1763,"children":1764},{"class":613,"style":614},[1765,1770,1774,1778,1783,1787,1791,1796,1801,1806],{"type":583,"tag":611,"props":1766,"children":1767},{"style":618},[1768],{"type":588,"value":1769},"    if",{"type":583,"tag":611,"props":1771,"children":1772},{"style":624},[1773],{"type":588,"value":1170},{"type":583,"tag":611,"props":1775,"children":1776},{"style":630},[1777],{"type":588,"value":588},{"type":583,"tag":611,"props":1779,"children":1780},{"style":624},[1781],{"type":588,"value":1782}," || ",{"type":583,"tag":611,"props":1784,"children":1785},{"style":630},[1786],{"type":588,"value":588},{"type":583,"tag":611,"props":1788,"children":1789},{"style":624},[1790],{"type":588,"value":756},{"type":583,"tag":611,"props":1792,"children":1793},{"style":630},[1794],{"type":588,"value":1795},"length",{"type":583,"tag":611,"props":1797,"children":1798},{"style":624},[1799],{"type":588,"value":1800}," > ",{"type":583,"tag":611,"props":1802,"children":1803},{"style":1546},[1804],{"type":588,"value":1805},"200",{"type":583,"tag":611,"props":1807,"children":1808},{"style":624},[1809],{"type":588,"value":1810},") {",{"type":588,"value":661},{"type":583,"tag":611,"props":1813,"children":1814},{"class":613,"style":614},[1815,1820,1824,1828,1832,1836,1841],{"type":583,"tag":611,"props":1816,"children":1817},{"style":618},[1818],{"type":588,"value":1819},"      throw",{"type":583,"tag":611,"props":1821,"children":1822},{"style":1004},[1823],{"type":588,"value":1190},{"type":583,"tag":611,"props":1825,"children":1826},{"style":711},[1827],{"type":588,"value":1195},{"type":583,"tag":611,"props":1829,"children":1830},{"style":624},[1831],{"type":588,"value":1200},{"type":583,"tag":611,"props":1833,"children":1834},{"style":630},[1835],{"type":588,"value":1205},{"type":583,"tag":611,"props":1837,"children":1838},{"style":656},[1839],{"type":588,"value":1840}," 'INVALID_TODO_TEXT'",{"type":583,"tag":611,"props":1842,"children":1843},{"style":624},[1844],{"type":588,"value":1215},{"type":588,"value":661},{"type":583,"tag":611,"props":1847,"children":1848},{"class":613,"style":614},[1849],{"type":583,"tag":611,"props":1850,"children":1851},{"style":624},[1852],{"type":588,"value":1853},"    }",{"type":588,"value":661},{"type":583,"tag":611,"props":1856,"children":1857},{"class":613,"style":614},[],{"type":588,"value":661},{"type":583,"tag":611,"props":1860,"children":1861},{"class":613,"style":614},[1862,1866,1870,1874,1878,1882,1886,1891,1895,1899],{"type":583,"tag":611,"props":1863,"children":1864},{"style":618},[1865],{"type":588,"value":1374},{"type":583,"tag":611,"props":1867,"children":1868},{"style":618},[1869],{"type":588,"value":1379},{"type":583,"tag":611,"props":1871,"children":1872},{"style":630},[1873],{"type":588,"value":1134},{"type":583,"tag":611,"props":1875,"children":1876},{"style":624},[1877],{"type":588,"value":756},{"type":583,"tag":611,"props":1879,"children":1880},{"style":630},[1881],{"type":588,"value":1392},{"type":583,"tag":611,"props":1883,"children":1884},{"style":624},[1885],{"type":588,"value":756},{"type":583,"tag":611,"props":1887,"children":1888},{"style":711},[1889],{"type":588,"value":1890},"insert",{"type":583,"tag":611,"props":1892,"children":1893},{"style":624},[1894],{"type":588,"value":862},{"type":583,"tag":611,"props":1896,"children":1897},{"style":656},[1898],{"type":588,"value":1414},{"type":583,"tag":611,"props":1900,"children":1901},{"style":624},[1902],{"type":588,"value":1903},", {",{"type":588,"value":661},{"type":583,"tag":611,"props":1906,"children":1907},{"class":613,"style":614},[1908,1913,1917,1921,1925],{"type":583,"tag":611,"props":1909,"children":1910},{"style":630},[1911],{"type":588,"value":1912},"      ownerId:",{"type":583,"tag":611,"props":1914,"children":1915},{"style":630},[1916],{"type":588,"value":1119},{"type":583,"tag":611,"props":1918,"children":1919},{"style":624},[1920],{"type":588,"value":756},{"type":583,"tag":611,"props":1922,"children":1923},{"style":630},[1924],{"type":588,"value":1071},{"type":583,"tag":611,"props":1926,"children":1927},{"style":624},[1928],{"type":588,"value":1929},",",{"type":588,"value":661},{"type":583,"tag":611,"props":1932,"children":1933},{"class":613,"style":614},[1934,1939],{"type":583,"tag":611,"props":1935,"children":1936},{"style":630},[1937],{"type":588,"value":1938},"      text",{"type":583,"tag":611,"props":1940,"children":1941},{"style":624},[1942],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":1945,"children":1946},{"class":613,"style":614},[1947,1952,1957],{"type":583,"tag":611,"props":1948,"children":1949},{"style":630},[1950],{"type":588,"value":1951},"      completed:",{"type":583,"tag":611,"props":1953,"children":1954},{"style":1004},[1955],{"type":588,"value":1956}," false",{"type":583,"tag":611,"props":1958,"children":1959},{"style":624},[1960],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":1963,"children":1964},{"class":613,"style":614},[1965,1970,1975,1979,1984],{"type":583,"tag":611,"props":1966,"children":1967},{"style":630},[1968],{"type":588,"value":1969},"      createdAt:",{"type":583,"tag":611,"props":1971,"children":1972},{"style":630},[1973],{"type":588,"value":1974}," Date",{"type":583,"tag":611,"props":1976,"children":1977},{"style":624},[1978],{"type":588,"value":756},{"type":583,"tag":611,"props":1980,"children":1981},{"style":711},[1982],{"type":588,"value":1983},"now",{"type":583,"tag":611,"props":1985,"children":1986},{"style":624},[1987],{"type":588,"value":766},{"type":588,"value":661},{"type":583,"tag":611,"props":1990,"children":1991},{"class":613,"style":614},[1992],{"type":583,"tag":611,"props":1993,"children":1994},{"style":624},[1995],{"type":588,"value":1996},"    })",{"type":588,"value":661},{"type":583,"tag":611,"props":1999,"children":2000},{"class":613,"style":614},[2001],{"type":583,"tag":611,"props":2002,"children":2003},{"style":624},[2004],{"type":588,"value":1562},{"type":588,"value":661},{"type":583,"tag":611,"props":2007,"children":2008},{"class":613,"style":614},[2009],{"type":583,"tag":611,"props":2010,"children":2011},{"style":624},[2012],{"type":588,"value":900},{"type":583,"tag":584,"props":2014,"children":2015},{},[2016],{"type":588,"value":2017},"The query only reads the caller's indexed documents. The mutation ignores any client-supplied owner and writes the validated identity.",{"type":583,"tag":591,"props":2019,"children":2021},{"id":2020},"mark-the-query-as-required",[2022],{"type":588,"value":2023},"Mark the query as required",{"type":583,"tag":598,"props":2025,"children":2026},{"language":600,"class":602,"tabindex":603},[2027],{"type":583,"tag":606,"props":2028,"children":2029},{"class":608},[2030,2042,2043,2064,2065,2077,2078,2090,2091,2112,2113,2142,2143,2151,2152,2160,2161,2178,2179,2186,2187],{"type":583,"tag":611,"props":2031,"children":2032},{"class":613,"style":614},[2033,2038],{"type":583,"tag":611,"props":2034,"children":2035},{"style":1004},[2036],{"type":588,"value":2037},"const",{"type":583,"tag":611,"props":2039,"children":2040},{"style":624},[2041],{"type":588,"value":1327},{"type":588,"value":661},{"type":583,"tag":611,"props":2044,"children":2045},{"class":613,"style":614},[2046,2051,2055,2060],{"type":583,"tag":611,"props":2047,"children":2048},{"style":630},[2049],{"type":588,"value":2050},"  data",{"type":583,"tag":611,"props":2052,"children":2053},{"style":624},[2054],{"type":588,"value":1076},{"type":583,"tag":611,"props":2056,"children":2057},{"style":1116},[2058],{"type":588,"value":2059},"todos",{"type":583,"tag":611,"props":2061,"children":2062},{"style":624},[2063],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2066,"children":2067},{"class":613,"style":614},[2068,2073],{"type":583,"tag":611,"props":2069,"children":2070},{"style":1116},[2071],{"type":588,"value":2072},"  status",{"type":583,"tag":611,"props":2074,"children":2075},{"style":624},[2076],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2079,"children":2080},{"class":613,"style":614},[2081,2086],{"type":583,"tag":611,"props":2082,"children":2083},{"style":1116},[2084],{"type":588,"value":2085},"  error",{"type":583,"tag":611,"props":2087,"children":2088},{"style":624},[2089],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2092,"children":2093},{"class":613,"style":614},[2094,2099,2103,2108],{"type":583,"tag":611,"props":2095,"children":2096},{"style":624},[2097],{"type":588,"value":2098},"} = ",{"type":583,"tag":611,"props":2100,"children":2101},{"style":618},[2102],{"type":588,"value":1129},{"type":583,"tag":611,"props":2104,"children":2105},{"style":711},[2106],{"type":588,"value":2107}," useConvexQuery",{"type":583,"tag":611,"props":2109,"children":2110},{"style":624},[2111],{"type":588,"value":862},{"type":588,"value":661},{"type":583,"tag":611,"props":2114,"children":2115},{"class":613,"style":614},[2116,2121,2125,2129,2133,2138],{"type":583,"tag":611,"props":2117,"children":2118},{"style":630},[2119],{"type":588,"value":2120},"  api",{"type":583,"tag":611,"props":2122,"children":2123},{"style":624},[2124],{"type":588,"value":756},{"type":583,"tag":611,"props":2126,"children":2127},{"style":630},[2128],{"type":588,"value":2059},{"type":583,"tag":611,"props":2130,"children":2131},{"style":624},[2132],{"type":588,"value":756},{"type":583,"tag":611,"props":2134,"children":2135},{"style":630},[2136],{"type":588,"value":2137},"list",{"type":583,"tag":611,"props":2139,"children":2140},{"style":624},[2141],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2144,"children":2145},{"class":613,"style":614},[2146],{"type":583,"tag":611,"props":2147,"children":2148},{"style":624},[2149],{"type":588,"value":2150},"  {},",{"type":588,"value":661},{"type":583,"tag":611,"props":2153,"children":2154},{"class":613,"style":614},[2155],{"type":583,"tag":611,"props":2156,"children":2157},{"style":624},[2158],{"type":588,"value":2159},"  {",{"type":588,"value":661},{"type":583,"tag":611,"props":2162,"children":2163},{"class":613,"style":614},[2164,2169,2174],{"type":583,"tag":611,"props":2165,"children":2166},{"style":630},[2167],{"type":588,"value":2168},"    auth:",{"type":583,"tag":611,"props":2170,"children":2171},{"style":656},[2172],{"type":588,"value":2173}," 'required'",{"type":583,"tag":611,"props":2175,"children":2176},{"style":624},[2177],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2180,"children":2181},{"class":613,"style":614},[2182],{"type":583,"tag":611,"props":2183,"children":2184},{"style":624},[2185],{"type":588,"value":1562},{"type":588,"value":661},{"type":583,"tag":611,"props":2188,"children":2189},{"class":613,"style":614},[2190],{"type":583,"tag":611,"props":2191,"children":2192},{"style":624},[2193],{"type":588,"value":1365},{"type":583,"tag":584,"props":2195,"children":2196},{},[2197,2199,2204],{"type":588,"value":2198},"An anonymous ",{"type":583,"tag":606,"props":2200,"children":2201},{},[2202],{"type":588,"value":2203},"required",{"type":588,"value":2205}," query stays idle instead of executing anonymously.",{"type":583,"tag":584,"props":2207,"children":2208},{},[2209],{"type":588,"value":2210},"This is execution policy, not the backend check. Keep both.",{"type":583,"tag":591,"props":2212,"children":2214},{"id":2213},"protect-navigation",[2215],{"type":588,"value":2216},"Protect navigation",{"type":583,"tag":584,"props":2218,"children":2219},{},[2220],{"type":588,"value":2221},"Configure the default sign-in route:",{"type":583,"tag":598,"props":2223,"children":2225},{"language":600,"filename":2224,"class":602,"tabindex":603},"nuxt.config.ts",[2226],{"type":583,"tag":606,"props":2227,"children":2228},{"class":608},[2229,2249,2250,2273,2274,2286,2287,2298,2299,2311,2312,2329,2330,2347,2348,2356,2357,2365,2366,2373,2374],{"type":583,"tag":611,"props":2230,"children":2231},{"class":613,"style":614},[2232,2236,2240,2245],{"type":583,"tag":611,"props":2233,"children":2234},{"style":618},[2235],{"type":588,"value":703},{"type":583,"tag":611,"props":2237,"children":2238},{"style":618},[2239],{"type":588,"value":708},{"type":583,"tag":611,"props":2241,"children":2242},{"style":711},[2243],{"type":588,"value":2244}," defineNuxtConfig",{"type":583,"tag":611,"props":2246,"children":2247},{"style":624},[2248],{"type":588,"value":719},{"type":588,"value":661},{"type":583,"tag":611,"props":2251,"children":2252},{"class":613,"style":614},[2253,2258,2263,2268],{"type":583,"tag":611,"props":2254,"children":2255},{"style":630},[2256],{"type":588,"value":2257},"  modules:",{"type":583,"tag":611,"props":2259,"children":2260},{"style":624},[2261],{"type":588,"value":2262}," [",{"type":583,"tag":611,"props":2264,"children":2265},{"style":656},[2266],{"type":588,"value":2267},"'better-convex-nuxt'",{"type":583,"tag":611,"props":2269,"children":2270},{"style":624},[2271],{"type":588,"value":2272},"],",{"type":588,"value":661},{"type":583,"tag":611,"props":2275,"children":2276},{"class":613,"style":614},[2277,2282],{"type":583,"tag":611,"props":2278,"children":2279},{"style":630},[2280],{"type":588,"value":2281},"  convex:",{"type":583,"tag":611,"props":2283,"children":2284},{"style":624},[2285],{"type":588,"value":1327},{"type":588,"value":661},{"type":583,"tag":611,"props":2288,"children":2289},{"class":613,"style":614},[2290,2294],{"type":583,"tag":611,"props":2291,"children":2292},{"style":630},[2293],{"type":588,"value":2168},{"type":583,"tag":611,"props":2295,"children":2296},{"style":624},[2297],{"type":588,"value":1327},{"type":588,"value":661},{"type":583,"tag":611,"props":2300,"children":2301},{"class":613,"style":614},[2302,2307],{"type":583,"tag":611,"props":2303,"children":2304},{"style":630},[2305],{"type":588,"value":2306},"      routeProtection:",{"type":583,"tag":611,"props":2308,"children":2309},{"style":624},[2310],{"type":588,"value":1327},{"type":588,"value":661},{"type":583,"tag":611,"props":2313,"children":2314},{"class":613,"style":614},[2315,2320,2325],{"type":583,"tag":611,"props":2316,"children":2317},{"style":630},[2318],{"type":588,"value":2319},"        redirectTo:",{"type":583,"tag":611,"props":2321,"children":2322},{"style":656},[2323],{"type":588,"value":2324}," '\u002Fauth'",{"type":583,"tag":611,"props":2326,"children":2327},{"style":624},[2328],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2331,"children":2332},{"class":613,"style":614},[2333,2338,2343],{"type":583,"tag":611,"props":2334,"children":2335},{"style":630},[2336],{"type":588,"value":2337},"        preserveReturnTo:",{"type":583,"tag":611,"props":2339,"children":2340},{"style":1004},[2341],{"type":588,"value":2342}," true",{"type":583,"tag":611,"props":2344,"children":2345},{"style":624},[2346],{"type":588,"value":1929},{"type":588,"value":661},{"type":583,"tag":611,"props":2349,"children":2350},{"class":613,"style":614},[2351],{"type":583,"tag":611,"props":2352,"children":2353},{"style":624},[2354],{"type":588,"value":2355},"      },",{"type":588,"value":661},{"type":583,"tag":611,"props":2358,"children":2359},{"class":613,"style":614},[2360],{"type":583,"tag":611,"props":2361,"children":2362},{"style":624},[2363],{"type":588,"value":2364},"    },",{"type":588,"value":661},{"type":583,"tag":611,"props":2367,"children":2368},{"class":613,"style":614},[2369],{"type":583,"tag":611,"props":2370,"children":2371},{"style":624},[2372],{"type":588,"value":1562},{"type":588,"value":661},{"type":583,"tag":611,"props":2375,"children":2376},{"class":613,"style":614},[2377],{"type":583,"tag":611,"props":2378,"children":2379},{"style":624},[2380],{"type":588,"value":900},{"type":583,"tag":584,"props":2382,"children":2383},{},[2384],{"type":588,"value":2385},"Mark the todo page:",{"type":583,"tag":598,"props":2387,"children":2389},{"language":600,"filename":2388,"class":602,"tabindex":603},"app\u002Fpages\u002Findex.vue",[2390],{"type":583,"tag":606,"props":2391,"children":2392},{"class":608},[2393],{"type":583,"tag":611,"props":2394,"children":2395},{"class":613,"style":614},[2396,2401,2405,2410,2414],{"type":583,"tag":611,"props":2397,"children":2398},{"style":711},[2399],{"type":588,"value":2400},"definePageMeta",{"type":583,"tag":611,"props":2402,"children":2403},{"style":624},[2404],{"type":588,"value":1200},{"type":583,"tag":611,"props":2406,"children":2407},{"style":630},[2408],{"type":588,"value":2409},"convexAuth:",{"type":583,"tag":611,"props":2411,"children":2412},{"style":1004},[2413],{"type":588,"value":2342},{"type":583,"tag":611,"props":2415,"children":2416},{"style":624},[2417],{"type":588,"value":1215},{"type":583,"tag":584,"props":2419,"children":2420},{},[2421,2423,2428],{"type":588,"value":2422},"The middleware waits for auth settlement and redirects anonymous navigation. It preserves a local return path in the ",{"type":583,"tag":606,"props":2424,"children":2425},{},[2426],{"type":588,"value":2427},"redirect",{"type":588,"value":2429}," query parameter.",{"type":583,"tag":591,"props":2431,"children":2433},{"id":2432},"verify-the-boundary",[2434],{"type":588,"value":2435},"Verify the boundary",{"type":583,"tag":584,"props":2437,"children":2438},{},[2439],{"type":588,"value":2440},"Test all three cases:",{"type":583,"tag":2442,"props":2443,"children":2444},"ol",{},[2445,2457,2462],{"type":583,"tag":2446,"props":2447,"children":2448},"li",{},[2449,2451,2456],{"type":588,"value":2450},"Anonymous navigation redirects to ",{"type":583,"tag":606,"props":2452,"children":2453},{},[2454],{"type":588,"value":2455},"\u002Fauth",{"type":588,"value":756},{"type":583,"tag":2446,"props":2458,"children":2459},{},[2460],{"type":588,"value":2461},"An authenticated user can create and list their todos.",{"type":583,"tag":2446,"props":2463,"children":2464},{},[2465],{"type":588,"value":2466},"A different authenticated user cannot list the first user's todos.",{"type":583,"tag":584,"props":2468,"children":2469},{},[2470],{"type":588,"value":2471},"The third test proves backend isolation. The first proves route UX.",{"title":2473,"searchDepth":2474,"depth":2474,"links":2475},"",4,[2476,2478,2479,2480,2481],{"id":593,"depth":2477,"text":596},2,{"id":908,"depth":2477,"text":911},{"id":2020,"depth":2477,"text":2023},{"id":2213,"depth":2477,"text":2216},{"id":2432,"depth":2477,"text":2435},"markdown","docs",{"source":2485,"path":2486,"stem":2487,"dir":2488,"extension":2489},"content","docs\u002F3.get-started\u002F6.protect-data.md","docs\u002F3.get-started\u002F6.protect-data","get-started","md",{"requestedPath":164,"resolvedPath":164,"alternates":2491},[],{"requested":2493,"resolved":2494,"usedFallback":6},{"locale":8},{"locale":8},{"previous":2496,"next":2498},{"title":152,"id":153,"canonicalKey":154,"locale":8,"draft":6,"navigation":2497,"icon":156,"path":157},{"icon":156},{"title":166,"id":167,"canonicalKey":168,"locale":8,"draft":6,"navigation":2499,"icon":170,"path":171},{"icon":170},{"left":2501,"top":2501,"width":2502,"height":2502,"rotate":2501,"vFlip":6,"hFlip":6,"body":2503},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":2501,"top":2501,"width":2502,"height":2505,"rotate":2501,"vFlip":6,"hFlip":6,"body":2506},168,"\u003Cpath fill=\"#00dc82\" d=\"M143.618 167.029h95.166c3.023 0 5.992-.771 8.61-2.237a16.96 16.96 0 0 0 6.302-6.115a16.3 16.3 0 0 0 2.304-8.352c0-2.932-.799-5.811-2.312-8.35L189.778 34.6a16.97 16.97 0 0 0-6.301-6.113a17.6 17.6 0 0 0-8.608-2.238c-3.023 0-5.991.772-8.609 2.238a16.96 16.96 0 0 0-6.3 6.113l-16.342 27.473l-31.95-53.724a17 17 0 0 0-6.304-6.112A17.64 17.64 0 0 0 96.754 0c-3.022 0-5.992.772-8.61 2.237a17 17 0 0 0-6.303 6.112L2.31 141.975a16.3 16.3 0 0 0-2.31 8.35c0 2.932.793 5.813 2.304 8.352a16.96 16.96 0 0 0 6.302 6.115a17.6 17.6 0 0 0 8.61 2.237h59.737c23.669 0 41.123-10.084 53.134-29.758l29.159-48.983l15.618-26.215l46.874 78.742h-62.492zm-67.64-26.24l-41.688-.01L96.782 35.796l31.181 52.492l-20.877 35.084c-7.976 12.765-17.037 17.416-31.107 17.416\"\u002F>",{"left":2501,"top":2501,"width":2502,"height":2508,"rotate":2501,"vFlip":6,"hFlip":6,"body":2509},221,"\u003Cpath fill=\"#41b883\" d=\"M204.8 0H256L128 220.8L0 0h97.92L128 51.2L157.44 0z\"\u002F>\u003Cpath fill=\"#41b883\" d=\"m0 0l128 220.8L256 0h-51.2L128 132.48L50.56 0z\"\u002F>\u003Cpath fill=\"#35495e\" d=\"M50.56 0L128 133.12L204.8 0h-47.36L128 51.2L97.92 0z\"\u002F>",{"left":2501,"top":2501,"width":2511,"height":2511,"rotate":2501,"vFlip":6,"hFlip":6,"body":2512},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>",1784196942868]