@budibase/server 2.2.26 → 2.2.27-alpha.1
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/Dockerfile +1 -1
- package/__mocks__/aws-sdk.ts +20 -1
- package/__mocks__/node-fetch.ts +80 -0
- package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
- package/builder/assets/bg.29e85dd5.png +0 -0
- package/builder/assets/bulgaria.bd68393d.png +0 -0
- package/builder/assets/covanta.72c46c1e.png +0 -0
- package/builder/assets/index.3dd03883.css +6 -0
- package/builder/assets/index.77ae0e4d.js +1802 -0
- package/builder/assets/schnellecke.cf1837a8.png +0 -0
- package/builder/index.html +3 -3
- package/coverage/clover.xml +12565 -8055
- package/coverage/coverage-final.json +365 -276
- package/coverage/lcov-report/index.html +721 -466
- package/coverage/lcov-report/src/api/controllers/analytics.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/application.ts.html +364 -268
- package/coverage/lcov-report/src/api/controllers/auth.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/automation.ts.html +61 -61
- package/coverage/lcov-report/src/api/controllers/backup.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/cloud.ts.html +89 -77
- package/coverage/lcov-report/src/api/controllers/component.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/datasource.ts.html +122 -98
- package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +21 -18
- package/coverage/lcov-report/src/api/controllers/deploy/index.html +21 -21
- package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +142 -196
- package/coverage/lcov-report/src/api/controllers/dev.ts.html +33 -33
- package/coverage/lcov-report/src/api/controllers/index.html +125 -125
- package/coverage/lcov-report/src/api/controllers/integration.ts.html +5 -5
- package/coverage/lcov-report/src/api/controllers/layout.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/metadata.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/migrations.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/permission.ts.html +35 -35
- package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +62 -62
- package/coverage/lcov-report/src/api/controllers/plugin/index.html +72 -72
- package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +150 -135
- package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +56 -56
- package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +75 -24
- package/coverage/lcov-report/src/api/controllers/public/index.html +58 -58
- package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +7 -7
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +25 -25
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +15 -15
- package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/users.ts.html +27 -27
- package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +23 -23
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +16 -16
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +391 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +796 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +805 -0
- package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +568 -0
- package/coverage/lcov-report/src/api/controllers/query/index.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/index.ts.html +131 -107
- package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/role.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/routing.ts.html +10 -10
- package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +56 -41
- package/coverage/lcov-report/src/api/controllers/row/external.ts.html +87 -57
- package/coverage/lcov-report/src/api/controllers/row/index.html +66 -66
- package/coverage/lcov-report/src/api/controllers/row/index.ts.html +26 -26
- package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +171 -96
- package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +146 -146
- package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +30 -21
- package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +143 -26
- package/coverage/lcov-report/src/api/controllers/screen.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/script.ts.html +19 -19
- package/coverage/lcov-report/src/api/controllers/static/index.html +18 -18
- package/coverage/lcov-report/src/api/controllers/static/index.ts.html +56 -71
- package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +61 -61
- package/coverage/lcov-report/src/api/controllers/table/external.ts.html +56 -50
- package/coverage/lcov-report/src/api/controllers/table/index.html +51 -51
- package/coverage/lcov-report/src/api/controllers/table/index.ts.html +157 -70
- package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +68 -71
- package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +109 -112
- package/coverage/lcov-report/src/api/controllers/templates.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/user.ts.html +161 -137
- package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +64 -19
- package/coverage/lcov-report/src/api/controllers/view/index.html +38 -38
- package/coverage/lcov-report/src/api/controllers/view/index.ts.html +97 -133
- package/coverage/lcov-report/src/api/controllers/view/tests/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +277 -0
- package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +37 -37
- package/coverage/lcov-report/src/api/controllers/webhook.ts.html +78 -72
- package/coverage/lcov-report/src/api/index.html +15 -15
- package/coverage/lcov-report/src/api/index.ts.html +40 -40
- package/coverage/lcov-report/src/api/routes/analytics.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/apikeys.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/application.ts.html +46 -13
- package/coverage/lcov-report/src/api/routes/auth.ts.html +9 -9
- package/coverage/lcov-report/src/api/routes/automation.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/backup.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/cloud.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/component.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/datasource.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/deploy.ts.html +11 -14
- package/coverage/lcov-report/src/api/routes/dev.ts.html +17 -17
- package/coverage/lcov-report/src/api/routes/index.html +68 -68
- package/coverage/lcov-report/src/api/routes/index.ts.html +49 -40
- package/coverage/lcov-report/src/api/routes/integration.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/layout.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/metadata.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/migrations.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/permission.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/plugin.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/public/applications.ts.html +147 -15
- package/coverage/lcov-report/src/api/routes/public/index.html +27 -27
- package/coverage/lcov-report/src/api/routes/public/index.ts.html +60 -60
- package/coverage/lcov-report/src/api/routes/public/middleware/index.html +15 -15
- package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +28 -16
- package/coverage/lcov-report/src/api/routes/public/queries.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/public/rows.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tables.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +583 -0
- package/coverage/lcov-report/src/api/routes/public/tests/index.html +41 -11
- package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +199 -0
- package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +5 -5
- package/coverage/lcov-report/src/api/routes/public/users.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +21 -21
- package/coverage/lcov-report/src/api/routes/public/utils/index.html +5 -5
- package/coverage/lcov-report/src/api/routes/query.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/role.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/routing.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/row.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/screen.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/script.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/static.ts.html +18 -18
- package/coverage/lcov-report/src/api/routes/table.ts.html +29 -98
- package/coverage/lcov-report/src/api/routes/templates.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +271 -0
- package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +259 -0
- package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +1066 -0
- package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +154 -0
- package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +1123 -0
- package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +223 -0
- package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +262 -0
- package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +178 -0
- package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +799 -0
- package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +202 -0
- package/coverage/lcov-report/src/api/routes/tests/index.html +521 -0
- package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +238 -0
- package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +670 -0
- package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +259 -0
- package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +280 -0
- package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +358 -0
- package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +484 -0
- package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +622 -0
- package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +1696 -0
- package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +478 -0
- package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +430 -0
- package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +1804 -0
- package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +391 -0
- package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +541 -0
- package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +991 -0
- package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +154 -0
- package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +688 -0
- package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +116 -47
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +27 -27
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +42 -36
- package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +1342 -0
- package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +484 -0
- package/coverage/lcov-report/src/api/routes/user.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/utils/index.html +3 -3
- package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +44 -44
- package/coverage/lcov-report/src/api/routes/view.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/webhook.ts.html +13 -13
- package/coverage/lcov-report/src/app.ts.html +57 -48
- package/coverage/lcov-report/src/automations/actions.ts.html +31 -31
- package/coverage/lcov-report/src/automations/automationUtils.ts.html +127 -55
- package/coverage/lcov-report/src/automations/bullboard.ts.html +19 -19
- package/coverage/lcov-report/src/automations/index.html +58 -58
- package/coverage/lcov-report/src/automations/index.ts.html +23 -23
- package/coverage/lcov-report/src/automations/logging/index.html +3 -3
- package/coverage/lcov-report/src/automations/logging/index.ts.html +15 -15
- package/coverage/lcov-report/src/automations/steps/bash.ts.html +34 -34
- package/coverage/lcov-report/src/automations/steps/createRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/delay.ts.html +7 -7
- package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/discord.ts.html +33 -33
- package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +35 -35
- package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +31 -31
- package/coverage/lcov-report/src/automations/steps/filter.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/index.html +129 -129
- package/coverage/lcov-report/src/automations/steps/integromat.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/loop.ts.html +5 -5
- package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +43 -43
- package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +28 -28
- package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/slack.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/utils.ts.html +18 -18
- package/coverage/lcov-report/src/automations/steps/zapier.ts.html +22 -22
- package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +337 -0
- package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +187 -0
- package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +223 -0
- package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +133 -0
- package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +250 -0
- package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +166 -0
- package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +229 -0
- package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +229 -0
- package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +232 -0
- package/coverage/lcov-report/src/automations/tests/index.html +341 -0
- package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +220 -0
- package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +202 -0
- package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +436 -0
- package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +298 -0
- package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +151 -0
- package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +217 -0
- package/coverage/lcov-report/src/automations/tests/utilities/index.html +15 -15
- package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +32 -32
- package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +166 -0
- package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/index.html +17 -17
- package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +10 -10
- package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggers.ts.html +61 -46
- package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +280 -0
- package/coverage/lcov-report/src/automations/unitTests/index.html +116 -0
- package/coverage/lcov-report/src/automations/utils.ts.html +84 -84
- package/coverage/lcov-report/src/constants/index.html +19 -19
- package/coverage/lcov-report/src/constants/index.ts.html +103 -103
- package/coverage/lcov-report/src/constants/layouts.ts.html +9 -9
- package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
- package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -45
- package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/index.html +43 -43
- package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/dynamoClient.ts.html +26 -26
- package/coverage/lcov-report/src/db/inMemoryView.ts.html +13 -13
- package/coverage/lcov-report/src/db/index.html +43 -43
- package/coverage/lcov-report/src/db/index.ts.html +20 -20
- package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +38 -38
- package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +7 -7
- package/coverage/lcov-report/src/db/linkedRows/index.html +37 -37
- package/coverage/lcov-report/src/db/linkedRows/index.ts.html +40 -40
- package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +27 -27
- package/coverage/lcov-report/src/db/newid.ts.html +5 -5
- package/coverage/lcov-report/src/db/tests/index.html +131 -0
- package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +793 -0
- package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +277 -0
- package/coverage/lcov-report/src/db/utils.ts.html +92 -92
- package/coverage/lcov-report/src/definitions/automations.ts.html +9 -6
- package/coverage/lcov-report/src/definitions/index.html +5 -20
- package/coverage/lcov-report/src/environment.ts.html +49 -37
- package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +14 -14
- package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +8 -8
- package/coverage/lcov-report/src/events/index.html +20 -20
- package/coverage/lcov-report/src/events/index.ts.html +7 -7
- package/coverage/lcov-report/src/events/utils.ts.html +11 -11
- package/coverage/lcov-report/src/index.html +48 -48
- package/coverage/lcov-report/src/index.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/airtable.ts.html +10 -10
- package/coverage/lcov-report/src/integrations/arangodb.ts.html +9 -9
- package/coverage/lcov-report/src/integrations/base/index.html +29 -29
- package/coverage/lcov-report/src/integrations/base/query.ts.html +15 -9
- package/coverage/lcov-report/src/integrations/base/sql.ts.html +38 -38
- package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +23 -23
- package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
- package/coverage/lcov-report/src/integrations/couchdb.ts.html +109 -31
- package/coverage/lcov-report/src/integrations/dynamodb.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +27 -15
- package/coverage/lcov-report/src/integrations/firebase.ts.html +12 -12
- package/coverage/lcov-report/src/integrations/googlesheets.ts.html +42 -42
- package/coverage/lcov-report/src/integrations/index.html +130 -130
- package/coverage/lcov-report/src/integrations/index.ts.html +50 -62
- package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/mongodb.ts.html +421 -289
- package/coverage/lcov-report/src/integrations/mysql.ts.html +28 -28
- package/coverage/lcov-report/src/integrations/oracle.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/postgres.ts.html +54 -54
- package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
- package/coverage/lcov-report/src/integrations/queries/sql.ts.html +24 -159
- package/coverage/lcov-report/src/integrations/redis.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/rest.ts.html +43 -52
- package/coverage/lcov-report/src/integrations/s3.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/snowflake.ts.html +15 -15
- package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +310 -0
- package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +199 -0
- package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +349 -0
- package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +550 -0
- package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +331 -0
- package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +376 -0
- package/coverage/lcov-report/src/integrations/tests/index.html +230 -5
- package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +253 -0
- package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +1087 -0
- package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +484 -0
- package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +373 -0
- package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +328 -0
- package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +337 -0
- package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +1870 -0
- package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +421 -0
- package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +1753 -0
- package/coverage/lcov-report/src/integrations/utils.ts.html +54 -54
- package/coverage/lcov-report/src/middleware/appInfo.ts.html +11 -11
- package/coverage/lcov-report/src/middleware/authorized.ts.html +49 -37
- package/coverage/lcov-report/src/middleware/builder.ts.html +26 -26
- package/coverage/lcov-report/src/middleware/currentapp.ts.html +60 -57
- package/coverage/lcov-report/src/middleware/index.html +44 -44
- package/coverage/lcov-report/src/middleware/joi-validator.ts.html +10 -10
- package/coverage/lcov-report/src/middleware/publicApi.ts.html +9 -9
- package/coverage/lcov-report/src/middleware/resourceId.ts.html +23 -23
- package/coverage/lcov-report/src/middleware/selfhost.ts.html +2 -2
- package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +574 -0
- package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +814 -0
- package/coverage/lcov-report/src/middleware/tests/index.html +161 -0
- package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +397 -0
- package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +214 -0
- package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +31 -31
- package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +21 -21
- package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +17 -14
- package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +19 -19
- package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +9 -9
- package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +23 -23
- package/coverage/lcov-report/src/migrations/functions/backfill/index.html +26 -26
- package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +14 -14
- package/coverage/lcov-report/src/migrations/functions/index.html +18 -18
- package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +163 -0
- package/coverage/lcov-report/src/migrations/functions/tests/index.html +161 -0
- package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +163 -0
- package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +517 -0
- package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +190 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +3 -3
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +131 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +190 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +244 -0
- package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/index.html +15 -15
- package/coverage/lcov-report/src/migrations/index.ts.html +43 -43
- package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/tests/index.html +26 -11
- package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +535 -0
- package/coverage/lcov-report/src/migrations/tests/structures.ts.html +3 -3
- package/coverage/lcov-report/src/sdk/app/applications/index.html +20 -20
- package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +34 -34
- package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +15 -15
- package/coverage/lcov-report/src/sdk/app/automations/index.html +7 -7
- package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +14 -14
- package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +30 -30
- package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +45 -57
- package/coverage/lcov-report/src/sdk/app/backups/index.html +42 -42
- package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +7 -7
- package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +73 -73
- package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
- package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
- package/coverage/lcov-report/src/{utilities/statusCodes.ts.html → sdk/app/queries/index.ts.html} +22 -28
- package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
- package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
- package/coverage/lcov-report/src/sdk/app/tables/index.html +15 -15
- package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +30 -21
- package/coverage/lcov-report/src/sdk/index.html +7 -7
- package/coverage/lcov-report/src/sdk/index.ts.html +24 -12
- package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +313 -0
- package/coverage/lcov-report/src/sdk/tests/index.html +116 -0
- package/coverage/lcov-report/src/sdk/users/index.html +10 -10
- package/coverage/lcov-report/src/sdk/users/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/users/utils.ts.html +35 -35
- package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
- package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
- package/coverage/lcov-report/src/startup.ts.html +48 -63
- package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +421 -187
- package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +20 -20
- package/coverage/lcov-report/src/tests/utilities/index.html +35 -35
- package/coverage/lcov-report/src/tests/utilities/index.ts.html +2 -2
- package/coverage/lcov-report/src/tests/utilities/structures.ts.html +236 -47
- package/coverage/lcov-report/src/threads/automation.ts.html +212 -251
- package/coverage/lcov-report/src/threads/index.html +46 -46
- package/coverage/lcov-report/src/threads/index.ts.html +39 -39
- package/coverage/lcov-report/src/threads/query.ts.html +140 -101
- package/coverage/lcov-report/src/threads/utils.ts.html +29 -29
- package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
- package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +343 -0
- package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +20 -20
- package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +601 -0
- package/coverage/lcov-report/src/utilities/fileSystem/index.html +88 -28
- package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +20 -1049
- package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +277 -0
- package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +193 -0
- package/coverage/lcov-report/src/utilities/global.ts.html +60 -60
- package/coverage/lcov-report/src/utilities/index.html +102 -117
- package/coverage/lcov-report/src/utilities/index.ts.html +47 -179
- package/coverage/lcov-report/src/utilities/redis.ts.html +38 -38
- package/coverage/lcov-report/src/utilities/{plugins.ts.html → retry.ts.html} +31 -43
- package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/src/utilities/routing/index.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/rowProcessor/index.html +34 -34
- package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +72 -45
- package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +116 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +256 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +52 -52
- package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +174 -234
- package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +33 -33
- package/coverage/lcov-report/src/utilities/security.ts.html +30 -30
- package/coverage/lcov-report/src/utilities/usageQuota/index.html +9 -9
- package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +37 -37
- package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +3 -3
- package/coverage/lcov-report/src/utilities/users.ts.html +7 -7
- package/coverage/lcov-report/src/utilities/workerRequests.ts.html +92 -65
- package/coverage/lcov-report/src/watch.ts.html +20 -20
- package/coverage/lcov-report/src/websocket.ts.html +15 -15
- package/coverage/lcov.info +24966 -17056
- package/dist/api/controllers/application.js +120 -109
- package/dist/api/controllers/cloud.js +6 -2
- package/dist/api/controllers/datasource.js +24 -15
- package/dist/api/controllers/deploy/index.js +43 -60
- package/dist/api/controllers/plugin/index.js +6 -6
- package/dist/api/controllers/public/applications.js +22 -1
- package/dist/api/controllers/query/index.js +23 -13
- package/dist/api/controllers/row/ExternalRequest.js +12 -4
- package/dist/api/controllers/row/external.js +20 -13
- package/dist/api/controllers/row/internal.js +52 -27
- package/dist/api/controllers/row/staticFormula.js +1 -1
- package/dist/api/controllers/row/utils.js +35 -3
- package/dist/api/controllers/static/index.js +47 -47
- package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/dist/api/controllers/table/external.js +16 -35
- package/dist/api/controllers/table/index.js +44 -15
- package/dist/api/controllers/table/internal.js +6 -7
- package/dist/api/controllers/table/utils.js +9 -9
- package/dist/api/controllers/user.js +14 -6
- package/dist/api/controllers/view/exporters.js +22 -6
- package/dist/api/controllers/view/index.js +23 -58
- package/dist/api/controllers/view/viewBuilder.js +15 -2
- package/dist/api/controllers/webhook.js +45 -43
- package/dist/api/routes/analytics.js +2 -1
- package/dist/api/routes/apikeys.js +2 -1
- package/dist/api/routes/application.js +5 -1
- package/dist/api/routes/auth.js +2 -1
- package/dist/api/routes/automation.js +2 -1
- package/dist/api/routes/backup.js +2 -1
- package/dist/api/routes/cloud.js +2 -1
- package/dist/api/routes/component.js +2 -1
- package/dist/api/routes/datasource.js +2 -1
- package/dist/api/routes/deploy.js +3 -3
- package/dist/api/routes/dev.js +2 -1
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/integration.js +2 -1
- package/dist/api/routes/layout.js +2 -1
- package/dist/api/routes/metadata.js +2 -1
- package/dist/api/routes/migrations.js +2 -1
- package/dist/api/routes/permission.js +2 -1
- package/dist/api/routes/public/applications.js +37 -0
- package/dist/api/routes/public/middleware/mapper.js +3 -0
- package/dist/api/routes/query.js +2 -1
- package/dist/api/routes/role.js +2 -1
- package/dist/api/routes/routing.js +2 -1
- package/dist/api/routes/row.js +2 -2
- package/dist/api/routes/screen.js +2 -1
- package/dist/api/routes/script.js +2 -1
- package/dist/api/routes/static.js +6 -5
- package/dist/api/routes/table.js +8 -38
- package/dist/api/routes/templates.js +2 -1
- package/dist/api/routes/user.js +2 -1
- package/dist/api/routes/utils/validators.js +1 -1
- package/dist/api/routes/view.js +2 -1
- package/dist/api/routes/webhook.js +2 -1
- package/dist/app.js +10 -8
- package/dist/automations/automationUtils.js +26 -1
- package/dist/automations/logging/index.js +5 -25
- package/dist/automations/triggers.js +1 -0
- package/dist/db/index.js +5 -2
- package/dist/db/linkedRows/LinkController.js +2 -1
- package/dist/db/linkedRows/LinkDocument.js +2 -1
- package/dist/db/newid.js +4 -2
- package/dist/definitions/datasource.js +0 -6
- package/dist/environment.js +7 -2
- package/dist/events/AutomationEmitter.js +2 -1
- package/dist/events/BudibaseEmitter.js +2 -1
- package/dist/events/index.js +2 -1
- package/dist/index.js +2 -2
- package/dist/integrations/base/query.js +7 -2
- package/dist/integrations/base/sqlTable.js +14 -14
- package/dist/integrations/couchdb.js +34 -8
- package/dist/integrations/dynamodb.js +8 -5
- package/dist/integrations/elasticsearch.js +7 -3
- package/dist/integrations/googlesheets.js +1 -1
- package/dist/integrations/index.js +6 -7
- package/dist/integrations/mongodb.js +311 -271
- package/dist/integrations/mysql.js +2 -2
- package/dist/integrations/queries/sql.js +73 -100
- package/dist/integrations/rest.js +16 -18
- package/dist/middleware/authorized.js +2 -1
- package/dist/middleware/builder.js +4 -2
- package/dist/middleware/currentapp.js +6 -3
- package/dist/middleware/publicApi.js +4 -2
- package/dist/middleware/selfhost.js +4 -1
- package/dist/migrations/functions/backfill/global/configs.js +4 -4
- package/dist/package.json +14 -8
- package/dist/sdk/app/backups/imports.js +2 -6
- package/dist/sdk/app/datasources/datasources.js +147 -0
- package/dist/sdk/app/datasources/index.js +27 -0
- package/dist/sdk/app/queries/index.js +27 -0
- package/dist/sdk/app/queries/queries.js +60 -0
- package/dist/sdk/app/tables/index.js +6 -2
- package/dist/sdk/index.js +4 -0
- package/dist/sdk/utils/index.js +29 -0
- package/dist/startup.js +17 -17
- package/dist/threads/automation.js +22 -35
- package/dist/threads/index.js +4 -4
- package/dist/threads/query.js +27 -13
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/app.js +97 -0
- package/dist/utilities/fileSystem/clientLibrary.js +3 -3
- package/dist/utilities/fileSystem/filesystem.js +184 -0
- package/dist/utilities/fileSystem/index.js +18 -342
- package/dist/utilities/fileSystem/plugin.js +66 -0
- package/dist/utilities/fileSystem/template.js +47 -0
- package/dist/utilities/index.js +1 -44
- package/dist/utilities/retry.js +30 -0
- package/dist/utilities/rowProcessor/index.js +12 -4
- package/dist/utilities/schema.js +108 -0
- package/dist/utilities/scriptRunner.js +2 -1
- package/dist/utilities/statusCodes.js +2 -1
- package/dist/utilities/workerRequests.js +2 -0
- package/dist/watch.js +2 -25
- package/jest-testcontainers-config.js +8 -0
- package/jest.config.ts +33 -13
- package/package.json +15 -9
- package/scripts/dev/manage.js +3 -2
- package/specs/openapi.json +84 -0
- package/specs/openapi.yaml +53 -0
- package/specs/resources/application.js +19 -0
- package/src/api/controllers/application.ts +142 -110
- package/src/api/controllers/auth.ts +2 -2
- package/src/api/controllers/cloud.ts +10 -6
- package/src/api/controllers/datasource.ts +33 -25
- package/src/api/controllers/deploy/Deployment.ts +1 -0
- package/src/api/controllers/deploy/index.ts +40 -58
- package/src/api/controllers/plugin/index.ts +14 -9
- package/src/api/controllers/public/applications.ts +17 -0
- package/src/api/controllers/query/import/tests/index.spec.js +1 -1
- package/src/api/controllers/query/index.ts +49 -41
- package/src/api/controllers/row/ExternalRequest.ts +8 -3
- package/src/api/controllers/row/external.ts +24 -14
- package/src/api/controllers/row/internal.ts +66 -41
- package/src/api/controllers/row/staticFormula.ts +5 -2
- package/src/api/controllers/row/utils.ts +42 -3
- package/src/api/controllers/static/index.ts +22 -27
- package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/src/api/controllers/table/external.ts +18 -16
- package/src/api/controllers/table/index.ts +46 -17
- package/src/api/controllers/table/internal.ts +6 -7
- package/src/api/controllers/table/utils.ts +12 -13
- package/src/api/controllers/user.ts +21 -13
- package/src/api/controllers/view/exporters.ts +20 -5
- package/src/api/controllers/view/index.ts +30 -42
- package/src/api/controllers/view/tests/viewBuilder.spec.js +1 -1
- package/src/api/controllers/view/viewBuilder.ts +1 -1
- package/src/api/controllers/webhook.ts +48 -46
- package/src/api/routes/analytics.ts +1 -1
- package/src/api/routes/apikeys.ts +1 -1
- package/src/api/routes/application.ts +12 -1
- package/src/api/routes/auth.ts +1 -1
- package/src/api/routes/automation.ts +1 -1
- package/src/api/routes/backup.ts +1 -1
- package/src/api/routes/cloud.ts +1 -1
- package/src/api/routes/component.ts +1 -1
- package/src/api/routes/datasource.ts +1 -1
- package/src/api/routes/deploy.ts +1 -2
- package/src/api/routes/dev.ts +1 -1
- package/src/api/routes/index.ts +6 -3
- package/src/api/routes/integration.ts +1 -1
- package/src/api/routes/layout.ts +1 -1
- package/src/api/routes/metadata.ts +1 -1
- package/src/api/routes/migrations.ts +1 -1
- package/src/api/routes/permission.ts +1 -1
- package/src/api/routes/public/applications.ts +44 -0
- package/src/api/routes/public/middleware/mapper.ts +4 -0
- package/src/api/routes/query.ts +1 -1
- package/src/api/routes/role.ts +1 -1
- package/src/api/routes/routing.ts +1 -1
- package/src/api/routes/row.ts +1 -1
- package/src/api/routes/screen.ts +1 -1
- package/src/api/routes/script.ts +1 -1
- package/src/api/routes/static.ts +2 -2
- package/src/api/routes/table.ts +16 -39
- package/src/api/routes/templates.ts +1 -1
- package/src/api/routes/tests/__snapshots__/{datasource.spec.js.snap → datasource.spec.ts.snap} +1 -1
- package/src/api/routes/tests/analytics.spec.js +4 -1
- package/src/api/routes/tests/apikeys.spec.js +1 -1
- package/src/api/routes/tests/{application.spec.js → application.spec.ts} +112 -22
- package/src/api/routes/tests/auth.spec.js +2 -2
- package/src/api/routes/tests/automation.spec.js +5 -1
- package/src/api/routes/tests/{backup.spec.js → backup.spec.ts} +17 -15
- package/src/api/routes/tests/cloud.seq.spec.ts +59 -0
- package/src/api/routes/tests/component.spec.js +1 -1
- package/src/api/routes/tests/data/budibase-component-1.0.1.tgz +0 -0
- package/src/api/routes/tests/data/comment-box-1.0.2.tar.gz +0 -0
- package/src/api/routes/tests/data/export-test.tar.gz +0 -0
- package/src/api/routes/tests/{datasource.spec.js → datasource.spec.ts} +76 -17
- package/src/api/routes/tests/dev.spec.js +1 -1
- package/src/api/routes/tests/integration.spec.js +1 -1
- package/src/api/routes/tests/layout.spec.js +1 -1
- package/src/api/routes/tests/metadata.spec.js +1 -1
- package/src/api/routes/tests/misc.spec.js +5 -11
- package/src/api/routes/tests/permissions.spec.js +5 -2
- package/src/api/routes/tests/plugin.spec.ts +179 -0
- package/src/api/routes/tests/{query.spec.js → query.seq.spec.js} +21 -1
- package/src/api/routes/tests/role.spec.js +6 -1
- package/src/api/routes/tests/routing.spec.js +2 -3
- package/src/api/routes/tests/row.spec.js +15 -5
- package/src/api/routes/tests/screen.spec.js +1 -1
- package/src/api/routes/tests/static.spec.js +4 -18
- package/src/api/routes/tests/table.spec.js +17 -33
- package/src/api/routes/tests/templates.spec.js +1 -1
- package/src/api/routes/tests/user.spec.js +108 -0
- package/src/api/routes/tests/utilities/TestFunctions.ts +26 -3
- package/src/api/routes/tests/utilities/index.ts +7 -5
- package/src/api/routes/tests/view.spec.js +4 -1
- package/src/api/routes/tests/webhook.spec.js +12 -3
- package/src/api/routes/user.ts +1 -1
- package/src/api/routes/utils/validators.ts +1 -1
- package/src/api/routes/view.ts +1 -1
- package/src/api/routes/webhook.ts +1 -1
- package/src/app.ts +7 -4
- package/src/automations/automationUtils.ts +24 -0
- package/src/automations/logging/index.ts +1 -1
- package/src/automations/tests/automation.spec.js +4 -4
- package/src/automations/tests/bash.spec.js +34 -0
- package/src/automations/tests/discord.spec.js +27 -0
- package/src/automations/tests/executeQuery.spec.js +48 -0
- package/src/automations/tests/executeScript.spec.js +48 -0
- package/src/automations/tests/loop.spec.ts +45 -0
- package/src/automations/tests/outgoingWebhook.spec.js +1 -1
- package/src/automations/tests/sendSmtpEmail.spec.js +71 -0
- package/src/automations/tests/serverLog.spec.js +22 -0
- package/src/automations/tests/updateRow.spec.js +1 -1
- package/src/automations/tests/utilities/index.ts +2 -2
- package/src/automations/tests/zapier.spec.js +27 -0
- package/src/automations/triggers.ts +6 -1
- package/src/automations/unitTests/automationUtils.spec.ts +65 -0
- package/src/db/index.ts +1 -1
- package/src/db/linkedRows/LinkController.ts +1 -1
- package/src/db/linkedRows/LinkDocument.ts +1 -1
- package/src/db/newid.ts +1 -1
- package/src/db/tests/linkController.spec.js +5 -2
- package/src/db/tests/linkTests.spec.js +1 -1
- package/src/definitions/automations.ts +1 -0
- package/src/definitions/datasource.ts +0 -41
- package/src/definitions/openapi.ts +10 -0
- package/src/environment.ts +6 -2
- package/src/events/AutomationEmitter.ts +1 -1
- package/src/events/BudibaseEmitter.ts +1 -1
- package/src/events/index.ts +1 -1
- package/src/index.ts +1 -1
- package/src/integrations/base/query.ts +3 -1
- package/src/integrations/base/sqlTable.ts +1 -1
- package/src/integrations/couchdb.ts +40 -14
- package/src/integrations/dynamodb.ts +3 -3
- package/src/integrations/elasticsearch.ts +8 -4
- package/src/integrations/googlesheets.ts +1 -1
- package/src/integrations/index.ts +5 -9
- package/src/integrations/mongodb.ts +315 -271
- package/src/integrations/mysql.ts +1 -1
- package/src/integrations/queries/sql.ts +5 -50
- package/src/integrations/rest.ts +16 -19
- package/src/integrations/tests/couchdb.spec.ts +33 -21
- package/src/integrations/tests/rest.spec.ts +19 -15
- package/src/middleware/authorized.ts +5 -1
- package/src/middleware/builder.ts +1 -1
- package/src/middleware/currentapp.ts +4 -3
- package/src/middleware/publicApi.ts +1 -1
- package/src/middleware/selfhost.ts +1 -1
- package/src/middleware/tests/authorized.spec.js +1 -1
- package/src/middleware/tests/currentapp.spec.js +1 -1
- package/src/middleware/tests/selfhost.spec.js +1 -1
- package/src/migrations/functions/backfill/global/configs.ts +5 -4
- package/src/migrations/functions/tests/appUrls.spec.js +1 -1
- package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
- package/src/migrations/tests/index.spec.ts +3 -2
- package/src/sdk/app/backups/imports.ts +2 -6
- package/src/sdk/app/datasources/datasources.ts +136 -0
- package/src/sdk/app/datasources/index.ts +5 -0
- package/src/sdk/app/queries/index.ts +5 -0
- package/src/sdk/app/queries/queries.ts +50 -0
- package/src/sdk/app/tables/index.ts +6 -3
- package/src/sdk/index.ts +4 -0
- package/src/sdk/tests/attachments.spec.ts +1 -4
- package/src/sdk/utils/index.ts +16 -0
- package/src/startup.ts +3 -8
- package/src/tests/jestEnv.ts +9 -0
- package/src/tests/jestSetup.ts +8 -20
- package/src/tests/utilities/TestConfiguration.ts +127 -49
- package/src/tests/utilities/structures.ts +65 -2
- package/src/threads/automation.ts +22 -35
- package/src/threads/definitions.ts +3 -0
- package/src/threads/index.ts +1 -1
- package/src/threads/query.ts +28 -15
- package/src/utilities/fileSystem/app.ts +86 -0
- package/src/utilities/fileSystem/clientLibrary.ts +1 -1
- package/src/utilities/fileSystem/filesystem.ts +172 -0
- package/src/utilities/fileSystem/index.ts +5 -348
- package/src/utilities/fileSystem/plugin.ts +64 -0
- package/src/utilities/fileSystem/template.ts +36 -0
- package/src/utilities/index.ts +1 -45
- package/src/utilities/retry.ts +18 -0
- package/src/utilities/rowProcessor/index.ts +17 -8
- package/src/utilities/rowProcessor/tests/utils.spec.ts +57 -0
- package/src/utilities/schema.ts +141 -0
- package/src/utilities/scriptRunner.ts +1 -1
- package/src/utilities/statusCodes.ts +1 -1
- package/src/utilities/workerRequests.ts +10 -1
- package/src/watch.ts +1 -1
- package/tsconfig.build.json +2 -0
- package/tsconfig.json +2 -1
- package/builder/assets/index.96b9ffed.css +0 -6
- package/builder/assets/index.fae8f9eb.js +0 -1024
- package/dist/api/routes/tests/utilities/TestFunctions.js +0 -167
- package/dist/api/routes/tests/utilities/index.js +0 -131
- package/dist/automations/tests/utilities/index.js +0 -81
- package/dist/tests/utilities/TestConfiguration.js +0 -562
- package/dist/tests/utilities/controllers.js +0 -40
- package/dist/tests/utilities/structures.js +0 -168
- package/dist/utilities/csvParser.js +0 -152
- package/dist/utilities/plugins.js +0 -26
- package/src/api/routes/tests/deployment.spec.ts +0 -25
- package/src/automations/unitTests/automationUtils.spec.js +0 -17
- package/src/utilities/csvParser.ts +0 -161
- package/src/utilities/plugins.ts +0 -22
- package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
- package/src/utilities/tests/csvParser.spec.js +0 -112
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">70.03% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>215/307</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">53.37% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>95/178</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">73.17% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>30/41</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
@@ -694,29 +694,29 @@
|
|
|
694
694
|
<a name='L629'></a><a href='#L629'>629</a>
|
|
695
695
|
<a name='L630'></a><a href='#L630'>630</a>
|
|
696
696
|
<a name='L631'></a><a href='#L631'>631</a>
|
|
697
|
-
<a name='L632'></a><a href='#L632'>632</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
698
|
-
<span class="cline-any cline-yes">53x</span>
|
|
697
|
+
<a name='L632'></a><a href='#L632'>632</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">64x</span>
|
|
699
698
|
<span class="cline-any cline-neutral"> </span>
|
|
700
699
|
<span class="cline-any cline-neutral"> </span>
|
|
701
700
|
<span class="cline-any cline-neutral"> </span>
|
|
702
701
|
<span class="cline-any cline-neutral"> </span>
|
|
703
702
|
<span class="cline-any cline-neutral"> </span>
|
|
704
703
|
<span class="cline-any cline-neutral"> </span>
|
|
704
|
+
<span class="cline-any cline-yes">64x</span>
|
|
705
705
|
<span class="cline-any cline-neutral"> </span>
|
|
706
|
-
<span class="cline-any cline-yes">
|
|
707
|
-
<span class="cline-any cline-yes">
|
|
708
|
-
<span class="cline-any cline-yes">
|
|
709
|
-
<span class="cline-any cline-yes">
|
|
706
|
+
<span class="cline-any cline-yes">64x</span>
|
|
707
|
+
<span class="cline-any cline-yes">64x</span>
|
|
708
|
+
<span class="cline-any cline-yes">64x</span>
|
|
709
|
+
<span class="cline-any cline-yes">64x</span>
|
|
710
710
|
<span class="cline-any cline-neutral"> </span>
|
|
711
|
-
<span class="cline-any cline-yes">
|
|
711
|
+
<span class="cline-any cline-yes">64x</span>
|
|
712
712
|
<span class="cline-any cline-neutral"> </span>
|
|
713
713
|
<span class="cline-any cline-neutral"> </span>
|
|
714
|
-
<span class="cline-any cline-yes">
|
|
714
|
+
<span class="cline-any cline-yes">64x</span>
|
|
715
715
|
<span class="cline-any cline-neutral"> </span>
|
|
716
716
|
<span class="cline-any cline-neutral"> </span>
|
|
717
717
|
<span class="cline-any cline-neutral"> </span>
|
|
718
|
-
<span class="cline-any cline-yes">
|
|
719
|
-
<span class="cline-any cline-yes">
|
|
718
|
+
<span class="cline-any cline-yes">64x</span>
|
|
719
|
+
<span class="cline-any cline-yes">64x</span>
|
|
720
720
|
<span class="cline-any cline-neutral"> </span>
|
|
721
721
|
<span class="cline-any cline-neutral"> </span>
|
|
722
722
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -1201,8 +1201,8 @@
|
|
|
1201
1201
|
<span class="cline-any cline-neutral"> </span>
|
|
1202
1202
|
<span class="cline-any cline-neutral"> </span>
|
|
1203
1203
|
<span class="cline-any cline-neutral"> </span>
|
|
1204
|
-
<span class="cline-any cline-yes">
|
|
1205
|
-
<span class="cline-any cline-yes">
|
|
1204
|
+
<span class="cline-any cline-yes">73x</span>
|
|
1205
|
+
<span class="cline-any cline-yes">73x</span>
|
|
1206
1206
|
<span class="cline-any cline-neutral"> </span>
|
|
1207
1207
|
<span class="cline-any cline-neutral"> </span>
|
|
1208
1208
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -1324,7 +1324,7 @@
|
|
|
1324
1324
|
<span class="cline-any cline-neutral"> </span>
|
|
1325
1325
|
<span class="cline-any cline-neutral"> </span>
|
|
1326
1326
|
<span class="cline-any cline-neutral"> </span>
|
|
1327
|
-
<span class="cline-any cline-yes">
|
|
1327
|
+
<span class="cline-any cline-yes">241x</span>
|
|
1328
1328
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { Knex, knex } from "knex"
|
|
1329
1329
|
import {
|
|
1330
1330
|
Operation,
|
|
@@ -1419,14 +1419,14 @@ function generateSelectStatement(
|
|
|
1419
1419
|
knex: Knex
|
|
1420
1420
|
): (string | Knex.Raw)[] {
|
|
1421
1421
|
const { resource, meta } = json
|
|
1422
|
-
const schema =
|
|
1422
|
+
const schema = meta?.table?.schema
|
|
1423
1423
|
return resource!.fields.map(field => {
|
|
1424
1424
|
const fieldNames = field.split(/\./g)
|
|
1425
1425
|
const tableName = fieldNames[0]
|
|
1426
1426
|
const columnName = fieldNames[1]
|
|
1427
1427
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
1428
1428
|
columnName &&
|
|
1429
|
-
|
|
1429
|
+
schema?.[columnName] &&
|
|
1430
1430
|
<span class="branch-2 cbranch-no" title="branch not covered" > knex.client.config.client === SqlClient.POSTGRES</span>
|
|
1431
1431
|
) {
|
|
1432
1432
|
const externalType = <span class="cstat-no" title="statement not covered" >schema[columnName].externalType</span>
|
|
@@ -1484,9 +1484,9 @@ class InternalBuilder {
|
|
|
1484
1484
|
}
|
|
1485
1485
|
|
|
1486
1486
|
const contains = (mode: object, any: boolean = false) => {
|
|
1487
|
-
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" </span
|
|
1487
|
+
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" : "</span>where"
|
|
1488
1488
|
const rawFnc = `${fnc}Raw`
|
|
1489
|
-
const not = mode === filters
|
|
1489
|
+
const not = mode === filters?.notContains ? "NOT " : ""
|
|
1490
1490
|
function stringifyArray(value: Array<any>, quoteStyle = '"'): string {
|
|
1491
1491
|
for (let i in value) {
|
|
1492
1492
|
if (typeof value[i] === "string") {
|
|
@@ -1519,7 +1519,7 @@ class InternalBuilder {
|
|
|
1519
1519
|
)
|
|
1520
1520
|
})
|
|
1521
1521
|
} else {
|
|
1522
|
-
const andOr = mode === filters
|
|
1522
|
+
const andOr = mode === filters?.containsAny ? " OR " : " AND "
|
|
1523
1523
|
iterate(mode, (key: string, value: Array<any>) => {
|
|
1524
1524
|
let statement = ""
|
|
1525
1525
|
for (let i in value) {
|
|
@@ -1552,7 +1552,7 @@ class InternalBuilder {
|
|
|
1552
1552
|
}
|
|
1553
1553
|
if (filters.string) {
|
|
1554
1554
|
iterate(filters.string, (key, value) => {
|
|
1555
|
-
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" </span
|
|
1555
|
+
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" : "</span>where"
|
|
1556
1556
|
// postgres supports ilike, nothing else does
|
|
1557
1557
|
if (this.client === SqlClient.POSTGRES) {
|
|
1558
1558
|
query = query[fnc](key, "ilike", `${value}%`)
|
|
@@ -1572,15 +1572,15 @@ class InternalBuilder {
|
|
|
1572
1572
|
iterate(filters.range, (key, value) => {
|
|
1573
1573
|
if (value.low && value.high) {
|
|
1574
1574
|
// Use a between operator if we have 2 valid range values
|
|
1575
|
-
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhereBetween" </span
|
|
1575
|
+
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhereBetween" : "</span>whereBetween"
|
|
1576
1576
|
query = query[fnc](key, [value.low, value.high])
|
|
1577
1577
|
} else if (value.low) {
|
|
1578
1578
|
// Use just a single greater than operator if we only have a low
|
|
1579
|
-
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" </span
|
|
1579
|
+
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" : "</span>where"
|
|
1580
1580
|
query = query[fnc](key, ">", value.low)
|
|
1581
1581
|
} else if (value.high) {
|
|
1582
1582
|
// Use just a single less than operator if we only have a high
|
|
1583
|
-
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" </span
|
|
1583
|
+
const fnc = allOr ? <span class="branch-0 cbranch-no" title="branch not covered" >"orWhere" : "</span>where"
|
|
1584
1584
|
query = query[fnc](key, "<", value.high)
|
|
1585
1585
|
}
|
|
1586
1586
|
})
|
|
@@ -1598,13 +1598,13 @@ class InternalBuilder {
|
|
|
1598
1598
|
})
|
|
1599
1599
|
}
|
|
1600
1600
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (filters.empty) {
|
|
1601
|
-
<span class="cstat-no" title="statement not covered" > iterate(filters.empty, <span class="fstat-no" title="function not covered" >key
|
|
1601
|
+
<span class="cstat-no" title="statement not covered" > iterate(filters.empty, <span class="fstat-no" title="function not covered" >key => {</span></span>
|
|
1602
1602
|
const fnc = <span class="cstat-no" title="statement not covered" >allOr ? "orWhereNull" : "whereNull"</span>
|
|
1603
1603
|
<span class="cstat-no" title="statement not covered" > query = query[fnc](key)</span>
|
|
1604
1604
|
})
|
|
1605
1605
|
}
|
|
1606
1606
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (filters.notEmpty) {
|
|
1607
|
-
<span class="cstat-no" title="statement not covered" > iterate(filters.notEmpty, <span class="fstat-no" title="function not covered" >key
|
|
1607
|
+
<span class="cstat-no" title="statement not covered" > iterate(filters.notEmpty, <span class="fstat-no" title="function not covered" >key => {</span></span>
|
|
1608
1608
|
const fnc = <span class="cstat-no" title="statement not covered" >allOr ? "orWhereNotNull" : "whereNotNull"</span>
|
|
1609
1609
|
<span class="cstat-no" title="statement not covered" > query = query[fnc](key)</span>
|
|
1610
1610
|
})
|
|
@@ -1623,13 +1623,13 @@ class InternalBuilder {
|
|
|
1623
1623
|
|
|
1624
1624
|
addSorting(query: KnexQuery, json: QueryJson): KnexQuery {
|
|
1625
1625
|
let { sort, paginate } = json
|
|
1626
|
-
const table = json.meta
|
|
1626
|
+
const table = json.meta?.table
|
|
1627
1627
|
if (sort) {
|
|
1628
1628
|
for (let [key, value] of Object.entries(sort)) {
|
|
1629
1629
|
const direction = <span class="cstat-no" title="statement not covered" >value === SortDirection.ASCENDING ? "asc" : "desc"</span>
|
|
1630
1630
|
<span class="cstat-no" title="statement not covered" > query = query.orderBy(`${table?.name}.${key}`, direction)</span>
|
|
1631
1631
|
}
|
|
1632
|
-
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (this.client === SqlClient.MS_SQL && <span class="branch-1 cbranch-no" title="branch not covered" >paginate?.limit)</span>
|
|
1632
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (this.client === SqlClient.MS_SQL && <span class="branch-1 cbranch-no" title="branch not covered" >paginate?.limit) {</span>
|
|
1633
1633
|
// @ts-ignore
|
|
1634
1634
|
<span class="cstat-no" title="statement not covered" > query = query.orderBy(`${table?.name}.${table?.primary[0]}`)</span>
|
|
1635
1635
|
}
|
|
@@ -1727,7 +1727,7 @@ class InternalBuilder {
|
|
|
1727
1727
|
}
|
|
1728
1728
|
}
|
|
1729
1729
|
|
|
1730
|
-
<span class="fstat-no" title="function not covered" > bulkCreate(</span>
|
|
1730
|
+
<span class="fstat-no" title="function not covered" > bulkCreate(k</span>nex: Knex, json: QueryJson): KnexQuery {
|
|
1731
1731
|
const { endpoint, body } = <span class="cstat-no" title="statement not covered" >json</span>
|
|
1732
1732
|
let query: KnexQuery = <span class="cstat-no" title="statement not covered" >knex(endpoint.entityId)</span>
|
|
1733
1733
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (endpoint.schema) {</span>
|
|
@@ -1736,7 +1736,7 @@ class InternalBuilder {
|
|
|
1736
1736
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!Array.isArray(body)) {</span>
|
|
1737
1737
|
<span class="cstat-no" title="statement not covered" > return query</span>
|
|
1738
1738
|
}
|
|
1739
|
-
const parsedBody = <span class="cstat-no" title="statement not covered" >body.map(<span class="fstat-no" title="function not covered" >row
|
|
1739
|
+
const parsedBody = <span class="cstat-no" title="statement not covered" >body.map(<span class="fstat-no" title="function not covered" >row => <span class="cstat-no" title="statement not covered" >p</span>arseBody(row))</span></span>
|
|
1740
1740
|
<span class="cstat-no" title="statement not covered" > return query.insert(parsedBody)</span>
|
|
1741
1741
|
}
|
|
1742
1742
|
|
|
@@ -1875,7 +1875,7 @@ class SqlQueryBuilder extends SqlTableQueryBuilder {
|
|
|
1875
1875
|
return query.toSQL().toNative()
|
|
1876
1876
|
}
|
|
1877
1877
|
|
|
1878
|
-
|
|
1878
|
+
<span class="fstat-no" title="function not covered" > async g</span>etReturningRow(queryFn: Function, json: QueryJson) {
|
|
1879
1879
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!json.extra || !json.extra.idFilter) {</span>
|
|
1880
1880
|
<span class="cstat-no" title="statement not covered" > return {}</span>
|
|
1881
1881
|
}
|
|
@@ -1898,7 +1898,7 @@ class SqlQueryBuilder extends SqlTableQueryBuilder {
|
|
|
1898
1898
|
|
|
1899
1899
|
// when creating if an ID has been inserted need to make sure
|
|
1900
1900
|
// the id filter is enriched with it before trying to retrieve the row
|
|
1901
|
-
<span class="fstat-no" title="function not covered" > checkLookupKeys(</span>
|
|
1901
|
+
<span class="fstat-no" title="function not covered" > checkLookupKeys(i</span>d: any, json: QueryJson) {
|
|
1902
1902
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!id || !json.meta?.table || !json.meta.table.primary) {</span>
|
|
1903
1903
|
<span class="cstat-no" title="statement not covered" > return json</span>
|
|
1904
1904
|
}
|
|
@@ -1914,7 +1914,7 @@ class SqlQueryBuilder extends SqlTableQueryBuilder {
|
|
|
1914
1914
|
}
|
|
1915
1915
|
|
|
1916
1916
|
// this function recreates the returning functionality of postgres
|
|
1917
|
-
|
|
1917
|
+
<span class="fstat-no" title="function not covered" > async q</span>ueryWithReturning(
|
|
1918
1918
|
json: QueryJson,
|
|
1919
1919
|
queryFn: Function,
|
|
1920
1920
|
processFn: Function = <span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >(r</span>esult: any) => <span class="cstat-no" title="statement not covered" >result</span></span>
|
|
@@ -1963,7 +1963,7 @@ export default SqlQueryBuilder
|
|
|
1963
1963
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1964
1964
|
Code coverage generated by
|
|
1965
1965
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1966
|
-
at
|
|
1966
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
1967
1967
|
</div>
|
|
1968
1968
|
<script src="../../../prettify.js"></script>
|
|
1969
1969
|
<script>
|
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">10.
|
|
26
|
+
<span class="strong">10.46% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>9/
|
|
28
|
+
<span class='fraction'>9/86</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
33
|
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/64</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">17.64% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>3/
|
|
42
|
+
<span class='fraction'>3/17</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
@@ -265,12 +265,12 @@
|
|
|
265
265
|
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
266
|
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
267
|
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
269
|
-
<span class="cline-any cline-yes">
|
|
270
|
-
<span class="cline-any cline-yes">
|
|
268
|
+
<a name='L203'></a><a href='#L203'>203</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">64x</span>
|
|
269
|
+
<span class="cline-any cline-yes">64x</span>
|
|
270
|
+
<span class="cline-any cline-yes">64x</span>
|
|
271
271
|
<span class="cline-any cline-neutral"> </span>
|
|
272
272
|
<span class="cline-any cline-neutral"> </span>
|
|
273
|
-
<span class="cline-any cline-yes">
|
|
273
|
+
<span class="cline-any cline-yes">64x</span>
|
|
274
274
|
<span class="cline-any cline-neutral"> </span>
|
|
275
275
|
<span class="cline-any cline-neutral"> </span>
|
|
276
276
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -414,7 +414,7 @@
|
|
|
414
414
|
<span class="cline-any cline-neutral"> </span>
|
|
415
415
|
<span class="cline-any cline-neutral"> </span>
|
|
416
416
|
<span class="cline-any cline-neutral"> </span>
|
|
417
|
-
<span class="cline-any cline-yes">
|
|
417
|
+
<span class="cline-any cline-yes">73x</span>
|
|
418
418
|
<span class="cline-any cline-neutral"> </span>
|
|
419
419
|
<span class="cline-any cline-neutral"> </span>
|
|
420
420
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -465,14 +465,14 @@
|
|
|
465
465
|
<span class="cline-any cline-neutral"> </span>
|
|
466
466
|
<span class="cline-any cline-neutral"> </span>
|
|
467
467
|
<span class="cline-any cline-neutral"> </span>
|
|
468
|
-
<span class="cline-any cline-yes">
|
|
469
|
-
<span class="cline-any cline-yes">
|
|
468
|
+
<span class="cline-any cline-yes">64x</span>
|
|
469
|
+
<span class="cline-any cline-yes">64x</span>
|
|
470
470
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { Knex, knex } from "knex"
|
|
471
471
|
import { Operation, QueryJson, RenameColumn, Table } from "@budibase/types"
|
|
472
472
|
import { breakExternalTableId } from "../utils"
|
|
473
473
|
import SchemaBuilder = Knex.SchemaBuilder
|
|
474
474
|
import CreateTableBuilder = Knex.CreateTableBuilder
|
|
475
|
-
|
|
475
|
+
import { FieldTypes, RelationshipTypes } from "../../constants"
|
|
476
476
|
|
|
477
477
|
function <span class="fstat-no" title="function not covered" >generateSchema(</span>
|
|
478
478
|
schema: CreateTableBuilder,
|
|
@@ -484,17 +484,17 @@ function <span class="fstat-no" title="function not covered" >generateSchema(</s
|
|
|
484
484
|
let primaryKey = <span class="cstat-no" title="statement not covered" >table && table.primary ? table.primary[0] : null</span>
|
|
485
485
|
const columns = <span class="cstat-no" title="statement not covered" >Object.values(table.schema)</span>
|
|
486
486
|
// all columns in a junction table will be meta
|
|
487
|
-
let metaCols = <span class="cstat-no" title="statement not covered" >columns.filter(<span class="fstat-no" title="function not covered" >col
|
|
487
|
+
let metaCols = <span class="cstat-no" title="statement not covered" >columns.filter(<span class="fstat-no" title="function not covered" >col => <span class="cstat-no" title="statement not covered" >c</span>ol.meta)</span></span>
|
|
488
488
|
let isJunction = <span class="cstat-no" title="statement not covered" >metaCols.length === columns.length</span>
|
|
489
489
|
// can't change primary once its set for now
|
|
490
490
|
<span class="cstat-no" title="statement not covered" > if (primaryKey && !oldTable && !isJunction) {</span>
|
|
491
491
|
<span class="cstat-no" title="statement not covered" > schema.increments(primaryKey).primary()</span>
|
|
492
492
|
} else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span>if (!oldTable && isJunction) {</span>
|
|
493
|
-
<span class="cstat-no" title="statement not covered" > schema.primary(metaCols.map(<span class="fstat-no" title="function not covered" >col
|
|
493
|
+
<span class="cstat-no" title="statement not covered" > schema.primary(metaCols.map(<span class="fstat-no" title="function not covered" >col => <span class="cstat-no" title="statement not covered" >c</span>ol.name)</span>)</span>
|
|
494
494
|
}
|
|
495
495
|
|
|
496
496
|
// check if any columns need added
|
|
497
|
-
const foreignKeys = <span class="cstat-no" title="statement not covered" >Object.values(table.schema).map(<span class="fstat-no" title="function not covered" >col
|
|
497
|
+
const foreignKeys = <span class="cstat-no" title="statement not covered" >Object.values(table.schema).map(<span class="fstat-no" title="function not covered" >col => <span class="cstat-no" title="statement not covered" >c</span>ol.foreignKey)</span></span>
|
|
498
498
|
<span class="cstat-no" title="statement not covered" > for (let [key, column] of Object.entries(table.schema)) {</span>
|
|
499
499
|
// skip things that are already correct
|
|
500
500
|
const oldColumn = <span class="cstat-no" title="statement not covered" >oldTable ? oldTable.schema[key] : null</span>
|
|
@@ -571,7 +571,7 @@ function <span class="fstat-no" title="function not covered" >generateSchema(</s
|
|
|
571
571
|
table.schema[key] == null
|
|
572
572
|
)
|
|
573
573
|
.map(<span class="fstat-no" title="function not covered" >([</span>key]) => <span class="cstat-no" title="statement not covered" >key)</span>
|
|
574
|
-
<span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >key
|
|
574
|
+
<span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >key => {</span></span>
|
|
575
575
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (renamed?.old === key) {</span>
|
|
576
576
|
<span class="cstat-no" title="statement not covered" > return</span>
|
|
577
577
|
}
|
|
@@ -590,7 +590,7 @@ function <span class="fstat-no" title="function not covered" >buildCreateTable(<
|
|
|
590
590
|
table: Table,
|
|
591
591
|
tables: Record<string, Table>
|
|
592
592
|
): SchemaBuilder {
|
|
593
|
-
<span class="cstat-no" title="statement not covered" > return knex.createTable(table.name, <span class="fstat-no" title="function not covered" >schema
|
|
593
|
+
<span class="cstat-no" title="statement not covered" > return knex.createTable(table.name, <span class="fstat-no" title="function not covered" >schema => {</span></span>
|
|
594
594
|
<span class="cstat-no" title="statement not covered" > generateSchema(schema, table, tables)</span>
|
|
595
595
|
})
|
|
596
596
|
}
|
|
@@ -602,12 +602,12 @@ function <span class="fstat-no" title="function not covered" >buildUpdateTable(<
|
|
|
602
602
|
oldTable: Table,
|
|
603
603
|
renamed: RenameColumn
|
|
604
604
|
): SchemaBuilder {
|
|
605
|
-
<span class="cstat-no" title="statement not covered" > return knex.alterTable(table.name, <span class="fstat-no" title="function not covered" >schema
|
|
605
|
+
<span class="cstat-no" title="statement not covered" > return knex.alterTable(table.name, <span class="fstat-no" title="function not covered" >schema => {</span></span>
|
|
606
606
|
<span class="cstat-no" title="statement not covered" > generateSchema(schema, table, tables, oldTable, renamed)</span>
|
|
607
607
|
})
|
|
608
608
|
}
|
|
609
609
|
|
|
610
|
-
function <span class="fstat-no" title="function not covered" >buildDeleteTable(</span>
|
|
610
|
+
function <span class="fstat-no" title="function not covered" >buildDeleteTable(k</span>nex: SchemaBuilder, table: Table): SchemaBuilder {
|
|
611
611
|
<span class="cstat-no" title="statement not covered" > return knex.dropTable(table.name)</span>
|
|
612
612
|
}
|
|
613
613
|
|
|
@@ -631,7 +631,7 @@ class SqlTableQueryBuilder {
|
|
|
631
631
|
return json.endpoint.operation
|
|
632
632
|
}
|
|
633
633
|
|
|
634
|
-
<span class="fstat-no" title="function not covered" > _tableQuery(</span>
|
|
634
|
+
<span class="fstat-no" title="function not covered" > _tableQuery(j</span>son: QueryJson): any {
|
|
635
635
|
let client = <span class="cstat-no" title="statement not covered" >knex({ client: this.sqlClient }).schema</span>
|
|
636
636
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (json?.endpoint?.schema) {</span>
|
|
637
637
|
<span class="cstat-no" title="statement not covered" > client = client.withSchema(json.endpoint.schema)</span>
|
|
@@ -667,7 +667,7 @@ class SqlTableQueryBuilder {
|
|
|
667
667
|
}
|
|
668
668
|
}
|
|
669
669
|
|
|
670
|
-
export default
|
|
670
|
+
<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >export default S</span></span>qlTableQueryBuilder
|
|
671
671
|
module.exports = SqlTableQueryBuilder
|
|
672
672
|
</pre></td></tr></table></pre>
|
|
673
673
|
|
|
@@ -676,7 +676,7 @@ module.exports = SqlTableQueryBuilder
|
|
|
676
676
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
677
677
|
Code coverage generated by
|
|
678
678
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
679
|
-
at
|
|
679
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
680
680
|
</div>
|
|
681
681
|
<script src="../../../prettify.js"></script>
|
|
682
682
|
<script>
|
|
@@ -75,16 +75,16 @@
|
|
|
75
75
|
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
76
|
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
77
|
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
-
<a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
78
|
+
<a name='L13'></a><a href='#L13'>13</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">64x</span>
|
|
79
79
|
<span class="cline-any cline-neutral"> </span>
|
|
80
|
-
<span class="cline-any cline-yes">
|
|
81
|
-
<span class="cline-any cline-yes">
|
|
80
|
+
<span class="cline-any cline-yes">137x</span>
|
|
81
|
+
<span class="cline-any cline-yes">137x</span>
|
|
82
82
|
<span class="cline-any cline-yes">8x</span>
|
|
83
83
|
<span class="cline-any cline-neutral"> </span>
|
|
84
84
|
<span class="cline-any cline-yes">8x</span>
|
|
85
85
|
<span class="cline-any cline-yes">8x</span>
|
|
86
86
|
<span class="cline-any cline-neutral"> </span>
|
|
87
|
-
<span class="cline-any cline-yes">
|
|
87
|
+
<span class="cline-any cline-yes">129x</span>
|
|
88
88
|
<span class="cline-any cline-neutral"> </span>
|
|
89
89
|
<span class="cline-any cline-neutral"> </span>
|
|
90
90
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const QUERY_START_REGEX = /\d[0-9]*:/g
|
|
@@ -106,7 +106,7 @@ export function removeKeyNumbering(key: any): string {
|
|
|
106
106
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
107
107
|
Code coverage generated by
|
|
108
108
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
109
|
-
at
|
|
109
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
110
110
|
</div>
|
|
111
111
|
<script src="../../../prettify.js"></script>
|
|
112
112
|
<script>
|