@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,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">88.77% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>87/98</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">86.79% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>46/53</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">85.71% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>12/14</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">89.69% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>87/97</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -255,27 +255,15 @@
|
|
|
255
255
|
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
256
|
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
257
|
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
-
<
|
|
260
|
-
<
|
|
261
|
-
<
|
|
262
|
-
<
|
|
263
|
-
<
|
|
264
|
-
<
|
|
265
|
-
<
|
|
266
|
-
<
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">46x</span>
|
|
271
|
-
<span class="cline-any cline-yes">46x</span>
|
|
272
|
-
<span class="cline-any cline-yes">46x</span>
|
|
273
|
-
<span class="cline-any cline-yes">46x</span>
|
|
274
|
-
<span class="cline-any cline-yes">46x</span>
|
|
275
|
-
<span class="cline-any cline-yes">46x</span>
|
|
276
|
-
<span class="cline-any cline-yes">46x</span>
|
|
277
|
-
<span class="cline-any cline-yes">46x</span>
|
|
278
|
-
<span class="cline-any cline-yes">46x</span>
|
|
258
|
+
<a name='L193'></a><a href='#L193'>193</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
|
|
259
|
+
<span class="cline-any cline-yes">55x</span>
|
|
260
|
+
<span class="cline-any cline-yes">55x</span>
|
|
261
|
+
<span class="cline-any cline-yes">55x</span>
|
|
262
|
+
<span class="cline-any cline-yes">55x</span>
|
|
263
|
+
<span class="cline-any cline-yes">55x</span>
|
|
264
|
+
<span class="cline-any cline-yes">55x</span>
|
|
265
|
+
<span class="cline-any cline-yes">55x</span>
|
|
266
|
+
<span class="cline-any cline-yes">55x</span>
|
|
279
267
|
<span class="cline-any cline-neutral"> </span>
|
|
280
268
|
<span class="cline-any cline-neutral"> </span>
|
|
281
269
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -284,65 +272,66 @@
|
|
|
284
272
|
<span class="cline-any cline-neutral"> </span>
|
|
285
273
|
<span class="cline-any cline-neutral"> </span>
|
|
286
274
|
<span class="cline-any cline-neutral"> </span>
|
|
275
|
+
<span class="cline-any cline-yes">55x</span>
|
|
287
276
|
<span class="cline-any cline-neutral"> </span>
|
|
288
|
-
<span class="cline-any cline-yes">
|
|
277
|
+
<span class="cline-any cline-yes">55x</span>
|
|
289
278
|
<span class="cline-any cline-neutral"> </span>
|
|
290
|
-
<span class="cline-any cline-yes">
|
|
279
|
+
<span class="cline-any cline-yes">55x</span>
|
|
291
280
|
<span class="cline-any cline-yes">1x</span>
|
|
292
281
|
<span class="cline-any cline-neutral"> </span>
|
|
293
282
|
<span class="cline-any cline-neutral"> </span>
|
|
294
|
-
<span class="cline-any cline-yes">
|
|
295
|
-
<span class="cline-any cline-yes">
|
|
296
|
-
<span class="cline-any cline-yes">
|
|
283
|
+
<span class="cline-any cline-yes">65x</span>
|
|
284
|
+
<span class="cline-any cline-yes">24x</span>
|
|
285
|
+
<span class="cline-any cline-yes">24x</span>
|
|
297
286
|
<span class="cline-any cline-neutral"> </span>
|
|
298
|
-
<span class="cline-any cline-yes">
|
|
299
|
-
<span class="cline-any cline-yes">
|
|
287
|
+
<span class="cline-any cline-yes">24x</span>
|
|
288
|
+
<span class="cline-any cline-yes">24x</span>
|
|
300
289
|
<span class="cline-any cline-neutral"> </span>
|
|
301
|
-
<span class="cline-any cline-yes">23x</span>
|
|
302
290
|
<span class="cline-any cline-yes">24x</span>
|
|
291
|
+
<span class="cline-any cline-yes">25x</span>
|
|
303
292
|
<span class="cline-any cline-neutral"> </span>
|
|
304
293
|
<span class="cline-any cline-neutral"> </span>
|
|
305
|
-
<span class="cline-any cline-yes">
|
|
306
|
-
<span class="cline-any cline-yes">
|
|
294
|
+
<span class="cline-any cline-yes">24x</span>
|
|
295
|
+
<span class="cline-any cline-yes">24x</span>
|
|
307
296
|
<span class="cline-any cline-neutral"> </span>
|
|
308
|
-
<span class="cline-any cline-yes">
|
|
297
|
+
<span class="cline-any cline-yes">24x</span>
|
|
309
298
|
<span class="cline-any cline-no"> </span>
|
|
310
299
|
<span class="cline-any cline-neutral"> </span>
|
|
311
300
|
<span class="cline-any cline-neutral"> </span>
|
|
312
|
-
<span class="cline-any cline-yes">
|
|
301
|
+
<span class="cline-any cline-yes">24x</span>
|
|
313
302
|
<span class="cline-any cline-neutral"> </span>
|
|
314
303
|
<span class="cline-any cline-neutral"> </span>
|
|
315
|
-
<span class="cline-any cline-yes">
|
|
316
|
-
<span class="cline-any cline-yes">
|
|
304
|
+
<span class="cline-any cline-yes">24x</span>
|
|
305
|
+
<span class="cline-any cline-yes">24x</span>
|
|
317
306
|
<span class="cline-any cline-yes">7x</span>
|
|
318
307
|
<span class="cline-any cline-neutral"> </span>
|
|
319
|
-
<span class="cline-any cline-yes">
|
|
320
|
-
<span class="cline-any cline-yes">
|
|
308
|
+
<span class="cline-any cline-yes">24x</span>
|
|
309
|
+
<span class="cline-any cline-yes">24x</span>
|
|
321
310
|
<span class="cline-any cline-no"> </span>
|
|
322
311
|
<span class="cline-any cline-no"> </span>
|
|
323
312
|
<span class="cline-any cline-neutral"> </span>
|
|
324
|
-
<span class="cline-any cline-yes">
|
|
325
|
-
<span class="cline-any cline-yes">
|
|
313
|
+
<span class="cline-any cline-yes">24x</span>
|
|
314
|
+
<span class="cline-any cline-yes">24x</span>
|
|
326
315
|
<span class="cline-any cline-neutral"> </span>
|
|
327
|
-
<span class="cline-any cline-yes">
|
|
316
|
+
<span class="cline-any cline-yes">24x</span>
|
|
328
317
|
<span class="cline-any cline-neutral"> </span>
|
|
329
318
|
<span class="cline-any cline-neutral"> </span>
|
|
330
319
|
<span class="cline-any cline-neutral"> </span>
|
|
331
320
|
<span class="cline-any cline-neutral"> </span>
|
|
332
321
|
<span class="cline-any cline-neutral"> </span>
|
|
333
|
-
<span class="cline-any cline-
|
|
334
|
-
<span class="cline-any cline-yes">
|
|
335
|
-
<span class="cline-any cline-yes">
|
|
322
|
+
<span class="cline-any cline-no"> </span>
|
|
323
|
+
<span class="cline-any cline-yes">24x</span>
|
|
324
|
+
<span class="cline-any cline-yes">24x</span>
|
|
336
325
|
<span class="cline-any cline-neutral"> </span>
|
|
337
|
-
<span class="cline-any cline-yes">
|
|
326
|
+
<span class="cline-any cline-yes">24x</span>
|
|
338
327
|
<span class="cline-any cline-yes">1x</span>
|
|
339
328
|
<span class="cline-any cline-neutral"> </span>
|
|
340
329
|
<span class="cline-any cline-neutral"> </span>
|
|
341
|
-
<span class="cline-any cline-yes">
|
|
342
|
-
<span class="cline-any cline-yes">
|
|
330
|
+
<span class="cline-any cline-yes">24x</span>
|
|
331
|
+
<span class="cline-any cline-yes">13x</span>
|
|
343
332
|
<span class="cline-any cline-neutral"> </span>
|
|
344
333
|
<span class="cline-any cline-neutral"> </span>
|
|
345
|
-
<span class="cline-any cline-yes">
|
|
334
|
+
<span class="cline-any cline-yes">24x</span>
|
|
346
335
|
<span class="cline-any cline-neutral"> </span>
|
|
347
336
|
<span class="cline-any cline-neutral"> </span>
|
|
348
337
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -351,23 +340,23 @@
|
|
|
351
340
|
<span class="cline-any cline-neutral"> </span>
|
|
352
341
|
<span class="cline-any cline-neutral"> </span>
|
|
353
342
|
<span class="cline-any cline-neutral"> </span>
|
|
354
|
-
<span class="cline-any cline-
|
|
355
|
-
<span class="cline-any cline-yes">
|
|
343
|
+
<span class="cline-any cline-no"> </span>
|
|
344
|
+
<span class="cline-any cline-yes">24x</span>
|
|
356
345
|
<span class="cline-any cline-neutral"> </span>
|
|
357
346
|
<span class="cline-any cline-neutral"> </span>
|
|
358
347
|
<span class="cline-any cline-neutral"> </span>
|
|
359
348
|
<span class="cline-any cline-neutral"> </span>
|
|
360
|
-
<span class="cline-any cline-yes">
|
|
349
|
+
<span class="cline-any cline-yes">24x</span>
|
|
361
350
|
<span class="cline-any cline-neutral"> </span>
|
|
362
|
-
<span class="cline-any cline-yes">
|
|
351
|
+
<span class="cline-any cline-yes">24x</span>
|
|
363
352
|
<span class="cline-any cline-yes">1x</span>
|
|
364
353
|
<span class="cline-any cline-neutral"> </span>
|
|
365
354
|
<span class="cline-any cline-neutral"> </span>
|
|
366
|
-
<span class="cline-any cline-yes">
|
|
355
|
+
<span class="cline-any cline-yes">24x</span>
|
|
367
356
|
<span class="cline-any cline-yes">4x</span>
|
|
368
357
|
<span class="cline-any cline-neutral"> </span>
|
|
369
358
|
<span class="cline-any cline-neutral"> </span>
|
|
370
|
-
<span class="cline-any cline-yes">
|
|
359
|
+
<span class="cline-any cline-yes">24x</span>
|
|
371
360
|
<span class="cline-any cline-neutral"> </span>
|
|
372
361
|
<span class="cline-any cline-neutral"> </span>
|
|
373
362
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -377,16 +366,16 @@
|
|
|
377
366
|
<span class="cline-any cline-neutral"> </span>
|
|
378
367
|
<span class="cline-any cline-neutral"> </span>
|
|
379
368
|
<span class="cline-any cline-neutral"> </span>
|
|
380
|
-
<span class="cline-any cline-yes">
|
|
381
|
-
<span class="cline-any cline-yes">
|
|
369
|
+
<span class="cline-any cline-yes">24x</span>
|
|
370
|
+
<span class="cline-any cline-yes">19x</span>
|
|
382
371
|
<span class="cline-any cline-neutral"> </span>
|
|
383
372
|
<span class="cline-any cline-yes">5x</span>
|
|
384
373
|
<span class="cline-any cline-neutral"> </span>
|
|
385
|
-
<span class="cline-any cline-yes">
|
|
386
|
-
<span class="cline-any cline-yes">
|
|
374
|
+
<span class="cline-any cline-yes">24x</span>
|
|
375
|
+
<span class="cline-any cline-yes">24x</span>
|
|
387
376
|
<span class="cline-any cline-neutral"> </span>
|
|
388
377
|
<span class="cline-any cline-neutral"> </span>
|
|
389
|
-
<span class="cline-any cline-yes">
|
|
378
|
+
<span class="cline-any cline-yes">55x</span>
|
|
390
379
|
<span class="cline-any cline-yes">1x</span>
|
|
391
380
|
<span class="cline-any cline-yes">1x</span>
|
|
392
381
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -398,15 +387,19 @@
|
|
|
398
387
|
<span class="cline-any cline-yes">1x</span>
|
|
399
388
|
<span class="cline-any cline-neutral"> </span>
|
|
400
389
|
<span class="cline-any cline-neutral"> </span>
|
|
401
|
-
<span class="cline-any cline-yes">
|
|
390
|
+
<span class="cline-any cline-yes">55x</span>
|
|
402
391
|
<span class="cline-any cline-yes">4x</span>
|
|
403
392
|
<span class="cline-any cline-yes">4x</span>
|
|
404
393
|
<span class="cline-any cline-neutral"> </span>
|
|
405
394
|
<span class="cline-any cline-yes">4x</span>
|
|
395
|
+
<span class="cline-any cline-neutral"> </span>
|
|
406
396
|
<span class="cline-any cline-yes">4x</span>
|
|
407
397
|
<span class="cline-any cline-no"> </span>
|
|
408
398
|
<span class="cline-any cline-neutral"> </span>
|
|
409
399
|
<span class="cline-any cline-neutral"> </span>
|
|
400
|
+
<span class="cline-any cline-neutral"> </span>
|
|
401
|
+
<span class="cline-any cline-neutral"> </span>
|
|
402
|
+
<span class="cline-any cline-neutral"> </span>
|
|
410
403
|
<span class="cline-any cline-yes">4x</span>
|
|
411
404
|
<span class="cline-any cline-yes">2x</span>
|
|
412
405
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -433,38 +426,21 @@
|
|
|
433
426
|
<span class="cline-any cline-yes">4x</span>
|
|
434
427
|
<span class="cline-any cline-neutral"> </span>
|
|
435
428
|
<span class="cline-any cline-neutral"> </span>
|
|
436
|
-
<span class="cline-any cline-neutral"> </span>
|
|
437
429
|
<span class="cline-any cline-yes">4x</span>
|
|
438
|
-
<span class="cline-any cline-yes">8x</span>
|
|
439
|
-
<span class="cline-any cline-no"> </span>
|
|
440
430
|
<span class="cline-any cline-neutral"> </span>
|
|
441
431
|
<span class="cline-any cline-yes">4x</span>
|
|
432
|
+
<span class="cline-any cline-yes">2x</span>
|
|
433
|
+
<span class="cline-any cline-yes">2x</span>
|
|
434
|
+
<span class="cline-any cline-yes">2x</span>
|
|
435
|
+
<span class="cline-any cline-yes">2x</span>
|
|
436
|
+
<span class="cline-any cline-yes">2x</span>
|
|
442
437
|
<span class="cline-any cline-no"> </span>
|
|
443
438
|
<span class="cline-any cline-no"> </span>
|
|
444
|
-
<span class="cline-any cline-neutral"> </span>
|
|
445
439
|
<span class="cline-any cline-no"> </span>
|
|
446
440
|
<span class="cline-any cline-neutral"> </span>
|
|
447
|
-
<span class="cline-any cline-neutral"> </span>
|
|
448
|
-
<span class="cline-any cline-neutral"> </span>
|
|
449
|
-
<span class="cline-any cline-yes">4x</span>
|
|
450
|
-
<span class="cline-any cline-yes">2x</span>
|
|
451
|
-
<span class="cline-any cline-yes">2x</span>
|
|
452
|
-
<span class="cline-any cline-yes">4x</span>
|
|
453
|
-
<span class="cline-any cline-yes">4x</span>
|
|
454
441
|
<span class="cline-any cline-no"> </span>
|
|
455
442
|
<span class="cline-any cline-neutral"> </span>
|
|
456
443
|
<span class="cline-any cline-neutral"> </span>
|
|
457
|
-
<span class="cline-any cline-neutral"> </span>
|
|
458
|
-
<span class="cline-any cline-neutral"> </span>
|
|
459
|
-
<span class="cline-any cline-neutral"> </span>
|
|
460
|
-
<span class="cline-any cline-neutral"> </span>
|
|
461
|
-
<span class="cline-any cline-yes">4x</span>
|
|
462
|
-
<span class="cline-any cline-yes">4x</span>
|
|
463
|
-
<span class="cline-any cline-yes">4x</span>
|
|
464
|
-
<span class="cline-any cline-neutral"> </span>
|
|
465
|
-
<span class="cline-any cline-yes">4x</span>
|
|
466
|
-
<span class="cline-any cline-yes">4x</span>
|
|
467
|
-
<span class="cline-any cline-neutral"> </span>
|
|
468
444
|
<span class="cline-any cline-yes">4x</span>
|
|
469
445
|
<span class="cline-any cline-yes">2x</span>
|
|
470
446
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -473,29 +449,30 @@
|
|
|
473
449
|
<span class="cline-any cline-neutral"> </span>
|
|
474
450
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import viewTemplate from "./viewBuilder"
|
|
475
451
|
import { apiFileReturn } from "../../../utilities/fileSystem"
|
|
476
|
-
import
|
|
452
|
+
import { csv, json, jsonWithSchema, Format, isFormat } from "./exporters"
|
|
477
453
|
import { deleteView, getView, getViews, saveView } from "./utils"
|
|
478
454
|
import { fetchView } from "../row"
|
|
479
|
-
import { FieldTypes } from "../../../constants"
|
|
480
455
|
import { context, events } from "@budibase/backend-core"
|
|
481
456
|
import { DocumentType } from "../../../db/utils"
|
|
482
457
|
import sdk from "../../../sdk"
|
|
458
|
+
import { FieldTypes } from "../../../constants"
|
|
483
459
|
import {
|
|
484
|
-
|
|
460
|
+
Ctx,
|
|
485
461
|
Row,
|
|
486
462
|
Table,
|
|
487
463
|
TableExportFormat,
|
|
488
464
|
TableSchema,
|
|
489
465
|
View,
|
|
490
466
|
} from "@budibase/types"
|
|
467
|
+
import { cleanExportRows } from "../row/utils"
|
|
491
468
|
|
|
492
469
|
const { cloneDeep, isEqual } = require("lodash")
|
|
493
470
|
|
|
494
|
-
export async function fetch(ctx:
|
|
471
|
+
export async function fetch(ctx: Ctx) {
|
|
495
472
|
ctx.body = await getViews()
|
|
496
473
|
}
|
|
497
474
|
|
|
498
|
-
export async function save(ctx:
|
|
475
|
+
export async function save(ctx: Ctx) {
|
|
499
476
|
const db = context.getAppDB()
|
|
500
477
|
const { originalName, ...viewToSave } = ctx.request.body
|
|
501
478
|
|
|
@@ -534,7 +511,7 @@ export async function save(ctx: BBContext) {
|
|
|
534
511
|
}
|
|
535
512
|
}
|
|
536
513
|
|
|
537
|
-
export async function calculationEvents(
|
|
514
|
+
export async function <span class="cstat-no" title="statement not covered" >calculationEvents<span class="fstat-no" title="function not covered" >(</span>e</span>xistingView: View, newView: View) {
|
|
538
515
|
const existingCalculation = existingView && existingView.calculation
|
|
539
516
|
const newCalculation = newView && newView.calculation
|
|
540
517
|
|
|
@@ -555,7 +532,7 @@ export async function calculationEvents(existingView: View, newView: View) {
|
|
|
555
532
|
}
|
|
556
533
|
}
|
|
557
534
|
|
|
558
|
-
export async function filterEvents(
|
|
535
|
+
export async function <span class="cstat-no" title="statement not covered" >filterEvents<span class="fstat-no" title="function not covered" >(</span>e</span>xistingView: View, newView: View) {
|
|
559
536
|
const hasExistingFilters = !!(
|
|
560
537
|
existingView &&
|
|
561
538
|
existingView.filters &&
|
|
@@ -590,9 +567,9 @@ async function handleViewEvents(existingView: View, newView: View) {
|
|
|
590
567
|
await filterEvents(existingView, newView)
|
|
591
568
|
}
|
|
592
569
|
|
|
593
|
-
export async function destroy(ctx:
|
|
570
|
+
export async function destroy(ctx: Ctx) {
|
|
594
571
|
const db = context.getAppDB()
|
|
595
|
-
const viewName =
|
|
572
|
+
const viewName = decodeURIComponent(ctx.params.viewName)
|
|
596
573
|
const view = await deleteView(viewName)
|
|
597
574
|
const table = await db.get(view.meta.tableId)
|
|
598
575
|
delete table.views[viewName]
|
|
@@ -602,13 +579,17 @@ export async function destroy(ctx: BBContext) {
|
|
|
602
579
|
ctx.body = view
|
|
603
580
|
}
|
|
604
581
|
|
|
605
|
-
export async function exportView(ctx:
|
|
606
|
-
const viewName =
|
|
582
|
+
export async function exportView(ctx: Ctx) {
|
|
583
|
+
const viewName = decodeURIComponent(ctx.query.view as string)
|
|
607
584
|
const view = await getView(viewName)
|
|
608
585
|
|
|
609
|
-
const format = ctx.query.format as
|
|
610
|
-
|
|
611
|
-
<span class="
|
|
586
|
+
const format = ctx.query.format as unknown
|
|
587
|
+
|
|
588
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isFormat(format)) {
|
|
589
|
+
<span class="cstat-no" title="statement not covered" > ctx.throw(</span>
|
|
590
|
+
400,
|
|
591
|
+
"Format must be specified, either csv, json or jsonWithSchema"
|
|
592
|
+
)
|
|
612
593
|
}
|
|
613
594
|
|
|
614
595
|
if (view) {
|
|
@@ -637,37 +618,20 @@ export async function exportView(ctx: BBContext) {
|
|
|
637
618
|
schema = table.schema
|
|
638
619
|
}
|
|
639
620
|
|
|
640
|
-
|
|
641
|
-
const relationships = Object.entries(schema)
|
|
642
|
-
.filter(entry => entry[1].type === FieldTypes.LINK)
|
|
643
|
-
.map(<span class="fstat-no" title="function not covered" >entry </span>=> <span class="cstat-no" title="statement not covered" >entry[0])</span>
|
|
644
|
-
// iterate relationship columns and remove from and row and schema
|
|
645
|
-
relationships.forEach(<span class="fstat-no" title="function not covered" >column </span>=> {
|
|
646
|
-
<span class="cstat-no" title="statement not covered" > rows.forEach(<span class="fstat-no" title="function not covered" >row </span>=> {</span>
|
|
647
|
-
<span class="cstat-no" title="statement not covered" > delete row[column]</span>
|
|
648
|
-
})
|
|
649
|
-
<span class="cstat-no" title="statement not covered" > delete schema[column]</span>
|
|
650
|
-
})
|
|
621
|
+
let exportRows = cleanExportRows(rows, schema, format, [])
|
|
651
622
|
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
<span class="cstat-no" title="statement not covered"
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
623
|
+
if (format === Format.CSV) {
|
|
624
|
+
ctx.attachment(`${viewName}.csv`)
|
|
625
|
+
ctx.body = apiFileReturn(csv(Object.keys(schema), exportRows))
|
|
626
|
+
} else if (format === Format.JSON) {
|
|
627
|
+
ctx.attachment(`${viewName}.json`)
|
|
628
|
+
ctx.body = apiFileReturn(json(exportRows))
|
|
629
|
+
} else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="else path not taken" >E</span>if (format === Format.JSON_WITH_SCHEMA) {</span>
|
|
630
|
+
<span class="cstat-no" title="statement not covered" > ctx.attachment(`${viewName}.json`)</span>
|
|
631
|
+
<span class="cstat-no" title="statement not covered" > ctx.body = apiFileReturn(jsonWithSchema(schema, exportRows))</span>
|
|
632
|
+
} else {
|
|
633
|
+
<span class="cstat-no" title="statement not covered" > throw "Format not recognised"</span>
|
|
662
634
|
}
|
|
663
|
-
|
|
664
|
-
// Export part
|
|
665
|
-
let headers = Object.keys(schema)
|
|
666
|
-
const exporter = format === "csv" ? exporters.csv : exporters.json
|
|
667
|
-
const filename = `${viewName}.${format}`
|
|
668
|
-
// send down the file
|
|
669
|
-
ctx.attachment(filename)
|
|
670
|
-
ctx.body = apiFileReturn(exporter(headers, rows))
|
|
671
635
|
|
|
672
636
|
if (viewName.startsWith(DocumentType.TABLE)) {
|
|
673
637
|
await events.table.exported(table, format as TableExportFormat)
|
|
@@ -682,7 +646,7 @@ export async function exportView(ctx: BBContext) {
|
|
|
682
646
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
683
647
|
Code coverage generated by
|
|
684
648
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
685
|
-
at
|
|
649
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
686
650
|
</div>
|
|
687
651
|
<script src="../../../../prettify.js"></script>
|
|
688
652
|
<script>
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for src/api/controllers/view/tests</title>
|
|
7
|
+
<meta charset="utf-8" />
|
|
8
|
+
<link rel="stylesheet" href="../../../../../prettify.css" />
|
|
9
|
+
<link rel="stylesheet" href="../../../../../base.css" />
|
|
10
|
+
<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.png" />
|
|
11
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
+
<style type='text/css'>
|
|
13
|
+
.coverage-summary .sorter {
|
|
14
|
+
background-image: url(../../../../../sort-arrow-sprite.png);
|
|
15
|
+
}
|
|
16
|
+
</style>
|
|
17
|
+
</head>
|
|
18
|
+
|
|
19
|
+
<body>
|
|
20
|
+
<div class='wrapper'>
|
|
21
|
+
<div class='pad1'>
|
|
22
|
+
<h1><a href="../../../../../index.html">All files</a> src/api/controllers/view/tests</h1>
|
|
23
|
+
<div class='clearfix'>
|
|
24
|
+
|
|
25
|
+
<div class='fl pad1y space-right2'>
|
|
26
|
+
<span class="strong">0% </span>
|
|
27
|
+
<span class="quiet">Statements</span>
|
|
28
|
+
<span class='fraction'>0/14</span>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<div class='fl pad1y space-right2'>
|
|
33
|
+
<span class="strong">100% </span>
|
|
34
|
+
<span class="quiet">Branches</span>
|
|
35
|
+
<span class='fraction'>0/0</span>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class='fl pad1y space-right2'>
|
|
40
|
+
<span class="strong">0% </span>
|
|
41
|
+
<span class="quiet">Functions</span>
|
|
42
|
+
<span class='fraction'>0/9</span>
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<div class='fl pad1y space-right2'>
|
|
47
|
+
<span class="strong">0% </span>
|
|
48
|
+
<span class="quiet">Lines</span>
|
|
49
|
+
<span class='fraction'>0/14</span>
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
</div>
|
|
54
|
+
<p class="quiet">
|
|
55
|
+
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
+
</p>
|
|
57
|
+
<template id="filterTemplate">
|
|
58
|
+
<div class="quiet">
|
|
59
|
+
Filter:
|
|
60
|
+
<input oninput="onInput()" type="search" id="fileSearch">
|
|
61
|
+
</div>
|
|
62
|
+
</template>
|
|
63
|
+
</div>
|
|
64
|
+
<div class='status-line low'></div>
|
|
65
|
+
<div class="pad1">
|
|
66
|
+
<table class="coverage-summary">
|
|
67
|
+
<thead>
|
|
68
|
+
<tr>
|
|
69
|
+
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
|
70
|
+
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
|
71
|
+
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
|
72
|
+
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
73
|
+
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
|
74
|
+
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
75
|
+
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
|
76
|
+
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
77
|
+
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
|
78
|
+
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
79
|
+
</tr>
|
|
80
|
+
</thead>
|
|
81
|
+
<tbody><tr>
|
|
82
|
+
<td class="file low" data-value="viewBuilder.spec.js"><a href="viewBuilder.spec.js.html">viewBuilder.spec.js</a></td>
|
|
83
|
+
<td data-value="0" class="pic low">
|
|
84
|
+
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
85
|
+
</td>
|
|
86
|
+
<td data-value="0" class="pct low">0%</td>
|
|
87
|
+
<td data-value="14" class="abs low">0/14</td>
|
|
88
|
+
<td data-value="100" class="pct high">100%</td>
|
|
89
|
+
<td data-value="0" class="abs high">0/0</td>
|
|
90
|
+
<td data-value="0" class="pct low">0%</td>
|
|
91
|
+
<td data-value="9" class="abs low">0/9</td>
|
|
92
|
+
<td data-value="0" class="pct low">0%</td>
|
|
93
|
+
<td data-value="14" class="abs low">0/14</td>
|
|
94
|
+
</tr>
|
|
95
|
+
|
|
96
|
+
</tbody>
|
|
97
|
+
</table>
|
|
98
|
+
</div>
|
|
99
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
100
|
+
</div><!-- /wrapper -->
|
|
101
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
|
+
Code coverage generated by
|
|
103
|
+
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
105
|
+
</div>
|
|
106
|
+
<script src="../../../../../prettify.js"></script>
|
|
107
|
+
<script>
|
|
108
|
+
window.onload = function () {
|
|
109
|
+
prettyPrint();
|
|
110
|
+
};
|
|
111
|
+
</script>
|
|
112
|
+
<script src="../../../../../sorter.js"></script>
|
|
113
|
+
<script src="../../../../../block-navigation.js"></script>
|
|
114
|
+
</body>
|
|
115
|
+
</html>
|
|
116
|
+
|