@type32/tauri-sqlite-orm 0.1.18-13 → 0.1.18-14
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/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +9 -7
- package/dist/index.mjs +9 -7
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -58,6 +58,7 @@ declare class SelectQueryBuilder<TTable extends AnyTable, TSelectedColumns exten
|
|
|
58
58
|
private joins;
|
|
59
59
|
private includeRelations;
|
|
60
60
|
private selectedTableAlias;
|
|
61
|
+
private selectedColumns;
|
|
61
62
|
constructor(db: Database, table: TTable, columns?: TSelectedColumns | undefined);
|
|
62
63
|
distinct(): this;
|
|
63
64
|
groupBy(...columns: AnySQLiteColumn[]): this;
|
package/dist/index.d.ts
CHANGED
|
@@ -58,6 +58,7 @@ declare class SelectQueryBuilder<TTable extends AnyTable, TSelectedColumns exten
|
|
|
58
58
|
private joins;
|
|
59
59
|
private includeRelations;
|
|
60
60
|
private selectedTableAlias;
|
|
61
|
+
private selectedColumns;
|
|
61
62
|
constructor(db: Database, table: TTable, columns?: TSelectedColumns | undefined);
|
|
62
63
|
distinct(): this;
|
|
63
64
|
groupBy(...columns: AnySQLiteColumn[]): this;
|
package/dist/index.js
CHANGED
|
@@ -186,8 +186,8 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
186
186
|
this.table = table;
|
|
187
187
|
this.columns = columns;
|
|
188
188
|
this.selectedTableAlias = table._.name;
|
|
189
|
-
|
|
190
|
-
this.query = `
|
|
189
|
+
this.selectedColumns = columns ? columns.map((c) => `${this.selectedTableAlias}.${table._.columns[c]._.name}`) : [`${this.selectedTableAlias}.*`];
|
|
190
|
+
this.query = `FROM ${table._.name} ${this.selectedTableAlias}`;
|
|
191
191
|
}
|
|
192
192
|
isDistinct = false;
|
|
193
193
|
groupByColumns = [];
|
|
@@ -195,9 +195,9 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
195
195
|
joins = [];
|
|
196
196
|
includeRelations = {};
|
|
197
197
|
selectedTableAlias;
|
|
198
|
+
selectedColumns = [];
|
|
198
199
|
distinct() {
|
|
199
200
|
this.isDistinct = true;
|
|
200
|
-
this.query = this.query.replace("SELECT", "SELECT DISTINCT");
|
|
201
201
|
return this;
|
|
202
202
|
}
|
|
203
203
|
groupBy(...columns) {
|
|
@@ -214,10 +214,12 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
214
214
|
}
|
|
215
215
|
leftJoin(table, condition, alias2) {
|
|
216
216
|
this.joins.push({ type: "LEFT", table, condition, alias: alias2 });
|
|
217
|
+
this.selectedColumns.push(`${alias2}.*`);
|
|
217
218
|
return this;
|
|
218
219
|
}
|
|
219
220
|
innerJoin(table, condition, alias2) {
|
|
220
221
|
this.joins.push({ type: "INNER", table, condition, alias: alias2 });
|
|
222
|
+
this.selectedColumns.push(`${alias2}.*`);
|
|
221
223
|
return this;
|
|
222
224
|
}
|
|
223
225
|
include(relations2) {
|
|
@@ -237,6 +239,7 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
237
239
|
if (!relation) continue;
|
|
238
240
|
const foreignTable = relation.foreignTable;
|
|
239
241
|
const foreignAlias = `${this.selectedTableAlias}_${relationName}`;
|
|
242
|
+
this.selectedColumns.push(`${foreignAlias}.*`);
|
|
240
243
|
if (relation.type === "one" && relation.fields && relation.references) {
|
|
241
244
|
const conditions = relation.fields.map((field, i) => {
|
|
242
245
|
const localColumn = `${this.selectedTableAlias}.${field._.name}`;
|
|
@@ -266,10 +269,6 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
266
269
|
const condition = conditions.length > 1 ? and(...conditions) : conditions[0];
|
|
267
270
|
sql2 += ` LEFT JOIN ${foreignTable._.name} ${foreignAlias} ON ${condition.sql}`;
|
|
268
271
|
params.push(...condition.params);
|
|
269
|
-
this.query = this.query.replace("SELECT ", `SELECT ${this.selectedTableAlias}.*, ${foreignAlias}.* `).replace(
|
|
270
|
-
`SELECT ${this.selectedTableAlias}.*, `,
|
|
271
|
-
`SELECT ${this.selectedTableAlias}.*, ${foreignAlias}.*, `
|
|
272
|
-
);
|
|
273
272
|
}
|
|
274
273
|
}
|
|
275
274
|
}
|
|
@@ -278,9 +277,12 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
278
277
|
// Enhanced execute method that handles relation data mapping
|
|
279
278
|
async execute() {
|
|
280
279
|
const { sql: joinSql, params: joinParams } = this.buildJoins();
|
|
280
|
+
const distinct = this.isDistinct ? "DISTINCT " : "";
|
|
281
|
+
this.query = `SELECT ${distinct}${this.selectedColumns.join(", ")} ${this.query}`;
|
|
281
282
|
this.query += joinSql;
|
|
282
283
|
this.params.push(...joinParams);
|
|
283
284
|
const { sql: sql2, params } = this.build();
|
|
285
|
+
console.log("Executing SQL:", sql2, "with params:", params);
|
|
284
286
|
const rawResults = await this.db.select(sql2, params);
|
|
285
287
|
if (Object.keys(this.includeRelations).some((key) => this.includeRelations[key])) {
|
|
286
288
|
const processed = this.processRelationResults(rawResults);
|
package/dist/index.mjs
CHANGED
|
@@ -119,8 +119,8 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
119
119
|
this.table = table;
|
|
120
120
|
this.columns = columns;
|
|
121
121
|
this.selectedTableAlias = table._.name;
|
|
122
|
-
|
|
123
|
-
this.query = `
|
|
122
|
+
this.selectedColumns = columns ? columns.map((c) => `${this.selectedTableAlias}.${table._.columns[c]._.name}`) : [`${this.selectedTableAlias}.*`];
|
|
123
|
+
this.query = `FROM ${table._.name} ${this.selectedTableAlias}`;
|
|
124
124
|
}
|
|
125
125
|
isDistinct = false;
|
|
126
126
|
groupByColumns = [];
|
|
@@ -128,9 +128,9 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
128
128
|
joins = [];
|
|
129
129
|
includeRelations = {};
|
|
130
130
|
selectedTableAlias;
|
|
131
|
+
selectedColumns = [];
|
|
131
132
|
distinct() {
|
|
132
133
|
this.isDistinct = true;
|
|
133
|
-
this.query = this.query.replace("SELECT", "SELECT DISTINCT");
|
|
134
134
|
return this;
|
|
135
135
|
}
|
|
136
136
|
groupBy(...columns) {
|
|
@@ -147,10 +147,12 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
147
147
|
}
|
|
148
148
|
leftJoin(table, condition, alias2) {
|
|
149
149
|
this.joins.push({ type: "LEFT", table, condition, alias: alias2 });
|
|
150
|
+
this.selectedColumns.push(`${alias2}.*`);
|
|
150
151
|
return this;
|
|
151
152
|
}
|
|
152
153
|
innerJoin(table, condition, alias2) {
|
|
153
154
|
this.joins.push({ type: "INNER", table, condition, alias: alias2 });
|
|
155
|
+
this.selectedColumns.push(`${alias2}.*`);
|
|
154
156
|
return this;
|
|
155
157
|
}
|
|
156
158
|
include(relations2) {
|
|
@@ -170,6 +172,7 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
170
172
|
if (!relation) continue;
|
|
171
173
|
const foreignTable = relation.foreignTable;
|
|
172
174
|
const foreignAlias = `${this.selectedTableAlias}_${relationName}`;
|
|
175
|
+
this.selectedColumns.push(`${foreignAlias}.*`);
|
|
173
176
|
if (relation.type === "one" && relation.fields && relation.references) {
|
|
174
177
|
const conditions = relation.fields.map((field, i) => {
|
|
175
178
|
const localColumn = `${this.selectedTableAlias}.${field._.name}`;
|
|
@@ -199,10 +202,6 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
199
202
|
const condition = conditions.length > 1 ? and(...conditions) : conditions[0];
|
|
200
203
|
sql2 += ` LEFT JOIN ${foreignTable._.name} ${foreignAlias} ON ${condition.sql}`;
|
|
201
204
|
params.push(...condition.params);
|
|
202
|
-
this.query = this.query.replace("SELECT ", `SELECT ${this.selectedTableAlias}.*, ${foreignAlias}.* `).replace(
|
|
203
|
-
`SELECT ${this.selectedTableAlias}.*, `,
|
|
204
|
-
`SELECT ${this.selectedTableAlias}.*, ${foreignAlias}.*, `
|
|
205
|
-
);
|
|
206
205
|
}
|
|
207
206
|
}
|
|
208
207
|
}
|
|
@@ -211,9 +210,12 @@ var SelectQueryBuilder = class extends BaseQueryBuilder {
|
|
|
211
210
|
// Enhanced execute method that handles relation data mapping
|
|
212
211
|
async execute() {
|
|
213
212
|
const { sql: joinSql, params: joinParams } = this.buildJoins();
|
|
213
|
+
const distinct = this.isDistinct ? "DISTINCT " : "";
|
|
214
|
+
this.query = `SELECT ${distinct}${this.selectedColumns.join(", ")} ${this.query}`;
|
|
214
215
|
this.query += joinSql;
|
|
215
216
|
this.params.push(...joinParams);
|
|
216
217
|
const { sql: sql2, params } = this.build();
|
|
218
|
+
console.log("Executing SQL:", sql2, "with params:", params);
|
|
217
219
|
const rawResults = await this.db.select(sql2, params);
|
|
218
220
|
if (Object.keys(this.includeRelations).some((key) => this.includeRelations[key])) {
|
|
219
221
|
const processed = this.processRelationResults(rawResults);
|