create-syncular-app 0.15.45 → 0.15.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-syncular-app",
3
- "version": "0.15.45",
3
+ "version": "0.15.46",
4
4
  "author": "Benjamin Kniffler",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,6 +71,7 @@ export interface NamedQuery<Row, Params = undefined> {
71
71
  readonly sql: string;
72
72
  readonly mapRow: (row: Readonly<Record<string, unknown>>) => Row;
73
73
  readonly tables: readonly string[];
74
+ readonly resultColumns: readonly QueryResultColumn[];
74
75
  readonly bind: (params: Params) => readonly QueryValue[];
75
76
  readonly sqlFor?: (params: Params) => string;
76
77
  readonly dependencies: (params: Params) => readonly QueryDependency[];
@@ -85,6 +86,12 @@ export interface QueryDependency {
85
86
  readonly scopeKeys?: readonly string[];
86
87
  }
87
88
 
89
+ export interface QueryResultColumn {
90
+ readonly name: string;
91
+ readonly type: 'string' | 'integer' | 'float' | 'boolean' | 'json' | 'bytes' | 'blob_ref' | 'crdt';
92
+ readonly nullable: boolean;
93
+ }
94
+
88
95
  export interface WindowCoverage {
89
96
  readonly base: {
90
97
  readonly table: string;
@@ -158,6 +165,7 @@ export const listTodosQuery: NamedQuery<ListTodosRow, ListTodosParams> = {
158
165
  mapRow: listTodosMapRow,
159
166
  sqlFor: (params: ListTodosParams) => listTodosSelect(params).sql,
160
167
  tables: listTodosTables,
168
+ resultColumns: [{ name: 'id', type: 'string', nullable: false }, { name: 'listId', type: 'string', nullable: false }, { name: 'title', type: 'string', nullable: false }, { name: 'done', type: 'boolean', nullable: false }, { name: 'position', type: 'integer', nullable: false }, { name: 'updatedAtMs', type: 'integer', nullable: false }],
161
169
  dependencies: (params) => [
162
170
  { table: 'todos', scopeKeys: ['list:' + String(params.listId) + ''] },
163
171
  ],
@@ -21,7 +21,7 @@ tauri = { version = "2", features = [] }
21
21
  # The syncular plugin from crates.io. `native-transport` gives the core its
22
22
  # real HTTP + WebSocket transport (ureq + tungstenite) inside the host
23
23
  # process — the webview never talks to the sync server directly.
24
- tauri-plugin-syncular = { version = "0.15.45", features = ["native-transport"] }
24
+ tauri-plugin-syncular = { version = "0.15.46", features = ["native-transport"] }
25
25
 
26
26
  [features]
27
27
  default = []