[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-appwrite-appwrite-typescript":3,"mdc-plwpzp-key":39,"related-org-appwrite-appwrite-typescript":15186,"related-repo-appwrite-appwrite-typescript":15354},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":29,"repoUrl":30,"updatedAt":31,"license":32,"forks":33,"topics":34,"repo":35,"sourceUrl":37,"mdContent":38},"appwrite-typescript","build applications with Appwrite TypeScript SDK","Appwrite TypeScript SDK skill. Use when building browser-based JavaScript\u002FTypeScript apps, React Native mobile apps, or server-side Node.js\u002FDeno backends with Appwrite. Covers client-side auth (email, OAuth, anonymous), database queries, file uploads, real-time subscriptions, and server-side admin via API keys for user management, database administration, storage, and functions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"appwrite","Appwrite","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fappwrite.png",[12,16,19,22,25,28],{"name":13,"slug":14,"type":15},"Auth","auth","tag",{"name":17,"slug":18,"type":15},"Node.js","node-js",{"name":20,"slug":21,"type":15},"TypeScript","typescript",{"name":23,"slug":24,"type":15},"JavaScript","javascript",{"name":26,"slug":27,"type":15},"Database","database",{"name":9,"slug":8,"type":15},23,"https:\u002F\u002Fgithub.com\u002Fappwrite\u002Fskills","2026-07-12T08:45:31.181727",null,0,[],{"repoUrl":30,"stars":29,"forks":33,"topics":36,"description":32},[],"https:\u002F\u002Fgithub.com\u002Fappwrite\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fappwrite-typescript","---\nname: appwrite-typescript\ndescription: Appwrite TypeScript SDK skill. Use when building browser-based JavaScript\u002FTypeScript apps, React Native mobile apps, or server-side Node.js\u002FDeno backends with Appwrite. Covers client-side auth (email, OAuth, anonymous), database queries, file uploads, real-time subscriptions, and server-side admin via API keys for user management, database administration, storage, and functions.\n---\n\n\n# Appwrite TypeScript SDK\n\n## Installation\n\n```bash\n# Web\nnpm install appwrite\n\n# React Native\nnpm install react-native-appwrite\n\n# Node.js \u002F Deno\nnpm install node-appwrite\n```\n\n## Setting Up the Client\n\n### Client-side (Web \u002F React Native)\n\n```typescript\n\u002F\u002F Web\nimport { Client, Account, TablesDB, Storage, ID, Query } from 'appwrite';\n\n\u002F\u002F React Native\nimport { Client, Account, TablesDB, Storage, ID, Query } from 'react-native-appwrite';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n```\n\n### Server-side (Node.js \u002F Deno)\n\n```typescript\nimport { Client, Users, TablesDB, Storage, Functions, ID, Query } from 'node-appwrite';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject(process.env.APPWRITE_PROJECT_ID)\n    .setKey(process.env.APPWRITE_API_KEY);\n```\n\n## Code Examples\n\n### Authentication (client-side)\n\n```typescript\nconst account = new Account(client);\n\n\u002F\u002F Email signup\nawait account.create({\n    userId: ID.unique(),\n    email: 'user@example.com',\n    password: 'password123',\n    name: 'User Name'\n});\n\n\u002F\u002F Email login\nconst session = await account.createEmailPasswordSession({\n    email: 'user@example.com',\n    password: 'password123'\n});\n\n\u002F\u002F OAuth login (Web)\naccount.createOAuth2Session({\n    provider: OAuthProvider.Github,\n    success: 'https:\u002F\u002Fexample.com\u002Fsuccess',\n    failure: 'https:\u002F\u002Fexample.com\u002Ffail',\n    scopes: ['repo', 'user'] \u002F\u002F optional — provider-specific scopes\n});\n\n\u002F\u002F Get current user\nconst user = await account.get();\n\n\u002F\u002F Logout\nawait account.deleteSession({ sessionId: 'current' });\n```\n\n### OAuth 2 Login (React Native)\n\n> **Important:** `createOAuth2Session()` does **not** work on React Native. You must use `createOAuth2Token()` with deep linking instead.\n\n#### Setup\n\nInstall the required dependencies:\n\n```bash\nnpx expo install react-native-appwrite react-native-url-polyfill\nnpm install expo-auth-session expo-web-browser expo-linking\n```\n\nSet the URL scheme in your `app.json`:\n\n```json\n{\n  \"expo\": {\n    \"scheme\": \"appwrite-callback-[PROJECT_ID]\"\n  }\n}\n```\n\n#### OAuth Flow\n\n```typescript\nimport { Client, Account, OAuthProvider } from 'react-native-appwrite';\nimport { makeRedirectUri } from 'expo-auth-session';\nimport * as WebBrowser from 'expo-web-browser';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n\nconst account = new Account(client);\n\nasync function oauthLogin(provider: OAuthProvider) {\n    \u002F\u002F Create deep link that works across Expo environments\n    const deepLink = new URL(makeRedirectUri({ preferLocalhost: true }));\n    const scheme = `${deepLink.protocol}\u002F\u002F`; \u002F\u002F e.g. 'exp:\u002F\u002F' or 'appwrite-callback-[PROJECT_ID]:\u002F\u002F'\n\n    \u002F\u002F Get the OAuth login URL\n    const loginUrl = await account.createOAuth2Token({\n        provider,\n        success: `${deepLink}`,\n        failure: `${deepLink}`,\n    });\n\n    \u002F\u002F Open browser and listen for the scheme redirect\n    const result = await WebBrowser.openAuthSessionAsync(`${loginUrl}`, scheme);\n\n    if (result.type !== 'success') return;\n\n    \u002F\u002F Extract credentials from the redirect URL\n    const url = new URL(result.url);\n    const secret = url.searchParams.get('secret');\n    const userId = url.searchParams.get('userId');\n\n    \u002F\u002F Create session with the OAuth credentials\n    await account.createSession({ userId, secret });\n}\n\n\u002F\u002F Usage\nawait oauthLogin(OAuthProvider.Github);\nawait oauthLogin(OAuthProvider.Google);\n```\n\n### User Management (server-side)\n\n```typescript\nconst users = new Users(client);\n\n\u002F\u002F Create user\nconst user = await users.create({\n    userId: ID.unique(),\n    email: 'user@example.com',\n    password: 'password123',\n    name: 'User Name'\n});\n\n\u002F\u002F List users\nconst list = await users.list({ queries: [Query.limit(25)] });\n\n\u002F\u002F Get user\nconst fetched = await users.get({ userId: '[USER_ID]' });\n\n\u002F\u002F Delete user\nawait users.delete({ userId: '[USER_ID]' });\n```\n\n### Database Operations\n\n> **Note:** Use `TablesDB` (not the deprecated `Databases` class) for all new code. Only use `Databases` if the existing codebase already relies on it or the user explicitly requests it.\n>\n> **Tip:** Prefer the object-params calling style (e.g., `{ databaseId: '...' }`) for all SDK method calls. Only use positional arguments if the existing codebase already uses them or the user explicitly requests it.\n\n```typescript\nconst tablesDB = new TablesDB(client);\n\n\u002F\u002F Create database (server-side only)\nconst db = await tablesDB.create({ databaseId: ID.unique(), name: 'My Database' });\n\n\u002F\u002F Create table (server-side only)\nconst col = await tablesDB.createTable({\n    databaseId: '[DATABASE_ID]',\n    tableId: ID.unique(),\n    name: 'My Table'\n});\n\n\u002F\u002F Create row\nconst doc = await tablesDB.createRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: ID.unique(),\n    data: { title: 'Hello World', content: 'Example content' }\n});\n\n\u002F\u002F List rows with query\nconst results = await tablesDB.listRows({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    queries: [Query.equal('status', 'active'), Query.limit(10)]\n});\n\n\u002F\u002F Get row\nconst row = await tablesDB.getRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]'\n});\n\n\u002F\u002F Update row\nawait tablesDB.updateRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]',\n    data: { title: 'Updated Title' }\n});\n\n\u002F\u002F Delete row\nawait tablesDB.deleteRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]'\n});\n```\n\n#### String Column Types\n\n> **Note:** The legacy `string` type is deprecated. Use explicit column types for all new columns.\n\n| Type | Max characters | Indexing | Storage |\n|------|---------------|----------|---------|\n| `varchar` | 16,383 | Full index (if size ≤ 768) | Inline in row |\n| `text` | 16,383 | Prefix only | Off-page |\n| `mediumtext` | 4,194,303 | Prefix only | Off-page |\n| `longtext` | 1,073,741,823 | Prefix only | Off-page |\n\n- `varchar` is stored inline and counts towards the 64 KB row size limit. Prefer for short, indexed fields like names, slugs, or identifiers.\n- `text`, `mediumtext`, and `longtext` are stored off-page (only a 20-byte pointer lives in the row), so they don't consume the row size budget. `size` is not required for these types.\n\n```typescript\n\u002F\u002F Create table with explicit string column types\nawait tablesDB.createTable({\n    databaseId: '[DATABASE_ID]',\n    tableId: ID.unique(),\n    name: 'articles',\n    columns: [\n        { key: 'title',    type: 'varchar',    size: 255, required: true  },  \u002F\u002F inline, fully indexable\n        { key: 'summary',  type: 'text',                  required: false },  \u002F\u002F off-page, prefix index only\n        { key: 'body',     type: 'mediumtext',            required: false },  \u002F\u002F up to ~4 M chars\n        { key: 'raw_data', type: 'longtext',              required: false },  \u002F\u002F up to ~1 B chars\n    ]\n});\n```\n\n#### TypeScript Generics\n\n```typescript\nimport { Models } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n\n\u002F\u002F Define a typed interface for your row data\ninterface Todo {\n    title: string;\n    done: boolean;\n    priority: number;\n}\n\n\u002F\u002F listRows returns Models.DocumentList\u003CModels.Document> by default\n\u002F\u002F Cast or use generics for typed results\nconst results = await tablesDB.listRows({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    queries: [Query.equal('done', false)]\n});\n\n\u002F\u002F Each document includes built-in fields alongside your data\nconst doc = results.documents[0];\ndoc.$id;            \u002F\u002F string — unique row ID\ndoc.$createdAt;     \u002F\u002F string — ISO 8601 creation timestamp\ndoc.$updatedAt;     \u002F\u002F string — ISO 8601 update timestamp\ndoc.$permissions;   \u002F\u002F string[] — permission strings\ndoc.$databaseId;    \u002F\u002F string\ndoc.$collectionId;  \u002F\u002F string\n\n\u002F\u002F Common model types\n\u002F\u002F Models.User\u003CPreferences>  — user account\n\u002F\u002F Models.Session             — auth session\n\u002F\u002F Models.File                — storage file metadata\n\u002F\u002F Models.Team                — team object\n\u002F\u002F Models.Execution           — function execution result\n\u002F\u002F Models.DocumentList\u003CT>     — paginated list with total count\n```\n\n### Query Methods\n\n```typescript\n\u002F\u002F Filtering\nQuery.equal('field', 'value')           \u002F\u002F field == value (or pass array for IN)\nQuery.notEqual('field', 'value')        \u002F\u002F field != value\nQuery.lessThan('field', 100)            \u002F\u002F field \u003C value\nQuery.lessThanEqual('field', 100)       \u002F\u002F field \u003C= value\nQuery.greaterThan('field', 100)         \u002F\u002F field > value\nQuery.greaterThanEqual('field', 100)    \u002F\u002F field >= value\nQuery.between('field', 1, 100)          \u002F\u002F 1 \u003C= field \u003C= 100\nQuery.isNull('field')                   \u002F\u002F field is null\nQuery.isNotNull('field')                \u002F\u002F field is not null\nQuery.startsWith('field', 'prefix')     \u002F\u002F string starts with prefix\nQuery.endsWith('field', 'suffix')       \u002F\u002F string ends with suffix\nQuery.contains('field', 'substring')    \u002F\u002F string\u002Farray contains value\nQuery.search('field', 'keywords')       \u002F\u002F full-text search (requires full-text index)\n\n\u002F\u002F Sorting\nQuery.orderAsc('field')                 \u002F\u002F sort ascending\nQuery.orderDesc('field')                \u002F\u002F sort descending\n\n\u002F\u002F Pagination\nQuery.limit(25)                         \u002F\u002F max rows returned (default 25, max 100)\nQuery.offset(0)                         \u002F\u002F skip N rows\nQuery.cursorAfter('[ROW_ID]')           \u002F\u002F paginate after this row ID (preferred for large datasets)\nQuery.cursorBefore('[ROW_ID]')          \u002F\u002F paginate before this row ID\n\n\u002F\u002F Selection\nQuery.select(['field1', 'field2'])      \u002F\u002F return only specified fields\n\n\u002F\u002F Logical\nQuery.or([Query.equal('a', 1), Query.equal('b', 2)])   \u002F\u002F OR condition\nQuery.and([Query.greaterThan('age', 18), Query.lessThan('age', 65)])  \u002F\u002F explicit AND (queries are AND by default)\n```\n\n### File Storage\n\n```typescript\nconst storage = new Storage(client);\n\n\u002F\u002F Upload file (client-side — from file input)\nconst file = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: document.getElementById('file-input').files[0]\n});\n\n\u002F\u002F Upload file (server-side — from path)\nimport { InputFile } from 'node-appwrite\u002Ffile';\n\nconst file2 = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: InputFile.fromPath('\u002Fpath\u002Fto\u002Ffile.png', 'file.png')\n});\n\n\u002F\u002F List files\nconst files = await storage.listFiles({ bucketId: '[BUCKET_ID]' });\n\n\u002F\u002F Get file preview (image)\nconst preview = storage.getFilePreview({\n    bucketId: '[BUCKET_ID]',\n    fileId: '[FILE_ID]',\n    width: 300,\n    height: 300\n});\n\n\u002F\u002F Download file\nconst download = await storage.getFileDownload({\n    bucketId: '[BUCKET_ID]',\n    fileId: '[FILE_ID]'\n});\n\n\u002F\u002F Delete file\nawait storage.deleteFile({ bucketId: '[BUCKET_ID]', fileId: '[FILE_ID]' });\n```\n\n#### InputFile Factory Methods (server-side)\n\n```typescript\nimport { InputFile } from 'node-appwrite\u002Ffile';\n\nInputFile.fromPath('\u002Fpath\u002Fto\u002Ffile.png', 'file.png')          \u002F\u002F from filesystem path\nInputFile.fromBuffer(buffer, 'file.png')                       \u002F\u002F from Buffer\nInputFile.fromStream(readableStream, 'file.png', size)         \u002F\u002F from ReadableStream (size in bytes required)\nInputFile.fromPlainText('Hello world', 'hello.txt')            \u002F\u002F from string content\n```\n\n### Teams\n\n```typescript\nconst teams = new Teams(client);\n\n\u002F\u002F Create team\nconst team = await teams.create({ teamId: ID.unique(), name: 'Engineering' });\n\n\u002F\u002F List teams\nconst list = await teams.list();\n\n\u002F\u002F Create membership (invite a user by email)\nconst membership = await teams.createMembership({\n    teamId: '[TEAM_ID]',\n    roles: ['editor'],\n    email: 'user@example.com',\n});\n\n\u002F\u002F List memberships\nconst members = await teams.listMemberships({ teamId: '[TEAM_ID]' });\n\n\u002F\u002F Update membership roles\nawait teams.updateMembership({\n    teamId: '[TEAM_ID]',\n    membershipId: '[MEMBERSHIP_ID]',\n    roles: ['admin'],\n});\n\n\u002F\u002F Delete team\nawait teams.delete({ teamId: '[TEAM_ID]' });\n```\n\n> **Role-based access:** Use `Role.team('[TEAM_ID]')` for all team members or `Role.team('[TEAM_ID]', 'editor')` for a specific team role when setting permissions.\n\n### Real-time Subscriptions (client-side)\n\n```typescript\nimport { Realtime, Channel } from 'appwrite';\n\nconst realtime = new Realtime(client);\n\n\u002F\u002F Subscribe to row changes\nconst subscription = await realtime.subscribe(\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row(),\n    (response) => {\n        console.log(response.events);   \u002F\u002F e.g. ['tablesdb.*.tables.*.rows.*.create']\n        console.log(response.payload);  \u002F\u002F the affected resource\n    }\n);\n\n\u002F\u002F Subscribe to a specific row\nawait realtime.subscribe(\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row('[ROW_ID]'),\n    (response) => { \u002F* ... *\u002F }\n);\n\n\u002F\u002F Subscribe to multiple channels\nawait realtime.subscribe([\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row(),\n    Channel.bucket('[BUCKET_ID]').file(),\n], (response) => { \u002F* ... *\u002F });\n\n\u002F\u002F Unsubscribe\nawait subscription.close();\n```\n\n**Available channels:**\n\n| Channel | Description |\n|---------|-------------|\n| `account` | Changes to the authenticated user's account |\n| `tablesdb.[DB_ID].tables.[TABLE_ID].rows` | All rows in a table |\n| `tablesdb.[DB_ID].tables.[TABLE_ID].rows.[ROW_ID]` | A specific row |\n| `buckets.[BUCKET_ID].files` | All files in a bucket |\n| `buckets.[BUCKET_ID].files.[FILE_ID]` | A specific file |\n| `teams` | Changes to teams the user belongs to |\n| `teams.[TEAM_ID]` | Changes to a specific team |\n| `memberships` | Changes to the user's team memberships |\n| `memberships.[MEMBERSHIP_ID]` | A specific membership |\n| `functions.[FUNCTION_ID].executions` | Execution updates for a function |\n\nThe `response` object includes: `events` (array of event strings), `payload` (the affected resource), `channels` (channels matched), and `timestamp` (ISO 8601).\n\n### Serverless Functions (server-side)\n\n```typescript\nconst functions = new Functions(client);\n\n\u002F\u002F Execute function\nconst execution = await functions.createExecution({\n    functionId: '[FUNCTION_ID]',\n    body: JSON.stringify({ key: 'value' })\n});\n\n\u002F\u002F List executions\nconst executions = await functions.listExecutions({ functionId: '[FUNCTION_ID]' });\n```\n\n#### Writing a Function Handler (Node.js runtime)\n\nWhen deploying your own Appwrite Function, the entry point file must export a default async function:\n\n```typescript\n\u002F\u002F src\u002Fmain.js (or src\u002Fmain.ts)\nexport default async ({ req, res, log, error }) => {\n    \u002F\u002F Request properties\n    \u002F\u002F req.body        — raw request body (string)\n    \u002F\u002F req.bodyJson    — parsed JSON body (object, or undefined if not JSON)\n    \u002F\u002F req.headers     — request headers (object)\n    \u002F\u002F req.method      — HTTP method (GET, POST, PUT, DELETE, PATCH)\n    \u002F\u002F req.path        — URL path (e.g. '\u002Fhello')\n    \u002F\u002F req.query       — parsed query parameters (object)\n    \u002F\u002F req.queryString — raw query string\n\n    log('Processing request: ' + req.method + ' ' + req.path);\n\n    if (req.method === 'GET') {\n        return res.json({ message: 'Hello from Appwrite Function!' });\n    }\n\n    const data = req.bodyJson;\n    if (!data?.name) {\n        error('Missing name field');\n        return res.json({ error: 'Name is required' }, 400);\n    }\n\n    \u002F\u002F Response methods\n    return res.json({ success: true });                    \u002F\u002F JSON (sets Content-Type automatically)\n    \u002F\u002F return res.text('Hello');                           \u002F\u002F plain text\n    \u002F\u002F return res.empty();                                 \u002F\u002F 204 No Content\n    \u002F\u002F return res.redirect('https:\u002F\u002Fexample.com');         \u002F\u002F 302 Redirect\n    \u002F\u002F return res.send('data', 200, { 'X-Custom': '1' }); \u002F\u002F custom body, status, headers\n};\n```\n\n### Server-Side Rendering (SSR) Authentication\n\nSSR apps (Next.js, SvelteKit, Nuxt, Remix, Astro) use the **server SDK** (`node-appwrite`) to handle auth. You need two clients:\n\n- **Admin client** — uses an API key, creates sessions, bypasses rate limits (reusable singleton)\n- **Session client** — uses a session cookie, acts on behalf of a user (create per-request, never share)\n\n```typescript\nimport { Client, Account, OAuthProvider } from 'node-appwrite';\n\n\u002F\u002F Admin client (reusable)\nconst adminClient = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]')\n    .setKey(process.env.APPWRITE_API_KEY);\n\n\u002F\u002F Session client (create per-request)\nconst sessionClient = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n\nconst session = req.cookies['a_session_[PROJECT_ID]'];\nif (session) {\n    sessionClient.setSession(session);\n}\n```\n\n#### Email\u002FPassword Login\n\n```typescript\napp.post('\u002Flogin', async (req, res) => {\n    const account = new Account(adminClient);\n    const session = await account.createEmailPasswordSession({\n        email: req.body.email,\n        password: req.body.password,\n    });\n\n    \u002F\u002F Cookie name must be a_session_\u003CPROJECT_ID>\n    res.cookie('a_session_[PROJECT_ID]', session.secret, {\n        httpOnly: true,\n        secure: true,\n        sameSite: 'strict',\n        expires: new Date(session.expire),\n        path: '\u002F',\n    });\n\n    res.json({ success: true });\n});\n```\n\n#### Authenticated Requests\n\n```typescript\napp.get('\u002Fuser', async (req, res) => {\n    const session = req.cookies['a_session_[PROJECT_ID]'];\n    if (!session) return res.status(401).json({ error: 'Unauthorized' });\n\n    \u002F\u002F Create a fresh session client per request\n    const sessionClient = new Client()\n        .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n        .setProject('[PROJECT_ID]')\n        .setSession(session);\n\n    const account = new Account(sessionClient);\n    const user = await account.get();\n    res.json(user);\n});\n```\n\n#### OAuth2 SSR Flow\n\n```typescript\n\u002F\u002F Step 1: Redirect to OAuth provider\napp.get('\u002Foauth', async (req, res) => {\n    const account = new Account(adminClient);\n    const redirectUrl = await account.createOAuth2Token({\n        provider: OAuthProvider.Github,\n        success: 'https:\u002F\u002Fexample.com\u002Foauth\u002Fsuccess',\n        failure: 'https:\u002F\u002Fexample.com\u002Foauth\u002Ffailure',\n    });\n    res.redirect(redirectUrl);\n});\n\n\u002F\u002F Step 2: Handle callback — exchange token for session\napp.get('\u002Foauth\u002Fsuccess', async (req, res) => {\n    const account = new Account(adminClient);\n    const session = await account.createSession({\n        userId: req.query.userId,\n        secret: req.query.secret,\n    });\n\n    res.cookie('a_session_[PROJECT_ID]', session.secret, {\n        httpOnly: true, secure: true, sameSite: 'strict',\n        expires: new Date(session.expire), path: '\u002F',\n    });\n    res.json({ success: true });\n});\n```\n\n> **Cookie security:** Always use `httpOnly`, `secure`, and `sameSite: 'strict'` to prevent XSS. The cookie name must be `a_session_\u003CPROJECT_ID>`.\n\n> **Forwarding user agent:** Call `sessionClient.setForwardedUserAgent(req.headers['user-agent'])` to record the end-user's browser info for debugging and security.\n\n## Error Handling\n\n```typescript\nimport { AppwriteException } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n\ntry {\n    const doc = await tablesDB.getRow({\n        databaseId: '[DATABASE_ID]',\n        tableId: '[TABLE_ID]',\n        rowId: '[ROW_ID]',\n    });\n} catch (err) {\n    if (err instanceof AppwriteException) {\n        console.log(err.message);   \u002F\u002F human-readable error message\n        console.log(err.code);      \u002F\u002F HTTP status code (number)\n        console.log(err.type);      \u002F\u002F Appwrite error type string (e.g. 'document_not_found')\n        console.log(err.response);  \u002F\u002F full response body (object)\n    }\n}\n```\n\n**Common error codes:**\n\n| Code | Meaning |\n|------|---------|\n| `401` | Unauthorized — missing or invalid session\u002FAPI key |\n| `403` | Forbidden — insufficient permissions for this action |\n| `404` | Not found — resource does not exist |\n| `409` | Conflict — duplicate ID or unique constraint violation |\n| `429` | Rate limited — too many requests, retry after backoff |\n\n## Permissions & Roles (Critical)\n\nAppwrite uses permission strings to control access to resources. Each permission pairs an action (`read`, `update`, `delete`, `create`, or `write` which grants create + update + delete) with a role target. By default, **no user has access** unless permissions are explicitly set at the row\u002Ffile level or inherited from the table\u002Fbucket settings. Permissions are arrays of strings built with the `Permission` and `Role` helpers.\n\n```typescript\nimport { Permission, Role } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n```\n\n### Database Row with Permissions\n\n```typescript\nconst doc = await tablesDB.createRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: ID.unique(),\n    data: { title: 'Hello World' },\n    permissions: [\n        Permission.read(Role.user('[USER_ID]')),     \u002F\u002F specific user can read\n        Permission.update(Role.user('[USER_ID]')),   \u002F\u002F specific user can update\n        Permission.read(Role.team('[TEAM_ID]')),     \u002F\u002F all team members can read\n        Permission.read(Role.any()),                 \u002F\u002F anyone (including guests) can read\n    ]\n});\n```\n\n### File Upload with Permissions\n\n```typescript\nconst file = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: document.getElementById('file-input').files[0],\n    permissions: [\n        Permission.read(Role.any()),\n        Permission.update(Role.user('[USER_ID]')),\n        Permission.delete(Role.user('[USER_ID]')),\n    ]\n});\n```\n\n> **When to set permissions:** Set row\u002Ffile-level permissions when you need per-resource access control. If all rows in a table share the same rules, configure permissions at the table\u002Fbucket level and leave row permissions empty.\n\n> **Common mistakes:**\n> - **Forgetting permissions** — the resource becomes inaccessible to all users (including the creator)\n> - **`Role.any()` with `write`\u002F`update`\u002F`delete`** — allows any user, including unauthenticated guests, to modify or remove the resource\n> - **`Permission.read(Role.any())` on sensitive data** — makes the resource publicly readable\n\n",{"data":40,"body":41},{"name":4,"description":6},{"type":42,"children":43},"root",[44,53,60,175,181,188,511,517,751,757,763,1461,1467,1506,1513,1518,1578,1590,1685,1691,2800,2806,3292,3298,3352,4583,4589,4609,4749,4796,5303,5309,5921,5927,7208,7214,8159,8165,8432,8438,9126,9154,9160,9966,9974,10164,10206,10212,10503,10509,10514,11191,11197,11215,11238,11663,11669,12215,12221,12716,12722,13547,13589,13610,13616,14073,14081,14187,14193,14256,14319,14325,14747,14753,15094,15107,15180],{"type":45,"tag":46,"props":47,"children":49},"element","h1",{"id":48},"appwrite-typescript-sdk",[50],{"type":51,"value":52},"text","Appwrite TypeScript SDK",{"type":45,"tag":54,"props":55,"children":57},"h2",{"id":56},"installation",[58],{"type":51,"value":59},"Installation",{"type":45,"tag":61,"props":62,"children":67},"pre",{"className":63,"code":64,"language":65,"meta":66,"style":66},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Web\nnpm install appwrite\n\n# React Native\nnpm install react-native-appwrite\n\n# Node.js \u002F Deno\nnpm install node-appwrite\n","bash","",[68],{"type":45,"tag":69,"props":70,"children":71},"code",{"__ignoreMap":66},[72,84,105,115,124,141,149,158],{"type":45,"tag":73,"props":74,"children":77},"span",{"class":75,"line":76},"line",1,[78],{"type":45,"tag":73,"props":79,"children":81},{"style":80},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[82],{"type":51,"value":83},"# Web\n",{"type":45,"tag":73,"props":85,"children":87},{"class":75,"line":86},2,[88,94,100],{"type":45,"tag":73,"props":89,"children":91},{"style":90},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[92],{"type":51,"value":93},"npm",{"type":45,"tag":73,"props":95,"children":97},{"style":96},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[98],{"type":51,"value":99}," install",{"type":45,"tag":73,"props":101,"children":102},{"style":96},[103],{"type":51,"value":104}," appwrite\n",{"type":45,"tag":73,"props":106,"children":108},{"class":75,"line":107},3,[109],{"type":45,"tag":73,"props":110,"children":112},{"emptyLinePlaceholder":111},true,[113],{"type":51,"value":114},"\n",{"type":45,"tag":73,"props":116,"children":118},{"class":75,"line":117},4,[119],{"type":45,"tag":73,"props":120,"children":121},{"style":80},[122],{"type":51,"value":123},"# React Native\n",{"type":45,"tag":73,"props":125,"children":127},{"class":75,"line":126},5,[128,132,136],{"type":45,"tag":73,"props":129,"children":130},{"style":90},[131],{"type":51,"value":93},{"type":45,"tag":73,"props":133,"children":134},{"style":96},[135],{"type":51,"value":99},{"type":45,"tag":73,"props":137,"children":138},{"style":96},[139],{"type":51,"value":140}," react-native-appwrite\n",{"type":45,"tag":73,"props":142,"children":144},{"class":75,"line":143},6,[145],{"type":45,"tag":73,"props":146,"children":147},{"emptyLinePlaceholder":111},[148],{"type":51,"value":114},{"type":45,"tag":73,"props":150,"children":152},{"class":75,"line":151},7,[153],{"type":45,"tag":73,"props":154,"children":155},{"style":80},[156],{"type":51,"value":157},"# Node.js \u002F Deno\n",{"type":45,"tag":73,"props":159,"children":161},{"class":75,"line":160},8,[162,166,170],{"type":45,"tag":73,"props":163,"children":164},{"style":90},[165],{"type":51,"value":93},{"type":45,"tag":73,"props":167,"children":168},{"style":96},[169],{"type":51,"value":99},{"type":45,"tag":73,"props":171,"children":172},{"style":96},[173],{"type":51,"value":174}," node-appwrite\n",{"type":45,"tag":54,"props":176,"children":178},{"id":177},"setting-up-the-client",[179],{"type":51,"value":180},"Setting Up the Client",{"type":45,"tag":182,"props":183,"children":185},"h3",{"id":184},"client-side-web-react-native",[186],{"type":51,"value":187},"Client-side (Web \u002F React Native)",{"type":45,"tag":61,"props":189,"children":192},{"className":190,"code":191,"language":21,"meta":66,"style":66},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Web\nimport { Client, Account, TablesDB, Storage, ID, Query } from 'appwrite';\n\n\u002F\u002F React Native\nimport { Client, Account, TablesDB, Storage, ID, Query } from 'react-native-appwrite';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n",[193],{"type":45,"tag":69,"props":194,"children":195},{"__ignoreMap":66},[196,204,300,307,315,395,402,436,472],{"type":45,"tag":73,"props":197,"children":198},{"class":75,"line":76},[199],{"type":45,"tag":73,"props":200,"children":201},{"style":80},[202],{"type":51,"value":203},"\u002F\u002F Web\n",{"type":45,"tag":73,"props":205,"children":206},{"class":75,"line":86},[207,213,219,225,230,235,239,244,248,253,257,262,266,271,276,281,286,290,295],{"type":45,"tag":73,"props":208,"children":210},{"style":209},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[211],{"type":51,"value":212},"import",{"type":45,"tag":73,"props":214,"children":216},{"style":215},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[217],{"type":51,"value":218}," {",{"type":45,"tag":73,"props":220,"children":222},{"style":221},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[223],{"type":51,"value":224}," Client",{"type":45,"tag":73,"props":226,"children":227},{"style":215},[228],{"type":51,"value":229},",",{"type":45,"tag":73,"props":231,"children":232},{"style":221},[233],{"type":51,"value":234}," Account",{"type":45,"tag":73,"props":236,"children":237},{"style":215},[238],{"type":51,"value":229},{"type":45,"tag":73,"props":240,"children":241},{"style":221},[242],{"type":51,"value":243}," TablesDB",{"type":45,"tag":73,"props":245,"children":246},{"style":215},[247],{"type":51,"value":229},{"type":45,"tag":73,"props":249,"children":250},{"style":221},[251],{"type":51,"value":252}," Storage",{"type":45,"tag":73,"props":254,"children":255},{"style":215},[256],{"type":51,"value":229},{"type":45,"tag":73,"props":258,"children":259},{"style":221},[260],{"type":51,"value":261}," ID",{"type":45,"tag":73,"props":263,"children":264},{"style":215},[265],{"type":51,"value":229},{"type":45,"tag":73,"props":267,"children":268},{"style":221},[269],{"type":51,"value":270}," Query",{"type":45,"tag":73,"props":272,"children":273},{"style":215},[274],{"type":51,"value":275}," }",{"type":45,"tag":73,"props":277,"children":278},{"style":209},[279],{"type":51,"value":280}," from",{"type":45,"tag":73,"props":282,"children":283},{"style":215},[284],{"type":51,"value":285}," '",{"type":45,"tag":73,"props":287,"children":288},{"style":96},[289],{"type":51,"value":8},{"type":45,"tag":73,"props":291,"children":292},{"style":215},[293],{"type":51,"value":294},"'",{"type":45,"tag":73,"props":296,"children":297},{"style":215},[298],{"type":51,"value":299},";\n",{"type":45,"tag":73,"props":301,"children":302},{"class":75,"line":107},[303],{"type":45,"tag":73,"props":304,"children":305},{"emptyLinePlaceholder":111},[306],{"type":51,"value":114},{"type":45,"tag":73,"props":308,"children":309},{"class":75,"line":117},[310],{"type":45,"tag":73,"props":311,"children":312},{"style":80},[313],{"type":51,"value":314},"\u002F\u002F React Native\n",{"type":45,"tag":73,"props":316,"children":317},{"class":75,"line":126},[318,322,326,330,334,338,342,346,350,354,358,362,366,370,374,378,382,387,391],{"type":45,"tag":73,"props":319,"children":320},{"style":209},[321],{"type":51,"value":212},{"type":45,"tag":73,"props":323,"children":324},{"style":215},[325],{"type":51,"value":218},{"type":45,"tag":73,"props":327,"children":328},{"style":221},[329],{"type":51,"value":224},{"type":45,"tag":73,"props":331,"children":332},{"style":215},[333],{"type":51,"value":229},{"type":45,"tag":73,"props":335,"children":336},{"style":221},[337],{"type":51,"value":234},{"type":45,"tag":73,"props":339,"children":340},{"style":215},[341],{"type":51,"value":229},{"type":45,"tag":73,"props":343,"children":344},{"style":221},[345],{"type":51,"value":243},{"type":45,"tag":73,"props":347,"children":348},{"style":215},[349],{"type":51,"value":229},{"type":45,"tag":73,"props":351,"children":352},{"style":221},[353],{"type":51,"value":252},{"type":45,"tag":73,"props":355,"children":356},{"style":215},[357],{"type":51,"value":229},{"type":45,"tag":73,"props":359,"children":360},{"style":221},[361],{"type":51,"value":261},{"type":45,"tag":73,"props":363,"children":364},{"style":215},[365],{"type":51,"value":229},{"type":45,"tag":73,"props":367,"children":368},{"style":221},[369],{"type":51,"value":270},{"type":45,"tag":73,"props":371,"children":372},{"style":215},[373],{"type":51,"value":275},{"type":45,"tag":73,"props":375,"children":376},{"style":209},[377],{"type":51,"value":280},{"type":45,"tag":73,"props":379,"children":380},{"style":215},[381],{"type":51,"value":285},{"type":45,"tag":73,"props":383,"children":384},{"style":96},[385],{"type":51,"value":386},"react-native-appwrite",{"type":45,"tag":73,"props":388,"children":389},{"style":215},[390],{"type":51,"value":294},{"type":45,"tag":73,"props":392,"children":393},{"style":215},[394],{"type":51,"value":299},{"type":45,"tag":73,"props":396,"children":397},{"class":75,"line":143},[398],{"type":45,"tag":73,"props":399,"children":400},{"emptyLinePlaceholder":111},[401],{"type":51,"value":114},{"type":45,"tag":73,"props":403,"children":404},{"class":75,"line":151},[405,411,416,421,426,431],{"type":45,"tag":73,"props":406,"children":408},{"style":407},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[409],{"type":51,"value":410},"const",{"type":45,"tag":73,"props":412,"children":413},{"style":221},[414],{"type":51,"value":415}," client ",{"type":45,"tag":73,"props":417,"children":418},{"style":215},[419],{"type":51,"value":420},"=",{"type":45,"tag":73,"props":422,"children":423},{"style":215},[424],{"type":51,"value":425}," new",{"type":45,"tag":73,"props":427,"children":429},{"style":428},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[430],{"type":51,"value":224},{"type":45,"tag":73,"props":432,"children":433},{"style":221},[434],{"type":51,"value":435},"()\n",{"type":45,"tag":73,"props":437,"children":438},{"class":75,"line":160},[439,444,449,454,458,463,467],{"type":45,"tag":73,"props":440,"children":441},{"style":215},[442],{"type":51,"value":443},"    .",{"type":45,"tag":73,"props":445,"children":446},{"style":428},[447],{"type":51,"value":448},"setEndpoint",{"type":45,"tag":73,"props":450,"children":451},{"style":221},[452],{"type":51,"value":453},"(",{"type":45,"tag":73,"props":455,"children":456},{"style":215},[457],{"type":51,"value":294},{"type":45,"tag":73,"props":459,"children":460},{"style":96},[461],{"type":51,"value":462},"https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1",{"type":45,"tag":73,"props":464,"children":465},{"style":215},[466],{"type":51,"value":294},{"type":45,"tag":73,"props":468,"children":469},{"style":221},[470],{"type":51,"value":471},")\n",{"type":45,"tag":73,"props":473,"children":475},{"class":75,"line":474},9,[476,480,485,489,493,498,502,507],{"type":45,"tag":73,"props":477,"children":478},{"style":215},[479],{"type":51,"value":443},{"type":45,"tag":73,"props":481,"children":482},{"style":428},[483],{"type":51,"value":484},"setProject",{"type":45,"tag":73,"props":486,"children":487},{"style":221},[488],{"type":51,"value":453},{"type":45,"tag":73,"props":490,"children":491},{"style":215},[492],{"type":51,"value":294},{"type":45,"tag":73,"props":494,"children":495},{"style":96},[496],{"type":51,"value":497},"[PROJECT_ID]",{"type":45,"tag":73,"props":499,"children":500},{"style":215},[501],{"type":51,"value":294},{"type":45,"tag":73,"props":503,"children":504},{"style":221},[505],{"type":51,"value":506},")",{"type":45,"tag":73,"props":508,"children":509},{"style":215},[510],{"type":51,"value":299},{"type":45,"tag":182,"props":512,"children":514},{"id":513},"server-side-nodejs-deno",[515],{"type":51,"value":516},"Server-side (Node.js \u002F Deno)",{"type":45,"tag":61,"props":518,"children":520},{"className":190,"code":519,"language":21,"meta":66,"style":66},"import { Client, Users, TablesDB, Storage, Functions, ID, Query } from 'node-appwrite';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject(process.env.APPWRITE_PROJECT_ID)\n    .setKey(process.env.APPWRITE_API_KEY);\n",[521],{"type":45,"tag":69,"props":522,"children":523},{"__ignoreMap":66},[524,614,621,648,679,714],{"type":45,"tag":73,"props":525,"children":526},{"class":75,"line":76},[527,531,535,539,543,548,552,556,560,564,568,573,577,581,585,589,593,597,601,606,610],{"type":45,"tag":73,"props":528,"children":529},{"style":209},[530],{"type":51,"value":212},{"type":45,"tag":73,"props":532,"children":533},{"style":215},[534],{"type":51,"value":218},{"type":45,"tag":73,"props":536,"children":537},{"style":221},[538],{"type":51,"value":224},{"type":45,"tag":73,"props":540,"children":541},{"style":215},[542],{"type":51,"value":229},{"type":45,"tag":73,"props":544,"children":545},{"style":221},[546],{"type":51,"value":547}," Users",{"type":45,"tag":73,"props":549,"children":550},{"style":215},[551],{"type":51,"value":229},{"type":45,"tag":73,"props":553,"children":554},{"style":221},[555],{"type":51,"value":243},{"type":45,"tag":73,"props":557,"children":558},{"style":215},[559],{"type":51,"value":229},{"type":45,"tag":73,"props":561,"children":562},{"style":221},[563],{"type":51,"value":252},{"type":45,"tag":73,"props":565,"children":566},{"style":215},[567],{"type":51,"value":229},{"type":45,"tag":73,"props":569,"children":570},{"style":221},[571],{"type":51,"value":572}," Functions",{"type":45,"tag":73,"props":574,"children":575},{"style":215},[576],{"type":51,"value":229},{"type":45,"tag":73,"props":578,"children":579},{"style":221},[580],{"type":51,"value":261},{"type":45,"tag":73,"props":582,"children":583},{"style":215},[584],{"type":51,"value":229},{"type":45,"tag":73,"props":586,"children":587},{"style":221},[588],{"type":51,"value":270},{"type":45,"tag":73,"props":590,"children":591},{"style":215},[592],{"type":51,"value":275},{"type":45,"tag":73,"props":594,"children":595},{"style":209},[596],{"type":51,"value":280},{"type":45,"tag":73,"props":598,"children":599},{"style":215},[600],{"type":51,"value":285},{"type":45,"tag":73,"props":602,"children":603},{"style":96},[604],{"type":51,"value":605},"node-appwrite",{"type":45,"tag":73,"props":607,"children":608},{"style":215},[609],{"type":51,"value":294},{"type":45,"tag":73,"props":611,"children":612},{"style":215},[613],{"type":51,"value":299},{"type":45,"tag":73,"props":615,"children":616},{"class":75,"line":86},[617],{"type":45,"tag":73,"props":618,"children":619},{"emptyLinePlaceholder":111},[620],{"type":51,"value":114},{"type":45,"tag":73,"props":622,"children":623},{"class":75,"line":107},[624,628,632,636,640,644],{"type":45,"tag":73,"props":625,"children":626},{"style":407},[627],{"type":51,"value":410},{"type":45,"tag":73,"props":629,"children":630},{"style":221},[631],{"type":51,"value":415},{"type":45,"tag":73,"props":633,"children":634},{"style":215},[635],{"type":51,"value":420},{"type":45,"tag":73,"props":637,"children":638},{"style":215},[639],{"type":51,"value":425},{"type":45,"tag":73,"props":641,"children":642},{"style":428},[643],{"type":51,"value":224},{"type":45,"tag":73,"props":645,"children":646},{"style":221},[647],{"type":51,"value":435},{"type":45,"tag":73,"props":649,"children":650},{"class":75,"line":117},[651,655,659,663,667,671,675],{"type":45,"tag":73,"props":652,"children":653},{"style":215},[654],{"type":51,"value":443},{"type":45,"tag":73,"props":656,"children":657},{"style":428},[658],{"type":51,"value":448},{"type":45,"tag":73,"props":660,"children":661},{"style":221},[662],{"type":51,"value":453},{"type":45,"tag":73,"props":664,"children":665},{"style":215},[666],{"type":51,"value":294},{"type":45,"tag":73,"props":668,"children":669},{"style":96},[670],{"type":51,"value":462},{"type":45,"tag":73,"props":672,"children":673},{"style":215},[674],{"type":51,"value":294},{"type":45,"tag":73,"props":676,"children":677},{"style":221},[678],{"type":51,"value":471},{"type":45,"tag":73,"props":680,"children":681},{"class":75,"line":126},[682,686,690,695,700,705,709],{"type":45,"tag":73,"props":683,"children":684},{"style":215},[685],{"type":51,"value":443},{"type":45,"tag":73,"props":687,"children":688},{"style":428},[689],{"type":51,"value":484},{"type":45,"tag":73,"props":691,"children":692},{"style":221},[693],{"type":51,"value":694},"(process",{"type":45,"tag":73,"props":696,"children":697},{"style":215},[698],{"type":51,"value":699},".",{"type":45,"tag":73,"props":701,"children":702},{"style":221},[703],{"type":51,"value":704},"env",{"type":45,"tag":73,"props":706,"children":707},{"style":215},[708],{"type":51,"value":699},{"type":45,"tag":73,"props":710,"children":711},{"style":221},[712],{"type":51,"value":713},"APPWRITE_PROJECT_ID)\n",{"type":45,"tag":73,"props":715,"children":716},{"class":75,"line":143},[717,721,726,730,734,738,742,747],{"type":45,"tag":73,"props":718,"children":719},{"style":215},[720],{"type":51,"value":443},{"type":45,"tag":73,"props":722,"children":723},{"style":428},[724],{"type":51,"value":725},"setKey",{"type":45,"tag":73,"props":727,"children":728},{"style":221},[729],{"type":51,"value":694},{"type":45,"tag":73,"props":731,"children":732},{"style":215},[733],{"type":51,"value":699},{"type":45,"tag":73,"props":735,"children":736},{"style":221},[737],{"type":51,"value":704},{"type":45,"tag":73,"props":739,"children":740},{"style":215},[741],{"type":51,"value":699},{"type":45,"tag":73,"props":743,"children":744},{"style":221},[745],{"type":51,"value":746},"APPWRITE_API_KEY)",{"type":45,"tag":73,"props":748,"children":749},{"style":215},[750],{"type":51,"value":299},{"type":45,"tag":54,"props":752,"children":754},{"id":753},"code-examples",[755],{"type":51,"value":756},"Code Examples",{"type":45,"tag":182,"props":758,"children":760},{"id":759},"authentication-client-side",[761],{"type":51,"value":762},"Authentication (client-side)",{"type":45,"tag":61,"props":764,"children":766},{"className":190,"code":765,"language":21,"meta":66,"style":66},"const account = new Account(client);\n\n\u002F\u002F Email signup\nawait account.create({\n    userId: ID.unique(),\n    email: 'user@example.com',\n    password: 'password123',\n    name: 'User Name'\n});\n\n\u002F\u002F Email login\nconst session = await account.createEmailPasswordSession({\n    email: 'user@example.com',\n    password: 'password123'\n});\n\n\u002F\u002F OAuth login (Web)\naccount.createOAuth2Session({\n    provider: OAuthProvider.Github,\n    success: 'https:\u002F\u002Fexample.com\u002Fsuccess',\n    failure: 'https:\u002F\u002Fexample.com\u002Ffail',\n    scopes: ['repo', 'user'] \u002F\u002F optional — provider-specific scopes\n});\n\n\u002F\u002F Get current user\nconst user = await account.get();\n\n\u002F\u002F Logout\nawait account.deleteSession({ sessionId: 'current' });\n",[767],{"type":45,"tag":69,"props":768,"children":769},{"__ignoreMap":66},[770,803,810,818,849,886,915,944,970,986,994,1003,1046,1074,1098,1114,1122,1131,1157,1188,1218,1248,1306,1321,1329,1338,1380,1388,1397],{"type":45,"tag":73,"props":771,"children":772},{"class":75,"line":76},[773,777,782,786,790,794,799],{"type":45,"tag":73,"props":774,"children":775},{"style":407},[776],{"type":51,"value":410},{"type":45,"tag":73,"props":778,"children":779},{"style":221},[780],{"type":51,"value":781}," account ",{"type":45,"tag":73,"props":783,"children":784},{"style":215},[785],{"type":51,"value":420},{"type":45,"tag":73,"props":787,"children":788},{"style":215},[789],{"type":51,"value":425},{"type":45,"tag":73,"props":791,"children":792},{"style":428},[793],{"type":51,"value":234},{"type":45,"tag":73,"props":795,"children":796},{"style":221},[797],{"type":51,"value":798},"(client)",{"type":45,"tag":73,"props":800,"children":801},{"style":215},[802],{"type":51,"value":299},{"type":45,"tag":73,"props":804,"children":805},{"class":75,"line":86},[806],{"type":45,"tag":73,"props":807,"children":808},{"emptyLinePlaceholder":111},[809],{"type":51,"value":114},{"type":45,"tag":73,"props":811,"children":812},{"class":75,"line":107},[813],{"type":45,"tag":73,"props":814,"children":815},{"style":80},[816],{"type":51,"value":817},"\u002F\u002F Email signup\n",{"type":45,"tag":73,"props":819,"children":820},{"class":75,"line":117},[821,826,831,835,840,844],{"type":45,"tag":73,"props":822,"children":823},{"style":209},[824],{"type":51,"value":825},"await",{"type":45,"tag":73,"props":827,"children":828},{"style":221},[829],{"type":51,"value":830}," account",{"type":45,"tag":73,"props":832,"children":833},{"style":215},[834],{"type":51,"value":699},{"type":45,"tag":73,"props":836,"children":837},{"style":428},[838],{"type":51,"value":839},"create",{"type":45,"tag":73,"props":841,"children":842},{"style":221},[843],{"type":51,"value":453},{"type":45,"tag":73,"props":845,"children":846},{"style":215},[847],{"type":51,"value":848},"{\n",{"type":45,"tag":73,"props":850,"children":851},{"class":75,"line":126},[852,858,863,867,871,876,881],{"type":45,"tag":73,"props":853,"children":855},{"style":854},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[856],{"type":51,"value":857},"    userId",{"type":45,"tag":73,"props":859,"children":860},{"style":215},[861],{"type":51,"value":862},":",{"type":45,"tag":73,"props":864,"children":865},{"style":221},[866],{"type":51,"value":261},{"type":45,"tag":73,"props":868,"children":869},{"style":215},[870],{"type":51,"value":699},{"type":45,"tag":73,"props":872,"children":873},{"style":428},[874],{"type":51,"value":875},"unique",{"type":45,"tag":73,"props":877,"children":878},{"style":221},[879],{"type":51,"value":880},"()",{"type":45,"tag":73,"props":882,"children":883},{"style":215},[884],{"type":51,"value":885},",\n",{"type":45,"tag":73,"props":887,"children":888},{"class":75,"line":143},[889,894,898,902,907,911],{"type":45,"tag":73,"props":890,"children":891},{"style":854},[892],{"type":51,"value":893},"    email",{"type":45,"tag":73,"props":895,"children":896},{"style":215},[897],{"type":51,"value":862},{"type":45,"tag":73,"props":899,"children":900},{"style":215},[901],{"type":51,"value":285},{"type":45,"tag":73,"props":903,"children":904},{"style":96},[905],{"type":51,"value":906},"user@example.com",{"type":45,"tag":73,"props":908,"children":909},{"style":215},[910],{"type":51,"value":294},{"type":45,"tag":73,"props":912,"children":913},{"style":215},[914],{"type":51,"value":885},{"type":45,"tag":73,"props":916,"children":917},{"class":75,"line":151},[918,923,927,931,936,940],{"type":45,"tag":73,"props":919,"children":920},{"style":854},[921],{"type":51,"value":922},"    password",{"type":45,"tag":73,"props":924,"children":925},{"style":215},[926],{"type":51,"value":862},{"type":45,"tag":73,"props":928,"children":929},{"style":215},[930],{"type":51,"value":285},{"type":45,"tag":73,"props":932,"children":933},{"style":96},[934],{"type":51,"value":935},"password123",{"type":45,"tag":73,"props":937,"children":938},{"style":215},[939],{"type":51,"value":294},{"type":45,"tag":73,"props":941,"children":942},{"style":215},[943],{"type":51,"value":885},{"type":45,"tag":73,"props":945,"children":946},{"class":75,"line":160},[947,952,956,960,965],{"type":45,"tag":73,"props":948,"children":949},{"style":854},[950],{"type":51,"value":951},"    name",{"type":45,"tag":73,"props":953,"children":954},{"style":215},[955],{"type":51,"value":862},{"type":45,"tag":73,"props":957,"children":958},{"style":215},[959],{"type":51,"value":285},{"type":45,"tag":73,"props":961,"children":962},{"style":96},[963],{"type":51,"value":964},"User Name",{"type":45,"tag":73,"props":966,"children":967},{"style":215},[968],{"type":51,"value":969},"'\n",{"type":45,"tag":73,"props":971,"children":972},{"class":75,"line":474},[973,978,982],{"type":45,"tag":73,"props":974,"children":975},{"style":215},[976],{"type":51,"value":977},"}",{"type":45,"tag":73,"props":979,"children":980},{"style":221},[981],{"type":51,"value":506},{"type":45,"tag":73,"props":983,"children":984},{"style":215},[985],{"type":51,"value":299},{"type":45,"tag":73,"props":987,"children":989},{"class":75,"line":988},10,[990],{"type":45,"tag":73,"props":991,"children":992},{"emptyLinePlaceholder":111},[993],{"type":51,"value":114},{"type":45,"tag":73,"props":995,"children":997},{"class":75,"line":996},11,[998],{"type":45,"tag":73,"props":999,"children":1000},{"style":80},[1001],{"type":51,"value":1002},"\u002F\u002F Email login\n",{"type":45,"tag":73,"props":1004,"children":1006},{"class":75,"line":1005},12,[1007,1011,1016,1020,1025,1029,1033,1038,1042],{"type":45,"tag":73,"props":1008,"children":1009},{"style":407},[1010],{"type":51,"value":410},{"type":45,"tag":73,"props":1012,"children":1013},{"style":221},[1014],{"type":51,"value":1015}," session ",{"type":45,"tag":73,"props":1017,"children":1018},{"style":215},[1019],{"type":51,"value":420},{"type":45,"tag":73,"props":1021,"children":1022},{"style":209},[1023],{"type":51,"value":1024}," await",{"type":45,"tag":73,"props":1026,"children":1027},{"style":221},[1028],{"type":51,"value":830},{"type":45,"tag":73,"props":1030,"children":1031},{"style":215},[1032],{"type":51,"value":699},{"type":45,"tag":73,"props":1034,"children":1035},{"style":428},[1036],{"type":51,"value":1037},"createEmailPasswordSession",{"type":45,"tag":73,"props":1039,"children":1040},{"style":221},[1041],{"type":51,"value":453},{"type":45,"tag":73,"props":1043,"children":1044},{"style":215},[1045],{"type":51,"value":848},{"type":45,"tag":73,"props":1047,"children":1049},{"class":75,"line":1048},13,[1050,1054,1058,1062,1066,1070],{"type":45,"tag":73,"props":1051,"children":1052},{"style":854},[1053],{"type":51,"value":893},{"type":45,"tag":73,"props":1055,"children":1056},{"style":215},[1057],{"type":51,"value":862},{"type":45,"tag":73,"props":1059,"children":1060},{"style":215},[1061],{"type":51,"value":285},{"type":45,"tag":73,"props":1063,"children":1064},{"style":96},[1065],{"type":51,"value":906},{"type":45,"tag":73,"props":1067,"children":1068},{"style":215},[1069],{"type":51,"value":294},{"type":45,"tag":73,"props":1071,"children":1072},{"style":215},[1073],{"type":51,"value":885},{"type":45,"tag":73,"props":1075,"children":1077},{"class":75,"line":1076},14,[1078,1082,1086,1090,1094],{"type":45,"tag":73,"props":1079,"children":1080},{"style":854},[1081],{"type":51,"value":922},{"type":45,"tag":73,"props":1083,"children":1084},{"style":215},[1085],{"type":51,"value":862},{"type":45,"tag":73,"props":1087,"children":1088},{"style":215},[1089],{"type":51,"value":285},{"type":45,"tag":73,"props":1091,"children":1092},{"style":96},[1093],{"type":51,"value":935},{"type":45,"tag":73,"props":1095,"children":1096},{"style":215},[1097],{"type":51,"value":969},{"type":45,"tag":73,"props":1099,"children":1101},{"class":75,"line":1100},15,[1102,1106,1110],{"type":45,"tag":73,"props":1103,"children":1104},{"style":215},[1105],{"type":51,"value":977},{"type":45,"tag":73,"props":1107,"children":1108},{"style":221},[1109],{"type":51,"value":506},{"type":45,"tag":73,"props":1111,"children":1112},{"style":215},[1113],{"type":51,"value":299},{"type":45,"tag":73,"props":1115,"children":1117},{"class":75,"line":1116},16,[1118],{"type":45,"tag":73,"props":1119,"children":1120},{"emptyLinePlaceholder":111},[1121],{"type":51,"value":114},{"type":45,"tag":73,"props":1123,"children":1125},{"class":75,"line":1124},17,[1126],{"type":45,"tag":73,"props":1127,"children":1128},{"style":80},[1129],{"type":51,"value":1130},"\u002F\u002F OAuth login (Web)\n",{"type":45,"tag":73,"props":1132,"children":1134},{"class":75,"line":1133},18,[1135,1140,1144,1149,1153],{"type":45,"tag":73,"props":1136,"children":1137},{"style":221},[1138],{"type":51,"value":1139},"account",{"type":45,"tag":73,"props":1141,"children":1142},{"style":215},[1143],{"type":51,"value":699},{"type":45,"tag":73,"props":1145,"children":1146},{"style":428},[1147],{"type":51,"value":1148},"createOAuth2Session",{"type":45,"tag":73,"props":1150,"children":1151},{"style":221},[1152],{"type":51,"value":453},{"type":45,"tag":73,"props":1154,"children":1155},{"style":215},[1156],{"type":51,"value":848},{"type":45,"tag":73,"props":1158,"children":1160},{"class":75,"line":1159},19,[1161,1166,1170,1175,1179,1184],{"type":45,"tag":73,"props":1162,"children":1163},{"style":854},[1164],{"type":51,"value":1165},"    provider",{"type":45,"tag":73,"props":1167,"children":1168},{"style":215},[1169],{"type":51,"value":862},{"type":45,"tag":73,"props":1171,"children":1172},{"style":221},[1173],{"type":51,"value":1174}," OAuthProvider",{"type":45,"tag":73,"props":1176,"children":1177},{"style":215},[1178],{"type":51,"value":699},{"type":45,"tag":73,"props":1180,"children":1181},{"style":221},[1182],{"type":51,"value":1183},"Github",{"type":45,"tag":73,"props":1185,"children":1186},{"style":215},[1187],{"type":51,"value":885},{"type":45,"tag":73,"props":1189,"children":1191},{"class":75,"line":1190},20,[1192,1197,1201,1205,1210,1214],{"type":45,"tag":73,"props":1193,"children":1194},{"style":854},[1195],{"type":51,"value":1196},"    success",{"type":45,"tag":73,"props":1198,"children":1199},{"style":215},[1200],{"type":51,"value":862},{"type":45,"tag":73,"props":1202,"children":1203},{"style":215},[1204],{"type":51,"value":285},{"type":45,"tag":73,"props":1206,"children":1207},{"style":96},[1208],{"type":51,"value":1209},"https:\u002F\u002Fexample.com\u002Fsuccess",{"type":45,"tag":73,"props":1211,"children":1212},{"style":215},[1213],{"type":51,"value":294},{"type":45,"tag":73,"props":1215,"children":1216},{"style":215},[1217],{"type":51,"value":885},{"type":45,"tag":73,"props":1219,"children":1221},{"class":75,"line":1220},21,[1222,1227,1231,1235,1240,1244],{"type":45,"tag":73,"props":1223,"children":1224},{"style":854},[1225],{"type":51,"value":1226},"    failure",{"type":45,"tag":73,"props":1228,"children":1229},{"style":215},[1230],{"type":51,"value":862},{"type":45,"tag":73,"props":1232,"children":1233},{"style":215},[1234],{"type":51,"value":285},{"type":45,"tag":73,"props":1236,"children":1237},{"style":96},[1238],{"type":51,"value":1239},"https:\u002F\u002Fexample.com\u002Ffail",{"type":45,"tag":73,"props":1241,"children":1242},{"style":215},[1243],{"type":51,"value":294},{"type":45,"tag":73,"props":1245,"children":1246},{"style":215},[1247],{"type":51,"value":885},{"type":45,"tag":73,"props":1249,"children":1251},{"class":75,"line":1250},22,[1252,1257,1261,1266,1270,1275,1279,1283,1287,1292,1296,1301],{"type":45,"tag":73,"props":1253,"children":1254},{"style":854},[1255],{"type":51,"value":1256},"    scopes",{"type":45,"tag":73,"props":1258,"children":1259},{"style":215},[1260],{"type":51,"value":862},{"type":45,"tag":73,"props":1262,"children":1263},{"style":221},[1264],{"type":51,"value":1265}," [",{"type":45,"tag":73,"props":1267,"children":1268},{"style":215},[1269],{"type":51,"value":294},{"type":45,"tag":73,"props":1271,"children":1272},{"style":96},[1273],{"type":51,"value":1274},"repo",{"type":45,"tag":73,"props":1276,"children":1277},{"style":215},[1278],{"type":51,"value":294},{"type":45,"tag":73,"props":1280,"children":1281},{"style":215},[1282],{"type":51,"value":229},{"type":45,"tag":73,"props":1284,"children":1285},{"style":215},[1286],{"type":51,"value":285},{"type":45,"tag":73,"props":1288,"children":1289},{"style":96},[1290],{"type":51,"value":1291},"user",{"type":45,"tag":73,"props":1293,"children":1294},{"style":215},[1295],{"type":51,"value":294},{"type":45,"tag":73,"props":1297,"children":1298},{"style":221},[1299],{"type":51,"value":1300},"] ",{"type":45,"tag":73,"props":1302,"children":1303},{"style":80},[1304],{"type":51,"value":1305},"\u002F\u002F optional — provider-specific scopes\n",{"type":45,"tag":73,"props":1307,"children":1308},{"class":75,"line":29},[1309,1313,1317],{"type":45,"tag":73,"props":1310,"children":1311},{"style":215},[1312],{"type":51,"value":977},{"type":45,"tag":73,"props":1314,"children":1315},{"style":221},[1316],{"type":51,"value":506},{"type":45,"tag":73,"props":1318,"children":1319},{"style":215},[1320],{"type":51,"value":299},{"type":45,"tag":73,"props":1322,"children":1324},{"class":75,"line":1323},24,[1325],{"type":45,"tag":73,"props":1326,"children":1327},{"emptyLinePlaceholder":111},[1328],{"type":51,"value":114},{"type":45,"tag":73,"props":1330,"children":1332},{"class":75,"line":1331},25,[1333],{"type":45,"tag":73,"props":1334,"children":1335},{"style":80},[1336],{"type":51,"value":1337},"\u002F\u002F Get current user\n",{"type":45,"tag":73,"props":1339,"children":1341},{"class":75,"line":1340},26,[1342,1346,1351,1355,1359,1363,1367,1372,1376],{"type":45,"tag":73,"props":1343,"children":1344},{"style":407},[1345],{"type":51,"value":410},{"type":45,"tag":73,"props":1347,"children":1348},{"style":221},[1349],{"type":51,"value":1350}," user ",{"type":45,"tag":73,"props":1352,"children":1353},{"style":215},[1354],{"type":51,"value":420},{"type":45,"tag":73,"props":1356,"children":1357},{"style":209},[1358],{"type":51,"value":1024},{"type":45,"tag":73,"props":1360,"children":1361},{"style":221},[1362],{"type":51,"value":830},{"type":45,"tag":73,"props":1364,"children":1365},{"style":215},[1366],{"type":51,"value":699},{"type":45,"tag":73,"props":1368,"children":1369},{"style":428},[1370],{"type":51,"value":1371},"get",{"type":45,"tag":73,"props":1373,"children":1374},{"style":221},[1375],{"type":51,"value":880},{"type":45,"tag":73,"props":1377,"children":1378},{"style":215},[1379],{"type":51,"value":299},{"type":45,"tag":73,"props":1381,"children":1383},{"class":75,"line":1382},27,[1384],{"type":45,"tag":73,"props":1385,"children":1386},{"emptyLinePlaceholder":111},[1387],{"type":51,"value":114},{"type":45,"tag":73,"props":1389,"children":1391},{"class":75,"line":1390},28,[1392],{"type":45,"tag":73,"props":1393,"children":1394},{"style":80},[1395],{"type":51,"value":1396},"\u002F\u002F Logout\n",{"type":45,"tag":73,"props":1398,"children":1400},{"class":75,"line":1399},29,[1401,1405,1409,1413,1418,1422,1427,1432,1436,1440,1445,1449,1453,1457],{"type":45,"tag":73,"props":1402,"children":1403},{"style":209},[1404],{"type":51,"value":825},{"type":45,"tag":73,"props":1406,"children":1407},{"style":221},[1408],{"type":51,"value":830},{"type":45,"tag":73,"props":1410,"children":1411},{"style":215},[1412],{"type":51,"value":699},{"type":45,"tag":73,"props":1414,"children":1415},{"style":428},[1416],{"type":51,"value":1417},"deleteSession",{"type":45,"tag":73,"props":1419,"children":1420},{"style":221},[1421],{"type":51,"value":453},{"type":45,"tag":73,"props":1423,"children":1424},{"style":215},[1425],{"type":51,"value":1426},"{",{"type":45,"tag":73,"props":1428,"children":1429},{"style":854},[1430],{"type":51,"value":1431}," sessionId",{"type":45,"tag":73,"props":1433,"children":1434},{"style":215},[1435],{"type":51,"value":862},{"type":45,"tag":73,"props":1437,"children":1438},{"style":215},[1439],{"type":51,"value":285},{"type":45,"tag":73,"props":1441,"children":1442},{"style":96},[1443],{"type":51,"value":1444},"current",{"type":45,"tag":73,"props":1446,"children":1447},{"style":215},[1448],{"type":51,"value":294},{"type":45,"tag":73,"props":1450,"children":1451},{"style":215},[1452],{"type":51,"value":275},{"type":45,"tag":73,"props":1454,"children":1455},{"style":221},[1456],{"type":51,"value":506},{"type":45,"tag":73,"props":1458,"children":1459},{"style":215},[1460],{"type":51,"value":299},{"type":45,"tag":182,"props":1462,"children":1464},{"id":1463},"oauth-2-login-react-native",[1465],{"type":51,"value":1466},"OAuth 2 Login (React Native)",{"type":45,"tag":1468,"props":1469,"children":1470},"blockquote",{},[1471],{"type":45,"tag":1472,"props":1473,"children":1474},"p",{},[1475,1481,1483,1489,1491,1496,1498,1504],{"type":45,"tag":1476,"props":1477,"children":1478},"strong",{},[1479],{"type":51,"value":1480},"Important:",{"type":51,"value":1482}," ",{"type":45,"tag":69,"props":1484,"children":1486},{"className":1485},[],[1487],{"type":51,"value":1488},"createOAuth2Session()",{"type":51,"value":1490}," does ",{"type":45,"tag":1476,"props":1492,"children":1493},{},[1494],{"type":51,"value":1495},"not",{"type":51,"value":1497}," work on React Native. You must use ",{"type":45,"tag":69,"props":1499,"children":1501},{"className":1500},[],[1502],{"type":51,"value":1503},"createOAuth2Token()",{"type":51,"value":1505}," with deep linking instead.",{"type":45,"tag":1507,"props":1508,"children":1510},"h4",{"id":1509},"setup",[1511],{"type":51,"value":1512},"Setup",{"type":45,"tag":1472,"props":1514,"children":1515},{},[1516],{"type":51,"value":1517},"Install the required dependencies:",{"type":45,"tag":61,"props":1519,"children":1521},{"className":63,"code":1520,"language":65,"meta":66,"style":66},"npx expo install react-native-appwrite react-native-url-polyfill\nnpm install expo-auth-session expo-web-browser expo-linking\n",[1522],{"type":45,"tag":69,"props":1523,"children":1524},{"__ignoreMap":66},[1525,1552],{"type":45,"tag":73,"props":1526,"children":1527},{"class":75,"line":76},[1528,1533,1538,1542,1547],{"type":45,"tag":73,"props":1529,"children":1530},{"style":90},[1531],{"type":51,"value":1532},"npx",{"type":45,"tag":73,"props":1534,"children":1535},{"style":96},[1536],{"type":51,"value":1537}," expo",{"type":45,"tag":73,"props":1539,"children":1540},{"style":96},[1541],{"type":51,"value":99},{"type":45,"tag":73,"props":1543,"children":1544},{"style":96},[1545],{"type":51,"value":1546}," react-native-appwrite",{"type":45,"tag":73,"props":1548,"children":1549},{"style":96},[1550],{"type":51,"value":1551}," react-native-url-polyfill\n",{"type":45,"tag":73,"props":1553,"children":1554},{"class":75,"line":86},[1555,1559,1563,1568,1573],{"type":45,"tag":73,"props":1556,"children":1557},{"style":90},[1558],{"type":51,"value":93},{"type":45,"tag":73,"props":1560,"children":1561},{"style":96},[1562],{"type":51,"value":99},{"type":45,"tag":73,"props":1564,"children":1565},{"style":96},[1566],{"type":51,"value":1567}," expo-auth-session",{"type":45,"tag":73,"props":1569,"children":1570},{"style":96},[1571],{"type":51,"value":1572}," expo-web-browser",{"type":45,"tag":73,"props":1574,"children":1575},{"style":96},[1576],{"type":51,"value":1577}," expo-linking\n",{"type":45,"tag":1472,"props":1579,"children":1580},{},[1581,1583,1589],{"type":51,"value":1582},"Set the URL scheme in your ",{"type":45,"tag":69,"props":1584,"children":1586},{"className":1585},[],[1587],{"type":51,"value":1588},"app.json",{"type":51,"value":862},{"type":45,"tag":61,"props":1591,"children":1595},{"className":1592,"code":1593,"language":1594,"meta":66,"style":66},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"expo\": {\n    \"scheme\": \"appwrite-callback-[PROJECT_ID]\"\n  }\n}\n","json",[1596],{"type":45,"tag":69,"props":1597,"children":1598},{"__ignoreMap":66},[1599,1606,1633,1669,1677],{"type":45,"tag":73,"props":1600,"children":1601},{"class":75,"line":76},[1602],{"type":45,"tag":73,"props":1603,"children":1604},{"style":215},[1605],{"type":51,"value":848},{"type":45,"tag":73,"props":1607,"children":1608},{"class":75,"line":86},[1609,1614,1619,1624,1628],{"type":45,"tag":73,"props":1610,"children":1611},{"style":215},[1612],{"type":51,"value":1613},"  \"",{"type":45,"tag":73,"props":1615,"children":1616},{"style":407},[1617],{"type":51,"value":1618},"expo",{"type":45,"tag":73,"props":1620,"children":1621},{"style":215},[1622],{"type":51,"value":1623},"\"",{"type":45,"tag":73,"props":1625,"children":1626},{"style":215},[1627],{"type":51,"value":862},{"type":45,"tag":73,"props":1629,"children":1630},{"style":215},[1631],{"type":51,"value":1632}," {\n",{"type":45,"tag":73,"props":1634,"children":1635},{"class":75,"line":107},[1636,1641,1646,1650,1654,1659,1664],{"type":45,"tag":73,"props":1637,"children":1638},{"style":215},[1639],{"type":51,"value":1640},"    \"",{"type":45,"tag":73,"props":1642,"children":1643},{"style":90},[1644],{"type":51,"value":1645},"scheme",{"type":45,"tag":73,"props":1647,"children":1648},{"style":215},[1649],{"type":51,"value":1623},{"type":45,"tag":73,"props":1651,"children":1652},{"style":215},[1653],{"type":51,"value":862},{"type":45,"tag":73,"props":1655,"children":1656},{"style":215},[1657],{"type":51,"value":1658}," \"",{"type":45,"tag":73,"props":1660,"children":1661},{"style":96},[1662],{"type":51,"value":1663},"appwrite-callback-[PROJECT_ID]",{"type":45,"tag":73,"props":1665,"children":1666},{"style":215},[1667],{"type":51,"value":1668},"\"\n",{"type":45,"tag":73,"props":1670,"children":1671},{"class":75,"line":117},[1672],{"type":45,"tag":73,"props":1673,"children":1674},{"style":215},[1675],{"type":51,"value":1676},"  }\n",{"type":45,"tag":73,"props":1678,"children":1679},{"class":75,"line":126},[1680],{"type":45,"tag":73,"props":1681,"children":1682},{"style":215},[1683],{"type":51,"value":1684},"}\n",{"type":45,"tag":1507,"props":1686,"children":1688},{"id":1687},"oauth-flow",[1689],{"type":51,"value":1690},"OAuth Flow",{"type":45,"tag":61,"props":1692,"children":1694},{"className":190,"code":1693,"language":21,"meta":66,"style":66},"import { Client, Account, OAuthProvider } from 'react-native-appwrite';\nimport { makeRedirectUri } from 'expo-auth-session';\nimport * as WebBrowser from 'expo-web-browser';\n\nconst client = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n\nconst account = new Account(client);\n\nasync function oauthLogin(provider: OAuthProvider) {\n    \u002F\u002F Create deep link that works across Expo environments\n    const deepLink = new URL(makeRedirectUri({ preferLocalhost: true }));\n    const scheme = `${deepLink.protocol}\u002F\u002F`; \u002F\u002F e.g. 'exp:\u002F\u002F' or 'appwrite-callback-[PROJECT_ID]:\u002F\u002F'\n\n    \u002F\u002F Get the OAuth login URL\n    const loginUrl = await account.createOAuth2Token({\n        provider,\n        success: `${deepLink}`,\n        failure: `${deepLink}`,\n    });\n\n    \u002F\u002F Open browser and listen for the scheme redirect\n    const result = await WebBrowser.openAuthSessionAsync(`${loginUrl}`, scheme);\n\n    if (result.type !== 'success') return;\n\n    \u002F\u002F Extract credentials from the redirect URL\n    const url = new URL(result.url);\n    const secret = url.searchParams.get('secret');\n    const userId = url.searchParams.get('userId');\n\n    \u002F\u002F Create session with the OAuth credentials\n    await account.createSession({ userId, secret });\n}\n\n\u002F\u002F Usage\nawait oauthLogin(OAuthProvider.Github);\nawait oauthLogin(OAuthProvider.Google);\n",[1695],{"type":45,"tag":69,"props":1696,"children":1697},{"__ignoreMap":66},[1698,1753,1794,1838,1845,1872,1903,1938,1945,1976,1983,2027,2035,2107,2166,2173,2181,2222,2234,2263,2291,2307,2314,2322,2390,2397,2456,2463,2471,2520,2583,2645,2653,2662,2716,2724,2732,2741,2771],{"type":45,"tag":73,"props":1699,"children":1700},{"class":75,"line":76},[1701,1705,1709,1713,1717,1721,1725,1729,1733,1737,1741,1745,1749],{"type":45,"tag":73,"props":1702,"children":1703},{"style":209},[1704],{"type":51,"value":212},{"type":45,"tag":73,"props":1706,"children":1707},{"style":215},[1708],{"type":51,"value":218},{"type":45,"tag":73,"props":1710,"children":1711},{"style":221},[1712],{"type":51,"value":224},{"type":45,"tag":73,"props":1714,"children":1715},{"style":215},[1716],{"type":51,"value":229},{"type":45,"tag":73,"props":1718,"children":1719},{"style":221},[1720],{"type":51,"value":234},{"type":45,"tag":73,"props":1722,"children":1723},{"style":215},[1724],{"type":51,"value":229},{"type":45,"tag":73,"props":1726,"children":1727},{"style":221},[1728],{"type":51,"value":1174},{"type":45,"tag":73,"props":1730,"children":1731},{"style":215},[1732],{"type":51,"value":275},{"type":45,"tag":73,"props":1734,"children":1735},{"style":209},[1736],{"type":51,"value":280},{"type":45,"tag":73,"props":1738,"children":1739},{"style":215},[1740],{"type":51,"value":285},{"type":45,"tag":73,"props":1742,"children":1743},{"style":96},[1744],{"type":51,"value":386},{"type":45,"tag":73,"props":1746,"children":1747},{"style":215},[1748],{"type":51,"value":294},{"type":45,"tag":73,"props":1750,"children":1751},{"style":215},[1752],{"type":51,"value":299},{"type":45,"tag":73,"props":1754,"children":1755},{"class":75,"line":86},[1756,1760,1764,1769,1773,1777,1781,1786,1790],{"type":45,"tag":73,"props":1757,"children":1758},{"style":209},[1759],{"type":51,"value":212},{"type":45,"tag":73,"props":1761,"children":1762},{"style":215},[1763],{"type":51,"value":218},{"type":45,"tag":73,"props":1765,"children":1766},{"style":221},[1767],{"type":51,"value":1768}," makeRedirectUri",{"type":45,"tag":73,"props":1770,"children":1771},{"style":215},[1772],{"type":51,"value":275},{"type":45,"tag":73,"props":1774,"children":1775},{"style":209},[1776],{"type":51,"value":280},{"type":45,"tag":73,"props":1778,"children":1779},{"style":215},[1780],{"type":51,"value":285},{"type":45,"tag":73,"props":1782,"children":1783},{"style":96},[1784],{"type":51,"value":1785},"expo-auth-session",{"type":45,"tag":73,"props":1787,"children":1788},{"style":215},[1789],{"type":51,"value":294},{"type":45,"tag":73,"props":1791,"children":1792},{"style":215},[1793],{"type":51,"value":299},{"type":45,"tag":73,"props":1795,"children":1796},{"class":75,"line":107},[1797,1801,1806,1811,1816,1821,1825,1830,1834],{"type":45,"tag":73,"props":1798,"children":1799},{"style":209},[1800],{"type":51,"value":212},{"type":45,"tag":73,"props":1802,"children":1803},{"style":215},[1804],{"type":51,"value":1805}," *",{"type":45,"tag":73,"props":1807,"children":1808},{"style":209},[1809],{"type":51,"value":1810}," as",{"type":45,"tag":73,"props":1812,"children":1813},{"style":221},[1814],{"type":51,"value":1815}," WebBrowser ",{"type":45,"tag":73,"props":1817,"children":1818},{"style":209},[1819],{"type":51,"value":1820},"from",{"type":45,"tag":73,"props":1822,"children":1823},{"style":215},[1824],{"type":51,"value":285},{"type":45,"tag":73,"props":1826,"children":1827},{"style":96},[1828],{"type":51,"value":1829},"expo-web-browser",{"type":45,"tag":73,"props":1831,"children":1832},{"style":215},[1833],{"type":51,"value":294},{"type":45,"tag":73,"props":1835,"children":1836},{"style":215},[1837],{"type":51,"value":299},{"type":45,"tag":73,"props":1839,"children":1840},{"class":75,"line":117},[1841],{"type":45,"tag":73,"props":1842,"children":1843},{"emptyLinePlaceholder":111},[1844],{"type":51,"value":114},{"type":45,"tag":73,"props":1846,"children":1847},{"class":75,"line":126},[1848,1852,1856,1860,1864,1868],{"type":45,"tag":73,"props":1849,"children":1850},{"style":407},[1851],{"type":51,"value":410},{"type":45,"tag":73,"props":1853,"children":1854},{"style":221},[1855],{"type":51,"value":415},{"type":45,"tag":73,"props":1857,"children":1858},{"style":215},[1859],{"type":51,"value":420},{"type":45,"tag":73,"props":1861,"children":1862},{"style":215},[1863],{"type":51,"value":425},{"type":45,"tag":73,"props":1865,"children":1866},{"style":428},[1867],{"type":51,"value":224},{"type":45,"tag":73,"props":1869,"children":1870},{"style":221},[1871],{"type":51,"value":435},{"type":45,"tag":73,"props":1873,"children":1874},{"class":75,"line":143},[1875,1879,1883,1887,1891,1895,1899],{"type":45,"tag":73,"props":1876,"children":1877},{"style":215},[1878],{"type":51,"value":443},{"type":45,"tag":73,"props":1880,"children":1881},{"style":428},[1882],{"type":51,"value":448},{"type":45,"tag":73,"props":1884,"children":1885},{"style":221},[1886],{"type":51,"value":453},{"type":45,"tag":73,"props":1888,"children":1889},{"style":215},[1890],{"type":51,"value":294},{"type":45,"tag":73,"props":1892,"children":1893},{"style":96},[1894],{"type":51,"value":462},{"type":45,"tag":73,"props":1896,"children":1897},{"style":215},[1898],{"type":51,"value":294},{"type":45,"tag":73,"props":1900,"children":1901},{"style":221},[1902],{"type":51,"value":471},{"type":45,"tag":73,"props":1904,"children":1905},{"class":75,"line":151},[1906,1910,1914,1918,1922,1926,1930,1934],{"type":45,"tag":73,"props":1907,"children":1908},{"style":215},[1909],{"type":51,"value":443},{"type":45,"tag":73,"props":1911,"children":1912},{"style":428},[1913],{"type":51,"value":484},{"type":45,"tag":73,"props":1915,"children":1916},{"style":221},[1917],{"type":51,"value":453},{"type":45,"tag":73,"props":1919,"children":1920},{"style":215},[1921],{"type":51,"value":294},{"type":45,"tag":73,"props":1923,"children":1924},{"style":96},[1925],{"type":51,"value":497},{"type":45,"tag":73,"props":1927,"children":1928},{"style":215},[1929],{"type":51,"value":294},{"type":45,"tag":73,"props":1931,"children":1932},{"style":221},[1933],{"type":51,"value":506},{"type":45,"tag":73,"props":1935,"children":1936},{"style":215},[1937],{"type":51,"value":299},{"type":45,"tag":73,"props":1939,"children":1940},{"class":75,"line":160},[1941],{"type":45,"tag":73,"props":1942,"children":1943},{"emptyLinePlaceholder":111},[1944],{"type":51,"value":114},{"type":45,"tag":73,"props":1946,"children":1947},{"class":75,"line":474},[1948,1952,1956,1960,1964,1968,1972],{"type":45,"tag":73,"props":1949,"children":1950},{"style":407},[1951],{"type":51,"value":410},{"type":45,"tag":73,"props":1953,"children":1954},{"style":221},[1955],{"type":51,"value":781},{"type":45,"tag":73,"props":1957,"children":1958},{"style":215},[1959],{"type":51,"value":420},{"type":45,"tag":73,"props":1961,"children":1962},{"style":215},[1963],{"type":51,"value":425},{"type":45,"tag":73,"props":1965,"children":1966},{"style":428},[1967],{"type":51,"value":234},{"type":45,"tag":73,"props":1969,"children":1970},{"style":221},[1971],{"type":51,"value":798},{"type":45,"tag":73,"props":1973,"children":1974},{"style":215},[1975],{"type":51,"value":299},{"type":45,"tag":73,"props":1977,"children":1978},{"class":75,"line":988},[1979],{"type":45,"tag":73,"props":1980,"children":1981},{"emptyLinePlaceholder":111},[1982],{"type":51,"value":114},{"type":45,"tag":73,"props":1984,"children":1985},{"class":75,"line":996},[1986,1991,1996,2001,2005,2011,2015,2019,2023],{"type":45,"tag":73,"props":1987,"children":1988},{"style":407},[1989],{"type":51,"value":1990},"async",{"type":45,"tag":73,"props":1992,"children":1993},{"style":407},[1994],{"type":51,"value":1995}," function",{"type":45,"tag":73,"props":1997,"children":1998},{"style":428},[1999],{"type":51,"value":2000}," oauthLogin",{"type":45,"tag":73,"props":2002,"children":2003},{"style":215},[2004],{"type":51,"value":453},{"type":45,"tag":73,"props":2006,"children":2008},{"style":2007},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[2009],{"type":51,"value":2010},"provider",{"type":45,"tag":73,"props":2012,"children":2013},{"style":215},[2014],{"type":51,"value":862},{"type":45,"tag":73,"props":2016,"children":2017},{"style":90},[2018],{"type":51,"value":1174},{"type":45,"tag":73,"props":2020,"children":2021},{"style":215},[2022],{"type":51,"value":506},{"type":45,"tag":73,"props":2024,"children":2025},{"style":215},[2026],{"type":51,"value":1632},{"type":45,"tag":73,"props":2028,"children":2029},{"class":75,"line":1005},[2030],{"type":45,"tag":73,"props":2031,"children":2032},{"style":80},[2033],{"type":51,"value":2034},"    \u002F\u002F Create deep link that works across Expo environments\n",{"type":45,"tag":73,"props":2036,"children":2037},{"class":75,"line":1048},[2038,2043,2048,2053,2057,2062,2066,2071,2075,2079,2084,2088,2094,2098,2103],{"type":45,"tag":73,"props":2039,"children":2040},{"style":407},[2041],{"type":51,"value":2042},"    const",{"type":45,"tag":73,"props":2044,"children":2045},{"style":221},[2046],{"type":51,"value":2047}," deepLink",{"type":45,"tag":73,"props":2049,"children":2050},{"style":215},[2051],{"type":51,"value":2052}," =",{"type":45,"tag":73,"props":2054,"children":2055},{"style":215},[2056],{"type":51,"value":425},{"type":45,"tag":73,"props":2058,"children":2059},{"style":428},[2060],{"type":51,"value":2061}," URL",{"type":45,"tag":73,"props":2063,"children":2064},{"style":854},[2065],{"type":51,"value":453},{"type":45,"tag":73,"props":2067,"children":2068},{"style":428},[2069],{"type":51,"value":2070},"makeRedirectUri",{"type":45,"tag":73,"props":2072,"children":2073},{"style":854},[2074],{"type":51,"value":453},{"type":45,"tag":73,"props":2076,"children":2077},{"style":215},[2078],{"type":51,"value":1426},{"type":45,"tag":73,"props":2080,"children":2081},{"style":854},[2082],{"type":51,"value":2083}," preferLocalhost",{"type":45,"tag":73,"props":2085,"children":2086},{"style":215},[2087],{"type":51,"value":862},{"type":45,"tag":73,"props":2089,"children":2091},{"style":2090},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[2092],{"type":51,"value":2093}," true",{"type":45,"tag":73,"props":2095,"children":2096},{"style":215},[2097],{"type":51,"value":275},{"type":45,"tag":73,"props":2099,"children":2100},{"style":854},[2101],{"type":51,"value":2102},"))",{"type":45,"tag":73,"props":2104,"children":2105},{"style":215},[2106],{"type":51,"value":299},{"type":45,"tag":73,"props":2108,"children":2109},{"class":75,"line":1076},[2110,2114,2119,2123,2128,2133,2137,2142,2146,2151,2156,2161],{"type":45,"tag":73,"props":2111,"children":2112},{"style":407},[2113],{"type":51,"value":2042},{"type":45,"tag":73,"props":2115,"children":2116},{"style":221},[2117],{"type":51,"value":2118}," scheme",{"type":45,"tag":73,"props":2120,"children":2121},{"style":215},[2122],{"type":51,"value":2052},{"type":45,"tag":73,"props":2124,"children":2125},{"style":215},[2126],{"type":51,"value":2127}," `${",{"type":45,"tag":73,"props":2129,"children":2130},{"style":221},[2131],{"type":51,"value":2132},"deepLink",{"type":45,"tag":73,"props":2134,"children":2135},{"style":215},[2136],{"type":51,"value":699},{"type":45,"tag":73,"props":2138,"children":2139},{"style":221},[2140],{"type":51,"value":2141},"protocol",{"type":45,"tag":73,"props":2143,"children":2144},{"style":215},[2145],{"type":51,"value":977},{"type":45,"tag":73,"props":2147,"children":2148},{"style":96},[2149],{"type":51,"value":2150},"\u002F\u002F",{"type":45,"tag":73,"props":2152,"children":2153},{"style":215},[2154],{"type":51,"value":2155},"`",{"type":45,"tag":73,"props":2157,"children":2158},{"style":215},[2159],{"type":51,"value":2160},";",{"type":45,"tag":73,"props":2162,"children":2163},{"style":80},[2164],{"type":51,"value":2165}," \u002F\u002F e.g. 'exp:\u002F\u002F' or 'appwrite-callback-[PROJECT_ID]:\u002F\u002F'\n",{"type":45,"tag":73,"props":2167,"children":2168},{"class":75,"line":1100},[2169],{"type":45,"tag":73,"props":2170,"children":2171},{"emptyLinePlaceholder":111},[2172],{"type":51,"value":114},{"type":45,"tag":73,"props":2174,"children":2175},{"class":75,"line":1116},[2176],{"type":45,"tag":73,"props":2177,"children":2178},{"style":80},[2179],{"type":51,"value":2180},"    \u002F\u002F Get the OAuth login URL\n",{"type":45,"tag":73,"props":2182,"children":2183},{"class":75,"line":1124},[2184,2188,2193,2197,2201,2205,2209,2214,2218],{"type":45,"tag":73,"props":2185,"children":2186},{"style":407},[2187],{"type":51,"value":2042},{"type":45,"tag":73,"props":2189,"children":2190},{"style":221},[2191],{"type":51,"value":2192}," loginUrl",{"type":45,"tag":73,"props":2194,"children":2195},{"style":215},[2196],{"type":51,"value":2052},{"type":45,"tag":73,"props":2198,"children":2199},{"style":209},[2200],{"type":51,"value":1024},{"type":45,"tag":73,"props":2202,"children":2203},{"style":221},[2204],{"type":51,"value":830},{"type":45,"tag":73,"props":2206,"children":2207},{"style":215},[2208],{"type":51,"value":699},{"type":45,"tag":73,"props":2210,"children":2211},{"style":428},[2212],{"type":51,"value":2213},"createOAuth2Token",{"type":45,"tag":73,"props":2215,"children":2216},{"style":854},[2217],{"type":51,"value":453},{"type":45,"tag":73,"props":2219,"children":2220},{"style":215},[2221],{"type":51,"value":848},{"type":45,"tag":73,"props":2223,"children":2224},{"class":75,"line":1133},[2225,2230],{"type":45,"tag":73,"props":2226,"children":2227},{"style":221},[2228],{"type":51,"value":2229},"        provider",{"type":45,"tag":73,"props":2231,"children":2232},{"style":215},[2233],{"type":51,"value":885},{"type":45,"tag":73,"props":2235,"children":2236},{"class":75,"line":1159},[2237,2242,2246,2250,2254,2259],{"type":45,"tag":73,"props":2238,"children":2239},{"style":854},[2240],{"type":51,"value":2241},"        success",{"type":45,"tag":73,"props":2243,"children":2244},{"style":215},[2245],{"type":51,"value":862},{"type":45,"tag":73,"props":2247,"children":2248},{"style":215},[2249],{"type":51,"value":2127},{"type":45,"tag":73,"props":2251,"children":2252},{"style":221},[2253],{"type":51,"value":2132},{"type":45,"tag":73,"props":2255,"children":2256},{"style":215},[2257],{"type":51,"value":2258},"}`",{"type":45,"tag":73,"props":2260,"children":2261},{"style":215},[2262],{"type":51,"value":885},{"type":45,"tag":73,"props":2264,"children":2265},{"class":75,"line":1190},[2266,2271,2275,2279,2283,2287],{"type":45,"tag":73,"props":2267,"children":2268},{"style":854},[2269],{"type":51,"value":2270},"        failure",{"type":45,"tag":73,"props":2272,"children":2273},{"style":215},[2274],{"type":51,"value":862},{"type":45,"tag":73,"props":2276,"children":2277},{"style":215},[2278],{"type":51,"value":2127},{"type":45,"tag":73,"props":2280,"children":2281},{"style":221},[2282],{"type":51,"value":2132},{"type":45,"tag":73,"props":2284,"children":2285},{"style":215},[2286],{"type":51,"value":2258},{"type":45,"tag":73,"props":2288,"children":2289},{"style":215},[2290],{"type":51,"value":885},{"type":45,"tag":73,"props":2292,"children":2293},{"class":75,"line":1220},[2294,2299,2303],{"type":45,"tag":73,"props":2295,"children":2296},{"style":215},[2297],{"type":51,"value":2298},"    }",{"type":45,"tag":73,"props":2300,"children":2301},{"style":854},[2302],{"type":51,"value":506},{"type":45,"tag":73,"props":2304,"children":2305},{"style":215},[2306],{"type":51,"value":299},{"type":45,"tag":73,"props":2308,"children":2309},{"class":75,"line":1250},[2310],{"type":45,"tag":73,"props":2311,"children":2312},{"emptyLinePlaceholder":111},[2313],{"type":51,"value":114},{"type":45,"tag":73,"props":2315,"children":2316},{"class":75,"line":29},[2317],{"type":45,"tag":73,"props":2318,"children":2319},{"style":80},[2320],{"type":51,"value":2321},"    \u002F\u002F Open browser and listen for the scheme redirect\n",{"type":45,"tag":73,"props":2323,"children":2324},{"class":75,"line":1323},[2325,2329,2334,2338,2342,2347,2351,2356,2360,2365,2370,2374,2378,2382,2386],{"type":45,"tag":73,"props":2326,"children":2327},{"style":407},[2328],{"type":51,"value":2042},{"type":45,"tag":73,"props":2330,"children":2331},{"style":221},[2332],{"type":51,"value":2333}," result",{"type":45,"tag":73,"props":2335,"children":2336},{"style":215},[2337],{"type":51,"value":2052},{"type":45,"tag":73,"props":2339,"children":2340},{"style":209},[2341],{"type":51,"value":1024},{"type":45,"tag":73,"props":2343,"children":2344},{"style":221},[2345],{"type":51,"value":2346}," WebBrowser",{"type":45,"tag":73,"props":2348,"children":2349},{"style":215},[2350],{"type":51,"value":699},{"type":45,"tag":73,"props":2352,"children":2353},{"style":428},[2354],{"type":51,"value":2355},"openAuthSessionAsync",{"type":45,"tag":73,"props":2357,"children":2358},{"style":854},[2359],{"type":51,"value":453},{"type":45,"tag":73,"props":2361,"children":2362},{"style":215},[2363],{"type":51,"value":2364},"`${",{"type":45,"tag":73,"props":2366,"children":2367},{"style":221},[2368],{"type":51,"value":2369},"loginUrl",{"type":45,"tag":73,"props":2371,"children":2372},{"style":215},[2373],{"type":51,"value":2258},{"type":45,"tag":73,"props":2375,"children":2376},{"style":215},[2377],{"type":51,"value":229},{"type":45,"tag":73,"props":2379,"children":2380},{"style":221},[2381],{"type":51,"value":2118},{"type":45,"tag":73,"props":2383,"children":2384},{"style":854},[2385],{"type":51,"value":506},{"type":45,"tag":73,"props":2387,"children":2388},{"style":215},[2389],{"type":51,"value":299},{"type":45,"tag":73,"props":2391,"children":2392},{"class":75,"line":1331},[2393],{"type":45,"tag":73,"props":2394,"children":2395},{"emptyLinePlaceholder":111},[2396],{"type":51,"value":114},{"type":45,"tag":73,"props":2398,"children":2399},{"class":75,"line":1340},[2400,2405,2410,2415,2419,2424,2429,2433,2438,2442,2447,2452],{"type":45,"tag":73,"props":2401,"children":2402},{"style":209},[2403],{"type":51,"value":2404},"    if",{"type":45,"tag":73,"props":2406,"children":2407},{"style":854},[2408],{"type":51,"value":2409}," (",{"type":45,"tag":73,"props":2411,"children":2412},{"style":221},[2413],{"type":51,"value":2414},"result",{"type":45,"tag":73,"props":2416,"children":2417},{"style":215},[2418],{"type":51,"value":699},{"type":45,"tag":73,"props":2420,"children":2421},{"style":221},[2422],{"type":51,"value":2423},"type",{"type":45,"tag":73,"props":2425,"children":2426},{"style":215},[2427],{"type":51,"value":2428}," !==",{"type":45,"tag":73,"props":2430,"children":2431},{"style":215},[2432],{"type":51,"value":285},{"type":45,"tag":73,"props":2434,"children":2435},{"style":96},[2436],{"type":51,"value":2437},"success",{"type":45,"tag":73,"props":2439,"children":2440},{"style":215},[2441],{"type":51,"value":294},{"type":45,"tag":73,"props":2443,"children":2444},{"style":854},[2445],{"type":51,"value":2446},") ",{"type":45,"tag":73,"props":2448,"children":2449},{"style":209},[2450],{"type":51,"value":2451},"return",{"type":45,"tag":73,"props":2453,"children":2454},{"style":215},[2455],{"type":51,"value":299},{"type":45,"tag":73,"props":2457,"children":2458},{"class":75,"line":1382},[2459],{"type":45,"tag":73,"props":2460,"children":2461},{"emptyLinePlaceholder":111},[2462],{"type":51,"value":114},{"type":45,"tag":73,"props":2464,"children":2465},{"class":75,"line":1390},[2466],{"type":45,"tag":73,"props":2467,"children":2468},{"style":80},[2469],{"type":51,"value":2470},"    \u002F\u002F Extract credentials from the redirect URL\n",{"type":45,"tag":73,"props":2472,"children":2473},{"class":75,"line":1399},[2474,2478,2483,2487,2491,2495,2499,2503,2507,2512,2516],{"type":45,"tag":73,"props":2475,"children":2476},{"style":407},[2477],{"type":51,"value":2042},{"type":45,"tag":73,"props":2479,"children":2480},{"style":221},[2481],{"type":51,"value":2482}," url",{"type":45,"tag":73,"props":2484,"children":2485},{"style":215},[2486],{"type":51,"value":2052},{"type":45,"tag":73,"props":2488,"children":2489},{"style":215},[2490],{"type":51,"value":425},{"type":45,"tag":73,"props":2492,"children":2493},{"style":428},[2494],{"type":51,"value":2061},{"type":45,"tag":73,"props":2496,"children":2497},{"style":854},[2498],{"type":51,"value":453},{"type":45,"tag":73,"props":2500,"children":2501},{"style":221},[2502],{"type":51,"value":2414},{"type":45,"tag":73,"props":2504,"children":2505},{"style":215},[2506],{"type":51,"value":699},{"type":45,"tag":73,"props":2508,"children":2509},{"style":221},[2510],{"type":51,"value":2511},"url",{"type":45,"tag":73,"props":2513,"children":2514},{"style":854},[2515],{"type":51,"value":506},{"type":45,"tag":73,"props":2517,"children":2518},{"style":215},[2519],{"type":51,"value":299},{"type":45,"tag":73,"props":2521,"children":2523},{"class":75,"line":2522},30,[2524,2528,2533,2537,2541,2545,2550,2554,2558,2562,2566,2571,2575,2579],{"type":45,"tag":73,"props":2525,"children":2526},{"style":407},[2527],{"type":51,"value":2042},{"type":45,"tag":73,"props":2529,"children":2530},{"style":221},[2531],{"type":51,"value":2532}," secret",{"type":45,"tag":73,"props":2534,"children":2535},{"style":215},[2536],{"type":51,"value":2052},{"type":45,"tag":73,"props":2538,"children":2539},{"style":221},[2540],{"type":51,"value":2482},{"type":45,"tag":73,"props":2542,"children":2543},{"style":215},[2544],{"type":51,"value":699},{"type":45,"tag":73,"props":2546,"children":2547},{"style":221},[2548],{"type":51,"value":2549},"searchParams",{"type":45,"tag":73,"props":2551,"children":2552},{"style":215},[2553],{"type":51,"value":699},{"type":45,"tag":73,"props":2555,"children":2556},{"style":428},[2557],{"type":51,"value":1371},{"type":45,"tag":73,"props":2559,"children":2560},{"style":854},[2561],{"type":51,"value":453},{"type":45,"tag":73,"props":2563,"children":2564},{"style":215},[2565],{"type":51,"value":294},{"type":45,"tag":73,"props":2567,"children":2568},{"style":96},[2569],{"type":51,"value":2570},"secret",{"type":45,"tag":73,"props":2572,"children":2573},{"style":215},[2574],{"type":51,"value":294},{"type":45,"tag":73,"props":2576,"children":2577},{"style":854},[2578],{"type":51,"value":506},{"type":45,"tag":73,"props":2580,"children":2581},{"style":215},[2582],{"type":51,"value":299},{"type":45,"tag":73,"props":2584,"children":2586},{"class":75,"line":2585},31,[2587,2591,2596,2600,2604,2608,2612,2616,2620,2624,2628,2633,2637,2641],{"type":45,"tag":73,"props":2588,"children":2589},{"style":407},[2590],{"type":51,"value":2042},{"type":45,"tag":73,"props":2592,"children":2593},{"style":221},[2594],{"type":51,"value":2595}," userId",{"type":45,"tag":73,"props":2597,"children":2598},{"style":215},[2599],{"type":51,"value":2052},{"type":45,"tag":73,"props":2601,"children":2602},{"style":221},[2603],{"type":51,"value":2482},{"type":45,"tag":73,"props":2605,"children":2606},{"style":215},[2607],{"type":51,"value":699},{"type":45,"tag":73,"props":2609,"children":2610},{"style":221},[2611],{"type":51,"value":2549},{"type":45,"tag":73,"props":2613,"children":2614},{"style":215},[2615],{"type":51,"value":699},{"type":45,"tag":73,"props":2617,"children":2618},{"style":428},[2619],{"type":51,"value":1371},{"type":45,"tag":73,"props":2621,"children":2622},{"style":854},[2623],{"type":51,"value":453},{"type":45,"tag":73,"props":2625,"children":2626},{"style":215},[2627],{"type":51,"value":294},{"type":45,"tag":73,"props":2629,"children":2630},{"style":96},[2631],{"type":51,"value":2632},"userId",{"type":45,"tag":73,"props":2634,"children":2635},{"style":215},[2636],{"type":51,"value":294},{"type":45,"tag":73,"props":2638,"children":2639},{"style":854},[2640],{"type":51,"value":506},{"type":45,"tag":73,"props":2642,"children":2643},{"style":215},[2644],{"type":51,"value":299},{"type":45,"tag":73,"props":2646,"children":2648},{"class":75,"line":2647},32,[2649],{"type":45,"tag":73,"props":2650,"children":2651},{"emptyLinePlaceholder":111},[2652],{"type":51,"value":114},{"type":45,"tag":73,"props":2654,"children":2656},{"class":75,"line":2655},33,[2657],{"type":45,"tag":73,"props":2658,"children":2659},{"style":80},[2660],{"type":51,"value":2661},"    \u002F\u002F Create session with the OAuth credentials\n",{"type":45,"tag":73,"props":2663,"children":2665},{"class":75,"line":2664},34,[2666,2671,2675,2679,2684,2688,2692,2696,2700,2704,2708,2712],{"type":45,"tag":73,"props":2667,"children":2668},{"style":209},[2669],{"type":51,"value":2670},"    await",{"type":45,"tag":73,"props":2672,"children":2673},{"style":221},[2674],{"type":51,"value":830},{"type":45,"tag":73,"props":2676,"children":2677},{"style":215},[2678],{"type":51,"value":699},{"type":45,"tag":73,"props":2680,"children":2681},{"style":428},[2682],{"type":51,"value":2683},"createSession",{"type":45,"tag":73,"props":2685,"children":2686},{"style":854},[2687],{"type":51,"value":453},{"type":45,"tag":73,"props":2689,"children":2690},{"style":215},[2691],{"type":51,"value":1426},{"type":45,"tag":73,"props":2693,"children":2694},{"style":221},[2695],{"type":51,"value":2595},{"type":45,"tag":73,"props":2697,"children":2698},{"style":215},[2699],{"type":51,"value":229},{"type":45,"tag":73,"props":2701,"children":2702},{"style":221},[2703],{"type":51,"value":2532},{"type":45,"tag":73,"props":2705,"children":2706},{"style":215},[2707],{"type":51,"value":275},{"type":45,"tag":73,"props":2709,"children":2710},{"style":854},[2711],{"type":51,"value":506},{"type":45,"tag":73,"props":2713,"children":2714},{"style":215},[2715],{"type":51,"value":299},{"type":45,"tag":73,"props":2717,"children":2719},{"class":75,"line":2718},35,[2720],{"type":45,"tag":73,"props":2721,"children":2722},{"style":215},[2723],{"type":51,"value":1684},{"type":45,"tag":73,"props":2725,"children":2727},{"class":75,"line":2726},36,[2728],{"type":45,"tag":73,"props":2729,"children":2730},{"emptyLinePlaceholder":111},[2731],{"type":51,"value":114},{"type":45,"tag":73,"props":2733,"children":2735},{"class":75,"line":2734},37,[2736],{"type":45,"tag":73,"props":2737,"children":2738},{"style":80},[2739],{"type":51,"value":2740},"\u002F\u002F Usage\n",{"type":45,"tag":73,"props":2742,"children":2744},{"class":75,"line":2743},38,[2745,2749,2753,2758,2762,2767],{"type":45,"tag":73,"props":2746,"children":2747},{"style":209},[2748],{"type":51,"value":825},{"type":45,"tag":73,"props":2750,"children":2751},{"style":428},[2752],{"type":51,"value":2000},{"type":45,"tag":73,"props":2754,"children":2755},{"style":221},[2756],{"type":51,"value":2757},"(OAuthProvider",{"type":45,"tag":73,"props":2759,"children":2760},{"style":215},[2761],{"type":51,"value":699},{"type":45,"tag":73,"props":2763,"children":2764},{"style":221},[2765],{"type":51,"value":2766},"Github)",{"type":45,"tag":73,"props":2768,"children":2769},{"style":215},[2770],{"type":51,"value":299},{"type":45,"tag":73,"props":2772,"children":2774},{"class":75,"line":2773},39,[2775,2779,2783,2787,2791,2796],{"type":45,"tag":73,"props":2776,"children":2777},{"style":209},[2778],{"type":51,"value":825},{"type":45,"tag":73,"props":2780,"children":2781},{"style":428},[2782],{"type":51,"value":2000},{"type":45,"tag":73,"props":2784,"children":2785},{"style":221},[2786],{"type":51,"value":2757},{"type":45,"tag":73,"props":2788,"children":2789},{"style":215},[2790],{"type":51,"value":699},{"type":45,"tag":73,"props":2792,"children":2793},{"style":221},[2794],{"type":51,"value":2795},"Google)",{"type":45,"tag":73,"props":2797,"children":2798},{"style":215},[2799],{"type":51,"value":299},{"type":45,"tag":182,"props":2801,"children":2803},{"id":2802},"user-management-server-side",[2804],{"type":51,"value":2805},"User Management (server-side)",{"type":45,"tag":61,"props":2807,"children":2809},{"className":190,"code":2808,"language":21,"meta":66,"style":66},"const users = new Users(client);\n\n\u002F\u002F Create user\nconst user = await users.create({\n    userId: ID.unique(),\n    email: 'user@example.com',\n    password: 'password123',\n    name: 'User Name'\n});\n\n\u002F\u002F List users\nconst list = await users.list({ queries: [Query.limit(25)] });\n\n\u002F\u002F Get user\nconst fetched = await users.get({ userId: '[USER_ID]' });\n\n\u002F\u002F Delete user\nawait users.delete({ userId: '[USER_ID]' });\n",[2810],{"type":45,"tag":69,"props":2811,"children":2812},{"__ignoreMap":66},[2813,2845,2852,2860,2900,2931,2958,2985,3008,3023,3030,3038,3129,3136,3144,3217,3224,3232],{"type":45,"tag":73,"props":2814,"children":2815},{"class":75,"line":76},[2816,2820,2825,2829,2833,2837,2841],{"type":45,"tag":73,"props":2817,"children":2818},{"style":407},[2819],{"type":51,"value":410},{"type":45,"tag":73,"props":2821,"children":2822},{"style":221},[2823],{"type":51,"value":2824}," users ",{"type":45,"tag":73,"props":2826,"children":2827},{"style":215},[2828],{"type":51,"value":420},{"type":45,"tag":73,"props":2830,"children":2831},{"style":215},[2832],{"type":51,"value":425},{"type":45,"tag":73,"props":2834,"children":2835},{"style":428},[2836],{"type":51,"value":547},{"type":45,"tag":73,"props":2838,"children":2839},{"style":221},[2840],{"type":51,"value":798},{"type":45,"tag":73,"props":2842,"children":2843},{"style":215},[2844],{"type":51,"value":299},{"type":45,"tag":73,"props":2846,"children":2847},{"class":75,"line":86},[2848],{"type":45,"tag":73,"props":2849,"children":2850},{"emptyLinePlaceholder":111},[2851],{"type":51,"value":114},{"type":45,"tag":73,"props":2853,"children":2854},{"class":75,"line":107},[2855],{"type":45,"tag":73,"props":2856,"children":2857},{"style":80},[2858],{"type":51,"value":2859},"\u002F\u002F Create user\n",{"type":45,"tag":73,"props":2861,"children":2862},{"class":75,"line":117},[2863,2867,2871,2875,2879,2884,2888,2892,2896],{"type":45,"tag":73,"props":2864,"children":2865},{"style":407},[2866],{"type":51,"value":410},{"type":45,"tag":73,"props":2868,"children":2869},{"style":221},[2870],{"type":51,"value":1350},{"type":45,"tag":73,"props":2872,"children":2873},{"style":215},[2874],{"type":51,"value":420},{"type":45,"tag":73,"props":2876,"children":2877},{"style":209},[2878],{"type":51,"value":1024},{"type":45,"tag":73,"props":2880,"children":2881},{"style":221},[2882],{"type":51,"value":2883}," users",{"type":45,"tag":73,"props":2885,"children":2886},{"style":215},[2887],{"type":51,"value":699},{"type":45,"tag":73,"props":2889,"children":2890},{"style":428},[2891],{"type":51,"value":839},{"type":45,"tag":73,"props":2893,"children":2894},{"style":221},[2895],{"type":51,"value":453},{"type":45,"tag":73,"props":2897,"children":2898},{"style":215},[2899],{"type":51,"value":848},{"type":45,"tag":73,"props":2901,"children":2902},{"class":75,"line":126},[2903,2907,2911,2915,2919,2923,2927],{"type":45,"tag":73,"props":2904,"children":2905},{"style":854},[2906],{"type":51,"value":857},{"type":45,"tag":73,"props":2908,"children":2909},{"style":215},[2910],{"type":51,"value":862},{"type":45,"tag":73,"props":2912,"children":2913},{"style":221},[2914],{"type":51,"value":261},{"type":45,"tag":73,"props":2916,"children":2917},{"style":215},[2918],{"type":51,"value":699},{"type":45,"tag":73,"props":2920,"children":2921},{"style":428},[2922],{"type":51,"value":875},{"type":45,"tag":73,"props":2924,"children":2925},{"style":221},[2926],{"type":51,"value":880},{"type":45,"tag":73,"props":2928,"children":2929},{"style":215},[2930],{"type":51,"value":885},{"type":45,"tag":73,"props":2932,"children":2933},{"class":75,"line":143},[2934,2938,2942,2946,2950,2954],{"type":45,"tag":73,"props":2935,"children":2936},{"style":854},[2937],{"type":51,"value":893},{"type":45,"tag":73,"props":2939,"children":2940},{"style":215},[2941],{"type":51,"value":862},{"type":45,"tag":73,"props":2943,"children":2944},{"style":215},[2945],{"type":51,"value":285},{"type":45,"tag":73,"props":2947,"children":2948},{"style":96},[2949],{"type":51,"value":906},{"type":45,"tag":73,"props":2951,"children":2952},{"style":215},[2953],{"type":51,"value":294},{"type":45,"tag":73,"props":2955,"children":2956},{"style":215},[2957],{"type":51,"value":885},{"type":45,"tag":73,"props":2959,"children":2960},{"class":75,"line":151},[2961,2965,2969,2973,2977,2981],{"type":45,"tag":73,"props":2962,"children":2963},{"style":854},[2964],{"type":51,"value":922},{"type":45,"tag":73,"props":2966,"children":2967},{"style":215},[2968],{"type":51,"value":862},{"type":45,"tag":73,"props":2970,"children":2971},{"style":215},[2972],{"type":51,"value":285},{"type":45,"tag":73,"props":2974,"children":2975},{"style":96},[2976],{"type":51,"value":935},{"type":45,"tag":73,"props":2978,"children":2979},{"style":215},[2980],{"type":51,"value":294},{"type":45,"tag":73,"props":2982,"children":2983},{"style":215},[2984],{"type":51,"value":885},{"type":45,"tag":73,"props":2986,"children":2987},{"class":75,"line":160},[2988,2992,2996,3000,3004],{"type":45,"tag":73,"props":2989,"children":2990},{"style":854},[2991],{"type":51,"value":951},{"type":45,"tag":73,"props":2993,"children":2994},{"style":215},[2995],{"type":51,"value":862},{"type":45,"tag":73,"props":2997,"children":2998},{"style":215},[2999],{"type":51,"value":285},{"type":45,"tag":73,"props":3001,"children":3002},{"style":96},[3003],{"type":51,"value":964},{"type":45,"tag":73,"props":3005,"children":3006},{"style":215},[3007],{"type":51,"value":969},{"type":45,"tag":73,"props":3009,"children":3010},{"class":75,"line":474},[3011,3015,3019],{"type":45,"tag":73,"props":3012,"children":3013},{"style":215},[3014],{"type":51,"value":977},{"type":45,"tag":73,"props":3016,"children":3017},{"style":221},[3018],{"type":51,"value":506},{"type":45,"tag":73,"props":3020,"children":3021},{"style":215},[3022],{"type":51,"value":299},{"type":45,"tag":73,"props":3024,"children":3025},{"class":75,"line":988},[3026],{"type":45,"tag":73,"props":3027,"children":3028},{"emptyLinePlaceholder":111},[3029],{"type":51,"value":114},{"type":45,"tag":73,"props":3031,"children":3032},{"class":75,"line":996},[3033],{"type":45,"tag":73,"props":3034,"children":3035},{"style":80},[3036],{"type":51,"value":3037},"\u002F\u002F List users\n",{"type":45,"tag":73,"props":3039,"children":3040},{"class":75,"line":1005},[3041,3045,3050,3054,3058,3062,3066,3071,3075,3079,3084,3088,3093,3097,3102,3106,3112,3117,3121,3125],{"type":45,"tag":73,"props":3042,"children":3043},{"style":407},[3044],{"type":51,"value":410},{"type":45,"tag":73,"props":3046,"children":3047},{"style":221},[3048],{"type":51,"value":3049}," list ",{"type":45,"tag":73,"props":3051,"children":3052},{"style":215},[3053],{"type":51,"value":420},{"type":45,"tag":73,"props":3055,"children":3056},{"style":209},[3057],{"type":51,"value":1024},{"type":45,"tag":73,"props":3059,"children":3060},{"style":221},[3061],{"type":51,"value":2883},{"type":45,"tag":73,"props":3063,"children":3064},{"style":215},[3065],{"type":51,"value":699},{"type":45,"tag":73,"props":3067,"children":3068},{"style":428},[3069],{"type":51,"value":3070},"list",{"type":45,"tag":73,"props":3072,"children":3073},{"style":221},[3074],{"type":51,"value":453},{"type":45,"tag":73,"props":3076,"children":3077},{"style":215},[3078],{"type":51,"value":1426},{"type":45,"tag":73,"props":3080,"children":3081},{"style":854},[3082],{"type":51,"value":3083}," queries",{"type":45,"tag":73,"props":3085,"children":3086},{"style":215},[3087],{"type":51,"value":862},{"type":45,"tag":73,"props":3089,"children":3090},{"style":221},[3091],{"type":51,"value":3092}," [Query",{"type":45,"tag":73,"props":3094,"children":3095},{"style":215},[3096],{"type":51,"value":699},{"type":45,"tag":73,"props":3098,"children":3099},{"style":428},[3100],{"type":51,"value":3101},"limit",{"type":45,"tag":73,"props":3103,"children":3104},{"style":221},[3105],{"type":51,"value":453},{"type":45,"tag":73,"props":3107,"children":3109},{"style":3108},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[3110],{"type":51,"value":3111},"25",{"type":45,"tag":73,"props":3113,"children":3114},{"style":221},[3115],{"type":51,"value":3116},")] ",{"type":45,"tag":73,"props":3118,"children":3119},{"style":215},[3120],{"type":51,"value":977},{"type":45,"tag":73,"props":3122,"children":3123},{"style":221},[3124],{"type":51,"value":506},{"type":45,"tag":73,"props":3126,"children":3127},{"style":215},[3128],{"type":51,"value":299},{"type":45,"tag":73,"props":3130,"children":3131},{"class":75,"line":1048},[3132],{"type":45,"tag":73,"props":3133,"children":3134},{"emptyLinePlaceholder":111},[3135],{"type":51,"value":114},{"type":45,"tag":73,"props":3137,"children":3138},{"class":75,"line":1076},[3139],{"type":45,"tag":73,"props":3140,"children":3141},{"style":80},[3142],{"type":51,"value":3143},"\u002F\u002F Get user\n",{"type":45,"tag":73,"props":3145,"children":3146},{"class":75,"line":1100},[3147,3151,3156,3160,3164,3168,3172,3176,3180,3184,3188,3192,3196,3201,3205,3209,3213],{"type":45,"tag":73,"props":3148,"children":3149},{"style":407},[3150],{"type":51,"value":410},{"type":45,"tag":73,"props":3152,"children":3153},{"style":221},[3154],{"type":51,"value":3155}," fetched ",{"type":45,"tag":73,"props":3157,"children":3158},{"style":215},[3159],{"type":51,"value":420},{"type":45,"tag":73,"props":3161,"children":3162},{"style":209},[3163],{"type":51,"value":1024},{"type":45,"tag":73,"props":3165,"children":3166},{"style":221},[3167],{"type":51,"value":2883},{"type":45,"tag":73,"props":3169,"children":3170},{"style":215},[3171],{"type":51,"value":699},{"type":45,"tag":73,"props":3173,"children":3174},{"style":428},[3175],{"type":51,"value":1371},{"type":45,"tag":73,"props":3177,"children":3178},{"style":221},[3179],{"type":51,"value":453},{"type":45,"tag":73,"props":3181,"children":3182},{"style":215},[3183],{"type":51,"value":1426},{"type":45,"tag":73,"props":3185,"children":3186},{"style":854},[3187],{"type":51,"value":2595},{"type":45,"tag":73,"props":3189,"children":3190},{"style":215},[3191],{"type":51,"value":862},{"type":45,"tag":73,"props":3193,"children":3194},{"style":215},[3195],{"type":51,"value":285},{"type":45,"tag":73,"props":3197,"children":3198},{"style":96},[3199],{"type":51,"value":3200},"[USER_ID]",{"type":45,"tag":73,"props":3202,"children":3203},{"style":215},[3204],{"type":51,"value":294},{"type":45,"tag":73,"props":3206,"children":3207},{"style":215},[3208],{"type":51,"value":275},{"type":45,"tag":73,"props":3210,"children":3211},{"style":221},[3212],{"type":51,"value":506},{"type":45,"tag":73,"props":3214,"children":3215},{"style":215},[3216],{"type":51,"value":299},{"type":45,"tag":73,"props":3218,"children":3219},{"class":75,"line":1116},[3220],{"type":45,"tag":73,"props":3221,"children":3222},{"emptyLinePlaceholder":111},[3223],{"type":51,"value":114},{"type":45,"tag":73,"props":3225,"children":3226},{"class":75,"line":1124},[3227],{"type":45,"tag":73,"props":3228,"children":3229},{"style":80},[3230],{"type":51,"value":3231},"\u002F\u002F Delete user\n",{"type":45,"tag":73,"props":3233,"children":3234},{"class":75,"line":1133},[3235,3239,3243,3247,3252,3256,3260,3264,3268,3272,3276,3280,3284,3288],{"type":45,"tag":73,"props":3236,"children":3237},{"style":209},[3238],{"type":51,"value":825},{"type":45,"tag":73,"props":3240,"children":3241},{"style":221},[3242],{"type":51,"value":2883},{"type":45,"tag":73,"props":3244,"children":3245},{"style":215},[3246],{"type":51,"value":699},{"type":45,"tag":73,"props":3248,"children":3249},{"style":428},[3250],{"type":51,"value":3251},"delete",{"type":45,"tag":73,"props":3253,"children":3254},{"style":221},[3255],{"type":51,"value":453},{"type":45,"tag":73,"props":3257,"children":3258},{"style":215},[3259],{"type":51,"value":1426},{"type":45,"tag":73,"props":3261,"children":3262},{"style":854},[3263],{"type":51,"value":2595},{"type":45,"tag":73,"props":3265,"children":3266},{"style":215},[3267],{"type":51,"value":862},{"type":45,"tag":73,"props":3269,"children":3270},{"style":215},[3271],{"type":51,"value":285},{"type":45,"tag":73,"props":3273,"children":3274},{"style":96},[3275],{"type":51,"value":3200},{"type":45,"tag":73,"props":3277,"children":3278},{"style":215},[3279],{"type":51,"value":294},{"type":45,"tag":73,"props":3281,"children":3282},{"style":215},[3283],{"type":51,"value":275},{"type":45,"tag":73,"props":3285,"children":3286},{"style":221},[3287],{"type":51,"value":506},{"type":45,"tag":73,"props":3289,"children":3290},{"style":215},[3291],{"type":51,"value":299},{"type":45,"tag":182,"props":3293,"children":3295},{"id":3294},"database-operations",[3296],{"type":51,"value":3297},"Database Operations",{"type":45,"tag":1468,"props":3299,"children":3300},{},[3301,3334],{"type":45,"tag":1472,"props":3302,"children":3303},{},[3304,3309,3311,3317,3319,3325,3327,3332],{"type":45,"tag":1476,"props":3305,"children":3306},{},[3307],{"type":51,"value":3308},"Note:",{"type":51,"value":3310}," Use ",{"type":45,"tag":69,"props":3312,"children":3314},{"className":3313},[],[3315],{"type":51,"value":3316},"TablesDB",{"type":51,"value":3318}," (not the deprecated ",{"type":45,"tag":69,"props":3320,"children":3322},{"className":3321},[],[3323],{"type":51,"value":3324},"Databases",{"type":51,"value":3326}," class) for all new code. Only use ",{"type":45,"tag":69,"props":3328,"children":3330},{"className":3329},[],[3331],{"type":51,"value":3324},{"type":51,"value":3333}," if the existing codebase already relies on it or the user explicitly requests it.",{"type":45,"tag":1472,"props":3335,"children":3336},{},[3337,3342,3344,3350],{"type":45,"tag":1476,"props":3338,"children":3339},{},[3340],{"type":51,"value":3341},"Tip:",{"type":51,"value":3343}," Prefer the object-params calling style (e.g., ",{"type":45,"tag":69,"props":3345,"children":3347},{"className":3346},[],[3348],{"type":51,"value":3349},"{ databaseId: '...' }",{"type":51,"value":3351},") for all SDK method calls. Only use positional arguments if the existing codebase already uses them or the user explicitly requests it.",{"type":45,"tag":61,"props":3353,"children":3355},{"className":190,"code":3354,"language":21,"meta":66,"style":66},"const tablesDB = new TablesDB(client);\n\n\u002F\u002F Create database (server-side only)\nconst db = await tablesDB.create({ databaseId: ID.unique(), name: 'My Database' });\n\n\u002F\u002F Create table (server-side only)\nconst col = await tablesDB.createTable({\n    databaseId: '[DATABASE_ID]',\n    tableId: ID.unique(),\n    name: 'My Table'\n});\n\n\u002F\u002F Create row\nconst doc = await tablesDB.createRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: ID.unique(),\n    data: { title: 'Hello World', content: 'Example content' }\n});\n\n\u002F\u002F List rows with query\nconst results = await tablesDB.listRows({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    queries: [Query.equal('status', 'active'), Query.limit(10)]\n});\n\n\u002F\u002F Get row\nconst row = await tablesDB.getRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]'\n});\n\n\u002F\u002F Update row\nawait tablesDB.updateRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]',\n    data: { title: 'Updated Title' }\n});\n\n\u002F\u002F Delete row\nawait tablesDB.deleteRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: '[ROW_ID]'\n});\n",[3356],{"type":45,"tag":69,"props":3357,"children":3358},{"__ignoreMap":66},[3359,3391,3398,3406,3510,3517,3525,3566,3595,3627,3651,3666,3673,3681,3722,3749,3777,3809,3878,3893,3900,3908,3949,3976,4003,4096,4111,4118,4126,4167,4194,4221,4245,4260,4267,4275,4303,4330,4357,4384,4425,4441,4449,4458,4487,4515,4543,4567],{"type":45,"tag":73,"props":3360,"children":3361},{"class":75,"line":76},[3362,3366,3371,3375,3379,3383,3387],{"type":45,"tag":73,"props":3363,"children":3364},{"style":407},[3365],{"type":51,"value":410},{"type":45,"tag":73,"props":3367,"children":3368},{"style":221},[3369],{"type":51,"value":3370}," tablesDB ",{"type":45,"tag":73,"props":3372,"children":3373},{"style":215},[3374],{"type":51,"value":420},{"type":45,"tag":73,"props":3376,"children":3377},{"style":215},[3378],{"type":51,"value":425},{"type":45,"tag":73,"props":3380,"children":3381},{"style":428},[3382],{"type":51,"value":243},{"type":45,"tag":73,"props":3384,"children":3385},{"style":221},[3386],{"type":51,"value":798},{"type":45,"tag":73,"props":3388,"children":3389},{"style":215},[3390],{"type":51,"value":299},{"type":45,"tag":73,"props":3392,"children":3393},{"class":75,"line":86},[3394],{"type":45,"tag":73,"props":3395,"children":3396},{"emptyLinePlaceholder":111},[3397],{"type":51,"value":114},{"type":45,"tag":73,"props":3399,"children":3400},{"class":75,"line":107},[3401],{"type":45,"tag":73,"props":3402,"children":3403},{"style":80},[3404],{"type":51,"value":3405},"\u002F\u002F Create database (server-side only)\n",{"type":45,"tag":73,"props":3407,"children":3408},{"class":75,"line":117},[3409,3413,3418,3422,3426,3431,3435,3439,3443,3447,3452,3456,3460,3464,3468,3472,3476,3481,3485,3489,3494,3498,3502,3506],{"type":45,"tag":73,"props":3410,"children":3411},{"style":407},[3412],{"type":51,"value":410},{"type":45,"tag":73,"props":3414,"children":3415},{"style":221},[3416],{"type":51,"value":3417}," db ",{"type":45,"tag":73,"props":3419,"children":3420},{"style":215},[3421],{"type":51,"value":420},{"type":45,"tag":73,"props":3423,"children":3424},{"style":209},[3425],{"type":51,"value":1024},{"type":45,"tag":73,"props":3427,"children":3428},{"style":221},[3429],{"type":51,"value":3430}," tablesDB",{"type":45,"tag":73,"props":3432,"children":3433},{"style":215},[3434],{"type":51,"value":699},{"type":45,"tag":73,"props":3436,"children":3437},{"style":428},[3438],{"type":51,"value":839},{"type":45,"tag":73,"props":3440,"children":3441},{"style":221},[3442],{"type":51,"value":453},{"type":45,"tag":73,"props":3444,"children":3445},{"style":215},[3446],{"type":51,"value":1426},{"type":45,"tag":73,"props":3448,"children":3449},{"style":854},[3450],{"type":51,"value":3451}," databaseId",{"type":45,"tag":73,"props":3453,"children":3454},{"style":215},[3455],{"type":51,"value":862},{"type":45,"tag":73,"props":3457,"children":3458},{"style":221},[3459],{"type":51,"value":261},{"type":45,"tag":73,"props":3461,"children":3462},{"style":215},[3463],{"type":51,"value":699},{"type":45,"tag":73,"props":3465,"children":3466},{"style":428},[3467],{"type":51,"value":875},{"type":45,"tag":73,"props":3469,"children":3470},{"style":221},[3471],{"type":51,"value":880},{"type":45,"tag":73,"props":3473,"children":3474},{"style":215},[3475],{"type":51,"value":229},{"type":45,"tag":73,"props":3477,"children":3478},{"style":854},[3479],{"type":51,"value":3480}," name",{"type":45,"tag":73,"props":3482,"children":3483},{"style":215},[3484],{"type":51,"value":862},{"type":45,"tag":73,"props":3486,"children":3487},{"style":215},[3488],{"type":51,"value":285},{"type":45,"tag":73,"props":3490,"children":3491},{"style":96},[3492],{"type":51,"value":3493},"My Database",{"type":45,"tag":73,"props":3495,"children":3496},{"style":215},[3497],{"type":51,"value":294},{"type":45,"tag":73,"props":3499,"children":3500},{"style":215},[3501],{"type":51,"value":275},{"type":45,"tag":73,"props":3503,"children":3504},{"style":221},[3505],{"type":51,"value":506},{"type":45,"tag":73,"props":3507,"children":3508},{"style":215},[3509],{"type":51,"value":299},{"type":45,"tag":73,"props":3511,"children":3512},{"class":75,"line":126},[3513],{"type":45,"tag":73,"props":3514,"children":3515},{"emptyLinePlaceholder":111},[3516],{"type":51,"value":114},{"type":45,"tag":73,"props":3518,"children":3519},{"class":75,"line":143},[3520],{"type":45,"tag":73,"props":3521,"children":3522},{"style":80},[3523],{"type":51,"value":3524},"\u002F\u002F Create table (server-side only)\n",{"type":45,"tag":73,"props":3526,"children":3527},{"class":75,"line":151},[3528,3532,3537,3541,3545,3549,3553,3558,3562],{"type":45,"tag":73,"props":3529,"children":3530},{"style":407},[3531],{"type":51,"value":410},{"type":45,"tag":73,"props":3533,"children":3534},{"style":221},[3535],{"type":51,"value":3536}," col ",{"type":45,"tag":73,"props":3538,"children":3539},{"style":215},[3540],{"type":51,"value":420},{"type":45,"tag":73,"props":3542,"children":3543},{"style":209},[3544],{"type":51,"value":1024},{"type":45,"tag":73,"props":3546,"children":3547},{"style":221},[3548],{"type":51,"value":3430},{"type":45,"tag":73,"props":3550,"children":3551},{"style":215},[3552],{"type":51,"value":699},{"type":45,"tag":73,"props":3554,"children":3555},{"style":428},[3556],{"type":51,"value":3557},"createTable",{"type":45,"tag":73,"props":3559,"children":3560},{"style":221},[3561],{"type":51,"value":453},{"type":45,"tag":73,"props":3563,"children":3564},{"style":215},[3565],{"type":51,"value":848},{"type":45,"tag":73,"props":3567,"children":3568},{"class":75,"line":160},[3569,3574,3578,3582,3587,3591],{"type":45,"tag":73,"props":3570,"children":3571},{"style":854},[3572],{"type":51,"value":3573},"    databaseId",{"type":45,"tag":73,"props":3575,"children":3576},{"style":215},[3577],{"type":51,"value":862},{"type":45,"tag":73,"props":3579,"children":3580},{"style":215},[3581],{"type":51,"value":285},{"type":45,"tag":73,"props":3583,"children":3584},{"style":96},[3585],{"type":51,"value":3586},"[DATABASE_ID]",{"type":45,"tag":73,"props":3588,"children":3589},{"style":215},[3590],{"type":51,"value":294},{"type":45,"tag":73,"props":3592,"children":3593},{"style":215},[3594],{"type":51,"value":885},{"type":45,"tag":73,"props":3596,"children":3597},{"class":75,"line":474},[3598,3603,3607,3611,3615,3619,3623],{"type":45,"tag":73,"props":3599,"children":3600},{"style":854},[3601],{"type":51,"value":3602},"    tableId",{"type":45,"tag":73,"props":3604,"children":3605},{"style":215},[3606],{"type":51,"value":862},{"type":45,"tag":73,"props":3608,"children":3609},{"style":221},[3610],{"type":51,"value":261},{"type":45,"tag":73,"props":3612,"children":3613},{"style":215},[3614],{"type":51,"value":699},{"type":45,"tag":73,"props":3616,"children":3617},{"style":428},[3618],{"type":51,"value":875},{"type":45,"tag":73,"props":3620,"children":3621},{"style":221},[3622],{"type":51,"value":880},{"type":45,"tag":73,"props":3624,"children":3625},{"style":215},[3626],{"type":51,"value":885},{"type":45,"tag":73,"props":3628,"children":3629},{"class":75,"line":988},[3630,3634,3638,3642,3647],{"type":45,"tag":73,"props":3631,"children":3632},{"style":854},[3633],{"type":51,"value":951},{"type":45,"tag":73,"props":3635,"children":3636},{"style":215},[3637],{"type":51,"value":862},{"type":45,"tag":73,"props":3639,"children":3640},{"style":215},[3641],{"type":51,"value":285},{"type":45,"tag":73,"props":3643,"children":3644},{"style":96},[3645],{"type":51,"value":3646},"My Table",{"type":45,"tag":73,"props":3648,"children":3649},{"style":215},[3650],{"type":51,"value":969},{"type":45,"tag":73,"props":3652,"children":3653},{"class":75,"line":996},[3654,3658,3662],{"type":45,"tag":73,"props":3655,"children":3656},{"style":215},[3657],{"type":51,"value":977},{"type":45,"tag":73,"props":3659,"children":3660},{"style":221},[3661],{"type":51,"value":506},{"type":45,"tag":73,"props":3663,"children":3664},{"style":215},[3665],{"type":51,"value":299},{"type":45,"tag":73,"props":3667,"children":3668},{"class":75,"line":1005},[3669],{"type":45,"tag":73,"props":3670,"children":3671},{"emptyLinePlaceholder":111},[3672],{"type":51,"value":114},{"type":45,"tag":73,"props":3674,"children":3675},{"class":75,"line":1048},[3676],{"type":45,"tag":73,"props":3677,"children":3678},{"style":80},[3679],{"type":51,"value":3680},"\u002F\u002F Create row\n",{"type":45,"tag":73,"props":3682,"children":3683},{"class":75,"line":1076},[3684,3688,3693,3697,3701,3705,3709,3714,3718],{"type":45,"tag":73,"props":3685,"children":3686},{"style":407},[3687],{"type":51,"value":410},{"type":45,"tag":73,"props":3689,"children":3690},{"style":221},[3691],{"type":51,"value":3692}," doc ",{"type":45,"tag":73,"props":3694,"children":3695},{"style":215},[3696],{"type":51,"value":420},{"type":45,"tag":73,"props":3698,"children":3699},{"style":209},[3700],{"type":51,"value":1024},{"type":45,"tag":73,"props":3702,"children":3703},{"style":221},[3704],{"type":51,"value":3430},{"type":45,"tag":73,"props":3706,"children":3707},{"style":215},[3708],{"type":51,"value":699},{"type":45,"tag":73,"props":3710,"children":3711},{"style":428},[3712],{"type":51,"value":3713},"createRow",{"type":45,"tag":73,"props":3715,"children":3716},{"style":221},[3717],{"type":51,"value":453},{"type":45,"tag":73,"props":3719,"children":3720},{"style":215},[3721],{"type":51,"value":848},{"type":45,"tag":73,"props":3723,"children":3724},{"class":75,"line":1100},[3725,3729,3733,3737,3741,3745],{"type":45,"tag":73,"props":3726,"children":3727},{"style":854},[3728],{"type":51,"value":3573},{"type":45,"tag":73,"props":3730,"children":3731},{"style":215},[3732],{"type":51,"value":862},{"type":45,"tag":73,"props":3734,"children":3735},{"style":215},[3736],{"type":51,"value":285},{"type":45,"tag":73,"props":3738,"children":3739},{"style":96},[3740],{"type":51,"value":3586},{"type":45,"tag":73,"props":3742,"children":3743},{"style":215},[3744],{"type":51,"value":294},{"type":45,"tag":73,"props":3746,"children":3747},{"style":215},[3748],{"type":51,"value":885},{"type":45,"tag":73,"props":3750,"children":3751},{"class":75,"line":1116},[3752,3756,3760,3764,3769,3773],{"type":45,"tag":73,"props":3753,"children":3754},{"style":854},[3755],{"type":51,"value":3602},{"type":45,"tag":73,"props":3757,"children":3758},{"style":215},[3759],{"type":51,"value":862},{"type":45,"tag":73,"props":3761,"children":3762},{"style":215},[3763],{"type":51,"value":285},{"type":45,"tag":73,"props":3765,"children":3766},{"style":96},[3767],{"type":51,"value":3768},"[TABLE_ID]",{"type":45,"tag":73,"props":3770,"children":3771},{"style":215},[3772],{"type":51,"value":294},{"type":45,"tag":73,"props":3774,"children":3775},{"style":215},[3776],{"type":51,"value":885},{"type":45,"tag":73,"props":3778,"children":3779},{"class":75,"line":1124},[3780,3785,3789,3793,3797,3801,3805],{"type":45,"tag":73,"props":3781,"children":3782},{"style":854},[3783],{"type":51,"value":3784},"    rowId",{"type":45,"tag":73,"props":3786,"children":3787},{"style":215},[3788],{"type":51,"value":862},{"type":45,"tag":73,"props":3790,"children":3791},{"style":221},[3792],{"type":51,"value":261},{"type":45,"tag":73,"props":3794,"children":3795},{"style":215},[3796],{"type":51,"value":699},{"type":45,"tag":73,"props":3798,"children":3799},{"style":428},[3800],{"type":51,"value":875},{"type":45,"tag":73,"props":3802,"children":3803},{"style":221},[3804],{"type":51,"value":880},{"type":45,"tag":73,"props":3806,"children":3807},{"style":215},[3808],{"type":51,"value":885},{"type":45,"tag":73,"props":3810,"children":3811},{"class":75,"line":1133},[3812,3817,3821,3825,3830,3834,3838,3843,3847,3851,3856,3860,3864,3869,3873],{"type":45,"tag":73,"props":3813,"children":3814},{"style":854},[3815],{"type":51,"value":3816},"    data",{"type":45,"tag":73,"props":3818,"children":3819},{"style":215},[3820],{"type":51,"value":862},{"type":45,"tag":73,"props":3822,"children":3823},{"style":215},[3824],{"type":51,"value":218},{"type":45,"tag":73,"props":3826,"children":3827},{"style":854},[3828],{"type":51,"value":3829}," title",{"type":45,"tag":73,"props":3831,"children":3832},{"style":215},[3833],{"type":51,"value":862},{"type":45,"tag":73,"props":3835,"children":3836},{"style":215},[3837],{"type":51,"value":285},{"type":45,"tag":73,"props":3839,"children":3840},{"style":96},[3841],{"type":51,"value":3842},"Hello World",{"type":45,"tag":73,"props":3844,"children":3845},{"style":215},[3846],{"type":51,"value":294},{"type":45,"tag":73,"props":3848,"children":3849},{"style":215},[3850],{"type":51,"value":229},{"type":45,"tag":73,"props":3852,"children":3853},{"style":854},[3854],{"type":51,"value":3855}," content",{"type":45,"tag":73,"props":3857,"children":3858},{"style":215},[3859],{"type":51,"value":862},{"type":45,"tag":73,"props":3861,"children":3862},{"style":215},[3863],{"type":51,"value":285},{"type":45,"tag":73,"props":3865,"children":3866},{"style":96},[3867],{"type":51,"value":3868},"Example content",{"type":45,"tag":73,"props":3870,"children":3871},{"style":215},[3872],{"type":51,"value":294},{"type":45,"tag":73,"props":3874,"children":3875},{"style":215},[3876],{"type":51,"value":3877}," }\n",{"type":45,"tag":73,"props":3879,"children":3880},{"class":75,"line":1159},[3881,3885,3889],{"type":45,"tag":73,"props":3882,"children":3883},{"style":215},[3884],{"type":51,"value":977},{"type":45,"tag":73,"props":3886,"children":3887},{"style":221},[3888],{"type":51,"value":506},{"type":45,"tag":73,"props":3890,"children":3891},{"style":215},[3892],{"type":51,"value":299},{"type":45,"tag":73,"props":3894,"children":3895},{"class":75,"line":1190},[3896],{"type":45,"tag":73,"props":3897,"children":3898},{"emptyLinePlaceholder":111},[3899],{"type":51,"value":114},{"type":45,"tag":73,"props":3901,"children":3902},{"class":75,"line":1220},[3903],{"type":45,"tag":73,"props":3904,"children":3905},{"style":80},[3906],{"type":51,"value":3907},"\u002F\u002F List rows with query\n",{"type":45,"tag":73,"props":3909,"children":3910},{"class":75,"line":1250},[3911,3915,3920,3924,3928,3932,3936,3941,3945],{"type":45,"tag":73,"props":3912,"children":3913},{"style":407},[3914],{"type":51,"value":410},{"type":45,"tag":73,"props":3916,"children":3917},{"style":221},[3918],{"type":51,"value":3919}," results ",{"type":45,"tag":73,"props":3921,"children":3922},{"style":215},[3923],{"type":51,"value":420},{"type":45,"tag":73,"props":3925,"children":3926},{"style":209},[3927],{"type":51,"value":1024},{"type":45,"tag":73,"props":3929,"children":3930},{"style":221},[3931],{"type":51,"value":3430},{"type":45,"tag":73,"props":3933,"children":3934},{"style":215},[3935],{"type":51,"value":699},{"type":45,"tag":73,"props":3937,"children":3938},{"style":428},[3939],{"type":51,"value":3940},"listRows",{"type":45,"tag":73,"props":3942,"children":3943},{"style":221},[3944],{"type":51,"value":453},{"type":45,"tag":73,"props":3946,"children":3947},{"style":215},[3948],{"type":51,"value":848},{"type":45,"tag":73,"props":3950,"children":3951},{"class":75,"line":29},[3952,3956,3960,3964,3968,3972],{"type":45,"tag":73,"props":3953,"children":3954},{"style":854},[3955],{"type":51,"value":3573},{"type":45,"tag":73,"props":3957,"children":3958},{"style":215},[3959],{"type":51,"value":862},{"type":45,"tag":73,"props":3961,"children":3962},{"style":215},[3963],{"type":51,"value":285},{"type":45,"tag":73,"props":3965,"children":3966},{"style":96},[3967],{"type":51,"value":3586},{"type":45,"tag":73,"props":3969,"children":3970},{"style":215},[3971],{"type":51,"value":294},{"type":45,"tag":73,"props":3973,"children":3974},{"style":215},[3975],{"type":51,"value":885},{"type":45,"tag":73,"props":3977,"children":3978},{"class":75,"line":1323},[3979,3983,3987,3991,3995,3999],{"type":45,"tag":73,"props":3980,"children":3981},{"style":854},[3982],{"type":51,"value":3602},{"type":45,"tag":73,"props":3984,"children":3985},{"style":215},[3986],{"type":51,"value":862},{"type":45,"tag":73,"props":3988,"children":3989},{"style":215},[3990],{"type":51,"value":285},{"type":45,"tag":73,"props":3992,"children":3993},{"style":96},[3994],{"type":51,"value":3768},{"type":45,"tag":73,"props":3996,"children":3997},{"style":215},[3998],{"type":51,"value":294},{"type":45,"tag":73,"props":4000,"children":4001},{"style":215},[4002],{"type":51,"value":885},{"type":45,"tag":73,"props":4004,"children":4005},{"class":75,"line":1331},[4006,4011,4015,4019,4023,4028,4032,4036,4041,4045,4049,4053,4058,4062,4066,4070,4074,4078,4082,4086,4091],{"type":45,"tag":73,"props":4007,"children":4008},{"style":854},[4009],{"type":51,"value":4010},"    queries",{"type":45,"tag":73,"props":4012,"children":4013},{"style":215},[4014],{"type":51,"value":862},{"type":45,"tag":73,"props":4016,"children":4017},{"style":221},[4018],{"type":51,"value":3092},{"type":45,"tag":73,"props":4020,"children":4021},{"style":215},[4022],{"type":51,"value":699},{"type":45,"tag":73,"props":4024,"children":4025},{"style":428},[4026],{"type":51,"value":4027},"equal",{"type":45,"tag":73,"props":4029,"children":4030},{"style":221},[4031],{"type":51,"value":453},{"type":45,"tag":73,"props":4033,"children":4034},{"style":215},[4035],{"type":51,"value":294},{"type":45,"tag":73,"props":4037,"children":4038},{"style":96},[4039],{"type":51,"value":4040},"status",{"type":45,"tag":73,"props":4042,"children":4043},{"style":215},[4044],{"type":51,"value":294},{"type":45,"tag":73,"props":4046,"children":4047},{"style":215},[4048],{"type":51,"value":229},{"type":45,"tag":73,"props":4050,"children":4051},{"style":215},[4052],{"type":51,"value":285},{"type":45,"tag":73,"props":4054,"children":4055},{"style":96},[4056],{"type":51,"value":4057},"active",{"type":45,"tag":73,"props":4059,"children":4060},{"style":215},[4061],{"type":51,"value":294},{"type":45,"tag":73,"props":4063,"children":4064},{"style":221},[4065],{"type":51,"value":506},{"type":45,"tag":73,"props":4067,"children":4068},{"style":215},[4069],{"type":51,"value":229},{"type":45,"tag":73,"props":4071,"children":4072},{"style":221},[4073],{"type":51,"value":270},{"type":45,"tag":73,"props":4075,"children":4076},{"style":215},[4077],{"type":51,"value":699},{"type":45,"tag":73,"props":4079,"children":4080},{"style":428},[4081],{"type":51,"value":3101},{"type":45,"tag":73,"props":4083,"children":4084},{"style":221},[4085],{"type":51,"value":453},{"type":45,"tag":73,"props":4087,"children":4088},{"style":3108},[4089],{"type":51,"value":4090},"10",{"type":45,"tag":73,"props":4092,"children":4093},{"style":221},[4094],{"type":51,"value":4095},")]\n",{"type":45,"tag":73,"props":4097,"children":4098},{"class":75,"line":1340},[4099,4103,4107],{"type":45,"tag":73,"props":4100,"children":4101},{"style":215},[4102],{"type":51,"value":977},{"type":45,"tag":73,"props":4104,"children":4105},{"style":221},[4106],{"type":51,"value":506},{"type":45,"tag":73,"props":4108,"children":4109},{"style":215},[4110],{"type":51,"value":299},{"type":45,"tag":73,"props":4112,"children":4113},{"class":75,"line":1382},[4114],{"type":45,"tag":73,"props":4115,"children":4116},{"emptyLinePlaceholder":111},[4117],{"type":51,"value":114},{"type":45,"tag":73,"props":4119,"children":4120},{"class":75,"line":1390},[4121],{"type":45,"tag":73,"props":4122,"children":4123},{"style":80},[4124],{"type":51,"value":4125},"\u002F\u002F Get row\n",{"type":45,"tag":73,"props":4127,"children":4128},{"class":75,"line":1399},[4129,4133,4138,4142,4146,4150,4154,4159,4163],{"type":45,"tag":73,"props":4130,"children":4131},{"style":407},[4132],{"type":51,"value":410},{"type":45,"tag":73,"props":4134,"children":4135},{"style":221},[4136],{"type":51,"value":4137}," row ",{"type":45,"tag":73,"props":4139,"children":4140},{"style":215},[4141],{"type":51,"value":420},{"type":45,"tag":73,"props":4143,"children":4144},{"style":209},[4145],{"type":51,"value":1024},{"type":45,"tag":73,"props":4147,"children":4148},{"style":221},[4149],{"type":51,"value":3430},{"type":45,"tag":73,"props":4151,"children":4152},{"style":215},[4153],{"type":51,"value":699},{"type":45,"tag":73,"props":4155,"children":4156},{"style":428},[4157],{"type":51,"value":4158},"getRow",{"type":45,"tag":73,"props":4160,"children":4161},{"style":221},[4162],{"type":51,"value":453},{"type":45,"tag":73,"props":4164,"children":4165},{"style":215},[4166],{"type":51,"value":848},{"type":45,"tag":73,"props":4168,"children":4169},{"class":75,"line":2522},[4170,4174,4178,4182,4186,4190],{"type":45,"tag":73,"props":4171,"children":4172},{"style":854},[4173],{"type":51,"value":3573},{"type":45,"tag":73,"props":4175,"children":4176},{"style":215},[4177],{"type":51,"value":862},{"type":45,"tag":73,"props":4179,"children":4180},{"style":215},[4181],{"type":51,"value":285},{"type":45,"tag":73,"props":4183,"children":4184},{"style":96},[4185],{"type":51,"value":3586},{"type":45,"tag":73,"props":4187,"children":4188},{"style":215},[4189],{"type":51,"value":294},{"type":45,"tag":73,"props":4191,"children":4192},{"style":215},[4193],{"type":51,"value":885},{"type":45,"tag":73,"props":4195,"children":4196},{"class":75,"line":2585},[4197,4201,4205,4209,4213,4217],{"type":45,"tag":73,"props":4198,"children":4199},{"style":854},[4200],{"type":51,"value":3602},{"type":45,"tag":73,"props":4202,"children":4203},{"style":215},[4204],{"type":51,"value":862},{"type":45,"tag":73,"props":4206,"children":4207},{"style":215},[4208],{"type":51,"value":285},{"type":45,"tag":73,"props":4210,"children":4211},{"style":96},[4212],{"type":51,"value":3768},{"type":45,"tag":73,"props":4214,"children":4215},{"style":215},[4216],{"type":51,"value":294},{"type":45,"tag":73,"props":4218,"children":4219},{"style":215},[4220],{"type":51,"value":885},{"type":45,"tag":73,"props":4222,"children":4223},{"class":75,"line":2647},[4224,4228,4232,4236,4241],{"type":45,"tag":73,"props":4225,"children":4226},{"style":854},[4227],{"type":51,"value":3784},{"type":45,"tag":73,"props":4229,"children":4230},{"style":215},[4231],{"type":51,"value":862},{"type":45,"tag":73,"props":4233,"children":4234},{"style":215},[4235],{"type":51,"value":285},{"type":45,"tag":73,"props":4237,"children":4238},{"style":96},[4239],{"type":51,"value":4240},"[ROW_ID]",{"type":45,"tag":73,"props":4242,"children":4243},{"style":215},[4244],{"type":51,"value":969},{"type":45,"tag":73,"props":4246,"children":4247},{"class":75,"line":2655},[4248,4252,4256],{"type":45,"tag":73,"props":4249,"children":4250},{"style":215},[4251],{"type":51,"value":977},{"type":45,"tag":73,"props":4253,"children":4254},{"style":221},[4255],{"type":51,"value":506},{"type":45,"tag":73,"props":4257,"children":4258},{"style":215},[4259],{"type":51,"value":299},{"type":45,"tag":73,"props":4261,"children":4262},{"class":75,"line":2664},[4263],{"type":45,"tag":73,"props":4264,"children":4265},{"emptyLinePlaceholder":111},[4266],{"type":51,"value":114},{"type":45,"tag":73,"props":4268,"children":4269},{"class":75,"line":2718},[4270],{"type":45,"tag":73,"props":4271,"children":4272},{"style":80},[4273],{"type":51,"value":4274},"\u002F\u002F Update row\n",{"type":45,"tag":73,"props":4276,"children":4277},{"class":75,"line":2726},[4278,4282,4286,4290,4295,4299],{"type":45,"tag":73,"props":4279,"children":4280},{"style":209},[4281],{"type":51,"value":825},{"type":45,"tag":73,"props":4283,"children":4284},{"style":221},[4285],{"type":51,"value":3430},{"type":45,"tag":73,"props":4287,"children":4288},{"style":215},[4289],{"type":51,"value":699},{"type":45,"tag":73,"props":4291,"children":4292},{"style":428},[4293],{"type":51,"value":4294},"updateRow",{"type":45,"tag":73,"props":4296,"children":4297},{"style":221},[4298],{"type":51,"value":453},{"type":45,"tag":73,"props":4300,"children":4301},{"style":215},[4302],{"type":51,"value":848},{"type":45,"tag":73,"props":4304,"children":4305},{"class":75,"line":2734},[4306,4310,4314,4318,4322,4326],{"type":45,"tag":73,"props":4307,"children":4308},{"style":854},[4309],{"type":51,"value":3573},{"type":45,"tag":73,"props":4311,"children":4312},{"style":215},[4313],{"type":51,"value":862},{"type":45,"tag":73,"props":4315,"children":4316},{"style":215},[4317],{"type":51,"value":285},{"type":45,"tag":73,"props":4319,"children":4320},{"style":96},[4321],{"type":51,"value":3586},{"type":45,"tag":73,"props":4323,"children":4324},{"style":215},[4325],{"type":51,"value":294},{"type":45,"tag":73,"props":4327,"children":4328},{"style":215},[4329],{"type":51,"value":885},{"type":45,"tag":73,"props":4331,"children":4332},{"class":75,"line":2743},[4333,4337,4341,4345,4349,4353],{"type":45,"tag":73,"props":4334,"children":4335},{"style":854},[4336],{"type":51,"value":3602},{"type":45,"tag":73,"props":4338,"children":4339},{"style":215},[4340],{"type":51,"value":862},{"type":45,"tag":73,"props":4342,"children":4343},{"style":215},[4344],{"type":51,"value":285},{"type":45,"tag":73,"props":4346,"children":4347},{"style":96},[4348],{"type":51,"value":3768},{"type":45,"tag":73,"props":4350,"children":4351},{"style":215},[4352],{"type":51,"value":294},{"type":45,"tag":73,"props":4354,"children":4355},{"style":215},[4356],{"type":51,"value":885},{"type":45,"tag":73,"props":4358,"children":4359},{"class":75,"line":2773},[4360,4364,4368,4372,4376,4380],{"type":45,"tag":73,"props":4361,"children":4362},{"style":854},[4363],{"type":51,"value":3784},{"type":45,"tag":73,"props":4365,"children":4366},{"style":215},[4367],{"type":51,"value":862},{"type":45,"tag":73,"props":4369,"children":4370},{"style":215},[4371],{"type":51,"value":285},{"type":45,"tag":73,"props":4373,"children":4374},{"style":96},[4375],{"type":51,"value":4240},{"type":45,"tag":73,"props":4377,"children":4378},{"style":215},[4379],{"type":51,"value":294},{"type":45,"tag":73,"props":4381,"children":4382},{"style":215},[4383],{"type":51,"value":885},{"type":45,"tag":73,"props":4385,"children":4387},{"class":75,"line":4386},40,[4388,4392,4396,4400,4404,4408,4412,4417,4421],{"type":45,"tag":73,"props":4389,"children":4390},{"style":854},[4391],{"type":51,"value":3816},{"type":45,"tag":73,"props":4393,"children":4394},{"style":215},[4395],{"type":51,"value":862},{"type":45,"tag":73,"props":4397,"children":4398},{"style":215},[4399],{"type":51,"value":218},{"type":45,"tag":73,"props":4401,"children":4402},{"style":854},[4403],{"type":51,"value":3829},{"type":45,"tag":73,"props":4405,"children":4406},{"style":215},[4407],{"type":51,"value":862},{"type":45,"tag":73,"props":4409,"children":4410},{"style":215},[4411],{"type":51,"value":285},{"type":45,"tag":73,"props":4413,"children":4414},{"style":96},[4415],{"type":51,"value":4416},"Updated Title",{"type":45,"tag":73,"props":4418,"children":4419},{"style":215},[4420],{"type":51,"value":294},{"type":45,"tag":73,"props":4422,"children":4423},{"style":215},[4424],{"type":51,"value":3877},{"type":45,"tag":73,"props":4426,"children":4428},{"class":75,"line":4427},41,[4429,4433,4437],{"type":45,"tag":73,"props":4430,"children":4431},{"style":215},[4432],{"type":51,"value":977},{"type":45,"tag":73,"props":4434,"children":4435},{"style":221},[4436],{"type":51,"value":506},{"type":45,"tag":73,"props":4438,"children":4439},{"style":215},[4440],{"type":51,"value":299},{"type":45,"tag":73,"props":4442,"children":4444},{"class":75,"line":4443},42,[4445],{"type":45,"tag":73,"props":4446,"children":4447},{"emptyLinePlaceholder":111},[4448],{"type":51,"value":114},{"type":45,"tag":73,"props":4450,"children":4452},{"class":75,"line":4451},43,[4453],{"type":45,"tag":73,"props":4454,"children":4455},{"style":80},[4456],{"type":51,"value":4457},"\u002F\u002F Delete row\n",{"type":45,"tag":73,"props":4459,"children":4461},{"class":75,"line":4460},44,[4462,4466,4470,4474,4479,4483],{"type":45,"tag":73,"props":4463,"children":4464},{"style":209},[4465],{"type":51,"value":825},{"type":45,"tag":73,"props":4467,"children":4468},{"style":221},[4469],{"type":51,"value":3430},{"type":45,"tag":73,"props":4471,"children":4472},{"style":215},[4473],{"type":51,"value":699},{"type":45,"tag":73,"props":4475,"children":4476},{"style":428},[4477],{"type":51,"value":4478},"deleteRow",{"type":45,"tag":73,"props":4480,"children":4481},{"style":221},[4482],{"type":51,"value":453},{"type":45,"tag":73,"props":4484,"children":4485},{"style":215},[4486],{"type":51,"value":848},{"type":45,"tag":73,"props":4488,"children":4490},{"class":75,"line":4489},45,[4491,4495,4499,4503,4507,4511],{"type":45,"tag":73,"props":4492,"children":4493},{"style":854},[4494],{"type":51,"value":3573},{"type":45,"tag":73,"props":4496,"children":4497},{"style":215},[4498],{"type":51,"value":862},{"type":45,"tag":73,"props":4500,"children":4501},{"style":215},[4502],{"type":51,"value":285},{"type":45,"tag":73,"props":4504,"children":4505},{"style":96},[4506],{"type":51,"value":3586},{"type":45,"tag":73,"props":4508,"children":4509},{"style":215},[4510],{"type":51,"value":294},{"type":45,"tag":73,"props":4512,"children":4513},{"style":215},[4514],{"type":51,"value":885},{"type":45,"tag":73,"props":4516,"children":4518},{"class":75,"line":4517},46,[4519,4523,4527,4531,4535,4539],{"type":45,"tag":73,"props":4520,"children":4521},{"style":854},[4522],{"type":51,"value":3602},{"type":45,"tag":73,"props":4524,"children":4525},{"style":215},[4526],{"type":51,"value":862},{"type":45,"tag":73,"props":4528,"children":4529},{"style":215},[4530],{"type":51,"value":285},{"type":45,"tag":73,"props":4532,"children":4533},{"style":96},[4534],{"type":51,"value":3768},{"type":45,"tag":73,"props":4536,"children":4537},{"style":215},[4538],{"type":51,"value":294},{"type":45,"tag":73,"props":4540,"children":4541},{"style":215},[4542],{"type":51,"value":885},{"type":45,"tag":73,"props":4544,"children":4546},{"class":75,"line":4545},47,[4547,4551,4555,4559,4563],{"type":45,"tag":73,"props":4548,"children":4549},{"style":854},[4550],{"type":51,"value":3784},{"type":45,"tag":73,"props":4552,"children":4553},{"style":215},[4554],{"type":51,"value":862},{"type":45,"tag":73,"props":4556,"children":4557},{"style":215},[4558],{"type":51,"value":285},{"type":45,"tag":73,"props":4560,"children":4561},{"style":96},[4562],{"type":51,"value":4240},{"type":45,"tag":73,"props":4564,"children":4565},{"style":215},[4566],{"type":51,"value":969},{"type":45,"tag":73,"props":4568,"children":4570},{"class":75,"line":4569},48,[4571,4575,4579],{"type":45,"tag":73,"props":4572,"children":4573},{"style":215},[4574],{"type":51,"value":977},{"type":45,"tag":73,"props":4576,"children":4577},{"style":221},[4578],{"type":51,"value":506},{"type":45,"tag":73,"props":4580,"children":4581},{"style":215},[4582],{"type":51,"value":299},{"type":45,"tag":1507,"props":4584,"children":4586},{"id":4585},"string-column-types",[4587],{"type":51,"value":4588},"String Column Types",{"type":45,"tag":1468,"props":4590,"children":4591},{},[4592],{"type":45,"tag":1472,"props":4593,"children":4594},{},[4595,4599,4601,4607],{"type":45,"tag":1476,"props":4596,"children":4597},{},[4598],{"type":51,"value":3308},{"type":51,"value":4600}," The legacy ",{"type":45,"tag":69,"props":4602,"children":4604},{"className":4603},[],[4605],{"type":51,"value":4606},"string",{"type":51,"value":4608}," type is deprecated. Use explicit column types for all new columns.",{"type":45,"tag":4610,"props":4611,"children":4612},"table",{},[4613,4642],{"type":45,"tag":4614,"props":4615,"children":4616},"thead",{},[4617],{"type":45,"tag":4618,"props":4619,"children":4620},"tr",{},[4621,4627,4632,4637],{"type":45,"tag":4622,"props":4623,"children":4624},"th",{},[4625],{"type":51,"value":4626},"Type",{"type":45,"tag":4622,"props":4628,"children":4629},{},[4630],{"type":51,"value":4631},"Max characters",{"type":45,"tag":4622,"props":4633,"children":4634},{},[4635],{"type":51,"value":4636},"Indexing",{"type":45,"tag":4622,"props":4638,"children":4639},{},[4640],{"type":51,"value":4641},"Storage",{"type":45,"tag":4643,"props":4644,"children":4645},"tbody",{},[4646,4674,4699,4724],{"type":45,"tag":4618,"props":4647,"children":4648},{},[4649,4659,4664,4669],{"type":45,"tag":4650,"props":4651,"children":4652},"td",{},[4653],{"type":45,"tag":69,"props":4654,"children":4656},{"className":4655},[],[4657],{"type":51,"value":4658},"varchar",{"type":45,"tag":4650,"props":4660,"children":4661},{},[4662],{"type":51,"value":4663},"16,383",{"type":45,"tag":4650,"props":4665,"children":4666},{},[4667],{"type":51,"value":4668},"Full index (if size ≤ 768)",{"type":45,"tag":4650,"props":4670,"children":4671},{},[4672],{"type":51,"value":4673},"Inline in row",{"type":45,"tag":4618,"props":4675,"children":4676},{},[4677,4685,4689,4694],{"type":45,"tag":4650,"props":4678,"children":4679},{},[4680],{"type":45,"tag":69,"props":4681,"children":4683},{"className":4682},[],[4684],{"type":51,"value":51},{"type":45,"tag":4650,"props":4686,"children":4687},{},[4688],{"type":51,"value":4663},{"type":45,"tag":4650,"props":4690,"children":4691},{},[4692],{"type":51,"value":4693},"Prefix only",{"type":45,"tag":4650,"props":4695,"children":4696},{},[4697],{"type":51,"value":4698},"Off-page",{"type":45,"tag":4618,"props":4700,"children":4701},{},[4702,4711,4716,4720],{"type":45,"tag":4650,"props":4703,"children":4704},{},[4705],{"type":45,"tag":69,"props":4706,"children":4708},{"className":4707},[],[4709],{"type":51,"value":4710},"mediumtext",{"type":45,"tag":4650,"props":4712,"children":4713},{},[4714],{"type":51,"value":4715},"4,194,303",{"type":45,"tag":4650,"props":4717,"children":4718},{},[4719],{"type":51,"value":4693},{"type":45,"tag":4650,"props":4721,"children":4722},{},[4723],{"type":51,"value":4698},{"type":45,"tag":4618,"props":4725,"children":4726},{},[4727,4736,4741,4745],{"type":45,"tag":4650,"props":4728,"children":4729},{},[4730],{"type":45,"tag":69,"props":4731,"children":4733},{"className":4732},[],[4734],{"type":51,"value":4735},"longtext",{"type":45,"tag":4650,"props":4737,"children":4738},{},[4739],{"type":51,"value":4740},"1,073,741,823",{"type":45,"tag":4650,"props":4742,"children":4743},{},[4744],{"type":51,"value":4693},{"type":45,"tag":4650,"props":4746,"children":4747},{},[4748],{"type":51,"value":4698},{"type":45,"tag":4750,"props":4751,"children":4752},"ul",{},[4753,4764],{"type":45,"tag":4754,"props":4755,"children":4756},"li",{},[4757,4762],{"type":45,"tag":69,"props":4758,"children":4760},{"className":4759},[],[4761],{"type":51,"value":4658},{"type":51,"value":4763}," is stored inline and counts towards the 64 KB row size limit. Prefer for short, indexed fields like names, slugs, or identifiers.",{"type":45,"tag":4754,"props":4765,"children":4766},{},[4767,4772,4774,4779,4781,4786,4788,4794],{"type":45,"tag":69,"props":4768,"children":4770},{"className":4769},[],[4771],{"type":51,"value":51},{"type":51,"value":4773},", ",{"type":45,"tag":69,"props":4775,"children":4777},{"className":4776},[],[4778],{"type":51,"value":4710},{"type":51,"value":4780},", and ",{"type":45,"tag":69,"props":4782,"children":4784},{"className":4783},[],[4785],{"type":51,"value":4735},{"type":51,"value":4787}," are stored off-page (only a 20-byte pointer lives in the row), so they don't consume the row size budget. ",{"type":45,"tag":69,"props":4789,"children":4791},{"className":4790},[],[4792],{"type":51,"value":4793},"size",{"type":51,"value":4795}," is not required for these types.",{"type":45,"tag":61,"props":4797,"children":4799},{"className":190,"code":4798,"language":21,"meta":66,"style":66},"\u002F\u002F Create table with explicit string column types\nawait tablesDB.createTable({\n    databaseId: '[DATABASE_ID]',\n    tableId: ID.unique(),\n    name: 'articles',\n    columns: [\n        { key: 'title',    type: 'varchar',    size: 255, required: true  },  \u002F\u002F inline, fully indexable\n        { key: 'summary',  type: 'text',                  required: false },  \u002F\u002F off-page, prefix index only\n        { key: 'body',     type: 'mediumtext',            required: false },  \u002F\u002F up to ~4 M chars\n        { key: 'raw_data', type: 'longtext',              required: false },  \u002F\u002F up to ~1 B chars\n    ]\n});\n",[4800],{"type":45,"tag":69,"props":4801,"children":4802},{"__ignoreMap":66},[4803,4811,4838,4865,4896,4924,4941,5041,5122,5201,5280,5288],{"type":45,"tag":73,"props":4804,"children":4805},{"class":75,"line":76},[4806],{"type":45,"tag":73,"props":4807,"children":4808},{"style":80},[4809],{"type":51,"value":4810},"\u002F\u002F Create table with explicit string column types\n",{"type":45,"tag":73,"props":4812,"children":4813},{"class":75,"line":86},[4814,4818,4822,4826,4830,4834],{"type":45,"tag":73,"props":4815,"children":4816},{"style":209},[4817],{"type":51,"value":825},{"type":45,"tag":73,"props":4819,"children":4820},{"style":221},[4821],{"type":51,"value":3430},{"type":45,"tag":73,"props":4823,"children":4824},{"style":215},[4825],{"type":51,"value":699},{"type":45,"tag":73,"props":4827,"children":4828},{"style":428},[4829],{"type":51,"value":3557},{"type":45,"tag":73,"props":4831,"children":4832},{"style":221},[4833],{"type":51,"value":453},{"type":45,"tag":73,"props":4835,"children":4836},{"style":215},[4837],{"type":51,"value":848},{"type":45,"tag":73,"props":4839,"children":4840},{"class":75,"line":107},[4841,4845,4849,4853,4857,4861],{"type":45,"tag":73,"props":4842,"children":4843},{"style":854},[4844],{"type":51,"value":3573},{"type":45,"tag":73,"props":4846,"children":4847},{"style":215},[4848],{"type":51,"value":862},{"type":45,"tag":73,"props":4850,"children":4851},{"style":215},[4852],{"type":51,"value":285},{"type":45,"tag":73,"props":4854,"children":4855},{"style":96},[4856],{"type":51,"value":3586},{"type":45,"tag":73,"props":4858,"children":4859},{"style":215},[4860],{"type":51,"value":294},{"type":45,"tag":73,"props":4862,"children":4863},{"style":215},[4864],{"type":51,"value":885},{"type":45,"tag":73,"props":4866,"children":4867},{"class":75,"line":117},[4868,4872,4876,4880,4884,4888,4892],{"type":45,"tag":73,"props":4869,"children":4870},{"style":854},[4871],{"type":51,"value":3602},{"type":45,"tag":73,"props":4873,"children":4874},{"style":215},[4875],{"type":51,"value":862},{"type":45,"tag":73,"props":4877,"children":4878},{"style":221},[4879],{"type":51,"value":261},{"type":45,"tag":73,"props":4881,"children":4882},{"style":215},[4883],{"type":51,"value":699},{"type":45,"tag":73,"props":4885,"children":4886},{"style":428},[4887],{"type":51,"value":875},{"type":45,"tag":73,"props":4889,"children":4890},{"style":221},[4891],{"type":51,"value":880},{"type":45,"tag":73,"props":4893,"children":4894},{"style":215},[4895],{"type":51,"value":885},{"type":45,"tag":73,"props":4897,"children":4898},{"class":75,"line":126},[4899,4903,4907,4911,4916,4920],{"type":45,"tag":73,"props":4900,"children":4901},{"style":854},[4902],{"type":51,"value":951},{"type":45,"tag":73,"props":4904,"children":4905},{"style":215},[4906],{"type":51,"value":862},{"type":45,"tag":73,"props":4908,"children":4909},{"style":215},[4910],{"type":51,"value":285},{"type":45,"tag":73,"props":4912,"children":4913},{"style":96},[4914],{"type":51,"value":4915},"articles",{"type":45,"tag":73,"props":4917,"children":4918},{"style":215},[4919],{"type":51,"value":294},{"type":45,"tag":73,"props":4921,"children":4922},{"style":215},[4923],{"type":51,"value":885},{"type":45,"tag":73,"props":4925,"children":4926},{"class":75,"line":143},[4927,4932,4936],{"type":45,"tag":73,"props":4928,"children":4929},{"style":854},[4930],{"type":51,"value":4931},"    columns",{"type":45,"tag":73,"props":4933,"children":4934},{"style":215},[4935],{"type":51,"value":862},{"type":45,"tag":73,"props":4937,"children":4938},{"style":221},[4939],{"type":51,"value":4940}," [\n",{"type":45,"tag":73,"props":4942,"children":4943},{"class":75,"line":151},[4944,4949,4954,4958,4962,4967,4971,4975,4980,4984,4988,4992,4996,5000,5005,5009,5014,5018,5023,5027,5031,5036],{"type":45,"tag":73,"props":4945,"children":4946},{"style":215},[4947],{"type":51,"value":4948},"        {",{"type":45,"tag":73,"props":4950,"children":4951},{"style":854},[4952],{"type":51,"value":4953}," key",{"type":45,"tag":73,"props":4955,"children":4956},{"style":215},[4957],{"type":51,"value":862},{"type":45,"tag":73,"props":4959,"children":4960},{"style":215},[4961],{"type":51,"value":285},{"type":45,"tag":73,"props":4963,"children":4964},{"style":96},[4965],{"type":51,"value":4966},"title",{"type":45,"tag":73,"props":4968,"children":4969},{"style":215},[4970],{"type":51,"value":294},{"type":45,"tag":73,"props":4972,"children":4973},{"style":215},[4974],{"type":51,"value":229},{"type":45,"tag":73,"props":4976,"children":4977},{"style":854},[4978],{"type":51,"value":4979},"    type",{"type":45,"tag":73,"props":4981,"children":4982},{"style":215},[4983],{"type":51,"value":862},{"type":45,"tag":73,"props":4985,"children":4986},{"style":215},[4987],{"type":51,"value":285},{"type":45,"tag":73,"props":4989,"children":4990},{"style":96},[4991],{"type":51,"value":4658},{"type":45,"tag":73,"props":4993,"children":4994},{"style":215},[4995],{"type":51,"value":294},{"type":45,"tag":73,"props":4997,"children":4998},{"style":215},[4999],{"type":51,"value":229},{"type":45,"tag":73,"props":5001,"children":5002},{"style":854},[5003],{"type":51,"value":5004},"    size",{"type":45,"tag":73,"props":5006,"children":5007},{"style":215},[5008],{"type":51,"value":862},{"type":45,"tag":73,"props":5010,"children":5011},{"style":3108},[5012],{"type":51,"value":5013}," 255",{"type":45,"tag":73,"props":5015,"children":5016},{"style":215},[5017],{"type":51,"value":229},{"type":45,"tag":73,"props":5019,"children":5020},{"style":854},[5021],{"type":51,"value":5022}," required",{"type":45,"tag":73,"props":5024,"children":5025},{"style":215},[5026],{"type":51,"value":862},{"type":45,"tag":73,"props":5028,"children":5029},{"style":2090},[5030],{"type":51,"value":2093},{"type":45,"tag":73,"props":5032,"children":5033},{"style":215},[5034],{"type":51,"value":5035},"  },",{"type":45,"tag":73,"props":5037,"children":5038},{"style":80},[5039],{"type":51,"value":5040},"  \u002F\u002F inline, fully indexable\n",{"type":45,"tag":73,"props":5042,"children":5043},{"class":75,"line":160},[5044,5048,5052,5056,5060,5065,5069,5073,5078,5082,5086,5090,5094,5098,5103,5107,5112,5117],{"type":45,"tag":73,"props":5045,"children":5046},{"style":215},[5047],{"type":51,"value":4948},{"type":45,"tag":73,"props":5049,"children":5050},{"style":854},[5051],{"type":51,"value":4953},{"type":45,"tag":73,"props":5053,"children":5054},{"style":215},[5055],{"type":51,"value":862},{"type":45,"tag":73,"props":5057,"children":5058},{"style":215},[5059],{"type":51,"value":285},{"type":45,"tag":73,"props":5061,"children":5062},{"style":96},[5063],{"type":51,"value":5064},"summary",{"type":45,"tag":73,"props":5066,"children":5067},{"style":215},[5068],{"type":51,"value":294},{"type":45,"tag":73,"props":5070,"children":5071},{"style":215},[5072],{"type":51,"value":229},{"type":45,"tag":73,"props":5074,"children":5075},{"style":854},[5076],{"type":51,"value":5077},"  type",{"type":45,"tag":73,"props":5079,"children":5080},{"style":215},[5081],{"type":51,"value":862},{"type":45,"tag":73,"props":5083,"children":5084},{"style":215},[5085],{"type":51,"value":285},{"type":45,"tag":73,"props":5087,"children":5088},{"style":96},[5089],{"type":51,"value":51},{"type":45,"tag":73,"props":5091,"children":5092},{"style":215},[5093],{"type":51,"value":294},{"type":45,"tag":73,"props":5095,"children":5096},{"style":215},[5097],{"type":51,"value":229},{"type":45,"tag":73,"props":5099,"children":5100},{"style":854},[5101],{"type":51,"value":5102},"                  required",{"type":45,"tag":73,"props":5104,"children":5105},{"style":215},[5106],{"type":51,"value":862},{"type":45,"tag":73,"props":5108,"children":5109},{"style":2090},[5110],{"type":51,"value":5111}," false",{"type":45,"tag":73,"props":5113,"children":5114},{"style":215},[5115],{"type":51,"value":5116}," },",{"type":45,"tag":73,"props":5118,"children":5119},{"style":80},[5120],{"type":51,"value":5121},"  \u002F\u002F off-page, prefix index only\n",{"type":45,"tag":73,"props":5123,"children":5124},{"class":75,"line":474},[5125,5129,5133,5137,5141,5146,5150,5154,5159,5163,5167,5171,5175,5179,5184,5188,5192,5196],{"type":45,"tag":73,"props":5126,"children":5127},{"style":215},[5128],{"type":51,"value":4948},{"type":45,"tag":73,"props":5130,"children":5131},{"style":854},[5132],{"type":51,"value":4953},{"type":45,"tag":73,"props":5134,"children":5135},{"style":215},[5136],{"type":51,"value":862},{"type":45,"tag":73,"props":5138,"children":5139},{"style":215},[5140],{"type":51,"value":285},{"type":45,"tag":73,"props":5142,"children":5143},{"style":96},[5144],{"type":51,"value":5145},"body",{"type":45,"tag":73,"props":5147,"children":5148},{"style":215},[5149],{"type":51,"value":294},{"type":45,"tag":73,"props":5151,"children":5152},{"style":215},[5153],{"type":51,"value":229},{"type":45,"tag":73,"props":5155,"children":5156},{"style":854},[5157],{"type":51,"value":5158},"     type",{"type":45,"tag":73,"props":5160,"children":5161},{"style":215},[5162],{"type":51,"value":862},{"type":45,"tag":73,"props":5164,"children":5165},{"style":215},[5166],{"type":51,"value":285},{"type":45,"tag":73,"props":5168,"children":5169},{"style":96},[5170],{"type":51,"value":4710},{"type":45,"tag":73,"props":5172,"children":5173},{"style":215},[5174],{"type":51,"value":294},{"type":45,"tag":73,"props":5176,"children":5177},{"style":215},[5178],{"type":51,"value":229},{"type":45,"tag":73,"props":5180,"children":5181},{"style":854},[5182],{"type":51,"value":5183},"            required",{"type":45,"tag":73,"props":5185,"children":5186},{"style":215},[5187],{"type":51,"value":862},{"type":45,"tag":73,"props":5189,"children":5190},{"style":2090},[5191],{"type":51,"value":5111},{"type":45,"tag":73,"props":5193,"children":5194},{"style":215},[5195],{"type":51,"value":5116},{"type":45,"tag":73,"props":5197,"children":5198},{"style":80},[5199],{"type":51,"value":5200},"  \u002F\u002F up to ~4 M chars\n",{"type":45,"tag":73,"props":5202,"children":5203},{"class":75,"line":988},[5204,5208,5212,5216,5220,5225,5229,5233,5238,5242,5246,5250,5254,5258,5263,5267,5271,5275],{"type":45,"tag":73,"props":5205,"children":5206},{"style":215},[5207],{"type":51,"value":4948},{"type":45,"tag":73,"props":5209,"children":5210},{"style":854},[5211],{"type":51,"value":4953},{"type":45,"tag":73,"props":5213,"children":5214},{"style":215},[5215],{"type":51,"value":862},{"type":45,"tag":73,"props":5217,"children":5218},{"style":215},[5219],{"type":51,"value":285},{"type":45,"tag":73,"props":5221,"children":5222},{"style":96},[5223],{"type":51,"value":5224},"raw_data",{"type":45,"tag":73,"props":5226,"children":5227},{"style":215},[5228],{"type":51,"value":294},{"type":45,"tag":73,"props":5230,"children":5231},{"style":215},[5232],{"type":51,"value":229},{"type":45,"tag":73,"props":5234,"children":5235},{"style":854},[5236],{"type":51,"value":5237}," type",{"type":45,"tag":73,"props":5239,"children":5240},{"style":215},[5241],{"type":51,"value":862},{"type":45,"tag":73,"props":5243,"children":5244},{"style":215},[5245],{"type":51,"value":285},{"type":45,"tag":73,"props":5247,"children":5248},{"style":96},[5249],{"type":51,"value":4735},{"type":45,"tag":73,"props":5251,"children":5252},{"style":215},[5253],{"type":51,"value":294},{"type":45,"tag":73,"props":5255,"children":5256},{"style":215},[5257],{"type":51,"value":229},{"type":45,"tag":73,"props":5259,"children":5260},{"style":854},[5261],{"type":51,"value":5262},"              required",{"type":45,"tag":73,"props":5264,"children":5265},{"style":215},[5266],{"type":51,"value":862},{"type":45,"tag":73,"props":5268,"children":5269},{"style":2090},[5270],{"type":51,"value":5111},{"type":45,"tag":73,"props":5272,"children":5273},{"style":215},[5274],{"type":51,"value":5116},{"type":45,"tag":73,"props":5276,"children":5277},{"style":80},[5278],{"type":51,"value":5279},"  \u002F\u002F up to ~1 B chars\n",{"type":45,"tag":73,"props":5281,"children":5282},{"class":75,"line":996},[5283],{"type":45,"tag":73,"props":5284,"children":5285},{"style":221},[5286],{"type":51,"value":5287},"    ]\n",{"type":45,"tag":73,"props":5289,"children":5290},{"class":75,"line":1005},[5291,5295,5299],{"type":45,"tag":73,"props":5292,"children":5293},{"style":215},[5294],{"type":51,"value":977},{"type":45,"tag":73,"props":5296,"children":5297},{"style":221},[5298],{"type":51,"value":506},{"type":45,"tag":73,"props":5300,"children":5301},{"style":215},[5302],{"type":51,"value":299},{"type":45,"tag":1507,"props":5304,"children":5306},{"id":5305},"typescript-generics",[5307],{"type":51,"value":5308},"TypeScript Generics",{"type":45,"tag":61,"props":5310,"children":5312},{"className":190,"code":5311,"language":21,"meta":66,"style":66},"import { Models } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n\n\u002F\u002F Define a typed interface for your row data\ninterface Todo {\n    title: string;\n    done: boolean;\n    priority: number;\n}\n\n\u002F\u002F listRows returns Models.DocumentList\u003CModels.Document> by default\n\u002F\u002F Cast or use generics for typed results\nconst results = await tablesDB.listRows({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    queries: [Query.equal('done', false)]\n});\n\n\u002F\u002F Each document includes built-in fields alongside your data\nconst doc = results.documents[0];\ndoc.$id;            \u002F\u002F string — unique row ID\ndoc.$createdAt;     \u002F\u002F string — ISO 8601 creation timestamp\ndoc.$updatedAt;     \u002F\u002F string — ISO 8601 update timestamp\ndoc.$permissions;   \u002F\u002F string[] — permission strings\ndoc.$databaseId;    \u002F\u002F string\ndoc.$collectionId;  \u002F\u002F string\n\n\u002F\u002F Common model types\n\u002F\u002F Models.User\u003CPreferences>  — user account\n\u002F\u002F Models.Session             — auth session\n\u002F\u002F Models.File                — storage file metadata\n\u002F\u002F Models.Team                — team object\n\u002F\u002F Models.Execution           — function execution result\n\u002F\u002F Models.DocumentList\u003CT>     — paginated list with total count\n",[5313],{"type":45,"tag":69,"props":5314,"children":5315},{"__ignoreMap":66},[5316,5356,5364,5371,5379,5396,5417,5438,5459,5466,5473,5481,5489,5528,5555,5582,5634,5649,5656,5664,5707,5733,5758,5783,5808,5833,5858,5865,5873,5881,5889,5897,5905,5913],{"type":45,"tag":73,"props":5317,"children":5318},{"class":75,"line":76},[5319,5323,5327,5332,5336,5340,5344,5348,5352],{"type":45,"tag":73,"props":5320,"children":5321},{"style":209},[5322],{"type":51,"value":212},{"type":45,"tag":73,"props":5324,"children":5325},{"style":215},[5326],{"type":51,"value":218},{"type":45,"tag":73,"props":5328,"children":5329},{"style":221},[5330],{"type":51,"value":5331}," Models",{"type":45,"tag":73,"props":5333,"children":5334},{"style":215},[5335],{"type":51,"value":275},{"type":45,"tag":73,"props":5337,"children":5338},{"style":209},[5339],{"type":51,"value":280},{"type":45,"tag":73,"props":5341,"children":5342},{"style":215},[5343],{"type":51,"value":285},{"type":45,"tag":73,"props":5345,"children":5346},{"style":96},[5347],{"type":51,"value":8},{"type":45,"tag":73,"props":5349,"children":5350},{"style":215},[5351],{"type":51,"value":294},{"type":45,"tag":73,"props":5353,"children":5354},{"style":215},[5355],{"type":51,"value":299},{"type":45,"tag":73,"props":5357,"children":5358},{"class":75,"line":86},[5359],{"type":45,"tag":73,"props":5360,"children":5361},{"style":80},[5362],{"type":51,"value":5363},"\u002F\u002F Server-side: import from 'node-appwrite'\n",{"type":45,"tag":73,"props":5365,"children":5366},{"class":75,"line":107},[5367],{"type":45,"tag":73,"props":5368,"children":5369},{"emptyLinePlaceholder":111},[5370],{"type":51,"value":114},{"type":45,"tag":73,"props":5372,"children":5373},{"class":75,"line":117},[5374],{"type":45,"tag":73,"props":5375,"children":5376},{"style":80},[5377],{"type":51,"value":5378},"\u002F\u002F Define a typed interface for your row data\n",{"type":45,"tag":73,"props":5380,"children":5381},{"class":75,"line":126},[5382,5387,5392],{"type":45,"tag":73,"props":5383,"children":5384},{"style":407},[5385],{"type":51,"value":5386},"interface",{"type":45,"tag":73,"props":5388,"children":5389},{"style":90},[5390],{"type":51,"value":5391}," Todo",{"type":45,"tag":73,"props":5393,"children":5394},{"style":215},[5395],{"type":51,"value":1632},{"type":45,"tag":73,"props":5397,"children":5398},{"class":75,"line":143},[5399,5404,5408,5413],{"type":45,"tag":73,"props":5400,"children":5401},{"style":854},[5402],{"type":51,"value":5403},"    title",{"type":45,"tag":73,"props":5405,"children":5406},{"style":215},[5407],{"type":51,"value":862},{"type":45,"tag":73,"props":5409,"children":5410},{"style":90},[5411],{"type":51,"value":5412}," string",{"type":45,"tag":73,"props":5414,"children":5415},{"style":215},[5416],{"type":51,"value":299},{"type":45,"tag":73,"props":5418,"children":5419},{"class":75,"line":151},[5420,5425,5429,5434],{"type":45,"tag":73,"props":5421,"children":5422},{"style":854},[5423],{"type":51,"value":5424},"    done",{"type":45,"tag":73,"props":5426,"children":5427},{"style":215},[5428],{"type":51,"value":862},{"type":45,"tag":73,"props":5430,"children":5431},{"style":90},[5432],{"type":51,"value":5433}," boolean",{"type":45,"tag":73,"props":5435,"children":5436},{"style":215},[5437],{"type":51,"value":299},{"type":45,"tag":73,"props":5439,"children":5440},{"class":75,"line":160},[5441,5446,5450,5455],{"type":45,"tag":73,"props":5442,"children":5443},{"style":854},[5444],{"type":51,"value":5445},"    priority",{"type":45,"tag":73,"props":5447,"children":5448},{"style":215},[5449],{"type":51,"value":862},{"type":45,"tag":73,"props":5451,"children":5452},{"style":90},[5453],{"type":51,"value":5454}," number",{"type":45,"tag":73,"props":5456,"children":5457},{"style":215},[5458],{"type":51,"value":299},{"type":45,"tag":73,"props":5460,"children":5461},{"class":75,"line":474},[5462],{"type":45,"tag":73,"props":5463,"children":5464},{"style":215},[5465],{"type":51,"value":1684},{"type":45,"tag":73,"props":5467,"children":5468},{"class":75,"line":988},[5469],{"type":45,"tag":73,"props":5470,"children":5471},{"emptyLinePlaceholder":111},[5472],{"type":51,"value":114},{"type":45,"tag":73,"props":5474,"children":5475},{"class":75,"line":996},[5476],{"type":45,"tag":73,"props":5477,"children":5478},{"style":80},[5479],{"type":51,"value":5480},"\u002F\u002F listRows returns Models.DocumentList\u003CModels.Document> by default\n",{"type":45,"tag":73,"props":5482,"children":5483},{"class":75,"line":1005},[5484],{"type":45,"tag":73,"props":5485,"children":5486},{"style":80},[5487],{"type":51,"value":5488},"\u002F\u002F Cast or use generics for typed results\n",{"type":45,"tag":73,"props":5490,"children":5491},{"class":75,"line":1048},[5492,5496,5500,5504,5508,5512,5516,5520,5524],{"type":45,"tag":73,"props":5493,"children":5494},{"style":407},[5495],{"type":51,"value":410},{"type":45,"tag":73,"props":5497,"children":5498},{"style":221},[5499],{"type":51,"value":3919},{"type":45,"tag":73,"props":5501,"children":5502},{"style":215},[5503],{"type":51,"value":420},{"type":45,"tag":73,"props":5505,"children":5506},{"style":209},[5507],{"type":51,"value":1024},{"type":45,"tag":73,"props":5509,"children":5510},{"style":221},[5511],{"type":51,"value":3430},{"type":45,"tag":73,"props":5513,"children":5514},{"style":215},[5515],{"type":51,"value":699},{"type":45,"tag":73,"props":5517,"children":5518},{"style":428},[5519],{"type":51,"value":3940},{"type":45,"tag":73,"props":5521,"children":5522},{"style":221},[5523],{"type":51,"value":453},{"type":45,"tag":73,"props":5525,"children":5526},{"style":215},[5527],{"type":51,"value":848},{"type":45,"tag":73,"props":5529,"children":5530},{"class":75,"line":1076},[5531,5535,5539,5543,5547,5551],{"type":45,"tag":73,"props":5532,"children":5533},{"style":854},[5534],{"type":51,"value":3573},{"type":45,"tag":73,"props":5536,"children":5537},{"style":215},[5538],{"type":51,"value":862},{"type":45,"tag":73,"props":5540,"children":5541},{"style":215},[5542],{"type":51,"value":285},{"type":45,"tag":73,"props":5544,"children":5545},{"style":96},[5546],{"type":51,"value":3586},{"type":45,"tag":73,"props":5548,"children":5549},{"style":215},[5550],{"type":51,"value":294},{"type":45,"tag":73,"props":5552,"children":5553},{"style":215},[5554],{"type":51,"value":885},{"type":45,"tag":73,"props":5556,"children":5557},{"class":75,"line":1100},[5558,5562,5566,5570,5574,5578],{"type":45,"tag":73,"props":5559,"children":5560},{"style":854},[5561],{"type":51,"value":3602},{"type":45,"tag":73,"props":5563,"children":5564},{"style":215},[5565],{"type":51,"value":862},{"type":45,"tag":73,"props":5567,"children":5568},{"style":215},[5569],{"type":51,"value":285},{"type":45,"tag":73,"props":5571,"children":5572},{"style":96},[5573],{"type":51,"value":3768},{"type":45,"tag":73,"props":5575,"children":5576},{"style":215},[5577],{"type":51,"value":294},{"type":45,"tag":73,"props":5579,"children":5580},{"style":215},[5581],{"type":51,"value":885},{"type":45,"tag":73,"props":5583,"children":5584},{"class":75,"line":1116},[5585,5589,5593,5597,5601,5605,5609,5613,5618,5622,5626,5630],{"type":45,"tag":73,"props":5586,"children":5587},{"style":854},[5588],{"type":51,"value":4010},{"type":45,"tag":73,"props":5590,"children":5591},{"style":215},[5592],{"type":51,"value":862},{"type":45,"tag":73,"props":5594,"children":5595},{"style":221},[5596],{"type":51,"value":3092},{"type":45,"tag":73,"props":5598,"children":5599},{"style":215},[5600],{"type":51,"value":699},{"type":45,"tag":73,"props":5602,"children":5603},{"style":428},[5604],{"type":51,"value":4027},{"type":45,"tag":73,"props":5606,"children":5607},{"style":221},[5608],{"type":51,"value":453},{"type":45,"tag":73,"props":5610,"children":5611},{"style":215},[5612],{"type":51,"value":294},{"type":45,"tag":73,"props":5614,"children":5615},{"style":96},[5616],{"type":51,"value":5617},"done",{"type":45,"tag":73,"props":5619,"children":5620},{"style":215},[5621],{"type":51,"value":294},{"type":45,"tag":73,"props":5623,"children":5624},{"style":215},[5625],{"type":51,"value":229},{"type":45,"tag":73,"props":5627,"children":5628},{"style":2090},[5629],{"type":51,"value":5111},{"type":45,"tag":73,"props":5631,"children":5632},{"style":221},[5633],{"type":51,"value":4095},{"type":45,"tag":73,"props":5635,"children":5636},{"class":75,"line":1124},[5637,5641,5645],{"type":45,"tag":73,"props":5638,"children":5639},{"style":215},[5640],{"type":51,"value":977},{"type":45,"tag":73,"props":5642,"children":5643},{"style":221},[5644],{"type":51,"value":506},{"type":45,"tag":73,"props":5646,"children":5647},{"style":215},[5648],{"type":51,"value":299},{"type":45,"tag":73,"props":5650,"children":5651},{"class":75,"line":1133},[5652],{"type":45,"tag":73,"props":5653,"children":5654},{"emptyLinePlaceholder":111},[5655],{"type":51,"value":114},{"type":45,"tag":73,"props":5657,"children":5658},{"class":75,"line":1159},[5659],{"type":45,"tag":73,"props":5660,"children":5661},{"style":80},[5662],{"type":51,"value":5663},"\u002F\u002F Each document includes built-in fields alongside your data\n",{"type":45,"tag":73,"props":5665,"children":5666},{"class":75,"line":1190},[5667,5671,5675,5679,5684,5688,5693,5698,5703],{"type":45,"tag":73,"props":5668,"children":5669},{"style":407},[5670],{"type":51,"value":410},{"type":45,"tag":73,"props":5672,"children":5673},{"style":221},[5674],{"type":51,"value":3692},{"type":45,"tag":73,"props":5676,"children":5677},{"style":215},[5678],{"type":51,"value":420},{"type":45,"tag":73,"props":5680,"children":5681},{"style":221},[5682],{"type":51,"value":5683}," results",{"type":45,"tag":73,"props":5685,"children":5686},{"style":215},[5687],{"type":51,"value":699},{"type":45,"tag":73,"props":5689,"children":5690},{"style":221},[5691],{"type":51,"value":5692},"documents[",{"type":45,"tag":73,"props":5694,"children":5695},{"style":3108},[5696],{"type":51,"value":5697},"0",{"type":45,"tag":73,"props":5699,"children":5700},{"style":221},[5701],{"type":51,"value":5702},"]",{"type":45,"tag":73,"props":5704,"children":5705},{"style":215},[5706],{"type":51,"value":299},{"type":45,"tag":73,"props":5708,"children":5709},{"class":75,"line":1220},[5710,5715,5719,5724,5728],{"type":45,"tag":73,"props":5711,"children":5712},{"style":221},[5713],{"type":51,"value":5714},"doc",{"type":45,"tag":73,"props":5716,"children":5717},{"style":215},[5718],{"type":51,"value":699},{"type":45,"tag":73,"props":5720,"children":5721},{"style":221},[5722],{"type":51,"value":5723},"$id",{"type":45,"tag":73,"props":5725,"children":5726},{"style":215},[5727],{"type":51,"value":2160},{"type":45,"tag":73,"props":5729,"children":5730},{"style":80},[5731],{"type":51,"value":5732},"            \u002F\u002F string — unique row ID\n",{"type":45,"tag":73,"props":5734,"children":5735},{"class":75,"line":1250},[5736,5740,5744,5749,5753],{"type":45,"tag":73,"props":5737,"children":5738},{"style":221},[5739],{"type":51,"value":5714},{"type":45,"tag":73,"props":5741,"children":5742},{"style":215},[5743],{"type":51,"value":699},{"type":45,"tag":73,"props":5745,"children":5746},{"style":221},[5747],{"type":51,"value":5748},"$createdAt",{"type":45,"tag":73,"props":5750,"children":5751},{"style":215},[5752],{"type":51,"value":2160},{"type":45,"tag":73,"props":5754,"children":5755},{"style":80},[5756],{"type":51,"value":5757},"     \u002F\u002F string — ISO 8601 creation timestamp\n",{"type":45,"tag":73,"props":5759,"children":5760},{"class":75,"line":29},[5761,5765,5769,5774,5778],{"type":45,"tag":73,"props":5762,"children":5763},{"style":221},[5764],{"type":51,"value":5714},{"type":45,"tag":73,"props":5766,"children":5767},{"style":215},[5768],{"type":51,"value":699},{"type":45,"tag":73,"props":5770,"children":5771},{"style":221},[5772],{"type":51,"value":5773},"$updatedAt",{"type":45,"tag":73,"props":5775,"children":5776},{"style":215},[5777],{"type":51,"value":2160},{"type":45,"tag":73,"props":5779,"children":5780},{"style":80},[5781],{"type":51,"value":5782},"     \u002F\u002F string — ISO 8601 update timestamp\n",{"type":45,"tag":73,"props":5784,"children":5785},{"class":75,"line":1323},[5786,5790,5794,5799,5803],{"type":45,"tag":73,"props":5787,"children":5788},{"style":221},[5789],{"type":51,"value":5714},{"type":45,"tag":73,"props":5791,"children":5792},{"style":215},[5793],{"type":51,"value":699},{"type":45,"tag":73,"props":5795,"children":5796},{"style":221},[5797],{"type":51,"value":5798},"$permissions",{"type":45,"tag":73,"props":5800,"children":5801},{"style":215},[5802],{"type":51,"value":2160},{"type":45,"tag":73,"props":5804,"children":5805},{"style":80},[5806],{"type":51,"value":5807},"   \u002F\u002F string[] — permission strings\n",{"type":45,"tag":73,"props":5809,"children":5810},{"class":75,"line":1331},[5811,5815,5819,5824,5828],{"type":45,"tag":73,"props":5812,"children":5813},{"style":221},[5814],{"type":51,"value":5714},{"type":45,"tag":73,"props":5816,"children":5817},{"style":215},[5818],{"type":51,"value":699},{"type":45,"tag":73,"props":5820,"children":5821},{"style":221},[5822],{"type":51,"value":5823},"$databaseId",{"type":45,"tag":73,"props":5825,"children":5826},{"style":215},[5827],{"type":51,"value":2160},{"type":45,"tag":73,"props":5829,"children":5830},{"style":80},[5831],{"type":51,"value":5832},"    \u002F\u002F string\n",{"type":45,"tag":73,"props":5834,"children":5835},{"class":75,"line":1340},[5836,5840,5844,5849,5853],{"type":45,"tag":73,"props":5837,"children":5838},{"style":221},[5839],{"type":51,"value":5714},{"type":45,"tag":73,"props":5841,"children":5842},{"style":215},[5843],{"type":51,"value":699},{"type":45,"tag":73,"props":5845,"children":5846},{"style":221},[5847],{"type":51,"value":5848},"$collectionId",{"type":45,"tag":73,"props":5850,"children":5851},{"style":215},[5852],{"type":51,"value":2160},{"type":45,"tag":73,"props":5854,"children":5855},{"style":80},[5856],{"type":51,"value":5857},"  \u002F\u002F string\n",{"type":45,"tag":73,"props":5859,"children":5860},{"class":75,"line":1382},[5861],{"type":45,"tag":73,"props":5862,"children":5863},{"emptyLinePlaceholder":111},[5864],{"type":51,"value":114},{"type":45,"tag":73,"props":5866,"children":5867},{"class":75,"line":1390},[5868],{"type":45,"tag":73,"props":5869,"children":5870},{"style":80},[5871],{"type":51,"value":5872},"\u002F\u002F Common model types\n",{"type":45,"tag":73,"props":5874,"children":5875},{"class":75,"line":1399},[5876],{"type":45,"tag":73,"props":5877,"children":5878},{"style":80},[5879],{"type":51,"value":5880},"\u002F\u002F Models.User\u003CPreferences>  — user account\n",{"type":45,"tag":73,"props":5882,"children":5883},{"class":75,"line":2522},[5884],{"type":45,"tag":73,"props":5885,"children":5886},{"style":80},[5887],{"type":51,"value":5888},"\u002F\u002F Models.Session             — auth session\n",{"type":45,"tag":73,"props":5890,"children":5891},{"class":75,"line":2585},[5892],{"type":45,"tag":73,"props":5893,"children":5894},{"style":80},[5895],{"type":51,"value":5896},"\u002F\u002F Models.File                — storage file metadata\n",{"type":45,"tag":73,"props":5898,"children":5899},{"class":75,"line":2647},[5900],{"type":45,"tag":73,"props":5901,"children":5902},{"style":80},[5903],{"type":51,"value":5904},"\u002F\u002F Models.Team                — team object\n",{"type":45,"tag":73,"props":5906,"children":5907},{"class":75,"line":2655},[5908],{"type":45,"tag":73,"props":5909,"children":5910},{"style":80},[5911],{"type":51,"value":5912},"\u002F\u002F Models.Execution           — function execution result\n",{"type":45,"tag":73,"props":5914,"children":5915},{"class":75,"line":2664},[5916],{"type":45,"tag":73,"props":5917,"children":5918},{"style":80},[5919],{"type":51,"value":5920},"\u002F\u002F Models.DocumentList\u003CT>     — paginated list with total count\n",{"type":45,"tag":182,"props":5922,"children":5924},{"id":5923},"query-methods",[5925],{"type":51,"value":5926},"Query Methods",{"type":45,"tag":61,"props":5928,"children":5930},{"className":190,"code":5929,"language":21,"meta":66,"style":66},"\u002F\u002F Filtering\nQuery.equal('field', 'value')           \u002F\u002F field == value (or pass array for IN)\nQuery.notEqual('field', 'value')        \u002F\u002F field != value\nQuery.lessThan('field', 100)            \u002F\u002F field \u003C value\nQuery.lessThanEqual('field', 100)       \u002F\u002F field \u003C= value\nQuery.greaterThan('field', 100)         \u002F\u002F field > value\nQuery.greaterThanEqual('field', 100)    \u002F\u002F field >= value\nQuery.between('field', 1, 100)          \u002F\u002F 1 \u003C= field \u003C= 100\nQuery.isNull('field')                   \u002F\u002F field is null\nQuery.isNotNull('field')                \u002F\u002F field is not null\nQuery.startsWith('field', 'prefix')     \u002F\u002F string starts with prefix\nQuery.endsWith('field', 'suffix')       \u002F\u002F string ends with suffix\nQuery.contains('field', 'substring')    \u002F\u002F string\u002Farray contains value\nQuery.search('field', 'keywords')       \u002F\u002F full-text search (requires full-text index)\n\n\u002F\u002F Sorting\nQuery.orderAsc('field')                 \u002F\u002F sort ascending\nQuery.orderDesc('field')                \u002F\u002F sort descending\n\n\u002F\u002F Pagination\nQuery.limit(25)                         \u002F\u002F max rows returned (default 25, max 100)\nQuery.offset(0)                         \u002F\u002F skip N rows\nQuery.cursorAfter('[ROW_ID]')           \u002F\u002F paginate after this row ID (preferred for large datasets)\nQuery.cursorBefore('[ROW_ID]')          \u002F\u002F paginate before this row ID\n\n\u002F\u002F Selection\nQuery.select(['field1', 'field2'])      \u002F\u002F return only specified fields\n\n\u002F\u002F Logical\nQuery.or([Query.equal('a', 1), Query.equal('b', 2)])   \u002F\u002F OR condition\nQuery.and([Query.greaterThan('age', 18), Query.lessThan('age', 65)])  \u002F\u002F explicit AND (queries are AND by default)\n",[5931],{"type":45,"tag":69,"props":5932,"children":5933},{"__ignoreMap":66},[5934,5942,6002,6060,6111,6161,6211,6261,6320,6362,6404,6463,6521,6579,6637,6644,6652,6694,6735,6742,6750,6783,6816,6857,6898,6905,6913,6974,6981,6989,7099],{"type":45,"tag":73,"props":5935,"children":5936},{"class":75,"line":76},[5937],{"type":45,"tag":73,"props":5938,"children":5939},{"style":80},[5940],{"type":51,"value":5941},"\u002F\u002F Filtering\n",{"type":45,"tag":73,"props":5943,"children":5944},{"class":75,"line":86},[5945,5950,5954,5958,5962,5966,5971,5975,5979,5983,5988,5992,5997],{"type":45,"tag":73,"props":5946,"children":5947},{"style":221},[5948],{"type":51,"value":5949},"Query",{"type":45,"tag":73,"props":5951,"children":5952},{"style":215},[5953],{"type":51,"value":699},{"type":45,"tag":73,"props":5955,"children":5956},{"style":428},[5957],{"type":51,"value":4027},{"type":45,"tag":73,"props":5959,"children":5960},{"style":221},[5961],{"type":51,"value":453},{"type":45,"tag":73,"props":5963,"children":5964},{"style":215},[5965],{"type":51,"value":294},{"type":45,"tag":73,"props":5967,"children":5968},{"style":96},[5969],{"type":51,"value":5970},"field",{"type":45,"tag":73,"props":5972,"children":5973},{"style":215},[5974],{"type":51,"value":294},{"type":45,"tag":73,"props":5976,"children":5977},{"style":215},[5978],{"type":51,"value":229},{"type":45,"tag":73,"props":5980,"children":5981},{"style":215},[5982],{"type":51,"value":285},{"type":45,"tag":73,"props":5984,"children":5985},{"style":96},[5986],{"type":51,"value":5987},"value",{"type":45,"tag":73,"props":5989,"children":5990},{"style":215},[5991],{"type":51,"value":294},{"type":45,"tag":73,"props":5993,"children":5994},{"style":221},[5995],{"type":51,"value":5996},")           ",{"type":45,"tag":73,"props":5998,"children":5999},{"style":80},[6000],{"type":51,"value":6001},"\u002F\u002F field == value (or pass array for IN)\n",{"type":45,"tag":73,"props":6003,"children":6004},{"class":75,"line":107},[6005,6009,6013,6018,6022,6026,6030,6034,6038,6042,6046,6050,6055],{"type":45,"tag":73,"props":6006,"children":6007},{"style":221},[6008],{"type":51,"value":5949},{"type":45,"tag":73,"props":6010,"children":6011},{"style":215},[6012],{"type":51,"value":699},{"type":45,"tag":73,"props":6014,"children":6015},{"style":428},[6016],{"type":51,"value":6017},"notEqual",{"type":45,"tag":73,"props":6019,"children":6020},{"style":221},[6021],{"type":51,"value":453},{"type":45,"tag":73,"props":6023,"children":6024},{"style":215},[6025],{"type":51,"value":294},{"type":45,"tag":73,"props":6027,"children":6028},{"style":96},[6029],{"type":51,"value":5970},{"type":45,"tag":73,"props":6031,"children":6032},{"style":215},[6033],{"type":51,"value":294},{"type":45,"tag":73,"props":6035,"children":6036},{"style":215},[6037],{"type":51,"value":229},{"type":45,"tag":73,"props":6039,"children":6040},{"style":215},[6041],{"type":51,"value":285},{"type":45,"tag":73,"props":6043,"children":6044},{"style":96},[6045],{"type":51,"value":5987},{"type":45,"tag":73,"props":6047,"children":6048},{"style":215},[6049],{"type":51,"value":294},{"type":45,"tag":73,"props":6051,"children":6052},{"style":221},[6053],{"type":51,"value":6054},")        ",{"type":45,"tag":73,"props":6056,"children":6057},{"style":80},[6058],{"type":51,"value":6059},"\u002F\u002F field != value\n",{"type":45,"tag":73,"props":6061,"children":6062},{"class":75,"line":117},[6063,6067,6071,6076,6080,6084,6088,6092,6096,6101,6106],{"type":45,"tag":73,"props":6064,"children":6065},{"style":221},[6066],{"type":51,"value":5949},{"type":45,"tag":73,"props":6068,"children":6069},{"style":215},[6070],{"type":51,"value":699},{"type":45,"tag":73,"props":6072,"children":6073},{"style":428},[6074],{"type":51,"value":6075},"lessThan",{"type":45,"tag":73,"props":6077,"children":6078},{"style":221},[6079],{"type":51,"value":453},{"type":45,"tag":73,"props":6081,"children":6082},{"style":215},[6083],{"type":51,"value":294},{"type":45,"tag":73,"props":6085,"children":6086},{"style":96},[6087],{"type":51,"value":5970},{"type":45,"tag":73,"props":6089,"children":6090},{"style":215},[6091],{"type":51,"value":294},{"type":45,"tag":73,"props":6093,"children":6094},{"style":215},[6095],{"type":51,"value":229},{"type":45,"tag":73,"props":6097,"children":6098},{"style":3108},[6099],{"type":51,"value":6100}," 100",{"type":45,"tag":73,"props":6102,"children":6103},{"style":221},[6104],{"type":51,"value":6105},")            ",{"type":45,"tag":73,"props":6107,"children":6108},{"style":80},[6109],{"type":51,"value":6110},"\u002F\u002F field \u003C value\n",{"type":45,"tag":73,"props":6112,"children":6113},{"class":75,"line":126},[6114,6118,6122,6127,6131,6135,6139,6143,6147,6151,6156],{"type":45,"tag":73,"props":6115,"children":6116},{"style":221},[6117],{"type":51,"value":5949},{"type":45,"tag":73,"props":6119,"children":6120},{"style":215},[6121],{"type":51,"value":699},{"type":45,"tag":73,"props":6123,"children":6124},{"style":428},[6125],{"type":51,"value":6126},"lessThanEqual",{"type":45,"tag":73,"props":6128,"children":6129},{"style":221},[6130],{"type":51,"value":453},{"type":45,"tag":73,"props":6132,"children":6133},{"style":215},[6134],{"type":51,"value":294},{"type":45,"tag":73,"props":6136,"children":6137},{"style":96},[6138],{"type":51,"value":5970},{"type":45,"tag":73,"props":6140,"children":6141},{"style":215},[6142],{"type":51,"value":294},{"type":45,"tag":73,"props":6144,"children":6145},{"style":215},[6146],{"type":51,"value":229},{"type":45,"tag":73,"props":6148,"children":6149},{"style":3108},[6150],{"type":51,"value":6100},{"type":45,"tag":73,"props":6152,"children":6153},{"style":221},[6154],{"type":51,"value":6155},")       ",{"type":45,"tag":73,"props":6157,"children":6158},{"style":80},[6159],{"type":51,"value":6160},"\u002F\u002F field \u003C= value\n",{"type":45,"tag":73,"props":6162,"children":6163},{"class":75,"line":143},[6164,6168,6172,6177,6181,6185,6189,6193,6197,6201,6206],{"type":45,"tag":73,"props":6165,"children":6166},{"style":221},[6167],{"type":51,"value":5949},{"type":45,"tag":73,"props":6169,"children":6170},{"style":215},[6171],{"type":51,"value":699},{"type":45,"tag":73,"props":6173,"children":6174},{"style":428},[6175],{"type":51,"value":6176},"greaterThan",{"type":45,"tag":73,"props":6178,"children":6179},{"style":221},[6180],{"type":51,"value":453},{"type":45,"tag":73,"props":6182,"children":6183},{"style":215},[6184],{"type":51,"value":294},{"type":45,"tag":73,"props":6186,"children":6187},{"style":96},[6188],{"type":51,"value":5970},{"type":45,"tag":73,"props":6190,"children":6191},{"style":215},[6192],{"type":51,"value":294},{"type":45,"tag":73,"props":6194,"children":6195},{"style":215},[6196],{"type":51,"value":229},{"type":45,"tag":73,"props":6198,"children":6199},{"style":3108},[6200],{"type":51,"value":6100},{"type":45,"tag":73,"props":6202,"children":6203},{"style":221},[6204],{"type":51,"value":6205},")         ",{"type":45,"tag":73,"props":6207,"children":6208},{"style":80},[6209],{"type":51,"value":6210},"\u002F\u002F field > value\n",{"type":45,"tag":73,"props":6212,"children":6213},{"class":75,"line":151},[6214,6218,6222,6227,6231,6235,6239,6243,6247,6251,6256],{"type":45,"tag":73,"props":6215,"children":6216},{"style":221},[6217],{"type":51,"value":5949},{"type":45,"tag":73,"props":6219,"children":6220},{"style":215},[6221],{"type":51,"value":699},{"type":45,"tag":73,"props":6223,"children":6224},{"style":428},[6225],{"type":51,"value":6226},"greaterThanEqual",{"type":45,"tag":73,"props":6228,"children":6229},{"style":221},[6230],{"type":51,"value":453},{"type":45,"tag":73,"props":6232,"children":6233},{"style":215},[6234],{"type":51,"value":294},{"type":45,"tag":73,"props":6236,"children":6237},{"style":96},[6238],{"type":51,"value":5970},{"type":45,"tag":73,"props":6240,"children":6241},{"style":215},[6242],{"type":51,"value":294},{"type":45,"tag":73,"props":6244,"children":6245},{"style":215},[6246],{"type":51,"value":229},{"type":45,"tag":73,"props":6248,"children":6249},{"style":3108},[6250],{"type":51,"value":6100},{"type":45,"tag":73,"props":6252,"children":6253},{"style":221},[6254],{"type":51,"value":6255},")    ",{"type":45,"tag":73,"props":6257,"children":6258},{"style":80},[6259],{"type":51,"value":6260},"\u002F\u002F field >= value\n",{"type":45,"tag":73,"props":6262,"children":6263},{"class":75,"line":160},[6264,6268,6272,6277,6281,6285,6289,6293,6297,6302,6306,6310,6315],{"type":45,"tag":73,"props":6265,"children":6266},{"style":221},[6267],{"type":51,"value":5949},{"type":45,"tag":73,"props":6269,"children":6270},{"style":215},[6271],{"type":51,"value":699},{"type":45,"tag":73,"props":6273,"children":6274},{"style":428},[6275],{"type":51,"value":6276},"between",{"type":45,"tag":73,"props":6278,"children":6279},{"style":221},[6280],{"type":51,"value":453},{"type":45,"tag":73,"props":6282,"children":6283},{"style":215},[6284],{"type":51,"value":294},{"type":45,"tag":73,"props":6286,"children":6287},{"style":96},[6288],{"type":51,"value":5970},{"type":45,"tag":73,"props":6290,"children":6291},{"style":215},[6292],{"type":51,"value":294},{"type":45,"tag":73,"props":6294,"children":6295},{"style":215},[6296],{"type":51,"value":229},{"type":45,"tag":73,"props":6298,"children":6299},{"style":3108},[6300],{"type":51,"value":6301}," 1",{"type":45,"tag":73,"props":6303,"children":6304},{"style":215},[6305],{"type":51,"value":229},{"type":45,"tag":73,"props":6307,"children":6308},{"style":3108},[6309],{"type":51,"value":6100},{"type":45,"tag":73,"props":6311,"children":6312},{"style":221},[6313],{"type":51,"value":6314},")          ",{"type":45,"tag":73,"props":6316,"children":6317},{"style":80},[6318],{"type":51,"value":6319},"\u002F\u002F 1 \u003C= field \u003C= 100\n",{"type":45,"tag":73,"props":6321,"children":6322},{"class":75,"line":474},[6323,6327,6331,6336,6340,6344,6348,6352,6357],{"type":45,"tag":73,"props":6324,"children":6325},{"style":221},[6326],{"type":51,"value":5949},{"type":45,"tag":73,"props":6328,"children":6329},{"style":215},[6330],{"type":51,"value":699},{"type":45,"tag":73,"props":6332,"children":6333},{"style":428},[6334],{"type":51,"value":6335},"isNull",{"type":45,"tag":73,"props":6337,"children":6338},{"style":221},[6339],{"type":51,"value":453},{"type":45,"tag":73,"props":6341,"children":6342},{"style":215},[6343],{"type":51,"value":294},{"type":45,"tag":73,"props":6345,"children":6346},{"style":96},[6347],{"type":51,"value":5970},{"type":45,"tag":73,"props":6349,"children":6350},{"style":215},[6351],{"type":51,"value":294},{"type":45,"tag":73,"props":6353,"children":6354},{"style":221},[6355],{"type":51,"value":6356},")                   ",{"type":45,"tag":73,"props":6358,"children":6359},{"style":80},[6360],{"type":51,"value":6361},"\u002F\u002F field is null\n",{"type":45,"tag":73,"props":6363,"children":6364},{"class":75,"line":988},[6365,6369,6373,6378,6382,6386,6390,6394,6399],{"type":45,"tag":73,"props":6366,"children":6367},{"style":221},[6368],{"type":51,"value":5949},{"type":45,"tag":73,"props":6370,"children":6371},{"style":215},[6372],{"type":51,"value":699},{"type":45,"tag":73,"props":6374,"children":6375},{"style":428},[6376],{"type":51,"value":6377},"isNotNull",{"type":45,"tag":73,"props":6379,"children":6380},{"style":221},[6381],{"type":51,"value":453},{"type":45,"tag":73,"props":6383,"children":6384},{"style":215},[6385],{"type":51,"value":294},{"type":45,"tag":73,"props":6387,"children":6388},{"style":96},[6389],{"type":51,"value":5970},{"type":45,"tag":73,"props":6391,"children":6392},{"style":215},[6393],{"type":51,"value":294},{"type":45,"tag":73,"props":6395,"children":6396},{"style":221},[6397],{"type":51,"value":6398},")                ",{"type":45,"tag":73,"props":6400,"children":6401},{"style":80},[6402],{"type":51,"value":6403},"\u002F\u002F field is not null\n",{"type":45,"tag":73,"props":6405,"children":6406},{"class":75,"line":996},[6407,6411,6415,6420,6424,6428,6432,6436,6440,6444,6449,6453,6458],{"type":45,"tag":73,"props":6408,"children":6409},{"style":221},[6410],{"type":51,"value":5949},{"type":45,"tag":73,"props":6412,"children":6413},{"style":215},[6414],{"type":51,"value":699},{"type":45,"tag":73,"props":6416,"children":6417},{"style":428},[6418],{"type":51,"value":6419},"startsWith",{"type":45,"tag":73,"props":6421,"children":6422},{"style":221},[6423],{"type":51,"value":453},{"type":45,"tag":73,"props":6425,"children":6426},{"style":215},[6427],{"type":51,"value":294},{"type":45,"tag":73,"props":6429,"children":6430},{"style":96},[6431],{"type":51,"value":5970},{"type":45,"tag":73,"props":6433,"children":6434},{"style":215},[6435],{"type":51,"value":294},{"type":45,"tag":73,"props":6437,"children":6438},{"style":215},[6439],{"type":51,"value":229},{"type":45,"tag":73,"props":6441,"children":6442},{"style":215},[6443],{"type":51,"value":285},{"type":45,"tag":73,"props":6445,"children":6446},{"style":96},[6447],{"type":51,"value":6448},"prefix",{"type":45,"tag":73,"props":6450,"children":6451},{"style":215},[6452],{"type":51,"value":294},{"type":45,"tag":73,"props":6454,"children":6455},{"style":221},[6456],{"type":51,"value":6457},")     ",{"type":45,"tag":73,"props":6459,"children":6460},{"style":80},[6461],{"type":51,"value":6462},"\u002F\u002F string starts with prefix\n",{"type":45,"tag":73,"props":6464,"children":6465},{"class":75,"line":1005},[6466,6470,6474,6479,6483,6487,6491,6495,6499,6503,6508,6512,6516],{"type":45,"tag":73,"props":6467,"children":6468},{"style":221},[6469],{"type":51,"value":5949},{"type":45,"tag":73,"props":6471,"children":6472},{"style":215},[6473],{"type":51,"value":699},{"type":45,"tag":73,"props":6475,"children":6476},{"style":428},[6477],{"type":51,"value":6478},"endsWith",{"type":45,"tag":73,"props":6480,"children":6481},{"style":221},[6482],{"type":51,"value":453},{"type":45,"tag":73,"props":6484,"children":6485},{"style":215},[6486],{"type":51,"value":294},{"type":45,"tag":73,"props":6488,"children":6489},{"style":96},[6490],{"type":51,"value":5970},{"type":45,"tag":73,"props":6492,"children":6493},{"style":215},[6494],{"type":51,"value":294},{"type":45,"tag":73,"props":6496,"children":6497},{"style":215},[6498],{"type":51,"value":229},{"type":45,"tag":73,"props":6500,"children":6501},{"style":215},[6502],{"type":51,"value":285},{"type":45,"tag":73,"props":6504,"children":6505},{"style":96},[6506],{"type":51,"value":6507},"suffix",{"type":45,"tag":73,"props":6509,"children":6510},{"style":215},[6511],{"type":51,"value":294},{"type":45,"tag":73,"props":6513,"children":6514},{"style":221},[6515],{"type":51,"value":6155},{"type":45,"tag":73,"props":6517,"children":6518},{"style":80},[6519],{"type":51,"value":6520},"\u002F\u002F string ends with suffix\n",{"type":45,"tag":73,"props":6522,"children":6523},{"class":75,"line":1048},[6524,6528,6532,6537,6541,6545,6549,6553,6557,6561,6566,6570,6574],{"type":45,"tag":73,"props":6525,"children":6526},{"style":221},[6527],{"type":51,"value":5949},{"type":45,"tag":73,"props":6529,"children":6530},{"style":215},[6531],{"type":51,"value":699},{"type":45,"tag":73,"props":6533,"children":6534},{"style":428},[6535],{"type":51,"value":6536},"contains",{"type":45,"tag":73,"props":6538,"children":6539},{"style":221},[6540],{"type":51,"value":453},{"type":45,"tag":73,"props":6542,"children":6543},{"style":215},[6544],{"type":51,"value":294},{"type":45,"tag":73,"props":6546,"children":6547},{"style":96},[6548],{"type":51,"value":5970},{"type":45,"tag":73,"props":6550,"children":6551},{"style":215},[6552],{"type":51,"value":294},{"type":45,"tag":73,"props":6554,"children":6555},{"style":215},[6556],{"type":51,"value":229},{"type":45,"tag":73,"props":6558,"children":6559},{"style":215},[6560],{"type":51,"value":285},{"type":45,"tag":73,"props":6562,"children":6563},{"style":96},[6564],{"type":51,"value":6565},"substring",{"type":45,"tag":73,"props":6567,"children":6568},{"style":215},[6569],{"type":51,"value":294},{"type":45,"tag":73,"props":6571,"children":6572},{"style":221},[6573],{"type":51,"value":6255},{"type":45,"tag":73,"props":6575,"children":6576},{"style":80},[6577],{"type":51,"value":6578},"\u002F\u002F string\u002Farray contains value\n",{"type":45,"tag":73,"props":6580,"children":6581},{"class":75,"line":1076},[6582,6586,6590,6595,6599,6603,6607,6611,6615,6619,6624,6628,6632],{"type":45,"tag":73,"props":6583,"children":6584},{"style":221},[6585],{"type":51,"value":5949},{"type":45,"tag":73,"props":6587,"children":6588},{"style":215},[6589],{"type":51,"value":699},{"type":45,"tag":73,"props":6591,"children":6592},{"style":428},[6593],{"type":51,"value":6594},"search",{"type":45,"tag":73,"props":6596,"children":6597},{"style":221},[6598],{"type":51,"value":453},{"type":45,"tag":73,"props":6600,"children":6601},{"style":215},[6602],{"type":51,"value":294},{"type":45,"tag":73,"props":6604,"children":6605},{"style":96},[6606],{"type":51,"value":5970},{"type":45,"tag":73,"props":6608,"children":6609},{"style":215},[6610],{"type":51,"value":294},{"type":45,"tag":73,"props":6612,"children":6613},{"style":215},[6614],{"type":51,"value":229},{"type":45,"tag":73,"props":6616,"children":6617},{"style":215},[6618],{"type":51,"value":285},{"type":45,"tag":73,"props":6620,"children":6621},{"style":96},[6622],{"type":51,"value":6623},"keywords",{"type":45,"tag":73,"props":6625,"children":6626},{"style":215},[6627],{"type":51,"value":294},{"type":45,"tag":73,"props":6629,"children":6630},{"style":221},[6631],{"type":51,"value":6155},{"type":45,"tag":73,"props":6633,"children":6634},{"style":80},[6635],{"type":51,"value":6636},"\u002F\u002F full-text search (requires full-text index)\n",{"type":45,"tag":73,"props":6638,"children":6639},{"class":75,"line":1100},[6640],{"type":45,"tag":73,"props":6641,"children":6642},{"emptyLinePlaceholder":111},[6643],{"type":51,"value":114},{"type":45,"tag":73,"props":6645,"children":6646},{"class":75,"line":1116},[6647],{"type":45,"tag":73,"props":6648,"children":6649},{"style":80},[6650],{"type":51,"value":6651},"\u002F\u002F Sorting\n",{"type":45,"tag":73,"props":6653,"children":6654},{"class":75,"line":1124},[6655,6659,6663,6668,6672,6676,6680,6684,6689],{"type":45,"tag":73,"props":6656,"children":6657},{"style":221},[6658],{"type":51,"value":5949},{"type":45,"tag":73,"props":6660,"children":6661},{"style":215},[6662],{"type":51,"value":699},{"type":45,"tag":73,"props":6664,"children":6665},{"style":428},[6666],{"type":51,"value":6667},"orderAsc",{"type":45,"tag":73,"props":6669,"children":6670},{"style":221},[6671],{"type":51,"value":453},{"type":45,"tag":73,"props":6673,"children":6674},{"style":215},[6675],{"type":51,"value":294},{"type":45,"tag":73,"props":6677,"children":6678},{"style":96},[6679],{"type":51,"value":5970},{"type":45,"tag":73,"props":6681,"children":6682},{"style":215},[6683],{"type":51,"value":294},{"type":45,"tag":73,"props":6685,"children":6686},{"style":221},[6687],{"type":51,"value":6688},")                 ",{"type":45,"tag":73,"props":6690,"children":6691},{"style":80},[6692],{"type":51,"value":6693},"\u002F\u002F sort ascending\n",{"type":45,"tag":73,"props":6695,"children":6696},{"class":75,"line":1133},[6697,6701,6705,6710,6714,6718,6722,6726,6730],{"type":45,"tag":73,"props":6698,"children":6699},{"style":221},[6700],{"type":51,"value":5949},{"type":45,"tag":73,"props":6702,"children":6703},{"style":215},[6704],{"type":51,"value":699},{"type":45,"tag":73,"props":6706,"children":6707},{"style":428},[6708],{"type":51,"value":6709},"orderDesc",{"type":45,"tag":73,"props":6711,"children":6712},{"style":221},[6713],{"type":51,"value":453},{"type":45,"tag":73,"props":6715,"children":6716},{"style":215},[6717],{"type":51,"value":294},{"type":45,"tag":73,"props":6719,"children":6720},{"style":96},[6721],{"type":51,"value":5970},{"type":45,"tag":73,"props":6723,"children":6724},{"style":215},[6725],{"type":51,"value":294},{"type":45,"tag":73,"props":6727,"children":6728},{"style":221},[6729],{"type":51,"value":6398},{"type":45,"tag":73,"props":6731,"children":6732},{"style":80},[6733],{"type":51,"value":6734},"\u002F\u002F sort descending\n",{"type":45,"tag":73,"props":6736,"children":6737},{"class":75,"line":1159},[6738],{"type":45,"tag":73,"props":6739,"children":6740},{"emptyLinePlaceholder":111},[6741],{"type":51,"value":114},{"type":45,"tag":73,"props":6743,"children":6744},{"class":75,"line":1190},[6745],{"type":45,"tag":73,"props":6746,"children":6747},{"style":80},[6748],{"type":51,"value":6749},"\u002F\u002F Pagination\n",{"type":45,"tag":73,"props":6751,"children":6752},{"class":75,"line":1220},[6753,6757,6761,6765,6769,6773,6778],{"type":45,"tag":73,"props":6754,"children":6755},{"style":221},[6756],{"type":51,"value":5949},{"type":45,"tag":73,"props":6758,"children":6759},{"style":215},[6760],{"type":51,"value":699},{"type":45,"tag":73,"props":6762,"children":6763},{"style":428},[6764],{"type":51,"value":3101},{"type":45,"tag":73,"props":6766,"children":6767},{"style":221},[6768],{"type":51,"value":453},{"type":45,"tag":73,"props":6770,"children":6771},{"style":3108},[6772],{"type":51,"value":3111},{"type":45,"tag":73,"props":6774,"children":6775},{"style":221},[6776],{"type":51,"value":6777},")                         ",{"type":45,"tag":73,"props":6779,"children":6780},{"style":80},[6781],{"type":51,"value":6782},"\u002F\u002F max rows returned (default 25, max 100)\n",{"type":45,"tag":73,"props":6784,"children":6785},{"class":75,"line":1250},[6786,6790,6794,6799,6803,6807,6811],{"type":45,"tag":73,"props":6787,"children":6788},{"style":221},[6789],{"type":51,"value":5949},{"type":45,"tag":73,"props":6791,"children":6792},{"style":215},[6793],{"type":51,"value":699},{"type":45,"tag":73,"props":6795,"children":6796},{"style":428},[6797],{"type":51,"value":6798},"offset",{"type":45,"tag":73,"props":6800,"children":6801},{"style":221},[6802],{"type":51,"value":453},{"type":45,"tag":73,"props":6804,"children":6805},{"style":3108},[6806],{"type":51,"value":5697},{"type":45,"tag":73,"props":6808,"children":6809},{"style":221},[6810],{"type":51,"value":6777},{"type":45,"tag":73,"props":6812,"children":6813},{"style":80},[6814],{"type":51,"value":6815},"\u002F\u002F skip N rows\n",{"type":45,"tag":73,"props":6817,"children":6818},{"class":75,"line":29},[6819,6823,6827,6832,6836,6840,6844,6848,6852],{"type":45,"tag":73,"props":6820,"children":6821},{"style":221},[6822],{"type":51,"value":5949},{"type":45,"tag":73,"props":6824,"children":6825},{"style":215},[6826],{"type":51,"value":699},{"type":45,"tag":73,"props":6828,"children":6829},{"style":428},[6830],{"type":51,"value":6831},"cursorAfter",{"type":45,"tag":73,"props":6833,"children":6834},{"style":221},[6835],{"type":51,"value":453},{"type":45,"tag":73,"props":6837,"children":6838},{"style":215},[6839],{"type":51,"value":294},{"type":45,"tag":73,"props":6841,"children":6842},{"style":96},[6843],{"type":51,"value":4240},{"type":45,"tag":73,"props":6845,"children":6846},{"style":215},[6847],{"type":51,"value":294},{"type":45,"tag":73,"props":6849,"children":6850},{"style":221},[6851],{"type":51,"value":5996},{"type":45,"tag":73,"props":6853,"children":6854},{"style":80},[6855],{"type":51,"value":6856},"\u002F\u002F paginate after this row ID (preferred for large datasets)\n",{"type":45,"tag":73,"props":6858,"children":6859},{"class":75,"line":1323},[6860,6864,6868,6873,6877,6881,6885,6889,6893],{"type":45,"tag":73,"props":6861,"children":6862},{"style":221},[6863],{"type":51,"value":5949},{"type":45,"tag":73,"props":6865,"children":6866},{"style":215},[6867],{"type":51,"value":699},{"type":45,"tag":73,"props":6869,"children":6870},{"style":428},[6871],{"type":51,"value":6872},"cursorBefore",{"type":45,"tag":73,"props":6874,"children":6875},{"style":221},[6876],{"type":51,"value":453},{"type":45,"tag":73,"props":6878,"children":6879},{"style":215},[6880],{"type":51,"value":294},{"type":45,"tag":73,"props":6882,"children":6883},{"style":96},[6884],{"type":51,"value":4240},{"type":45,"tag":73,"props":6886,"children":6887},{"style":215},[6888],{"type":51,"value":294},{"type":45,"tag":73,"props":6890,"children":6891},{"style":221},[6892],{"type":51,"value":6314},{"type":45,"tag":73,"props":6894,"children":6895},{"style":80},[6896],{"type":51,"value":6897},"\u002F\u002F paginate before this row ID\n",{"type":45,"tag":73,"props":6899,"children":6900},{"class":75,"line":1331},[6901],{"type":45,"tag":73,"props":6902,"children":6903},{"emptyLinePlaceholder":111},[6904],{"type":51,"value":114},{"type":45,"tag":73,"props":6906,"children":6907},{"class":75,"line":1340},[6908],{"type":45,"tag":73,"props":6909,"children":6910},{"style":80},[6911],{"type":51,"value":6912},"\u002F\u002F Selection\n",{"type":45,"tag":73,"props":6914,"children":6915},{"class":75,"line":1382},[6916,6920,6924,6929,6934,6938,6943,6947,6951,6955,6960,6964,6969],{"type":45,"tag":73,"props":6917,"children":6918},{"style":221},[6919],{"type":51,"value":5949},{"type":45,"tag":73,"props":6921,"children":6922},{"style":215},[6923],{"type":51,"value":699},{"type":45,"tag":73,"props":6925,"children":6926},{"style":428},[6927],{"type":51,"value":6928},"select",{"type":45,"tag":73,"props":6930,"children":6931},{"style":221},[6932],{"type":51,"value":6933},"([",{"type":45,"tag":73,"props":6935,"children":6936},{"style":215},[6937],{"type":51,"value":294},{"type":45,"tag":73,"props":6939,"children":6940},{"style":96},[6941],{"type":51,"value":6942},"field1",{"type":45,"tag":73,"props":6944,"children":6945},{"style":215},[6946],{"type":51,"value":294},{"type":45,"tag":73,"props":6948,"children":6949},{"style":215},[6950],{"type":51,"value":229},{"type":45,"tag":73,"props":6952,"children":6953},{"style":215},[6954],{"type":51,"value":285},{"type":45,"tag":73,"props":6956,"children":6957},{"style":96},[6958],{"type":51,"value":6959},"field2",{"type":45,"tag":73,"props":6961,"children":6962},{"style":215},[6963],{"type":51,"value":294},{"type":45,"tag":73,"props":6965,"children":6966},{"style":221},[6967],{"type":51,"value":6968},"])      ",{"type":45,"tag":73,"props":6970,"children":6971},{"style":80},[6972],{"type":51,"value":6973},"\u002F\u002F return only specified fields\n",{"type":45,"tag":73,"props":6975,"children":6976},{"class":75,"line":1390},[6977],{"type":45,"tag":73,"props":6978,"children":6979},{"emptyLinePlaceholder":111},[6980],{"type":51,"value":114},{"type":45,"tag":73,"props":6982,"children":6983},{"class":75,"line":1399},[6984],{"type":45,"tag":73,"props":6985,"children":6986},{"style":80},[6987],{"type":51,"value":6988},"\u002F\u002F Logical\n",{"type":45,"tag":73,"props":6990,"children":6991},{"class":75,"line":2522},[6992,6996,7000,7005,7010,7014,7018,7022,7026,7031,7035,7039,7043,7047,7051,7055,7059,7063,7067,7071,7076,7080,7084,7089,7094],{"type":45,"tag":73,"props":6993,"children":6994},{"style":221},[6995],{"type":51,"value":5949},{"type":45,"tag":73,"props":6997,"children":6998},{"style":215},[6999],{"type":51,"value":699},{"type":45,"tag":73,"props":7001,"children":7002},{"style":428},[7003],{"type":51,"value":7004},"or",{"type":45,"tag":73,"props":7006,"children":7007},{"style":221},[7008],{"type":51,"value":7009},"([Query",{"type":45,"tag":73,"props":7011,"children":7012},{"style":215},[7013],{"type":51,"value":699},{"type":45,"tag":73,"props":7015,"children":7016},{"style":428},[7017],{"type":51,"value":4027},{"type":45,"tag":73,"props":7019,"children":7020},{"style":221},[7021],{"type":51,"value":453},{"type":45,"tag":73,"props":7023,"children":7024},{"style":215},[7025],{"type":51,"value":294},{"type":45,"tag":73,"props":7027,"children":7028},{"style":96},[7029],{"type":51,"value":7030},"a",{"type":45,"tag":73,"props":7032,"children":7033},{"style":215},[7034],{"type":51,"value":294},{"type":45,"tag":73,"props":7036,"children":7037},{"style":215},[7038],{"type":51,"value":229},{"type":45,"tag":73,"props":7040,"children":7041},{"style":3108},[7042],{"type":51,"value":6301},{"type":45,"tag":73,"props":7044,"children":7045},{"style":221},[7046],{"type":51,"value":506},{"type":45,"tag":73,"props":7048,"children":7049},{"style":215},[7050],{"type":51,"value":229},{"type":45,"tag":73,"props":7052,"children":7053},{"style":221},[7054],{"type":51,"value":270},{"type":45,"tag":73,"props":7056,"children":7057},{"style":215},[7058],{"type":51,"value":699},{"type":45,"tag":73,"props":7060,"children":7061},{"style":428},[7062],{"type":51,"value":4027},{"type":45,"tag":73,"props":7064,"children":7065},{"style":221},[7066],{"type":51,"value":453},{"type":45,"tag":73,"props":7068,"children":7069},{"style":215},[7070],{"type":51,"value":294},{"type":45,"tag":73,"props":7072,"children":7073},{"style":96},[7074],{"type":51,"value":7075},"b",{"type":45,"tag":73,"props":7077,"children":7078},{"style":215},[7079],{"type":51,"value":294},{"type":45,"tag":73,"props":7081,"children":7082},{"style":215},[7083],{"type":51,"value":229},{"type":45,"tag":73,"props":7085,"children":7086},{"style":3108},[7087],{"type":51,"value":7088}," 2",{"type":45,"tag":73,"props":7090,"children":7091},{"style":221},[7092],{"type":51,"value":7093},")])   ",{"type":45,"tag":73,"props":7095,"children":7096},{"style":80},[7097],{"type":51,"value":7098},"\u002F\u002F OR condition\n",{"type":45,"tag":73,"props":7100,"children":7101},{"class":75,"line":2585},[7102,7106,7110,7115,7119,7123,7127,7131,7135,7140,7144,7148,7153,7157,7161,7165,7169,7173,7177,7181,7185,7189,7193,7198,7203],{"type":45,"tag":73,"props":7103,"children":7104},{"style":221},[7105],{"type":51,"value":5949},{"type":45,"tag":73,"props":7107,"children":7108},{"style":215},[7109],{"type":51,"value":699},{"type":45,"tag":73,"props":7111,"children":7112},{"style":428},[7113],{"type":51,"value":7114},"and",{"type":45,"tag":73,"props":7116,"children":7117},{"style":221},[7118],{"type":51,"value":7009},{"type":45,"tag":73,"props":7120,"children":7121},{"style":215},[7122],{"type":51,"value":699},{"type":45,"tag":73,"props":7124,"children":7125},{"style":428},[7126],{"type":51,"value":6176},{"type":45,"tag":73,"props":7128,"children":7129},{"style":221},[7130],{"type":51,"value":453},{"type":45,"tag":73,"props":7132,"children":7133},{"style":215},[7134],{"type":51,"value":294},{"type":45,"tag":73,"props":7136,"children":7137},{"style":96},[7138],{"type":51,"value":7139},"age",{"type":45,"tag":73,"props":7141,"children":7142},{"style":215},[7143],{"type":51,"value":294},{"type":45,"tag":73,"props":7145,"children":7146},{"style":215},[7147],{"type":51,"value":229},{"type":45,"tag":73,"props":7149,"children":7150},{"style":3108},[7151],{"type":51,"value":7152}," 18",{"type":45,"tag":73,"props":7154,"children":7155},{"style":221},[7156],{"type":51,"value":506},{"type":45,"tag":73,"props":7158,"children":7159},{"style":215},[7160],{"type":51,"value":229},{"type":45,"tag":73,"props":7162,"children":7163},{"style":221},[7164],{"type":51,"value":270},{"type":45,"tag":73,"props":7166,"children":7167},{"style":215},[7168],{"type":51,"value":699},{"type":45,"tag":73,"props":7170,"children":7171},{"style":428},[7172],{"type":51,"value":6075},{"type":45,"tag":73,"props":7174,"children":7175},{"style":221},[7176],{"type":51,"value":453},{"type":45,"tag":73,"props":7178,"children":7179},{"style":215},[7180],{"type":51,"value":294},{"type":45,"tag":73,"props":7182,"children":7183},{"style":96},[7184],{"type":51,"value":7139},{"type":45,"tag":73,"props":7186,"children":7187},{"style":215},[7188],{"type":51,"value":294},{"type":45,"tag":73,"props":7190,"children":7191},{"style":215},[7192],{"type":51,"value":229},{"type":45,"tag":73,"props":7194,"children":7195},{"style":3108},[7196],{"type":51,"value":7197}," 65",{"type":45,"tag":73,"props":7199,"children":7200},{"style":221},[7201],{"type":51,"value":7202},")])  ",{"type":45,"tag":73,"props":7204,"children":7205},{"style":80},[7206],{"type":51,"value":7207},"\u002F\u002F explicit AND (queries are AND by default)\n",{"type":45,"tag":182,"props":7209,"children":7211},{"id":7210},"file-storage",[7212],{"type":51,"value":7213},"File Storage",{"type":45,"tag":61,"props":7215,"children":7217},{"className":190,"code":7216,"language":21,"meta":66,"style":66},"const storage = new Storage(client);\n\n\u002F\u002F Upload file (client-side — from file input)\nconst file = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: document.getElementById('file-input').files[0]\n});\n\n\u002F\u002F Upload file (server-side — from path)\nimport { InputFile } from 'node-appwrite\u002Ffile';\n\nconst file2 = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: InputFile.fromPath('\u002Fpath\u002Fto\u002Ffile.png', 'file.png')\n});\n\n\u002F\u002F List files\nconst files = await storage.listFiles({ bucketId: '[BUCKET_ID]' });\n\n\u002F\u002F Get file preview (image)\nconst preview = storage.getFilePreview({\n    bucketId: '[BUCKET_ID]',\n    fileId: '[FILE_ID]',\n    width: 300,\n    height: 300\n});\n\n\u002F\u002F Download file\nconst download = await storage.getFileDownload({\n    bucketId: '[BUCKET_ID]',\n    fileId: '[FILE_ID]'\n});\n\n\u002F\u002F Delete file\nawait storage.deleteFile({ bucketId: '[BUCKET_ID]', fileId: '[FILE_ID]' });\n",[7218],{"type":45,"tag":69,"props":7219,"children":7220},{"__ignoreMap":66},[7221,7253,7260,7268,7310,7339,7371,7436,7451,7458,7466,7507,7514,7554,7581,7612,7674,7689,7696,7704,7778,7785,7793,7830,7857,7885,7906,7923,7938,7945,7953,7994,8021,8044,8059,8066,8074],{"type":45,"tag":73,"props":7222,"children":7223},{"class":75,"line":76},[7224,7228,7233,7237,7241,7245,7249],{"type":45,"tag":73,"props":7225,"children":7226},{"style":407},[7227],{"type":51,"value":410},{"type":45,"tag":73,"props":7229,"children":7230},{"style":221},[7231],{"type":51,"value":7232}," storage ",{"type":45,"tag":73,"props":7234,"children":7235},{"style":215},[7236],{"type":51,"value":420},{"type":45,"tag":73,"props":7238,"children":7239},{"style":215},[7240],{"type":51,"value":425},{"type":45,"tag":73,"props":7242,"children":7243},{"style":428},[7244],{"type":51,"value":252},{"type":45,"tag":73,"props":7246,"children":7247},{"style":221},[7248],{"type":51,"value":798},{"type":45,"tag":73,"props":7250,"children":7251},{"style":215},[7252],{"type":51,"value":299},{"type":45,"tag":73,"props":7254,"children":7255},{"class":75,"line":86},[7256],{"type":45,"tag":73,"props":7257,"children":7258},{"emptyLinePlaceholder":111},[7259],{"type":51,"value":114},{"type":45,"tag":73,"props":7261,"children":7262},{"class":75,"line":107},[7263],{"type":45,"tag":73,"props":7264,"children":7265},{"style":80},[7266],{"type":51,"value":7267},"\u002F\u002F Upload file (client-side — from file input)\n",{"type":45,"tag":73,"props":7269,"children":7270},{"class":75,"line":117},[7271,7275,7280,7284,7288,7293,7297,7302,7306],{"type":45,"tag":73,"props":7272,"children":7273},{"style":407},[7274],{"type":51,"value":410},{"type":45,"tag":73,"props":7276,"children":7277},{"style":221},[7278],{"type":51,"value":7279}," file ",{"type":45,"tag":73,"props":7281,"children":7282},{"style":215},[7283],{"type":51,"value":420},{"type":45,"tag":73,"props":7285,"children":7286},{"style":209},[7287],{"type":51,"value":1024},{"type":45,"tag":73,"props":7289,"children":7290},{"style":221},[7291],{"type":51,"value":7292}," storage",{"type":45,"tag":73,"props":7294,"children":7295},{"style":215},[7296],{"type":51,"value":699},{"type":45,"tag":73,"props":7298,"children":7299},{"style":428},[7300],{"type":51,"value":7301},"createFile",{"type":45,"tag":73,"props":7303,"children":7304},{"style":221},[7305],{"type":51,"value":453},{"type":45,"tag":73,"props":7307,"children":7308},{"style":215},[7309],{"type":51,"value":848},{"type":45,"tag":73,"props":7311,"children":7312},{"class":75,"line":126},[7313,7318,7322,7326,7331,7335],{"type":45,"tag":73,"props":7314,"children":7315},{"style":854},[7316],{"type":51,"value":7317},"    bucketId",{"type":45,"tag":73,"props":7319,"children":7320},{"style":215},[7321],{"type":51,"value":862},{"type":45,"tag":73,"props":7323,"children":7324},{"style":215},[7325],{"type":51,"value":285},{"type":45,"tag":73,"props":7327,"children":7328},{"style":96},[7329],{"type":51,"value":7330},"[BUCKET_ID]",{"type":45,"tag":73,"props":7332,"children":7333},{"style":215},[7334],{"type":51,"value":294},{"type":45,"tag":73,"props":7336,"children":7337},{"style":215},[7338],{"type":51,"value":885},{"type":45,"tag":73,"props":7340,"children":7341},{"class":75,"line":143},[7342,7347,7351,7355,7359,7363,7367],{"type":45,"tag":73,"props":7343,"children":7344},{"style":854},[7345],{"type":51,"value":7346},"    fileId",{"type":45,"tag":73,"props":7348,"children":7349},{"style":215},[7350],{"type":51,"value":862},{"type":45,"tag":73,"props":7352,"children":7353},{"style":221},[7354],{"type":51,"value":261},{"type":45,"tag":73,"props":7356,"children":7357},{"style":215},[7358],{"type":51,"value":699},{"type":45,"tag":73,"props":7360,"children":7361},{"style":428},[7362],{"type":51,"value":875},{"type":45,"tag":73,"props":7364,"children":7365},{"style":221},[7366],{"type":51,"value":880},{"type":45,"tag":73,"props":7368,"children":7369},{"style":215},[7370],{"type":51,"value":885},{"type":45,"tag":73,"props":7372,"children":7373},{"class":75,"line":151},[7374,7379,7383,7388,7392,7397,7401,7405,7410,7414,7418,7422,7427,7431],{"type":45,"tag":73,"props":7375,"children":7376},{"style":854},[7377],{"type":51,"value":7378},"    file",{"type":45,"tag":73,"props":7380,"children":7381},{"style":215},[7382],{"type":51,"value":862},{"type":45,"tag":73,"props":7384,"children":7385},{"style":221},[7386],{"type":51,"value":7387}," document",{"type":45,"tag":73,"props":7389,"children":7390},{"style":215},[7391],{"type":51,"value":699},{"type":45,"tag":73,"props":7393,"children":7394},{"style":428},[7395],{"type":51,"value":7396},"getElementById",{"type":45,"tag":73,"props":7398,"children":7399},{"style":221},[7400],{"type":51,"value":453},{"type":45,"tag":73,"props":7402,"children":7403},{"style":215},[7404],{"type":51,"value":294},{"type":45,"tag":73,"props":7406,"children":7407},{"style":96},[7408],{"type":51,"value":7409},"file-input",{"type":45,"tag":73,"props":7411,"children":7412},{"style":215},[7413],{"type":51,"value":294},{"type":45,"tag":73,"props":7415,"children":7416},{"style":221},[7417],{"type":51,"value":506},{"type":45,"tag":73,"props":7419,"children":7420},{"style":215},[7421],{"type":51,"value":699},{"type":45,"tag":73,"props":7423,"children":7424},{"style":221},[7425],{"type":51,"value":7426},"files[",{"type":45,"tag":73,"props":7428,"children":7429},{"style":3108},[7430],{"type":51,"value":5697},{"type":45,"tag":73,"props":7432,"children":7433},{"style":221},[7434],{"type":51,"value":7435},"]\n",{"type":45,"tag":73,"props":7437,"children":7438},{"class":75,"line":160},[7439,7443,7447],{"type":45,"tag":73,"props":7440,"children":7441},{"style":215},[7442],{"type":51,"value":977},{"type":45,"tag":73,"props":7444,"children":7445},{"style":221},[7446],{"type":51,"value":506},{"type":45,"tag":73,"props":7448,"children":7449},{"style":215},[7450],{"type":51,"value":299},{"type":45,"tag":73,"props":7452,"children":7453},{"class":75,"line":474},[7454],{"type":45,"tag":73,"props":7455,"children":7456},{"emptyLinePlaceholder":111},[7457],{"type":51,"value":114},{"type":45,"tag":73,"props":7459,"children":7460},{"class":75,"line":988},[7461],{"type":45,"tag":73,"props":7462,"children":7463},{"style":80},[7464],{"type":51,"value":7465},"\u002F\u002F Upload file (server-side — from path)\n",{"type":45,"tag":73,"props":7467,"children":7468},{"class":75,"line":996},[7469,7473,7477,7482,7486,7490,7494,7499,7503],{"type":45,"tag":73,"props":7470,"children":7471},{"style":209},[7472],{"type":51,"value":212},{"type":45,"tag":73,"props":7474,"children":7475},{"style":215},[7476],{"type":51,"value":218},{"type":45,"tag":73,"props":7478,"children":7479},{"style":221},[7480],{"type":51,"value":7481}," InputFile",{"type":45,"tag":73,"props":7483,"children":7484},{"style":215},[7485],{"type":51,"value":275},{"type":45,"tag":73,"props":7487,"children":7488},{"style":209},[7489],{"type":51,"value":280},{"type":45,"tag":73,"props":7491,"children":7492},{"style":215},[7493],{"type":51,"value":285},{"type":45,"tag":73,"props":7495,"children":7496},{"style":96},[7497],{"type":51,"value":7498},"node-appwrite\u002Ffile",{"type":45,"tag":73,"props":7500,"children":7501},{"style":215},[7502],{"type":51,"value":294},{"type":45,"tag":73,"props":7504,"children":7505},{"style":215},[7506],{"type":51,"value":299},{"type":45,"tag":73,"props":7508,"children":7509},{"class":75,"line":1005},[7510],{"type":45,"tag":73,"props":7511,"children":7512},{"emptyLinePlaceholder":111},[7513],{"type":51,"value":114},{"type":45,"tag":73,"props":7515,"children":7516},{"class":75,"line":1048},[7517,7521,7526,7530,7534,7538,7542,7546,7550],{"type":45,"tag":73,"props":7518,"children":7519},{"style":407},[7520],{"type":51,"value":410},{"type":45,"tag":73,"props":7522,"children":7523},{"style":221},[7524],{"type":51,"value":7525}," file2 ",{"type":45,"tag":73,"props":7527,"children":7528},{"style":215},[7529],{"type":51,"value":420},{"type":45,"tag":73,"props":7531,"children":7532},{"style":209},[7533],{"type":51,"value":1024},{"type":45,"tag":73,"props":7535,"children":7536},{"style":221},[7537],{"type":51,"value":7292},{"type":45,"tag":73,"props":7539,"children":7540},{"style":215},[7541],{"type":51,"value":699},{"type":45,"tag":73,"props":7543,"children":7544},{"style":428},[7545],{"type":51,"value":7301},{"type":45,"tag":73,"props":7547,"children":7548},{"style":221},[7549],{"type":51,"value":453},{"type":45,"tag":73,"props":7551,"children":7552},{"style":215},[7553],{"type":51,"value":848},{"type":45,"tag":73,"props":7555,"children":7556},{"class":75,"line":1076},[7557,7561,7565,7569,7573,7577],{"type":45,"tag":73,"props":7558,"children":7559},{"style":854},[7560],{"type":51,"value":7317},{"type":45,"tag":73,"props":7562,"children":7563},{"style":215},[7564],{"type":51,"value":862},{"type":45,"tag":73,"props":7566,"children":7567},{"style":215},[7568],{"type":51,"value":285},{"type":45,"tag":73,"props":7570,"children":7571},{"style":96},[7572],{"type":51,"value":7330},{"type":45,"tag":73,"props":7574,"children":7575},{"style":215},[7576],{"type":51,"value":294},{"type":45,"tag":73,"props":7578,"children":7579},{"style":215},[7580],{"type":51,"value":885},{"type":45,"tag":73,"props":7582,"children":7583},{"class":75,"line":1100},[7584,7588,7592,7596,7600,7604,7608],{"type":45,"tag":73,"props":7585,"children":7586},{"style":854},[7587],{"type":51,"value":7346},{"type":45,"tag":73,"props":7589,"children":7590},{"style":215},[7591],{"type":51,"value":862},{"type":45,"tag":73,"props":7593,"children":7594},{"style":221},[7595],{"type":51,"value":261},{"type":45,"tag":73,"props":7597,"children":7598},{"style":215},[7599],{"type":51,"value":699},{"type":45,"tag":73,"props":7601,"children":7602},{"style":428},[7603],{"type":51,"value":875},{"type":45,"tag":73,"props":7605,"children":7606},{"style":221},[7607],{"type":51,"value":880},{"type":45,"tag":73,"props":7609,"children":7610},{"style":215},[7611],{"type":51,"value":885},{"type":45,"tag":73,"props":7613,"children":7614},{"class":75,"line":1116},[7615,7619,7623,7627,7631,7636,7640,7644,7649,7653,7657,7661,7666,7670],{"type":45,"tag":73,"props":7616,"children":7617},{"style":854},[7618],{"type":51,"value":7378},{"type":45,"tag":73,"props":7620,"children":7621},{"style":215},[7622],{"type":51,"value":862},{"type":45,"tag":73,"props":7624,"children":7625},{"style":221},[7626],{"type":51,"value":7481},{"type":45,"tag":73,"props":7628,"children":7629},{"style":215},[7630],{"type":51,"value":699},{"type":45,"tag":73,"props":7632,"children":7633},{"style":428},[7634],{"type":51,"value":7635},"fromPath",{"type":45,"tag":73,"props":7637,"children":7638},{"style":221},[7639],{"type":51,"value":453},{"type":45,"tag":73,"props":7641,"children":7642},{"style":215},[7643],{"type":51,"value":294},{"type":45,"tag":73,"props":7645,"children":7646},{"style":96},[7647],{"type":51,"value":7648},"\u002Fpath\u002Fto\u002Ffile.png",{"type":45,"tag":73,"props":7650,"children":7651},{"style":215},[7652],{"type":51,"value":294},{"type":45,"tag":73,"props":7654,"children":7655},{"style":215},[7656],{"type":51,"value":229},{"type":45,"tag":73,"props":7658,"children":7659},{"style":215},[7660],{"type":51,"value":285},{"type":45,"tag":73,"props":7662,"children":7663},{"style":96},[7664],{"type":51,"value":7665},"file.png",{"type":45,"tag":73,"props":7667,"children":7668},{"style":215},[7669],{"type":51,"value":294},{"type":45,"tag":73,"props":7671,"children":7672},{"style":221},[7673],{"type":51,"value":471},{"type":45,"tag":73,"props":7675,"children":7676},{"class":75,"line":1124},[7677,7681,7685],{"type":45,"tag":73,"props":7678,"children":7679},{"style":215},[7680],{"type":51,"value":977},{"type":45,"tag":73,"props":7682,"children":7683},{"style":221},[7684],{"type":51,"value":506},{"type":45,"tag":73,"props":7686,"children":7687},{"style":215},[7688],{"type":51,"value":299},{"type":45,"tag":73,"props":7690,"children":7691},{"class":75,"line":1133},[7692],{"type":45,"tag":73,"props":7693,"children":7694},{"emptyLinePlaceholder":111},[7695],{"type":51,"value":114},{"type":45,"tag":73,"props":7697,"children":7698},{"class":75,"line":1159},[7699],{"type":45,"tag":73,"props":7700,"children":7701},{"style":80},[7702],{"type":51,"value":7703},"\u002F\u002F List files\n",{"type":45,"tag":73,"props":7705,"children":7706},{"class":75,"line":1190},[7707,7711,7716,7720,7724,7728,7732,7737,7741,7745,7750,7754,7758,7762,7766,7770,7774],{"type":45,"tag":73,"props":7708,"children":7709},{"style":407},[7710],{"type":51,"value":410},{"type":45,"tag":73,"props":7712,"children":7713},{"style":221},[7714],{"type":51,"value":7715}," files ",{"type":45,"tag":73,"props":7717,"children":7718},{"style":215},[7719],{"type":51,"value":420},{"type":45,"tag":73,"props":7721,"children":7722},{"style":209},[7723],{"type":51,"value":1024},{"type":45,"tag":73,"props":7725,"children":7726},{"style":221},[7727],{"type":51,"value":7292},{"type":45,"tag":73,"props":7729,"children":7730},{"style":215},[7731],{"type":51,"value":699},{"type":45,"tag":73,"props":7733,"children":7734},{"style":428},[7735],{"type":51,"value":7736},"listFiles",{"type":45,"tag":73,"props":7738,"children":7739},{"style":221},[7740],{"type":51,"value":453},{"type":45,"tag":73,"props":7742,"children":7743},{"style":215},[7744],{"type":51,"value":1426},{"type":45,"tag":73,"props":7746,"children":7747},{"style":854},[7748],{"type":51,"value":7749}," bucketId",{"type":45,"tag":73,"props":7751,"children":7752},{"style":215},[7753],{"type":51,"value":862},{"type":45,"tag":73,"props":7755,"children":7756},{"style":215},[7757],{"type":51,"value":285},{"type":45,"tag":73,"props":7759,"children":7760},{"style":96},[7761],{"type":51,"value":7330},{"type":45,"tag":73,"props":7763,"children":7764},{"style":215},[7765],{"type":51,"value":294},{"type":45,"tag":73,"props":7767,"children":7768},{"style":215},[7769],{"type":51,"value":275},{"type":45,"tag":73,"props":7771,"children":7772},{"style":221},[7773],{"type":51,"value":506},{"type":45,"tag":73,"props":7775,"children":7776},{"style":215},[7777],{"type":51,"value":299},{"type":45,"tag":73,"props":7779,"children":7780},{"class":75,"line":1220},[7781],{"type":45,"tag":73,"props":7782,"children":7783},{"emptyLinePlaceholder":111},[7784],{"type":51,"value":114},{"type":45,"tag":73,"props":7786,"children":7787},{"class":75,"line":1250},[7788],{"type":45,"tag":73,"props":7789,"children":7790},{"style":80},[7791],{"type":51,"value":7792},"\u002F\u002F Get file preview (image)\n",{"type":45,"tag":73,"props":7794,"children":7795},{"class":75,"line":29},[7796,7800,7805,7809,7813,7817,7822,7826],{"type":45,"tag":73,"props":7797,"children":7798},{"style":407},[7799],{"type":51,"value":410},{"type":45,"tag":73,"props":7801,"children":7802},{"style":221},[7803],{"type":51,"value":7804}," preview ",{"type":45,"tag":73,"props":7806,"children":7807},{"style":215},[7808],{"type":51,"value":420},{"type":45,"tag":73,"props":7810,"children":7811},{"style":221},[7812],{"type":51,"value":7292},{"type":45,"tag":73,"props":7814,"children":7815},{"style":215},[7816],{"type":51,"value":699},{"type":45,"tag":73,"props":7818,"children":7819},{"style":428},[7820],{"type":51,"value":7821},"getFilePreview",{"type":45,"tag":73,"props":7823,"children":7824},{"style":221},[7825],{"type":51,"value":453},{"type":45,"tag":73,"props":7827,"children":7828},{"style":215},[7829],{"type":51,"value":848},{"type":45,"tag":73,"props":7831,"children":7832},{"class":75,"line":1323},[7833,7837,7841,7845,7849,7853],{"type":45,"tag":73,"props":7834,"children":7835},{"style":854},[7836],{"type":51,"value":7317},{"type":45,"tag":73,"props":7838,"children":7839},{"style":215},[7840],{"type":51,"value":862},{"type":45,"tag":73,"props":7842,"children":7843},{"style":215},[7844],{"type":51,"value":285},{"type":45,"tag":73,"props":7846,"children":7847},{"style":96},[7848],{"type":51,"value":7330},{"type":45,"tag":73,"props":7850,"children":7851},{"style":215},[7852],{"type":51,"value":294},{"type":45,"tag":73,"props":7854,"children":7855},{"style":215},[7856],{"type":51,"value":885},{"type":45,"tag":73,"props":7858,"children":7859},{"class":75,"line":1331},[7860,7864,7868,7872,7877,7881],{"type":45,"tag":73,"props":7861,"children":7862},{"style":854},[7863],{"type":51,"value":7346},{"type":45,"tag":73,"props":7865,"children":7866},{"style":215},[7867],{"type":51,"value":862},{"type":45,"tag":73,"props":7869,"children":7870},{"style":215},[7871],{"type":51,"value":285},{"type":45,"tag":73,"props":7873,"children":7874},{"style":96},[7875],{"type":51,"value":7876},"[FILE_ID]",{"type":45,"tag":73,"props":7878,"children":7879},{"style":215},[7880],{"type":51,"value":294},{"type":45,"tag":73,"props":7882,"children":7883},{"style":215},[7884],{"type":51,"value":885},{"type":45,"tag":73,"props":7886,"children":7887},{"class":75,"line":1340},[7888,7893,7897,7902],{"type":45,"tag":73,"props":7889,"children":7890},{"style":854},[7891],{"type":51,"value":7892},"    width",{"type":45,"tag":73,"props":7894,"children":7895},{"style":215},[7896],{"type":51,"value":862},{"type":45,"tag":73,"props":7898,"children":7899},{"style":3108},[7900],{"type":51,"value":7901}," 300",{"type":45,"tag":73,"props":7903,"children":7904},{"style":215},[7905],{"type":51,"value":885},{"type":45,"tag":73,"props":7907,"children":7908},{"class":75,"line":1382},[7909,7914,7918],{"type":45,"tag":73,"props":7910,"children":7911},{"style":854},[7912],{"type":51,"value":7913},"    height",{"type":45,"tag":73,"props":7915,"children":7916},{"style":215},[7917],{"type":51,"value":862},{"type":45,"tag":73,"props":7919,"children":7920},{"style":3108},[7921],{"type":51,"value":7922}," 300\n",{"type":45,"tag":73,"props":7924,"children":7925},{"class":75,"line":1390},[7926,7930,7934],{"type":45,"tag":73,"props":7927,"children":7928},{"style":215},[7929],{"type":51,"value":977},{"type":45,"tag":73,"props":7931,"children":7932},{"style":221},[7933],{"type":51,"value":506},{"type":45,"tag":73,"props":7935,"children":7936},{"style":215},[7937],{"type":51,"value":299},{"type":45,"tag":73,"props":7939,"children":7940},{"class":75,"line":1399},[7941],{"type":45,"tag":73,"props":7942,"children":7943},{"emptyLinePlaceholder":111},[7944],{"type":51,"value":114},{"type":45,"tag":73,"props":7946,"children":7947},{"class":75,"line":2522},[7948],{"type":45,"tag":73,"props":7949,"children":7950},{"style":80},[7951],{"type":51,"value":7952},"\u002F\u002F Download file\n",{"type":45,"tag":73,"props":7954,"children":7955},{"class":75,"line":2585},[7956,7960,7965,7969,7973,7977,7981,7986,7990],{"type":45,"tag":73,"props":7957,"children":7958},{"style":407},[7959],{"type":51,"value":410},{"type":45,"tag":73,"props":7961,"children":7962},{"style":221},[7963],{"type":51,"value":7964}," download ",{"type":45,"tag":73,"props":7966,"children":7967},{"style":215},[7968],{"type":51,"value":420},{"type":45,"tag":73,"props":7970,"children":7971},{"style":209},[7972],{"type":51,"value":1024},{"type":45,"tag":73,"props":7974,"children":7975},{"style":221},[7976],{"type":51,"value":7292},{"type":45,"tag":73,"props":7978,"children":7979},{"style":215},[7980],{"type":51,"value":699},{"type":45,"tag":73,"props":7982,"children":7983},{"style":428},[7984],{"type":51,"value":7985},"getFileDownload",{"type":45,"tag":73,"props":7987,"children":7988},{"style":221},[7989],{"type":51,"value":453},{"type":45,"tag":73,"props":7991,"children":7992},{"style":215},[7993],{"type":51,"value":848},{"type":45,"tag":73,"props":7995,"children":7996},{"class":75,"line":2647},[7997,8001,8005,8009,8013,8017],{"type":45,"tag":73,"props":7998,"children":7999},{"style":854},[8000],{"type":51,"value":7317},{"type":45,"tag":73,"props":8002,"children":8003},{"style":215},[8004],{"type":51,"value":862},{"type":45,"tag":73,"props":8006,"children":8007},{"style":215},[8008],{"type":51,"value":285},{"type":45,"tag":73,"props":8010,"children":8011},{"style":96},[8012],{"type":51,"value":7330},{"type":45,"tag":73,"props":8014,"children":8015},{"style":215},[8016],{"type":51,"value":294},{"type":45,"tag":73,"props":8018,"children":8019},{"style":215},[8020],{"type":51,"value":885},{"type":45,"tag":73,"props":8022,"children":8023},{"class":75,"line":2655},[8024,8028,8032,8036,8040],{"type":45,"tag":73,"props":8025,"children":8026},{"style":854},[8027],{"type":51,"value":7346},{"type":45,"tag":73,"props":8029,"children":8030},{"style":215},[8031],{"type":51,"value":862},{"type":45,"tag":73,"props":8033,"children":8034},{"style":215},[8035],{"type":51,"value":285},{"type":45,"tag":73,"props":8037,"children":8038},{"style":96},[8039],{"type":51,"value":7876},{"type":45,"tag":73,"props":8041,"children":8042},{"style":215},[8043],{"type":51,"value":969},{"type":45,"tag":73,"props":8045,"children":8046},{"class":75,"line":2664},[8047,8051,8055],{"type":45,"tag":73,"props":8048,"children":8049},{"style":215},[8050],{"type":51,"value":977},{"type":45,"tag":73,"props":8052,"children":8053},{"style":221},[8054],{"type":51,"value":506},{"type":45,"tag":73,"props":8056,"children":8057},{"style":215},[8058],{"type":51,"value":299},{"type":45,"tag":73,"props":8060,"children":8061},{"class":75,"line":2718},[8062],{"type":45,"tag":73,"props":8063,"children":8064},{"emptyLinePlaceholder":111},[8065],{"type":51,"value":114},{"type":45,"tag":73,"props":8067,"children":8068},{"class":75,"line":2726},[8069],{"type":45,"tag":73,"props":8070,"children":8071},{"style":80},[8072],{"type":51,"value":8073},"\u002F\u002F Delete file\n",{"type":45,"tag":73,"props":8075,"children":8076},{"class":75,"line":2734},[8077,8081,8085,8089,8094,8098,8102,8106,8110,8114,8118,8122,8126,8131,8135,8139,8143,8147,8151,8155],{"type":45,"tag":73,"props":8078,"children":8079},{"style":209},[8080],{"type":51,"value":825},{"type":45,"tag":73,"props":8082,"children":8083},{"style":221},[8084],{"type":51,"value":7292},{"type":45,"tag":73,"props":8086,"children":8087},{"style":215},[8088],{"type":51,"value":699},{"type":45,"tag":73,"props":8090,"children":8091},{"style":428},[8092],{"type":51,"value":8093},"deleteFile",{"type":45,"tag":73,"props":8095,"children":8096},{"style":221},[8097],{"type":51,"value":453},{"type":45,"tag":73,"props":8099,"children":8100},{"style":215},[8101],{"type":51,"value":1426},{"type":45,"tag":73,"props":8103,"children":8104},{"style":854},[8105],{"type":51,"value":7749},{"type":45,"tag":73,"props":8107,"children":8108},{"style":215},[8109],{"type":51,"value":862},{"type":45,"tag":73,"props":8111,"children":8112},{"style":215},[8113],{"type":51,"value":285},{"type":45,"tag":73,"props":8115,"children":8116},{"style":96},[8117],{"type":51,"value":7330},{"type":45,"tag":73,"props":8119,"children":8120},{"style":215},[8121],{"type":51,"value":294},{"type":45,"tag":73,"props":8123,"children":8124},{"style":215},[8125],{"type":51,"value":229},{"type":45,"tag":73,"props":8127,"children":8128},{"style":854},[8129],{"type":51,"value":8130}," fileId",{"type":45,"tag":73,"props":8132,"children":8133},{"style":215},[8134],{"type":51,"value":862},{"type":45,"tag":73,"props":8136,"children":8137},{"style":215},[8138],{"type":51,"value":285},{"type":45,"tag":73,"props":8140,"children":8141},{"style":96},[8142],{"type":51,"value":7876},{"type":45,"tag":73,"props":8144,"children":8145},{"style":215},[8146],{"type":51,"value":294},{"type":45,"tag":73,"props":8148,"children":8149},{"style":215},[8150],{"type":51,"value":275},{"type":45,"tag":73,"props":8152,"children":8153},{"style":221},[8154],{"type":51,"value":506},{"type":45,"tag":73,"props":8156,"children":8157},{"style":215},[8158],{"type":51,"value":299},{"type":45,"tag":1507,"props":8160,"children":8162},{"id":8161},"inputfile-factory-methods-server-side",[8163],{"type":51,"value":8164},"InputFile Factory Methods (server-side)",{"type":45,"tag":61,"props":8166,"children":8168},{"className":190,"code":8167,"language":21,"meta":66,"style":66},"import { InputFile } from 'node-appwrite\u002Ffile';\n\nInputFile.fromPath('\u002Fpath\u002Fto\u002Ffile.png', 'file.png')          \u002F\u002F from filesystem path\nInputFile.fromBuffer(buffer, 'file.png')                       \u002F\u002F from Buffer\nInputFile.fromStream(readableStream, 'file.png', size)         \u002F\u002F from ReadableStream (size in bytes required)\nInputFile.fromPlainText('Hello world', 'hello.txt')            \u002F\u002F from string content\n",[8169],{"type":45,"tag":69,"props":8170,"children":8171},{"__ignoreMap":66},[8172,8211,8218,8275,8322,8373],{"type":45,"tag":73,"props":8173,"children":8174},{"class":75,"line":76},[8175,8179,8183,8187,8191,8195,8199,8203,8207],{"type":45,"tag":73,"props":8176,"children":8177},{"style":209},[8178],{"type":51,"value":212},{"type":45,"tag":73,"props":8180,"children":8181},{"style":215},[8182],{"type":51,"value":218},{"type":45,"tag":73,"props":8184,"children":8185},{"style":221},[8186],{"type":51,"value":7481},{"type":45,"tag":73,"props":8188,"children":8189},{"style":215},[8190],{"type":51,"value":275},{"type":45,"tag":73,"props":8192,"children":8193},{"style":209},[8194],{"type":51,"value":280},{"type":45,"tag":73,"props":8196,"children":8197},{"style":215},[8198],{"type":51,"value":285},{"type":45,"tag":73,"props":8200,"children":8201},{"style":96},[8202],{"type":51,"value":7498},{"type":45,"tag":73,"props":8204,"children":8205},{"style":215},[8206],{"type":51,"value":294},{"type":45,"tag":73,"props":8208,"children":8209},{"style":215},[8210],{"type":51,"value":299},{"type":45,"tag":73,"props":8212,"children":8213},{"class":75,"line":86},[8214],{"type":45,"tag":73,"props":8215,"children":8216},{"emptyLinePlaceholder":111},[8217],{"type":51,"value":114},{"type":45,"tag":73,"props":8219,"children":8220},{"class":75,"line":107},[8221,8226,8230,8234,8238,8242,8246,8250,8254,8258,8262,8266,8270],{"type":45,"tag":73,"props":8222,"children":8223},{"style":221},[8224],{"type":51,"value":8225},"InputFile",{"type":45,"tag":73,"props":8227,"children":8228},{"style":215},[8229],{"type":51,"value":699},{"type":45,"tag":73,"props":8231,"children":8232},{"style":428},[8233],{"type":51,"value":7635},{"type":45,"tag":73,"props":8235,"children":8236},{"style":221},[8237],{"type":51,"value":453},{"type":45,"tag":73,"props":8239,"children":8240},{"style":215},[8241],{"type":51,"value":294},{"type":45,"tag":73,"props":8243,"children":8244},{"style":96},[8245],{"type":51,"value":7648},{"type":45,"tag":73,"props":8247,"children":8248},{"style":215},[8249],{"type":51,"value":294},{"type":45,"tag":73,"props":8251,"children":8252},{"style":215},[8253],{"type":51,"value":229},{"type":45,"tag":73,"props":8255,"children":8256},{"style":215},[8257],{"type":51,"value":285},{"type":45,"tag":73,"props":8259,"children":8260},{"style":96},[8261],{"type":51,"value":7665},{"type":45,"tag":73,"props":8263,"children":8264},{"style":215},[8265],{"type":51,"value":294},{"type":45,"tag":73,"props":8267,"children":8268},{"style":221},[8269],{"type":51,"value":6314},{"type":45,"tag":73,"props":8271,"children":8272},{"style":80},[8273],{"type":51,"value":8274},"\u002F\u002F from filesystem path\n",{"type":45,"tag":73,"props":8276,"children":8277},{"class":75,"line":117},[8278,8282,8286,8291,8296,8300,8304,8308,8312,8317],{"type":45,"tag":73,"props":8279,"children":8280},{"style":221},[8281],{"type":51,"value":8225},{"type":45,"tag":73,"props":8283,"children":8284},{"style":215},[8285],{"type":51,"value":699},{"type":45,"tag":73,"props":8287,"children":8288},{"style":428},[8289],{"type":51,"value":8290},"fromBuffer",{"type":45,"tag":73,"props":8292,"children":8293},{"style":221},[8294],{"type":51,"value":8295},"(buffer",{"type":45,"tag":73,"props":8297,"children":8298},{"style":215},[8299],{"type":51,"value":229},{"type":45,"tag":73,"props":8301,"children":8302},{"style":215},[8303],{"type":51,"value":285},{"type":45,"tag":73,"props":8305,"children":8306},{"style":96},[8307],{"type":51,"value":7665},{"type":45,"tag":73,"props":8309,"children":8310},{"style":215},[8311],{"type":51,"value":294},{"type":45,"tag":73,"props":8313,"children":8314},{"style":221},[8315],{"type":51,"value":8316},")                       ",{"type":45,"tag":73,"props":8318,"children":8319},{"style":80},[8320],{"type":51,"value":8321},"\u002F\u002F from Buffer\n",{"type":45,"tag":73,"props":8323,"children":8324},{"class":75,"line":126},[8325,8329,8333,8338,8343,8347,8351,8355,8359,8363,8368],{"type":45,"tag":73,"props":8326,"children":8327},{"style":221},[8328],{"type":51,"value":8225},{"type":45,"tag":73,"props":8330,"children":8331},{"style":215},[8332],{"type":51,"value":699},{"type":45,"tag":73,"props":8334,"children":8335},{"style":428},[8336],{"type":51,"value":8337},"fromStream",{"type":45,"tag":73,"props":8339,"children":8340},{"style":221},[8341],{"type":51,"value":8342},"(readableStream",{"type":45,"tag":73,"props":8344,"children":8345},{"style":215},[8346],{"type":51,"value":229},{"type":45,"tag":73,"props":8348,"children":8349},{"style":215},[8350],{"type":51,"value":285},{"type":45,"tag":73,"props":8352,"children":8353},{"style":96},[8354],{"type":51,"value":7665},{"type":45,"tag":73,"props":8356,"children":8357},{"style":215},[8358],{"type":51,"value":294},{"type":45,"tag":73,"props":8360,"children":8361},{"style":215},[8362],{"type":51,"value":229},{"type":45,"tag":73,"props":8364,"children":8365},{"style":221},[8366],{"type":51,"value":8367}," size)         ",{"type":45,"tag":73,"props":8369,"children":8370},{"style":80},[8371],{"type":51,"value":8372},"\u002F\u002F from ReadableStream (size in bytes required)\n",{"type":45,"tag":73,"props":8374,"children":8375},{"class":75,"line":143},[8376,8380,8384,8389,8393,8397,8402,8406,8410,8414,8419,8423,8427],{"type":45,"tag":73,"props":8377,"children":8378},{"style":221},[8379],{"type":51,"value":8225},{"type":45,"tag":73,"props":8381,"children":8382},{"style":215},[8383],{"type":51,"value":699},{"type":45,"tag":73,"props":8385,"children":8386},{"style":428},[8387],{"type":51,"value":8388},"fromPlainText",{"type":45,"tag":73,"props":8390,"children":8391},{"style":221},[8392],{"type":51,"value":453},{"type":45,"tag":73,"props":8394,"children":8395},{"style":215},[8396],{"type":51,"value":294},{"type":45,"tag":73,"props":8398,"children":8399},{"style":96},[8400],{"type":51,"value":8401},"Hello world",{"type":45,"tag":73,"props":8403,"children":8404},{"style":215},[8405],{"type":51,"value":294},{"type":45,"tag":73,"props":8407,"children":8408},{"style":215},[8409],{"type":51,"value":229},{"type":45,"tag":73,"props":8411,"children":8412},{"style":215},[8413],{"type":51,"value":285},{"type":45,"tag":73,"props":8415,"children":8416},{"style":96},[8417],{"type":51,"value":8418},"hello.txt",{"type":45,"tag":73,"props":8420,"children":8421},{"style":215},[8422],{"type":51,"value":294},{"type":45,"tag":73,"props":8424,"children":8425},{"style":221},[8426],{"type":51,"value":6105},{"type":45,"tag":73,"props":8428,"children":8429},{"style":80},[8430],{"type":51,"value":8431},"\u002F\u002F from string content\n",{"type":45,"tag":182,"props":8433,"children":8435},{"id":8434},"teams",[8436],{"type":51,"value":8437},"Teams",{"type":45,"tag":61,"props":8439,"children":8441},{"className":190,"code":8440,"language":21,"meta":66,"style":66},"const teams = new Teams(client);\n\n\u002F\u002F Create team\nconst team = await teams.create({ teamId: ID.unique(), name: 'Engineering' });\n\n\u002F\u002F List teams\nconst list = await teams.list();\n\n\u002F\u002F Create membership (invite a user by email)\nconst membership = await teams.createMembership({\n    teamId: '[TEAM_ID]',\n    roles: ['editor'],\n    email: 'user@example.com',\n});\n\n\u002F\u002F List memberships\nconst members = await teams.listMemberships({ teamId: '[TEAM_ID]' });\n\n\u002F\u002F Update membership roles\nawait teams.updateMembership({\n    teamId: '[TEAM_ID]',\n    membershipId: '[MEMBERSHIP_ID]',\n    roles: ['admin'],\n});\n\n\u002F\u002F Delete team\nawait teams.delete({ teamId: '[TEAM_ID]' });\n",[8442],{"type":45,"tag":69,"props":8443,"children":8444},{"__ignoreMap":66},[8445,8478,8485,8493,8596,8603,8611,8650,8657,8665,8706,8735,8772,8799,8814,8821,8829,8902,8909,8917,8945,8972,9001,9037,9052,9059,9067],{"type":45,"tag":73,"props":8446,"children":8447},{"class":75,"line":76},[8448,8452,8457,8461,8465,8470,8474],{"type":45,"tag":73,"props":8449,"children":8450},{"style":407},[8451],{"type":51,"value":410},{"type":45,"tag":73,"props":8453,"children":8454},{"style":221},[8455],{"type":51,"value":8456}," teams ",{"type":45,"tag":73,"props":8458,"children":8459},{"style":215},[8460],{"type":51,"value":420},{"type":45,"tag":73,"props":8462,"children":8463},{"style":215},[8464],{"type":51,"value":425},{"type":45,"tag":73,"props":8466,"children":8467},{"style":428},[8468],{"type":51,"value":8469}," Teams",{"type":45,"tag":73,"props":8471,"children":8472},{"style":221},[8473],{"type":51,"value":798},{"type":45,"tag":73,"props":8475,"children":8476},{"style":215},[8477],{"type":51,"value":299},{"type":45,"tag":73,"props":8479,"children":8480},{"class":75,"line":86},[8481],{"type":45,"tag":73,"props":8482,"children":8483},{"emptyLinePlaceholder":111},[8484],{"type":51,"value":114},{"type":45,"tag":73,"props":8486,"children":8487},{"class":75,"line":107},[8488],{"type":45,"tag":73,"props":8489,"children":8490},{"style":80},[8491],{"type":51,"value":8492},"\u002F\u002F Create team\n",{"type":45,"tag":73,"props":8494,"children":8495},{"class":75,"line":117},[8496,8500,8505,8509,8513,8518,8522,8526,8530,8534,8539,8543,8547,8551,8555,8559,8563,8567,8571,8575,8580,8584,8588,8592],{"type":45,"tag":73,"props":8497,"children":8498},{"style":407},[8499],{"type":51,"value":410},{"type":45,"tag":73,"props":8501,"children":8502},{"style":221},[8503],{"type":51,"value":8504}," team ",{"type":45,"tag":73,"props":8506,"children":8507},{"style":215},[8508],{"type":51,"value":420},{"type":45,"tag":73,"props":8510,"children":8511},{"style":209},[8512],{"type":51,"value":1024},{"type":45,"tag":73,"props":8514,"children":8515},{"style":221},[8516],{"type":51,"value":8517}," teams",{"type":45,"tag":73,"props":8519,"children":8520},{"style":215},[8521],{"type":51,"value":699},{"type":45,"tag":73,"props":8523,"children":8524},{"style":428},[8525],{"type":51,"value":839},{"type":45,"tag":73,"props":8527,"children":8528},{"style":221},[8529],{"type":51,"value":453},{"type":45,"tag":73,"props":8531,"children":8532},{"style":215},[8533],{"type":51,"value":1426},{"type":45,"tag":73,"props":8535,"children":8536},{"style":854},[8537],{"type":51,"value":8538}," teamId",{"type":45,"tag":73,"props":8540,"children":8541},{"style":215},[8542],{"type":51,"value":862},{"type":45,"tag":73,"props":8544,"children":8545},{"style":221},[8546],{"type":51,"value":261},{"type":45,"tag":73,"props":8548,"children":8549},{"style":215},[8550],{"type":51,"value":699},{"type":45,"tag":73,"props":8552,"children":8553},{"style":428},[8554],{"type":51,"value":875},{"type":45,"tag":73,"props":8556,"children":8557},{"style":221},[8558],{"type":51,"value":880},{"type":45,"tag":73,"props":8560,"children":8561},{"style":215},[8562],{"type":51,"value":229},{"type":45,"tag":73,"props":8564,"children":8565},{"style":854},[8566],{"type":51,"value":3480},{"type":45,"tag":73,"props":8568,"children":8569},{"style":215},[8570],{"type":51,"value":862},{"type":45,"tag":73,"props":8572,"children":8573},{"style":215},[8574],{"type":51,"value":285},{"type":45,"tag":73,"props":8576,"children":8577},{"style":96},[8578],{"type":51,"value":8579},"Engineering",{"type":45,"tag":73,"props":8581,"children":8582},{"style":215},[8583],{"type":51,"value":294},{"type":45,"tag":73,"props":8585,"children":8586},{"style":215},[8587],{"type":51,"value":275},{"type":45,"tag":73,"props":8589,"children":8590},{"style":221},[8591],{"type":51,"value":506},{"type":45,"tag":73,"props":8593,"children":8594},{"style":215},[8595],{"type":51,"value":299},{"type":45,"tag":73,"props":8597,"children":8598},{"class":75,"line":126},[8599],{"type":45,"tag":73,"props":8600,"children":8601},{"emptyLinePlaceholder":111},[8602],{"type":51,"value":114},{"type":45,"tag":73,"props":8604,"children":8605},{"class":75,"line":143},[8606],{"type":45,"tag":73,"props":8607,"children":8608},{"style":80},[8609],{"type":51,"value":8610},"\u002F\u002F List teams\n",{"type":45,"tag":73,"props":8612,"children":8613},{"class":75,"line":151},[8614,8618,8622,8626,8630,8634,8638,8642,8646],{"type":45,"tag":73,"props":8615,"children":8616},{"style":407},[8617],{"type":51,"value":410},{"type":45,"tag":73,"props":8619,"children":8620},{"style":221},[8621],{"type":51,"value":3049},{"type":45,"tag":73,"props":8623,"children":8624},{"style":215},[8625],{"type":51,"value":420},{"type":45,"tag":73,"props":8627,"children":8628},{"style":209},[8629],{"type":51,"value":1024},{"type":45,"tag":73,"props":8631,"children":8632},{"style":221},[8633],{"type":51,"value":8517},{"type":45,"tag":73,"props":8635,"children":8636},{"style":215},[8637],{"type":51,"value":699},{"type":45,"tag":73,"props":8639,"children":8640},{"style":428},[8641],{"type":51,"value":3070},{"type":45,"tag":73,"props":8643,"children":8644},{"style":221},[8645],{"type":51,"value":880},{"type":45,"tag":73,"props":8647,"children":8648},{"style":215},[8649],{"type":51,"value":299},{"type":45,"tag":73,"props":8651,"children":8652},{"class":75,"line":160},[8653],{"type":45,"tag":73,"props":8654,"children":8655},{"emptyLinePlaceholder":111},[8656],{"type":51,"value":114},{"type":45,"tag":73,"props":8658,"children":8659},{"class":75,"line":474},[8660],{"type":45,"tag":73,"props":8661,"children":8662},{"style":80},[8663],{"type":51,"value":8664},"\u002F\u002F Create membership (invite a user by email)\n",{"type":45,"tag":73,"props":8666,"children":8667},{"class":75,"line":988},[8668,8672,8677,8681,8685,8689,8693,8698,8702],{"type":45,"tag":73,"props":8669,"children":8670},{"style":407},[8671],{"type":51,"value":410},{"type":45,"tag":73,"props":8673,"children":8674},{"style":221},[8675],{"type":51,"value":8676}," membership ",{"type":45,"tag":73,"props":8678,"children":8679},{"style":215},[8680],{"type":51,"value":420},{"type":45,"tag":73,"props":8682,"children":8683},{"style":209},[8684],{"type":51,"value":1024},{"type":45,"tag":73,"props":8686,"children":8687},{"style":221},[8688],{"type":51,"value":8517},{"type":45,"tag":73,"props":8690,"children":8691},{"style":215},[8692],{"type":51,"value":699},{"type":45,"tag":73,"props":8694,"children":8695},{"style":428},[8696],{"type":51,"value":8697},"createMembership",{"type":45,"tag":73,"props":8699,"children":8700},{"style":221},[8701],{"type":51,"value":453},{"type":45,"tag":73,"props":8703,"children":8704},{"style":215},[8705],{"type":51,"value":848},{"type":45,"tag":73,"props":8707,"children":8708},{"class":75,"line":996},[8709,8714,8718,8722,8727,8731],{"type":45,"tag":73,"props":8710,"children":8711},{"style":854},[8712],{"type":51,"value":8713},"    teamId",{"type":45,"tag":73,"props":8715,"children":8716},{"style":215},[8717],{"type":51,"value":862},{"type":45,"tag":73,"props":8719,"children":8720},{"style":215},[8721],{"type":51,"value":285},{"type":45,"tag":73,"props":8723,"children":8724},{"style":96},[8725],{"type":51,"value":8726},"[TEAM_ID]",{"type":45,"tag":73,"props":8728,"children":8729},{"style":215},[8730],{"type":51,"value":294},{"type":45,"tag":73,"props":8732,"children":8733},{"style":215},[8734],{"type":51,"value":885},{"type":45,"tag":73,"props":8736,"children":8737},{"class":75,"line":1005},[8738,8743,8747,8751,8755,8760,8764,8768],{"type":45,"tag":73,"props":8739,"children":8740},{"style":854},[8741],{"type":51,"value":8742},"    roles",{"type":45,"tag":73,"props":8744,"children":8745},{"style":215},[8746],{"type":51,"value":862},{"type":45,"tag":73,"props":8748,"children":8749},{"style":221},[8750],{"type":51,"value":1265},{"type":45,"tag":73,"props":8752,"children":8753},{"style":215},[8754],{"type":51,"value":294},{"type":45,"tag":73,"props":8756,"children":8757},{"style":96},[8758],{"type":51,"value":8759},"editor",{"type":45,"tag":73,"props":8761,"children":8762},{"style":215},[8763],{"type":51,"value":294},{"type":45,"tag":73,"props":8765,"children":8766},{"style":221},[8767],{"type":51,"value":5702},{"type":45,"tag":73,"props":8769,"children":8770},{"style":215},[8771],{"type":51,"value":885},{"type":45,"tag":73,"props":8773,"children":8774},{"class":75,"line":1048},[8775,8779,8783,8787,8791,8795],{"type":45,"tag":73,"props":8776,"children":8777},{"style":854},[8778],{"type":51,"value":893},{"type":45,"tag":73,"props":8780,"children":8781},{"style":215},[8782],{"type":51,"value":862},{"type":45,"tag":73,"props":8784,"children":8785},{"style":215},[8786],{"type":51,"value":285},{"type":45,"tag":73,"props":8788,"children":8789},{"style":96},[8790],{"type":51,"value":906},{"type":45,"tag":73,"props":8792,"children":8793},{"style":215},[8794],{"type":51,"value":294},{"type":45,"tag":73,"props":8796,"children":8797},{"style":215},[8798],{"type":51,"value":885},{"type":45,"tag":73,"props":8800,"children":8801},{"class":75,"line":1076},[8802,8806,8810],{"type":45,"tag":73,"props":8803,"children":8804},{"style":215},[8805],{"type":51,"value":977},{"type":45,"tag":73,"props":8807,"children":8808},{"style":221},[8809],{"type":51,"value":506},{"type":45,"tag":73,"props":8811,"children":8812},{"style":215},[8813],{"type":51,"value":299},{"type":45,"tag":73,"props":8815,"children":8816},{"class":75,"line":1100},[8817],{"type":45,"tag":73,"props":8818,"children":8819},{"emptyLinePlaceholder":111},[8820],{"type":51,"value":114},{"type":45,"tag":73,"props":8822,"children":8823},{"class":75,"line":1116},[8824],{"type":45,"tag":73,"props":8825,"children":8826},{"style":80},[8827],{"type":51,"value":8828},"\u002F\u002F List memberships\n",{"type":45,"tag":73,"props":8830,"children":8831},{"class":75,"line":1124},[8832,8836,8841,8845,8849,8853,8857,8862,8866,8870,8874,8878,8882,8886,8890,8894,8898],{"type":45,"tag":73,"props":8833,"children":8834},{"style":407},[8835],{"type":51,"value":410},{"type":45,"tag":73,"props":8837,"children":8838},{"style":221},[8839],{"type":51,"value":8840}," members ",{"type":45,"tag":73,"props":8842,"children":8843},{"style":215},[8844],{"type":51,"value":420},{"type":45,"tag":73,"props":8846,"children":8847},{"style":209},[8848],{"type":51,"value":1024},{"type":45,"tag":73,"props":8850,"children":8851},{"style":221},[8852],{"type":51,"value":8517},{"type":45,"tag":73,"props":8854,"children":8855},{"style":215},[8856],{"type":51,"value":699},{"type":45,"tag":73,"props":8858,"children":8859},{"style":428},[8860],{"type":51,"value":8861},"listMemberships",{"type":45,"tag":73,"props":8863,"children":8864},{"style":221},[8865],{"type":51,"value":453},{"type":45,"tag":73,"props":8867,"children":8868},{"style":215},[8869],{"type":51,"value":1426},{"type":45,"tag":73,"props":8871,"children":8872},{"style":854},[8873],{"type":51,"value":8538},{"type":45,"tag":73,"props":8875,"children":8876},{"style":215},[8877],{"type":51,"value":862},{"type":45,"tag":73,"props":8879,"children":8880},{"style":215},[8881],{"type":51,"value":285},{"type":45,"tag":73,"props":8883,"children":8884},{"style":96},[8885],{"type":51,"value":8726},{"type":45,"tag":73,"props":8887,"children":8888},{"style":215},[8889],{"type":51,"value":294},{"type":45,"tag":73,"props":8891,"children":8892},{"style":215},[8893],{"type":51,"value":275},{"type":45,"tag":73,"props":8895,"children":8896},{"style":221},[8897],{"type":51,"value":506},{"type":45,"tag":73,"props":8899,"children":8900},{"style":215},[8901],{"type":51,"value":299},{"type":45,"tag":73,"props":8903,"children":8904},{"class":75,"line":1133},[8905],{"type":45,"tag":73,"props":8906,"children":8907},{"emptyLinePlaceholder":111},[8908],{"type":51,"value":114},{"type":45,"tag":73,"props":8910,"children":8911},{"class":75,"line":1159},[8912],{"type":45,"tag":73,"props":8913,"children":8914},{"style":80},[8915],{"type":51,"value":8916},"\u002F\u002F Update membership roles\n",{"type":45,"tag":73,"props":8918,"children":8919},{"class":75,"line":1190},[8920,8924,8928,8932,8937,8941],{"type":45,"tag":73,"props":8921,"children":8922},{"style":209},[8923],{"type":51,"value":825},{"type":45,"tag":73,"props":8925,"children":8926},{"style":221},[8927],{"type":51,"value":8517},{"type":45,"tag":73,"props":8929,"children":8930},{"style":215},[8931],{"type":51,"value":699},{"type":45,"tag":73,"props":8933,"children":8934},{"style":428},[8935],{"type":51,"value":8936},"updateMembership",{"type":45,"tag":73,"props":8938,"children":8939},{"style":221},[8940],{"type":51,"value":453},{"type":45,"tag":73,"props":8942,"children":8943},{"style":215},[8944],{"type":51,"value":848},{"type":45,"tag":73,"props":8946,"children":8947},{"class":75,"line":1220},[8948,8952,8956,8960,8964,8968],{"type":45,"tag":73,"props":8949,"children":8950},{"style":854},[8951],{"type":51,"value":8713},{"type":45,"tag":73,"props":8953,"children":8954},{"style":215},[8955],{"type":51,"value":862},{"type":45,"tag":73,"props":8957,"children":8958},{"style":215},[8959],{"type":51,"value":285},{"type":45,"tag":73,"props":8961,"children":8962},{"style":96},[8963],{"type":51,"value":8726},{"type":45,"tag":73,"props":8965,"children":8966},{"style":215},[8967],{"type":51,"value":294},{"type":45,"tag":73,"props":8969,"children":8970},{"style":215},[8971],{"type":51,"value":885},{"type":45,"tag":73,"props":8973,"children":8974},{"class":75,"line":1250},[8975,8980,8984,8988,8993,8997],{"type":45,"tag":73,"props":8976,"children":8977},{"style":854},[8978],{"type":51,"value":8979},"    membershipId",{"type":45,"tag":73,"props":8981,"children":8982},{"style":215},[8983],{"type":51,"value":862},{"type":45,"tag":73,"props":8985,"children":8986},{"style":215},[8987],{"type":51,"value":285},{"type":45,"tag":73,"props":8989,"children":8990},{"style":96},[8991],{"type":51,"value":8992},"[MEMBERSHIP_ID]",{"type":45,"tag":73,"props":8994,"children":8995},{"style":215},[8996],{"type":51,"value":294},{"type":45,"tag":73,"props":8998,"children":8999},{"style":215},[9000],{"type":51,"value":885},{"type":45,"tag":73,"props":9002,"children":9003},{"class":75,"line":29},[9004,9008,9012,9016,9020,9025,9029,9033],{"type":45,"tag":73,"props":9005,"children":9006},{"style":854},[9007],{"type":51,"value":8742},{"type":45,"tag":73,"props":9009,"children":9010},{"style":215},[9011],{"type":51,"value":862},{"type":45,"tag":73,"props":9013,"children":9014},{"style":221},[9015],{"type":51,"value":1265},{"type":45,"tag":73,"props":9017,"children":9018},{"style":215},[9019],{"type":51,"value":294},{"type":45,"tag":73,"props":9021,"children":9022},{"style":96},[9023],{"type":51,"value":9024},"admin",{"type":45,"tag":73,"props":9026,"children":9027},{"style":215},[9028],{"type":51,"value":294},{"type":45,"tag":73,"props":9030,"children":9031},{"style":221},[9032],{"type":51,"value":5702},{"type":45,"tag":73,"props":9034,"children":9035},{"style":215},[9036],{"type":51,"value":885},{"type":45,"tag":73,"props":9038,"children":9039},{"class":75,"line":1323},[9040,9044,9048],{"type":45,"tag":73,"props":9041,"children":9042},{"style":215},[9043],{"type":51,"value":977},{"type":45,"tag":73,"props":9045,"children":9046},{"style":221},[9047],{"type":51,"value":506},{"type":45,"tag":73,"props":9049,"children":9050},{"style":215},[9051],{"type":51,"value":299},{"type":45,"tag":73,"props":9053,"children":9054},{"class":75,"line":1331},[9055],{"type":45,"tag":73,"props":9056,"children":9057},{"emptyLinePlaceholder":111},[9058],{"type":51,"value":114},{"type":45,"tag":73,"props":9060,"children":9061},{"class":75,"line":1340},[9062],{"type":45,"tag":73,"props":9063,"children":9064},{"style":80},[9065],{"type":51,"value":9066},"\u002F\u002F Delete team\n",{"type":45,"tag":73,"props":9068,"children":9069},{"class":75,"line":1382},[9070,9074,9078,9082,9086,9090,9094,9098,9102,9106,9110,9114,9118,9122],{"type":45,"tag":73,"props":9071,"children":9072},{"style":209},[9073],{"type":51,"value":825},{"type":45,"tag":73,"props":9075,"children":9076},{"style":221},[9077],{"type":51,"value":8517},{"type":45,"tag":73,"props":9079,"children":9080},{"style":215},[9081],{"type":51,"value":699},{"type":45,"tag":73,"props":9083,"children":9084},{"style":428},[9085],{"type":51,"value":3251},{"type":45,"tag":73,"props":9087,"children":9088},{"style":221},[9089],{"type":51,"value":453},{"type":45,"tag":73,"props":9091,"children":9092},{"style":215},[9093],{"type":51,"value":1426},{"type":45,"tag":73,"props":9095,"children":9096},{"style":854},[9097],{"type":51,"value":8538},{"type":45,"tag":73,"props":9099,"children":9100},{"style":215},[9101],{"type":51,"value":862},{"type":45,"tag":73,"props":9103,"children":9104},{"style":215},[9105],{"type":51,"value":285},{"type":45,"tag":73,"props":9107,"children":9108},{"style":96},[9109],{"type":51,"value":8726},{"type":45,"tag":73,"props":9111,"children":9112},{"style":215},[9113],{"type":51,"value":294},{"type":45,"tag":73,"props":9115,"children":9116},{"style":215},[9117],{"type":51,"value":275},{"type":45,"tag":73,"props":9119,"children":9120},{"style":221},[9121],{"type":51,"value":506},{"type":45,"tag":73,"props":9123,"children":9124},{"style":215},[9125],{"type":51,"value":299},{"type":45,"tag":1468,"props":9127,"children":9128},{},[9129],{"type":45,"tag":1472,"props":9130,"children":9131},{},[9132,9137,9138,9144,9146,9152],{"type":45,"tag":1476,"props":9133,"children":9134},{},[9135],{"type":51,"value":9136},"Role-based access:",{"type":51,"value":3310},{"type":45,"tag":69,"props":9139,"children":9141},{"className":9140},[],[9142],{"type":51,"value":9143},"Role.team('[TEAM_ID]')",{"type":51,"value":9145}," for all team members or ",{"type":45,"tag":69,"props":9147,"children":9149},{"className":9148},[],[9150],{"type":51,"value":9151},"Role.team('[TEAM_ID]', 'editor')",{"type":51,"value":9153}," for a specific team role when setting permissions.",{"type":45,"tag":182,"props":9155,"children":9157},{"id":9156},"real-time-subscriptions-client-side",[9158],{"type":51,"value":9159},"Real-time Subscriptions (client-side)",{"type":45,"tag":61,"props":9161,"children":9163},{"className":190,"code":9162,"language":21,"meta":66,"style":66},"import { Realtime, Channel } from 'appwrite';\n\nconst realtime = new Realtime(client);\n\n\u002F\u002F Subscribe to row changes\nconst subscription = await realtime.subscribe(\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row(),\n    (response) => {\n        console.log(response.events);   \u002F\u002F e.g. ['tablesdb.*.tables.*.rows.*.create']\n        console.log(response.payload);  \u002F\u002F the affected resource\n    }\n);\n\n\u002F\u002F Subscribe to a specific row\nawait realtime.subscribe(\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row('[ROW_ID]'),\n    (response) => { \u002F* ... *\u002F }\n);\n\n\u002F\u002F Subscribe to multiple channels\nawait realtime.subscribe([\n    Channel.tablesdb('[DATABASE_ID]').table('[TABLE_ID]').row(),\n    Channel.bucket('[BUCKET_ID]').file(),\n], (response) => { \u002F* ... *\u002F });\n\n\u002F\u002F Unsubscribe\nawait subscription.close();\n",[9164],{"type":45,"tag":69,"props":9165,"children":9166},{"__ignoreMap":66},[9167,9216,9223,9255,9262,9270,9309,9391,9417,9464,9509,9517,9528,9535,9543,9566,9661,9693,9704,9711,9719,9743,9822,9875,9922,9929,9937],{"type":45,"tag":73,"props":9168,"children":9169},{"class":75,"line":76},[9170,9174,9178,9183,9187,9192,9196,9200,9204,9208,9212],{"type":45,"tag":73,"props":9171,"children":9172},{"style":209},[9173],{"type":51,"value":212},{"type":45,"tag":73,"props":9175,"children":9176},{"style":215},[9177],{"type":51,"value":218},{"type":45,"tag":73,"props":9179,"children":9180},{"style":221},[9181],{"type":51,"value":9182}," Realtime",{"type":45,"tag":73,"props":9184,"children":9185},{"style":215},[9186],{"type":51,"value":229},{"type":45,"tag":73,"props":9188,"children":9189},{"style":221},[9190],{"type":51,"value":9191}," Channel",{"type":45,"tag":73,"props":9193,"children":9194},{"style":215},[9195],{"type":51,"value":275},{"type":45,"tag":73,"props":9197,"children":9198},{"style":209},[9199],{"type":51,"value":280},{"type":45,"tag":73,"props":9201,"children":9202},{"style":215},[9203],{"type":51,"value":285},{"type":45,"tag":73,"props":9205,"children":9206},{"style":96},[9207],{"type":51,"value":8},{"type":45,"tag":73,"props":9209,"children":9210},{"style":215},[9211],{"type":51,"value":294},{"type":45,"tag":73,"props":9213,"children":9214},{"style":215},[9215],{"type":51,"value":299},{"type":45,"tag":73,"props":9217,"children":9218},{"class":75,"line":86},[9219],{"type":45,"tag":73,"props":9220,"children":9221},{"emptyLinePlaceholder":111},[9222],{"type":51,"value":114},{"type":45,"tag":73,"props":9224,"children":9225},{"class":75,"line":107},[9226,9230,9235,9239,9243,9247,9251],{"type":45,"tag":73,"props":9227,"children":9228},{"style":407},[9229],{"type":51,"value":410},{"type":45,"tag":73,"props":9231,"children":9232},{"style":221},[9233],{"type":51,"value":9234}," realtime ",{"type":45,"tag":73,"props":9236,"children":9237},{"style":215},[9238],{"type":51,"value":420},{"type":45,"tag":73,"props":9240,"children":9241},{"style":215},[9242],{"type":51,"value":425},{"type":45,"tag":73,"props":9244,"children":9245},{"style":428},[9246],{"type":51,"value":9182},{"type":45,"tag":73,"props":9248,"children":9249},{"style":221},[9250],{"type":51,"value":798},{"type":45,"tag":73,"props":9252,"children":9253},{"style":215},[9254],{"type":51,"value":299},{"type":45,"tag":73,"props":9256,"children":9257},{"class":75,"line":117},[9258],{"type":45,"tag":73,"props":9259,"children":9260},{"emptyLinePlaceholder":111},[9261],{"type":51,"value":114},{"type":45,"tag":73,"props":9263,"children":9264},{"class":75,"line":126},[9265],{"type":45,"tag":73,"props":9266,"children":9267},{"style":80},[9268],{"type":51,"value":9269},"\u002F\u002F Subscribe to row changes\n",{"type":45,"tag":73,"props":9271,"children":9272},{"class":75,"line":143},[9273,9277,9282,9286,9290,9295,9299,9304],{"type":45,"tag":73,"props":9274,"children":9275},{"style":407},[9276],{"type":51,"value":410},{"type":45,"tag":73,"props":9278,"children":9279},{"style":221},[9280],{"type":51,"value":9281}," subscription ",{"type":45,"tag":73,"props":9283,"children":9284},{"style":215},[9285],{"type":51,"value":420},{"type":45,"tag":73,"props":9287,"children":9288},{"style":209},[9289],{"type":51,"value":1024},{"type":45,"tag":73,"props":9291,"children":9292},{"style":221},[9293],{"type":51,"value":9294}," realtime",{"type":45,"tag":73,"props":9296,"children":9297},{"style":215},[9298],{"type":51,"value":699},{"type":45,"tag":73,"props":9300,"children":9301},{"style":428},[9302],{"type":51,"value":9303},"subscribe",{"type":45,"tag":73,"props":9305,"children":9306},{"style":221},[9307],{"type":51,"value":9308},"(\n",{"type":45,"tag":73,"props":9310,"children":9311},{"class":75,"line":151},[9312,9317,9321,9326,9330,9334,9338,9342,9346,9350,9354,9358,9362,9366,9370,9374,9378,9383,9387],{"type":45,"tag":73,"props":9313,"children":9314},{"style":221},[9315],{"type":51,"value":9316},"    Channel",{"type":45,"tag":73,"props":9318,"children":9319},{"style":215},[9320],{"type":51,"value":699},{"type":45,"tag":73,"props":9322,"children":9323},{"style":428},[9324],{"type":51,"value":9325},"tablesdb",{"type":45,"tag":73,"props":9327,"children":9328},{"style":221},[9329],{"type":51,"value":453},{"type":45,"tag":73,"props":9331,"children":9332},{"style":215},[9333],{"type":51,"value":294},{"type":45,"tag":73,"props":9335,"children":9336},{"style":96},[9337],{"type":51,"value":3586},{"type":45,"tag":73,"props":9339,"children":9340},{"style":215},[9341],{"type":51,"value":294},{"type":45,"tag":73,"props":9343,"children":9344},{"style":221},[9345],{"type":51,"value":506},{"type":45,"tag":73,"props":9347,"children":9348},{"style":215},[9349],{"type":51,"value":699},{"type":45,"tag":73,"props":9351,"children":9352},{"style":428},[9353],{"type":51,"value":4610},{"type":45,"tag":73,"props":9355,"children":9356},{"style":221},[9357],{"type":51,"value":453},{"type":45,"tag":73,"props":9359,"children":9360},{"style":215},[9361],{"type":51,"value":294},{"type":45,"tag":73,"props":9363,"children":9364},{"style":96},[9365],{"type":51,"value":3768},{"type":45,"tag":73,"props":9367,"children":9368},{"style":215},[9369],{"type":51,"value":294},{"type":45,"tag":73,"props":9371,"children":9372},{"style":221},[9373],{"type":51,"value":506},{"type":45,"tag":73,"props":9375,"children":9376},{"style":215},[9377],{"type":51,"value":699},{"type":45,"tag":73,"props":9379,"children":9380},{"style":428},[9381],{"type":51,"value":9382},"row",{"type":45,"tag":73,"props":9384,"children":9385},{"style":221},[9386],{"type":51,"value":880},{"type":45,"tag":73,"props":9388,"children":9389},{"style":215},[9390],{"type":51,"value":885},{"type":45,"tag":73,"props":9392,"children":9393},{"class":75,"line":160},[9394,9399,9404,9408,9413],{"type":45,"tag":73,"props":9395,"children":9396},{"style":215},[9397],{"type":51,"value":9398},"    (",{"type":45,"tag":73,"props":9400,"children":9401},{"style":2007},[9402],{"type":51,"value":9403},"response",{"type":45,"tag":73,"props":9405,"children":9406},{"style":215},[9407],{"type":51,"value":506},{"type":45,"tag":73,"props":9409,"children":9410},{"style":407},[9411],{"type":51,"value":9412}," =>",{"type":45,"tag":73,"props":9414,"children":9415},{"style":215},[9416],{"type":51,"value":1632},{"type":45,"tag":73,"props":9418,"children":9419},{"class":75,"line":474},[9420,9425,9429,9434,9438,9442,9446,9451,9455,9459],{"type":45,"tag":73,"props":9421,"children":9422},{"style":221},[9423],{"type":51,"value":9424},"        console",{"type":45,"tag":73,"props":9426,"children":9427},{"style":215},[9428],{"type":51,"value":699},{"type":45,"tag":73,"props":9430,"children":9431},{"style":428},[9432],{"type":51,"value":9433},"log",{"type":45,"tag":73,"props":9435,"children":9436},{"style":854},[9437],{"type":51,"value":453},{"type":45,"tag":73,"props":9439,"children":9440},{"style":221},[9441],{"type":51,"value":9403},{"type":45,"tag":73,"props":9443,"children":9444},{"style":215},[9445],{"type":51,"value":699},{"type":45,"tag":73,"props":9447,"children":9448},{"style":221},[9449],{"type":51,"value":9450},"events",{"type":45,"tag":73,"props":9452,"children":9453},{"style":854},[9454],{"type":51,"value":506},{"type":45,"tag":73,"props":9456,"children":9457},{"style":215},[9458],{"type":51,"value":2160},{"type":45,"tag":73,"props":9460,"children":9461},{"style":80},[9462],{"type":51,"value":9463},"   \u002F\u002F e.g. ['tablesdb.*.tables.*.rows.*.create']\n",{"type":45,"tag":73,"props":9465,"children":9466},{"class":75,"line":988},[9467,9471,9475,9479,9483,9487,9491,9496,9500,9504],{"type":45,"tag":73,"props":9468,"children":9469},{"style":221},[9470],{"type":51,"value":9424},{"type":45,"tag":73,"props":9472,"children":9473},{"style":215},[9474],{"type":51,"value":699},{"type":45,"tag":73,"props":9476,"children":9477},{"style":428},[9478],{"type":51,"value":9433},{"type":45,"tag":73,"props":9480,"children":9481},{"style":854},[9482],{"type":51,"value":453},{"type":45,"tag":73,"props":9484,"children":9485},{"style":221},[9486],{"type":51,"value":9403},{"type":45,"tag":73,"props":9488,"children":9489},{"style":215},[9490],{"type":51,"value":699},{"type":45,"tag":73,"props":9492,"children":9493},{"style":221},[9494],{"type":51,"value":9495},"payload",{"type":45,"tag":73,"props":9497,"children":9498},{"style":854},[9499],{"type":51,"value":506},{"type":45,"tag":73,"props":9501,"children":9502},{"style":215},[9503],{"type":51,"value":2160},{"type":45,"tag":73,"props":9505,"children":9506},{"style":80},[9507],{"type":51,"value":9508},"  \u002F\u002F the affected resource\n",{"type":45,"tag":73,"props":9510,"children":9511},{"class":75,"line":996},[9512],{"type":45,"tag":73,"props":9513,"children":9514},{"style":215},[9515],{"type":51,"value":9516},"    }\n",{"type":45,"tag":73,"props":9518,"children":9519},{"class":75,"line":1005},[9520,9524],{"type":45,"tag":73,"props":9521,"children":9522},{"style":221},[9523],{"type":51,"value":506},{"type":45,"tag":73,"props":9525,"children":9526},{"style":215},[9527],{"type":51,"value":299},{"type":45,"tag":73,"props":9529,"children":9530},{"class":75,"line":1048},[9531],{"type":45,"tag":73,"props":9532,"children":9533},{"emptyLinePlaceholder":111},[9534],{"type":51,"value":114},{"type":45,"tag":73,"props":9536,"children":9537},{"class":75,"line":1076},[9538],{"type":45,"tag":73,"props":9539,"children":9540},{"style":80},[9541],{"type":51,"value":9542},"\u002F\u002F Subscribe to a specific row\n",{"type":45,"tag":73,"props":9544,"children":9545},{"class":75,"line":1100},[9546,9550,9554,9558,9562],{"type":45,"tag":73,"props":9547,"children":9548},{"style":209},[9549],{"type":51,"value":825},{"type":45,"tag":73,"props":9551,"children":9552},{"style":221},[9553],{"type":51,"value":9294},{"type":45,"tag":73,"props":9555,"children":9556},{"style":215},[9557],{"type":51,"value":699},{"type":45,"tag":73,"props":9559,"children":9560},{"style":428},[9561],{"type":51,"value":9303},{"type":45,"tag":73,"props":9563,"children":9564},{"style":221},[9565],{"type":51,"value":9308},{"type":45,"tag":73,"props":9567,"children":9568},{"class":75,"line":1116},[9569,9573,9577,9581,9585,9589,9593,9597,9601,9605,9609,9613,9617,9621,9625,9629,9633,9637,9641,9645,9649,9653,9657],{"type":45,"tag":73,"props":9570,"children":9571},{"style":221},[9572],{"type":51,"value":9316},{"type":45,"tag":73,"props":9574,"children":9575},{"style":215},[9576],{"type":51,"value":699},{"type":45,"tag":73,"props":9578,"children":9579},{"style":428},[9580],{"type":51,"value":9325},{"type":45,"tag":73,"props":9582,"children":9583},{"style":221},[9584],{"type":51,"value":453},{"type":45,"tag":73,"props":9586,"children":9587},{"style":215},[9588],{"type":51,"value":294},{"type":45,"tag":73,"props":9590,"children":9591},{"style":96},[9592],{"type":51,"value":3586},{"type":45,"tag":73,"props":9594,"children":9595},{"style":215},[9596],{"type":51,"value":294},{"type":45,"tag":73,"props":9598,"children":9599},{"style":221},[9600],{"type":51,"value":506},{"type":45,"tag":73,"props":9602,"children":9603},{"style":215},[9604],{"type":51,"value":699},{"type":45,"tag":73,"props":9606,"children":9607},{"style":428},[9608],{"type":51,"value":4610},{"type":45,"tag":73,"props":9610,"children":9611},{"style":221},[9612],{"type":51,"value":453},{"type":45,"tag":73,"props":9614,"children":9615},{"style":215},[9616],{"type":51,"value":294},{"type":45,"tag":73,"props":9618,"children":9619},{"style":96},[9620],{"type":51,"value":3768},{"type":45,"tag":73,"props":9622,"children":9623},{"style":215},[9624],{"type":51,"value":294},{"type":45,"tag":73,"props":9626,"children":9627},{"style":221},[9628],{"type":51,"value":506},{"type":45,"tag":73,"props":9630,"children":9631},{"style":215},[9632],{"type":51,"value":699},{"type":45,"tag":73,"props":9634,"children":9635},{"style":428},[9636],{"type":51,"value":9382},{"type":45,"tag":73,"props":9638,"children":9639},{"style":221},[9640],{"type":51,"value":453},{"type":45,"tag":73,"props":9642,"children":9643},{"style":215},[9644],{"type":51,"value":294},{"type":45,"tag":73,"props":9646,"children":9647},{"style":96},[9648],{"type":51,"value":4240},{"type":45,"tag":73,"props":9650,"children":9651},{"style":215},[9652],{"type":51,"value":294},{"type":45,"tag":73,"props":9654,"children":9655},{"style":221},[9656],{"type":51,"value":506},{"type":45,"tag":73,"props":9658,"children":9659},{"style":215},[9660],{"type":51,"value":885},{"type":45,"tag":73,"props":9662,"children":9663},{"class":75,"line":1124},[9664,9668,9672,9676,9680,9684,9689],{"type":45,"tag":73,"props":9665,"children":9666},{"style":215},[9667],{"type":51,"value":9398},{"type":45,"tag":73,"props":9669,"children":9670},{"style":2007},[9671],{"type":51,"value":9403},{"type":45,"tag":73,"props":9673,"children":9674},{"style":215},[9675],{"type":51,"value":506},{"type":45,"tag":73,"props":9677,"children":9678},{"style":407},[9679],{"type":51,"value":9412},{"type":45,"tag":73,"props":9681,"children":9682},{"style":215},[9683],{"type":51,"value":218},{"type":45,"tag":73,"props":9685,"children":9686},{"style":80},[9687],{"type":51,"value":9688}," \u002F* ... *\u002F",{"type":45,"tag":73,"props":9690,"children":9691},{"style":215},[9692],{"type":51,"value":3877},{"type":45,"tag":73,"props":9694,"children":9695},{"class":75,"line":1133},[9696,9700],{"type":45,"tag":73,"props":9697,"children":9698},{"style":221},[9699],{"type":51,"value":506},{"type":45,"tag":73,"props":9701,"children":9702},{"style":215},[9703],{"type":51,"value":299},{"type":45,"tag":73,"props":9705,"children":9706},{"class":75,"line":1159},[9707],{"type":45,"tag":73,"props":9708,"children":9709},{"emptyLinePlaceholder":111},[9710],{"type":51,"value":114},{"type":45,"tag":73,"props":9712,"children":9713},{"class":75,"line":1190},[9714],{"type":45,"tag":73,"props":9715,"children":9716},{"style":80},[9717],{"type":51,"value":9718},"\u002F\u002F Subscribe to multiple channels\n",{"type":45,"tag":73,"props":9720,"children":9721},{"class":75,"line":1220},[9722,9726,9730,9734,9738],{"type":45,"tag":73,"props":9723,"children":9724},{"style":209},[9725],{"type":51,"value":825},{"type":45,"tag":73,"props":9727,"children":9728},{"style":221},[9729],{"type":51,"value":9294},{"type":45,"tag":73,"props":9731,"children":9732},{"style":215},[9733],{"type":51,"value":699},{"type":45,"tag":73,"props":9735,"children":9736},{"style":428},[9737],{"type":51,"value":9303},{"type":45,"tag":73,"props":9739,"children":9740},{"style":221},[9741],{"type":51,"value":9742},"([\n",{"type":45,"tag":73,"props":9744,"children":9745},{"class":75,"line":1250},[9746,9750,9754,9758,9762,9766,9770,9774,9778,9782,9786,9790,9794,9798,9802,9806,9810,9814,9818],{"type":45,"tag":73,"props":9747,"children":9748},{"style":221},[9749],{"type":51,"value":9316},{"type":45,"tag":73,"props":9751,"children":9752},{"style":215},[9753],{"type":51,"value":699},{"type":45,"tag":73,"props":9755,"children":9756},{"style":428},[9757],{"type":51,"value":9325},{"type":45,"tag":73,"props":9759,"children":9760},{"style":221},[9761],{"type":51,"value":453},{"type":45,"tag":73,"props":9763,"children":9764},{"style":215},[9765],{"type":51,"value":294},{"type":45,"tag":73,"props":9767,"children":9768},{"style":96},[9769],{"type":51,"value":3586},{"type":45,"tag":73,"props":9771,"children":9772},{"style":215},[9773],{"type":51,"value":294},{"type":45,"tag":73,"props":9775,"children":9776},{"style":221},[9777],{"type":51,"value":506},{"type":45,"tag":73,"props":9779,"children":9780},{"style":215},[9781],{"type":51,"value":699},{"type":45,"tag":73,"props":9783,"children":9784},{"style":428},[9785],{"type":51,"value":4610},{"type":45,"tag":73,"props":9787,"children":9788},{"style":221},[9789],{"type":51,"value":453},{"type":45,"tag":73,"props":9791,"children":9792},{"style":215},[9793],{"type":51,"value":294},{"type":45,"tag":73,"props":9795,"children":9796},{"style":96},[9797],{"type":51,"value":3768},{"type":45,"tag":73,"props":9799,"children":9800},{"style":215},[9801],{"type":51,"value":294},{"type":45,"tag":73,"props":9803,"children":9804},{"style":221},[9805],{"type":51,"value":506},{"type":45,"tag":73,"props":9807,"children":9808},{"style":215},[9809],{"type":51,"value":699},{"type":45,"tag":73,"props":9811,"children":9812},{"style":428},[9813],{"type":51,"value":9382},{"type":45,"tag":73,"props":9815,"children":9816},{"style":221},[9817],{"type":51,"value":880},{"type":45,"tag":73,"props":9819,"children":9820},{"style":215},[9821],{"type":51,"value":885},{"type":45,"tag":73,"props":9823,"children":9824},{"class":75,"line":29},[9825,9829,9833,9838,9842,9846,9850,9854,9858,9862,9867,9871],{"type":45,"tag":73,"props":9826,"children":9827},{"style":221},[9828],{"type":51,"value":9316},{"type":45,"tag":73,"props":9830,"children":9831},{"style":215},[9832],{"type":51,"value":699},{"type":45,"tag":73,"props":9834,"children":9835},{"style":428},[9836],{"type":51,"value":9837},"bucket",{"type":45,"tag":73,"props":9839,"children":9840},{"style":221},[9841],{"type":51,"value":453},{"type":45,"tag":73,"props":9843,"children":9844},{"style":215},[9845],{"type":51,"value":294},{"type":45,"tag":73,"props":9847,"children":9848},{"style":96},[9849],{"type":51,"value":7330},{"type":45,"tag":73,"props":9851,"children":9852},{"style":215},[9853],{"type":51,"value":294},{"type":45,"tag":73,"props":9855,"children":9856},{"style":221},[9857],{"type":51,"value":506},{"type":45,"tag":73,"props":9859,"children":9860},{"style":215},[9861],{"type":51,"value":699},{"type":45,"tag":73,"props":9863,"children":9864},{"style":428},[9865],{"type":51,"value":9866},"file",{"type":45,"tag":73,"props":9868,"children":9869},{"style":221},[9870],{"type":51,"value":880},{"type":45,"tag":73,"props":9872,"children":9873},{"style":215},[9874],{"type":51,"value":885},{"type":45,"tag":73,"props":9876,"children":9877},{"class":75,"line":1323},[9878,9882,9886,9890,9894,9898,9902,9906,9910,9914,9918],{"type":45,"tag":73,"props":9879,"children":9880},{"style":221},[9881],{"type":51,"value":5702},{"type":45,"tag":73,"props":9883,"children":9884},{"style":215},[9885],{"type":51,"value":229},{"type":45,"tag":73,"props":9887,"children":9888},{"style":215},[9889],{"type":51,"value":2409},{"type":45,"tag":73,"props":9891,"children":9892},{"style":2007},[9893],{"type":51,"value":9403},{"type":45,"tag":73,"props":9895,"children":9896},{"style":215},[9897],{"type":51,"value":506},{"type":45,"tag":73,"props":9899,"children":9900},{"style":407},[9901],{"type":51,"value":9412},{"type":45,"tag":73,"props":9903,"children":9904},{"style":215},[9905],{"type":51,"value":218},{"type":45,"tag":73,"props":9907,"children":9908},{"style":80},[9909],{"type":51,"value":9688},{"type":45,"tag":73,"props":9911,"children":9912},{"style":215},[9913],{"type":51,"value":275},{"type":45,"tag":73,"props":9915,"children":9916},{"style":221},[9917],{"type":51,"value":506},{"type":45,"tag":73,"props":9919,"children":9920},{"style":215},[9921],{"type":51,"value":299},{"type":45,"tag":73,"props":9923,"children":9924},{"class":75,"line":1331},[9925],{"type":45,"tag":73,"props":9926,"children":9927},{"emptyLinePlaceholder":111},[9928],{"type":51,"value":114},{"type":45,"tag":73,"props":9930,"children":9931},{"class":75,"line":1340},[9932],{"type":45,"tag":73,"props":9933,"children":9934},{"style":80},[9935],{"type":51,"value":9936},"\u002F\u002F Unsubscribe\n",{"type":45,"tag":73,"props":9938,"children":9939},{"class":75,"line":1382},[9940,9944,9949,9953,9958,9962],{"type":45,"tag":73,"props":9941,"children":9942},{"style":209},[9943],{"type":51,"value":825},{"type":45,"tag":73,"props":9945,"children":9946},{"style":221},[9947],{"type":51,"value":9948}," subscription",{"type":45,"tag":73,"props":9950,"children":9951},{"style":215},[9952],{"type":51,"value":699},{"type":45,"tag":73,"props":9954,"children":9955},{"style":428},[9956],{"type":51,"value":9957},"close",{"type":45,"tag":73,"props":9959,"children":9960},{"style":221},[9961],{"type":51,"value":880},{"type":45,"tag":73,"props":9963,"children":9964},{"style":215},[9965],{"type":51,"value":299},{"type":45,"tag":1472,"props":9967,"children":9968},{},[9969],{"type":45,"tag":1476,"props":9970,"children":9971},{},[9972],{"type":51,"value":9973},"Available channels:",{"type":45,"tag":4610,"props":9975,"children":9976},{},[9977,9993],{"type":45,"tag":4614,"props":9978,"children":9979},{},[9980],{"type":45,"tag":4618,"props":9981,"children":9982},{},[9983,9988],{"type":45,"tag":4622,"props":9984,"children":9985},{},[9986],{"type":51,"value":9987},"Channel",{"type":45,"tag":4622,"props":9989,"children":9990},{},[9991],{"type":51,"value":9992},"Description",{"type":45,"tag":4643,"props":9994,"children":9995},{},[9996,10012,10029,10046,10063,10080,10096,10113,10130,10147],{"type":45,"tag":4618,"props":9997,"children":9998},{},[9999,10007],{"type":45,"tag":4650,"props":10000,"children":10001},{},[10002],{"type":45,"tag":69,"props":10003,"children":10005},{"className":10004},[],[10006],{"type":51,"value":1139},{"type":45,"tag":4650,"props":10008,"children":10009},{},[10010],{"type":51,"value":10011},"Changes to the authenticated user's account",{"type":45,"tag":4618,"props":10013,"children":10014},{},[10015,10024],{"type":45,"tag":4650,"props":10016,"children":10017},{},[10018],{"type":45,"tag":69,"props":10019,"children":10021},{"className":10020},[],[10022],{"type":51,"value":10023},"tablesdb.[DB_ID].tables.[TABLE_ID].rows",{"type":45,"tag":4650,"props":10025,"children":10026},{},[10027],{"type":51,"value":10028},"All rows in a table",{"type":45,"tag":4618,"props":10030,"children":10031},{},[10032,10041],{"type":45,"tag":4650,"props":10033,"children":10034},{},[10035],{"type":45,"tag":69,"props":10036,"children":10038},{"className":10037},[],[10039],{"type":51,"value":10040},"tablesdb.[DB_ID].tables.[TABLE_ID].rows.[ROW_ID]",{"type":45,"tag":4650,"props":10042,"children":10043},{},[10044],{"type":51,"value":10045},"A specific row",{"type":45,"tag":4618,"props":10047,"children":10048},{},[10049,10058],{"type":45,"tag":4650,"props":10050,"children":10051},{},[10052],{"type":45,"tag":69,"props":10053,"children":10055},{"className":10054},[],[10056],{"type":51,"value":10057},"buckets.[BUCKET_ID].files",{"type":45,"tag":4650,"props":10059,"children":10060},{},[10061],{"type":51,"value":10062},"All files in a bucket",{"type":45,"tag":4618,"props":10064,"children":10065},{},[10066,10075],{"type":45,"tag":4650,"props":10067,"children":10068},{},[10069],{"type":45,"tag":69,"props":10070,"children":10072},{"className":10071},[],[10073],{"type":51,"value":10074},"buckets.[BUCKET_ID].files.[FILE_ID]",{"type":45,"tag":4650,"props":10076,"children":10077},{},[10078],{"type":51,"value":10079},"A specific file",{"type":45,"tag":4618,"props":10081,"children":10082},{},[10083,10091],{"type":45,"tag":4650,"props":10084,"children":10085},{},[10086],{"type":45,"tag":69,"props":10087,"children":10089},{"className":10088},[],[10090],{"type":51,"value":8434},{"type":45,"tag":4650,"props":10092,"children":10093},{},[10094],{"type":51,"value":10095},"Changes to teams the user belongs to",{"type":45,"tag":4618,"props":10097,"children":10098},{},[10099,10108],{"type":45,"tag":4650,"props":10100,"children":10101},{},[10102],{"type":45,"tag":69,"props":10103,"children":10105},{"className":10104},[],[10106],{"type":51,"value":10107},"teams.[TEAM_ID]",{"type":45,"tag":4650,"props":10109,"children":10110},{},[10111],{"type":51,"value":10112},"Changes to a specific team",{"type":45,"tag":4618,"props":10114,"children":10115},{},[10116,10125],{"type":45,"tag":4650,"props":10117,"children":10118},{},[10119],{"type":45,"tag":69,"props":10120,"children":10122},{"className":10121},[],[10123],{"type":51,"value":10124},"memberships",{"type":45,"tag":4650,"props":10126,"children":10127},{},[10128],{"type":51,"value":10129},"Changes to the user's team memberships",{"type":45,"tag":4618,"props":10131,"children":10132},{},[10133,10142],{"type":45,"tag":4650,"props":10134,"children":10135},{},[10136],{"type":45,"tag":69,"props":10137,"children":10139},{"className":10138},[],[10140],{"type":51,"value":10141},"memberships.[MEMBERSHIP_ID]",{"type":45,"tag":4650,"props":10143,"children":10144},{},[10145],{"type":51,"value":10146},"A specific membership",{"type":45,"tag":4618,"props":10148,"children":10149},{},[10150,10159],{"type":45,"tag":4650,"props":10151,"children":10152},{},[10153],{"type":45,"tag":69,"props":10154,"children":10156},{"className":10155},[],[10157],{"type":51,"value":10158},"functions.[FUNCTION_ID].executions",{"type":45,"tag":4650,"props":10160,"children":10161},{},[10162],{"type":51,"value":10163},"Execution updates for a function",{"type":45,"tag":1472,"props":10165,"children":10166},{},[10167,10169,10174,10176,10181,10183,10188,10190,10196,10198,10204],{"type":51,"value":10168},"The ",{"type":45,"tag":69,"props":10170,"children":10172},{"className":10171},[],[10173],{"type":51,"value":9403},{"type":51,"value":10175}," object includes: ",{"type":45,"tag":69,"props":10177,"children":10179},{"className":10178},[],[10180],{"type":51,"value":9450},{"type":51,"value":10182}," (array of event strings), ",{"type":45,"tag":69,"props":10184,"children":10186},{"className":10185},[],[10187],{"type":51,"value":9495},{"type":51,"value":10189}," (the affected resource), ",{"type":45,"tag":69,"props":10191,"children":10193},{"className":10192},[],[10194],{"type":51,"value":10195},"channels",{"type":51,"value":10197}," (channels matched), and ",{"type":45,"tag":69,"props":10199,"children":10201},{"className":10200},[],[10202],{"type":51,"value":10203},"timestamp",{"type":51,"value":10205}," (ISO 8601).",{"type":45,"tag":182,"props":10207,"children":10209},{"id":10208},"serverless-functions-server-side",[10210],{"type":51,"value":10211},"Serverless Functions (server-side)",{"type":45,"tag":61,"props":10213,"children":10215},{"className":190,"code":10214,"language":21,"meta":66,"style":66},"const functions = new Functions(client);\n\n\u002F\u002F Execute function\nconst execution = await functions.createExecution({\n    functionId: '[FUNCTION_ID]',\n    body: JSON.stringify({ key: 'value' })\n});\n\n\u002F\u002F List executions\nconst executions = await functions.listExecutions({ functionId: '[FUNCTION_ID]' });\n",[10216],{"type":45,"tag":69,"props":10217,"children":10218},{"__ignoreMap":66},[10219,10251,10258,10266,10308,10337,10399,10414,10421,10429],{"type":45,"tag":73,"props":10220,"children":10221},{"class":75,"line":76},[10222,10226,10231,10235,10239,10243,10247],{"type":45,"tag":73,"props":10223,"children":10224},{"style":407},[10225],{"type":51,"value":410},{"type":45,"tag":73,"props":10227,"children":10228},{"style":221},[10229],{"type":51,"value":10230}," functions ",{"type":45,"tag":73,"props":10232,"children":10233},{"style":215},[10234],{"type":51,"value":420},{"type":45,"tag":73,"props":10236,"children":10237},{"style":215},[10238],{"type":51,"value":425},{"type":45,"tag":73,"props":10240,"children":10241},{"style":428},[10242],{"type":51,"value":572},{"type":45,"tag":73,"props":10244,"children":10245},{"style":221},[10246],{"type":51,"value":798},{"type":45,"tag":73,"props":10248,"children":10249},{"style":215},[10250],{"type":51,"value":299},{"type":45,"tag":73,"props":10252,"children":10253},{"class":75,"line":86},[10254],{"type":45,"tag":73,"props":10255,"children":10256},{"emptyLinePlaceholder":111},[10257],{"type":51,"value":114},{"type":45,"tag":73,"props":10259,"children":10260},{"class":75,"line":107},[10261],{"type":45,"tag":73,"props":10262,"children":10263},{"style":80},[10264],{"type":51,"value":10265},"\u002F\u002F Execute function\n",{"type":45,"tag":73,"props":10267,"children":10268},{"class":75,"line":117},[10269,10273,10278,10282,10286,10291,10295,10300,10304],{"type":45,"tag":73,"props":10270,"children":10271},{"style":407},[10272],{"type":51,"value":410},{"type":45,"tag":73,"props":10274,"children":10275},{"style":221},[10276],{"type":51,"value":10277}," execution ",{"type":45,"tag":73,"props":10279,"children":10280},{"style":215},[10281],{"type":51,"value":420},{"type":45,"tag":73,"props":10283,"children":10284},{"style":209},[10285],{"type":51,"value":1024},{"type":45,"tag":73,"props":10287,"children":10288},{"style":221},[10289],{"type":51,"value":10290}," functions",{"type":45,"tag":73,"props":10292,"children":10293},{"style":215},[10294],{"type":51,"value":699},{"type":45,"tag":73,"props":10296,"children":10297},{"style":428},[10298],{"type":51,"value":10299},"createExecution",{"type":45,"tag":73,"props":10301,"children":10302},{"style":221},[10303],{"type":51,"value":453},{"type":45,"tag":73,"props":10305,"children":10306},{"style":215},[10307],{"type":51,"value":848},{"type":45,"tag":73,"props":10309,"children":10310},{"class":75,"line":126},[10311,10316,10320,10324,10329,10333],{"type":45,"tag":73,"props":10312,"children":10313},{"style":854},[10314],{"type":51,"value":10315},"    functionId",{"type":45,"tag":73,"props":10317,"children":10318},{"style":215},[10319],{"type":51,"value":862},{"type":45,"tag":73,"props":10321,"children":10322},{"style":215},[10323],{"type":51,"value":285},{"type":45,"tag":73,"props":10325,"children":10326},{"style":96},[10327],{"type":51,"value":10328},"[FUNCTION_ID]",{"type":45,"tag":73,"props":10330,"children":10331},{"style":215},[10332],{"type":51,"value":294},{"type":45,"tag":73,"props":10334,"children":10335},{"style":215},[10336],{"type":51,"value":885},{"type":45,"tag":73,"props":10338,"children":10339},{"class":75,"line":143},[10340,10345,10349,10354,10358,10363,10367,10371,10375,10379,10383,10387,10391,10395],{"type":45,"tag":73,"props":10341,"children":10342},{"style":854},[10343],{"type":51,"value":10344},"    body",{"type":45,"tag":73,"props":10346,"children":10347},{"style":215},[10348],{"type":51,"value":862},{"type":45,"tag":73,"props":10350,"children":10351},{"style":221},[10352],{"type":51,"value":10353}," JSON",{"type":45,"tag":73,"props":10355,"children":10356},{"style":215},[10357],{"type":51,"value":699},{"type":45,"tag":73,"props":10359,"children":10360},{"style":428},[10361],{"type":51,"value":10362},"stringify",{"type":45,"tag":73,"props":10364,"children":10365},{"style":221},[10366],{"type":51,"value":453},{"type":45,"tag":73,"props":10368,"children":10369},{"style":215},[10370],{"type":51,"value":1426},{"type":45,"tag":73,"props":10372,"children":10373},{"style":854},[10374],{"type":51,"value":4953},{"type":45,"tag":73,"props":10376,"children":10377},{"style":215},[10378],{"type":51,"value":862},{"type":45,"tag":73,"props":10380,"children":10381},{"style":215},[10382],{"type":51,"value":285},{"type":45,"tag":73,"props":10384,"children":10385},{"style":96},[10386],{"type":51,"value":5987},{"type":45,"tag":73,"props":10388,"children":10389},{"style":215},[10390],{"type":51,"value":294},{"type":45,"tag":73,"props":10392,"children":10393},{"style":215},[10394],{"type":51,"value":275},{"type":45,"tag":73,"props":10396,"children":10397},{"style":221},[10398],{"type":51,"value":471},{"type":45,"tag":73,"props":10400,"children":10401},{"class":75,"line":151},[10402,10406,10410],{"type":45,"tag":73,"props":10403,"children":10404},{"style":215},[10405],{"type":51,"value":977},{"type":45,"tag":73,"props":10407,"children":10408},{"style":221},[10409],{"type":51,"value":506},{"type":45,"tag":73,"props":10411,"children":10412},{"style":215},[10413],{"type":51,"value":299},{"type":45,"tag":73,"props":10415,"children":10416},{"class":75,"line":160},[10417],{"type":45,"tag":73,"props":10418,"children":10419},{"emptyLinePlaceholder":111},[10420],{"type":51,"value":114},{"type":45,"tag":73,"props":10422,"children":10423},{"class":75,"line":474},[10424],{"type":45,"tag":73,"props":10425,"children":10426},{"style":80},[10427],{"type":51,"value":10428},"\u002F\u002F List executions\n",{"type":45,"tag":73,"props":10430,"children":10431},{"class":75,"line":988},[10432,10436,10441,10445,10449,10453,10457,10462,10466,10470,10475,10479,10483,10487,10491,10495,10499],{"type":45,"tag":73,"props":10433,"children":10434},{"style":407},[10435],{"type":51,"value":410},{"type":45,"tag":73,"props":10437,"children":10438},{"style":221},[10439],{"type":51,"value":10440}," executions ",{"type":45,"tag":73,"props":10442,"children":10443},{"style":215},[10444],{"type":51,"value":420},{"type":45,"tag":73,"props":10446,"children":10447},{"style":209},[10448],{"type":51,"value":1024},{"type":45,"tag":73,"props":10450,"children":10451},{"style":221},[10452],{"type":51,"value":10290},{"type":45,"tag":73,"props":10454,"children":10455},{"style":215},[10456],{"type":51,"value":699},{"type":45,"tag":73,"props":10458,"children":10459},{"style":428},[10460],{"type":51,"value":10461},"listExecutions",{"type":45,"tag":73,"props":10463,"children":10464},{"style":221},[10465],{"type":51,"value":453},{"type":45,"tag":73,"props":10467,"children":10468},{"style":215},[10469],{"type":51,"value":1426},{"type":45,"tag":73,"props":10471,"children":10472},{"style":854},[10473],{"type":51,"value":10474}," functionId",{"type":45,"tag":73,"props":10476,"children":10477},{"style":215},[10478],{"type":51,"value":862},{"type":45,"tag":73,"props":10480,"children":10481},{"style":215},[10482],{"type":51,"value":285},{"type":45,"tag":73,"props":10484,"children":10485},{"style":96},[10486],{"type":51,"value":10328},{"type":45,"tag":73,"props":10488,"children":10489},{"style":215},[10490],{"type":51,"value":294},{"type":45,"tag":73,"props":10492,"children":10493},{"style":215},[10494],{"type":51,"value":275},{"type":45,"tag":73,"props":10496,"children":10497},{"style":221},[10498],{"type":51,"value":506},{"type":45,"tag":73,"props":10500,"children":10501},{"style":215},[10502],{"type":51,"value":299},{"type":45,"tag":1507,"props":10504,"children":10506},{"id":10505},"writing-a-function-handler-nodejs-runtime",[10507],{"type":51,"value":10508},"Writing a Function Handler (Node.js runtime)",{"type":45,"tag":1472,"props":10510,"children":10511},{},[10512],{"type":51,"value":10513},"When deploying your own Appwrite Function, the entry point file must export a default async function:",{"type":45,"tag":61,"props":10515,"children":10517},{"className":190,"code":10516,"language":21,"meta":66,"style":66},"\u002F\u002F src\u002Fmain.js (or src\u002Fmain.ts)\nexport default async ({ req, res, log, error }) => {\n    \u002F\u002F Request properties\n    \u002F\u002F req.body        — raw request body (string)\n    \u002F\u002F req.bodyJson    — parsed JSON body (object, or undefined if not JSON)\n    \u002F\u002F req.headers     — request headers (object)\n    \u002F\u002F req.method      — HTTP method (GET, POST, PUT, DELETE, PATCH)\n    \u002F\u002F req.path        — URL path (e.g. '\u002Fhello')\n    \u002F\u002F req.query       — parsed query parameters (object)\n    \u002F\u002F req.queryString — raw query string\n\n    log('Processing request: ' + req.method + ' ' + req.path);\n\n    if (req.method === 'GET') {\n        return res.json({ message: 'Hello from Appwrite Function!' });\n    }\n\n    const data = req.bodyJson;\n    if (!data?.name) {\n        error('Missing name field');\n        return res.json({ error: 'Name is required' }, 400);\n    }\n\n    \u002F\u002F Response methods\n    return res.json({ success: true });                    \u002F\u002F JSON (sets Content-Type automatically)\n    \u002F\u002F return res.text('Hello');                           \u002F\u002F plain text\n    \u002F\u002F return res.empty();                                 \u002F\u002F 204 No Content\n    \u002F\u002F return res.redirect('https:\u002F\u002Fexample.com');         \u002F\u002F 302 Redirect\n    \u002F\u002F return res.send('data', 200, { 'X-Custom': '1' }); \u002F\u002F custom body, status, headers\n};\n",[10518],{"type":45,"tag":69,"props":10519,"children":10520},{"__ignoreMap":66},[10521,10529,10597,10605,10613,10621,10629,10637,10645,10653,10661,10668,10748,10755,10805,10867,10874,10881,10914,10953,10986,11051,11058,11065,11073,11131,11144,11157,11170,11183],{"type":45,"tag":73,"props":10522,"children":10523},{"class":75,"line":76},[10524],{"type":45,"tag":73,"props":10525,"children":10526},{"style":80},[10527],{"type":51,"value":10528},"\u002F\u002F src\u002Fmain.js (or src\u002Fmain.ts)\n",{"type":45,"tag":73,"props":10530,"children":10531},{"class":75,"line":86},[10532,10537,10542,10547,10552,10557,10561,10566,10570,10575,10579,10584,10589,10593],{"type":45,"tag":73,"props":10533,"children":10534},{"style":209},[10535],{"type":51,"value":10536},"export",{"type":45,"tag":73,"props":10538,"children":10539},{"style":209},[10540],{"type":51,"value":10541}," default",{"type":45,"tag":73,"props":10543,"children":10544},{"style":407},[10545],{"type":51,"value":10546}," async",{"type":45,"tag":73,"props":10548,"children":10549},{"style":215},[10550],{"type":51,"value":10551}," ({",{"type":45,"tag":73,"props":10553,"children":10554},{"style":2007},[10555],{"type":51,"value":10556}," req",{"type":45,"tag":73,"props":10558,"children":10559},{"style":215},[10560],{"type":51,"value":229},{"type":45,"tag":73,"props":10562,"children":10563},{"style":2007},[10564],{"type":51,"value":10565}," res",{"type":45,"tag":73,"props":10567,"children":10568},{"style":215},[10569],{"type":51,"value":229},{"type":45,"tag":73,"props":10571,"children":10572},{"style":2007},[10573],{"type":51,"value":10574}," log",{"type":45,"tag":73,"props":10576,"children":10577},{"style":215},[10578],{"type":51,"value":229},{"type":45,"tag":73,"props":10580,"children":10581},{"style":2007},[10582],{"type":51,"value":10583}," error",{"type":45,"tag":73,"props":10585,"children":10586},{"style":215},[10587],{"type":51,"value":10588}," })",{"type":45,"tag":73,"props":10590,"children":10591},{"style":407},[10592],{"type":51,"value":9412},{"type":45,"tag":73,"props":10594,"children":10595},{"style":215},[10596],{"type":51,"value":1632},{"type":45,"tag":73,"props":10598,"children":10599},{"class":75,"line":107},[10600],{"type":45,"tag":73,"props":10601,"children":10602},{"style":80},[10603],{"type":51,"value":10604},"    \u002F\u002F Request properties\n",{"type":45,"tag":73,"props":10606,"children":10607},{"class":75,"line":117},[10608],{"type":45,"tag":73,"props":10609,"children":10610},{"style":80},[10611],{"type":51,"value":10612},"    \u002F\u002F req.body        — raw request body (string)\n",{"type":45,"tag":73,"props":10614,"children":10615},{"class":75,"line":126},[10616],{"type":45,"tag":73,"props":10617,"children":10618},{"style":80},[10619],{"type":51,"value":10620},"    \u002F\u002F req.bodyJson    — parsed JSON body (object, or undefined if not JSON)\n",{"type":45,"tag":73,"props":10622,"children":10623},{"class":75,"line":143},[10624],{"type":45,"tag":73,"props":10625,"children":10626},{"style":80},[10627],{"type":51,"value":10628},"    \u002F\u002F req.headers     — request headers (object)\n",{"type":45,"tag":73,"props":10630,"children":10631},{"class":75,"line":151},[10632],{"type":45,"tag":73,"props":10633,"children":10634},{"style":80},[10635],{"type":51,"value":10636},"    \u002F\u002F req.method      — HTTP method (GET, POST, PUT, DELETE, PATCH)\n",{"type":45,"tag":73,"props":10638,"children":10639},{"class":75,"line":160},[10640],{"type":45,"tag":73,"props":10641,"children":10642},{"style":80},[10643],{"type":51,"value":10644},"    \u002F\u002F req.path        — URL path (e.g. '\u002Fhello')\n",{"type":45,"tag":73,"props":10646,"children":10647},{"class":75,"line":474},[10648],{"type":45,"tag":73,"props":10649,"children":10650},{"style":80},[10651],{"type":51,"value":10652},"    \u002F\u002F req.query       — parsed query parameters (object)\n",{"type":45,"tag":73,"props":10654,"children":10655},{"class":75,"line":988},[10656],{"type":45,"tag":73,"props":10657,"children":10658},{"style":80},[10659],{"type":51,"value":10660},"    \u002F\u002F req.queryString — raw query string\n",{"type":45,"tag":73,"props":10662,"children":10663},{"class":75,"line":996},[10664],{"type":45,"tag":73,"props":10665,"children":10666},{"emptyLinePlaceholder":111},[10667],{"type":51,"value":114},{"type":45,"tag":73,"props":10669,"children":10670},{"class":75,"line":1005},[10671,10676,10680,10684,10689,10693,10698,10702,10706,10711,10715,10719,10723,10727,10731,10735,10740,10744],{"type":45,"tag":73,"props":10672,"children":10673},{"style":428},[10674],{"type":51,"value":10675},"    log",{"type":45,"tag":73,"props":10677,"children":10678},{"style":854},[10679],{"type":51,"value":453},{"type":45,"tag":73,"props":10681,"children":10682},{"style":215},[10683],{"type":51,"value":294},{"type":45,"tag":73,"props":10685,"children":10686},{"style":96},[10687],{"type":51,"value":10688},"Processing request: ",{"type":45,"tag":73,"props":10690,"children":10691},{"style":215},[10692],{"type":51,"value":294},{"type":45,"tag":73,"props":10694,"children":10695},{"style":215},[10696],{"type":51,"value":10697}," +",{"type":45,"tag":73,"props":10699,"children":10700},{"style":221},[10701],{"type":51,"value":10556},{"type":45,"tag":73,"props":10703,"children":10704},{"style":215},[10705],{"type":51,"value":699},{"type":45,"tag":73,"props":10707,"children":10708},{"style":221},[10709],{"type":51,"value":10710},"method",{"type":45,"tag":73,"props":10712,"children":10713},{"style":215},[10714],{"type":51,"value":10697},{"type":45,"tag":73,"props":10716,"children":10717},{"style":215},[10718],{"type":51,"value":285},{"type":45,"tag":73,"props":10720,"children":10721},{"style":215},[10722],{"type":51,"value":285},{"type":45,"tag":73,"props":10724,"children":10725},{"style":215},[10726],{"type":51,"value":10697},{"type":45,"tag":73,"props":10728,"children":10729},{"style":221},[10730],{"type":51,"value":10556},{"type":45,"tag":73,"props":10732,"children":10733},{"style":215},[10734],{"type":51,"value":699},{"type":45,"tag":73,"props":10736,"children":10737},{"style":221},[10738],{"type":51,"value":10739},"path",{"type":45,"tag":73,"props":10741,"children":10742},{"style":854},[10743],{"type":51,"value":506},{"type":45,"tag":73,"props":10745,"children":10746},{"style":215},[10747],{"type":51,"value":299},{"type":45,"tag":73,"props":10749,"children":10750},{"class":75,"line":1048},[10751],{"type":45,"tag":73,"props":10752,"children":10753},{"emptyLinePlaceholder":111},[10754],{"type":51,"value":114},{"type":45,"tag":73,"props":10756,"children":10757},{"class":75,"line":1076},[10758,10762,10766,10771,10775,10779,10784,10788,10793,10797,10801],{"type":45,"tag":73,"props":10759,"children":10760},{"style":209},[10761],{"type":51,"value":2404},{"type":45,"tag":73,"props":10763,"children":10764},{"style":854},[10765],{"type":51,"value":2409},{"type":45,"tag":73,"props":10767,"children":10768},{"style":221},[10769],{"type":51,"value":10770},"req",{"type":45,"tag":73,"props":10772,"children":10773},{"style":215},[10774],{"type":51,"value":699},{"type":45,"tag":73,"props":10776,"children":10777},{"style":221},[10778],{"type":51,"value":10710},{"type":45,"tag":73,"props":10780,"children":10781},{"style":215},[10782],{"type":51,"value":10783}," ===",{"type":45,"tag":73,"props":10785,"children":10786},{"style":215},[10787],{"type":51,"value":285},{"type":45,"tag":73,"props":10789,"children":10790},{"style":96},[10791],{"type":51,"value":10792},"GET",{"type":45,"tag":73,"props":10794,"children":10795},{"style":215},[10796],{"type":51,"value":294},{"type":45,"tag":73,"props":10798,"children":10799},{"style":854},[10800],{"type":51,"value":2446},{"type":45,"tag":73,"props":10802,"children":10803},{"style":215},[10804],{"type":51,"value":848},{"type":45,"tag":73,"props":10806,"children":10807},{"class":75,"line":1100},[10808,10813,10817,10821,10825,10829,10833,10838,10842,10846,10851,10855,10859,10863],{"type":45,"tag":73,"props":10809,"children":10810},{"style":209},[10811],{"type":51,"value":10812},"        return",{"type":45,"tag":73,"props":10814,"children":10815},{"style":221},[10816],{"type":51,"value":10565},{"type":45,"tag":73,"props":10818,"children":10819},{"style":215},[10820],{"type":51,"value":699},{"type":45,"tag":73,"props":10822,"children":10823},{"style":428},[10824],{"type":51,"value":1594},{"type":45,"tag":73,"props":10826,"children":10827},{"style":854},[10828],{"type":51,"value":453},{"type":45,"tag":73,"props":10830,"children":10831},{"style":215},[10832],{"type":51,"value":1426},{"type":45,"tag":73,"props":10834,"children":10835},{"style":854},[10836],{"type":51,"value":10837}," message",{"type":45,"tag":73,"props":10839,"children":10840},{"style":215},[10841],{"type":51,"value":862},{"type":45,"tag":73,"props":10843,"children":10844},{"style":215},[10845],{"type":51,"value":285},{"type":45,"tag":73,"props":10847,"children":10848},{"style":96},[10849],{"type":51,"value":10850},"Hello from Appwrite Function!",{"type":45,"tag":73,"props":10852,"children":10853},{"style":215},[10854],{"type":51,"value":294},{"type":45,"tag":73,"props":10856,"children":10857},{"style":215},[10858],{"type":51,"value":275},{"type":45,"tag":73,"props":10860,"children":10861},{"style":854},[10862],{"type":51,"value":506},{"type":45,"tag":73,"props":10864,"children":10865},{"style":215},[10866],{"type":51,"value":299},{"type":45,"tag":73,"props":10868,"children":10869},{"class":75,"line":1116},[10870],{"type":45,"tag":73,"props":10871,"children":10872},{"style":215},[10873],{"type":51,"value":9516},{"type":45,"tag":73,"props":10875,"children":10876},{"class":75,"line":1124},[10877],{"type":45,"tag":73,"props":10878,"children":10879},{"emptyLinePlaceholder":111},[10880],{"type":51,"value":114},{"type":45,"tag":73,"props":10882,"children":10883},{"class":75,"line":1133},[10884,10888,10893,10897,10901,10905,10910],{"type":45,"tag":73,"props":10885,"children":10886},{"style":407},[10887],{"type":51,"value":2042},{"type":45,"tag":73,"props":10889,"children":10890},{"style":221},[10891],{"type":51,"value":10892}," data",{"type":45,"tag":73,"props":10894,"children":10895},{"style":215},[10896],{"type":51,"value":2052},{"type":45,"tag":73,"props":10898,"children":10899},{"style":221},[10900],{"type":51,"value":10556},{"type":45,"tag":73,"props":10902,"children":10903},{"style":215},[10904],{"type":51,"value":699},{"type":45,"tag":73,"props":10906,"children":10907},{"style":221},[10908],{"type":51,"value":10909},"bodyJson",{"type":45,"tag":73,"props":10911,"children":10912},{"style":215},[10913],{"type":51,"value":299},{"type":45,"tag":73,"props":10915,"children":10916},{"class":75,"line":1159},[10917,10921,10925,10930,10935,10940,10945,10949],{"type":45,"tag":73,"props":10918,"children":10919},{"style":209},[10920],{"type":51,"value":2404},{"type":45,"tag":73,"props":10922,"children":10923},{"style":854},[10924],{"type":51,"value":2409},{"type":45,"tag":73,"props":10926,"children":10927},{"style":215},[10928],{"type":51,"value":10929},"!",{"type":45,"tag":73,"props":10931,"children":10932},{"style":221},[10933],{"type":51,"value":10934},"data",{"type":45,"tag":73,"props":10936,"children":10937},{"style":215},[10938],{"type":51,"value":10939},"?.",{"type":45,"tag":73,"props":10941,"children":10942},{"style":221},[10943],{"type":51,"value":10944},"name",{"type":45,"tag":73,"props":10946,"children":10947},{"style":854},[10948],{"type":51,"value":2446},{"type":45,"tag":73,"props":10950,"children":10951},{"style":215},[10952],{"type":51,"value":848},{"type":45,"tag":73,"props":10954,"children":10955},{"class":75,"line":1190},[10956,10961,10965,10969,10974,10978,10982],{"type":45,"tag":73,"props":10957,"children":10958},{"style":428},[10959],{"type":51,"value":10960},"        error",{"type":45,"tag":73,"props":10962,"children":10963},{"style":854},[10964],{"type":51,"value":453},{"type":45,"tag":73,"props":10966,"children":10967},{"style":215},[10968],{"type":51,"value":294},{"type":45,"tag":73,"props":10970,"children":10971},{"style":96},[10972],{"type":51,"value":10973},"Missing name field",{"type":45,"tag":73,"props":10975,"children":10976},{"style":215},[10977],{"type":51,"value":294},{"type":45,"tag":73,"props":10979,"children":10980},{"style":854},[10981],{"type":51,"value":506},{"type":45,"tag":73,"props":10983,"children":10984},{"style":215},[10985],{"type":51,"value":299},{"type":45,"tag":73,"props":10987,"children":10988},{"class":75,"line":1220},[10989,10993,10997,11001,11005,11009,11013,11017,11021,11025,11030,11034,11038,11043,11047],{"type":45,"tag":73,"props":10990,"children":10991},{"style":209},[10992],{"type":51,"value":10812},{"type":45,"tag":73,"props":10994,"children":10995},{"style":221},[10996],{"type":51,"value":10565},{"type":45,"tag":73,"props":10998,"children":10999},{"style":215},[11000],{"type":51,"value":699},{"type":45,"tag":73,"props":11002,"children":11003},{"style":428},[11004],{"type":51,"value":1594},{"type":45,"tag":73,"props":11006,"children":11007},{"style":854},[11008],{"type":51,"value":453},{"type":45,"tag":73,"props":11010,"children":11011},{"style":215},[11012],{"type":51,"value":1426},{"type":45,"tag":73,"props":11014,"children":11015},{"style":854},[11016],{"type":51,"value":10583},{"type":45,"tag":73,"props":11018,"children":11019},{"style":215},[11020],{"type":51,"value":862},{"type":45,"tag":73,"props":11022,"children":11023},{"style":215},[11024],{"type":51,"value":285},{"type":45,"tag":73,"props":11026,"children":11027},{"style":96},[11028],{"type":51,"value":11029},"Name is required",{"type":45,"tag":73,"props":11031,"children":11032},{"style":215},[11033],{"type":51,"value":294},{"type":45,"tag":73,"props":11035,"children":11036},{"style":215},[11037],{"type":51,"value":5116},{"type":45,"tag":73,"props":11039,"children":11040},{"style":3108},[11041],{"type":51,"value":11042}," 400",{"type":45,"tag":73,"props":11044,"children":11045},{"style":854},[11046],{"type":51,"value":506},{"type":45,"tag":73,"props":11048,"children":11049},{"style":215},[11050],{"type":51,"value":299},{"type":45,"tag":73,"props":11052,"children":11053},{"class":75,"line":1250},[11054],{"type":45,"tag":73,"props":11055,"children":11056},{"style":215},[11057],{"type":51,"value":9516},{"type":45,"tag":73,"props":11059,"children":11060},{"class":75,"line":29},[11061],{"type":45,"tag":73,"props":11062,"children":11063},{"emptyLinePlaceholder":111},[11064],{"type":51,"value":114},{"type":45,"tag":73,"props":11066,"children":11067},{"class":75,"line":1323},[11068],{"type":45,"tag":73,"props":11069,"children":11070},{"style":80},[11071],{"type":51,"value":11072},"    \u002F\u002F Response methods\n",{"type":45,"tag":73,"props":11074,"children":11075},{"class":75,"line":1331},[11076,11081,11085,11089,11093,11097,11101,11106,11110,11114,11118,11122,11126],{"type":45,"tag":73,"props":11077,"children":11078},{"style":209},[11079],{"type":51,"value":11080},"    return",{"type":45,"tag":73,"props":11082,"children":11083},{"style":221},[11084],{"type":51,"value":10565},{"type":45,"tag":73,"props":11086,"children":11087},{"style":215},[11088],{"type":51,"value":699},{"type":45,"tag":73,"props":11090,"children":11091},{"style":428},[11092],{"type":51,"value":1594},{"type":45,"tag":73,"props":11094,"children":11095},{"style":854},[11096],{"type":51,"value":453},{"type":45,"tag":73,"props":11098,"children":11099},{"style":215},[11100],{"type":51,"value":1426},{"type":45,"tag":73,"props":11102,"children":11103},{"style":854},[11104],{"type":51,"value":11105}," success",{"type":45,"tag":73,"props":11107,"children":11108},{"style":215},[11109],{"type":51,"value":862},{"type":45,"tag":73,"props":11111,"children":11112},{"style":2090},[11113],{"type":51,"value":2093},{"type":45,"tag":73,"props":11115,"children":11116},{"style":215},[11117],{"type":51,"value":275},{"type":45,"tag":73,"props":11119,"children":11120},{"style":854},[11121],{"type":51,"value":506},{"type":45,"tag":73,"props":11123,"children":11124},{"style":215},[11125],{"type":51,"value":2160},{"type":45,"tag":73,"props":11127,"children":11128},{"style":80},[11129],{"type":51,"value":11130},"                    \u002F\u002F JSON (sets Content-Type automatically)\n",{"type":45,"tag":73,"props":11132,"children":11133},{"class":75,"line":1340},[11134,11139],{"type":45,"tag":73,"props":11135,"children":11136},{"style":80},[11137],{"type":51,"value":11138},"    \u002F\u002F return res.text('Hello');",{"type":45,"tag":73,"props":11140,"children":11141},{"style":80},[11142],{"type":51,"value":11143},"                           \u002F\u002F plain text\n",{"type":45,"tag":73,"props":11145,"children":11146},{"class":75,"line":1382},[11147,11152],{"type":45,"tag":73,"props":11148,"children":11149},{"style":80},[11150],{"type":51,"value":11151},"    \u002F\u002F return res.empty();",{"type":45,"tag":73,"props":11153,"children":11154},{"style":80},[11155],{"type":51,"value":11156},"                                 \u002F\u002F 204 No Content\n",{"type":45,"tag":73,"props":11158,"children":11159},{"class":75,"line":1390},[11160,11165],{"type":45,"tag":73,"props":11161,"children":11162},{"style":80},[11163],{"type":51,"value":11164},"    \u002F\u002F return res.redirect('https:\u002F\u002Fexample.com');",{"type":45,"tag":73,"props":11166,"children":11167},{"style":80},[11168],{"type":51,"value":11169},"         \u002F\u002F 302 Redirect\n",{"type":45,"tag":73,"props":11171,"children":11172},{"class":75,"line":1399},[11173,11178],{"type":45,"tag":73,"props":11174,"children":11175},{"style":80},[11176],{"type":51,"value":11177},"    \u002F\u002F return res.send('data', 200, { 'X-Custom': '1' });",{"type":45,"tag":73,"props":11179,"children":11180},{"style":80},[11181],{"type":51,"value":11182}," \u002F\u002F custom body, status, headers\n",{"type":45,"tag":73,"props":11184,"children":11185},{"class":75,"line":2522},[11186],{"type":45,"tag":73,"props":11187,"children":11188},{"style":215},[11189],{"type":51,"value":11190},"};\n",{"type":45,"tag":182,"props":11192,"children":11194},{"id":11193},"server-side-rendering-ssr-authentication",[11195],{"type":51,"value":11196},"Server-Side Rendering (SSR) Authentication",{"type":45,"tag":1472,"props":11198,"children":11199},{},[11200,11202,11207,11208,11213],{"type":51,"value":11201},"SSR apps (Next.js, SvelteKit, Nuxt, Remix, Astro) use the ",{"type":45,"tag":1476,"props":11203,"children":11204},{},[11205],{"type":51,"value":11206},"server SDK",{"type":51,"value":2409},{"type":45,"tag":69,"props":11209,"children":11211},{"className":11210},[],[11212],{"type":51,"value":605},{"type":51,"value":11214},") to handle auth. You need two clients:",{"type":45,"tag":4750,"props":11216,"children":11217},{},[11218,11228],{"type":45,"tag":4754,"props":11219,"children":11220},{},[11221,11226],{"type":45,"tag":1476,"props":11222,"children":11223},{},[11224],{"type":51,"value":11225},"Admin client",{"type":51,"value":11227}," — uses an API key, creates sessions, bypasses rate limits (reusable singleton)",{"type":45,"tag":4754,"props":11229,"children":11230},{},[11231,11236],{"type":45,"tag":1476,"props":11232,"children":11233},{},[11234],{"type":51,"value":11235},"Session client",{"type":51,"value":11237}," — uses a session cookie, acts on behalf of a user (create per-request, never share)",{"type":45,"tag":61,"props":11239,"children":11241},{"className":190,"code":11240,"language":21,"meta":66,"style":66},"import { Client, Account, OAuthProvider } from 'node-appwrite';\n\n\u002F\u002F Admin client (reusable)\nconst adminClient = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]')\n    .setKey(process.env.APPWRITE_API_KEY);\n\n\u002F\u002F Session client (create per-request)\nconst sessionClient = new Client()\n    .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n    .setProject('[PROJECT_ID]');\n\nconst session = req.cookies['a_session_[PROJECT_ID]'];\nif (session) {\n    sessionClient.setSession(session);\n}\n",[11242],{"type":45,"tag":69,"props":11243,"children":11244},{"__ignoreMap":66},[11245,11300,11307,11315,11343,11374,11405,11440,11447,11455,11483,11514,11549,11556,11605,11622,11656],{"type":45,"tag":73,"props":11246,"children":11247},{"class":75,"line":76},[11248,11252,11256,11260,11264,11268,11272,11276,11280,11284,11288,11292,11296],{"type":45,"tag":73,"props":11249,"children":11250},{"style":209},[11251],{"type":51,"value":212},{"type":45,"tag":73,"props":11253,"children":11254},{"style":215},[11255],{"type":51,"value":218},{"type":45,"tag":73,"props":11257,"children":11258},{"style":221},[11259],{"type":51,"value":224},{"type":45,"tag":73,"props":11261,"children":11262},{"style":215},[11263],{"type":51,"value":229},{"type":45,"tag":73,"props":11265,"children":11266},{"style":221},[11267],{"type":51,"value":234},{"type":45,"tag":73,"props":11269,"children":11270},{"style":215},[11271],{"type":51,"value":229},{"type":45,"tag":73,"props":11273,"children":11274},{"style":221},[11275],{"type":51,"value":1174},{"type":45,"tag":73,"props":11277,"children":11278},{"style":215},[11279],{"type":51,"value":275},{"type":45,"tag":73,"props":11281,"children":11282},{"style":209},[11283],{"type":51,"value":280},{"type":45,"tag":73,"props":11285,"children":11286},{"style":215},[11287],{"type":51,"value":285},{"type":45,"tag":73,"props":11289,"children":11290},{"style":96},[11291],{"type":51,"value":605},{"type":45,"tag":73,"props":11293,"children":11294},{"style":215},[11295],{"type":51,"value":294},{"type":45,"tag":73,"props":11297,"children":11298},{"style":215},[11299],{"type":51,"value":299},{"type":45,"tag":73,"props":11301,"children":11302},{"class":75,"line":86},[11303],{"type":45,"tag":73,"props":11304,"children":11305},{"emptyLinePlaceholder":111},[11306],{"type":51,"value":114},{"type":45,"tag":73,"props":11308,"children":11309},{"class":75,"line":107},[11310],{"type":45,"tag":73,"props":11311,"children":11312},{"style":80},[11313],{"type":51,"value":11314},"\u002F\u002F Admin client (reusable)\n",{"type":45,"tag":73,"props":11316,"children":11317},{"class":75,"line":117},[11318,11322,11327,11331,11335,11339],{"type":45,"tag":73,"props":11319,"children":11320},{"style":407},[11321],{"type":51,"value":410},{"type":45,"tag":73,"props":11323,"children":11324},{"style":221},[11325],{"type":51,"value":11326}," adminClient ",{"type":45,"tag":73,"props":11328,"children":11329},{"style":215},[11330],{"type":51,"value":420},{"type":45,"tag":73,"props":11332,"children":11333},{"style":215},[11334],{"type":51,"value":425},{"type":45,"tag":73,"props":11336,"children":11337},{"style":428},[11338],{"type":51,"value":224},{"type":45,"tag":73,"props":11340,"children":11341},{"style":221},[11342],{"type":51,"value":435},{"type":45,"tag":73,"props":11344,"children":11345},{"class":75,"line":126},[11346,11350,11354,11358,11362,11366,11370],{"type":45,"tag":73,"props":11347,"children":11348},{"style":215},[11349],{"type":51,"value":443},{"type":45,"tag":73,"props":11351,"children":11352},{"style":428},[11353],{"type":51,"value":448},{"type":45,"tag":73,"props":11355,"children":11356},{"style":221},[11357],{"type":51,"value":453},{"type":45,"tag":73,"props":11359,"children":11360},{"style":215},[11361],{"type":51,"value":294},{"type":45,"tag":73,"props":11363,"children":11364},{"style":96},[11365],{"type":51,"value":462},{"type":45,"tag":73,"props":11367,"children":11368},{"style":215},[11369],{"type":51,"value":294},{"type":45,"tag":73,"props":11371,"children":11372},{"style":221},[11373],{"type":51,"value":471},{"type":45,"tag":73,"props":11375,"children":11376},{"class":75,"line":143},[11377,11381,11385,11389,11393,11397,11401],{"type":45,"tag":73,"props":11378,"children":11379},{"style":215},[11380],{"type":51,"value":443},{"type":45,"tag":73,"props":11382,"children":11383},{"style":428},[11384],{"type":51,"value":484},{"type":45,"tag":73,"props":11386,"children":11387},{"style":221},[11388],{"type":51,"value":453},{"type":45,"tag":73,"props":11390,"children":11391},{"style":215},[11392],{"type":51,"value":294},{"type":45,"tag":73,"props":11394,"children":11395},{"style":96},[11396],{"type":51,"value":497},{"type":45,"tag":73,"props":11398,"children":11399},{"style":215},[11400],{"type":51,"value":294},{"type":45,"tag":73,"props":11402,"children":11403},{"style":221},[11404],{"type":51,"value":471},{"type":45,"tag":73,"props":11406,"children":11407},{"class":75,"line":151},[11408,11412,11416,11420,11424,11428,11432,11436],{"type":45,"tag":73,"props":11409,"children":11410},{"style":215},[11411],{"type":51,"value":443},{"type":45,"tag":73,"props":11413,"children":11414},{"style":428},[11415],{"type":51,"value":725},{"type":45,"tag":73,"props":11417,"children":11418},{"style":221},[11419],{"type":51,"value":694},{"type":45,"tag":73,"props":11421,"children":11422},{"style":215},[11423],{"type":51,"value":699},{"type":45,"tag":73,"props":11425,"children":11426},{"style":221},[11427],{"type":51,"value":704},{"type":45,"tag":73,"props":11429,"children":11430},{"style":215},[11431],{"type":51,"value":699},{"type":45,"tag":73,"props":11433,"children":11434},{"style":221},[11435],{"type":51,"value":746},{"type":45,"tag":73,"props":11437,"children":11438},{"style":215},[11439],{"type":51,"value":299},{"type":45,"tag":73,"props":11441,"children":11442},{"class":75,"line":160},[11443],{"type":45,"tag":73,"props":11444,"children":11445},{"emptyLinePlaceholder":111},[11446],{"type":51,"value":114},{"type":45,"tag":73,"props":11448,"children":11449},{"class":75,"line":474},[11450],{"type":45,"tag":73,"props":11451,"children":11452},{"style":80},[11453],{"type":51,"value":11454},"\u002F\u002F Session client (create per-request)\n",{"type":45,"tag":73,"props":11456,"children":11457},{"class":75,"line":988},[11458,11462,11467,11471,11475,11479],{"type":45,"tag":73,"props":11459,"children":11460},{"style":407},[11461],{"type":51,"value":410},{"type":45,"tag":73,"props":11463,"children":11464},{"style":221},[11465],{"type":51,"value":11466}," sessionClient ",{"type":45,"tag":73,"props":11468,"children":11469},{"style":215},[11470],{"type":51,"value":420},{"type":45,"tag":73,"props":11472,"children":11473},{"style":215},[11474],{"type":51,"value":425},{"type":45,"tag":73,"props":11476,"children":11477},{"style":428},[11478],{"type":51,"value":224},{"type":45,"tag":73,"props":11480,"children":11481},{"style":221},[11482],{"type":51,"value":435},{"type":45,"tag":73,"props":11484,"children":11485},{"class":75,"line":996},[11486,11490,11494,11498,11502,11506,11510],{"type":45,"tag":73,"props":11487,"children":11488},{"style":215},[11489],{"type":51,"value":443},{"type":45,"tag":73,"props":11491,"children":11492},{"style":428},[11493],{"type":51,"value":448},{"type":45,"tag":73,"props":11495,"children":11496},{"style":221},[11497],{"type":51,"value":453},{"type":45,"tag":73,"props":11499,"children":11500},{"style":215},[11501],{"type":51,"value":294},{"type":45,"tag":73,"props":11503,"children":11504},{"style":96},[11505],{"type":51,"value":462},{"type":45,"tag":73,"props":11507,"children":11508},{"style":215},[11509],{"type":51,"value":294},{"type":45,"tag":73,"props":11511,"children":11512},{"style":221},[11513],{"type":51,"value":471},{"type":45,"tag":73,"props":11515,"children":11516},{"class":75,"line":1005},[11517,11521,11525,11529,11533,11537,11541,11545],{"type":45,"tag":73,"props":11518,"children":11519},{"style":215},[11520],{"type":51,"value":443},{"type":45,"tag":73,"props":11522,"children":11523},{"style":428},[11524],{"type":51,"value":484},{"type":45,"tag":73,"props":11526,"children":11527},{"style":221},[11528],{"type":51,"value":453},{"type":45,"tag":73,"props":11530,"children":11531},{"style":215},[11532],{"type":51,"value":294},{"type":45,"tag":73,"props":11534,"children":11535},{"style":96},[11536],{"type":51,"value":497},{"type":45,"tag":73,"props":11538,"children":11539},{"style":215},[11540],{"type":51,"value":294},{"type":45,"tag":73,"props":11542,"children":11543},{"style":221},[11544],{"type":51,"value":506},{"type":45,"tag":73,"props":11546,"children":11547},{"style":215},[11548],{"type":51,"value":299},{"type":45,"tag":73,"props":11550,"children":11551},{"class":75,"line":1048},[11552],{"type":45,"tag":73,"props":11553,"children":11554},{"emptyLinePlaceholder":111},[11555],{"type":51,"value":114},{"type":45,"tag":73,"props":11557,"children":11558},{"class":75,"line":1076},[11559,11563,11567,11571,11575,11579,11584,11588,11593,11597,11601],{"type":45,"tag":73,"props":11560,"children":11561},{"style":407},[11562],{"type":51,"value":410},{"type":45,"tag":73,"props":11564,"children":11565},{"style":221},[11566],{"type":51,"value":1015},{"type":45,"tag":73,"props":11568,"children":11569},{"style":215},[11570],{"type":51,"value":420},{"type":45,"tag":73,"props":11572,"children":11573},{"style":221},[11574],{"type":51,"value":10556},{"type":45,"tag":73,"props":11576,"children":11577},{"style":215},[11578],{"type":51,"value":699},{"type":45,"tag":73,"props":11580,"children":11581},{"style":221},[11582],{"type":51,"value":11583},"cookies[",{"type":45,"tag":73,"props":11585,"children":11586},{"style":215},[11587],{"type":51,"value":294},{"type":45,"tag":73,"props":11589,"children":11590},{"style":96},[11591],{"type":51,"value":11592},"a_session_[PROJECT_ID]",{"type":45,"tag":73,"props":11594,"children":11595},{"style":215},[11596],{"type":51,"value":294},{"type":45,"tag":73,"props":11598,"children":11599},{"style":221},[11600],{"type":51,"value":5702},{"type":45,"tag":73,"props":11602,"children":11603},{"style":215},[11604],{"type":51,"value":299},{"type":45,"tag":73,"props":11606,"children":11607},{"class":75,"line":1100},[11608,11613,11618],{"type":45,"tag":73,"props":11609,"children":11610},{"style":209},[11611],{"type":51,"value":11612},"if",{"type":45,"tag":73,"props":11614,"children":11615},{"style":221},[11616],{"type":51,"value":11617}," (session) ",{"type":45,"tag":73,"props":11619,"children":11620},{"style":215},[11621],{"type":51,"value":848},{"type":45,"tag":73,"props":11623,"children":11624},{"class":75,"line":1116},[11625,11630,11634,11639,11643,11648,11652],{"type":45,"tag":73,"props":11626,"children":11627},{"style":221},[11628],{"type":51,"value":11629},"    sessionClient",{"type":45,"tag":73,"props":11631,"children":11632},{"style":215},[11633],{"type":51,"value":699},{"type":45,"tag":73,"props":11635,"children":11636},{"style":428},[11637],{"type":51,"value":11638},"setSession",{"type":45,"tag":73,"props":11640,"children":11641},{"style":854},[11642],{"type":51,"value":453},{"type":45,"tag":73,"props":11644,"children":11645},{"style":221},[11646],{"type":51,"value":11647},"session",{"type":45,"tag":73,"props":11649,"children":11650},{"style":854},[11651],{"type":51,"value":506},{"type":45,"tag":73,"props":11653,"children":11654},{"style":215},[11655],{"type":51,"value":299},{"type":45,"tag":73,"props":11657,"children":11658},{"class":75,"line":1124},[11659],{"type":45,"tag":73,"props":11660,"children":11661},{"style":215},[11662],{"type":51,"value":1684},{"type":45,"tag":1507,"props":11664,"children":11666},{"id":11665},"emailpassword-login",[11667],{"type":51,"value":11668},"Email\u002FPassword Login",{"type":45,"tag":61,"props":11670,"children":11672},{"className":190,"code":11671,"language":21,"meta":66,"style":66},"app.post('\u002Flogin', async (req, res) => {\n    const account = new Account(adminClient);\n    const session = await account.createEmailPasswordSession({\n        email: req.body.email,\n        password: req.body.password,\n    });\n\n    \u002F\u002F Cookie name must be a_session_\u003CPROJECT_ID>\n    res.cookie('a_session_[PROJECT_ID]', session.secret, {\n        httpOnly: true,\n        secure: true,\n        sameSite: 'strict',\n        expires: new Date(session.expire),\n        path: '\u002F',\n    });\n\n    res.json({ success: true });\n});\n",[11673],{"type":45,"tag":69,"props":11674,"children":11675},{"__ignoreMap":66},[11676,11746,11786,11826,11863,11900,11915,11922,11930,11987,12007,12027,12056,12102,12131,12146,12153,12200],{"type":45,"tag":73,"props":11677,"children":11678},{"class":75,"line":76},[11679,11684,11688,11693,11697,11701,11706,11710,11714,11718,11722,11726,11730,11734,11738,11742],{"type":45,"tag":73,"props":11680,"children":11681},{"style":221},[11682],{"type":51,"value":11683},"app",{"type":45,"tag":73,"props":11685,"children":11686},{"style":215},[11687],{"type":51,"value":699},{"type":45,"tag":73,"props":11689,"children":11690},{"style":428},[11691],{"type":51,"value":11692},"post",{"type":45,"tag":73,"props":11694,"children":11695},{"style":221},[11696],{"type":51,"value":453},{"type":45,"tag":73,"props":11698,"children":11699},{"style":215},[11700],{"type":51,"value":294},{"type":45,"tag":73,"props":11702,"children":11703},{"style":96},[11704],{"type":51,"value":11705},"\u002Flogin",{"type":45,"tag":73,"props":11707,"children":11708},{"style":215},[11709],{"type":51,"value":294},{"type":45,"tag":73,"props":11711,"children":11712},{"style":215},[11713],{"type":51,"value":229},{"type":45,"tag":73,"props":11715,"children":11716},{"style":407},[11717],{"type":51,"value":10546},{"type":45,"tag":73,"props":11719,"children":11720},{"style":215},[11721],{"type":51,"value":2409},{"type":45,"tag":73,"props":11723,"children":11724},{"style":2007},[11725],{"type":51,"value":10770},{"type":45,"tag":73,"props":11727,"children":11728},{"style":215},[11729],{"type":51,"value":229},{"type":45,"tag":73,"props":11731,"children":11732},{"style":2007},[11733],{"type":51,"value":10565},{"type":45,"tag":73,"props":11735,"children":11736},{"style":215},[11737],{"type":51,"value":506},{"type":45,"tag":73,"props":11739,"children":11740},{"style":407},[11741],{"type":51,"value":9412},{"type":45,"tag":73,"props":11743,"children":11744},{"style":215},[11745],{"type":51,"value":1632},{"type":45,"tag":73,"props":11747,"children":11748},{"class":75,"line":86},[11749,11753,11757,11761,11765,11769,11773,11778,11782],{"type":45,"tag":73,"props":11750,"children":11751},{"style":407},[11752],{"type":51,"value":2042},{"type":45,"tag":73,"props":11754,"children":11755},{"style":221},[11756],{"type":51,"value":830},{"type":45,"tag":73,"props":11758,"children":11759},{"style":215},[11760],{"type":51,"value":2052},{"type":45,"tag":73,"props":11762,"children":11763},{"style":215},[11764],{"type":51,"value":425},{"type":45,"tag":73,"props":11766,"children":11767},{"style":428},[11768],{"type":51,"value":234},{"type":45,"tag":73,"props":11770,"children":11771},{"style":854},[11772],{"type":51,"value":453},{"type":45,"tag":73,"props":11774,"children":11775},{"style":221},[11776],{"type":51,"value":11777},"adminClient",{"type":45,"tag":73,"props":11779,"children":11780},{"style":854},[11781],{"type":51,"value":506},{"type":45,"tag":73,"props":11783,"children":11784},{"style":215},[11785],{"type":51,"value":299},{"type":45,"tag":73,"props":11787,"children":11788},{"class":75,"line":107},[11789,11793,11798,11802,11806,11810,11814,11818,11822],{"type":45,"tag":73,"props":11790,"children":11791},{"style":407},[11792],{"type":51,"value":2042},{"type":45,"tag":73,"props":11794,"children":11795},{"style":221},[11796],{"type":51,"value":11797}," session",{"type":45,"tag":73,"props":11799,"children":11800},{"style":215},[11801],{"type":51,"value":2052},{"type":45,"tag":73,"props":11803,"children":11804},{"style":209},[11805],{"type":51,"value":1024},{"type":45,"tag":73,"props":11807,"children":11808},{"style":221},[11809],{"type":51,"value":830},{"type":45,"tag":73,"props":11811,"children":11812},{"style":215},[11813],{"type":51,"value":699},{"type":45,"tag":73,"props":11815,"children":11816},{"style":428},[11817],{"type":51,"value":1037},{"type":45,"tag":73,"props":11819,"children":11820},{"style":854},[11821],{"type":51,"value":453},{"type":45,"tag":73,"props":11823,"children":11824},{"style":215},[11825],{"type":51,"value":848},{"type":45,"tag":73,"props":11827,"children":11828},{"class":75,"line":117},[11829,11834,11838,11842,11846,11850,11854,11859],{"type":45,"tag":73,"props":11830,"children":11831},{"style":854},[11832],{"type":51,"value":11833},"        email",{"type":45,"tag":73,"props":11835,"children":11836},{"style":215},[11837],{"type":51,"value":862},{"type":45,"tag":73,"props":11839,"children":11840},{"style":221},[11841],{"type":51,"value":10556},{"type":45,"tag":73,"props":11843,"children":11844},{"style":215},[11845],{"type":51,"value":699},{"type":45,"tag":73,"props":11847,"children":11848},{"style":221},[11849],{"type":51,"value":5145},{"type":45,"tag":73,"props":11851,"children":11852},{"style":215},[11853],{"type":51,"value":699},{"type":45,"tag":73,"props":11855,"children":11856},{"style":221},[11857],{"type":51,"value":11858},"email",{"type":45,"tag":73,"props":11860,"children":11861},{"style":215},[11862],{"type":51,"value":885},{"type":45,"tag":73,"props":11864,"children":11865},{"class":75,"line":126},[11866,11871,11875,11879,11883,11887,11891,11896],{"type":45,"tag":73,"props":11867,"children":11868},{"style":854},[11869],{"type":51,"value":11870},"        password",{"type":45,"tag":73,"props":11872,"children":11873},{"style":215},[11874],{"type":51,"value":862},{"type":45,"tag":73,"props":11876,"children":11877},{"style":221},[11878],{"type":51,"value":10556},{"type":45,"tag":73,"props":11880,"children":11881},{"style":215},[11882],{"type":51,"value":699},{"type":45,"tag":73,"props":11884,"children":11885},{"style":221},[11886],{"type":51,"value":5145},{"type":45,"tag":73,"props":11888,"children":11889},{"style":215},[11890],{"type":51,"value":699},{"type":45,"tag":73,"props":11892,"children":11893},{"style":221},[11894],{"type":51,"value":11895},"password",{"type":45,"tag":73,"props":11897,"children":11898},{"style":215},[11899],{"type":51,"value":885},{"type":45,"tag":73,"props":11901,"children":11902},{"class":75,"line":143},[11903,11907,11911],{"type":45,"tag":73,"props":11904,"children":11905},{"style":215},[11906],{"type":51,"value":2298},{"type":45,"tag":73,"props":11908,"children":11909},{"style":854},[11910],{"type":51,"value":506},{"type":45,"tag":73,"props":11912,"children":11913},{"style":215},[11914],{"type":51,"value":299},{"type":45,"tag":73,"props":11916,"children":11917},{"class":75,"line":151},[11918],{"type":45,"tag":73,"props":11919,"children":11920},{"emptyLinePlaceholder":111},[11921],{"type":51,"value":114},{"type":45,"tag":73,"props":11923,"children":11924},{"class":75,"line":160},[11925],{"type":45,"tag":73,"props":11926,"children":11927},{"style":80},[11928],{"type":51,"value":11929},"    \u002F\u002F Cookie name must be a_session_\u003CPROJECT_ID>\n",{"type":45,"tag":73,"props":11931,"children":11932},{"class":75,"line":474},[11933,11938,11942,11947,11951,11955,11959,11963,11967,11971,11975,11979,11983],{"type":45,"tag":73,"props":11934,"children":11935},{"style":221},[11936],{"type":51,"value":11937},"    res",{"type":45,"tag":73,"props":11939,"children":11940},{"style":215},[11941],{"type":51,"value":699},{"type":45,"tag":73,"props":11943,"children":11944},{"style":428},[11945],{"type":51,"value":11946},"cookie",{"type":45,"tag":73,"props":11948,"children":11949},{"style":854},[11950],{"type":51,"value":453},{"type":45,"tag":73,"props":11952,"children":11953},{"style":215},[11954],{"type":51,"value":294},{"type":45,"tag":73,"props":11956,"children":11957},{"style":96},[11958],{"type":51,"value":11592},{"type":45,"tag":73,"props":11960,"children":11961},{"style":215},[11962],{"type":51,"value":294},{"type":45,"tag":73,"props":11964,"children":11965},{"style":215},[11966],{"type":51,"value":229},{"type":45,"tag":73,"props":11968,"children":11969},{"style":221},[11970],{"type":51,"value":11797},{"type":45,"tag":73,"props":11972,"children":11973},{"style":215},[11974],{"type":51,"value":699},{"type":45,"tag":73,"props":11976,"children":11977},{"style":221},[11978],{"type":51,"value":2570},{"type":45,"tag":73,"props":11980,"children":11981},{"style":215},[11982],{"type":51,"value":229},{"type":45,"tag":73,"props":11984,"children":11985},{"style":215},[11986],{"type":51,"value":1632},{"type":45,"tag":73,"props":11988,"children":11989},{"class":75,"line":988},[11990,11995,11999,12003],{"type":45,"tag":73,"props":11991,"children":11992},{"style":854},[11993],{"type":51,"value":11994},"        httpOnly",{"type":45,"tag":73,"props":11996,"children":11997},{"style":215},[11998],{"type":51,"value":862},{"type":45,"tag":73,"props":12000,"children":12001},{"style":2090},[12002],{"type":51,"value":2093},{"type":45,"tag":73,"props":12004,"children":12005},{"style":215},[12006],{"type":51,"value":885},{"type":45,"tag":73,"props":12008,"children":12009},{"class":75,"line":996},[12010,12015,12019,12023],{"type":45,"tag":73,"props":12011,"children":12012},{"style":854},[12013],{"type":51,"value":12014},"        secure",{"type":45,"tag":73,"props":12016,"children":12017},{"style":215},[12018],{"type":51,"value":862},{"type":45,"tag":73,"props":12020,"children":12021},{"style":2090},[12022],{"type":51,"value":2093},{"type":45,"tag":73,"props":12024,"children":12025},{"style":215},[12026],{"type":51,"value":885},{"type":45,"tag":73,"props":12028,"children":12029},{"class":75,"line":1005},[12030,12035,12039,12043,12048,12052],{"type":45,"tag":73,"props":12031,"children":12032},{"style":854},[12033],{"type":51,"value":12034},"        sameSite",{"type":45,"tag":73,"props":12036,"children":12037},{"style":215},[12038],{"type":51,"value":862},{"type":45,"tag":73,"props":12040,"children":12041},{"style":215},[12042],{"type":51,"value":285},{"type":45,"tag":73,"props":12044,"children":12045},{"style":96},[12046],{"type":51,"value":12047},"strict",{"type":45,"tag":73,"props":12049,"children":12050},{"style":215},[12051],{"type":51,"value":294},{"type":45,"tag":73,"props":12053,"children":12054},{"style":215},[12055],{"type":51,"value":885},{"type":45,"tag":73,"props":12057,"children":12058},{"class":75,"line":1048},[12059,12064,12068,12072,12077,12081,12085,12089,12094,12098],{"type":45,"tag":73,"props":12060,"children":12061},{"style":854},[12062],{"type":51,"value":12063},"        expires",{"type":45,"tag":73,"props":12065,"children":12066},{"style":215},[12067],{"type":51,"value":862},{"type":45,"tag":73,"props":12069,"children":12070},{"style":215},[12071],{"type":51,"value":425},{"type":45,"tag":73,"props":12073,"children":12074},{"style":428},[12075],{"type":51,"value":12076}," Date",{"type":45,"tag":73,"props":12078,"children":12079},{"style":854},[12080],{"type":51,"value":453},{"type":45,"tag":73,"props":12082,"children":12083},{"style":221},[12084],{"type":51,"value":11647},{"type":45,"tag":73,"props":12086,"children":12087},{"style":215},[12088],{"type":51,"value":699},{"type":45,"tag":73,"props":12090,"children":12091},{"style":221},[12092],{"type":51,"value":12093},"expire",{"type":45,"tag":73,"props":12095,"children":12096},{"style":854},[12097],{"type":51,"value":506},{"type":45,"tag":73,"props":12099,"children":12100},{"style":215},[12101],{"type":51,"value":885},{"type":45,"tag":73,"props":12103,"children":12104},{"class":75,"line":1076},[12105,12110,12114,12118,12123,12127],{"type":45,"tag":73,"props":12106,"children":12107},{"style":854},[12108],{"type":51,"value":12109},"        path",{"type":45,"tag":73,"props":12111,"children":12112},{"style":215},[12113],{"type":51,"value":862},{"type":45,"tag":73,"props":12115,"children":12116},{"style":215},[12117],{"type":51,"value":285},{"type":45,"tag":73,"props":12119,"children":12120},{"style":96},[12121],{"type":51,"value":12122},"\u002F",{"type":45,"tag":73,"props":12124,"children":12125},{"style":215},[12126],{"type":51,"value":294},{"type":45,"tag":73,"props":12128,"children":12129},{"style":215},[12130],{"type":51,"value":885},{"type":45,"tag":73,"props":12132,"children":12133},{"class":75,"line":1100},[12134,12138,12142],{"type":45,"tag":73,"props":12135,"children":12136},{"style":215},[12137],{"type":51,"value":2298},{"type":45,"tag":73,"props":12139,"children":12140},{"style":854},[12141],{"type":51,"value":506},{"type":45,"tag":73,"props":12143,"children":12144},{"style":215},[12145],{"type":51,"value":299},{"type":45,"tag":73,"props":12147,"children":12148},{"class":75,"line":1116},[12149],{"type":45,"tag":73,"props":12150,"children":12151},{"emptyLinePlaceholder":111},[12152],{"type":51,"value":114},{"type":45,"tag":73,"props":12154,"children":12155},{"class":75,"line":1124},[12156,12160,12164,12168,12172,12176,12180,12184,12188,12192,12196],{"type":45,"tag":73,"props":12157,"children":12158},{"style":221},[12159],{"type":51,"value":11937},{"type":45,"tag":73,"props":12161,"children":12162},{"style":215},[12163],{"type":51,"value":699},{"type":45,"tag":73,"props":12165,"children":12166},{"style":428},[12167],{"type":51,"value":1594},{"type":45,"tag":73,"props":12169,"children":12170},{"style":854},[12171],{"type":51,"value":453},{"type":45,"tag":73,"props":12173,"children":12174},{"style":215},[12175],{"type":51,"value":1426},{"type":45,"tag":73,"props":12177,"children":12178},{"style":854},[12179],{"type":51,"value":11105},{"type":45,"tag":73,"props":12181,"children":12182},{"style":215},[12183],{"type":51,"value":862},{"type":45,"tag":73,"props":12185,"children":12186},{"style":2090},[12187],{"type":51,"value":2093},{"type":45,"tag":73,"props":12189,"children":12190},{"style":215},[12191],{"type":51,"value":275},{"type":45,"tag":73,"props":12193,"children":12194},{"style":854},[12195],{"type":51,"value":506},{"type":45,"tag":73,"props":12197,"children":12198},{"style":215},[12199],{"type":51,"value":299},{"type":45,"tag":73,"props":12201,"children":12202},{"class":75,"line":1133},[12203,12207,12211],{"type":45,"tag":73,"props":12204,"children":12205},{"style":215},[12206],{"type":51,"value":977},{"type":45,"tag":73,"props":12208,"children":12209},{"style":221},[12210],{"type":51,"value":506},{"type":45,"tag":73,"props":12212,"children":12213},{"style":215},[12214],{"type":51,"value":299},{"type":45,"tag":1507,"props":12216,"children":12218},{"id":12217},"authenticated-requests",[12219],{"type":51,"value":12220},"Authenticated Requests",{"type":45,"tag":61,"props":12222,"children":12224},{"className":190,"code":12223,"language":21,"meta":66,"style":66},"app.get('\u002Fuser', async (req, res) => {\n    const session = req.cookies['a_session_[PROJECT_ID]'];\n    if (!session) return res.status(401).json({ error: 'Unauthorized' });\n\n    \u002F\u002F Create a fresh session client per request\n    const sessionClient = new Client()\n        .setEndpoint('https:\u002F\u002F\u003CREGION>.cloud.appwrite.io\u002Fv1')\n        .setProject('[PROJECT_ID]')\n        .setSession(session);\n\n    const account = new Account(sessionClient);\n    const user = await account.get();\n    res.json(user);\n});\n",[12225],{"type":45,"tag":69,"props":12226,"children":12227},{"__ignoreMap":66},[12228,12296,12349,12450,12457,12465,12493,12525,12556,12583,12590,12630,12670,12701],{"type":45,"tag":73,"props":12229,"children":12230},{"class":75,"line":76},[12231,12235,12239,12243,12247,12251,12256,12260,12264,12268,12272,12276,12280,12284,12288,12292],{"type":45,"tag":73,"props":12232,"children":12233},{"style":221},[12234],{"type":51,"value":11683},{"type":45,"tag":73,"props":12236,"children":12237},{"style":215},[12238],{"type":51,"value":699},{"type":45,"tag":73,"props":12240,"children":12241},{"style":428},[12242],{"type":51,"value":1371},{"type":45,"tag":73,"props":12244,"children":12245},{"style":221},[12246],{"type":51,"value":453},{"type":45,"tag":73,"props":12248,"children":12249},{"style":215},[12250],{"type":51,"value":294},{"type":45,"tag":73,"props":12252,"children":12253},{"style":96},[12254],{"type":51,"value":12255},"\u002Fuser",{"type":45,"tag":73,"props":12257,"children":12258},{"style":215},[12259],{"type":51,"value":294},{"type":45,"tag":73,"props":12261,"children":12262},{"style":215},[12263],{"type":51,"value":229},{"type":45,"tag":73,"props":12265,"children":12266},{"style":407},[12267],{"type":51,"value":10546},{"type":45,"tag":73,"props":12269,"children":12270},{"style":215},[12271],{"type":51,"value":2409},{"type":45,"tag":73,"props":12273,"children":12274},{"style":2007},[12275],{"type":51,"value":10770},{"type":45,"tag":73,"props":12277,"children":12278},{"style":215},[12279],{"type":51,"value":229},{"type":45,"tag":73,"props":12281,"children":12282},{"style":2007},[12283],{"type":51,"value":10565},{"type":45,"tag":73,"props":12285,"children":12286},{"style":215},[12287],{"type":51,"value":506},{"type":45,"tag":73,"props":12289,"children":12290},{"style":407},[12291],{"type":51,"value":9412},{"type":45,"tag":73,"props":12293,"children":12294},{"style":215},[12295],{"type":51,"value":1632},{"type":45,"tag":73,"props":12297,"children":12298},{"class":75,"line":86},[12299,12303,12307,12311,12315,12319,12324,12329,12333,12337,12341,12345],{"type":45,"tag":73,"props":12300,"children":12301},{"style":407},[12302],{"type":51,"value":2042},{"type":45,"tag":73,"props":12304,"children":12305},{"style":221},[12306],{"type":51,"value":11797},{"type":45,"tag":73,"props":12308,"children":12309},{"style":215},[12310],{"type":51,"value":2052},{"type":45,"tag":73,"props":12312,"children":12313},{"style":221},[12314],{"type":51,"value":10556},{"type":45,"tag":73,"props":12316,"children":12317},{"style":215},[12318],{"type":51,"value":699},{"type":45,"tag":73,"props":12320,"children":12321},{"style":221},[12322],{"type":51,"value":12323},"cookies",{"type":45,"tag":73,"props":12325,"children":12326},{"style":854},[12327],{"type":51,"value":12328},"[",{"type":45,"tag":73,"props":12330,"children":12331},{"style":215},[12332],{"type":51,"value":294},{"type":45,"tag":73,"props":12334,"children":12335},{"style":96},[12336],{"type":51,"value":11592},{"type":45,"tag":73,"props":12338,"children":12339},{"style":215},[12340],{"type":51,"value":294},{"type":45,"tag":73,"props":12342,"children":12343},{"style":854},[12344],{"type":51,"value":5702},{"type":45,"tag":73,"props":12346,"children":12347},{"style":215},[12348],{"type":51,"value":299},{"type":45,"tag":73,"props":12350,"children":12351},{"class":75,"line":107},[12352,12356,12360,12364,12368,12372,12376,12380,12384,12388,12392,12397,12401,12405,12409,12413,12417,12421,12425,12429,12434,12438,12442,12446],{"type":45,"tag":73,"props":12353,"children":12354},{"style":209},[12355],{"type":51,"value":2404},{"type":45,"tag":73,"props":12357,"children":12358},{"style":854},[12359],{"type":51,"value":2409},{"type":45,"tag":73,"props":12361,"children":12362},{"style":215},[12363],{"type":51,"value":10929},{"type":45,"tag":73,"props":12365,"children":12366},{"style":221},[12367],{"type":51,"value":11647},{"type":45,"tag":73,"props":12369,"children":12370},{"style":854},[12371],{"type":51,"value":2446},{"type":45,"tag":73,"props":12373,"children":12374},{"style":209},[12375],{"type":51,"value":2451},{"type":45,"tag":73,"props":12377,"children":12378},{"style":221},[12379],{"type":51,"value":10565},{"type":45,"tag":73,"props":12381,"children":12382},{"style":215},[12383],{"type":51,"value":699},{"type":45,"tag":73,"props":12385,"children":12386},{"style":428},[12387],{"type":51,"value":4040},{"type":45,"tag":73,"props":12389,"children":12390},{"style":854},[12391],{"type":51,"value":453},{"type":45,"tag":73,"props":12393,"children":12394},{"style":3108},[12395],{"type":51,"value":12396},"401",{"type":45,"tag":73,"props":12398,"children":12399},{"style":854},[12400],{"type":51,"value":506},{"type":45,"tag":73,"props":12402,"children":12403},{"style":215},[12404],{"type":51,"value":699},{"type":45,"tag":73,"props":12406,"children":12407},{"style":428},[12408],{"type":51,"value":1594},{"type":45,"tag":73,"props":12410,"children":12411},{"style":854},[12412],{"type":51,"value":453},{"type":45,"tag":73,"props":12414,"children":12415},{"style":215},[12416],{"type":51,"value":1426},{"type":45,"tag":73,"props":12418,"children":12419},{"style":854},[12420],{"type":51,"value":10583},{"type":45,"tag":73,"props":12422,"children":12423},{"style":215},[12424],{"type":51,"value":862},{"type":45,"tag":73,"props":12426,"children":12427},{"style":215},[12428],{"type":51,"value":285},{"type":45,"tag":73,"props":12430,"children":12431},{"style":96},[12432],{"type":51,"value":12433},"Unauthorized",{"type":45,"tag":73,"props":12435,"children":12436},{"style":215},[12437],{"type":51,"value":294},{"type":45,"tag":73,"props":12439,"children":12440},{"style":215},[12441],{"type":51,"value":275},{"type":45,"tag":73,"props":12443,"children":12444},{"style":854},[12445],{"type":51,"value":506},{"type":45,"tag":73,"props":12447,"children":12448},{"style":215},[12449],{"type":51,"value":299},{"type":45,"tag":73,"props":12451,"children":12452},{"class":75,"line":117},[12453],{"type":45,"tag":73,"props":12454,"children":12455},{"emptyLinePlaceholder":111},[12456],{"type":51,"value":114},{"type":45,"tag":73,"props":12458,"children":12459},{"class":75,"line":126},[12460],{"type":45,"tag":73,"props":12461,"children":12462},{"style":80},[12463],{"type":51,"value":12464},"    \u002F\u002F Create a fresh session client per request\n",{"type":45,"tag":73,"props":12466,"children":12467},{"class":75,"line":143},[12468,12472,12477,12481,12485,12489],{"type":45,"tag":73,"props":12469,"children":12470},{"style":407},[12471],{"type":51,"value":2042},{"type":45,"tag":73,"props":12473,"children":12474},{"style":221},[12475],{"type":51,"value":12476}," sessionClient",{"type":45,"tag":73,"props":12478,"children":12479},{"style":215},[12480],{"type":51,"value":2052},{"type":45,"tag":73,"props":12482,"children":12483},{"style":215},[12484],{"type":51,"value":425},{"type":45,"tag":73,"props":12486,"children":12487},{"style":428},[12488],{"type":51,"value":224},{"type":45,"tag":73,"props":12490,"children":12491},{"style":854},[12492],{"type":51,"value":435},{"type":45,"tag":73,"props":12494,"children":12495},{"class":75,"line":151},[12496,12501,12505,12509,12513,12517,12521],{"type":45,"tag":73,"props":12497,"children":12498},{"style":215},[12499],{"type":51,"value":12500},"        .",{"type":45,"tag":73,"props":12502,"children":12503},{"style":428},[12504],{"type":51,"value":448},{"type":45,"tag":73,"props":12506,"children":12507},{"style":854},[12508],{"type":51,"value":453},{"type":45,"tag":73,"props":12510,"children":12511},{"style":215},[12512],{"type":51,"value":294},{"type":45,"tag":73,"props":12514,"children":12515},{"style":96},[12516],{"type":51,"value":462},{"type":45,"tag":73,"props":12518,"children":12519},{"style":215},[12520],{"type":51,"value":294},{"type":45,"tag":73,"props":12522,"children":12523},{"style":854},[12524],{"type":51,"value":471},{"type":45,"tag":73,"props":12526,"children":12527},{"class":75,"line":160},[12528,12532,12536,12540,12544,12548,12552],{"type":45,"tag":73,"props":12529,"children":12530},{"style":215},[12531],{"type":51,"value":12500},{"type":45,"tag":73,"props":12533,"children":12534},{"style":428},[12535],{"type":51,"value":484},{"type":45,"tag":73,"props":12537,"children":12538},{"style":854},[12539],{"type":51,"value":453},{"type":45,"tag":73,"props":12541,"children":12542},{"style":215},[12543],{"type":51,"value":294},{"type":45,"tag":73,"props":12545,"children":12546},{"style":96},[12547],{"type":51,"value":497},{"type":45,"tag":73,"props":12549,"children":12550},{"style":215},[12551],{"type":51,"value":294},{"type":45,"tag":73,"props":12553,"children":12554},{"style":854},[12555],{"type":51,"value":471},{"type":45,"tag":73,"props":12557,"children":12558},{"class":75,"line":474},[12559,12563,12567,12571,12575,12579],{"type":45,"tag":73,"props":12560,"children":12561},{"style":215},[12562],{"type":51,"value":12500},{"type":45,"tag":73,"props":12564,"children":12565},{"style":428},[12566],{"type":51,"value":11638},{"type":45,"tag":73,"props":12568,"children":12569},{"style":854},[12570],{"type":51,"value":453},{"type":45,"tag":73,"props":12572,"children":12573},{"style":221},[12574],{"type":51,"value":11647},{"type":45,"tag":73,"props":12576,"children":12577},{"style":854},[12578],{"type":51,"value":506},{"type":45,"tag":73,"props":12580,"children":12581},{"style":215},[12582],{"type":51,"value":299},{"type":45,"tag":73,"props":12584,"children":12585},{"class":75,"line":988},[12586],{"type":45,"tag":73,"props":12587,"children":12588},{"emptyLinePlaceholder":111},[12589],{"type":51,"value":114},{"type":45,"tag":73,"props":12591,"children":12592},{"class":75,"line":996},[12593,12597,12601,12605,12609,12613,12617,12622,12626],{"type":45,"tag":73,"props":12594,"children":12595},{"style":407},[12596],{"type":51,"value":2042},{"type":45,"tag":73,"props":12598,"children":12599},{"style":221},[12600],{"type":51,"value":830},{"type":45,"tag":73,"props":12602,"children":12603},{"style":215},[12604],{"type":51,"value":2052},{"type":45,"tag":73,"props":12606,"children":12607},{"style":215},[12608],{"type":51,"value":425},{"type":45,"tag":73,"props":12610,"children":12611},{"style":428},[12612],{"type":51,"value":234},{"type":45,"tag":73,"props":12614,"children":12615},{"style":854},[12616],{"type":51,"value":453},{"type":45,"tag":73,"props":12618,"children":12619},{"style":221},[12620],{"type":51,"value":12621},"sessionClient",{"type":45,"tag":73,"props":12623,"children":12624},{"style":854},[12625],{"type":51,"value":506},{"type":45,"tag":73,"props":12627,"children":12628},{"style":215},[12629],{"type":51,"value":299},{"type":45,"tag":73,"props":12631,"children":12632},{"class":75,"line":1005},[12633,12637,12642,12646,12650,12654,12658,12662,12666],{"type":45,"tag":73,"props":12634,"children":12635},{"style":407},[12636],{"type":51,"value":2042},{"type":45,"tag":73,"props":12638,"children":12639},{"style":221},[12640],{"type":51,"value":12641}," user",{"type":45,"tag":73,"props":12643,"children":12644},{"style":215},[12645],{"type":51,"value":2052},{"type":45,"tag":73,"props":12647,"children":12648},{"style":209},[12649],{"type":51,"value":1024},{"type":45,"tag":73,"props":12651,"children":12652},{"style":221},[12653],{"type":51,"value":830},{"type":45,"tag":73,"props":12655,"children":12656},{"style":215},[12657],{"type":51,"value":699},{"type":45,"tag":73,"props":12659,"children":12660},{"style":428},[12661],{"type":51,"value":1371},{"type":45,"tag":73,"props":12663,"children":12664},{"style":854},[12665],{"type":51,"value":880},{"type":45,"tag":73,"props":12667,"children":12668},{"style":215},[12669],{"type":51,"value":299},{"type":45,"tag":73,"props":12671,"children":12672},{"class":75,"line":1048},[12673,12677,12681,12685,12689,12693,12697],{"type":45,"tag":73,"props":12674,"children":12675},{"style":221},[12676],{"type":51,"value":11937},{"type":45,"tag":73,"props":12678,"children":12679},{"style":215},[12680],{"type":51,"value":699},{"type":45,"tag":73,"props":12682,"children":12683},{"style":428},[12684],{"type":51,"value":1594},{"type":45,"tag":73,"props":12686,"children":12687},{"style":854},[12688],{"type":51,"value":453},{"type":45,"tag":73,"props":12690,"children":12691},{"style":221},[12692],{"type":51,"value":1291},{"type":45,"tag":73,"props":12694,"children":12695},{"style":854},[12696],{"type":51,"value":506},{"type":45,"tag":73,"props":12698,"children":12699},{"style":215},[12700],{"type":51,"value":299},{"type":45,"tag":73,"props":12702,"children":12703},{"class":75,"line":1076},[12704,12708,12712],{"type":45,"tag":73,"props":12705,"children":12706},{"style":215},[12707],{"type":51,"value":977},{"type":45,"tag":73,"props":12709,"children":12710},{"style":221},[12711],{"type":51,"value":506},{"type":45,"tag":73,"props":12713,"children":12714},{"style":215},[12715],{"type":51,"value":299},{"type":45,"tag":1507,"props":12717,"children":12719},{"id":12718},"oauth2-ssr-flow",[12720],{"type":51,"value":12721},"OAuth2 SSR Flow",{"type":45,"tag":61,"props":12723,"children":12725},{"className":190,"code":12724,"language":21,"meta":66,"style":66},"\u002F\u002F Step 1: Redirect to OAuth provider\napp.get('\u002Foauth', async (req, res) => {\n    const account = new Account(adminClient);\n    const redirectUrl = await account.createOAuth2Token({\n        provider: OAuthProvider.Github,\n        success: 'https:\u002F\u002Fexample.com\u002Foauth\u002Fsuccess',\n        failure: 'https:\u002F\u002Fexample.com\u002Foauth\u002Ffailure',\n    });\n    res.redirect(redirectUrl);\n});\n\n\u002F\u002F Step 2: Handle callback — exchange token for session\napp.get('\u002Foauth\u002Fsuccess', async (req, res) => {\n    const account = new Account(adminClient);\n    const session = await account.createSession({\n        userId: req.query.userId,\n        secret: req.query.secret,\n    });\n\n    res.cookie('a_session_[PROJECT_ID]', session.secret, {\n        httpOnly: true, secure: true, sameSite: 'strict',\n        expires: new Date(session.expire), path: '\u002F',\n    });\n    res.json({ success: true });\n});\n",[12726],{"type":45,"tag":69,"props":12727,"children":12728},{"__ignoreMap":66},[12729,12737,12805,12844,12884,12911,12939,12967,12982,13015,13030,13037,13045,13113,13152,13191,13228,13264,13279,13286,13341,13402,13470,13485,13532],{"type":45,"tag":73,"props":12730,"children":12731},{"class":75,"line":76},[12732],{"type":45,"tag":73,"props":12733,"children":12734},{"style":80},[12735],{"type":51,"value":12736},"\u002F\u002F Step 1: Redirect to OAuth provider\n",{"type":45,"tag":73,"props":12738,"children":12739},{"class":75,"line":86},[12740,12744,12748,12752,12756,12760,12765,12769,12773,12777,12781,12785,12789,12793,12797,12801],{"type":45,"tag":73,"props":12741,"children":12742},{"style":221},[12743],{"type":51,"value":11683},{"type":45,"tag":73,"props":12745,"children":12746},{"style":215},[12747],{"type":51,"value":699},{"type":45,"tag":73,"props":12749,"children":12750},{"style":428},[12751],{"type":51,"value":1371},{"type":45,"tag":73,"props":12753,"children":12754},{"style":221},[12755],{"type":51,"value":453},{"type":45,"tag":73,"props":12757,"children":12758},{"style":215},[12759],{"type":51,"value":294},{"type":45,"tag":73,"props":12761,"children":12762},{"style":96},[12763],{"type":51,"value":12764},"\u002Foauth",{"type":45,"tag":73,"props":12766,"children":12767},{"style":215},[12768],{"type":51,"value":294},{"type":45,"tag":73,"props":12770,"children":12771},{"style":215},[12772],{"type":51,"value":229},{"type":45,"tag":73,"props":12774,"children":12775},{"style":407},[12776],{"type":51,"value":10546},{"type":45,"tag":73,"props":12778,"children":12779},{"style":215},[12780],{"type":51,"value":2409},{"type":45,"tag":73,"props":12782,"children":12783},{"style":2007},[12784],{"type":51,"value":10770},{"type":45,"tag":73,"props":12786,"children":12787},{"style":215},[12788],{"type":51,"value":229},{"type":45,"tag":73,"props":12790,"children":12791},{"style":2007},[12792],{"type":51,"value":10565},{"type":45,"tag":73,"props":12794,"children":12795},{"style":215},[12796],{"type":51,"value":506},{"type":45,"tag":73,"props":12798,"children":12799},{"style":407},[12800],{"type":51,"value":9412},{"type":45,"tag":73,"props":12802,"children":12803},{"style":215},[12804],{"type":51,"value":1632},{"type":45,"tag":73,"props":12806,"children":12807},{"class":75,"line":107},[12808,12812,12816,12820,12824,12828,12832,12836,12840],{"type":45,"tag":73,"props":12809,"children":12810},{"style":407},[12811],{"type":51,"value":2042},{"type":45,"tag":73,"props":12813,"children":12814},{"style":221},[12815],{"type":51,"value":830},{"type":45,"tag":73,"props":12817,"children":12818},{"style":215},[12819],{"type":51,"value":2052},{"type":45,"tag":73,"props":12821,"children":12822},{"style":215},[12823],{"type":51,"value":425},{"type":45,"tag":73,"props":12825,"children":12826},{"style":428},[12827],{"type":51,"value":234},{"type":45,"tag":73,"props":12829,"children":12830},{"style":854},[12831],{"type":51,"value":453},{"type":45,"tag":73,"props":12833,"children":12834},{"style":221},[12835],{"type":51,"value":11777},{"type":45,"tag":73,"props":12837,"children":12838},{"style":854},[12839],{"type":51,"value":506},{"type":45,"tag":73,"props":12841,"children":12842},{"style":215},[12843],{"type":51,"value":299},{"type":45,"tag":73,"props":12845,"children":12846},{"class":75,"line":117},[12847,12851,12856,12860,12864,12868,12872,12876,12880],{"type":45,"tag":73,"props":12848,"children":12849},{"style":407},[12850],{"type":51,"value":2042},{"type":45,"tag":73,"props":12852,"children":12853},{"style":221},[12854],{"type":51,"value":12855}," redirectUrl",{"type":45,"tag":73,"props":12857,"children":12858},{"style":215},[12859],{"type":51,"value":2052},{"type":45,"tag":73,"props":12861,"children":12862},{"style":209},[12863],{"type":51,"value":1024},{"type":45,"tag":73,"props":12865,"children":12866},{"style":221},[12867],{"type":51,"value":830},{"type":45,"tag":73,"props":12869,"children":12870},{"style":215},[12871],{"type":51,"value":699},{"type":45,"tag":73,"props":12873,"children":12874},{"style":428},[12875],{"type":51,"value":2213},{"type":45,"tag":73,"props":12877,"children":12878},{"style":854},[12879],{"type":51,"value":453},{"type":45,"tag":73,"props":12881,"children":12882},{"style":215},[12883],{"type":51,"value":848},{"type":45,"tag":73,"props":12885,"children":12886},{"class":75,"line":126},[12887,12891,12895,12899,12903,12907],{"type":45,"tag":73,"props":12888,"children":12889},{"style":854},[12890],{"type":51,"value":2229},{"type":45,"tag":73,"props":12892,"children":12893},{"style":215},[12894],{"type":51,"value":862},{"type":45,"tag":73,"props":12896,"children":12897},{"style":221},[12898],{"type":51,"value":1174},{"type":45,"tag":73,"props":12900,"children":12901},{"style":215},[12902],{"type":51,"value":699},{"type":45,"tag":73,"props":12904,"children":12905},{"style":221},[12906],{"type":51,"value":1183},{"type":45,"tag":73,"props":12908,"children":12909},{"style":215},[12910],{"type":51,"value":885},{"type":45,"tag":73,"props":12912,"children":12913},{"class":75,"line":143},[12914,12918,12922,12926,12931,12935],{"type":45,"tag":73,"props":12915,"children":12916},{"style":854},[12917],{"type":51,"value":2241},{"type":45,"tag":73,"props":12919,"children":12920},{"style":215},[12921],{"type":51,"value":862},{"type":45,"tag":73,"props":12923,"children":12924},{"style":215},[12925],{"type":51,"value":285},{"type":45,"tag":73,"props":12927,"children":12928},{"style":96},[12929],{"type":51,"value":12930},"https:\u002F\u002Fexample.com\u002Foauth\u002Fsuccess",{"type":45,"tag":73,"props":12932,"children":12933},{"style":215},[12934],{"type":51,"value":294},{"type":45,"tag":73,"props":12936,"children":12937},{"style":215},[12938],{"type":51,"value":885},{"type":45,"tag":73,"props":12940,"children":12941},{"class":75,"line":151},[12942,12946,12950,12954,12959,12963],{"type":45,"tag":73,"props":12943,"children":12944},{"style":854},[12945],{"type":51,"value":2270},{"type":45,"tag":73,"props":12947,"children":12948},{"style":215},[12949],{"type":51,"value":862},{"type":45,"tag":73,"props":12951,"children":12952},{"style":215},[12953],{"type":51,"value":285},{"type":45,"tag":73,"props":12955,"children":12956},{"style":96},[12957],{"type":51,"value":12958},"https:\u002F\u002Fexample.com\u002Foauth\u002Ffailure",{"type":45,"tag":73,"props":12960,"children":12961},{"style":215},[12962],{"type":51,"value":294},{"type":45,"tag":73,"props":12964,"children":12965},{"style":215},[12966],{"type":51,"value":885},{"type":45,"tag":73,"props":12968,"children":12969},{"class":75,"line":160},[12970,12974,12978],{"type":45,"tag":73,"props":12971,"children":12972},{"style":215},[12973],{"type":51,"value":2298},{"type":45,"tag":73,"props":12975,"children":12976},{"style":854},[12977],{"type":51,"value":506},{"type":45,"tag":73,"props":12979,"children":12980},{"style":215},[12981],{"type":51,"value":299},{"type":45,"tag":73,"props":12983,"children":12984},{"class":75,"line":474},[12985,12989,12993,12998,13002,13007,13011],{"type":45,"tag":73,"props":12986,"children":12987},{"style":221},[12988],{"type":51,"value":11937},{"type":45,"tag":73,"props":12990,"children":12991},{"style":215},[12992],{"type":51,"value":699},{"type":45,"tag":73,"props":12994,"children":12995},{"style":428},[12996],{"type":51,"value":12997},"redirect",{"type":45,"tag":73,"props":12999,"children":13000},{"style":854},[13001],{"type":51,"value":453},{"type":45,"tag":73,"props":13003,"children":13004},{"style":221},[13005],{"type":51,"value":13006},"redirectUrl",{"type":45,"tag":73,"props":13008,"children":13009},{"style":854},[13010],{"type":51,"value":506},{"type":45,"tag":73,"props":13012,"children":13013},{"style":215},[13014],{"type":51,"value":299},{"type":45,"tag":73,"props":13016,"children":13017},{"class":75,"line":988},[13018,13022,13026],{"type":45,"tag":73,"props":13019,"children":13020},{"style":215},[13021],{"type":51,"value":977},{"type":45,"tag":73,"props":13023,"children":13024},{"style":221},[13025],{"type":51,"value":506},{"type":45,"tag":73,"props":13027,"children":13028},{"style":215},[13029],{"type":51,"value":299},{"type":45,"tag":73,"props":13031,"children":13032},{"class":75,"line":996},[13033],{"type":45,"tag":73,"props":13034,"children":13035},{"emptyLinePlaceholder":111},[13036],{"type":51,"value":114},{"type":45,"tag":73,"props":13038,"children":13039},{"class":75,"line":1005},[13040],{"type":45,"tag":73,"props":13041,"children":13042},{"style":80},[13043],{"type":51,"value":13044},"\u002F\u002F Step 2: Handle callback — exchange token for session\n",{"type":45,"tag":73,"props":13046,"children":13047},{"class":75,"line":1048},[13048,13052,13056,13060,13064,13068,13073,13077,13081,13085,13089,13093,13097,13101,13105,13109],{"type":45,"tag":73,"props":13049,"children":13050},{"style":221},[13051],{"type":51,"value":11683},{"type":45,"tag":73,"props":13053,"children":13054},{"style":215},[13055],{"type":51,"value":699},{"type":45,"tag":73,"props":13057,"children":13058},{"style":428},[13059],{"type":51,"value":1371},{"type":45,"tag":73,"props":13061,"children":13062},{"style":221},[13063],{"type":51,"value":453},{"type":45,"tag":73,"props":13065,"children":13066},{"style":215},[13067],{"type":51,"value":294},{"type":45,"tag":73,"props":13069,"children":13070},{"style":96},[13071],{"type":51,"value":13072},"\u002Foauth\u002Fsuccess",{"type":45,"tag":73,"props":13074,"children":13075},{"style":215},[13076],{"type":51,"value":294},{"type":45,"tag":73,"props":13078,"children":13079},{"style":215},[13080],{"type":51,"value":229},{"type":45,"tag":73,"props":13082,"children":13083},{"style":407},[13084],{"type":51,"value":10546},{"type":45,"tag":73,"props":13086,"children":13087},{"style":215},[13088],{"type":51,"value":2409},{"type":45,"tag":73,"props":13090,"children":13091},{"style":2007},[13092],{"type":51,"value":10770},{"type":45,"tag":73,"props":13094,"children":13095},{"style":215},[13096],{"type":51,"value":229},{"type":45,"tag":73,"props":13098,"children":13099},{"style":2007},[13100],{"type":51,"value":10565},{"type":45,"tag":73,"props":13102,"children":13103},{"style":215},[13104],{"type":51,"value":506},{"type":45,"tag":73,"props":13106,"children":13107},{"style":407},[13108],{"type":51,"value":9412},{"type":45,"tag":73,"props":13110,"children":13111},{"style":215},[13112],{"type":51,"value":1632},{"type":45,"tag":73,"props":13114,"children":13115},{"class":75,"line":1076},[13116,13120,13124,13128,13132,13136,13140,13144,13148],{"type":45,"tag":73,"props":13117,"children":13118},{"style":407},[13119],{"type":51,"value":2042},{"type":45,"tag":73,"props":13121,"children":13122},{"style":221},[13123],{"type":51,"value":830},{"type":45,"tag":73,"props":13125,"children":13126},{"style":215},[13127],{"type":51,"value":2052},{"type":45,"tag":73,"props":13129,"children":13130},{"style":215},[13131],{"type":51,"value":425},{"type":45,"tag":73,"props":13133,"children":13134},{"style":428},[13135],{"type":51,"value":234},{"type":45,"tag":73,"props":13137,"children":13138},{"style":854},[13139],{"type":51,"value":453},{"type":45,"tag":73,"props":13141,"children":13142},{"style":221},[13143],{"type":51,"value":11777},{"type":45,"tag":73,"props":13145,"children":13146},{"style":854},[13147],{"type":51,"value":506},{"type":45,"tag":73,"props":13149,"children":13150},{"style":215},[13151],{"type":51,"value":299},{"type":45,"tag":73,"props":13153,"children":13154},{"class":75,"line":1100},[13155,13159,13163,13167,13171,13175,13179,13183,13187],{"type":45,"tag":73,"props":13156,"children":13157},{"style":407},[13158],{"type":51,"value":2042},{"type":45,"tag":73,"props":13160,"children":13161},{"style":221},[13162],{"type":51,"value":11797},{"type":45,"tag":73,"props":13164,"children":13165},{"style":215},[13166],{"type":51,"value":2052},{"type":45,"tag":73,"props":13168,"children":13169},{"style":209},[13170],{"type":51,"value":1024},{"type":45,"tag":73,"props":13172,"children":13173},{"style":221},[13174],{"type":51,"value":830},{"type":45,"tag":73,"props":13176,"children":13177},{"style":215},[13178],{"type":51,"value":699},{"type":45,"tag":73,"props":13180,"children":13181},{"style":428},[13182],{"type":51,"value":2683},{"type":45,"tag":73,"props":13184,"children":13185},{"style":854},[13186],{"type":51,"value":453},{"type":45,"tag":73,"props":13188,"children":13189},{"style":215},[13190],{"type":51,"value":848},{"type":45,"tag":73,"props":13192,"children":13193},{"class":75,"line":1116},[13194,13199,13203,13207,13211,13216,13220,13224],{"type":45,"tag":73,"props":13195,"children":13196},{"style":854},[13197],{"type":51,"value":13198},"        userId",{"type":45,"tag":73,"props":13200,"children":13201},{"style":215},[13202],{"type":51,"value":862},{"type":45,"tag":73,"props":13204,"children":13205},{"style":221},[13206],{"type":51,"value":10556},{"type":45,"tag":73,"props":13208,"children":13209},{"style":215},[13210],{"type":51,"value":699},{"type":45,"tag":73,"props":13212,"children":13213},{"style":221},[13214],{"type":51,"value":13215},"query",{"type":45,"tag":73,"props":13217,"children":13218},{"style":215},[13219],{"type":51,"value":699},{"type":45,"tag":73,"props":13221,"children":13222},{"style":221},[13223],{"type":51,"value":2632},{"type":45,"tag":73,"props":13225,"children":13226},{"style":215},[13227],{"type":51,"value":885},{"type":45,"tag":73,"props":13229,"children":13230},{"class":75,"line":1124},[13231,13236,13240,13244,13248,13252,13256,13260],{"type":45,"tag":73,"props":13232,"children":13233},{"style":854},[13234],{"type":51,"value":13235},"        secret",{"type":45,"tag":73,"props":13237,"children":13238},{"style":215},[13239],{"type":51,"value":862},{"type":45,"tag":73,"props":13241,"children":13242},{"style":221},[13243],{"type":51,"value":10556},{"type":45,"tag":73,"props":13245,"children":13246},{"style":215},[13247],{"type":51,"value":699},{"type":45,"tag":73,"props":13249,"children":13250},{"style":221},[13251],{"type":51,"value":13215},{"type":45,"tag":73,"props":13253,"children":13254},{"style":215},[13255],{"type":51,"value":699},{"type":45,"tag":73,"props":13257,"children":13258},{"style":221},[13259],{"type":51,"value":2570},{"type":45,"tag":73,"props":13261,"children":13262},{"style":215},[13263],{"type":51,"value":885},{"type":45,"tag":73,"props":13265,"children":13266},{"class":75,"line":1133},[13267,13271,13275],{"type":45,"tag":73,"props":13268,"children":13269},{"style":215},[13270],{"type":51,"value":2298},{"type":45,"tag":73,"props":13272,"children":13273},{"style":854},[13274],{"type":51,"value":506},{"type":45,"tag":73,"props":13276,"children":13277},{"style":215},[13278],{"type":51,"value":299},{"type":45,"tag":73,"props":13280,"children":13281},{"class":75,"line":1159},[13282],{"type":45,"tag":73,"props":13283,"children":13284},{"emptyLinePlaceholder":111},[13285],{"type":51,"value":114},{"type":45,"tag":73,"props":13287,"children":13288},{"class":75,"line":1190},[13289,13293,13297,13301,13305,13309,13313,13317,13321,13325,13329,13333,13337],{"type":45,"tag":73,"props":13290,"children":13291},{"style":221},[13292],{"type":51,"value":11937},{"type":45,"tag":73,"props":13294,"children":13295},{"style":215},[13296],{"type":51,"value":699},{"type":45,"tag":73,"props":13298,"children":13299},{"style":428},[13300],{"type":51,"value":11946},{"type":45,"tag":73,"props":13302,"children":13303},{"style":854},[13304],{"type":51,"value":453},{"type":45,"tag":73,"props":13306,"children":13307},{"style":215},[13308],{"type":51,"value":294},{"type":45,"tag":73,"props":13310,"children":13311},{"style":96},[13312],{"type":51,"value":11592},{"type":45,"tag":73,"props":13314,"children":13315},{"style":215},[13316],{"type":51,"value":294},{"type":45,"tag":73,"props":13318,"children":13319},{"style":215},[13320],{"type":51,"value":229},{"type":45,"tag":73,"props":13322,"children":13323},{"style":221},[13324],{"type":51,"value":11797},{"type":45,"tag":73,"props":13326,"children":13327},{"style":215},[13328],{"type":51,"value":699},{"type":45,"tag":73,"props":13330,"children":13331},{"style":221},[13332],{"type":51,"value":2570},{"type":45,"tag":73,"props":13334,"children":13335},{"style":215},[13336],{"type":51,"value":229},{"type":45,"tag":73,"props":13338,"children":13339},{"style":215},[13340],{"type":51,"value":1632},{"type":45,"tag":73,"props":13342,"children":13343},{"class":75,"line":1220},[13344,13348,13352,13356,13360,13365,13369,13373,13377,13382,13386,13390,13394,13398],{"type":45,"tag":73,"props":13345,"children":13346},{"style":854},[13347],{"type":51,"value":11994},{"type":45,"tag":73,"props":13349,"children":13350},{"style":215},[13351],{"type":51,"value":862},{"type":45,"tag":73,"props":13353,"children":13354},{"style":2090},[13355],{"type":51,"value":2093},{"type":45,"tag":73,"props":13357,"children":13358},{"style":215},[13359],{"type":51,"value":229},{"type":45,"tag":73,"props":13361,"children":13362},{"style":854},[13363],{"type":51,"value":13364}," secure",{"type":45,"tag":73,"props":13366,"children":13367},{"style":215},[13368],{"type":51,"value":862},{"type":45,"tag":73,"props":13370,"children":13371},{"style":2090},[13372],{"type":51,"value":2093},{"type":45,"tag":73,"props":13374,"children":13375},{"style":215},[13376],{"type":51,"value":229},{"type":45,"tag":73,"props":13378,"children":13379},{"style":854},[13380],{"type":51,"value":13381}," sameSite",{"type":45,"tag":73,"props":13383,"children":13384},{"style":215},[13385],{"type":51,"value":862},{"type":45,"tag":73,"props":13387,"children":13388},{"style":215},[13389],{"type":51,"value":285},{"type":45,"tag":73,"props":13391,"children":13392},{"style":96},[13393],{"type":51,"value":12047},{"type":45,"tag":73,"props":13395,"children":13396},{"style":215},[13397],{"type":51,"value":294},{"type":45,"tag":73,"props":13399,"children":13400},{"style":215},[13401],{"type":51,"value":885},{"type":45,"tag":73,"props":13403,"children":13404},{"class":75,"line":1250},[13405,13409,13413,13417,13421,13425,13429,13433,13437,13441,13445,13450,13454,13458,13462,13466],{"type":45,"tag":73,"props":13406,"children":13407},{"style":854},[13408],{"type":51,"value":12063},{"type":45,"tag":73,"props":13410,"children":13411},{"style":215},[13412],{"type":51,"value":862},{"type":45,"tag":73,"props":13414,"children":13415},{"style":215},[13416],{"type":51,"value":425},{"type":45,"tag":73,"props":13418,"children":13419},{"style":428},[13420],{"type":51,"value":12076},{"type":45,"tag":73,"props":13422,"children":13423},{"style":854},[13424],{"type":51,"value":453},{"type":45,"tag":73,"props":13426,"children":13427},{"style":221},[13428],{"type":51,"value":11647},{"type":45,"tag":73,"props":13430,"children":13431},{"style":215},[13432],{"type":51,"value":699},{"type":45,"tag":73,"props":13434,"children":13435},{"style":221},[13436],{"type":51,"value":12093},{"type":45,"tag":73,"props":13438,"children":13439},{"style":854},[13440],{"type":51,"value":506},{"type":45,"tag":73,"props":13442,"children":13443},{"style":215},[13444],{"type":51,"value":229},{"type":45,"tag":73,"props":13446,"children":13447},{"style":854},[13448],{"type":51,"value":13449}," path",{"type":45,"tag":73,"props":13451,"children":13452},{"style":215},[13453],{"type":51,"value":862},{"type":45,"tag":73,"props":13455,"children":13456},{"style":215},[13457],{"type":51,"value":285},{"type":45,"tag":73,"props":13459,"children":13460},{"style":96},[13461],{"type":51,"value":12122},{"type":45,"tag":73,"props":13463,"children":13464},{"style":215},[13465],{"type":51,"value":294},{"type":45,"tag":73,"props":13467,"children":13468},{"style":215},[13469],{"type":51,"value":885},{"type":45,"tag":73,"props":13471,"children":13472},{"class":75,"line":29},[13473,13477,13481],{"type":45,"tag":73,"props":13474,"children":13475},{"style":215},[13476],{"type":51,"value":2298},{"type":45,"tag":73,"props":13478,"children":13479},{"style":854},[13480],{"type":51,"value":506},{"type":45,"tag":73,"props":13482,"children":13483},{"style":215},[13484],{"type":51,"value":299},{"type":45,"tag":73,"props":13486,"children":13487},{"class":75,"line":1323},[13488,13492,13496,13500,13504,13508,13512,13516,13520,13524,13528],{"type":45,"tag":73,"props":13489,"children":13490},{"style":221},[13491],{"type":51,"value":11937},{"type":45,"tag":73,"props":13493,"children":13494},{"style":215},[13495],{"type":51,"value":699},{"type":45,"tag":73,"props":13497,"children":13498},{"style":428},[13499],{"type":51,"value":1594},{"type":45,"tag":73,"props":13501,"children":13502},{"style":854},[13503],{"type":51,"value":453},{"type":45,"tag":73,"props":13505,"children":13506},{"style":215},[13507],{"type":51,"value":1426},{"type":45,"tag":73,"props":13509,"children":13510},{"style":854},[13511],{"type":51,"value":11105},{"type":45,"tag":73,"props":13513,"children":13514},{"style":215},[13515],{"type":51,"value":862},{"type":45,"tag":73,"props":13517,"children":13518},{"style":2090},[13519],{"type":51,"value":2093},{"type":45,"tag":73,"props":13521,"children":13522},{"style":215},[13523],{"type":51,"value":275},{"type":45,"tag":73,"props":13525,"children":13526},{"style":854},[13527],{"type":51,"value":506},{"type":45,"tag":73,"props":13529,"children":13530},{"style":215},[13531],{"type":51,"value":299},{"type":45,"tag":73,"props":13533,"children":13534},{"class":75,"line":1331},[13535,13539,13543],{"type":45,"tag":73,"props":13536,"children":13537},{"style":215},[13538],{"type":51,"value":977},{"type":45,"tag":73,"props":13540,"children":13541},{"style":221},[13542],{"type":51,"value":506},{"type":45,"tag":73,"props":13544,"children":13545},{"style":215},[13546],{"type":51,"value":299},{"type":45,"tag":1468,"props":13548,"children":13549},{},[13550],{"type":45,"tag":1472,"props":13551,"children":13552},{},[13553,13558,13560,13566,13567,13573,13574,13580,13582,13588],{"type":45,"tag":1476,"props":13554,"children":13555},{},[13556],{"type":51,"value":13557},"Cookie security:",{"type":51,"value":13559}," Always use ",{"type":45,"tag":69,"props":13561,"children":13563},{"className":13562},[],[13564],{"type":51,"value":13565},"httpOnly",{"type":51,"value":4773},{"type":45,"tag":69,"props":13568,"children":13570},{"className":13569},[],[13571],{"type":51,"value":13572},"secure",{"type":51,"value":4780},{"type":45,"tag":69,"props":13575,"children":13577},{"className":13576},[],[13578],{"type":51,"value":13579},"sameSite: 'strict'",{"type":51,"value":13581}," to prevent XSS. The cookie name must be ",{"type":45,"tag":69,"props":13583,"children":13585},{"className":13584},[],[13586],{"type":51,"value":13587},"a_session_\u003CPROJECT_ID>",{"type":51,"value":699},{"type":45,"tag":1468,"props":13590,"children":13591},{},[13592],{"type":45,"tag":1472,"props":13593,"children":13594},{},[13595,13600,13602,13608],{"type":45,"tag":1476,"props":13596,"children":13597},{},[13598],{"type":51,"value":13599},"Forwarding user agent:",{"type":51,"value":13601}," Call ",{"type":45,"tag":69,"props":13603,"children":13605},{"className":13604},[],[13606],{"type":51,"value":13607},"sessionClient.setForwardedUserAgent(req.headers['user-agent'])",{"type":51,"value":13609}," to record the end-user's browser info for debugging and security.",{"type":45,"tag":54,"props":13611,"children":13613},{"id":13612},"error-handling",[13614],{"type":51,"value":13615},"Error Handling",{"type":45,"tag":61,"props":13617,"children":13619},{"className":190,"code":13618,"language":21,"meta":66,"style":66},"import { AppwriteException } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n\ntry {\n    const doc = await tablesDB.getRow({\n        databaseId: '[DATABASE_ID]',\n        tableId: '[TABLE_ID]',\n        rowId: '[ROW_ID]',\n    });\n} catch (err) {\n    if (err instanceof AppwriteException) {\n        console.log(err.message);   \u002F\u002F human-readable error message\n        console.log(err.code);      \u002F\u002F HTTP status code (number)\n        console.log(err.type);      \u002F\u002F Appwrite error type string (e.g. 'document_not_found')\n        console.log(err.response);  \u002F\u002F full response body (object)\n    }\n}\n",[13620],{"type":45,"tag":69,"props":13621,"children":13622},{"__ignoreMap":66},[13623,13663,13670,13677,13689,13729,13757,13785,13813,13828,13849,13882,13927,13971,14015,14059,14066],{"type":45,"tag":73,"props":13624,"children":13625},{"class":75,"line":76},[13626,13630,13634,13639,13643,13647,13651,13655,13659],{"type":45,"tag":73,"props":13627,"children":13628},{"style":209},[13629],{"type":51,"value":212},{"type":45,"tag":73,"props":13631,"children":13632},{"style":215},[13633],{"type":51,"value":218},{"type":45,"tag":73,"props":13635,"children":13636},{"style":221},[13637],{"type":51,"value":13638}," AppwriteException",{"type":45,"tag":73,"props":13640,"children":13641},{"style":215},[13642],{"type":51,"value":275},{"type":45,"tag":73,"props":13644,"children":13645},{"style":209},[13646],{"type":51,"value":280},{"type":45,"tag":73,"props":13648,"children":13649},{"style":215},[13650],{"type":51,"value":285},{"type":45,"tag":73,"props":13652,"children":13653},{"style":96},[13654],{"type":51,"value":8},{"type":45,"tag":73,"props":13656,"children":13657},{"style":215},[13658],{"type":51,"value":294},{"type":45,"tag":73,"props":13660,"children":13661},{"style":215},[13662],{"type":51,"value":299},{"type":45,"tag":73,"props":13664,"children":13665},{"class":75,"line":86},[13666],{"type":45,"tag":73,"props":13667,"children":13668},{"style":80},[13669],{"type":51,"value":5363},{"type":45,"tag":73,"props":13671,"children":13672},{"class":75,"line":107},[13673],{"type":45,"tag":73,"props":13674,"children":13675},{"emptyLinePlaceholder":111},[13676],{"type":51,"value":114},{"type":45,"tag":73,"props":13678,"children":13679},{"class":75,"line":117},[13680,13685],{"type":45,"tag":73,"props":13681,"children":13682},{"style":209},[13683],{"type":51,"value":13684},"try",{"type":45,"tag":73,"props":13686,"children":13687},{"style":215},[13688],{"type":51,"value":1632},{"type":45,"tag":73,"props":13690,"children":13691},{"class":75,"line":126},[13692,13696,13701,13705,13709,13713,13717,13721,13725],{"type":45,"tag":73,"props":13693,"children":13694},{"style":407},[13695],{"type":51,"value":2042},{"type":45,"tag":73,"props":13697,"children":13698},{"style":221},[13699],{"type":51,"value":13700}," doc",{"type":45,"tag":73,"props":13702,"children":13703},{"style":215},[13704],{"type":51,"value":2052},{"type":45,"tag":73,"props":13706,"children":13707},{"style":209},[13708],{"type":51,"value":1024},{"type":45,"tag":73,"props":13710,"children":13711},{"style":221},[13712],{"type":51,"value":3430},{"type":45,"tag":73,"props":13714,"children":13715},{"style":215},[13716],{"type":51,"value":699},{"type":45,"tag":73,"props":13718,"children":13719},{"style":428},[13720],{"type":51,"value":4158},{"type":45,"tag":73,"props":13722,"children":13723},{"style":854},[13724],{"type":51,"value":453},{"type":45,"tag":73,"props":13726,"children":13727},{"style":215},[13728],{"type":51,"value":848},{"type":45,"tag":73,"props":13730,"children":13731},{"class":75,"line":143},[13732,13737,13741,13745,13749,13753],{"type":45,"tag":73,"props":13733,"children":13734},{"style":854},[13735],{"type":51,"value":13736},"        databaseId",{"type":45,"tag":73,"props":13738,"children":13739},{"style":215},[13740],{"type":51,"value":862},{"type":45,"tag":73,"props":13742,"children":13743},{"style":215},[13744],{"type":51,"value":285},{"type":45,"tag":73,"props":13746,"children":13747},{"style":96},[13748],{"type":51,"value":3586},{"type":45,"tag":73,"props":13750,"children":13751},{"style":215},[13752],{"type":51,"value":294},{"type":45,"tag":73,"props":13754,"children":13755},{"style":215},[13756],{"type":51,"value":885},{"type":45,"tag":73,"props":13758,"children":13759},{"class":75,"line":151},[13760,13765,13769,13773,13777,13781],{"type":45,"tag":73,"props":13761,"children":13762},{"style":854},[13763],{"type":51,"value":13764},"        tableId",{"type":45,"tag":73,"props":13766,"children":13767},{"style":215},[13768],{"type":51,"value":862},{"type":45,"tag":73,"props":13770,"children":13771},{"style":215},[13772],{"type":51,"value":285},{"type":45,"tag":73,"props":13774,"children":13775},{"style":96},[13776],{"type":51,"value":3768},{"type":45,"tag":73,"props":13778,"children":13779},{"style":215},[13780],{"type":51,"value":294},{"type":45,"tag":73,"props":13782,"children":13783},{"style":215},[13784],{"type":51,"value":885},{"type":45,"tag":73,"props":13786,"children":13787},{"class":75,"line":160},[13788,13793,13797,13801,13805,13809],{"type":45,"tag":73,"props":13789,"children":13790},{"style":854},[13791],{"type":51,"value":13792},"        rowId",{"type":45,"tag":73,"props":13794,"children":13795},{"style":215},[13796],{"type":51,"value":862},{"type":45,"tag":73,"props":13798,"children":13799},{"style":215},[13800],{"type":51,"value":285},{"type":45,"tag":73,"props":13802,"children":13803},{"style":96},[13804],{"type":51,"value":4240},{"type":45,"tag":73,"props":13806,"children":13807},{"style":215},[13808],{"type":51,"value":294},{"type":45,"tag":73,"props":13810,"children":13811},{"style":215},[13812],{"type":51,"value":885},{"type":45,"tag":73,"props":13814,"children":13815},{"class":75,"line":474},[13816,13820,13824],{"type":45,"tag":73,"props":13817,"children":13818},{"style":215},[13819],{"type":51,"value":2298},{"type":45,"tag":73,"props":13821,"children":13822},{"style":854},[13823],{"type":51,"value":506},{"type":45,"tag":73,"props":13825,"children":13826},{"style":215},[13827],{"type":51,"value":299},{"type":45,"tag":73,"props":13829,"children":13830},{"class":75,"line":988},[13831,13835,13840,13845],{"type":45,"tag":73,"props":13832,"children":13833},{"style":215},[13834],{"type":51,"value":977},{"type":45,"tag":73,"props":13836,"children":13837},{"style":209},[13838],{"type":51,"value":13839}," catch",{"type":45,"tag":73,"props":13841,"children":13842},{"style":221},[13843],{"type":51,"value":13844}," (err) ",{"type":45,"tag":73,"props":13846,"children":13847},{"style":215},[13848],{"type":51,"value":848},{"type":45,"tag":73,"props":13850,"children":13851},{"class":75,"line":996},[13852,13856,13860,13865,13870,13874,13878],{"type":45,"tag":73,"props":13853,"children":13854},{"style":209},[13855],{"type":51,"value":2404},{"type":45,"tag":73,"props":13857,"children":13858},{"style":854},[13859],{"type":51,"value":2409},{"type":45,"tag":73,"props":13861,"children":13862},{"style":221},[13863],{"type":51,"value":13864},"err",{"type":45,"tag":73,"props":13866,"children":13867},{"style":215},[13868],{"type":51,"value":13869}," instanceof",{"type":45,"tag":73,"props":13871,"children":13872},{"style":90},[13873],{"type":51,"value":13638},{"type":45,"tag":73,"props":13875,"children":13876},{"style":854},[13877],{"type":51,"value":2446},{"type":45,"tag":73,"props":13879,"children":13880},{"style":215},[13881],{"type":51,"value":848},{"type":45,"tag":73,"props":13883,"children":13884},{"class":75,"line":1005},[13885,13889,13893,13897,13901,13905,13909,13914,13918,13922],{"type":45,"tag":73,"props":13886,"children":13887},{"style":221},[13888],{"type":51,"value":9424},{"type":45,"tag":73,"props":13890,"children":13891},{"style":215},[13892],{"type":51,"value":699},{"type":45,"tag":73,"props":13894,"children":13895},{"style":428},[13896],{"type":51,"value":9433},{"type":45,"tag":73,"props":13898,"children":13899},{"style":854},[13900],{"type":51,"value":453},{"type":45,"tag":73,"props":13902,"children":13903},{"style":221},[13904],{"type":51,"value":13864},{"type":45,"tag":73,"props":13906,"children":13907},{"style":215},[13908],{"type":51,"value":699},{"type":45,"tag":73,"props":13910,"children":13911},{"style":221},[13912],{"type":51,"value":13913},"message",{"type":45,"tag":73,"props":13915,"children":13916},{"style":854},[13917],{"type":51,"value":506},{"type":45,"tag":73,"props":13919,"children":13920},{"style":215},[13921],{"type":51,"value":2160},{"type":45,"tag":73,"props":13923,"children":13924},{"style":80},[13925],{"type":51,"value":13926},"   \u002F\u002F human-readable error message\n",{"type":45,"tag":73,"props":13928,"children":13929},{"class":75,"line":1048},[13930,13934,13938,13942,13946,13950,13954,13958,13962,13966],{"type":45,"tag":73,"props":13931,"children":13932},{"style":221},[13933],{"type":51,"value":9424},{"type":45,"tag":73,"props":13935,"children":13936},{"style":215},[13937],{"type":51,"value":699},{"type":45,"tag":73,"props":13939,"children":13940},{"style":428},[13941],{"type":51,"value":9433},{"type":45,"tag":73,"props":13943,"children":13944},{"style":854},[13945],{"type":51,"value":453},{"type":45,"tag":73,"props":13947,"children":13948},{"style":221},[13949],{"type":51,"value":13864},{"type":45,"tag":73,"props":13951,"children":13952},{"style":215},[13953],{"type":51,"value":699},{"type":45,"tag":73,"props":13955,"children":13956},{"style":221},[13957],{"type":51,"value":69},{"type":45,"tag":73,"props":13959,"children":13960},{"style":854},[13961],{"type":51,"value":506},{"type":45,"tag":73,"props":13963,"children":13964},{"style":215},[13965],{"type":51,"value":2160},{"type":45,"tag":73,"props":13967,"children":13968},{"style":80},[13969],{"type":51,"value":13970},"      \u002F\u002F HTTP status code (number)\n",{"type":45,"tag":73,"props":13972,"children":13973},{"class":75,"line":1076},[13974,13978,13982,13986,13990,13994,13998,14002,14006,14010],{"type":45,"tag":73,"props":13975,"children":13976},{"style":221},[13977],{"type":51,"value":9424},{"type":45,"tag":73,"props":13979,"children":13980},{"style":215},[13981],{"type":51,"value":699},{"type":45,"tag":73,"props":13983,"children":13984},{"style":428},[13985],{"type":51,"value":9433},{"type":45,"tag":73,"props":13987,"children":13988},{"style":854},[13989],{"type":51,"value":453},{"type":45,"tag":73,"props":13991,"children":13992},{"style":221},[13993],{"type":51,"value":13864},{"type":45,"tag":73,"props":13995,"children":13996},{"style":215},[13997],{"type":51,"value":699},{"type":45,"tag":73,"props":13999,"children":14000},{"style":221},[14001],{"type":51,"value":2423},{"type":45,"tag":73,"props":14003,"children":14004},{"style":854},[14005],{"type":51,"value":506},{"type":45,"tag":73,"props":14007,"children":14008},{"style":215},[14009],{"type":51,"value":2160},{"type":45,"tag":73,"props":14011,"children":14012},{"style":80},[14013],{"type":51,"value":14014},"      \u002F\u002F Appwrite error type string (e.g. 'document_not_found')\n",{"type":45,"tag":73,"props":14016,"children":14017},{"class":75,"line":1100},[14018,14022,14026,14030,14034,14038,14042,14046,14050,14054],{"type":45,"tag":73,"props":14019,"children":14020},{"style":221},[14021],{"type":51,"value":9424},{"type":45,"tag":73,"props":14023,"children":14024},{"style":215},[14025],{"type":51,"value":699},{"type":45,"tag":73,"props":14027,"children":14028},{"style":428},[14029],{"type":51,"value":9433},{"type":45,"tag":73,"props":14031,"children":14032},{"style":854},[14033],{"type":51,"value":453},{"type":45,"tag":73,"props":14035,"children":14036},{"style":221},[14037],{"type":51,"value":13864},{"type":45,"tag":73,"props":14039,"children":14040},{"style":215},[14041],{"type":51,"value":699},{"type":45,"tag":73,"props":14043,"children":14044},{"style":221},[14045],{"type":51,"value":9403},{"type":45,"tag":73,"props":14047,"children":14048},{"style":854},[14049],{"type":51,"value":506},{"type":45,"tag":73,"props":14051,"children":14052},{"style":215},[14053],{"type":51,"value":2160},{"type":45,"tag":73,"props":14055,"children":14056},{"style":80},[14057],{"type":51,"value":14058},"  \u002F\u002F full response body (object)\n",{"type":45,"tag":73,"props":14060,"children":14061},{"class":75,"line":1116},[14062],{"type":45,"tag":73,"props":14063,"children":14064},{"style":215},[14065],{"type":51,"value":9516},{"type":45,"tag":73,"props":14067,"children":14068},{"class":75,"line":1124},[14069],{"type":45,"tag":73,"props":14070,"children":14071},{"style":215},[14072],{"type":51,"value":1684},{"type":45,"tag":1472,"props":14074,"children":14075},{},[14076],{"type":45,"tag":1476,"props":14077,"children":14078},{},[14079],{"type":51,"value":14080},"Common error codes:",{"type":45,"tag":4610,"props":14082,"children":14083},{},[14084,14100],{"type":45,"tag":4614,"props":14085,"children":14086},{},[14087],{"type":45,"tag":4618,"props":14088,"children":14089},{},[14090,14095],{"type":45,"tag":4622,"props":14091,"children":14092},{},[14093],{"type":51,"value":14094},"Code",{"type":45,"tag":4622,"props":14096,"children":14097},{},[14098],{"type":51,"value":14099},"Meaning",{"type":45,"tag":4643,"props":14101,"children":14102},{},[14103,14119,14136,14153,14170],{"type":45,"tag":4618,"props":14104,"children":14105},{},[14106,14114],{"type":45,"tag":4650,"props":14107,"children":14108},{},[14109],{"type":45,"tag":69,"props":14110,"children":14112},{"className":14111},[],[14113],{"type":51,"value":12396},{"type":45,"tag":4650,"props":14115,"children":14116},{},[14117],{"type":51,"value":14118},"Unauthorized — missing or invalid session\u002FAPI key",{"type":45,"tag":4618,"props":14120,"children":14121},{},[14122,14131],{"type":45,"tag":4650,"props":14123,"children":14124},{},[14125],{"type":45,"tag":69,"props":14126,"children":14128},{"className":14127},[],[14129],{"type":51,"value":14130},"403",{"type":45,"tag":4650,"props":14132,"children":14133},{},[14134],{"type":51,"value":14135},"Forbidden — insufficient permissions for this action",{"type":45,"tag":4618,"props":14137,"children":14138},{},[14139,14148],{"type":45,"tag":4650,"props":14140,"children":14141},{},[14142],{"type":45,"tag":69,"props":14143,"children":14145},{"className":14144},[],[14146],{"type":51,"value":14147},"404",{"type":45,"tag":4650,"props":14149,"children":14150},{},[14151],{"type":51,"value":14152},"Not found — resource does not exist",{"type":45,"tag":4618,"props":14154,"children":14155},{},[14156,14165],{"type":45,"tag":4650,"props":14157,"children":14158},{},[14159],{"type":45,"tag":69,"props":14160,"children":14162},{"className":14161},[],[14163],{"type":51,"value":14164},"409",{"type":45,"tag":4650,"props":14166,"children":14167},{},[14168],{"type":51,"value":14169},"Conflict — duplicate ID or unique constraint violation",{"type":45,"tag":4618,"props":14171,"children":14172},{},[14173,14182],{"type":45,"tag":4650,"props":14174,"children":14175},{},[14176],{"type":45,"tag":69,"props":14177,"children":14179},{"className":14178},[],[14180],{"type":51,"value":14181},"429",{"type":45,"tag":4650,"props":14183,"children":14184},{},[14185],{"type":51,"value":14186},"Rate limited — too many requests, retry after backoff",{"type":45,"tag":54,"props":14188,"children":14190},{"id":14189},"permissions-roles-critical",[14191],{"type":51,"value":14192},"Permissions & Roles (Critical)",{"type":45,"tag":1472,"props":14194,"children":14195},{},[14196,14198,14204,14205,14211,14212,14217,14218,14223,14225,14231,14233,14238,14240,14246,14248,14254],{"type":51,"value":14197},"Appwrite uses permission strings to control access to resources. Each permission pairs an action (",{"type":45,"tag":69,"props":14199,"children":14201},{"className":14200},[],[14202],{"type":51,"value":14203},"read",{"type":51,"value":4773},{"type":45,"tag":69,"props":14206,"children":14208},{"className":14207},[],[14209],{"type":51,"value":14210},"update",{"type":51,"value":4773},{"type":45,"tag":69,"props":14213,"children":14215},{"className":14214},[],[14216],{"type":51,"value":3251},{"type":51,"value":4773},{"type":45,"tag":69,"props":14219,"children":14221},{"className":14220},[],[14222],{"type":51,"value":839},{"type":51,"value":14224},", or ",{"type":45,"tag":69,"props":14226,"children":14228},{"className":14227},[],[14229],{"type":51,"value":14230},"write",{"type":51,"value":14232}," which grants create + update + delete) with a role target. By default, ",{"type":45,"tag":1476,"props":14234,"children":14235},{},[14236],{"type":51,"value":14237},"no user has access",{"type":51,"value":14239}," unless permissions are explicitly set at the row\u002Ffile level or inherited from the table\u002Fbucket settings. Permissions are arrays of strings built with the ",{"type":45,"tag":69,"props":14241,"children":14243},{"className":14242},[],[14244],{"type":51,"value":14245},"Permission",{"type":51,"value":14247}," and ",{"type":45,"tag":69,"props":14249,"children":14251},{"className":14250},[],[14252],{"type":51,"value":14253},"Role",{"type":51,"value":14255}," helpers.",{"type":45,"tag":61,"props":14257,"children":14259},{"className":190,"code":14258,"language":21,"meta":66,"style":66},"import { Permission, Role } from 'appwrite';\n\u002F\u002F Server-side: import from 'node-appwrite'\n",[14260],{"type":45,"tag":69,"props":14261,"children":14262},{"__ignoreMap":66},[14263,14312],{"type":45,"tag":73,"props":14264,"children":14265},{"class":75,"line":76},[14266,14270,14274,14279,14283,14288,14292,14296,14300,14304,14308],{"type":45,"tag":73,"props":14267,"children":14268},{"style":209},[14269],{"type":51,"value":212},{"type":45,"tag":73,"props":14271,"children":14272},{"style":215},[14273],{"type":51,"value":218},{"type":45,"tag":73,"props":14275,"children":14276},{"style":221},[14277],{"type":51,"value":14278}," Permission",{"type":45,"tag":73,"props":14280,"children":14281},{"style":215},[14282],{"type":51,"value":229},{"type":45,"tag":73,"props":14284,"children":14285},{"style":221},[14286],{"type":51,"value":14287}," Role",{"type":45,"tag":73,"props":14289,"children":14290},{"style":215},[14291],{"type":51,"value":275},{"type":45,"tag":73,"props":14293,"children":14294},{"style":209},[14295],{"type":51,"value":280},{"type":45,"tag":73,"props":14297,"children":14298},{"style":215},[14299],{"type":51,"value":285},{"type":45,"tag":73,"props":14301,"children":14302},{"style":96},[14303],{"type":51,"value":8},{"type":45,"tag":73,"props":14305,"children":14306},{"style":215},[14307],{"type":51,"value":294},{"type":45,"tag":73,"props":14309,"children":14310},{"style":215},[14311],{"type":51,"value":299},{"type":45,"tag":73,"props":14313,"children":14314},{"class":75,"line":86},[14315],{"type":45,"tag":73,"props":14316,"children":14317},{"style":80},[14318],{"type":51,"value":5363},{"type":45,"tag":182,"props":14320,"children":14322},{"id":14321},"database-row-with-permissions",[14323],{"type":51,"value":14324},"Database Row with Permissions",{"type":45,"tag":61,"props":14326,"children":14328},{"className":190,"code":14327,"language":21,"meta":66,"style":66},"const doc = await tablesDB.createRow({\n    databaseId: '[DATABASE_ID]',\n    tableId: '[TABLE_ID]',\n    rowId: ID.unique(),\n    data: { title: 'Hello World' },\n    permissions: [\n        Permission.read(Role.user('[USER_ID]')),     \u002F\u002F specific user can read\n        Permission.update(Role.user('[USER_ID]')),   \u002F\u002F specific user can update\n        Permission.read(Role.team('[TEAM_ID]')),     \u002F\u002F all team members can read\n        Permission.read(Role.any()),                 \u002F\u002F anyone (including guests) can read\n    ]\n});\n",[14329],{"type":45,"tag":69,"props":14330,"children":14331},{"__ignoreMap":66},[14332,14371,14398,14425,14456,14496,14512,14570,14626,14683,14725,14732],{"type":45,"tag":73,"props":14333,"children":14334},{"class":75,"line":76},[14335,14339,14343,14347,14351,14355,14359,14363,14367],{"type":45,"tag":73,"props":14336,"children":14337},{"style":407},[14338],{"type":51,"value":410},{"type":45,"tag":73,"props":14340,"children":14341},{"style":221},[14342],{"type":51,"value":3692},{"type":45,"tag":73,"props":14344,"children":14345},{"style":215},[14346],{"type":51,"value":420},{"type":45,"tag":73,"props":14348,"children":14349},{"style":209},[14350],{"type":51,"value":1024},{"type":45,"tag":73,"props":14352,"children":14353},{"style":221},[14354],{"type":51,"value":3430},{"type":45,"tag":73,"props":14356,"children":14357},{"style":215},[14358],{"type":51,"value":699},{"type":45,"tag":73,"props":14360,"children":14361},{"style":428},[14362],{"type":51,"value":3713},{"type":45,"tag":73,"props":14364,"children":14365},{"style":221},[14366],{"type":51,"value":453},{"type":45,"tag":73,"props":14368,"children":14369},{"style":215},[14370],{"type":51,"value":848},{"type":45,"tag":73,"props":14372,"children":14373},{"class":75,"line":86},[14374,14378,14382,14386,14390,14394],{"type":45,"tag":73,"props":14375,"children":14376},{"style":854},[14377],{"type":51,"value":3573},{"type":45,"tag":73,"props":14379,"children":14380},{"style":215},[14381],{"type":51,"value":862},{"type":45,"tag":73,"props":14383,"children":14384},{"style":215},[14385],{"type":51,"value":285},{"type":45,"tag":73,"props":14387,"children":14388},{"style":96},[14389],{"type":51,"value":3586},{"type":45,"tag":73,"props":14391,"children":14392},{"style":215},[14393],{"type":51,"value":294},{"type":45,"tag":73,"props":14395,"children":14396},{"style":215},[14397],{"type":51,"value":885},{"type":45,"tag":73,"props":14399,"children":14400},{"class":75,"line":107},[14401,14405,14409,14413,14417,14421],{"type":45,"tag":73,"props":14402,"children":14403},{"style":854},[14404],{"type":51,"value":3602},{"type":45,"tag":73,"props":14406,"children":14407},{"style":215},[14408],{"type":51,"value":862},{"type":45,"tag":73,"props":14410,"children":14411},{"style":215},[14412],{"type":51,"value":285},{"type":45,"tag":73,"props":14414,"children":14415},{"style":96},[14416],{"type":51,"value":3768},{"type":45,"tag":73,"props":14418,"children":14419},{"style":215},[14420],{"type":51,"value":294},{"type":45,"tag":73,"props":14422,"children":14423},{"style":215},[14424],{"type":51,"value":885},{"type":45,"tag":73,"props":14426,"children":14427},{"class":75,"line":117},[14428,14432,14436,14440,14444,14448,14452],{"type":45,"tag":73,"props":14429,"children":14430},{"style":854},[14431],{"type":51,"value":3784},{"type":45,"tag":73,"props":14433,"children":14434},{"style":215},[14435],{"type":51,"value":862},{"type":45,"tag":73,"props":14437,"children":14438},{"style":221},[14439],{"type":51,"value":261},{"type":45,"tag":73,"props":14441,"children":14442},{"style":215},[14443],{"type":51,"value":699},{"type":45,"tag":73,"props":14445,"children":14446},{"style":428},[14447],{"type":51,"value":875},{"type":45,"tag":73,"props":14449,"children":14450},{"style":221},[14451],{"type":51,"value":880},{"type":45,"tag":73,"props":14453,"children":14454},{"style":215},[14455],{"type":51,"value":885},{"type":45,"tag":73,"props":14457,"children":14458},{"class":75,"line":126},[14459,14463,14467,14471,14475,14479,14483,14487,14491],{"type":45,"tag":73,"props":14460,"children":14461},{"style":854},[14462],{"type":51,"value":3816},{"type":45,"tag":73,"props":14464,"children":14465},{"style":215},[14466],{"type":51,"value":862},{"type":45,"tag":73,"props":14468,"children":14469},{"style":215},[14470],{"type":51,"value":218},{"type":45,"tag":73,"props":14472,"children":14473},{"style":854},[14474],{"type":51,"value":3829},{"type":45,"tag":73,"props":14476,"children":14477},{"style":215},[14478],{"type":51,"value":862},{"type":45,"tag":73,"props":14480,"children":14481},{"style":215},[14482],{"type":51,"value":285},{"type":45,"tag":73,"props":14484,"children":14485},{"style":96},[14486],{"type":51,"value":3842},{"type":45,"tag":73,"props":14488,"children":14489},{"style":215},[14490],{"type":51,"value":294},{"type":45,"tag":73,"props":14492,"children":14493},{"style":215},[14494],{"type":51,"value":14495}," },\n",{"type":45,"tag":73,"props":14497,"children":14498},{"class":75,"line":143},[14499,14504,14508],{"type":45,"tag":73,"props":14500,"children":14501},{"style":854},[14502],{"type":51,"value":14503},"    permissions",{"type":45,"tag":73,"props":14505,"children":14506},{"style":215},[14507],{"type":51,"value":862},{"type":45,"tag":73,"props":14509,"children":14510},{"style":221},[14511],{"type":51,"value":4940},{"type":45,"tag":73,"props":14513,"children":14514},{"class":75,"line":151},[14515,14520,14524,14528,14533,14537,14541,14545,14549,14553,14557,14561,14565],{"type":45,"tag":73,"props":14516,"children":14517},{"style":221},[14518],{"type":51,"value":14519},"        Permission",{"type":45,"tag":73,"props":14521,"children":14522},{"style":215},[14523],{"type":51,"value":699},{"type":45,"tag":73,"props":14525,"children":14526},{"style":428},[14527],{"type":51,"value":14203},{"type":45,"tag":73,"props":14529,"children":14530},{"style":221},[14531],{"type":51,"value":14532},"(Role",{"type":45,"tag":73,"props":14534,"children":14535},{"style":215},[14536],{"type":51,"value":699},{"type":45,"tag":73,"props":14538,"children":14539},{"style":428},[14540],{"type":51,"value":1291},{"type":45,"tag":73,"props":14542,"children":14543},{"style":221},[14544],{"type":51,"value":453},{"type":45,"tag":73,"props":14546,"children":14547},{"style":215},[14548],{"type":51,"value":294},{"type":45,"tag":73,"props":14550,"children":14551},{"style":96},[14552],{"type":51,"value":3200},{"type":45,"tag":73,"props":14554,"children":14555},{"style":215},[14556],{"type":51,"value":294},{"type":45,"tag":73,"props":14558,"children":14559},{"style":221},[14560],{"type":51,"value":2102},{"type":45,"tag":73,"props":14562,"children":14563},{"style":215},[14564],{"type":51,"value":229},{"type":45,"tag":73,"props":14566,"children":14567},{"style":80},[14568],{"type":51,"value":14569},"     \u002F\u002F specific user can read\n",{"type":45,"tag":73,"props":14571,"children":14572},{"class":75,"line":160},[14573,14577,14581,14585,14589,14593,14597,14601,14605,14609,14613,14617,14621],{"type":45,"tag":73,"props":14574,"children":14575},{"style":221},[14576],{"type":51,"value":14519},{"type":45,"tag":73,"props":14578,"children":14579},{"style":215},[14580],{"type":51,"value":699},{"type":45,"tag":73,"props":14582,"children":14583},{"style":428},[14584],{"type":51,"value":14210},{"type":45,"tag":73,"props":14586,"children":14587},{"style":221},[14588],{"type":51,"value":14532},{"type":45,"tag":73,"props":14590,"children":14591},{"style":215},[14592],{"type":51,"value":699},{"type":45,"tag":73,"props":14594,"children":14595},{"style":428},[14596],{"type":51,"value":1291},{"type":45,"tag":73,"props":14598,"children":14599},{"style":221},[14600],{"type":51,"value":453},{"type":45,"tag":73,"props":14602,"children":14603},{"style":215},[14604],{"type":51,"value":294},{"type":45,"tag":73,"props":14606,"children":14607},{"style":96},[14608],{"type":51,"value":3200},{"type":45,"tag":73,"props":14610,"children":14611},{"style":215},[14612],{"type":51,"value":294},{"type":45,"tag":73,"props":14614,"children":14615},{"style":221},[14616],{"type":51,"value":2102},{"type":45,"tag":73,"props":14618,"children":14619},{"style":215},[14620],{"type":51,"value":229},{"type":45,"tag":73,"props":14622,"children":14623},{"style":80},[14624],{"type":51,"value":14625},"   \u002F\u002F specific user can update\n",{"type":45,"tag":73,"props":14627,"children":14628},{"class":75,"line":474},[14629,14633,14637,14641,14645,14649,14654,14658,14662,14666,14670,14674,14678],{"type":45,"tag":73,"props":14630,"children":14631},{"style":221},[14632],{"type":51,"value":14519},{"type":45,"tag":73,"props":14634,"children":14635},{"style":215},[14636],{"type":51,"value":699},{"type":45,"tag":73,"props":14638,"children":14639},{"style":428},[14640],{"type":51,"value":14203},{"type":45,"tag":73,"props":14642,"children":14643},{"style":221},[14644],{"type":51,"value":14532},{"type":45,"tag":73,"props":14646,"children":14647},{"style":215},[14648],{"type":51,"value":699},{"type":45,"tag":73,"props":14650,"children":14651},{"style":428},[14652],{"type":51,"value":14653},"team",{"type":45,"tag":73,"props":14655,"children":14656},{"style":221},[14657],{"type":51,"value":453},{"type":45,"tag":73,"props":14659,"children":14660},{"style":215},[14661],{"type":51,"value":294},{"type":45,"tag":73,"props":14663,"children":14664},{"style":96},[14665],{"type":51,"value":8726},{"type":45,"tag":73,"props":14667,"children":14668},{"style":215},[14669],{"type":51,"value":294},{"type":45,"tag":73,"props":14671,"children":14672},{"style":221},[14673],{"type":51,"value":2102},{"type":45,"tag":73,"props":14675,"children":14676},{"style":215},[14677],{"type":51,"value":229},{"type":45,"tag":73,"props":14679,"children":14680},{"style":80},[14681],{"type":51,"value":14682},"     \u002F\u002F all team members can read\n",{"type":45,"tag":73,"props":14684,"children":14685},{"class":75,"line":988},[14686,14690,14694,14698,14702,14706,14711,14716,14720],{"type":45,"tag":73,"props":14687,"children":14688},{"style":221},[14689],{"type":51,"value":14519},{"type":45,"tag":73,"props":14691,"children":14692},{"style":215},[14693],{"type":51,"value":699},{"type":45,"tag":73,"props":14695,"children":14696},{"style":428},[14697],{"type":51,"value":14203},{"type":45,"tag":73,"props":14699,"children":14700},{"style":221},[14701],{"type":51,"value":14532},{"type":45,"tag":73,"props":14703,"children":14704},{"style":215},[14705],{"type":51,"value":699},{"type":45,"tag":73,"props":14707,"children":14708},{"style":428},[14709],{"type":51,"value":14710},"any",{"type":45,"tag":73,"props":14712,"children":14713},{"style":221},[14714],{"type":51,"value":14715},"())",{"type":45,"tag":73,"props":14717,"children":14718},{"style":215},[14719],{"type":51,"value":229},{"type":45,"tag":73,"props":14721,"children":14722},{"style":80},[14723],{"type":51,"value":14724},"                 \u002F\u002F anyone (including guests) can read\n",{"type":45,"tag":73,"props":14726,"children":14727},{"class":75,"line":996},[14728],{"type":45,"tag":73,"props":14729,"children":14730},{"style":221},[14731],{"type":51,"value":5287},{"type":45,"tag":73,"props":14733,"children":14734},{"class":75,"line":1005},[14735,14739,14743],{"type":45,"tag":73,"props":14736,"children":14737},{"style":215},[14738],{"type":51,"value":977},{"type":45,"tag":73,"props":14740,"children":14741},{"style":221},[14742],{"type":51,"value":506},{"type":45,"tag":73,"props":14744,"children":14745},{"style":215},[14746],{"type":51,"value":299},{"type":45,"tag":182,"props":14748,"children":14750},{"id":14749},"file-upload-with-permissions",[14751],{"type":51,"value":14752},"File Upload with Permissions",{"type":45,"tag":61,"props":14754,"children":14756},{"className":190,"code":14755,"language":21,"meta":66,"style":66},"const file = await storage.createFile({\n    bucketId: '[BUCKET_ID]',\n    fileId: ID.unique(),\n    file: document.getElementById('file-input').files[0],\n    permissions: [\n        Permission.read(Role.any()),\n        Permission.update(Role.user('[USER_ID]')),\n        Permission.delete(Role.user('[USER_ID]')),\n    ]\n});\n",[14757],{"type":45,"tag":69,"props":14758,"children":14759},{"__ignoreMap":66},[14760,14799,14826,14857,14920,14935,14970,15021,15072,15079],{"type":45,"tag":73,"props":14761,"children":14762},{"class":75,"line":76},[14763,14767,14771,14775,14779,14783,14787,14791,14795],{"type":45,"tag":73,"props":14764,"children":14765},{"style":407},[14766],{"type":51,"value":410},{"type":45,"tag":73,"props":14768,"children":14769},{"style":221},[14770],{"type":51,"value":7279},{"type":45,"tag":73,"props":14772,"children":14773},{"style":215},[14774],{"type":51,"value":420},{"type":45,"tag":73,"props":14776,"children":14777},{"style":209},[14778],{"type":51,"value":1024},{"type":45,"tag":73,"props":14780,"children":14781},{"style":221},[14782],{"type":51,"value":7292},{"type":45,"tag":73,"props":14784,"children":14785},{"style":215},[14786],{"type":51,"value":699},{"type":45,"tag":73,"props":14788,"children":14789},{"style":428},[14790],{"type":51,"value":7301},{"type":45,"tag":73,"props":14792,"children":14793},{"style":221},[14794],{"type":51,"value":453},{"type":45,"tag":73,"props":14796,"children":14797},{"style":215},[14798],{"type":51,"value":848},{"type":45,"tag":73,"props":14800,"children":14801},{"class":75,"line":86},[14802,14806,14810,14814,14818,14822],{"type":45,"tag":73,"props":14803,"children":14804},{"style":854},[14805],{"type":51,"value":7317},{"type":45,"tag":73,"props":14807,"children":14808},{"style":215},[14809],{"type":51,"value":862},{"type":45,"tag":73,"props":14811,"children":14812},{"style":215},[14813],{"type":51,"value":285},{"type":45,"tag":73,"props":14815,"children":14816},{"style":96},[14817],{"type":51,"value":7330},{"type":45,"tag":73,"props":14819,"children":14820},{"style":215},[14821],{"type":51,"value":294},{"type":45,"tag":73,"props":14823,"children":14824},{"style":215},[14825],{"type":51,"value":885},{"type":45,"tag":73,"props":14827,"children":14828},{"class":75,"line":107},[14829,14833,14837,14841,14845,14849,14853],{"type":45,"tag":73,"props":14830,"children":14831},{"style":854},[14832],{"type":51,"value":7346},{"type":45,"tag":73,"props":14834,"children":14835},{"style":215},[14836],{"type":51,"value":862},{"type":45,"tag":73,"props":14838,"children":14839},{"style":221},[14840],{"type":51,"value":261},{"type":45,"tag":73,"props":14842,"children":14843},{"style":215},[14844],{"type":51,"value":699},{"type":45,"tag":73,"props":14846,"children":14847},{"style":428},[14848],{"type":51,"value":875},{"type":45,"tag":73,"props":14850,"children":14851},{"style":221},[14852],{"type":51,"value":880},{"type":45,"tag":73,"props":14854,"children":14855},{"style":215},[14856],{"type":51,"value":885},{"type":45,"tag":73,"props":14858,"children":14859},{"class":75,"line":117},[14860,14864,14868,14872,14876,14880,14884,14888,14892,14896,14900,14904,14908,14912,14916],{"type":45,"tag":73,"props":14861,"children":14862},{"style":854},[14863],{"type":51,"value":7378},{"type":45,"tag":73,"props":14865,"children":14866},{"style":215},[14867],{"type":51,"value":862},{"type":45,"tag":73,"props":14869,"children":14870},{"style":221},[14871],{"type":51,"value":7387},{"type":45,"tag":73,"props":14873,"children":14874},{"style":215},[14875],{"type":51,"value":699},{"type":45,"tag":73,"props":14877,"children":14878},{"style":428},[14879],{"type":51,"value":7396},{"type":45,"tag":73,"props":14881,"children":14882},{"style":221},[14883],{"type":51,"value":453},{"type":45,"tag":73,"props":14885,"children":14886},{"style":215},[14887],{"type":51,"value":294},{"type":45,"tag":73,"props":14889,"children":14890},{"style":96},[14891],{"type":51,"value":7409},{"type":45,"tag":73,"props":14893,"children":14894},{"style":215},[14895],{"type":51,"value":294},{"type":45,"tag":73,"props":14897,"children":14898},{"style":221},[14899],{"type":51,"value":506},{"type":45,"tag":73,"props":14901,"children":14902},{"style":215},[14903],{"type":51,"value":699},{"type":45,"tag":73,"props":14905,"children":14906},{"style":221},[14907],{"type":51,"value":7426},{"type":45,"tag":73,"props":14909,"children":14910},{"style":3108},[14911],{"type":51,"value":5697},{"type":45,"tag":73,"props":14913,"children":14914},{"style":221},[14915],{"type":51,"value":5702},{"type":45,"tag":73,"props":14917,"children":14918},{"style":215},[14919],{"type":51,"value":885},{"type":45,"tag":73,"props":14921,"children":14922},{"class":75,"line":126},[14923,14927,14931],{"type":45,"tag":73,"props":14924,"children":14925},{"style":854},[14926],{"type":51,"value":14503},{"type":45,"tag":73,"props":14928,"children":14929},{"style":215},[14930],{"type":51,"value":862},{"type":45,"tag":73,"props":14932,"children":14933},{"style":221},[14934],{"type":51,"value":4940},{"type":45,"tag":73,"props":14936,"children":14937},{"class":75,"line":143},[14938,14942,14946,14950,14954,14958,14962,14966],{"type":45,"tag":73,"props":14939,"children":14940},{"style":221},[14941],{"type":51,"value":14519},{"type":45,"tag":73,"props":14943,"children":14944},{"style":215},[14945],{"type":51,"value":699},{"type":45,"tag":73,"props":14947,"children":14948},{"style":428},[14949],{"type":51,"value":14203},{"type":45,"tag":73,"props":14951,"children":14952},{"style":221},[14953],{"type":51,"value":14532},{"type":45,"tag":73,"props":14955,"children":14956},{"style":215},[14957],{"type":51,"value":699},{"type":45,"tag":73,"props":14959,"children":14960},{"style":428},[14961],{"type":51,"value":14710},{"type":45,"tag":73,"props":14963,"children":14964},{"style":221},[14965],{"type":51,"value":14715},{"type":45,"tag":73,"props":14967,"children":14968},{"style":215},[14969],{"type":51,"value":885},{"type":45,"tag":73,"props":14971,"children":14972},{"class":75,"line":151},[14973,14977,14981,14985,14989,14993,14997,15001,15005,15009,15013,15017],{"type":45,"tag":73,"props":14974,"children":14975},{"style":221},[14976],{"type":51,"value":14519},{"type":45,"tag":73,"props":14978,"children":14979},{"style":215},[14980],{"type":51,"value":699},{"type":45,"tag":73,"props":14982,"children":14983},{"style":428},[14984],{"type":51,"value":14210},{"type":45,"tag":73,"props":14986,"children":14987},{"style":221},[14988],{"type":51,"value":14532},{"type":45,"tag":73,"props":14990,"children":14991},{"style":215},[14992],{"type":51,"value":699},{"type":45,"tag":73,"props":14994,"children":14995},{"style":428},[14996],{"type":51,"value":1291},{"type":45,"tag":73,"props":14998,"children":14999},{"style":221},[15000],{"type":51,"value":453},{"type":45,"tag":73,"props":15002,"children":15003},{"style":215},[15004],{"type":51,"value":294},{"type":45,"tag":73,"props":15006,"children":15007},{"style":96},[15008],{"type":51,"value":3200},{"type":45,"tag":73,"props":15010,"children":15011},{"style":215},[15012],{"type":51,"value":294},{"type":45,"tag":73,"props":15014,"children":15015},{"style":221},[15016],{"type":51,"value":2102},{"type":45,"tag":73,"props":15018,"children":15019},{"style":215},[15020],{"type":51,"value":885},{"type":45,"tag":73,"props":15022,"children":15023},{"class":75,"line":160},[15024,15028,15032,15036,15040,15044,15048,15052,15056,15060,15064,15068],{"type":45,"tag":73,"props":15025,"children":15026},{"style":221},[15027],{"type":51,"value":14519},{"type":45,"tag":73,"props":15029,"children":15030},{"style":215},[15031],{"type":51,"value":699},{"type":45,"tag":73,"props":15033,"children":15034},{"style":428},[15035],{"type":51,"value":3251},{"type":45,"tag":73,"props":15037,"children":15038},{"style":221},[15039],{"type":51,"value":14532},{"type":45,"tag":73,"props":15041,"children":15042},{"style":215},[15043],{"type":51,"value":699},{"type":45,"tag":73,"props":15045,"children":15046},{"style":428},[15047],{"type":51,"value":1291},{"type":45,"tag":73,"props":15049,"children":15050},{"style":221},[15051],{"type":51,"value":453},{"type":45,"tag":73,"props":15053,"children":15054},{"style":215},[15055],{"type":51,"value":294},{"type":45,"tag":73,"props":15057,"children":15058},{"style":96},[15059],{"type":51,"value":3200},{"type":45,"tag":73,"props":15061,"children":15062},{"style":215},[15063],{"type":51,"value":294},{"type":45,"tag":73,"props":15065,"children":15066},{"style":221},[15067],{"type":51,"value":2102},{"type":45,"tag":73,"props":15069,"children":15070},{"style":215},[15071],{"type":51,"value":885},{"type":45,"tag":73,"props":15073,"children":15074},{"class":75,"line":474},[15075],{"type":45,"tag":73,"props":15076,"children":15077},{"style":221},[15078],{"type":51,"value":5287},{"type":45,"tag":73,"props":15080,"children":15081},{"class":75,"line":988},[15082,15086,15090],{"type":45,"tag":73,"props":15083,"children":15084},{"style":215},[15085],{"type":51,"value":977},{"type":45,"tag":73,"props":15087,"children":15088},{"style":221},[15089],{"type":51,"value":506},{"type":45,"tag":73,"props":15091,"children":15092},{"style":215},[15093],{"type":51,"value":299},{"type":45,"tag":1468,"props":15095,"children":15096},{},[15097],{"type":45,"tag":1472,"props":15098,"children":15099},{},[15100,15105],{"type":45,"tag":1476,"props":15101,"children":15102},{},[15103],{"type":51,"value":15104},"When to set permissions:",{"type":51,"value":15106}," Set row\u002Ffile-level permissions when you need per-resource access control. If all rows in a table share the same rules, configure permissions at the table\u002Fbucket level and leave row permissions empty.",{"type":45,"tag":1468,"props":15108,"children":15109},{},[15110,15118],{"type":45,"tag":1472,"props":15111,"children":15112},{},[15113],{"type":45,"tag":1476,"props":15114,"children":15115},{},[15116],{"type":51,"value":15117},"Common mistakes:",{"type":45,"tag":4750,"props":15119,"children":15120},{},[15121,15131,15164],{"type":45,"tag":4754,"props":15122,"children":15123},{},[15124,15129],{"type":45,"tag":1476,"props":15125,"children":15126},{},[15127],{"type":51,"value":15128},"Forgetting permissions",{"type":51,"value":15130}," — the resource becomes inaccessible to all users (including the creator)",{"type":45,"tag":4754,"props":15132,"children":15133},{},[15134,15162],{"type":45,"tag":1476,"props":15135,"children":15136},{},[15137,15143,15145,15150,15151,15156,15157],{"type":45,"tag":69,"props":15138,"children":15140},{"className":15139},[],[15141],{"type":51,"value":15142},"Role.any()",{"type":51,"value":15144}," with ",{"type":45,"tag":69,"props":15146,"children":15148},{"className":15147},[],[15149],{"type":51,"value":14230},{"type":51,"value":12122},{"type":45,"tag":69,"props":15152,"children":15154},{"className":15153},[],[15155],{"type":51,"value":14210},{"type":51,"value":12122},{"type":45,"tag":69,"props":15158,"children":15160},{"className":15159},[],[15161],{"type":51,"value":3251},{"type":51,"value":15163}," — allows any user, including unauthenticated guests, to modify or remove the resource",{"type":45,"tag":4754,"props":15165,"children":15166},{},[15167,15178],{"type":45,"tag":1476,"props":15168,"children":15169},{},[15170,15176],{"type":45,"tag":69,"props":15171,"children":15173},{"className":15172},[],[15174],{"type":51,"value":15175},"Permission.read(Role.any())",{"type":51,"value":15177}," on sensitive data",{"type":51,"value":15179}," — makes the resource publicly readable",{"type":45,"tag":15181,"props":15182,"children":15183},"style",{},[15184],{"type":51,"value":15185},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":15187,"total":996},[15188,15205,15223,15238,15252,15269,15283,15297,15312,15326,15345],{"slug":15189,"name":15189,"fn":15190,"description":15191,"org":15192,"tags":15193,"stars":29,"repoUrl":30,"updatedAt":15204},"appwrite-cli","manage Appwrite projects via CLI","Appwrite CLI skill. Use when managing Appwrite projects from the command line. Covers installation, login, project initialization, multi-file project configuration, deploying functions\u002Fsites\u002Ftables\u002Fbuckets\u002Fteams\u002Fwebhooks\u002Ftopics, flag-based list queries, non-interactive CI\u002FCD mode, and generating type-safe SDKs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15194,15195,15198,15201],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},"Backend","backend",{"name":15199,"slug":15200,"type":15},"CLI","cli",{"name":15202,"slug":15203,"type":15},"Deployment","deployment","2026-07-12T08:45:23.213081",{"slug":15206,"name":15206,"fn":15207,"description":15208,"org":15209,"tags":15210,"stars":29,"repoUrl":30,"updatedAt":15222},"appwrite-dart","build applications with Appwrite Dart SDK","Appwrite Dart SDK skill. Use when building Flutter apps (mobile, web, desktop) or server-side Dart applications with Appwrite. Covers client-side auth (email, OAuth), database queries, file uploads with native file handling, real-time subscriptions, and server-side admin via API keys for user management, database administration, storage, and functions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15211,15212,15213,15216,15219],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":15214,"slug":15215,"type":15},"Dart","dart",{"name":15217,"slug":15218,"type":15},"Flutter","flutter",{"name":15220,"slug":15221,"type":15},"Mobile","mobile","2026-07-12T08:45:33.336948",{"slug":15224,"name":15224,"fn":15225,"description":15226,"org":15227,"tags":15228,"stars":29,"repoUrl":30,"updatedAt":15237},"appwrite-dotnet","build .NET applications with Appwrite SDK","Appwrite .NET SDK skill. Use when building server-side C# or .NET applications with Appwrite, including ASP.NET and Blazor integrations. Covers user management, database\u002Ftable CRUD, file storage, and functions via API keys.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15229,15232,15233,15234,15235],{"name":15230,"slug":15231,"type":15},".NET","net",{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":4641,"slug":15236,"type":15},"storage","2026-07-12T08:45:28.556413",{"slug":15239,"name":15239,"fn":15240,"description":15241,"org":15242,"tags":15243,"stars":29,"repoUrl":30,"updatedAt":15251},"appwrite-go","build Go applications with Appwrite SDK","Appwrite Go SDK skill. Use when building server-side Go applications with Appwrite. Covers user management, database\u002Ftable CRUD, file storage, and functions via API keys. Uses per-service packages and functional options pattern.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15244,15245,15246,15247,15250],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15248,"slug":15249,"type":15},"Go","go",{"name":4641,"slug":15236,"type":15},"2026-07-12T08:45:19.875231",{"slug":15253,"name":15253,"fn":15254,"description":15255,"org":15256,"tags":15257,"stars":29,"repoUrl":30,"updatedAt":15268},"appwrite-kotlin","build applications with Appwrite Kotlin SDK","Appwrite Kotlin SDK skill. Use when building native Android apps or server-side Kotlin\u002FJVM backends with Appwrite. Covers client-side auth (email, OAuth with Activity integration), database queries, file uploads, real-time subscriptions with coroutine support, and server-side admin via API keys for user management, database administration, storage, and functions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15258,15261,15262,15263,15264,15265],{"name":15259,"slug":15260,"type":15},"Android","android",{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15266,"slug":15267,"type":15},"Kotlin","kotlin","2026-07-12T08:45:40.750646",{"slug":15270,"name":15270,"fn":15271,"description":15272,"org":15273,"tags":15274,"stars":29,"repoUrl":30,"updatedAt":15282},"appwrite-php","build PHP applications with Appwrite","Appwrite PHP SDK skill. Use when building server-side PHP applications with Appwrite, including Laravel and Symfony integrations. Covers user management, database\u002Ftable CRUD, file storage, and functions via API keys.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15275,15276,15277,15278,15281],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15279,"slug":15280,"type":15},"PHP","php",{"name":4641,"slug":15236,"type":15},"2026-07-12T08:45:21.794433",{"slug":15284,"name":15284,"fn":15285,"description":15286,"org":15287,"tags":15288,"stars":29,"repoUrl":30,"updatedAt":15296},"appwrite-python","build Python applications with Appwrite","Appwrite Python SDK skill. Use when building server-side Python applications with Appwrite, including Django, Flask, and FastAPI integrations. Covers user management, database\u002Ftable CRUD, file storage, and functions via API keys.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15289,15290,15291,15292,15295],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15293,"slug":15294,"type":15},"Python","python",{"name":4641,"slug":15236,"type":15},"2026-07-12T08:45:37.768328",{"slug":15298,"name":15298,"fn":15299,"description":15300,"org":15301,"tags":15302,"stars":29,"repoUrl":30,"updatedAt":15311},"appwrite-ruby","build applications with Appwrite Ruby SDK","Appwrite Ruby SDK skill. Use when building server-side Ruby applications with Appwrite, including Rails and Sinatra integrations. Covers user management, database\u002Ftable CRUD, file storage, and functions via API keys.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15303,15306,15307,15308],{"name":15304,"slug":15305,"type":15},"API Development","api-development",{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":15309,"slug":15310,"type":15},"Ruby","ruby","2026-07-12T08:45:34.567568",{"slug":15313,"name":15313,"fn":15314,"description":15315,"org":15316,"tags":15317,"stars":29,"repoUrl":30,"updatedAt":15325},"appwrite-rust","build server-side applications with Appwrite","Appwrite Rust SDK skill. Use when building server-side Rust applications with Appwrite. Covers async client setup with API keys, user management, TablesDB database\u002Ftable\u002Frow operations, file storage, function executions, permissions, queries, and error handling. Uses the crates.io `appwrite` package and Tokio.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15318,15319,15320,15321,15322],{"name":15304,"slug":15305,"type":15},{"name":13,"slug":14,"type":15},{"name":26,"slug":27,"type":15},{"name":7213,"slug":7210,"type":15},{"name":15323,"slug":15324,"type":15},"Rust","rust","2026-07-12T08:45:25.167378",{"slug":15327,"name":15327,"fn":15328,"description":15329,"org":15330,"tags":15331,"stars":29,"repoUrl":30,"updatedAt":15344},"appwrite-swift","build applications with Appwrite Swift SDK","Appwrite Swift SDK skill. Use when building native iOS, macOS, watchOS, or tvOS apps, or server-side Swift applications with Appwrite. Covers client-side auth (email, OAuth), database queries, file uploads, real-time subscriptions with async\u002Fawait, and server-side admin via API keys for user management, database administration, storage, and functions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15332,15333,15334,15335,15338,15341],{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":26,"slug":27,"type":15},{"name":15336,"slug":15337,"type":15},"iOS","ios",{"name":15339,"slug":15340,"type":15},"macOS","macos",{"name":15342,"slug":15343,"type":15},"Swift","swift","2026-07-12T08:45:26.722393",{"slug":4,"name":4,"fn":5,"description":6,"org":15346,"tags":15347,"stars":29,"repoUrl":30,"updatedAt":31},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15348,15349,15350,15351,15352,15353],{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":26,"slug":27,"type":15},{"name":23,"slug":24,"type":15},{"name":17,"slug":18,"type":15},{"name":20,"slug":21,"type":15},{"items":15355,"total":996},[15356,15363,15371,15379,15387,15396,15404],{"slug":15189,"name":15189,"fn":15190,"description":15191,"org":15357,"tags":15358,"stars":29,"repoUrl":30,"updatedAt":15204},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15359,15360,15361,15362],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":15199,"slug":15200,"type":15},{"name":15202,"slug":15203,"type":15},{"slug":15206,"name":15206,"fn":15207,"description":15208,"org":15364,"tags":15365,"stars":29,"repoUrl":30,"updatedAt":15222},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15366,15367,15368,15369,15370],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":15214,"slug":15215,"type":15},{"name":15217,"slug":15218,"type":15},{"name":15220,"slug":15221,"type":15},{"slug":15224,"name":15224,"fn":15225,"description":15226,"org":15372,"tags":15373,"stars":29,"repoUrl":30,"updatedAt":15237},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15374,15375,15376,15377,15378],{"name":15230,"slug":15231,"type":15},{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":4641,"slug":15236,"type":15},{"slug":15239,"name":15239,"fn":15240,"description":15241,"org":15380,"tags":15381,"stars":29,"repoUrl":30,"updatedAt":15251},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15382,15383,15384,15385,15386],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15248,"slug":15249,"type":15},{"name":4641,"slug":15236,"type":15},{"slug":15253,"name":15253,"fn":15254,"description":15255,"org":15388,"tags":15389,"stars":29,"repoUrl":30,"updatedAt":15268},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15390,15391,15392,15393,15394,15395],{"name":15259,"slug":15260,"type":15},{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15266,"slug":15267,"type":15},{"slug":15270,"name":15270,"fn":15271,"description":15272,"org":15397,"tags":15398,"stars":29,"repoUrl":30,"updatedAt":15282},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15399,15400,15401,15402,15403],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15279,"slug":15280,"type":15},{"name":4641,"slug":15236,"type":15},{"slug":15284,"name":15284,"fn":15285,"description":15286,"org":15405,"tags":15406,"stars":29,"repoUrl":30,"updatedAt":15296},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[15407,15408,15409,15410,15411],{"name":9,"slug":8,"type":15},{"name":15196,"slug":15197,"type":15},{"name":26,"slug":27,"type":15},{"name":15293,"slug":15294,"type":15},{"name":4641,"slug":15236,"type":15}]