@cbnsndwch/zero-sources

SyncedQueryTransformService class

Home > @cbnsndwch/nest-zero-synced-queries > SyncedQueryTransformService

SyncedQueryTransformService class

Service for transforming Zero query requests into AST responses.

This service coordinates: 1. Looking up query handlers in the registry 2. Executing handlers with user context and arguments 3. Converting query builders to AST format 4. Handling errors per Zero protocol

Signature:

export declare class SyncedQueryTransformService

Remarks

This is internal plumbing - users don't interact with this directly. The SyncedQueriesController uses this service to process requests.

## Architecture

The service processes queries in parallel for performance: - Each query is executed independently - Errors are isolated to individual query responses - Handler lookup is O(1) via Map - Target overhead: < 100ms for multiple queries

## Error Handling

Errors are caught and returned as error responses per Zero protocol: - Unknown query names return 'app' errors - Query execution failures return 'app' errors with details - Missing toAST() methods return 'app' errors

Example

// Request from Zero cache:
POST /api/zero/get-queries
[
  { "id": "q1", "name": "myChats", "args": [] },
  { "id": "q2", "name": "chatById", "args": ["chat-123"] }
]

// Response:
[
  { "id": "q1", "name": "myChats", "ast": { ... } },
  { "id": "q2", "name": "chatById", "ast": { ... } }
]

Constructors

Constructor

Modifiers

Description

(constructor)(registry)

Constructs a new instance of the SyncedQueryTransformService class

Methods

Method

Modifiers

Description

transformQueries(request, input)

Transform multiple query requests in parallel.

How was this page?