@budibase/server 1.1.3 → 1.1.6
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.58a51c8a.css → index.1bfe8b40.css} +1 -1
- package/builder/assets/{index.5720ae2c.js → index.7d825643.js} +81 -81
- package/builder/index.html +2 -2
- package/coverage/clover.xml +2 -2
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
- package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
- package/coverage/lcov-report/api/controllers/component.js.html +1 -1
- package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
- package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
- package/coverage/lcov-report/api/controllers/index.html +1 -1
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
- package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
- package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
- package/coverage/lcov-report/api/controllers/query/index.html +1 -1
- package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/role.js.html +1 -1
- package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/index.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
- package/coverage/lcov-report/api/controllers/script.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
- package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +1 -1
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +1 -1
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/utils/index.html +1 -1
- package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +1 -1
- package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
- package/coverage/lcov-report/automations/bullboard.js.html +1 -1
- package/coverage/lcov-report/automations/index.html +1 -1
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
- package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/triggers.js.html +1 -1
- package/coverage/lcov-report/constants/index.html +1 -1
- package/coverage/lcov-report/constants/index.js.html +1 -1
- package/coverage/lcov-report/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/constants/screens.js.html +1 -1
- package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
- package/coverage/lcov-report/db/index.html +1 -1
- package/coverage/lcov-report/db/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
- package/coverage/lcov-report/db/newid.js.html +1 -1
- package/coverage/lcov-report/db/utils.js.html +1 -1
- package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +1 -1
- package/coverage/lcov-report/events/utils.js.html +1 -1
- package/coverage/lcov-report/index.html +1 -1
- package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
- package/coverage/lcov-report/middleware/builder.js.html +1 -1
- package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
- package/coverage/lcov-report/middleware/index.html +1 -1
- package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
- package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/utils.js.html +1 -1
- package/coverage/lcov-report/threads/automation.js.html +1 -1
- package/coverage/lcov-report/threads/index.html +1 -1
- package/coverage/lcov-report/threads/query.js.html +1 -1
- package/coverage/lcov-report/threads/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
- package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
- package/coverage/lcov-report/utilities/global.js.html +1 -1
- package/coverage/lcov-report/utilities/index.html +1 -1
- package/coverage/lcov-report/utilities/index.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/utilities/security.js.html +1 -1
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +1 -1
- package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
- package/dist/api/controllers/query/index.js +29 -1
- package/dist/integrations/index.js +1 -1
- package/dist/package.json +6 -6
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/src/api/controllers/query/index.ts +29 -2
- package/src/api/routes/tests/query.spec.js +19 -4
- package/src/integrations/index.ts +1 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@budibase/server",
|
|
3
3
|
"email": "hi@budibase.com",
|
|
4
|
-
"version": "1.1.
|
|
4
|
+
"version": "1.1.6",
|
|
5
5
|
"description": "Budibase Web Server",
|
|
6
6
|
"main": "src/index.ts",
|
|
7
7
|
"repository": {
|
|
@@ -77,10 +77,10 @@
|
|
|
77
77
|
"license": "GPL-3.0",
|
|
78
78
|
"dependencies": {
|
|
79
79
|
"@apidevtools/swagger-parser": "10.0.3",
|
|
80
|
-
"@budibase/backend-core": "^1.1.
|
|
81
|
-
"@budibase/client": "^1.1.
|
|
82
|
-
"@budibase/pro": "1.1.
|
|
83
|
-
"@budibase/string-templates": "^1.1.
|
|
80
|
+
"@budibase/backend-core": "^1.1.6",
|
|
81
|
+
"@budibase/client": "^1.1.6",
|
|
82
|
+
"@budibase/pro": "1.1.5",
|
|
83
|
+
"@budibase/string-templates": "^1.1.6",
|
|
84
84
|
"@bull-board/api": "3.7.0",
|
|
85
85
|
"@bull-board/koa": "3.9.4",
|
|
86
86
|
"@elastic/elasticsearch": "7.10.0",
|
|
@@ -151,7 +151,7 @@
|
|
|
151
151
|
"@babel/core": "7.17.4",
|
|
152
152
|
"@babel/preset-env": "7.16.11",
|
|
153
153
|
"@budibase/standard-components": "^0.9.139",
|
|
154
|
-
"@budibase/types": "^1.1.
|
|
154
|
+
"@budibase/types": "^1.1.6",
|
|
155
155
|
"@jest/test-sequencer": "24.9.0",
|
|
156
156
|
"@types/apidoc": "0.50.0",
|
|
157
157
|
"@types/bson": "4.2.0",
|
|
@@ -195,5 +195,5 @@
|
|
|
195
195
|
"optionalDependencies": {
|
|
196
196
|
"oracledb": "5.3.0"
|
|
197
197
|
},
|
|
198
|
-
"gitHead": "
|
|
198
|
+
"gitHead": "e6f7b1699f75adf4f0805dfeb7dd45c978173acf"
|
|
199
199
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { generateQueryID, getQueryParams, isProdAppID } from "../../../db/utils"
|
|
2
|
-
import { BaseQueryVerbs } from "../../../constants"
|
|
2
|
+
import { BaseQueryVerbs, FieldTypes } from "../../../constants"
|
|
3
3
|
import { Thread, ThreadType } from "../../../threads"
|
|
4
4
|
import { save as saveDatasource } from "../datasource"
|
|
5
5
|
import { RestImporter } from "./import"
|
|
@@ -154,10 +154,37 @@ export async function preview(ctx: any) {
|
|
|
154
154
|
},
|
|
155
155
|
})
|
|
156
156
|
const { rows, keys, info, extra } = await quotas.addQuery(runFn)
|
|
157
|
+
const schemaFields: any = {}
|
|
158
|
+
if (rows?.length > 0) {
|
|
159
|
+
for (let key of [...new Set(keys)] as string[]) {
|
|
160
|
+
const field = rows[0][key]
|
|
161
|
+
let type = typeof field,
|
|
162
|
+
fieldType = FieldTypes.STRING
|
|
163
|
+
if (field)
|
|
164
|
+
switch (type) {
|
|
165
|
+
case "boolean":
|
|
166
|
+
schemaFields[key] = FieldTypes.BOOLEAN
|
|
167
|
+
break
|
|
168
|
+
case "object":
|
|
169
|
+
if (field instanceof Date) {
|
|
170
|
+
fieldType = FieldTypes.DATETIME
|
|
171
|
+
} else if (Array.isArray(field)) {
|
|
172
|
+
fieldType = FieldTypes.ARRAY
|
|
173
|
+
} else {
|
|
174
|
+
fieldType = FieldTypes.JSON
|
|
175
|
+
}
|
|
176
|
+
break
|
|
177
|
+
case "number":
|
|
178
|
+
fieldType = FieldTypes.NUMBER
|
|
179
|
+
break
|
|
180
|
+
}
|
|
181
|
+
schemaFields[key] = fieldType
|
|
182
|
+
}
|
|
183
|
+
}
|
|
157
184
|
await events.query.previewed(datasource, query)
|
|
158
185
|
ctx.body = {
|
|
159
186
|
rows,
|
|
160
|
-
schemaFields
|
|
187
|
+
schemaFields,
|
|
161
188
|
info,
|
|
162
189
|
extra,
|
|
163
190
|
}
|
|
@@ -215,7 +215,10 @@ describe("/queries", () => {
|
|
|
215
215
|
.expect("Content-Type", /json/)
|
|
216
216
|
.expect(200)
|
|
217
217
|
// these responses come from the mock
|
|
218
|
-
expect(res.body.schemaFields).toEqual(
|
|
218
|
+
expect(res.body.schemaFields).toEqual({
|
|
219
|
+
"a": "string",
|
|
220
|
+
"b": "number",
|
|
221
|
+
})
|
|
219
222
|
expect(res.body.rows.length).toEqual(1)
|
|
220
223
|
expect(events.query.previewed).toBeCalledTimes(1)
|
|
221
224
|
expect(events.query.previewed).toBeCalledWith(datasource, query)
|
|
@@ -289,7 +292,11 @@ describe("/queries", () => {
|
|
|
289
292
|
queryString: "test={{ variable2 }}",
|
|
290
293
|
})
|
|
291
294
|
// these responses come from the mock
|
|
292
|
-
expect(res.body.schemaFields).toEqual(
|
|
295
|
+
expect(res.body.schemaFields).toEqual({
|
|
296
|
+
"opts": "json",
|
|
297
|
+
"url": "string",
|
|
298
|
+
"value": "string",
|
|
299
|
+
})
|
|
293
300
|
expect(res.body.rows[0].url).toEqual("http://www.google.com?test=1")
|
|
294
301
|
})
|
|
295
302
|
|
|
@@ -299,7 +306,11 @@ describe("/queries", () => {
|
|
|
299
306
|
path: "www.google.com",
|
|
300
307
|
queryString: "test={{ variable3 }}",
|
|
301
308
|
})
|
|
302
|
-
expect(res.body.schemaFields).toEqual(
|
|
309
|
+
expect(res.body.schemaFields).toEqual({
|
|
310
|
+
"opts": "json",
|
|
311
|
+
"url": "string",
|
|
312
|
+
"value": "string"
|
|
313
|
+
})
|
|
303
314
|
expect(res.body.rows[0].url).toContain("doctype html")
|
|
304
315
|
})
|
|
305
316
|
|
|
@@ -318,7 +329,11 @@ describe("/queries", () => {
|
|
|
318
329
|
path: "www.failonce.com",
|
|
319
330
|
queryString: "test={{ variable3 }}",
|
|
320
331
|
})
|
|
321
|
-
expect(res.body.schemaFields).toEqual(
|
|
332
|
+
expect(res.body.schemaFields).toEqual({
|
|
333
|
+
"fails": "number",
|
|
334
|
+
"opts": "json",
|
|
335
|
+
"url": "string"
|
|
336
|
+
})
|
|
322
337
|
expect(res.body.rows[0].fails).toEqual(1)
|
|
323
338
|
})
|
|
324
339
|
|
|
@@ -53,7 +53,7 @@ const INTEGRATIONS = {
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
// optionally add oracle integration if the oracle binary can be installed
|
|
56
|
-
if (
|
|
56
|
+
if (process.arch && !process.arch.startsWith("arm")) {
|
|
57
57
|
const oracle = require("./oracle")
|
|
58
58
|
DEFINITIONS[SourceNames.ORACLE] = oracle.schema
|
|
59
59
|
INTEGRATIONS[SourceNames.ORACLE] = oracle.integration
|