@budibase/server 1.0.49-alpha.2 → 1.0.49-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__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.82e12602.js → index.1b905242.js} +1 -1
- package/builder/index.html +1 -1
- package/coverage/clover.xml +1917 -1929
- package/coverage/coverage-final.json +54 -54
- 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 +58 -37
- package/coverage/lcov-report/api/controllers/auth.js.html +11 -14
- package/coverage/lcov-report/api/controllers/automation.js.html +21 -51
- 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 +17 -23
- package/coverage/lcov-report/api/controllers/dev.js.html +6 -6
- package/coverage/lcov-report/api/controllers/index.html +52 -52
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +4 -4
- package/coverage/lcov-report/api/controllers/metadata.js.html +6 -21
- package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +6 -6
- package/coverage/lcov-report/api/controllers/query/index.html +10 -10
- package/coverage/lcov-report/api/controllers/query/index.js.html +21 -18
- package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +7 -10
- package/coverage/lcov-report/api/controllers/row/external.js.html +6 -12
- package/coverage/lcov-report/api/controllers/row/index.html +22 -22
- package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internal.js.html +37 -82
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +19 -25
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +14 -17
- package/coverage/lcov-report/api/controllers/row/utils.js.html +15 -12
- package/coverage/lcov-report/api/controllers/screen.js.html +10 -16
- package/coverage/lcov-report/api/controllers/script.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +20 -50
- package/coverage/lcov-report/api/controllers/table/external.js.html +15 -24
- package/coverage/lcov-report/api/controllers/table/index.html +37 -37
- package/coverage/lcov-report/api/controllers/table/index.js.html +7 -7
- package/coverage/lcov-report/api/controllers/table/internal.js.html +36 -45
- package/coverage/lcov-report/api/controllers/table/utils.js.html +40 -76
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +26 -35
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +16 -16
- package/coverage/lcov-report/api/controllers/view/index.js.html +15 -21
- package/coverage/lcov-report/api/controllers/view/utils.js.html +25 -10
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
- package/coverage/lcov-report/api/controllers/webhook.js.html +21 -15
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +1 -1
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/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 +1 -1
- package/coverage/lcov-report/api/routes/index.js.html +1 -1
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/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 +1 -1
- package/coverage/lcov-report/automations/automationUtils.js.html +4 -7
- package/coverage/lcov-report/automations/bullboard.js.html +1 -1
- 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 +1 -1
- package/coverage/lcov-report/automations/steps/createRow.js.html +2 -5
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/automations/steps/updateRow.js.html +2 -2
- package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/triggers.js.html +46 -40
- package/coverage/lcov-report/automations/utils.js.html +24 -12
- package/coverage/lcov-report/constants/index.html +1 -1
- package/coverage/lcov-report/constants/index.js.html +1 -1
- package/coverage/lcov-report/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/constants/screens.js.html +1 -1
- package/coverage/lcov-report/db/client.js.html +18 -18
- package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
- package/coverage/lcov-report/db/index.html +1 -1
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +11 -23
- package/coverage/lcov-report/db/linkedRows/index.html +27 -27
- package/coverage/lcov-report/db/linkedRows/index.js.html +24 -66
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +28 -28
- package/coverage/lcov-report/db/newid.js.html +1 -1
- package/coverage/lcov-report/db/utils.js.html +5 -5
- package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +1 -1
- package/coverage/lcov-report/events/utils.js.html +1 -1
- package/coverage/lcov-report/index.html +88 -88
- 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 +1 -1
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +29 -29
- 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 +16 -16
- package/coverage/lcov-report/threads/index.js.html +1 -1
- package/coverage/lcov-report/threads/query.js.html +17 -17
- package/coverage/lcov-report/threads/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
- package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
- package/coverage/lcov-report/utilities/global.js.html +44 -35
- package/coverage/lcov-report/utilities/index.html +27 -27
- package/coverage/lcov-report/utilities/index.js.html +40 -70
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +7 -7
- package/coverage/lcov-report/utilities/rowProcessor/index.html +11 -11
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +16 -58
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/utilities/security.js.html +1 -1
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +5 -2
- 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 +5 -5
- package/coverage/lcov-report/utilities/workerRequests.js.html +5 -5
- package/coverage/lcov.info +3189 -3198
- package/dist/api/controllers/application.js +31 -28
- 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/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 +76 -63
- package/dist/api/controllers/row/external.js +4 -4
- 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/tests/utilities/TestFunctions.js +37 -17
- 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 +2 -1
- 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 -2
- package/dist/migrations/functions/appUrls.js +11 -2
- package/dist/migrations/functions/usageQuotas/syncApps.js +7 -9
- package/dist/migrations/functions/usageQuotas/syncRows.js +7 -9
- package/dist/package.json +4 -4
- package/dist/tests/utilities/TestConfiguration.js +67 -44
- package/dist/threads/automation.js +13 -11
- package/dist/threads/query.js +11 -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 +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/likeCypress.ts +1 -1
- package/src/api/controllers/application.js +35 -28
- 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/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 +53 -42
- package/src/api/controllers/row/external.js +4 -6
- 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/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/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 +2 -1
- 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 -2
- package/src/migrations/functions/appUrls.ts +11 -2
- package/src/migrations/functions/usageQuotas/syncApps.ts +5 -4
- package/src/migrations/functions/usageQuotas/syncRows.ts +5 -4
- package/src/tests/utilities/TestConfiguration.js +69 -50
- package/src/threads/automation.js +17 -15
- package/src/threads/query.js +12 -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 +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
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">95.
|
|
26
|
+
<span class="strong">95.65% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>44/46</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -39,14 +39,14 @@
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>8/8</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">95.
|
|
47
|
+
<span class="strong">95.65% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>44/46</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -168,8 +168,9 @@
|
|
|
168
168
|
<a name='L109'></a><a href='#L109'>109</a>
|
|
169
169
|
<a name='L110'></a><a href='#L110'>110</a>
|
|
170
170
|
<a name='L111'></a><a href='#L111'>111</a>
|
|
171
|
-
<a name='L112'></a><a href='#L112'>112</a
|
|
172
|
-
<
|
|
171
|
+
<a name='L112'></a><a href='#L112'>112</a>
|
|
172
|
+
<a name='L113'></a><a href='#L113'>113</a>
|
|
173
|
+
<a name='L114'></a><a href='#L114'>114</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">38x</span>
|
|
173
174
|
<span class="cline-any cline-yes">38x</span>
|
|
174
175
|
<span class="cline-any cline-yes">38x</span>
|
|
175
176
|
<span class="cline-any cline-yes">38x</span>
|
|
@@ -179,6 +180,7 @@
|
|
|
179
180
|
<span class="cline-any cline-yes">38x</span>
|
|
180
181
|
<span class="cline-any cline-yes">38x</span>
|
|
181
182
|
<span class="cline-any cline-yes">38x</span>
|
|
183
|
+
<span class="cline-any cline-yes">38x</span>
|
|
182
184
|
<span class="cline-any cline-neutral"> </span>
|
|
183
185
|
<span class="cline-any cline-yes">38x</span>
|
|
184
186
|
<span class="cline-any cline-yes">38x</span>
|
|
@@ -193,6 +195,7 @@
|
|
|
193
195
|
<span class="cline-any cline-neutral"> </span>
|
|
194
196
|
<span class="cline-any cline-yes">16x</span>
|
|
195
197
|
<span class="cline-any cline-yes">16x</span>
|
|
198
|
+
<span class="cline-any cline-yes">16x</span>
|
|
196
199
|
<span class="cline-any cline-neutral"> </span>
|
|
197
200
|
<span class="cline-any cline-neutral"> </span>
|
|
198
201
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -226,6 +229,7 @@
|
|
|
226
229
|
<span class="cline-any cline-neutral"> </span>
|
|
227
230
|
<span class="cline-any cline-neutral"> </span>
|
|
228
231
|
<span class="cline-any cline-neutral"> </span>
|
|
232
|
+
<span class="cline-any cline-neutral"> </span>
|
|
229
233
|
<span class="cline-any cline-yes">38x</span>
|
|
230
234
|
<span class="cline-any cline-neutral"> </span>
|
|
231
235
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -279,8 +283,7 @@
|
|
|
279
283
|
<span class="cline-any cline-neutral"> </span>
|
|
280
284
|
<span class="cline-any cline-neutral"> </span>
|
|
281
285
|
<span class="cline-any cline-yes">38x</span>
|
|
282
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
283
|
-
const emitter = require("../events/index")
|
|
286
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const emitter = require("../events/index")
|
|
284
287
|
const { getAutomationParams } = require("../db/utils")
|
|
285
288
|
const { coerce } = require("../utilities/rowProcessor")
|
|
286
289
|
const { definitions } = require("./triggerInfo")
|
|
@@ -290,6 +293,7 @@ const { queue } = require("./bullboard")
|
|
|
290
293
|
const { checkTestFlag } = require("../utilities/redis")
|
|
291
294
|
const utils = require("./utils")
|
|
292
295
|
const env = require("../environment")
|
|
296
|
+
const { doInAppContext, getAppDB } = require("@budibase/backend-core/context")
|
|
293
297
|
|
|
294
298
|
const TRIGGER_DEFINITIONS = definitions
|
|
295
299
|
const JOB_OPTS = {
|
|
@@ -302,39 +306,41 @@ async function queueRelevantRowAutomations(event, eventType) {
|
|
|
302
306
|
<span class="cstat-no" title="statement not covered" > throw `No appId specified for ${eventType} - check event emitters.`</span>
|
|
303
307
|
}
|
|
304
308
|
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
+
doInAppContext(event.appId, async () => {
|
|
310
|
+
const db = getAppDB()
|
|
311
|
+
let automations = await db.allDocs(
|
|
312
|
+
getAutomationParams(null, { include_docs: true })
|
|
313
|
+
)
|
|
309
314
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
315
|
+
// filter down to the correct event type
|
|
316
|
+
automations = automations.rows
|
|
317
|
+
.map(automation => automation.doc)
|
|
318
|
+
.filter(automation => {
|
|
319
|
+
const trigger = automation.definition.trigger
|
|
320
|
+
return trigger && trigger.event === eventType
|
|
321
|
+
})
|
|
317
322
|
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
<span class="cstat-no" title="statement not covered" >
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
323
|
+
for (let automation of automations) {
|
|
324
|
+
let automationDef = automation.definition
|
|
325
|
+
let automationTrigger = automationDef ? automationDef.trigger : <span class="branch-1 cbranch-no" title="branch not covered" >{}</span>
|
|
326
|
+
// don't queue events which are for dev apps, only way to test automations is
|
|
327
|
+
// running tests on them, in production the test flag will never
|
|
328
|
+
// be checked due to lazy evaluation (first always false)
|
|
329
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
330
|
+
!env.ALLOW_DEV_AUTOMATIONS &&
|
|
331
|
+
isDevAppID(event.appId) &&
|
|
332
|
+
!(await checkTestFlag(automation._id))
|
|
333
|
+
) {
|
|
334
|
+
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
335
|
+
}
|
|
336
|
+
if (
|
|
337
|
+
automationTrigger.inputs &&
|
|
338
|
+
automationTrigger.inputs.tableId === event.row.tableId
|
|
339
|
+
) {
|
|
340
|
+
await queue.add({ automation, event }, JOB_OPTS)
|
|
341
|
+
}
|
|
336
342
|
}
|
|
337
|
-
}
|
|
343
|
+
})
|
|
338
344
|
}
|
|
339
345
|
|
|
340
346
|
emitter.on("row:save", async function (event) {
|
|
@@ -397,7 +403,7 @@ exports.TRIGGER_DEFINITIONS = TRIGGER_DEFINITIONS
|
|
|
397
403
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
398
404
|
Code coverage generated by
|
|
399
405
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
400
|
-
at
|
|
406
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
401
407
|
</div>
|
|
402
408
|
</div>
|
|
403
409
|
<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">81.
|
|
26
|
+
<span class="strong">81.57% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>62/76</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">81.
|
|
47
|
+
<span class="strong">81.57% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>62/76</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -242,7 +242,12 @@
|
|
|
242
242
|
<a name='L183'></a><a href='#L183'>183</a>
|
|
243
243
|
<a name='L184'></a><a href='#L184'>184</a>
|
|
244
244
|
<a name='L185'></a><a href='#L185'>185</a>
|
|
245
|
-
<a name='L186'></a><a href='#L186'>186</a
|
|
245
|
+
<a name='L186'></a><a href='#L186'>186</a>
|
|
246
|
+
<a name='L187'></a><a href='#L187'>187</a>
|
|
247
|
+
<a name='L188'></a><a href='#L188'>188</a>
|
|
248
|
+
<a name='L189'></a><a href='#L189'>189</a>
|
|
249
|
+
<a name='L190'></a><a href='#L190'>190</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">38x</span>
|
|
250
|
+
<span class="cline-any cline-yes">38x</span>
|
|
246
251
|
<span class="cline-any cline-yes">38x</span>
|
|
247
252
|
<span class="cline-any cline-yes">38x</span>
|
|
248
253
|
<span class="cline-any cline-yes">38x</span>
|
|
@@ -274,7 +279,6 @@
|
|
|
274
279
|
<span class="cline-any cline-neutral"> </span>
|
|
275
280
|
<span class="cline-any cline-neutral"> </span>
|
|
276
281
|
<span class="cline-any cline-neutral"> </span>
|
|
277
|
-
<span class="cline-any cline-neutral"> </span>
|
|
278
282
|
<span class="cline-any cline-yes">2x</span>
|
|
279
283
|
<span class="cline-any cline-no"> </span>
|
|
280
284
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -337,6 +341,9 @@
|
|
|
337
341
|
<span class="cline-any cline-neutral"> </span>
|
|
338
342
|
<span class="cline-any cline-neutral"> </span>
|
|
339
343
|
<span class="cline-any cline-no"> </span>
|
|
344
|
+
<span class="cline-any cline-neutral"> </span>
|
|
345
|
+
<span class="cline-any cline-neutral"> </span>
|
|
346
|
+
<span class="cline-any cline-neutral"> </span>
|
|
340
347
|
<span class="cline-any cline-no"> </span>
|
|
341
348
|
<span class="cline-any cline-no"> </span>
|
|
342
349
|
<span class="cline-any cline-no"> </span>
|
|
@@ -356,6 +363,7 @@
|
|
|
356
363
|
<span class="cline-any cline-yes">38x</span>
|
|
357
364
|
<span class="cline-any cline-yes">23x</span>
|
|
358
365
|
<span class="cline-any cline-yes">23x</span>
|
|
366
|
+
<span class="cline-any cline-yes">23x</span>
|
|
359
367
|
<span class="cline-any cline-neutral"> </span>
|
|
360
368
|
<span class="cline-any cline-yes">23x</span>
|
|
361
369
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -435,8 +443,9 @@ const { queue } = require("./bullboard")
|
|
|
435
443
|
const newid = require("../db/newid")
|
|
436
444
|
const { updateEntityMetadata } = require("../utilities")
|
|
437
445
|
const { MetadataTypes } = require("../constants")
|
|
438
|
-
const {
|
|
446
|
+
const { getProdAppID } = require("@budibase/backend-core/db")
|
|
439
447
|
const { cloneDeep } = require("lodash/fp")
|
|
448
|
+
const { getAppDB, getAppId } = require("@budibase/backend-core/context")
|
|
440
449
|
|
|
441
450
|
const WH_STEP_ID = definitions.WEBHOOK.stepId
|
|
442
451
|
const CRON_STEP_ID = definitions.CRON.stepId
|
|
@@ -456,7 +465,6 @@ exports.processEvent = async job => {
|
|
|
456
465
|
|
|
457
466
|
exports.updateTestHistory = async (appId, automation, history) => {
|
|
458
467
|
return updateEntityMetadata(
|
|
459
|
-
appId,
|
|
460
468
|
MetadataTypes.AUTOMATION_TEST_HISTORY,
|
|
461
469
|
automation._id,
|
|
462
470
|
metadata => {
|
|
@@ -522,6 +530,9 @@ exports.enableCronTrigger = async (appId, automation) => {
|
|
|
522
530
|
)
|
|
523
531
|
// Assign cron job ID from bull so we can remove it later if the cron trigger is removed
|
|
524
532
|
<span class="cstat-no" title="statement not covered" > trigger.cronJobId = job.id</span>
|
|
533
|
+
// can't use getAppDB here as this is likely to be called from dev app,
|
|
534
|
+
// but this call could be for dev app or prod app, need to just use what
|
|
535
|
+
// was passed in
|
|
525
536
|
const db = <span class="cstat-no" title="statement not covered" >new CouchDB(appId)</span>
|
|
526
537
|
const response = <span class="cstat-no" title="statement not covered" >await db.put(automation)</span>
|
|
527
538
|
<span class="cstat-no" title="statement not covered" > automation._id = response.id</span>
|
|
@@ -538,7 +549,8 @@ exports.enableCronTrigger = async (appId, automation) => {
|
|
|
538
549
|
* @returns {Promise<object|undefined>} After this is complete the new automation object may have been updated and should be
|
|
539
550
|
* written to DB (this does not write to DB as it would be wasteful to repeat).
|
|
540
551
|
*/
|
|
541
|
-
exports.checkForWebhooks = async ({
|
|
552
|
+
exports.checkForWebhooks = async ({ oldAuto, newAuto }) => {
|
|
553
|
+
const appId = getAppId()
|
|
542
554
|
const oldTrigger = oldAuto ? oldAuto.definition.trigger : null
|
|
543
555
|
const newTrigger = newAuto ? newAuto.definition.trigger : null
|
|
544
556
|
const triggerChanged =
|
|
@@ -557,7 +569,7 @@ exports.checkForWebhooks = async ({ appId, oldAuto, newAuto }) => {
|
|
|
557
569
|
oldTrigger.webhookId
|
|
558
570
|
) {
|
|
559
571
|
try {
|
|
560
|
-
let db =
|
|
572
|
+
let db = getAppDB()
|
|
561
573
|
// need to get the webhook to get the rev
|
|
562
574
|
const webhook = await db.get(oldTrigger.webhookId)
|
|
563
575
|
const ctx = {
|
|
@@ -595,7 +607,7 @@ exports.checkForWebhooks = async ({ appId, oldAuto, newAuto }) => {
|
|
|
595
607
|
// the app ID has to be development for this endpoint
|
|
596
608
|
// it can only be used when building the app
|
|
597
609
|
// but the trigger endpoint will always be used in production
|
|
598
|
-
const prodAppId =
|
|
610
|
+
const prodAppId = getProdAppID(appId)
|
|
599
611
|
newTrigger.inputs = {
|
|
600
612
|
schemaUrl: `api/webhooks/schema/${appId}/${id}`,
|
|
601
613
|
triggerUrl: `api/webhooks/trigger/${prodAppId}/${id}`,
|
|
@@ -619,7 +631,7 @@ exports.cleanupAutomations = <span class="fstat-no" title="function not covered"
|
|
|
619
631
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
620
632
|
Code coverage generated by
|
|
621
633
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
622
|
-
at
|
|
634
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
623
635
|
</div>
|
|
624
636
|
</div>
|
|
625
637
|
<script src="../prettify.js"></script>
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
126
126
|
Code coverage generated by
|
|
127
127
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
128
|
-
at
|
|
128
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
129
129
|
</div>
|
|
130
130
|
</div>
|
|
131
131
|
<script src="../prettify.js"></script>
|
|
@@ -634,7 +634,7 @@ exports.ObjectStoreBuckets = ObjectStoreBuckets
|
|
|
634
634
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
635
635
|
Code coverage generated by
|
|
636
636
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
637
|
-
at
|
|
637
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
638
638
|
</div>
|
|
639
639
|
</div>
|
|
640
640
|
<script src="../prettify.js"></script>
|
|
@@ -523,7 +523,7 @@ module.exports = {
|
|
|
523
523
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
524
524
|
Code coverage generated by
|
|
525
525
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
526
|
-
at
|
|
526
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
527
527
|
</div>
|
|
528
528
|
</div>
|
|
529
529
|
<script src="../prettify.js"></script>
|
|
@@ -202,7 +202,7 @@ exports.createHomeScreen = () => ({
|
|
|
202
202
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
203
203
|
Code coverage generated by
|
|
204
204
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
205
|
-
at
|
|
205
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
206
206
|
</div>
|
|
207
207
|
</div>
|
|
208
208
|
<script src="../prettify.js"></script>
|
|
@@ -88,37 +88,37 @@
|
|
|
88
88
|
<a name='L29'></a><a href='#L29'>29</a>
|
|
89
89
|
<a name='L30'></a><a href='#L30'>30</a>
|
|
90
90
|
<a name='L31'></a><a href='#L31'>31</a>
|
|
91
|
-
<a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
92
|
-
<span class="cline-any cline-yes">
|
|
93
|
-
<span class="cline-any cline-yes">
|
|
94
|
-
<span class="cline-any cline-yes">
|
|
95
|
-
<span class="cline-any cline-yes">
|
|
96
|
-
<span class="cline-any cline-yes">
|
|
91
|
+
<a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">42x</span>
|
|
92
|
+
<span class="cline-any cline-yes">42x</span>
|
|
93
|
+
<span class="cline-any cline-yes">42x</span>
|
|
94
|
+
<span class="cline-any cline-yes">42x</span>
|
|
95
|
+
<span class="cline-any cline-yes">42x</span>
|
|
96
|
+
<span class="cline-any cline-yes">42x</span>
|
|
97
97
|
<span class="cline-any cline-neutral"> </span>
|
|
98
|
-
<span class="cline-any cline-yes">
|
|
98
|
+
<span class="cline-any cline-yes">42x</span>
|
|
99
99
|
<span class="cline-any cline-neutral"> </span>
|
|
100
|
-
<span class="cline-any cline-yes">
|
|
101
|
-
<span class="cline-any cline-yes">
|
|
102
|
-
<span class="cline-any cline-yes">
|
|
100
|
+
<span class="cline-any cline-yes">42x</span>
|
|
101
|
+
<span class="cline-any cline-yes">42x</span>
|
|
102
|
+
<span class="cline-any cline-yes">42x</span>
|
|
103
103
|
<span class="cline-any cline-neutral"> </span>
|
|
104
|
-
<span class="cline-any cline-yes">
|
|
104
|
+
<span class="cline-any cline-yes">42x</span>
|
|
105
105
|
<span class="cline-any cline-neutral"> </span>
|
|
106
106
|
<span class="cline-any cline-neutral"> </span>
|
|
107
107
|
<span class="cline-any cline-neutral"> </span>
|
|
108
|
-
<span class="cline-any cline-yes">
|
|
109
|
-
<span class="cline-any cline-yes">
|
|
110
|
-
<span class="cline-any cline-yes">
|
|
108
|
+
<span class="cline-any cline-yes">42x</span>
|
|
109
|
+
<span class="cline-any cline-yes">42x</span>
|
|
110
|
+
<span class="cline-any cline-yes">42x</span>
|
|
111
111
|
<span class="cline-any cline-neutral"> </span>
|
|
112
112
|
<span class="cline-any cline-neutral"> </span>
|
|
113
113
|
<span class="cline-any cline-neutral"> </span>
|
|
114
114
|
<span class="cline-any cline-neutral"> </span>
|
|
115
115
|
<span class="cline-any cline-neutral"> </span>
|
|
116
|
-
<span class="cline-any cline-yes">
|
|
116
|
+
<span class="cline-any cline-yes">42x</span>
|
|
117
117
|
<span class="cline-any cline-neutral"> </span>
|
|
118
118
|
<span class="cline-any cline-neutral"> </span>
|
|
119
|
-
<span class="cline-any cline-yes">
|
|
119
|
+
<span class="cline-any cline-yes">42x</span>
|
|
120
120
|
<span class="cline-any cline-neutral"> </span>
|
|
121
|
-
<span class="cline-any cline-yes">
|
|
121
|
+
<span class="cline-any cline-yes">42x</span>
|
|
122
122
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const PouchDB = require("pouchdb")
|
|
123
123
|
const { getCouchUrl } = require("@budibase/backend-core/db")
|
|
124
124
|
const replicationStream = require("pouchdb-replication-stream")
|
|
@@ -157,7 +157,7 @@ module.exports = Pouch
|
|
|
157
157
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
158
158
|
Code coverage generated by
|
|
159
159
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
160
|
-
at
|
|
160
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
161
161
|
</div>
|
|
162
162
|
</div>
|
|
163
163
|
<script src="../prettify.js"></script>
|
|
@@ -208,7 +208,7 @@ exports.runView = <span class="fstat-no" title="function not covered" >as</span>
|
|
|
208
208
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
209
209
|
Code coverage generated by
|
|
210
210
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
211
|
-
at
|
|
211
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
212
212
|
</div>
|
|
213
213
|
</div>
|
|
214
214
|
<script src="../prettify.js"></script>
|
|
@@ -155,7 +155,7 @@
|
|
|
155
155
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
156
156
|
Code coverage generated by
|
|
157
157
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
158
|
-
at
|
|
158
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
159
159
|
</div>
|
|
160
160
|
</div>
|
|
161
161
|
<script src="../prettify.js"></script>
|
|
@@ -60,9 +60,9 @@
|
|
|
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>
|
|
62
62
|
<a name='L3'></a><a href='#L3'>3</a>
|
|
63
|
-
<a name='L4'></a><a href='#L4'>4</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
63
|
+
<a name='L4'></a><a href='#L4'>4</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">42x</span>
|
|
64
64
|
<span class="cline-any cline-neutral"> </span>
|
|
65
|
-
<span class="cline-any cline-yes">
|
|
65
|
+
<span class="cline-any cline-yes">42x</span>
|
|
66
66
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const client = require("./client")
|
|
67
67
|
|
|
68
68
|
module.exports = client
|
|
@@ -73,7 +73,7 @@ module.exports = client
|
|
|
73
73
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
74
74
|
Code coverage generated by
|
|
75
75
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
76
|
-
at
|
|
76
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
77
77
|
</div>
|
|
78
78
|
</div>
|
|
79
79
|
<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">96.
|
|
26
|
+
<span class="strong">96.02% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>145/151</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">96.
|
|
47
|
+
<span class="strong">96.66% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>145/150</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -521,12 +521,7 @@
|
|
|
521
521
|
<a name='L462'></a><a href='#L462'>462</a>
|
|
522
522
|
<a name='L463'></a><a href='#L463'>463</a>
|
|
523
523
|
<a name='L464'></a><a href='#L464'>464</a>
|
|
524
|
-
<a name='L465'></a><a href='#L465'>465</a>
|
|
525
|
-
<a name='L466'></a><a href='#L466'>466</a>
|
|
526
|
-
<a name='L467'></a><a href='#L467'>467</a>
|
|
527
|
-
<a name='L468'></a><a href='#L468'>468</a>
|
|
528
|
-
<a name='L469'></a><a href='#L469'>469</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
|
|
529
|
-
<span class="cline-any cline-yes">39x</span>
|
|
524
|
+
<a name='L465'></a><a href='#L465'>465</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
|
|
530
525
|
<span class="cline-any cline-neutral"> </span>
|
|
531
526
|
<span class="cline-any cline-neutral"> </span>
|
|
532
527
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -534,6 +529,7 @@
|
|
|
534
529
|
<span class="cline-any cline-yes">39x</span>
|
|
535
530
|
<span class="cline-any cline-yes">39x</span>
|
|
536
531
|
<span class="cline-any cline-yes">39x</span>
|
|
532
|
+
<span class="cline-any cline-yes">39x</span>
|
|
537
533
|
<span class="cline-any cline-neutral"> </span>
|
|
538
534
|
<span class="cline-any cline-neutral"> </span>
|
|
539
535
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -585,7 +581,6 @@
|
|
|
585
581
|
<span class="cline-any cline-yes">192x</span>
|
|
586
582
|
<span class="cline-any cline-yes">192x</span>
|
|
587
583
|
<span class="cline-any cline-yes">192x</span>
|
|
588
|
-
<span class="cline-any cline-yes">192x</span>
|
|
589
584
|
<span class="cline-any cline-neutral"> </span>
|
|
590
585
|
<span class="cline-any cline-neutral"> </span>
|
|
591
586
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -636,7 +631,6 @@
|
|
|
636
631
|
<span class="cline-any cline-neutral"> </span>
|
|
637
632
|
<span class="cline-any cline-neutral"> </span>
|
|
638
633
|
<span class="cline-any cline-neutral"> </span>
|
|
639
|
-
<span class="cline-any cline-neutral"> </span>
|
|
640
634
|
<span class="cline-any cline-yes">9x</span>
|
|
641
635
|
<span class="cline-any cline-neutral"> </span>
|
|
642
636
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -647,7 +641,6 @@
|
|
|
647
641
|
<span class="cline-any cline-neutral"> </span>
|
|
648
642
|
<span class="cline-any cline-neutral"> </span>
|
|
649
643
|
<span class="cline-any cline-neutral"> </span>
|
|
650
|
-
<span class="cline-any cline-neutral"> </span>
|
|
651
644
|
<span class="cline-any cline-yes">22x</span>
|
|
652
645
|
<span class="cline-any cline-yes">22x</span>
|
|
653
646
|
<span class="cline-any cline-yes">82x</span>
|
|
@@ -763,7 +756,6 @@
|
|
|
763
756
|
<span class="cline-any cline-neutral"> </span>
|
|
764
757
|
<span class="cline-any cline-neutral"> </span>
|
|
765
758
|
<span class="cline-any cline-neutral"> </span>
|
|
766
|
-
<span class="cline-any cline-neutral"> </span>
|
|
767
759
|
<span class="cline-any cline-yes">1x</span>
|
|
768
760
|
<span class="cline-any cline-neutral"> </span>
|
|
769
761
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -993,8 +985,7 @@
|
|
|
993
985
|
<span class="cline-any cline-neutral"> </span>
|
|
994
986
|
<span class="cline-any cline-neutral"> </span>
|
|
995
987
|
<span class="cline-any cline-yes">39x</span>
|
|
996
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const
|
|
997
|
-
const { IncludeDocs, getLinkDocuments } = require("./linkUtils")
|
|
988
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const { IncludeDocs, getLinkDocuments } = require("./linkUtils")
|
|
998
989
|
const {
|
|
999
990
|
generateLinkID,
|
|
1000
991
|
InternalTables,
|
|
@@ -1002,6 +993,7 @@ const {
|
|
|
1002
993
|
} = require("../utils")
|
|
1003
994
|
const Sentry = require("@sentry/node")
|
|
1004
995
|
const { FieldTypes, RelationshipTypes } = require("../../constants")
|
|
996
|
+
const { getAppDB } = require("@budibase/backend-core/context")
|
|
1005
997
|
|
|
1006
998
|
/**
|
|
1007
999
|
* Creates a new link document structure which can be put to the database. It is important to
|
|
@@ -1047,9 +1039,8 @@ function LinkDocument(
|
|
|
1047
1039
|
}
|
|
1048
1040
|
|
|
1049
1041
|
class LinkController {
|
|
1050
|
-
constructor({
|
|
1051
|
-
this.
|
|
1052
|
-
this._db = new CouchDB(appId)
|
|
1042
|
+
constructor({ tableId, row, table, oldTable }) {
|
|
1043
|
+
this._db = getAppDB()
|
|
1053
1044
|
this._tableId = tableId
|
|
1054
1045
|
this._row = row
|
|
1055
1046
|
this._table = table
|
|
@@ -1094,7 +1085,6 @@ class LinkController {
|
|
|
1094
1085
|
*/
|
|
1095
1086
|
getRowLinkDocs(rowId) {
|
|
1096
1087
|
return getLinkDocuments({
|
|
1097
|
-
appId: this._appId,
|
|
1098
1088
|
tableId: this._tableId,
|
|
1099
1089
|
rowId,
|
|
1100
1090
|
includeDocs: IncludeDocs.INCLUDE,
|
|
@@ -1106,7 +1096,6 @@ class LinkController {
|
|
|
1106
1096
|
*/
|
|
1107
1097
|
getTableLinkDocs() {
|
|
1108
1098
|
return getLinkDocuments({
|
|
1109
|
-
appId: this._appId,
|
|
1110
1099
|
tableId: this._tableId,
|
|
1111
1100
|
includeDocs: IncludeDocs.INCLUDE,
|
|
1112
1101
|
})
|
|
@@ -1225,7 +1214,6 @@ class LinkController {
|
|
|
1225
1214
|
if (linkedSchema.relationshipType === RelationshipTypes.ONE_TO_MANY) {
|
|
1226
1215
|
let links = (
|
|
1227
1216
|
await getLinkDocuments({
|
|
1228
|
-
appId: this._appId,
|
|
1229
1217
|
tableId: field.tableId,
|
|
1230
1218
|
rowId: linkId,
|
|
1231
1219
|
includeDocs: IncludeDocs.EXCLUDE,
|
|
@@ -1468,7 +1456,7 @@ module.exports = LinkController
|
|
|
1468
1456
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1469
1457
|
Code coverage generated by
|
|
1470
1458
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1471
|
-
at
|
|
1459
|
+
at Tue Feb 01 2022 16:32:19 GMT+0000 (Coordinated Universal Time)
|
|
1472
1460
|
</div>
|
|
1473
1461
|
</div>
|
|
1474
1462
|
<script src="../../prettify.js"></script>
|