@peerbit/indexer-sqlite3 3.0.2 → 3.0.4
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.min.js +43 -8
- package/dist/index.min.js.map +2 -2
- package/dist/src/engine.d.ts.map +1 -1
- package/dist/src/engine.js +3 -3
- package/dist/src/engine.js.map +1 -1
- package/dist/src/schema.d.ts +2 -0
- package/dist/src/schema.d.ts.map +1 -1
- package/dist/src/schema.js +48 -6
- package/dist/src/schema.js.map +1 -1
- package/package.json +4 -4
- package/src/engine.ts +4 -2
- package/src/schema.ts +59 -6
package/dist/index.min.js
CHANGED
|
@@ -20296,6 +20296,37 @@ var SQLConversionMap = {
|
|
|
20296
20296
|
var WRAPPED_SIMPLE_VALUE_VARIANT = "wrapped";
|
|
20297
20297
|
var JSON_GROUP_ARRAY = "json_group_array";
|
|
20298
20298
|
var JSON_OBJECT = "distinct json_object";
|
|
20299
|
+
var coerceLocalQuery = (query) => {
|
|
20300
|
+
if (query instanceof Query) {
|
|
20301
|
+
return query;
|
|
20302
|
+
}
|
|
20303
|
+
return deserialize(serialize(query), Query);
|
|
20304
|
+
};
|
|
20305
|
+
var coerceLocalQueries = (query) => {
|
|
20306
|
+
if (!query) {
|
|
20307
|
+
return [];
|
|
20308
|
+
}
|
|
20309
|
+
if (Array.isArray(query)) {
|
|
20310
|
+
return query.map((entry) => coerceLocalQuery(entry));
|
|
20311
|
+
}
|
|
20312
|
+
if (query instanceof Query) {
|
|
20313
|
+
return [query];
|
|
20314
|
+
}
|
|
20315
|
+
try {
|
|
20316
|
+
return [coerceLocalQuery(query)];
|
|
20317
|
+
} catch {
|
|
20318
|
+
return toQuery(query).map((entry) => coerceLocalQuery(entry));
|
|
20319
|
+
}
|
|
20320
|
+
};
|
|
20321
|
+
var coerceLocalSorts = (sort) => {
|
|
20322
|
+
if (!sort) {
|
|
20323
|
+
return void 0;
|
|
20324
|
+
}
|
|
20325
|
+
if (Array.isArray(sort)) {
|
|
20326
|
+
return sort.map((entry) => entry instanceof Sort ? entry : deserialize(serialize(entry), Sort));
|
|
20327
|
+
}
|
|
20328
|
+
return sort instanceof Sort ? sort : deserialize(serialize(sort), Sort);
|
|
20329
|
+
};
|
|
20299
20330
|
var u64ToI64 = (u64) => {
|
|
20300
20331
|
return (typeof u64 === "number" ? BigInt(u64) : u64) - 9223372036854775808n;
|
|
20301
20332
|
};
|
|
@@ -21187,14 +21218,14 @@ var resolveInstanceFromValue = async (fromTablePrefixedValues, tables, table, re
|
|
|
21187
21218
|
return Object.assign(Object.create(table.ctor.prototype), obj);
|
|
21188
21219
|
};
|
|
21189
21220
|
var convertDeleteRequestToQuery = (request, tables, table) => {
|
|
21190
|
-
const { query, bindable } = convertRequestToQuery("delete", { query:
|
|
21221
|
+
const { query, bindable } = convertRequestToQuery("delete", { query: coerceLocalQueries(request.query) }, tables, table);
|
|
21191
21222
|
return {
|
|
21192
21223
|
sql: `DELETE FROM ${table.name} WHERE ${table.name}.${table.primary} IN (SELECT ${table.primary} from ${table.name} ${query}) returning ${table.primary}`,
|
|
21193
21224
|
bindable
|
|
21194
21225
|
};
|
|
21195
21226
|
};
|
|
21196
21227
|
var convertSumRequestToQuery = (request, tables, table) => {
|
|
21197
|
-
const { query, bindable } = convertRequestToQuery("sum", { query:
|
|
21228
|
+
const { query, bindable } = convertRequestToQuery("sum", { query: coerceLocalQueries(request.query), key: request.key }, tables, table);
|
|
21198
21229
|
const inlineName = getInlineTableFieldName(request.key);
|
|
21199
21230
|
const field2 = table.fields.find((x) => x.name === inlineName);
|
|
21200
21231
|
if (unwrapNestedType(field2.from.type) === "u64") {
|
|
@@ -21207,7 +21238,7 @@ var convertSumRequestToQuery = (request, tables, table) => {
|
|
|
21207
21238
|
};
|
|
21208
21239
|
};
|
|
21209
21240
|
var convertCountRequestToQuery = (request, tables, table) => {
|
|
21210
|
-
const { query, bindable } = convertRequestToQuery("count", { query: request?.query
|
|
21241
|
+
const { query, bindable } = convertRequestToQuery("count", { query: coerceLocalQueries(request?.query) }, tables, table);
|
|
21211
21242
|
return {
|
|
21212
21243
|
sql: `SELECT count(DISTINCT ${table.name}.${table.primary}) as count FROM ${table.name} ${query}`,
|
|
21213
21244
|
bindable
|
|
@@ -21243,6 +21274,10 @@ var buildOrderBy = (sort, tables, table, joinBuilder, resolverBuilder, path = []
|
|
|
21243
21274
|
return { orderByBuilder };
|
|
21244
21275
|
};
|
|
21245
21276
|
var convertSearchRequestToQuery = (request, tables, rootTables, options) => {
|
|
21277
|
+
const normalizedRequest = request ? {
|
|
21278
|
+
query: coerceLocalQueries(request.query),
|
|
21279
|
+
sort: coerceLocalSorts(request.sort)
|
|
21280
|
+
} : void 0;
|
|
21246
21281
|
let unionBuilder = "";
|
|
21247
21282
|
let orderByClause = "";
|
|
21248
21283
|
let matchedOnce = false;
|
|
@@ -21252,7 +21287,7 @@ var convertSearchRequestToQuery = (request, tables, rootTables, options) => {
|
|
|
21252
21287
|
for (const [i, table] of rootTables.entries()) {
|
|
21253
21288
|
const { selects, joins, groupBy } = selectsPerTable[i];
|
|
21254
21289
|
try {
|
|
21255
|
-
const { orderByBuilder } = buildOrderBy(
|
|
21290
|
+
const { orderByBuilder } = buildOrderBy(normalizedRequest?.sort, tables, table, joins, selects, [], options);
|
|
21256
21291
|
if (!orderByClause && orderByBuilder) {
|
|
21257
21292
|
orderByClause = orderByBuilder.length > 0 ? orderByClause.length > 0 ? orderByClause + ", " + orderByBuilder : orderByBuilder : orderByClause;
|
|
21258
21293
|
}
|
|
@@ -21264,7 +21299,7 @@ var convertSearchRequestToQuery = (request, tables, rootTables, options) => {
|
|
|
21264
21299
|
throw error2;
|
|
21265
21300
|
}
|
|
21266
21301
|
const selectQuery = generateSelectQuery(table, selects);
|
|
21267
|
-
for (const flattenRequest of flattenQuery(
|
|
21302
|
+
for (const flattenRequest of flattenQuery(normalizedRequest)) {
|
|
21268
21303
|
try {
|
|
21269
21304
|
const { query, bindable } = convertRequestToQuery(
|
|
21270
21305
|
"iterate",
|
|
@@ -21318,7 +21353,7 @@ var convertRequestToQuery = (type, request, tables, table, extraJoin, path = [],
|
|
|
21318
21353
|
let bindableBuilder = [];
|
|
21319
21354
|
let joinBuilder = extraJoin || /* @__PURE__ */ new Map();
|
|
21320
21355
|
getOrSetRootTable(joinBuilder, table);
|
|
21321
|
-
const coercedQuery =
|
|
21356
|
+
const coercedQuery = coerceLocalQueries(request?.query);
|
|
21322
21357
|
if (coercedQuery.length === 1) {
|
|
21323
21358
|
const { where: where2, bindable } = convertQueryToSQLQuery(coercedQuery[0], tables, table, joinBuilder, path, void 0, 0);
|
|
21324
21359
|
whereBuilder += where2;
|
|
@@ -22256,8 +22291,8 @@ var SQLiteIndex = class {
|
|
|
22256
22291
|
let bindable = [];
|
|
22257
22292
|
let sqlFetch = void 0;
|
|
22258
22293
|
const normalizedQuery = new PlannableQuery({
|
|
22259
|
-
query:
|
|
22260
|
-
sort: request?.sort
|
|
22294
|
+
query: coerceLocalQueries(request?.query),
|
|
22295
|
+
sort: coerceLocalSorts(request?.sort)
|
|
22261
22296
|
});
|
|
22262
22297
|
let planningScope;
|
|
22263
22298
|
const fetch2 = async (amount) => {
|