@budibase/server 2.6.19-alpha.50 → 2.6.19-alpha.52
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/builder/assets/{index.6ebb99b3.css → index.a86e2071.css} +1 -1
- package/builder/assets/{index.a7585108.js → index.e9310876.js} +177 -177
- package/builder/index.html +2 -2
- package/dist/automation.js +44 -7
- package/dist/automation.js.map +3 -3
- package/dist/index.js +44 -8
- package/dist/index.js.map +3 -3
- package/dist/query.js +43 -6
- package/dist/query.js.map +3 -3
- package/package.json +8 -8
- package/src/integrations/googlesheets.ts +33 -9
- package/src/websockets/websocket.ts +0 -1
package/dist/index.js
CHANGED
|
@@ -19730,11 +19730,12 @@ __export(filters_exports, {
|
|
|
19730
19730
|
NoEmptyFilterStrings: () => NoEmptyFilterStrings2,
|
|
19731
19731
|
buildLuceneQuery: () => buildLuceneQuery,
|
|
19732
19732
|
getValidOperatorsForType: () => getValidOperatorsForType,
|
|
19733
|
+
hasFilters: () => hasFilters,
|
|
19733
19734
|
luceneLimit: () => luceneLimit,
|
|
19734
19735
|
luceneSort: () => luceneSort,
|
|
19735
19736
|
runLuceneQuery: () => runLuceneQuery
|
|
19736
19737
|
});
|
|
19737
|
-
var HBS_REGEX, getValidOperatorsForType, NoEmptyFilterStrings2, cleanupQuery, removeKeyNumbering2, buildLuceneQuery, runLuceneQuery, luceneSort, luceneLimit;
|
|
19738
|
+
var HBS_REGEX, getValidOperatorsForType, NoEmptyFilterStrings2, cleanupQuery, removeKeyNumbering2, buildLuceneQuery, runLuceneQuery, luceneSort, luceneLimit, hasFilters;
|
|
19738
19739
|
var init_filters = __esm({
|
|
19739
19740
|
"../shared-core/src/filters.ts"() {
|
|
19740
19741
|
init_src();
|
|
@@ -20000,6 +20001,21 @@ var init_filters = __esm({
|
|
|
20000
20001
|
}
|
|
20001
20002
|
return docs.slice(0, numLimit);
|
|
20002
20003
|
};
|
|
20004
|
+
hasFilters = (query3) => {
|
|
20005
|
+
if (!query3) {
|
|
20006
|
+
return false;
|
|
20007
|
+
}
|
|
20008
|
+
const skipped = ["allOr"];
|
|
20009
|
+
for (let [key, value] of Object.entries(query3)) {
|
|
20010
|
+
if (skipped.includes(key) || typeof value !== "object") {
|
|
20011
|
+
continue;
|
|
20012
|
+
}
|
|
20013
|
+
if (Object.keys(value).length !== 0) {
|
|
20014
|
+
return true;
|
|
20015
|
+
}
|
|
20016
|
+
}
|
|
20017
|
+
return false;
|
|
20018
|
+
};
|
|
20003
20019
|
}
|
|
20004
20020
|
});
|
|
20005
20021
|
|
|
@@ -29384,21 +29400,37 @@ var init_googlesheets = __esm({
|
|
|
29384
29400
|
}
|
|
29385
29401
|
}
|
|
29386
29402
|
async read(query3) {
|
|
29403
|
+
var _a2, _b2, _c, _d;
|
|
29387
29404
|
try {
|
|
29388
29405
|
await this.connect();
|
|
29406
|
+
const hasFilters2 = filters_exports.hasFilters(query3.filters);
|
|
29407
|
+
const limit = ((_a2 = query3.paginate) == null ? void 0 : _a2.limit) || 100;
|
|
29408
|
+
const page = typeof ((_b2 = query3.paginate) == null ? void 0 : _b2.page) === "number" ? query3.paginate.page : parseInt(((_c = query3.paginate) == null ? void 0 : _c.page) || "1");
|
|
29409
|
+
const offset = (page - 1) * limit;
|
|
29389
29410
|
const sheet = this.client.sheetsByTitle[query3.sheet];
|
|
29390
29411
|
let rows2 = [];
|
|
29391
|
-
if (query3.paginate) {
|
|
29392
|
-
const limit = query3.paginate.limit || 100;
|
|
29393
|
-
let page = typeof query3.paginate.page === "number" ? query3.paginate.page : parseInt(query3.paginate.page || "1");
|
|
29412
|
+
if (query3.paginate && !hasFilters2) {
|
|
29394
29413
|
rows2 = await sheet.getRows({
|
|
29395
29414
|
limit,
|
|
29396
|
-
offset
|
|
29415
|
+
offset
|
|
29397
29416
|
});
|
|
29398
29417
|
} else {
|
|
29399
29418
|
rows2 = await sheet.getRows();
|
|
29400
29419
|
}
|
|
29401
|
-
|
|
29420
|
+
if ((_d = query3.filters) == null ? void 0 : _d.equal) {
|
|
29421
|
+
const idFilterKeys = Object.keys(query3.filters.equal).filter(
|
|
29422
|
+
(filter2) => filter2.includes(GOOGLE_SHEETS_PRIMARY_KEY)
|
|
29423
|
+
);
|
|
29424
|
+
for (let idFilterKey of idFilterKeys) {
|
|
29425
|
+
const id = query3.filters.equal[idFilterKey];
|
|
29426
|
+
delete query3.filters.equal[idFilterKey];
|
|
29427
|
+
query3.filters.equal[`_${GOOGLE_SHEETS_PRIMARY_KEY}`] = id;
|
|
29428
|
+
}
|
|
29429
|
+
}
|
|
29430
|
+
let filtered2 = filters_exports.runLuceneQuery(rows2, query3.filters);
|
|
29431
|
+
if (hasFilters2 && query3.paginate) {
|
|
29432
|
+
filtered2 = filtered2.slice(offset, offset + limit);
|
|
29433
|
+
}
|
|
29402
29434
|
const headerValues = sheet.headerValues;
|
|
29403
29435
|
let response2 = [];
|
|
29404
29436
|
for (let row2 of filtered2) {
|
|
@@ -29456,7 +29488,12 @@ var init_googlesheets = __esm({
|
|
|
29456
29488
|
const row2 = rows2[query3.rowIndex];
|
|
29457
29489
|
if (row2) {
|
|
29458
29490
|
await row2.delete();
|
|
29459
|
-
return [
|
|
29491
|
+
return [
|
|
29492
|
+
{
|
|
29493
|
+
deleted: query3.rowIndex,
|
|
29494
|
+
[GOOGLE_SHEETS_PRIMARY_KEY]: query3.rowIndex
|
|
29495
|
+
}
|
|
29496
|
+
];
|
|
29460
29497
|
} else {
|
|
29461
29498
|
throw new Error("Row does not exist.");
|
|
29462
29499
|
}
|
|
@@ -31163,7 +31200,6 @@ var init_websocket2 = __esm({
|
|
|
31163
31200
|
this.initialise().then(() => {
|
|
31164
31201
|
this.io.on("connection", async (socket) => {
|
|
31165
31202
|
socket.on("Heartbeat" /* Heartbeat */, async () => {
|
|
31166
|
-
console.log(socket.data.email, "heartbeat received");
|
|
31167
31203
|
await this.extendSessionTTL(socket.data.sessionId);
|
|
31168
31204
|
});
|
|
31169
31205
|
socket.on("disconnect", async () => {
|