@budibase/server 1.0.49 → 1.0.50-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__mocks__/arangojs.ts +1 -1
- package/__mocks__/aws-sdk.ts +4 -4
- package/__mocks__/mongodb.ts +4 -5
- package/__mocks__/mssql.ts +3 -3
- package/__mocks__/node-fetch.ts +2 -1
- package/__mocks__/pg.ts +3 -5
- package/builder/assets/index.c0cc369d.css +6 -0
- package/builder/assets/{index.2c37968e.js → index.ff2bad21.js} +252 -249
- package/builder/assets/{vendor.f9faf6ab.js → vendor.5ad9695a.js} +202 -106
- package/builder/index.html +3 -3
- package/coverage/clover.xml +3105 -2814
- package/coverage/coverage-final.json +106 -101
- package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/application.js.html +257 -152
- package/coverage/lcov-report/api/controllers/auth.js.html +22 -13
- package/coverage/lcov-report/api/controllers/automation.js.html +39 -69
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +8 -11
- package/coverage/lcov-report/api/controllers/component.js.html +13 -16
- package/coverage/lcov-report/api/controllers/datasource.js.html +81 -51
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/api/controllers/index.html +78 -78
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
- package/coverage/lcov-report/api/controllers/metadata.js.html +6 -21
- package/coverage/lcov-report/api/controllers/migrations.js.html +119 -0
- package/coverage/lcov-report/api/controllers/permission.js.html +19 -19
- package/coverage/lcov-report/api/controllers/query/index.html +10 -10
- package/coverage/lcov-report/api/controllers/query/index.js.html +38 -35
- package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
- package/coverage/lcov-report/api/controllers/role.js.html +16 -16
- package/coverage/lcov-report/api/controllers/routing.js.html +7 -10
- package/coverage/lcov-report/api/controllers/row/external.js.html +48 -141
- package/coverage/lcov-report/api/controllers/row/index.html +55 -40
- package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
- package/coverage/lcov-report/api/controllers/row/internal.js.html +118 -226
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +52 -34
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +548 -0
- package/coverage/lcov-report/api/controllers/row/utils.js.html +47 -62
- package/coverage/lcov-report/api/controllers/screen.js.html +15 -21
- package/coverage/lcov-report/api/controllers/script.js.html +4 -4
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +599 -0
- package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
- package/coverage/lcov-report/api/controllers/table/index.html +58 -43
- package/coverage/lcov-report/api/controllers/table/index.js.html +58 -82
- package/coverage/lcov-report/api/controllers/table/internal.js.html +81 -66
- package/coverage/lcov-report/api/controllers/table/utils.js.html +218 -110
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +79 -76
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
- package/coverage/lcov-report/api/controllers/view/index.html +16 -16
- package/coverage/lcov-report/api/controllers/view/index.js.html +27 -33
- package/coverage/lcov-report/api/controllers/view/utils.js.html +35 -20
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
- package/coverage/lcov-report/api/controllers/webhook.js.html +34 -28
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +8 -8
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/application.js.html +1 -1
- package/coverage/lcov-report/api/routes/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +18 -18
- package/coverage/lcov-report/api/routes/index.js.html +3 -3
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/{hosting.js.html → migrations.js.html} +17 -14
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/row.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/static.js.html +17 -2
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +24 -24
- package/coverage/lcov-report/automations/automationUtils.js.html +7 -10
- package/coverage/lcov-report/automations/bullboard.js.html +16 -16
- package/coverage/lcov-report/automations/index.html +18 -18
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
- package/coverage/lcov-report/automations/steps/createRow.js.html +13 -22
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +11 -20
- package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
- package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
- package/coverage/lcov-report/automations/steps/filter.js.html +7 -7
- package/coverage/lcov-report/automations/steps/index.html +13 -13
- package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
- package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -10
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
- package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
- package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
- package/coverage/lcov-report/automations/steps/updateRow.js.html +7 -7
- package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
- package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
- package/coverage/lcov-report/automations/triggers.js.html +61 -55
- package/coverage/lcov-report/automations/utils.js.html +54 -42
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +53 -26
- package/coverage/lcov-report/constants/layouts.js.html +5 -5
- package/coverage/lcov-report/constants/screens.js.html +4 -4
- package/coverage/lcov-report/db/client.js.html +18 -18
- package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
- package/coverage/lcov-report/db/index.html +15 -15
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +25 -37
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +51 -96
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +42 -42
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +87 -87
- package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +5 -5
- package/coverage/lcov-report/events/utils.js.html +3 -3
- package/coverage/lcov-report/index.html +135 -120
- package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
- package/coverage/lcov-report/middleware/authorized.js.html +173 -65
- package/coverage/lcov-report/middleware/builder.js.html +10 -10
- package/coverage/lcov-report/middleware/currentapp.js.html +95 -83
- package/coverage/lcov-report/middleware/index.html +38 -38
- package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +281 -53
- package/coverage/lcov-report/middleware/utils.js.html +2 -2
- package/coverage/lcov-report/threads/automation.js.html +30 -24
- package/coverage/lcov-report/threads/index.html +26 -26
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +39 -24
- package/coverage/lcov-report/threads/utils.js.html +14 -14
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
- package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
- package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
- package/coverage/lcov-report/utilities/global.js.html +58 -49
- package/coverage/lcov-report/utilities/index.html +37 -37
- package/coverage/lcov-report/utilities/index.js.html +43 -73
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
- package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +97 -103
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +75 -27
- package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
- package/coverage/lcov-report/utilities/security.js.html +8 -8
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +141 -0
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +359 -0
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +305 -0
- package/coverage/lcov-report/{api/controllers/hosting.js.html → utilities/usageQuota/usageQuoteReset.js.html} +36 -48
- package/coverage/lcov-report/utilities/users.js.html +9 -9
- package/coverage/lcov-report/utilities/workerRequests.js.html +43 -112
- package/coverage/lcov.info +5010 -4425
- package/dist/api/controllers/application.js +90 -60
- package/dist/api/controllers/auth.js +8 -5
- package/dist/api/controllers/automation.js +14 -19
- package/dist/api/controllers/cloud.js +2 -3
- package/dist/api/controllers/component.js +3 -4
- package/dist/api/controllers/datasource.js +20 -10
- package/dist/api/controllers/deploy/Deployment.js +3 -6
- package/dist/api/controllers/deploy/index.js +12 -13
- package/dist/api/controllers/dev.js +5 -5
- package/dist/api/controllers/layout.js +3 -3
- package/dist/api/controllers/metadata.js +4 -4
- package/dist/api/controllers/migrations.js +21 -0
- package/dist/api/controllers/permission.js +4 -4
- package/dist/api/controllers/query/import/index.js +4 -6
- package/dist/api/controllers/query/index.js +11 -10
- package/dist/api/controllers/role.js +5 -5
- package/dist/api/controllers/routing.js +5 -6
- package/dist/api/controllers/row/ExternalRequest.js +90 -67
- package/dist/api/controllers/row/external.js +14 -22
- package/dist/api/controllers/row/internal.js +55 -93
- package/dist/api/controllers/row/internalSearch.js +23 -17
- package/dist/api/controllers/row/staticFormula.js +147 -0
- package/dist/api/controllers/row/utils.js +13 -14
- package/dist/api/controllers/screen.js +5 -7
- package/dist/api/controllers/static/index.js +62 -16
- package/dist/api/controllers/table/bulkFormula.js +159 -0
- package/dist/api/controllers/table/external.js +7 -10
- package/dist/api/controllers/table/index.js +16 -13
- package/dist/api/controllers/table/internal.js +22 -16
- package/dist/api/controllers/table/utils.js +62 -35
- package/dist/api/controllers/user.js +43 -43
- package/dist/api/controllers/view/index.js +8 -10
- package/dist/api/controllers/view/utils.js +9 -4
- package/dist/api/controllers/webhook.js +10 -8
- package/dist/api/routes/index.js +2 -2
- package/dist/api/routes/migrations.js +9 -0
- package/dist/api/routes/static.js +2 -1
- package/dist/api/routes/tests/utilities/TestFunctions.js +37 -17
- package/dist/app.js +35 -5
- package/dist/automations/automationUtils.js +2 -3
- package/dist/automations/steps/createRow.js +3 -5
- package/dist/automations/steps/deleteRow.js +1 -4
- package/dist/automations/steps/updateRow.js +1 -1
- package/dist/automations/triggers.js +27 -25
- package/dist/automations/utils.js +10 -5
- package/dist/constants/index.js +7 -0
- package/dist/db/linkedRows/LinkController.js +3 -7
- package/dist/db/linkedRows/index.js +16 -27
- package/dist/db/linkedRows/linkUtils.js +6 -6
- package/dist/db/views/staticViews.js +9 -10
- package/dist/definitions/datasource.js +1 -0
- package/dist/environment.js +4 -1
- package/dist/integrations/base/sql.js +62 -21
- package/dist/integrations/googlesheets.js +340 -0
- package/dist/integrations/index.js +3 -0
- package/dist/integrations/utils.js +60 -9
- package/dist/middleware/authorized.js +57 -30
- package/dist/middleware/builder.js +2 -2
- package/dist/middleware/currentapp.js +41 -37
- package/dist/middleware/usageQuota.js +82 -15
- package/dist/migrations/functions/appUrls.js +46 -0
- package/dist/migrations/functions/quotas1.js +50 -0
- package/dist/migrations/functions/usageQuotas/index.js +20 -0
- package/dist/migrations/functions/usageQuotas/syncApps.js +29 -0
- package/dist/migrations/functions/usageQuotas/syncRows.js +33 -0
- package/dist/migrations/functions/userEmailViewCasing.js +24 -0
- package/dist/migrations/index.js +62 -0
- package/dist/package.json +8 -5
- package/dist/tests/utilities/TestConfiguration.js +80 -50
- package/dist/threads/automation.js +13 -11
- package/dist/threads/query.js +15 -11
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/index.js +4 -3
- package/dist/utilities/global.js +15 -12
- package/dist/utilities/index.js +7 -17
- package/dist/utilities/routing/index.js +5 -5
- package/dist/utilities/rowProcessor/index.js +23 -17
- package/dist/utilities/rowProcessor/utils.js +14 -4
- package/dist/utilities/{usageQuota.js → usageQuota/index.js} +45 -31
- package/dist/utilities/usageQuota/rows.js +78 -0
- package/dist/utilities/usageQuota/usageQuoteReset.js +16 -0
- package/dist/utilities/users.js +3 -3
- package/dist/utilities/workerRequests.js +4 -24
- package/nodemon.json +1 -1
- package/package.json +9 -6
- package/scripts/integrations/mssql/data/Dockerfile +1 -1
- package/scripts/integrations/mssql/data/setup.sql +17 -4
- package/scripts/integrations/postgres/init.sql +11 -6
- package/scripts/likeCypress.ts +1 -1
- package/src/api/controllers/application.js +85 -50
- package/src/api/controllers/auth.js +8 -5
- package/src/api/controllers/automation.js +13 -23
- package/src/api/controllers/cloud.js +2 -3
- package/src/api/controllers/component.js +3 -4
- package/src/api/controllers/datasource.js +21 -11
- package/src/api/controllers/deploy/Deployment.js +3 -7
- package/src/api/controllers/deploy/index.js +20 -13
- package/src/api/controllers/dev.js +5 -5
- package/src/api/controllers/layout.js +3 -3
- package/src/api/controllers/metadata.js +4 -9
- package/src/api/controllers/migrations.js +13 -0
- package/src/api/controllers/permission.js +4 -4
- package/src/api/controllers/query/import/index.ts +4 -6
- package/src/api/controllers/query/import/tests/index.spec.js +2 -1
- package/src/api/controllers/query/index.js +11 -10
- package/src/api/controllers/role.js +5 -5
- package/src/api/controllers/routing.js +5 -6
- package/src/api/controllers/row/ExternalRequest.ts +67 -43
- package/src/api/controllers/row/external.js +27 -58
- package/src/api/controllers/row/internal.js +54 -90
- package/src/api/controllers/row/internalSearch.js +23 -17
- package/src/api/controllers/row/staticFormula.js +156 -0
- package/src/api/controllers/row/utils.js +13 -18
- package/src/api/controllers/screen.js +5 -7
- package/src/api/controllers/static/index.js +66 -15
- package/src/api/controllers/table/bulkFormula.js +173 -0
- package/src/api/controllers/table/external.js +7 -10
- package/src/api/controllers/table/index.js +20 -28
- package/src/api/controllers/table/internal.js +24 -19
- package/src/api/controllers/table/utils.js +78 -42
- package/src/api/controllers/user.js +46 -45
- package/src/api/controllers/view/index.js +8 -10
- package/src/api/controllers/view/utils.js +9 -4
- package/src/api/controllers/webhook.js +10 -8
- package/src/api/routes/index.js +2 -2
- package/src/api/routes/migrations.js +14 -0
- package/src/api/routes/static.js +5 -0
- package/src/api/routes/tests/application.spec.js +2 -2
- package/src/api/routes/tests/auth.spec.js +1 -2
- package/src/api/routes/tests/automation.spec.js +1 -0
- package/src/api/routes/tests/misc.spec.js +0 -1
- package/src/api/routes/tests/routing.spec.js +21 -12
- package/src/api/routes/tests/row.spec.js +7 -4
- package/src/api/routes/tests/static.spec.js +98 -0
- package/src/api/routes/tests/utilities/TestFunctions.js +39 -17
- package/src/app.ts +18 -5
- package/src/automations/automationUtils.js +2 -3
- package/src/automations/steps/createRow.js +2 -5
- package/src/automations/steps/deleteRow.js +1 -4
- package/src/automations/steps/updateRow.js +1 -1
- package/src/automations/triggers.js +33 -31
- package/src/automations/utils.js +9 -5
- package/src/constants/index.js +9 -0
- package/src/db/linkedRows/LinkController.js +3 -7
- package/src/db/linkedRows/index.js +16 -31
- package/src/db/linkedRows/linkUtils.js +6 -6
- package/src/db/tests/linkController.spec.js +0 -1
- package/src/db/tests/linkTests.spec.js +5 -6
- package/src/db/views/staticViews.js +8 -10
- package/src/definitions/common.ts +3 -0
- package/src/definitions/datasource.ts +3 -0
- package/src/environment.js +4 -1
- package/src/integrations/base/sql.ts +75 -29
- package/src/integrations/googlesheets.ts +353 -0
- package/src/integrations/index.ts +3 -0
- package/src/integrations/tests/sql.spec.js +16 -0
- package/src/integrations/utils.ts +75 -12
- package/src/middleware/authorized.js +66 -30
- package/src/middleware/builder.js +2 -2
- package/src/middleware/currentapp.js +50 -46
- package/src/middleware/tests/authorized.spec.js +13 -6
- package/src/middleware/tests/currentapp.spec.js +6 -0
- package/src/middleware/tests/usageQuota.spec.js +18 -24
- package/src/middleware/usageQuota.js +93 -17
- package/src/migrations/functions/appUrls.ts +34 -0
- package/src/migrations/functions/quotas1.ts +20 -0
- package/src/migrations/functions/tests/appUrls.spec.js +29 -0
- package/src/migrations/functions/tests/quotas1.spec.js +27 -0
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
- package/src/migrations/functions/usageQuotas/index.ts +8 -0
- package/src/migrations/functions/usageQuotas/syncApps.ts +18 -0
- package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
- package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +37 -0
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +43 -0
- package/src/migrations/functions/userEmailViewCasing.ts +13 -0
- package/src/migrations/index.ts +56 -0
- package/src/module.d.ts +3 -0
- package/src/tests/utilities/TestConfiguration.js +82 -55
- package/src/threads/automation.js +17 -15
- package/src/threads/query.js +17 -12
- package/src/utilities/fileSystem/index.js +4 -3
- package/src/utilities/global.js +15 -12
- package/src/utilities/index.js +7 -17
- package/src/utilities/routing/index.js +5 -5
- package/src/utilities/rowProcessor/index.js +25 -27
- package/src/utilities/rowProcessor/utils.js +23 -7
- package/src/utilities/tests/usageQuota/usageQuota.spec.js +72 -0
- package/src/utilities/usageQuota/index.js +93 -0
- package/src/utilities/usageQuota/rows.js +75 -0
- package/src/utilities/usageQuota/usageQuoteReset.js +18 -0
- package/src/utilities/users.js +3 -3
- package/src/utilities/workerRequests.js +4 -27
- package/tsconfig.json +2 -1
- package/builder/assets/index.39e01193.css +0 -1
- package/dist/api/controllers/hosting.js +0 -30
- package/dist/api/routes/hosting.js +0 -11
- package/src/api/controllers/hosting.js +0 -22
- package/src/api/routes/hosting.js +0 -13
- package/src/api/routes/tests/hosting.spec.js +0 -36
- package/src/utilities/usageQuota.js +0 -73
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">8.
|
|
26
|
+
<span class="strong">8.2% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>11/
|
|
28
|
+
<span class='fraction'>11/134</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">8.
|
|
47
|
+
<span class="strong">8.2% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>11/
|
|
49
|
+
<span class='fraction'>11/134</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -361,30 +361,27 @@
|
|
|
361
361
|
<a name='L302'></a><a href='#L302'>302</a>
|
|
362
362
|
<a name='L303'></a><a href='#L303'>303</a>
|
|
363
363
|
<a name='L304'></a><a href='#L304'>304</a>
|
|
364
|
-
<a name='L305'></a><a href='#L305'>305</a>
|
|
365
|
-
<a name='L306'></a><a href='#L306'>306</a>
|
|
366
|
-
<a name='L307'></a><a href='#L307'>307</a>
|
|
367
|
-
<a name='L308'></a><a href='#L308'>308</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
|
|
364
|
+
<a name='L305'></a><a href='#L305'>305</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
368
365
|
<span class="cline-any cline-neutral"> </span>
|
|
369
366
|
<span class="cline-any cline-neutral"> </span>
|
|
367
|
+
<span class="cline-any cline-yes">39x</span>
|
|
370
368
|
<span class="cline-any cline-neutral"> </span>
|
|
371
|
-
<span class="cline-any cline-yes">34x</span>
|
|
372
369
|
<span class="cline-any cline-neutral"> </span>
|
|
373
370
|
<span class="cline-any cline-neutral"> </span>
|
|
374
371
|
<span class="cline-any cline-neutral"> </span>
|
|
375
372
|
<span class="cline-any cline-neutral"> </span>
|
|
376
373
|
<span class="cline-any cline-neutral"> </span>
|
|
374
|
+
<span class="cline-any cline-yes">39x</span>
|
|
377
375
|
<span class="cline-any cline-neutral"> </span>
|
|
378
|
-
<span class="cline-any cline-yes">34x</span>
|
|
379
376
|
<span class="cline-any cline-neutral"> </span>
|
|
380
377
|
<span class="cline-any cline-neutral"> </span>
|
|
381
378
|
<span class="cline-any cline-neutral"> </span>
|
|
382
|
-
<span class="cline-any cline-
|
|
383
|
-
<span class="cline-any cline-yes">
|
|
384
|
-
<span class="cline-any cline-yes">
|
|
385
|
-
<span class="cline-any cline-yes">
|
|
386
|
-
<span class="cline-any cline-yes">
|
|
387
|
-
<span class="cline-any cline-yes">
|
|
379
|
+
<span class="cline-any cline-yes">39x</span>
|
|
380
|
+
<span class="cline-any cline-yes">39x</span>
|
|
381
|
+
<span class="cline-any cline-yes">39x</span>
|
|
382
|
+
<span class="cline-any cline-yes">39x</span>
|
|
383
|
+
<span class="cline-any cline-yes">39x</span>
|
|
384
|
+
<span class="cline-any cline-yes">39x</span>
|
|
388
385
|
<span class="cline-any cline-neutral"> </span>
|
|
389
386
|
<span class="cline-any cline-neutral"> </span>
|
|
390
387
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -524,8 +521,7 @@
|
|
|
524
521
|
<span class="cline-any cline-no"> </span>
|
|
525
522
|
<span class="cline-any cline-neutral"> </span>
|
|
526
523
|
<span class="cline-any cline-neutral"> </span>
|
|
527
|
-
<span class="cline-any cline-yes">
|
|
528
|
-
<span class="cline-any cline-no"> </span>
|
|
524
|
+
<span class="cline-any cline-yes">39x</span>
|
|
529
525
|
<span class="cline-any cline-no"> </span>
|
|
530
526
|
<span class="cline-any cline-neutral"> </span>
|
|
531
527
|
<span class="cline-any cline-no"> </span>
|
|
@@ -632,8 +628,7 @@
|
|
|
632
628
|
<span class="cline-any cline-no"> </span>
|
|
633
629
|
<span class="cline-any cline-neutral"> </span>
|
|
634
630
|
<span class="cline-any cline-neutral"> </span>
|
|
635
|
-
<span class="cline-any cline-yes">
|
|
636
|
-
<span class="cline-any cline-no"> </span>
|
|
631
|
+
<span class="cline-any cline-yes">39x</span>
|
|
637
632
|
<span class="cline-any cline-no"> </span>
|
|
638
633
|
<span class="cline-any cline-no"> </span>
|
|
639
634
|
<span class="cline-any cline-no"> </span>
|
|
@@ -655,8 +650,7 @@
|
|
|
655
650
|
<span class="cline-any cline-no"> </span>
|
|
656
651
|
<span class="cline-any cline-neutral"> </span>
|
|
657
652
|
<span class="cline-any cline-neutral"> </span>
|
|
658
|
-
<span class="cline-any cline-yes">
|
|
659
|
-
<span class="cline-any cline-no"> </span>
|
|
653
|
+
<span class="cline-any cline-yes">39x</span>
|
|
660
654
|
<span class="cline-any cline-no"> </span>
|
|
661
655
|
<span class="cline-any cline-no"> </span>
|
|
662
656
|
<span class="cline-any cline-no"> </span>
|
|
@@ -671,8 +665,7 @@
|
|
|
671
665
|
<span class="cline-any cline-neutral"> </span>
|
|
672
666
|
<span class="cline-any cline-no"> </span>
|
|
673
667
|
<span class="cline-any cline-neutral"> </span>
|
|
674
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
675
|
-
const {
|
|
668
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const {
|
|
676
669
|
buildExternalTableId,
|
|
677
670
|
breakExternalTableId,
|
|
678
671
|
} = require("../../../integrations/utils")
|
|
@@ -692,6 +685,7 @@ const { makeExternalQuery } = require("../../../integrations/base/utils")
|
|
|
692
685
|
const { cloneDeep } = require("lodash/fp")
|
|
693
686
|
const csvParser = require("../../../utilities/csvParser")
|
|
694
687
|
const { handleRequest } = require("../row/external")
|
|
688
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
695
689
|
|
|
696
690
|
async function <span class="fstat-no" title="function not covered" >makeTableRequest(</span>
|
|
697
691
|
datasource,
|
|
@@ -832,7 +826,6 @@ function <span class="fstat-no" title="function not covered" >isRelationshipSetu
|
|
|
832
826
|
}
|
|
833
827
|
|
|
834
828
|
exports.save = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
|
|
835
|
-
const appId = <span class="cstat-no" title="statement not covered" >ctx.appId</span>
|
|
836
829
|
const table = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
|
|
837
830
|
// can't do this right now
|
|
838
831
|
<span class="cstat-no" title="statement not covered" > delete table.dataImport</span>
|
|
@@ -849,14 +842,14 @@ exports.save = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
|
849
842
|
|
|
850
843
|
let oldTable
|
|
851
844
|
<span class="cstat-no" title="statement not covered" > if (ctx.request.body && ctx.request.body._id) {</span>
|
|
852
|
-
<span class="cstat-no" title="statement not covered" > oldTable = await getTable(
|
|
845
|
+
<span class="cstat-no" title="statement not covered" > oldTable = await getTable(ctx.request.body._id)</span>
|
|
853
846
|
}
|
|
854
847
|
|
|
855
848
|
<span class="cstat-no" title="statement not covered" > if (hasTypeChanged(tableToSave, oldTable)) {</span>
|
|
856
849
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "A column type has changed.")</span>
|
|
857
850
|
}
|
|
858
851
|
|
|
859
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
852
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
860
853
|
const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
|
|
861
854
|
const oldTables = <span class="cstat-no" title="statement not covered" >cloneDeep(datasource.entities)</span>
|
|
862
855
|
const tables = <span class="cstat-no" title="statement not covered" >datasource.entities</span>
|
|
@@ -940,14 +933,13 @@ exports.save = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
|
940
933
|
}
|
|
941
934
|
|
|
942
935
|
exports.destroy = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
|
|
943
|
-
const
|
|
944
|
-
const tableToDelete = <span class="cstat-no" title="statement not covered" >await getTable(appId, ctx.params.tableId)</span>
|
|
936
|
+
const tableToDelete = <span class="cstat-no" title="statement not covered" >await getTable(ctx.params.tableId)</span>
|
|
945
937
|
<span class="cstat-no" title="statement not covered" > if (!tableToDelete || !tableToDelete.created) {</span>
|
|
946
938
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "Cannot delete tables which weren't created in Budibase.")</span>
|
|
947
939
|
}
|
|
948
940
|
const datasourceId = <span class="cstat-no" title="statement not covered" >getDatasourceId(tableToDelete)</span>
|
|
949
941
|
|
|
950
|
-
const db = <span class="cstat-no" title="statement not covered" >
|
|
942
|
+
const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
|
|
951
943
|
const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
|
|
952
944
|
const tables = <span class="cstat-no" title="statement not covered" >datasource.entities</span>
|
|
953
945
|
|
|
@@ -963,8 +955,7 @@ exports.destroy = <span class="fstat-no" title="function not covered" >as</span>
|
|
|
963
955
|
}
|
|
964
956
|
|
|
965
957
|
exports.bulkImport = <span class="fstat-no" title="function not covered" >as</span>ync function (ctx) {
|
|
966
|
-
const
|
|
967
|
-
const table = <span class="cstat-no" title="statement not covered" >await getTable(appId, ctx.params.tableId)</span>
|
|
958
|
+
const table = <span class="cstat-no" title="statement not covered" >await getTable(ctx.params.tableId)</span>
|
|
968
959
|
const { dataImport } = <span class="cstat-no" title="statement not covered" >ctx.request.body</span>
|
|
969
960
|
<span class="cstat-no" title="statement not covered" > if (!dataImport || !dataImport.schema || !dataImport.csvString) {</span>
|
|
970
961
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "Provided data import information is invalid.")</span>
|
|
@@ -973,7 +964,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
|
|
|
973
964
|
...dataImport,
|
|
974
965
|
existingTable: table,
|
|
975
966
|
})
|
|
976
|
-
<span class="cstat-no" title="statement not covered" > await handleRequest(
|
|
967
|
+
<span class="cstat-no" title="statement not covered" > await handleRequest(DataSourceOperation.BULK_CREATE, table._id, {</span>
|
|
977
968
|
rows,
|
|
978
969
|
})
|
|
979
970
|
<span class="cstat-no" title="statement not covered" > return table</span>
|
|
@@ -985,7 +976,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
|
|
|
985
976
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
986
977
|
Code coverage generated by
|
|
987
978
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
988
|
-
at
|
|
979
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
989
980
|
</div>
|
|
990
981
|
</div>
|
|
991
982
|
<script src="../../../prettify.js"></script>
|
|
@@ -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">53.32% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>289/542</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">36.04% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>102/283</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">52.56% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>41/78</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">53.68% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>284/529</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -73,63 +73,78 @@
|
|
|
73
73
|
</tr>
|
|
74
74
|
</thead>
|
|
75
75
|
<tbody><tr>
|
|
76
|
+
<td class="file medium" data-value="bulkFormula.js"><a href="bulkFormula.js.html">bulkFormula.js</a></td>
|
|
77
|
+
<td data-value="69.23" class="pic medium">
|
|
78
|
+
<div class="chart"><div class="cover-fill" style="width: 69%"></div><div class="cover-empty" style="width: 31%"></div></div>
|
|
79
|
+
</td>
|
|
80
|
+
<td data-value="69.23" class="pct medium">69.23%</td>
|
|
81
|
+
<td data-value="78" class="abs medium">54/78</td>
|
|
82
|
+
<td data-value="43.63" class="pct low">43.63%</td>
|
|
83
|
+
<td data-value="55" class="abs low">24/55</td>
|
|
84
|
+
<td data-value="81.25" class="pct high">81.25%</td>
|
|
85
|
+
<td data-value="16" class="abs high">13/16</td>
|
|
86
|
+
<td data-value="69.33" class="pct medium">69.33%</td>
|
|
87
|
+
<td data-value="75" class="abs medium">52/75</td>
|
|
88
|
+
</tr>
|
|
89
|
+
|
|
90
|
+
<tr>
|
|
76
91
|
<td class="file low" data-value="external.js"><a href="external.js.html">external.js</a></td>
|
|
77
|
-
<td data-value="8.
|
|
92
|
+
<td data-value="8.2" class="pic low">
|
|
78
93
|
<div class="chart"><div class="cover-fill" style="width: 8%"></div><div class="cover-empty" style="width: 92%"></div></div>
|
|
79
94
|
</td>
|
|
80
|
-
<td data-value="8.
|
|
81
|
-
<td data-value="
|
|
95
|
+
<td data-value="8.2" class="pct low">8.2%</td>
|
|
96
|
+
<td data-value="134" class="abs low">11/134</td>
|
|
82
97
|
<td data-value="0" class="pct low">0%</td>
|
|
83
98
|
<td data-value="76" class="abs low">0/76</td>
|
|
84
99
|
<td data-value="0" class="pct low">0%</td>
|
|
85
100
|
<td data-value="14" class="abs low">0/14</td>
|
|
86
|
-
<td data-value="8.
|
|
87
|
-
<td data-value="
|
|
101
|
+
<td data-value="8.2" class="pct low">8.2%</td>
|
|
102
|
+
<td data-value="134" class="abs low">11/134</td>
|
|
88
103
|
</tr>
|
|
89
104
|
|
|
90
105
|
<tr>
|
|
91
|
-
<td class="file
|
|
92
|
-
<td data-value="
|
|
93
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
106
|
+
<td class="file medium" data-value="index.js"><a href="index.js.html">index.js</a></td>
|
|
107
|
+
<td data-value="76.78" class="pic medium">
|
|
108
|
+
<div class="chart"><div class="cover-fill" style="width: 76%"></div><div class="cover-empty" style="width: 24%"></div></div>
|
|
94
109
|
</td>
|
|
95
|
-
<td data-value="
|
|
96
|
-
<td data-value="
|
|
110
|
+
<td data-value="76.78" class="pct medium">76.78%</td>
|
|
111
|
+
<td data-value="56" class="abs medium">43/56</td>
|
|
97
112
|
<td data-value="73.91" class="pct medium">73.91%</td>
|
|
98
113
|
<td data-value="23" class="abs medium">17/23</td>
|
|
99
|
-
<td data-value="
|
|
100
|
-
<td data-value="
|
|
101
|
-
<td data-value="
|
|
102
|
-
<td data-value="
|
|
114
|
+
<td data-value="66.66" class="pct medium">66.66%</td>
|
|
115
|
+
<td data-value="9" class="abs medium">6/9</td>
|
|
116
|
+
<td data-value="78.18" class="pct medium">78.18%</td>
|
|
117
|
+
<td data-value="55" class="abs medium">43/55</td>
|
|
103
118
|
</tr>
|
|
104
119
|
|
|
105
120
|
<tr>
|
|
106
121
|
<td class="file medium" data-value="internal.js"><a href="internal.js.html">internal.js</a></td>
|
|
107
|
-
<td data-value="
|
|
108
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
122
|
+
<td data-value="72.46" class="pic medium">
|
|
123
|
+
<div class="chart"><div class="cover-fill" style="width: 72%"></div><div class="cover-empty" style="width: 28%"></div></div>
|
|
109
124
|
</td>
|
|
110
|
-
<td data-value="
|
|
111
|
-
<td data-value="
|
|
112
|
-
<td data-value="
|
|
113
|
-
<td data-value="
|
|
114
|
-
<td data-value="
|
|
115
|
-
<td data-value="5" class="abs
|
|
116
|
-
<td data-value="
|
|
117
|
-
<td data-value="
|
|
125
|
+
<td data-value="72.46" class="pct medium">72.46%</td>
|
|
126
|
+
<td data-value="69" class="abs medium">50/69</td>
|
|
127
|
+
<td data-value="67.64" class="pct medium">67.64%</td>
|
|
128
|
+
<td data-value="34" class="abs medium">23/34</td>
|
|
129
|
+
<td data-value="40" class="pct low">40%</td>
|
|
130
|
+
<td data-value="5" class="abs low">2/5</td>
|
|
131
|
+
<td data-value="75.75" class="pct medium">75.75%</td>
|
|
132
|
+
<td data-value="66" class="abs medium">50/66</td>
|
|
118
133
|
</tr>
|
|
119
134
|
|
|
120
135
|
<tr>
|
|
121
136
|
<td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
|
|
122
|
-
<td data-value="
|
|
123
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
137
|
+
<td data-value="63.9" class="pic medium">
|
|
138
|
+
<div class="chart"><div class="cover-fill" style="width: 63%"></div><div class="cover-empty" style="width: 37%"></div></div>
|
|
124
139
|
</td>
|
|
125
|
-
<td data-value="
|
|
126
|
-
<td data-value="
|
|
127
|
-
<td data-value="
|
|
128
|
-
<td data-value="
|
|
129
|
-
<td data-value="
|
|
130
|
-
<td data-value="
|
|
131
|
-
<td data-value="64.
|
|
132
|
-
<td data-value="
|
|
140
|
+
<td data-value="63.9" class="pct medium">63.9%</td>
|
|
141
|
+
<td data-value="205" class="abs medium">131/205</td>
|
|
142
|
+
<td data-value="40" class="pct low">40%</td>
|
|
143
|
+
<td data-value="95" class="abs low">38/95</td>
|
|
144
|
+
<td data-value="58.82" class="pct medium">58.82%</td>
|
|
145
|
+
<td data-value="34" class="abs medium">20/34</td>
|
|
146
|
+
<td data-value="64.32" class="pct medium">64.32%</td>
|
|
147
|
+
<td data-value="199" class="abs medium">128/199</td>
|
|
133
148
|
</tr>
|
|
134
149
|
|
|
135
150
|
</tbody>
|
|
@@ -140,7 +155,7 @@
|
|
|
140
155
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
141
156
|
Code coverage generated by
|
|
142
157
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
143
|
-
at
|
|
158
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
144
159
|
</div>
|
|
145
160
|
</div>
|
|
146
161
|
<script src="../../../prettify.js"></script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">76.78% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>43/56</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">66.66% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>6/9</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">78.18% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>43/55</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -55,7 +55,7 @@
|
|
|
55
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
56
|
</p>
|
|
57
57
|
</div>
|
|
58
|
-
<div class='status-line
|
|
58
|
+
<div class='status-line medium'></div>
|
|
59
59
|
<pre><table class="coverage">
|
|
60
60
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
61
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -155,88 +155,72 @@
|
|
|
155
155
|
<a name='L96'></a><a href='#L96'>96</a>
|
|
156
156
|
<a name='L97'></a><a href='#L97'>97</a>
|
|
157
157
|
<a name='L98'></a><a href='#L98'>98</a>
|
|
158
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
159
|
-
<
|
|
160
|
-
<
|
|
161
|
-
<
|
|
162
|
-
<
|
|
163
|
-
<
|
|
164
|
-
<
|
|
165
|
-
<a name='L106'></a><a href='#L106'>106</a>
|
|
166
|
-
<a name='L107'></a><a href='#L107'>107</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
|
|
167
|
-
<span class="cline-any cline-yes">34x</span>
|
|
168
|
-
<span class="cline-any cline-yes">34x</span>
|
|
169
|
-
<span class="cline-any cline-yes">34x</span>
|
|
170
|
-
<span class="cline-any cline-yes">34x</span>
|
|
171
|
-
<span class="cline-any cline-neutral"> </span>
|
|
172
|
-
<span class="cline-any cline-neutral"> </span>
|
|
173
|
-
<span class="cline-any cline-neutral"> </span>
|
|
174
|
-
<span class="cline-any cline-neutral"> </span>
|
|
175
|
-
<span class="cline-any cline-yes">34x</span>
|
|
176
|
-
<span class="cline-any cline-yes">34x</span>
|
|
158
|
+
<a name='L99'></a><a href='#L99'>99</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
|
|
159
|
+
<span class="cline-any cline-yes">39x</span>
|
|
160
|
+
<span class="cline-any cline-yes">39x</span>
|
|
161
|
+
<span class="cline-any cline-yes">39x</span>
|
|
162
|
+
<span class="cline-any cline-yes">39x</span>
|
|
163
|
+
<span class="cline-any cline-yes">39x</span>
|
|
164
|
+
<span class="cline-any cline-yes">39x</span>
|
|
177
165
|
<span class="cline-any cline-neutral"> </span>
|
|
178
166
|
<span class="cline-any cline-neutral"> </span>
|
|
167
|
+
<span class="cline-any cline-yes">103x</span>
|
|
179
168
|
<span class="cline-any cline-yes">101x</span>
|
|
180
|
-
<span class="cline-any cline-yes">99x</span>
|
|
181
169
|
<span class="cline-any cline-neutral"> </span>
|
|
182
|
-
<span class="cline-any cline-yes">
|
|
170
|
+
<span class="cline-any cline-yes">103x</span>
|
|
183
171
|
<span class="cline-any cline-no"> </span>
|
|
184
|
-
<span class="cline-any cline-yes">
|
|
172
|
+
<span class="cline-any cline-yes">103x</span>
|
|
185
173
|
<span class="cline-any cline-no"> </span>
|
|
186
174
|
<span class="cline-any cline-neutral"> </span>
|
|
187
|
-
<span class="cline-any cline-yes">
|
|
175
|
+
<span class="cline-any cline-yes">103x</span>
|
|
188
176
|
<span class="cline-any cline-neutral"> </span>
|
|
189
177
|
<span class="cline-any cline-neutral"> </span>
|
|
190
178
|
<span class="cline-any cline-neutral"> </span>
|
|
191
|
-
<span class="cline-any cline-yes">
|
|
179
|
+
<span class="cline-any cline-yes">39x</span>
|
|
192
180
|
<span class="cline-any cline-yes">1x</span>
|
|
193
181
|
<span class="cline-any cline-neutral"> </span>
|
|
194
182
|
<span class="cline-any cline-yes">1x</span>
|
|
195
183
|
<span class="cline-any cline-neutral"> </span>
|
|
196
|
-
<span class="cline-any cline-
|
|
197
|
-
<span class="cline-any cline-neutral"> </span>
|
|
198
|
-
<span class="cline-any cline-neutral"> </span>
|
|
199
|
-
<span class="cline-any cline-neutral"> </span>
|
|
200
|
-
<span class="cline-any cline-yes">2x</span>
|
|
184
|
+
<span class="cline-any cline-yes">1x</span>
|
|
201
185
|
<span class="cline-any cline-neutral"> </span>
|
|
202
186
|
<span class="cline-any cline-neutral"> </span>
|
|
203
187
|
<span class="cline-any cline-neutral"> </span>
|
|
204
188
|
<span class="cline-any cline-neutral"> </span>
|
|
205
189
|
<span class="cline-any cline-neutral"> </span>
|
|
206
190
|
<span class="cline-any cline-yes">1x</span>
|
|
191
|
+
<span class="cline-any cline-no"> </span>
|
|
192
|
+
<span class="cline-any cline-no"> </span>
|
|
193
|
+
<span class="cline-any cline-no"> </span>
|
|
207
194
|
<span class="cline-any cline-neutral"> </span>
|
|
208
195
|
<span class="cline-any cline-neutral"> </span>
|
|
209
196
|
<span class="cline-any cline-neutral"> </span>
|
|
210
197
|
<span class="cline-any cline-neutral"> </span>
|
|
211
198
|
<span class="cline-any cline-neutral"> </span>
|
|
212
|
-
<span class="cline-any cline-yes">1x</span>
|
|
213
|
-
<span class="cline-any cline-no"> </span>
|
|
214
|
-
<span class="cline-any cline-neutral"> </span>
|
|
215
|
-
<span class="cline-any cline-neutral"> </span>
|
|
216
199
|
<span class="cline-any cline-neutral"> </span>
|
|
200
|
+
<span class="cline-any cline-no"> </span>
|
|
217
201
|
<span class="cline-any cline-neutral"> </span>
|
|
218
202
|
<span class="cline-any cline-neutral"> </span>
|
|
219
203
|
<span class="cline-any cline-neutral"> </span>
|
|
220
204
|
<span class="cline-any cline-yes">1x</span>
|
|
221
205
|
<span class="cline-any cline-neutral"> </span>
|
|
222
206
|
<span class="cline-any cline-neutral"> </span>
|
|
223
|
-
<span class="cline-any cline-yes">
|
|
207
|
+
<span class="cline-any cline-yes">39x</span>
|
|
224
208
|
<span class="cline-any cline-yes">19x</span>
|
|
225
209
|
<span class="cline-any cline-yes">19x</span>
|
|
226
210
|
<span class="cline-any cline-neutral"> </span>
|
|
227
211
|
<span class="cline-any cline-neutral"> </span>
|
|
228
|
-
<span class="cline-any cline-yes">
|
|
229
|
-
<span class="cline-any cline-yes">
|
|
230
|
-
<span class="cline-any cline-yes">
|
|
231
|
-
<span class="cline-any cline-yes">
|
|
232
|
-
<span class="cline-any cline-yes">
|
|
233
|
-
<span class="cline-any cline-yes">
|
|
234
|
-
<span class="cline-any cline-yes">
|
|
212
|
+
<span class="cline-any cline-yes">39x</span>
|
|
213
|
+
<span class="cline-any cline-yes">101x</span>
|
|
214
|
+
<span class="cline-any cline-yes">101x</span>
|
|
215
|
+
<span class="cline-any cline-yes">101x</span>
|
|
216
|
+
<span class="cline-any cline-yes">101x</span>
|
|
217
|
+
<span class="cline-any cline-yes">101x</span>
|
|
218
|
+
<span class="cline-any cline-yes">101x</span>
|
|
235
219
|
<span class="cline-any cline-neutral"> </span>
|
|
236
|
-
<span class="cline-any cline-yes">
|
|
220
|
+
<span class="cline-any cline-yes">101x</span>
|
|
237
221
|
<span class="cline-any cline-neutral"> </span>
|
|
238
222
|
<span class="cline-any cline-neutral"> </span>
|
|
239
|
-
<span class="cline-any cline-yes">
|
|
223
|
+
<span class="cline-any cline-yes">39x</span>
|
|
240
224
|
<span class="cline-any cline-yes">2x</span>
|
|
241
225
|
<span class="cline-any cline-yes">2x</span>
|
|
242
226
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -246,7 +230,7 @@
|
|
|
246
230
|
<span class="cline-any cline-yes">2x</span>
|
|
247
231
|
<span class="cline-any cline-neutral"> </span>
|
|
248
232
|
<span class="cline-any cline-neutral"> </span>
|
|
249
|
-
<span class="cline-any cline-yes">
|
|
233
|
+
<span class="cline-any cline-yes">39x</span>
|
|
250
234
|
<span class="cline-any cline-no"> </span>
|
|
251
235
|
<span class="cline-any cline-no"> </span>
|
|
252
236
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -256,7 +240,7 @@
|
|
|
256
240
|
<span class="cline-any cline-no"> </span>
|
|
257
241
|
<span class="cline-any cline-neutral"> </span>
|
|
258
242
|
<span class="cline-any cline-neutral"> </span>
|
|
259
|
-
<span class="cline-any cline-yes">
|
|
243
|
+
<span class="cline-any cline-yes">39x</span>
|
|
260
244
|
<span class="cline-any cline-neutral"> </span>
|
|
261
245
|
<span class="cline-any cline-yes">1x</span>
|
|
262
246
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -269,17 +253,13 @@
|
|
|
269
253
|
<span class="cline-any cline-neutral"> </span>
|
|
270
254
|
<span class="cline-any cline-yes">1x</span>
|
|
271
255
|
<span class="cline-any cline-neutral"> </span>
|
|
272
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
273
|
-
const internal = require("./internal")
|
|
256
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const internal = require("./internal")
|
|
274
257
|
const external = require("./external")
|
|
275
258
|
const csvParser = require("../../../utilities/csvParser")
|
|
276
|
-
const { isExternalTable } = require("../../../integrations/utils")
|
|
277
|
-
const {
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
BudibaseInternalDB,
|
|
281
|
-
} = require("../../../db/utils")
|
|
282
|
-
const { getTable } = require("./utils")
|
|
259
|
+
const { isExternalTable, isSQL } = require("../../../integrations/utils")
|
|
260
|
+
const { getDatasourceParams } = require("../../../db/utils")
|
|
261
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
262
|
+
const { getTable, getAllInternalTables } = require("./utils")
|
|
283
263
|
|
|
284
264
|
function pickApi({ tableId, table }) {
|
|
285
265
|
if (table && !tableId) {
|
|
@@ -295,19 +275,9 @@ function pickApi({ tableId, table }) {
|
|
|
295
275
|
|
|
296
276
|
// covers both internal and external
|
|
297
277
|
exports.fetch = async function (ctx) {
|
|
298
|
-
const db =
|
|
299
|
-
|
|
300
|
-
const internalTables = await db.allDocs(
|
|
301
|
-
getTableParams(null, {
|
|
302
|
-
include_docs: true,
|
|
303
|
-
})
|
|
304
|
-
)
|
|
278
|
+
const db = getAppDB()
|
|
305
279
|
|
|
306
|
-
const internal =
|
|
307
|
-
...row.doc,
|
|
308
|
-
type: "internal",
|
|
309
|
-
sourceId: BudibaseInternalDB._id,
|
|
310
|
-
}))
|
|
280
|
+
const internal = await getAllInternalTables()
|
|
311
281
|
|
|
312
282
|
const externalTables = await db.allDocs(
|
|
313
283
|
getDatasourceParams("plus", {
|
|
@@ -315,12 +285,18 @@ exports.fetch = async function (ctx) {
|
|
|
315
285
|
})
|
|
316
286
|
)
|
|
317
287
|
|
|
318
|
-
const external = externalTables.rows.flatMap(<span class="fstat-no" title="function not covered" >
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
288
|
+
const external = externalTables.rows.flatMap(<span class="fstat-no" title="function not covered" >ta</span>bleDoc => {
|
|
289
|
+
let entities = <span class="cstat-no" title="statement not covered" >tableDoc.doc.entities</span>
|
|
290
|
+
<span class="cstat-no" title="statement not covered" > if (entities) {</span>
|
|
291
|
+
<span class="cstat-no" title="statement not covered" > return Object.values(entities).map(<span class="fstat-no" title="function not covered" >en</span>tity => (<span class="cstat-no" title="statement not covered" >{</span></span>
|
|
292
|
+
...entity,
|
|
293
|
+
type: "external",
|
|
294
|
+
sourceId: tableDoc.doc._id,
|
|
295
|
+
sql: isSQL(tableDoc.doc),
|
|
296
|
+
}))
|
|
297
|
+
} else {
|
|
298
|
+
<span class="cstat-no" title="statement not covered" > return []</span>
|
|
299
|
+
}
|
|
324
300
|
})
|
|
325
301
|
|
|
326
302
|
ctx.body = [...internal, ...external]
|
|
@@ -328,7 +304,7 @@ exports.fetch = async function (ctx) {
|
|
|
328
304
|
|
|
329
305
|
exports.find = async function (ctx) {
|
|
330
306
|
const tableId = ctx.params.id
|
|
331
|
-
ctx.body = await getTable(
|
|
307
|
+
ctx.body = await getTable(tableId)
|
|
332
308
|
}
|
|
333
309
|
|
|
334
310
|
exports.save = async function (ctx) {
|
|
@@ -367,7 +343,7 @@ exports.validateCSVSchema = async function (ctx) {
|
|
|
367
343
|
const { csvString, schema = {}, tableId } = ctx.request.body
|
|
368
344
|
let existingTable
|
|
369
345
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId) {
|
|
370
|
-
<span class="cstat-no" title="statement not covered" > existingTable = await getTable(
|
|
346
|
+
<span class="cstat-no" title="statement not covered" > existingTable = await getTable(tableId)</span>
|
|
371
347
|
}
|
|
372
348
|
let result = await csvParser.parse(csvString, schema)
|
|
373
349
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (existingTable) {
|
|
@@ -382,7 +358,7 @@ exports.validateCSVSchema = async function (ctx) {
|
|
|
382
358
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
383
359
|
Code coverage generated by
|
|
384
360
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
385
|
-
at
|
|
361
|
+
at Mon Feb 07 2022 20:42:11 GMT+0000 (Coordinated Universal Time)
|
|
386
362
|
</div>
|
|
387
363
|
</div>
|
|
388
364
|
<script src="../../../prettify.js"></script>
|