@budibase/server 1.0.49-alpha.1 → 1.0.49-alpha.13
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.ba78c49d.css → index.83c0944f.css} +1 -1
- package/builder/assets/{index.ed1cf508.js → index.f686d3cd.js} +184 -184
- package/builder/index.html +2 -2
- package/coverage/clover.xml +2656 -2712
- package/coverage/coverage-final.json +104 -105
- 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 +157 -136
- package/coverage/lcov-report/api/controllers/auth.js.html +11 -14
- 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 +10 -13
- package/coverage/lcov-report/api/controllers/datasource.js.html +31 -37
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/api/controllers/index.html +69 -54
- 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/{migrations/usageQuotas/syncApps.js.html → api/controllers/migrations.js.html} +30 -45
- 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 +28 -28
- package/coverage/lcov-report/api/controllers/row/index.js.html +13 -13
- package/coverage/lcov-report/api/controllers/row/internal.js.html +60 -105
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +25 -31
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +21 -24
- package/coverage/lcov-report/api/controllers/row/utils.js.html +27 -24
- 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 +27 -57
- package/coverage/lcov-report/api/controllers/table/external.js.html +25 -34
- package/coverage/lcov-report/api/controllers/table/index.html +37 -37
- package/coverage/lcov-report/api/controllers/table/index.js.html +20 -20
- package/coverage/lcov-report/api/controllers/table/internal.js.html +45 -54
- package/coverage/lcov-report/api/controllers/table/utils.js.html +67 -103
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +43 -52
- 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 +3 -3
- 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 +22 -7
- package/coverage/lcov-report/api/routes/index.js.html +10 -4
- 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/{migrations/usageQuotas/index.js.html → api/routes/migrations.js.html} +25 -55
- 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 +1 -1
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/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 +7 -10
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
- 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 +1 -1
- 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 +1 -1
- package/coverage/lcov-report/constants/index.js.html +26 -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 +1 -1
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +15 -27
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +40 -82
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +40 -40
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +74 -74
- 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 +97 -112
- 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 +21 -15
- package/coverage/lcov-report/middleware/builder.js.html +3 -3
- package/coverage/lcov-report/middleware/currentapp.js.html +72 -60
- package/coverage/lcov-report/middleware/index.html +28 -28
- 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 +29 -35
- 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 +25 -25
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +26 -47
- 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 +57 -48
- package/coverage/lcov-report/utilities/index.html +27 -27
- package/coverage/lcov-report/utilities/index.js.html +42 -72
- 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 +11 -11
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +32 -74
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +4 -4
- 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 +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +13 -10
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +5 -2
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +9 -9
- package/coverage/lcov-report/utilities/workerRequests.js.html +16 -16
- package/coverage/lcov.info +4018 -4092
- package/dist/api/controllers/application.js +49 -48
- package/dist/api/controllers/auth.js +4 -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 +9 -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 +29 -44
- package/dist/api/controllers/row/internalSearch.js +11 -13
- package/dist/api/controllers/row/staticFormula.js +11 -11
- package/dist/api/controllers/row/utils.js +7 -6
- package/dist/api/controllers/screen.js +5 -7
- package/dist/api/controllers/static/index.js +4 -4
- package/dist/api/controllers/table/bulkFormula.js +14 -15
- package/dist/api/controllers/table/external.js +7 -10
- package/dist/api/controllers/table/index.js +5 -5
- package/dist/api/controllers/table/internal.js +16 -19
- package/dist/api/controllers/table/utils.js +29 -31
- package/dist/api/controllers/user.js +16 -20
- 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 -0
- package/dist/api/routes/migrations.js +9 -0
- 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 +1 -1
- package/dist/automations/steps/updateRow.js +1 -1
- package/dist/automations/triggers.js +27 -25
- package/dist/automations/utils.js +10 -5
- package/dist/db/linkedRows/LinkController.js +3 -7
- package/dist/db/linkedRows/index.js +16 -26
- package/dist/db/linkedRows/linkUtils.js +6 -6
- package/dist/db/views/staticViews.js +9 -10
- package/dist/environment.js +3 -1
- package/dist/integrations/base/sql.js +49 -15
- package/dist/integrations/utils.js +3 -0
- package/dist/middleware/authorized.js +5 -3
- package/dist/middleware/builder.js +2 -2
- package/dist/middleware/currentapp.js +41 -37
- package/dist/middleware/usageQuota.js +2 -4
- package/dist/migrations/functions/appUrls.js +46 -0
- package/dist/migrations/functions/quotas1.js +50 -0
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/index.js +6 -10
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncApps.js +12 -9
- package/dist/migrations/{usageQuotas → functions/usageQuotas}/syncRows.js +16 -12
- package/dist/migrations/functions/userEmailViewCasing.js +24 -0
- package/dist/migrations/index.js +62 -0
- package/dist/package.json +4 -4
- package/dist/tests/utilities/TestConfiguration.js +70 -44
- package/dist/threads/automation.js +13 -11
- package/dist/threads/query.js +13 -19
- 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 +9 -10
- package/dist/utilities/usageQuota/index.js +1 -0
- package/dist/utilities/usageQuota/rows.js +1 -0
- package/dist/utilities/users.js +3 -3
- package/dist/utilities/workerRequests.js +4 -4
- package/package.json +5 -5
- 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 +38 -31
- package/src/api/controllers/auth.js +4 -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 +9 -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 +29 -44
- package/src/api/controllers/row/internalSearch.js +11 -13
- package/src/api/controllers/row/staticFormula.js +10 -11
- package/src/api/controllers/row/utils.js +7 -6
- package/src/api/controllers/screen.js +5 -7
- package/src/api/controllers/static/index.js +4 -4
- package/src/api/controllers/table/bulkFormula.js +13 -23
- package/src/api/controllers/table/external.js +7 -10
- package/src/api/controllers/table/index.js +5 -5
- package/src/api/controllers/table/internal.js +18 -21
- package/src/api/controllers/table/utils.js +29 -41
- package/src/api/controllers/user.js +17 -20
- 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 -0
- package/src/api/routes/migrations.js +14 -0
- 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/utilities/TestFunctions.js +39 -17
- package/src/app.ts +18 -5
- package/src/automations/automationUtils.js +2 -3
- package/src/automations/steps/createRow.js +0 -1
- package/src/automations/steps/updateRow.js +1 -1
- package/src/automations/triggers.js +33 -31
- package/src/automations/utils.js +9 -5
- package/src/db/linkedRows/LinkController.js +3 -7
- package/src/db/linkedRows/index.js +16 -30
- 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/environment.js +3 -1
- package/src/integrations/base/sql.ts +61 -22
- package/src/integrations/utils.ts +4 -1
- package/src/middleware/authorized.js +5 -3
- package/src/middleware/builder.js +2 -2
- package/src/middleware/currentapp.js +50 -46
- package/src/middleware/tests/authorized.spec.js +7 -2
- package/src/middleware/tests/currentapp.spec.js +6 -0
- package/src/middleware/usageQuota.js +2 -4
- 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/{tests/usageQuotas/index.spec.js → functions/tests/quotas1.spec.js} +5 -5
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
- package/src/migrations/functions/usageQuotas/index.ts +8 -0
- package/src/migrations/{usageQuotas/syncApps.js → functions/usageQuotas/syncApps.ts} +6 -6
- package/src/migrations/functions/usageQuotas/syncRows.ts +22 -0
- package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncApps.spec.js +4 -4
- package/src/migrations/{tests/usageQuotas → functions/usageQuotas/tests}/syncRows.spec.js +4 -4
- 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 +73 -50
- package/src/threads/automation.js +17 -15
- package/src/threads/query.js +14 -21
- 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 +9 -23
- package/src/utilities/usageQuota/index.js +1 -0
- package/src/utilities/usageQuota/rows.js +1 -0
- package/src/utilities/users.js +3 -3
- package/src/utilities/workerRequests.js +4 -4
- package/tsconfig.json +2 -1
- package/coverage/lcov-report/migrations/usageQuotas/index.html +0 -141
- package/coverage/lcov-report/migrations/usageQuotas/syncRows.js.html +0 -143
- package/src/migrations/usageQuotas/index.js +0 -24
- package/src/migrations/usageQuotas/syncRows.js +0 -21
|
@@ -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">85.42% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>170/199</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">
|
|
47
|
+
<span class="strong">85.49% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>165/193</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -477,51 +477,36 @@
|
|
|
477
477
|
<a name='L418'></a><a href='#L418'>418</a>
|
|
478
478
|
<a name='L419'></a><a href='#L419'>419</a>
|
|
479
479
|
<a name='L420'></a><a href='#L420'>420</a>
|
|
480
|
-
<a name='L421'></a><a href='#L421'>421</a>
|
|
481
|
-
<a name='L422'></a><a href='#L422'>422</a>
|
|
482
|
-
<a name='L423'></a><a href='#L423'>423</a>
|
|
483
|
-
<a name='L424'></a><a href='#L424'>424</a>
|
|
484
|
-
<a name='L425'></a><a href='#L425'>425</a>
|
|
485
|
-
<a name='L426'></a><a href='#L426'>426</a>
|
|
486
|
-
<a name='L427'></a><a href='#L427'>427</a>
|
|
487
|
-
<a name='L428'></a><a href='#L428'>428</a>
|
|
488
|
-
<a name='L429'></a><a href='#L429'>429</a>
|
|
489
|
-
<a name='L430'></a><a href='#L430'>430</a>
|
|
490
|
-
<a name='L431'></a><a href='#L431'>431</a>
|
|
491
|
-
<a name='L432'></a><a href='#L432'>432</a>
|
|
492
|
-
<a name='L433'></a><a href='#L433'>433</a>
|
|
493
|
-
<a name='L434'></a><a href='#L434'>434</a>
|
|
494
|
-
<a name='L435'></a><a href='#L435'>435</a>
|
|
495
|
-
<a name='L436'></a><a href='#L436'>436</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">37x</span>
|
|
496
|
-
<span class="cline-any cline-yes">37x</span>
|
|
480
|
+
<a name='L421'></a><a href='#L421'>421</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
|
|
497
481
|
<span class="cline-any cline-neutral"> </span>
|
|
498
482
|
<span class="cline-any cline-neutral"> </span>
|
|
499
483
|
<span class="cline-any cline-neutral"> </span>
|
|
500
484
|
<span class="cline-any cline-neutral"> </span>
|
|
501
485
|
<span class="cline-any cline-neutral"> </span>
|
|
502
|
-
<span class="cline-any cline-yes">
|
|
503
|
-
<span class="cline-any cline-yes">
|
|
486
|
+
<span class="cline-any cline-yes">39x</span>
|
|
487
|
+
<span class="cline-any cline-yes">39x</span>
|
|
504
488
|
<span class="cline-any cline-neutral"> </span>
|
|
505
489
|
<span class="cline-any cline-neutral"> </span>
|
|
506
490
|
<span class="cline-any cline-neutral"> </span>
|
|
507
491
|
<span class="cline-any cline-neutral"> </span>
|
|
508
|
-
<span class="cline-any cline-yes">
|
|
509
|
-
<span class="cline-any cline-yes">
|
|
510
|
-
<span class="cline-any cline-yes">
|
|
511
|
-
<span class="cline-any cline-yes">
|
|
512
|
-
<span class="cline-any cline-yes">
|
|
513
|
-
<span class="cline-any cline-yes">
|
|
514
|
-
<span class="cline-any cline-yes">
|
|
492
|
+
<span class="cline-any cline-yes">39x</span>
|
|
493
|
+
<span class="cline-any cline-yes">39x</span>
|
|
494
|
+
<span class="cline-any cline-yes">39x</span>
|
|
495
|
+
<span class="cline-any cline-yes">39x</span>
|
|
496
|
+
<span class="cline-any cline-yes">39x</span>
|
|
497
|
+
<span class="cline-any cline-yes">39x</span>
|
|
498
|
+
<span class="cline-any cline-yes">39x</span>
|
|
515
499
|
<span class="cline-any cline-neutral"> </span>
|
|
516
500
|
<span class="cline-any cline-neutral"> </span>
|
|
517
501
|
<span class="cline-any cline-neutral"> </span>
|
|
518
502
|
<span class="cline-any cline-neutral"> </span>
|
|
519
503
|
<span class="cline-any cline-neutral"> </span>
|
|
520
|
-
<span class="cline-any cline-yes">
|
|
521
|
-
<span class="cline-any cline-yes">
|
|
522
|
-
<span class="cline-any cline-yes">
|
|
504
|
+
<span class="cline-any cline-yes">39x</span>
|
|
505
|
+
<span class="cline-any cline-yes">39x</span>
|
|
506
|
+
<span class="cline-any cline-yes">39x</span>
|
|
507
|
+
<span class="cline-any cline-yes">39x</span>
|
|
523
508
|
<span class="cline-any cline-neutral"> </span>
|
|
524
|
-
<span class="cline-any cline-yes">
|
|
509
|
+
<span class="cline-any cline-yes">39x</span>
|
|
525
510
|
<span class="cline-any cline-neutral"> </span>
|
|
526
511
|
<span class="cline-any cline-neutral"> </span>
|
|
527
512
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -569,8 +554,7 @@
|
|
|
569
554
|
<span class="cline-any cline-yes">5x</span>
|
|
570
555
|
<span class="cline-any cline-neutral"> </span>
|
|
571
556
|
<span class="cline-any cline-neutral"> </span>
|
|
572
|
-
<span class="cline-any cline-yes">
|
|
573
|
-
<span class="cline-any cline-yes">5x</span>
|
|
557
|
+
<span class="cline-any cline-yes">39x</span>
|
|
574
558
|
<span class="cline-any cline-yes">5x</span>
|
|
575
559
|
<span class="cline-any cline-yes">5x</span>
|
|
576
560
|
<span class="cline-any cline-yes">5x</span>
|
|
@@ -616,7 +600,6 @@
|
|
|
616
600
|
<span class="cline-any cline-neutral"> </span>
|
|
617
601
|
<span class="cline-any cline-neutral"> </span>
|
|
618
602
|
<span class="cline-any cline-neutral"> </span>
|
|
619
|
-
<span class="cline-any cline-neutral"> </span>
|
|
620
603
|
<span class="cline-any cline-yes">4x</span>
|
|
621
604
|
<span class="cline-any cline-neutral"> </span>
|
|
622
605
|
<span class="cline-any cline-yes">4x</span>
|
|
@@ -632,8 +615,7 @@
|
|
|
632
615
|
<span class="cline-any cline-neutral"> </span>
|
|
633
616
|
<span class="cline-any cline-neutral"> </span>
|
|
634
617
|
<span class="cline-any cline-neutral"> </span>
|
|
635
|
-
<span class="cline-any cline-yes">
|
|
636
|
-
<span class="cline-any cline-yes">70x</span>
|
|
618
|
+
<span class="cline-any cline-yes">39x</span>
|
|
637
619
|
<span class="cline-any cline-yes">70x</span>
|
|
638
620
|
<span class="cline-any cline-yes">70x</span>
|
|
639
621
|
<span class="cline-any cline-yes">70x</span>
|
|
@@ -662,15 +644,13 @@
|
|
|
662
644
|
<span class="cline-any cline-neutral"> </span>
|
|
663
645
|
<span class="cline-any cline-neutral"> </span>
|
|
664
646
|
<span class="cline-any cline-neutral"> </span>
|
|
665
|
-
<span class="cline-any cline-neutral"> </span>
|
|
666
647
|
<span class="cline-any cline-yes">69x</span>
|
|
667
648
|
<span class="cline-any cline-neutral"> </span>
|
|
668
649
|
<span class="cline-any cline-neutral"> </span>
|
|
669
650
|
<span class="cline-any cline-neutral"> </span>
|
|
670
651
|
<span class="cline-any cline-neutral"> </span>
|
|
671
652
|
<span class="cline-any cline-neutral"> </span>
|
|
672
|
-
<span class="cline-any cline-yes">
|
|
673
|
-
<span class="cline-any cline-yes">7x</span>
|
|
653
|
+
<span class="cline-any cline-yes">39x</span>
|
|
674
654
|
<span class="cline-any cline-yes">7x</span>
|
|
675
655
|
<span class="cline-any cline-neutral"> </span>
|
|
676
656
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -732,8 +712,7 @@
|
|
|
732
712
|
<span class="cline-any cline-yes">5x</span>
|
|
733
713
|
<span class="cline-any cline-neutral"> </span>
|
|
734
714
|
<span class="cline-any cline-neutral"> </span>
|
|
735
|
-
<span class="cline-any cline-yes">
|
|
736
|
-
<span class="cline-any cline-yes">5x</span>
|
|
715
|
+
<span class="cline-any cline-yes">39x</span>
|
|
737
716
|
<span class="cline-any cline-yes">5x</span>
|
|
738
717
|
<span class="cline-any cline-neutral"> </span>
|
|
739
718
|
<span class="cline-any cline-yes">5x</span>
|
|
@@ -742,8 +721,7 @@
|
|
|
742
721
|
<span class="cline-any cline-yes">5x</span>
|
|
743
722
|
<span class="cline-any cline-neutral"> </span>
|
|
744
723
|
<span class="cline-any cline-neutral"> </span>
|
|
745
|
-
<span class="cline-any cline-yes">
|
|
746
|
-
<span class="cline-any cline-yes">18x</span>
|
|
724
|
+
<span class="cline-any cline-yes">39x</span>
|
|
747
725
|
<span class="cline-any cline-yes">18x</span>
|
|
748
726
|
<span class="cline-any cline-yes">18x</span>
|
|
749
727
|
<span class="cline-any cline-yes">18x</span>
|
|
@@ -751,8 +729,7 @@
|
|
|
751
729
|
<span class="cline-any cline-yes">15x</span>
|
|
752
730
|
<span class="cline-any cline-neutral"> </span>
|
|
753
731
|
<span class="cline-any cline-neutral"> </span>
|
|
754
|
-
<span class="cline-any cline-yes">
|
|
755
|
-
<span class="cline-any cline-yes">3x</span>
|
|
732
|
+
<span class="cline-any cline-yes">39x</span>
|
|
756
733
|
<span class="cline-any cline-yes">3x</span>
|
|
757
734
|
<span class="cline-any cline-yes">3x</span>
|
|
758
735
|
<span class="cline-any cline-yes">3x</span>
|
|
@@ -770,7 +747,6 @@
|
|
|
770
747
|
<span class="cline-any cline-neutral"> </span>
|
|
771
748
|
<span class="cline-any cline-neutral"> </span>
|
|
772
749
|
<span class="cline-any cline-neutral"> </span>
|
|
773
|
-
<span class="cline-any cline-neutral"> </span>
|
|
774
750
|
<span class="cline-any cline-yes">2x</span>
|
|
775
751
|
<span class="cline-any cline-neutral"> </span>
|
|
776
752
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -788,8 +764,7 @@
|
|
|
788
764
|
<span class="cline-any cline-yes">2x</span>
|
|
789
765
|
<span class="cline-any cline-neutral"> </span>
|
|
790
766
|
<span class="cline-any cline-neutral"> </span>
|
|
791
|
-
<span class="cline-any cline-yes">
|
|
792
|
-
<span class="cline-any cline-yes">2x</span>
|
|
767
|
+
<span class="cline-any cline-yes">39x</span>
|
|
793
768
|
<span class="cline-any cline-yes">2x</span>
|
|
794
769
|
<span class="cline-any cline-yes">2x</span>
|
|
795
770
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -807,7 +782,6 @@
|
|
|
807
782
|
<span class="cline-any cline-neutral"> </span>
|
|
808
783
|
<span class="cline-any cline-neutral"> </span>
|
|
809
784
|
<span class="cline-any cline-neutral"> </span>
|
|
810
|
-
<span class="cline-any cline-neutral"> </span>
|
|
811
785
|
<span class="cline-any cline-yes">2x</span>
|
|
812
786
|
<span class="cline-any cline-no"> </span>
|
|
813
787
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -827,7 +801,7 @@
|
|
|
827
801
|
<span class="cline-any cline-yes">2x</span>
|
|
828
802
|
<span class="cline-any cline-neutral"> </span>
|
|
829
803
|
<span class="cline-any cline-neutral"> </span>
|
|
830
|
-
<span class="cline-any cline-yes">
|
|
804
|
+
<span class="cline-any cline-yes">39x</span>
|
|
831
805
|
<span class="cline-any cline-neutral"> </span>
|
|
832
806
|
<span class="cline-any cline-yes">1x</span>
|
|
833
807
|
<span class="cline-any cline-no"> </span>
|
|
@@ -838,7 +812,6 @@
|
|
|
838
812
|
<span class="cline-any cline-yes">1x</span>
|
|
839
813
|
<span class="cline-any cline-yes">1x</span>
|
|
840
814
|
<span class="cline-any cline-yes">1x</span>
|
|
841
|
-
<span class="cline-any cline-yes">1x</span>
|
|
842
815
|
<span class="cline-any cline-neutral"> </span>
|
|
843
816
|
<span class="cline-any cline-neutral"> </span>
|
|
844
817
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -860,16 +833,14 @@
|
|
|
860
833
|
<span class="cline-any cline-yes">1x</span>
|
|
861
834
|
<span class="cline-any cline-neutral"> </span>
|
|
862
835
|
<span class="cline-any cline-neutral"> </span>
|
|
863
|
-
<span class="cline-any cline-yes">
|
|
836
|
+
<span class="cline-any cline-yes">39x</span>
|
|
864
837
|
<span class="cline-any cline-yes">2x</span>
|
|
865
838
|
<span class="cline-any cline-neutral"> </span>
|
|
866
839
|
<span class="cline-any cline-neutral"> </span>
|
|
867
840
|
<span class="cline-any cline-neutral"> </span>
|
|
868
841
|
<span class="cline-any cline-neutral"> </span>
|
|
869
842
|
<span class="cline-any cline-neutral"> </span>
|
|
870
|
-
<span class="cline-any cline-
|
|
871
|
-
<span class="cline-any cline-yes">37x</span>
|
|
872
|
-
<span class="cline-any cline-yes">1x</span>
|
|
843
|
+
<span class="cline-any cline-yes">39x</span>
|
|
873
844
|
<span class="cline-any cline-yes">1x</span>
|
|
874
845
|
<span class="cline-any cline-yes">1x</span>
|
|
875
846
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -884,7 +855,6 @@
|
|
|
884
855
|
<span class="cline-any cline-neutral"> </span>
|
|
885
856
|
<span class="cline-any cline-neutral"> </span>
|
|
886
857
|
<span class="cline-any cline-neutral"> </span>
|
|
887
|
-
<span class="cline-any cline-neutral"> </span>
|
|
888
858
|
<span class="cline-any cline-yes">1x</span>
|
|
889
859
|
<span class="cline-any cline-neutral"> </span>
|
|
890
860
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -927,8 +897,7 @@
|
|
|
927
897
|
<span class="cline-any cline-neutral"> </span>
|
|
928
898
|
<span class="cline-any cline-yes">1x</span>
|
|
929
899
|
<span class="cline-any cline-neutral"> </span>
|
|
930
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
931
|
-
const linkRows = require("../../../db/linkedRows")
|
|
900
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const linkRows = require("../../../db/linkedRows")
|
|
932
901
|
const {
|
|
933
902
|
generateRowID,
|
|
934
903
|
getRowParams,
|
|
@@ -954,6 +923,7 @@ const {
|
|
|
954
923
|
getFromMemoryDoc,
|
|
955
924
|
} = require("../view/utils")
|
|
956
925
|
const { cloneDeep } = require("lodash/fp")
|
|
926
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
957
927
|
const { finaliseRow, updateRelatedFormula } = require("./staticFormula")
|
|
958
928
|
|
|
959
929
|
const CALCULATION_TYPES = {
|
|
@@ -1005,8 +975,7 @@ async function getRawTableData(ctx, db, tableId) {
|
|
|
1005
975
|
}
|
|
1006
976
|
|
|
1007
977
|
exports.patch = async ctx => {
|
|
1008
|
-
const
|
|
1009
|
-
const db = new CouchDB(appId)
|
|
978
|
+
const db = getAppDB()
|
|
1010
979
|
const inputs = ctx.request.body
|
|
1011
980
|
const tableId = inputs.tableId
|
|
1012
981
|
const isUserTable = tableId === InternalTables.USER_METADATA
|
|
@@ -1045,14 +1014,13 @@ exports.patch = async ctx => {
|
|
|
1045
1014
|
|
|
1046
1015
|
// returned row is cleaned and prepared for writing to DB
|
|
1047
1016
|
row = await linkRows.updateLinks({
|
|
1048
|
-
appId,
|
|
1049
1017
|
eventType: linkRows.EventType.ROW_UPDATE,
|
|
1050
1018
|
row,
|
|
1051
1019
|
tableId: row.tableId,
|
|
1052
1020
|
table,
|
|
1053
1021
|
})
|
|
1054
1022
|
// check if any attachments removed
|
|
1055
|
-
await cleanupAttachments(
|
|
1023
|
+
await cleanupAttachments(table, { oldRow, row })
|
|
1056
1024
|
|
|
1057
1025
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (isUserTable) {
|
|
1058
1026
|
// the row has been updated, need to put it into the ctx
|
|
@@ -1061,15 +1029,14 @@ exports.patch = async ctx => {
|
|
|
1061
1029
|
<span class="cstat-no" title="statement not covered" > return { row: ctx.body, table }</span>
|
|
1062
1030
|
}
|
|
1063
1031
|
|
|
1064
|
-
return finaliseRow(
|
|
1032
|
+
return finaliseRow(table, row, {
|
|
1065
1033
|
oldTable: dbTable,
|
|
1066
1034
|
updateFormula: true,
|
|
1067
1035
|
})
|
|
1068
1036
|
}
|
|
1069
1037
|
|
|
1070
1038
|
exports.save = async function (ctx) {
|
|
1071
|
-
const
|
|
1072
|
-
const db = new CouchDB(appId)
|
|
1039
|
+
const db = getAppDB()
|
|
1073
1040
|
let inputs = ctx.request.body
|
|
1074
1041
|
inputs.tableId = ctx.params.tableId
|
|
1075
1042
|
|
|
@@ -1091,21 +1058,19 @@ exports.save = async function (ctx) {
|
|
|
1091
1058
|
|
|
1092
1059
|
// make sure link rows are up to date
|
|
1093
1060
|
row = await linkRows.updateLinks({
|
|
1094
|
-
appId,
|
|
1095
1061
|
eventType: linkRows.EventType.ROW_SAVE,
|
|
1096
1062
|
row,
|
|
1097
1063
|
tableId: row.tableId,
|
|
1098
1064
|
table,
|
|
1099
1065
|
})
|
|
1100
1066
|
|
|
1101
|
-
return finaliseRow(
|
|
1067
|
+
return finaliseRow(table, row, {
|
|
1102
1068
|
oldTable: dbTable,
|
|
1103
1069
|
updateFormula: true,
|
|
1104
1070
|
})
|
|
1105
1071
|
}
|
|
1106
1072
|
|
|
1107
1073
|
exports.fetchView = async ctx => {
|
|
1108
|
-
const appId = ctx.appId
|
|
1109
1074
|
const viewName = ctx.params.viewName
|
|
1110
1075
|
|
|
1111
1076
|
// if this is a table view being looked for just transfer to that
|
|
@@ -1114,7 +1079,7 @@ exports.fetchView = async ctx => {
|
|
|
1114
1079
|
return exports.fetch(ctx)
|
|
1115
1080
|
}
|
|
1116
1081
|
|
|
1117
|
-
const db =
|
|
1082
|
+
const db = getAppDB()
|
|
1118
1083
|
const { calculation, group, field } = ctx.query
|
|
1119
1084
|
const viewInfo = await getView(db, viewName)
|
|
1120
1085
|
let response
|
|
@@ -1141,7 +1106,7 @@ exports.fetchView = async ctx => {
|
|
|
1141
1106
|
schema: {},
|
|
1142
1107
|
}
|
|
1143
1108
|
}
|
|
1144
|
-
rows = await outputProcessing(
|
|
1109
|
+
rows = await outputProcessing(table, response.rows)
|
|
1145
1110
|
}
|
|
1146
1111
|
|
|
1147
1112
|
if (calculation === CALCULATION_TYPES.STATS) {
|
|
@@ -1168,27 +1133,24 @@ exports.fetchView = async ctx => {
|
|
|
1168
1133
|
}
|
|
1169
1134
|
|
|
1170
1135
|
exports.fetch = async ctx => {
|
|
1171
|
-
const
|
|
1172
|
-
const db = new CouchDB(appId)
|
|
1136
|
+
const db = getAppDB()
|
|
1173
1137
|
|
|
1174
1138
|
const tableId = ctx.params.tableId
|
|
1175
1139
|
let table = await db.get(tableId)
|
|
1176
1140
|
let rows = await getRawTableData(ctx, db, tableId)
|
|
1177
|
-
return outputProcessing(
|
|
1141
|
+
return outputProcessing(table, rows)
|
|
1178
1142
|
}
|
|
1179
1143
|
|
|
1180
1144
|
exports.find = async ctx => {
|
|
1181
|
-
const
|
|
1182
|
-
const db = new CouchDB(appId)
|
|
1145
|
+
const db = getAppDB()
|
|
1183
1146
|
const table = await db.get(ctx.params.tableId)
|
|
1184
|
-
let row = await findRow(ctx,
|
|
1185
|
-
row = await outputProcessing(
|
|
1147
|
+
let row = await findRow(ctx, ctx.params.tableId, ctx.params.rowId)
|
|
1148
|
+
row = await outputProcessing(table, row)
|
|
1186
1149
|
return row
|
|
1187
1150
|
}
|
|
1188
1151
|
|
|
1189
1152
|
exports.destroy = async function (ctx) {
|
|
1190
|
-
const
|
|
1191
|
-
const db = new CouchDB(appId)
|
|
1153
|
+
const db = getAppDB()
|
|
1192
1154
|
const { _id, _rev } = ctx.request.body
|
|
1193
1155
|
let row = await db.get(_id)
|
|
1194
1156
|
|
|
@@ -1197,18 +1159,17 @@ exports.destroy = async function (ctx) {
|
|
|
1197
1159
|
}
|
|
1198
1160
|
const table = await db.get(row.tableId)
|
|
1199
1161
|
// update the row to include full relationships before deleting them
|
|
1200
|
-
row = await outputProcessing(
|
|
1162
|
+
row = await outputProcessing(table, row, { squash: false })
|
|
1201
1163
|
// now remove the relationships
|
|
1202
1164
|
await linkRows.updateLinks({
|
|
1203
|
-
appId,
|
|
1204
1165
|
eventType: linkRows.EventType.ROW_DELETE,
|
|
1205
1166
|
row,
|
|
1206
1167
|
tableId: row.tableId,
|
|
1207
1168
|
})
|
|
1208
1169
|
// remove any attachments that were on the row from object storage
|
|
1209
|
-
await cleanupAttachments(
|
|
1170
|
+
await cleanupAttachments(table, { row })
|
|
1210
1171
|
// remove any static formula
|
|
1211
|
-
await updateRelatedFormula(
|
|
1172
|
+
await updateRelatedFormula(table, row)
|
|
1212
1173
|
|
|
1213
1174
|
let response
|
|
1214
1175
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.params.tableId === InternalTables.USER_METADATA) {
|
|
@@ -1224,20 +1185,18 @@ exports.destroy = async function (ctx) {
|
|
|
1224
1185
|
}
|
|
1225
1186
|
|
|
1226
1187
|
exports.bulkDestroy = async ctx => {
|
|
1227
|
-
const
|
|
1228
|
-
const db = new CouchDB(appId)
|
|
1188
|
+
const db = getAppDB()
|
|
1229
1189
|
const tableId = ctx.params.tableId
|
|
1230
1190
|
const table = await db.get(tableId)
|
|
1231
1191
|
let { rows } = ctx.request.body
|
|
1232
1192
|
|
|
1233
1193
|
// before carrying out any updates, make sure the rows are ready to be returned
|
|
1234
1194
|
// they need to be the full rows (including previous relationships) for automations
|
|
1235
|
-
rows = await outputProcessing(
|
|
1195
|
+
rows = await outputProcessing(table, rows, { squash: false })
|
|
1236
1196
|
|
|
1237
1197
|
// remove the relationships first
|
|
1238
1198
|
let updates = rows.map(row =>
|
|
1239
1199
|
linkRows.updateLinks({
|
|
1240
|
-
appId,
|
|
1241
1200
|
eventType: linkRows.EventType.ROW_DELETE,
|
|
1242
1201
|
row,
|
|
1243
1202
|
tableId: row.tableId,
|
|
@@ -1256,8 +1215,8 @@ exports.bulkDestroy = async ctx => {
|
|
|
1256
1215
|
await db.bulkDocs(rows.map(row => ({ ...row, _deleted: true })))
|
|
1257
1216
|
}
|
|
1258
1217
|
// remove any attachments that were on the rows from object storage
|
|
1259
|
-
await cleanupAttachments(
|
|
1260
|
-
await updateRelatedFormula(
|
|
1218
|
+
await cleanupAttachments(table, { rows })
|
|
1219
|
+
await updateRelatedFormula(table, rows)
|
|
1261
1220
|
await Promise.all(updates)
|
|
1262
1221
|
return { response: { ok: true }, rows }
|
|
1263
1222
|
}
|
|
@@ -1268,28 +1227,27 @@ exports.search = async ctx => {
|
|
|
1268
1227
|
<span class="cstat-no" title="statement not covered" > return { rows: await exports.fetch(ctx) }</span>
|
|
1269
1228
|
}
|
|
1270
1229
|
|
|
1271
|
-
const appId = ctx.appId
|
|
1272
1230
|
const { tableId } = ctx.params
|
|
1273
|
-
const db =
|
|
1231
|
+
const db = getAppDB()
|
|
1274
1232
|
const { paginate, query, ...params } = ctx.request.body
|
|
1275
1233
|
params.version = ctx.version
|
|
1276
1234
|
params.tableId = tableId
|
|
1277
1235
|
|
|
1278
1236
|
let response
|
|
1279
1237
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (paginate) {
|
|
1280
|
-
<span class="cstat-no" title="statement not covered" > response = await paginatedSearch(
|
|
1238
|
+
<span class="cstat-no" title="statement not covered" > response = await paginatedSearch(query, params)</span>
|
|
1281
1239
|
} else {
|
|
1282
|
-
response = await fullSearch(
|
|
1240
|
+
response = await fullSearch(query, params)
|
|
1283
1241
|
}
|
|
1284
1242
|
|
|
1285
1243
|
// Enrich search results with relationships
|
|
1286
1244
|
if (response.rows && response.rows.length) {
|
|
1287
1245
|
// enrich with global users if from users table
|
|
1288
1246
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1289
|
-
<span class="cstat-no" title="statement not covered" > response.rows = await getGlobalUsersFromMetadata(
|
|
1247
|
+
<span class="cstat-no" title="statement not covered" > response.rows = await getGlobalUsersFromMetadata(response.rows)</span>
|
|
1290
1248
|
}
|
|
1291
1249
|
const table = await db.get(tableId)
|
|
1292
|
-
response.rows = await outputProcessing(
|
|
1250
|
+
response.rows = await outputProcessing(table, response.rows)
|
|
1293
1251
|
}
|
|
1294
1252
|
|
|
1295
1253
|
return response
|
|
@@ -1297,25 +1255,22 @@ exports.search = async ctx => {
|
|
|
1297
1255
|
|
|
1298
1256
|
exports.validate = async ctx => {
|
|
1299
1257
|
return validate({
|
|
1300
|
-
appId: ctx.appId,
|
|
1301
1258
|
tableId: ctx.params.tableId,
|
|
1302
1259
|
row: ctx.request.body,
|
|
1303
1260
|
})
|
|
1304
1261
|
}
|
|
1305
1262
|
|
|
1306
1263
|
exports.fetchEnrichedRow = async ctx => {
|
|
1307
|
-
const
|
|
1308
|
-
const db = new CouchDB(appId)
|
|
1264
|
+
const db = getAppDB()
|
|
1309
1265
|
const tableId = ctx.params.tableId
|
|
1310
1266
|
const rowId = ctx.params.rowId
|
|
1311
1267
|
// need table to work out where links go in row
|
|
1312
1268
|
let [table, row] = await Promise.all([
|
|
1313
1269
|
db.get(tableId),
|
|
1314
|
-
findRow(ctx,
|
|
1270
|
+
findRow(ctx, tableId, rowId),
|
|
1315
1271
|
])
|
|
1316
1272
|
// get the link docs
|
|
1317
1273
|
const linkVals = await linkRows.getLinkDocuments({
|
|
1318
|
-
appId,
|
|
1319
1274
|
tableId,
|
|
1320
1275
|
rowId,
|
|
1321
1276
|
})
|
|
@@ -1342,7 +1297,7 @@ exports.fetchEnrichedRow = async ctx => {
|
|
|
1342
1297
|
for (let [tableId, rows] of Object.entries(groups)) {
|
|
1343
1298
|
// need to include the IDs in these rows for any links they may have
|
|
1344
1299
|
linkedRows = linkedRows.concat(
|
|
1345
|
-
await outputProcessing(
|
|
1300
|
+
await outputProcessing(tables[tableId], rows)
|
|
1346
1301
|
)
|
|
1347
1302
|
}
|
|
1348
1303
|
|
|
@@ -1369,7 +1324,7 @@ exports.fetchEnrichedRow = async ctx => {
|
|
|
1369
1324
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1370
1325
|
Code coverage generated by
|
|
1371
1326
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1372
|
-
at Mon
|
|
1327
|
+
at Mon Feb 07 2022 10:27:17 GMT+0000 (Coordinated Universal Time)
|
|
1373
1328
|
</div>
|
|
1374
1329
|
</div>
|
|
1375
1330
|
<script src="../../../prettify.js"></script>
|