@budibase/backend-core 2.28.7 → 2.29.0
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.js +30 -1
- package/dist/index.js.map +2 -2
- package/dist/index.js.meta.json +1 -1
- package/dist/package.json +4 -4
- package/dist/plugins.js.map +2 -2
- package/dist/plugins.js.meta.json +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/sql/sql.js +30 -0
- package/dist/src/sql/sql.js.map +1 -1
- package/dist/src/tenancy/db.d.ts +1 -0
- package/dist/src/tenancy/db.js +9 -2
- package/dist/src/tenancy/db.js.map +1 -1
- package/package.json +4 -4
- package/src/sql/sql.ts +31 -0
- package/src/tenancy/db.ts +6 -1
package/dist/index.js
CHANGED
|
@@ -60035,6 +60035,7 @@ __export(tenancy_exports, {
|
|
|
60035
60035
|
addTenantToUrl: () => addTenantToUrl,
|
|
60036
60036
|
getTenantDB: () => getTenantDB,
|
|
60037
60037
|
getTenantIDFromCtx: () => getTenantIDFromCtx,
|
|
60038
|
+
getTenantInfo: () => getTenantInfo,
|
|
60038
60039
|
isUserInAppTenant: () => isUserInAppTenant,
|
|
60039
60040
|
saveTenantInfo: () => saveTenantInfo
|
|
60040
60041
|
});
|
|
@@ -60045,11 +60046,15 @@ function getTenantDB(tenantId) {
|
|
|
60045
60046
|
}
|
|
60046
60047
|
async function saveTenantInfo(tenantInfo) {
|
|
60047
60048
|
const db = getTenantDB(tenantInfo.tenantId);
|
|
60048
|
-
return
|
|
60049
|
+
return db.put({
|
|
60049
60050
|
_id: "tenant_info",
|
|
60050
60051
|
...tenantInfo
|
|
60051
60052
|
});
|
|
60052
60053
|
}
|
|
60054
|
+
async function getTenantInfo(tenantId) {
|
|
60055
|
+
const db = getTenantDB(tenantId);
|
|
60056
|
+
return db.get("tenant_info");
|
|
60057
|
+
}
|
|
60053
60058
|
|
|
60054
60059
|
// src/tenancy/tenancy.ts
|
|
60055
60060
|
function addTenantToUrl(url) {
|
|
@@ -67860,6 +67865,24 @@ var InternalBuilder = class {
|
|
|
67860
67865
|
const parsedBody = body2.map((row) => parseBody(row));
|
|
67861
67866
|
return query.insert(parsedBody);
|
|
67862
67867
|
}
|
|
67868
|
+
bulkUpsert(knex3, json) {
|
|
67869
|
+
const { endpoint, body: body2 } = json;
|
|
67870
|
+
let query = this.knexWithAlias(knex3, endpoint);
|
|
67871
|
+
if (!Array.isArray(body2)) {
|
|
67872
|
+
return query;
|
|
67873
|
+
}
|
|
67874
|
+
const parsedBody = body2.map((row) => parseBody(row));
|
|
67875
|
+
if (this.client === "pg" /* POSTGRES */ || this.client === "sqlite3" /* SQL_LITE */ || this.client === "mysql2" /* MY_SQL */) {
|
|
67876
|
+
const primary = json.meta.table.primary;
|
|
67877
|
+
if (!primary) {
|
|
67878
|
+
throw new Error("Primary key is required for upsert");
|
|
67879
|
+
}
|
|
67880
|
+
return query.insert(parsedBody).onConflict(primary).merge();
|
|
67881
|
+
} else if (this.client === "mssql" /* MS_SQL */) {
|
|
67882
|
+
return query.insert(parsedBody);
|
|
67883
|
+
}
|
|
67884
|
+
return query.upsert(parsedBody);
|
|
67885
|
+
}
|
|
67863
67886
|
read(knex3, json, limit2) {
|
|
67864
67887
|
let { endpoint, resource, filters, paginate, relationships, tableAliases } = json;
|
|
67865
67888
|
const tableName = endpoint.entityId;
|
|
@@ -67877,6 +67900,9 @@ var InternalBuilder = class {
|
|
|
67877
67900
|
const offset = page * paginate.limit;
|
|
67878
67901
|
foundLimit = paginate.limit;
|
|
67879
67902
|
foundOffset = offset;
|
|
67903
|
+
} else if (paginate && paginate.offset && paginate.limit) {
|
|
67904
|
+
foundLimit = paginate.limit;
|
|
67905
|
+
foundOffset = paginate.offset;
|
|
67880
67906
|
} else if (paginate && paginate.limit) {
|
|
67881
67907
|
foundLimit = paginate.limit;
|
|
67882
67908
|
}
|
|
@@ -67973,6 +67999,9 @@ var SqlQueryBuilder = class extends sqlTable_default {
|
|
|
67973
67999
|
case "BULK_CREATE" /* BULK_CREATE */:
|
|
67974
68000
|
query = builder.bulkCreate(client, json);
|
|
67975
68001
|
break;
|
|
68002
|
+
case "BULK_UPSERT" /* BULK_UPSERT */:
|
|
68003
|
+
query = builder.bulkUpsert(client, json);
|
|
68004
|
+
break;
|
|
67976
68005
|
case "CREATE_TABLE" /* CREATE_TABLE */:
|
|
67977
68006
|
case "UPDATE_TABLE" /* UPDATE_TABLE */:
|
|
67978
68007
|
case "DELETE_TABLE" /* DELETE_TABLE */:
|