syncular-runtime 0.1.0

Shared Rust runtime for Syncular SQLite-backed native and browser clients.
Documentation
{
  "typescriptOutputPath": "../../examples/todo-app/generated/typescript/syncular.generated.ts",
  "typescriptServerOutputPath": "../../examples/todo-app/generated/typescript/syncular.server.generated.ts",
  "typescriptRuntimeImportPath": "../../../../../packages/client/src",
  "rustRuntimeCratePath": "syncular_runtime",
  "nativeSwiftOutputPath": "../../examples/todo-app/generated/swift/SyncularApp.swift",
  "nativeKotlinOutputPath": "../../examples/todo-app/generated/kotlin/SyncularApp.kt",
  "nativeAndroidKotlinOutputPath": "../../examples/todo-app/generated/kotlin/android/SyncularApp.kt",
  "nativeAndroidKotlinPackage": "dev.syncular.client.generated",
  "clientSchemaSupport": {
    "minSupported": 6
  },
  "localOnlyTables": ["local_preferences"],
  "localReadModels": [
    {
      "name": "taskCountsByUserCompletion",
      "kind": "countBy",
      "sourceTable": "tasks",
      "outputTable": "syncular_task_counts",
      "dimensions": ["user_id", "completed"],
      "countColumn": "task_count"
    }
  ],
  "tables": {
    "projects": {
      "subscriptionId": "sub-projects",
      "scopes": [
        {
          "name": "user_id",
          "column": "owner_id",
          "source": "actorId",
          "required": true
        }
      ],
      "serverVersionColumn": "server_version",
      "sqliteWithoutRowid": true
    },
    "tasks": {
      "subscriptionId": "sub-tasks",
      "scopes": [
        {
          "name": "user_id",
          "column": "user_id",
          "source": "actorId",
          "required": true
        },
        {
          "name": "project_id",
          "column": "project_id",
          "source": "projectId",
          "required": false
        }
      ],
      "serverVersionColumn": "server_version",
      "sqliteWithoutRowid": true,
      "blobColumns": ["image"],
      "encryptedFields": [
        {
          "field": "description",
          "scope": "tasks"
        }
      ],
      "crdtYjsFields": [
        {
          "field": "title",
          "stateColumn": "title_yjs_state",
          "containerKey": "title",
          "kind": "text"
        }
      ]
    },
    "comments": {
      "subscriptionId": "sub-comments",
      "scopes": [
        {
          "name": "user_id",
          "column": "author_id",
          "source": "actorId",
          "required": true
        },
        {
          "name": "project_id",
          "column": "project_id",
          "source": "projectId",
          "required": false
        }
      ],
      "serverVersionColumn": "server_version",
      "softDeleteColumn": "deleted",
      "sqliteWithoutRowid": true
    }
  }
}