@budibase/server 0.9.138 → 0.9.140-alpha.2
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/builder/assets/discord.c14881e9.svg +10 -0
- package/builder/assets/{index.b18ab99b.js → index.1d1fa051.js} +35 -35
- package/builder/assets/{index.121692c9.css → index.79907e5c.css} +5 -5
- package/builder/assets/integromat.42212f11.png +0 -0
- package/builder/assets/slack.1e1f7cfb.svg +33 -0
- package/builder/assets/{vendor.7177f366.js → vendor.d39b3c1e.js} +2 -2
- package/builder/assets/zapier.3fbd8f5c.png +0 -0
- package/builder/index.html +3 -3
- package/coverage/clover.xml +2138 -2091
- package/coverage/coverage-final.json +120 -106
- package/coverage/lcov-report/api/controllers/analytics.js.html +3 -3
- package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
- package/coverage/lcov-report/api/controllers/application.js.html +84 -84
- package/coverage/lcov-report/api/controllers/auth.js.html +6 -6
- package/coverage/lcov-report/api/controllers/automation.js.html +182 -356
- package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
- package/coverage/lcov-report/api/controllers/component.js.html +5 -5
- package/coverage/lcov-report/api/controllers/datasource.js.html +12 -12
- package/coverage/lcov-report/api/controllers/dev.js.html +15 -15
- package/coverage/lcov-report/api/controllers/hosting.js.html +8 -8
- package/coverage/lcov-report/api/controllers/index.html +47 -32
- package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
- package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
- package/coverage/lcov-report/api/controllers/metadata.js.html +218 -0
- package/coverage/lcov-report/api/controllers/permission.js.html +14 -14
- package/coverage/lcov-report/api/controllers/query.js.html +17 -23
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
- package/coverage/lcov-report/api/controllers/row/external.js.html +15 -15
- package/coverage/lcov-report/api/controllers/row/index.html +29 -44
- package/coverage/lcov-report/api/controllers/row/index.js.html +48 -45
- package/coverage/lcov-report/api/controllers/row/internal.js.html +159 -126
- package/coverage/lcov-report/api/controllers/row/utils.js.html +17 -17
- package/coverage/lcov-report/api/controllers/screen.js.html +7 -7
- package/coverage/lcov-report/api/controllers/script.js.html +5 -5
- package/coverage/lcov-report/api/controllers/table/index.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.js.html +40 -40
- package/coverage/lcov-report/api/controllers/table/utils.js.html +48 -48
- package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
- package/coverage/lcov-report/api/controllers/user.js.html +14 -11
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +3 -3
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +9 -9
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +6 -6
- package/coverage/lcov-report/api/controllers/webhook.js.html +14 -14
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +23 -23
- package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
- package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
- package/coverage/lcov-report/api/routes/application.js.html +8 -8
- package/coverage/lcov-report/api/routes/auth.js.html +6 -6
- package/coverage/lcov-report/api/routes/automation.js.html +41 -26
- package/coverage/lcov-report/api/routes/backup.js.html +8 -8
- package/coverage/lcov-report/api/routes/component.js.html +8 -8
- package/coverage/lcov-report/api/routes/datasource.js.html +13 -13
- package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
- package/coverage/lcov-report/api/routes/dev.js.html +11 -11
- package/coverage/lcov-report/api/routes/hosting.js.html +8 -8
- package/coverage/lcov-report/api/routes/index.html +24 -9
- package/coverage/lcov-report/api/routes/index.js.html +36 -30
- package/coverage/lcov-report/api/routes/integration.js.html +8 -8
- package/coverage/lcov-report/api/routes/layout.js.html +8 -8
- package/coverage/lcov-report/api/routes/metadata.js.html +194 -0
- package/coverage/lcov-report/api/routes/permission.js.html +12 -12
- package/coverage/lcov-report/api/routes/query.js.html +13 -13
- package/coverage/lcov-report/api/routes/role.js.html +12 -12
- package/coverage/lcov-report/api/routes/routing.js.html +8 -8
- package/coverage/lcov-report/api/routes/row.js.html +10 -10
- package/coverage/lcov-report/api/routes/screen.js.html +11 -11
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/static.js.html +13 -16
- package/coverage/lcov-report/api/routes/table.js.html +12 -12
- package/coverage/lcov-report/api/routes/templates.js.html +8 -8
- package/coverage/lcov-report/api/routes/user.js.html +9 -9
- package/coverage/lcov-report/api/routes/view.js.html +11 -11
- package/coverage/lcov-report/api/routes/webhook.js.html +11 -11
- package/coverage/lcov-report/automations/actions.js.html +57 -117
- package/coverage/lcov-report/automations/automationUtils.js.html +7 -7
- package/coverage/lcov-report/automations/bullboard.js.html +49 -16
- package/coverage/lcov-report/automations/index.html +67 -67
- package/coverage/lcov-report/automations/index.js.html +26 -128
- package/coverage/lcov-report/automations/steps/bash.js.html +37 -16
- package/coverage/lcov-report/automations/steps/createRow.js.html +15 -15
- package/coverage/lcov-report/automations/steps/delay.js.html +48 -9
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +14 -14
- package/coverage/lcov-report/automations/steps/discord.js.html +329 -0
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +22 -34
- package/coverage/lcov-report/automations/steps/executeScript.js.html +21 -33
- package/coverage/lcov-report/automations/steps/filter.js.html +28 -25
- package/coverage/lcov-report/automations/steps/index.html +140 -65
- package/coverage/lcov-report/automations/steps/integromat.js.html +341 -0
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +44 -38
- package/coverage/lcov-report/automations/steps/queryRows.js.html +437 -0
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +13 -13
- package/coverage/lcov-report/automations/steps/serverLog.js.html +23 -11
- package/coverage/lcov-report/automations/steps/{sendgridEmail.js.html → slack.js.html} +58 -88
- package/coverage/lcov-report/automations/steps/updateRow.js.html +12 -12
- package/coverage/lcov-report/automations/steps/utils.js.html +188 -0
- package/coverage/lcov-report/automations/steps/zapier.js.html +332 -0
- package/coverage/lcov-report/automations/thread.js.html +79 -76
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +173 -0
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +173 -0
- package/coverage/lcov-report/automations/triggerInfo/index.html +201 -0
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +125 -0
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +176 -0
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +200 -0
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +200 -0
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +188 -0
- package/coverage/lcov-report/automations/triggers.js.html +67 -838
- package/coverage/lcov-report/automations/utils.js.html +557 -0
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +32 -17
- 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/index.html +19 -19
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +79 -79
- package/coverage/lcov-report/db/linkedRows/index.html +18 -18
- package/coverage/lcov-report/db/linkedRows/index.js.html +107 -149
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +43 -43
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +127 -76
- package/coverage/lcov-report/events/AutomationEmitter.js.html +7 -7
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +6 -6
- package/coverage/lcov-report/events/utils.js.html +3 -3
- package/coverage/lcov-report/index.html +116 -101
- 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/{automations/logic.js.html → middleware/appInfo.js.html} +35 -38
- package/coverage/lcov-report/middleware/authorized.js.html +16 -16
- package/coverage/lcov-report/middleware/builder.js.html +15 -15
- package/coverage/lcov-report/middleware/currentapp.js.html +33 -33
- package/coverage/lcov-report/middleware/index.html +23 -8
- package/coverage/lcov-report/middleware/joi-validator.js.html +6 -6
- package/coverage/lcov-report/middleware/resourceId.js.html +28 -28
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +8 -8
- 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 +6 -6
- package/coverage/lcov-report/utilities/global.js.html +33 -33
- package/coverage/lcov-report/utilities/index.html +28 -28
- package/coverage/lcov-report/utilities/index.js.html +178 -25
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +18 -18
- 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 +6 -6
- package/coverage/lcov-report/utilities/rowProcessor/index.html +14 -14
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +87 -51
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +10 -10
- package/coverage/lcov-report/utilities/security.js.html +9 -9
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +5 -5
- package/coverage/lcov-report/utilities/workerRequests.js.html +52 -52
- package/coverage/lcov.info +3255 -3218
- package/dist/api/controllers/automation.js +60 -127
- package/dist/api/controllers/deploy/index.js +17 -1
- package/dist/api/controllers/metadata.js +49 -0
- package/dist/api/controllers/query.js +0 -2
- package/dist/api/controllers/row/ExternalRequest.js +1 -1
- package/dist/api/controllers/row/index.js +1 -0
- package/dist/api/controllers/row/internal.js +33 -23
- package/dist/api/controllers/static/index.js +1 -28
- package/dist/api/controllers/static/templates/BudibaseApp.svelte +4 -1
- package/dist/api/controllers/user.js +1 -1
- package/dist/api/routes/automation.js +4 -5
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/metadata.js +13 -0
- package/dist/api/routes/static.js +0 -1
- package/dist/api/routes/tests/utilities/TestFunctions.js +13 -0
- package/dist/app.js +1 -1
- package/dist/automations/actions.js +29 -46
- package/dist/automations/bullboard.js +11 -2
- package/dist/automations/index.js +11 -48
- package/dist/automations/steps/bash.js +12 -6
- package/dist/automations/steps/createRow.js +5 -5
- package/dist/automations/steps/delay.js +16 -3
- package/dist/automations/steps/deleteRow.js +5 -5
- package/dist/automations/steps/discord.js +91 -0
- package/dist/automations/steps/executeQuery.js +12 -15
- package/dist/automations/steps/executeScript.js +12 -15
- package/dist/automations/steps/filter.js +19 -18
- package/dist/automations/steps/integromat.js +94 -0
- package/dist/automations/steps/outgoingWebhook.js +19 -20
- package/dist/automations/steps/queryRows.js +129 -0
- package/dist/automations/steps/sendSmtpEmail.js +4 -4
- package/dist/automations/steps/serverLog.js +7 -3
- package/dist/automations/steps/slack.js +73 -0
- package/dist/automations/steps/updateRow.js +4 -4
- package/dist/automations/steps/utils.js +46 -0
- package/dist/automations/steps/zapier.js +91 -0
- package/dist/automations/tests/utilities/index.js +2 -12
- package/dist/automations/thread.js +23 -25
- package/dist/automations/triggerInfo/app.js +32 -0
- package/dist/automations/triggerInfo/cron.js +32 -0
- package/dist/automations/triggerInfo/index.js +15 -0
- package/dist/automations/triggerInfo/rowDeleted.js +33 -0
- package/dist/automations/triggerInfo/rowSaved.js +41 -0
- package/dist/automations/triggerInfo/rowUpdated.js +41 -0
- package/dist/automations/triggerInfo/webhook.js +37 -0
- package/dist/automations/triggers.js +27 -285
- package/dist/automations/utils.js +143 -0
- package/dist/constants/index.js +4 -0
- package/dist/db/linkedRows/index.js +20 -34
- package/dist/db/utils.js +14 -1
- package/dist/environment.js +2 -1
- package/dist/integrations/mysql.js +14 -2
- package/dist/middleware/appInfo.js +17 -0
- package/dist/middleware/usageQuota.js +1 -1
- package/dist/package.json +12 -11
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/appDirectoryTemplate/package.json +1 -1
- package/dist/utilities/fileSystem/clientLibrary.js +2 -2
- package/dist/utilities/fileSystem/index.js +2 -27
- package/dist/utilities/index.js +54 -0
- package/dist/utilities/redis.js +16 -1
- package/dist/utilities/rowProcessor/index.js +7 -4
- package/package.json +13 -12
- package/scripts/jestSetup.js +1 -0
- package/scripts/selfhost.js +8 -0
- package/src/api/controllers/automation.js +87 -145
- package/src/api/controllers/deploy/index.js +23 -1
- package/src/api/controllers/metadata.js +46 -0
- package/src/api/controllers/query.js +0 -2
- package/src/api/controllers/row/ExternalRequest.ts +1 -1
- package/src/api/controllers/row/index.js +1 -0
- package/src/api/controllers/row/internal.js +34 -23
- package/src/api/controllers/static/index.js +1 -39
- package/src/api/controllers/static/templates/BudibaseApp.svelte +4 -1
- package/src/api/controllers/user.js +1 -0
- package/src/api/routes/automation.js +16 -11
- package/src/api/routes/index.js +2 -0
- package/src/api/routes/metadata.js +38 -0
- package/src/api/routes/static.js +0 -1
- package/src/api/routes/tests/automation.spec.js +4 -26
- package/src/api/routes/tests/metadata.spec.js +65 -0
- package/src/api/routes/tests/utilities/TestFunctions.js +14 -0
- package/src/app.ts +1 -1
- package/src/automations/actions.js +29 -49
- package/src/automations/bullboard.js +13 -2
- package/src/automations/index.js +11 -45
- package/src/automations/steps/bash.js +13 -6
- package/src/automations/steps/createRow.js +5 -5
- package/src/automations/steps/delay.js +16 -3
- package/src/automations/steps/deleteRow.js +5 -5
- package/src/automations/steps/discord.js +83 -0
- package/src/automations/steps/executeQuery.js +12 -16
- package/src/automations/steps/executeScript.js +12 -16
- package/src/automations/steps/filter.js +19 -18
- package/src/automations/steps/integromat.js +87 -0
- package/src/automations/steps/outgoingWebhook.js +20 -18
- package/src/automations/steps/queryRows.js +119 -0
- package/src/automations/steps/sendSmtpEmail.js +4 -4
- package/src/automations/steps/serverLog.js +7 -3
- package/src/automations/steps/slack.js +64 -0
- package/src/automations/steps/updateRow.js +4 -4
- package/src/automations/steps/utils.js +36 -0
- package/src/automations/steps/zapier.js +84 -0
- package/src/automations/tests/automation.spec.js +4 -67
- package/src/automations/tests/delay.spec.js +2 -2
- package/src/automations/tests/filter.spec.js +14 -14
- package/src/automations/tests/queryRows.spec.js +51 -0
- package/src/automations/tests/utilities/index.js +2 -13
- package/src/automations/thread.js +27 -26
- package/src/automations/triggerInfo/app.js +31 -0
- package/src/automations/triggerInfo/cron.js +31 -0
- package/src/automations/triggerInfo/index.js +15 -0
- package/src/automations/triggerInfo/rowDeleted.js +32 -0
- package/src/automations/triggerInfo/rowSaved.js +40 -0
- package/src/automations/triggerInfo/rowUpdated.js +40 -0
- package/src/automations/triggerInfo/webhook.js +36 -0
- package/src/automations/triggers.js +33 -290
- package/src/automations/utils.js +159 -0
- package/src/constants/index.js +5 -0
- package/src/db/linkedRows/index.js +21 -35
- package/src/db/tests/linkTests.spec.js +0 -12
- package/src/db/utils.js +17 -0
- package/src/environment.js +2 -1
- package/src/integrations/mysql.ts +15 -2
- package/src/middleware/appInfo.js +19 -0
- package/src/middleware/usageQuota.js +1 -1
- package/src/utilities/appDirectoryTemplate/package.json +1 -1
- package/src/utilities/fileSystem/clientLibrary.js +2 -2
- package/src/utilities/fileSystem/index.js +2 -36
- package/src/utilities/index.js +51 -0
- package/src/utilities/redis.js +18 -1
- package/src/utilities/rowProcessor/index.js +16 -4
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +0 -1244
- package/dist/automations/logic.js +0 -17
- package/dist/automations/steps/sendgridEmail.js +0 -85
- package/src/automations/logic.js +0 -20
- package/src/automations/steps/sendgridEmail.js +0 -74
- package/src/automations/tests/sendEmail.spec.js +0 -36
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">87.93% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>153/174</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">69.57% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>32/46</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">91.3% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>21/23</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">88.1% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>148/168</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
56
|
</p>
|
|
57
57
|
</div>
|
|
58
|
-
<div class='status-line
|
|
58
|
+
<div class='status-line high'></div>
|
|
59
59
|
<pre><table class="coverage">
|
|
60
60
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
61
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -412,40 +412,64 @@
|
|
|
412
412
|
<a name='L353'></a><a href='#L353'>353</a>
|
|
413
413
|
<a name='L354'></a><a href='#L354'>354</a>
|
|
414
414
|
<a name='L355'></a><a href='#L355'>355</a>
|
|
415
|
-
<a name='L356'></a><a href='#L356'>356</a
|
|
416
|
-
<
|
|
415
|
+
<a name='L356'></a><a href='#L356'>356</a>
|
|
416
|
+
<a name='L357'></a><a href='#L357'>357</a>
|
|
417
|
+
<a name='L358'></a><a href='#L358'>358</a>
|
|
418
|
+
<a name='L359'></a><a href='#L359'>359</a>
|
|
419
|
+
<a name='L360'></a><a href='#L360'>360</a>
|
|
420
|
+
<a name='L361'></a><a href='#L361'>361</a>
|
|
421
|
+
<a name='L362'></a><a href='#L362'>362</a>
|
|
422
|
+
<a name='L363'></a><a href='#L363'>363</a>
|
|
423
|
+
<a name='L364'></a><a href='#L364'>364</a>
|
|
424
|
+
<a name='L365'></a><a href='#L365'>365</a>
|
|
425
|
+
<a name='L366'></a><a href='#L366'>366</a>
|
|
426
|
+
<a name='L367'></a><a href='#L367'>367</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
|
|
427
|
+
<span class="cline-any cline-yes">34x</span>
|
|
417
428
|
<span class="cline-any cline-neutral"> </span>
|
|
418
429
|
<span class="cline-any cline-neutral"> </span>
|
|
419
430
|
<span class="cline-any cline-neutral"> </span>
|
|
420
431
|
<span class="cline-any cline-neutral"> </span>
|
|
421
432
|
<span class="cline-any cline-neutral"> </span>
|
|
422
|
-
<span class="cline-any cline-yes">
|
|
423
|
-
<span class="cline-any cline-yes">
|
|
433
|
+
<span class="cline-any cline-yes">34x</span>
|
|
434
|
+
<span class="cline-any cline-yes">34x</span>
|
|
424
435
|
<span class="cline-any cline-neutral"> </span>
|
|
425
436
|
<span class="cline-any cline-neutral"> </span>
|
|
426
437
|
<span class="cline-any cline-neutral"> </span>
|
|
427
|
-
<span class="cline-any cline-yes">
|
|
428
|
-
<span class="cline-any cline-yes">
|
|
429
|
-
<span class="cline-any cline-yes">
|
|
430
|
-
<span class="cline-any cline-yes">
|
|
431
|
-
<span class="cline-any cline-yes">
|
|
432
|
-
<span class="cline-any cline-yes">
|
|
438
|
+
<span class="cline-any cline-yes">34x</span>
|
|
439
|
+
<span class="cline-any cline-yes">34x</span>
|
|
440
|
+
<span class="cline-any cline-yes">34x</span>
|
|
441
|
+
<span class="cline-any cline-yes">34x</span>
|
|
442
|
+
<span class="cline-any cline-yes">34x</span>
|
|
443
|
+
<span class="cline-any cline-yes">34x</span>
|
|
433
444
|
<span class="cline-any cline-neutral"> </span>
|
|
434
|
-
<span class="cline-any cline-yes">
|
|
445
|
+
<span class="cline-any cline-yes">34x</span>
|
|
435
446
|
<span class="cline-any cline-neutral"> </span>
|
|
436
447
|
<span class="cline-any cline-neutral"> </span>
|
|
437
448
|
<span class="cline-any cline-neutral"> </span>
|
|
438
449
|
<span class="cline-any cline-neutral"> </span>
|
|
439
450
|
<span class="cline-any cline-neutral"> </span>
|
|
440
|
-
<span class="cline-any cline-yes">33x</span>
|
|
441
|
-
<span class="cline-any cline-yes">4x</span>
|
|
442
|
-
<span class="cline-any cline-yes">4x</span>
|
|
443
|
-
<span class="cline-any cline-yes">4x</span>
|
|
444
|
-
<span class="cline-any cline-yes">4x</span>
|
|
445
|
-
<span class="cline-any cline-yes">4x</span>
|
|
446
451
|
<span class="cline-any cline-neutral"> </span>
|
|
447
|
-
<span class="cline-any cline-yes">
|
|
448
|
-
<span class="cline-any cline-yes">
|
|
452
|
+
<span class="cline-any cline-yes">70x</span>
|
|
453
|
+
<span class="cline-any cline-yes">70x</span>
|
|
454
|
+
<span class="cline-any cline-neutral"> </span>
|
|
455
|
+
<span class="cline-any cline-yes">70x</span>
|
|
456
|
+
<span class="cline-any cline-no"> </span>
|
|
457
|
+
<span class="cline-any cline-neutral"> </span>
|
|
458
|
+
<span class="cline-any cline-yes">70x</span>
|
|
459
|
+
<span class="cline-any cline-neutral"> </span>
|
|
460
|
+
<span class="cline-any cline-yes">70x</span>
|
|
461
|
+
<span class="cline-any cline-yes">70x</span>
|
|
462
|
+
<span class="cline-any cline-neutral"> </span>
|
|
463
|
+
<span class="cline-any cline-neutral"> </span>
|
|
464
|
+
<span class="cline-any cline-yes">34x</span>
|
|
465
|
+
<span class="cline-any cline-yes">5x</span>
|
|
466
|
+
<span class="cline-any cline-yes">5x</span>
|
|
467
|
+
<span class="cline-any cline-yes">5x</span>
|
|
468
|
+
<span class="cline-any cline-yes">5x</span>
|
|
469
|
+
<span class="cline-any cline-yes">5x</span>
|
|
470
|
+
<span class="cline-any cline-neutral"> </span>
|
|
471
|
+
<span class="cline-any cline-yes">5x</span>
|
|
472
|
+
<span class="cline-any cline-yes">5x</span>
|
|
449
473
|
<span class="cline-any cline-neutral"> </span>
|
|
450
474
|
<span class="cline-any cline-no"> </span>
|
|
451
475
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -457,26 +481,26 @@
|
|
|
457
481
|
<span class="cline-any cline-no"> </span>
|
|
458
482
|
<span class="cline-any cline-neutral"> </span>
|
|
459
483
|
<span class="cline-any cline-neutral"> </span>
|
|
460
|
-
<span class="cline-any cline-yes">
|
|
484
|
+
<span class="cline-any cline-yes">5x</span>
|
|
461
485
|
<span class="cline-any cline-neutral"> </span>
|
|
462
|
-
<span class="cline-any cline-yes">
|
|
463
|
-
<span class="cline-any cline-yes">
|
|
464
|
-
<span class="cline-any cline-yes">
|
|
486
|
+
<span class="cline-any cline-yes">5x</span>
|
|
487
|
+
<span class="cline-any cline-yes">21x</span>
|
|
488
|
+
<span class="cline-any cline-yes">6x</span>
|
|
465
489
|
<span class="cline-any cline-neutral"> </span>
|
|
466
490
|
<span class="cline-any cline-neutral"> </span>
|
|
467
491
|
<span class="cline-any cline-neutral"> </span>
|
|
468
|
-
<span class="cline-any cline-yes">
|
|
469
|
-
<span class="cline-any cline-yes">
|
|
492
|
+
<span class="cline-any cline-yes">5x</span>
|
|
493
|
+
<span class="cline-any cline-yes">5x</span>
|
|
470
494
|
<span class="cline-any cline-neutral"> </span>
|
|
471
495
|
<span class="cline-any cline-neutral"> </span>
|
|
472
496
|
<span class="cline-any cline-neutral"> </span>
|
|
473
497
|
<span class="cline-any cline-neutral"> </span>
|
|
474
|
-
<span class="cline-any cline-yes">
|
|
498
|
+
<span class="cline-any cline-yes">5x</span>
|
|
475
499
|
<span class="cline-any cline-yes">1x</span>
|
|
476
500
|
<span class="cline-any cline-neutral"> </span>
|
|
477
501
|
<span class="cline-any cline-neutral"> </span>
|
|
478
502
|
<span class="cline-any cline-neutral"> </span>
|
|
479
|
-
<span class="cline-any cline-yes">
|
|
503
|
+
<span class="cline-any cline-yes">4x</span>
|
|
480
504
|
<span class="cline-any cline-neutral"> </span>
|
|
481
505
|
<span class="cline-any cline-neutral"> </span>
|
|
482
506
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -484,47 +508,40 @@
|
|
|
484
508
|
<span class="cline-any cline-neutral"> </span>
|
|
485
509
|
<span class="cline-any cline-neutral"> </span>
|
|
486
510
|
<span class="cline-any cline-neutral"> </span>
|
|
487
|
-
<span class="cline-any cline-yes">
|
|
511
|
+
<span class="cline-any cline-yes">4x</span>
|
|
488
512
|
<span class="cline-any cline-neutral"> </span>
|
|
489
513
|
<span class="cline-any cline-no"> </span>
|
|
490
514
|
<span class="cline-any cline-no"> </span>
|
|
491
515
|
<span class="cline-any cline-no"> </span>
|
|
492
516
|
<span class="cline-any cline-neutral"> </span>
|
|
493
517
|
<span class="cline-any cline-neutral"> </span>
|
|
494
|
-
<span class="cline-any cline-yes">
|
|
495
|
-
<span class="cline-any cline-neutral"> </span>
|
|
496
|
-
<span class="cline-any cline-yes">3x</span>
|
|
497
|
-
<span class="cline-any cline-no"> </span>
|
|
498
|
-
<span class="cline-any cline-neutral"> </span>
|
|
499
|
-
<span class="cline-any cline-yes">3x</span>
|
|
500
|
-
<span class="cline-any cline-yes">3x</span>
|
|
501
|
-
<span class="cline-any cline-yes">3x</span>
|
|
518
|
+
<span class="cline-any cline-yes">4x</span>
|
|
502
519
|
<span class="cline-any cline-neutral"> </span>
|
|
503
520
|
<span class="cline-any cline-neutral"> </span>
|
|
504
|
-
<span class="cline-any cline-yes">
|
|
505
|
-
<span class="cline-any cline-yes">
|
|
506
|
-
<span class="cline-any cline-yes">
|
|
507
|
-
<span class="cline-any cline-yes">
|
|
508
|
-
<span class="cline-any cline-yes">
|
|
521
|
+
<span class="cline-any cline-yes">34x</span>
|
|
522
|
+
<span class="cline-any cline-yes">67x</span>
|
|
523
|
+
<span class="cline-any cline-yes">67x</span>
|
|
524
|
+
<span class="cline-any cline-yes">67x</span>
|
|
525
|
+
<span class="cline-any cline-yes">67x</span>
|
|
509
526
|
<span class="cline-any cline-neutral"> </span>
|
|
510
|
-
<span class="cline-any cline-yes">
|
|
511
|
-
<span class="cline-any cline-yes">
|
|
527
|
+
<span class="cline-any cline-yes">67x</span>
|
|
528
|
+
<span class="cline-any cline-yes">67x</span>
|
|
512
529
|
<span class="cline-any cline-neutral"> </span>
|
|
513
530
|
<span class="cline-any cline-neutral"> </span>
|
|
514
531
|
<span class="cline-any cline-neutral"> </span>
|
|
515
|
-
<span class="cline-any cline-yes">
|
|
516
|
-
<span class="cline-any cline-yes">
|
|
517
|
-
<span class="cline-any cline-yes">
|
|
532
|
+
<span class="cline-any cline-yes">67x</span>
|
|
533
|
+
<span class="cline-any cline-yes">67x</span>
|
|
534
|
+
<span class="cline-any cline-yes">67x</span>
|
|
518
535
|
<span class="cline-any cline-neutral"> </span>
|
|
519
536
|
<span class="cline-any cline-neutral"> </span>
|
|
520
537
|
<span class="cline-any cline-neutral"> </span>
|
|
521
538
|
<span class="cline-any cline-neutral"> </span>
|
|
522
|
-
<span class="cline-any cline-yes">
|
|
539
|
+
<span class="cline-any cline-yes">67x</span>
|
|
523
540
|
<span class="cline-any cline-no"> </span>
|
|
524
541
|
<span class="cline-any cline-neutral"> </span>
|
|
525
542
|
<span class="cline-any cline-neutral"> </span>
|
|
526
543
|
<span class="cline-any cline-neutral"> </span>
|
|
527
|
-
<span class="cline-any cline-yes">
|
|
544
|
+
<span class="cline-any cline-yes">67x</span>
|
|
528
545
|
<span class="cline-any cline-neutral"> </span>
|
|
529
546
|
<span class="cline-any cline-neutral"> </span>
|
|
530
547
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -532,17 +549,10 @@
|
|
|
532
549
|
<span class="cline-any cline-neutral"> </span>
|
|
533
550
|
<span class="cline-any cline-neutral"> </span>
|
|
534
551
|
<span class="cline-any cline-neutral"> </span>
|
|
535
|
-
<span class="cline-any cline-yes">
|
|
536
|
-
<span class="cline-any cline-yes">67x</span>
|
|
552
|
+
<span class="cline-any cline-yes">66x</span>
|
|
537
553
|
<span class="cline-any cline-neutral"> </span>
|
|
538
|
-
<span class="cline-any cline-yes">67x</span>
|
|
539
|
-
<span class="cline-any cline-no"> </span>
|
|
540
554
|
<span class="cline-any cline-neutral"> </span>
|
|
541
|
-
<span class="cline-any cline-yes">
|
|
542
|
-
<span class="cline-any cline-yes">67x</span>
|
|
543
|
-
<span class="cline-any cline-neutral"> </span>
|
|
544
|
-
<span class="cline-any cline-neutral"> </span>
|
|
545
|
-
<span class="cline-any cline-yes">33x</span>
|
|
555
|
+
<span class="cline-any cline-yes">34x</span>
|
|
546
556
|
<span class="cline-any cline-yes">7x</span>
|
|
547
557
|
<span class="cline-any cline-yes">7x</span>
|
|
548
558
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -602,7 +612,7 @@
|
|
|
602
612
|
<span class="cline-any cline-yes">5x</span>
|
|
603
613
|
<span class="cline-any cline-neutral"> </span>
|
|
604
614
|
<span class="cline-any cline-neutral"> </span>
|
|
605
|
-
<span class="cline-any cline-yes">
|
|
615
|
+
<span class="cline-any cline-yes">34x</span>
|
|
606
616
|
<span class="cline-any cline-yes">5x</span>
|
|
607
617
|
<span class="cline-any cline-yes">5x</span>
|
|
608
618
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -622,7 +632,7 @@
|
|
|
622
632
|
<span class="cline-any cline-yes">5x</span>
|
|
623
633
|
<span class="cline-any cline-neutral"> </span>
|
|
624
634
|
<span class="cline-any cline-neutral"> </span>
|
|
625
|
-
<span class="cline-any cline-yes">
|
|
635
|
+
<span class="cline-any cline-yes">34x</span>
|
|
626
636
|
<span class="cline-any cline-yes">18x</span>
|
|
627
637
|
<span class="cline-any cline-yes">18x</span>
|
|
628
638
|
<span class="cline-any cline-yes">18x</span>
|
|
@@ -631,7 +641,7 @@
|
|
|
631
641
|
<span class="cline-any cline-yes">15x</span>
|
|
632
642
|
<span class="cline-any cline-neutral"> </span>
|
|
633
643
|
<span class="cline-any cline-neutral"> </span>
|
|
634
|
-
<span class="cline-any cline-yes">
|
|
644
|
+
<span class="cline-any cline-yes">34x</span>
|
|
635
645
|
<span class="cline-any cline-yes">3x</span>
|
|
636
646
|
<span class="cline-any cline-yes">3x</span>
|
|
637
647
|
<span class="cline-any cline-yes">3x</span>
|
|
@@ -642,6 +652,12 @@
|
|
|
642
652
|
<span class="cline-any cline-neutral"> </span>
|
|
643
653
|
<span class="cline-any cline-yes">2x</span>
|
|
644
654
|
<span class="cline-any cline-neutral"> </span>
|
|
655
|
+
<span class="cline-any cline-yes">2x</span>
|
|
656
|
+
<span class="cline-any cline-neutral"> </span>
|
|
657
|
+
<span class="cline-any cline-yes">2x</span>
|
|
658
|
+
<span class="cline-any cline-neutral"> </span>
|
|
659
|
+
<span class="cline-any cline-neutral"> </span>
|
|
660
|
+
<span class="cline-any cline-neutral"> </span>
|
|
645
661
|
<span class="cline-any cline-neutral"> </span>
|
|
646
662
|
<span class="cline-any cline-neutral"> </span>
|
|
647
663
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -654,19 +670,25 @@
|
|
|
654
670
|
<span class="cline-any cline-no"> </span>
|
|
655
671
|
<span class="cline-any cline-neutral"> </span>
|
|
656
672
|
<span class="cline-any cline-yes">2x</span>
|
|
657
|
-
<span class="cline-any cline-yes">2x</span>
|
|
658
673
|
<span class="cline-any cline-neutral"> </span>
|
|
674
|
+
<span class="cline-any cline-yes">2x</span>
|
|
659
675
|
<span class="cline-any cline-neutral"> </span>
|
|
660
676
|
<span class="cline-any cline-neutral"> </span>
|
|
661
|
-
<span class="cline-any cline-yes">
|
|
677
|
+
<span class="cline-any cline-yes">34x</span>
|
|
678
|
+
<span class="cline-any cline-yes">2x</span>
|
|
662
679
|
<span class="cline-any cline-yes">2x</span>
|
|
663
680
|
<span class="cline-any cline-yes">2x</span>
|
|
664
681
|
<span class="cline-any cline-yes">2x</span>
|
|
682
|
+
<span class="cline-any cline-yes">2x</span>
|
|
683
|
+
<span class="cline-any cline-neutral"> </span>
|
|
684
|
+
<span class="cline-any cline-neutral"> </span>
|
|
665
685
|
<span class="cline-any cline-neutral"> </span>
|
|
666
686
|
<span class="cline-any cline-yes">2x</span>
|
|
667
|
-
<span class="cline-any cline-yes">3x</span>
|
|
668
687
|
<span class="cline-any cline-neutral"> </span>
|
|
669
688
|
<span class="cline-any cline-neutral"> </span>
|
|
689
|
+
<span class="cline-any cline-yes">2x</span>
|
|
690
|
+
<span class="cline-any cline-yes">3x</span>
|
|
691
|
+
<span class="cline-any cline-neutral"> </span>
|
|
670
692
|
<span class="cline-any cline-neutral"> </span>
|
|
671
693
|
<span class="cline-any cline-neutral"> </span>
|
|
672
694
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -688,35 +710,35 @@
|
|
|
688
710
|
<span class="cline-any cline-yes">2x</span>
|
|
689
711
|
<span class="cline-any cline-neutral"> </span>
|
|
690
712
|
<span class="cline-any cline-neutral"> </span>
|
|
691
|
-
<span class="cline-any cline-yes">
|
|
692
|
-
<span class="cline-any cline-
|
|
693
|
-
<span class="cline-any cline-
|
|
694
|
-
<span class="cline-any cline-
|
|
695
|
-
<span class="cline-any cline-
|
|
696
|
-
<span class="cline-any cline-
|
|
697
|
-
<span class="cline-any cline-
|
|
713
|
+
<span class="cline-any cline-yes">34x</span>
|
|
714
|
+
<span class="cline-any cline-yes">1x</span>
|
|
715
|
+
<span class="cline-any cline-yes">1x</span>
|
|
716
|
+
<span class="cline-any cline-yes">1x</span>
|
|
717
|
+
<span class="cline-any cline-yes">1x</span>
|
|
718
|
+
<span class="cline-any cline-yes">1x</span>
|
|
719
|
+
<span class="cline-any cline-yes">1x</span>
|
|
698
720
|
<span class="cline-any cline-neutral"> </span>
|
|
699
721
|
<span class="cline-any cline-neutral"> </span>
|
|
700
|
-
<span class="cline-any cline-
|
|
722
|
+
<span class="cline-any cline-yes">1x</span>
|
|
701
723
|
<span class="cline-any cline-no"> </span>
|
|
702
724
|
<span class="cline-any cline-neutral"> </span>
|
|
703
|
-
<span class="cline-any cline-
|
|
725
|
+
<span class="cline-any cline-yes">1x</span>
|
|
704
726
|
<span class="cline-any cline-neutral"> </span>
|
|
705
727
|
<span class="cline-any cline-neutral"> </span>
|
|
706
728
|
<span class="cline-any cline-neutral"> </span>
|
|
707
|
-
<span class="cline-any cline-
|
|
729
|
+
<span class="cline-any cline-yes">1x</span>
|
|
708
730
|
<span class="cline-any cline-neutral"> </span>
|
|
709
|
-
<span class="cline-any cline-
|
|
731
|
+
<span class="cline-any cline-yes">1x</span>
|
|
710
732
|
<span class="cline-any cline-no"> </span>
|
|
711
733
|
<span class="cline-any cline-neutral"> </span>
|
|
712
|
-
<span class="cline-any cline-
|
|
713
|
-
<span class="cline-any cline-
|
|
734
|
+
<span class="cline-any cline-yes">1x</span>
|
|
735
|
+
<span class="cline-any cline-yes">1x</span>
|
|
714
736
|
<span class="cline-any cline-neutral"> </span>
|
|
715
737
|
<span class="cline-any cline-neutral"> </span>
|
|
716
|
-
<span class="cline-any cline-
|
|
738
|
+
<span class="cline-any cline-yes">1x</span>
|
|
717
739
|
<span class="cline-any cline-neutral"> </span>
|
|
718
740
|
<span class="cline-any cline-neutral"> </span>
|
|
719
|
-
<span class="cline-any cline-yes">
|
|
741
|
+
<span class="cline-any cline-yes">34x</span>
|
|
720
742
|
<span class="cline-any cline-yes">2x</span>
|
|
721
743
|
<span class="cline-any cline-neutral"> </span>
|
|
722
744
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -724,7 +746,7 @@
|
|
|
724
746
|
<span class="cline-any cline-neutral"> </span>
|
|
725
747
|
<span class="cline-any cline-neutral"> </span>
|
|
726
748
|
<span class="cline-any cline-neutral"> </span>
|
|
727
|
-
<span class="cline-any cline-yes">
|
|
749
|
+
<span class="cline-any cline-yes">34x</span>
|
|
728
750
|
<span class="cline-any cline-yes">1x</span>
|
|
729
751
|
<span class="cline-any cline-yes">1x</span>
|
|
730
752
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -792,6 +814,19 @@ const CALCULATION_TYPES = {
|
|
|
792
814
|
STATS: "stats",
|
|
793
815
|
}
|
|
794
816
|
|
|
817
|
+
async function storeResponse(ctx, db, row, oldTable, table) {
|
|
818
|
+
row.type = "row"
|
|
819
|
+
const response = await db.put(row)
|
|
820
|
+
// don't worry about rev, tables handle rev/lastID updates
|
|
821
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isEqual(oldTable, table)) {
|
|
822
|
+
<span class="cstat-no" title="statement not covered" > await db.put(table)</span>
|
|
823
|
+
}
|
|
824
|
+
row._rev = response.rev
|
|
825
|
+
// process the row before return, to include relationships
|
|
826
|
+
row = await outputProcessing(ctx, table, row, { squash: false })
|
|
827
|
+
return { row, table }
|
|
828
|
+
}
|
|
829
|
+
|
|
795
830
|
exports.patch = async ctx => {
|
|
796
831
|
const appId = ctx.appId
|
|
797
832
|
const db = new CouchDB(appId)
|
|
@@ -846,14 +881,7 @@ exports.patch = async ctx => {
|
|
|
846
881
|
<span class="cstat-no" title="statement not covered" > return { row: ctx.body, table }</span>
|
|
847
882
|
}
|
|
848
883
|
|
|
849
|
-
|
|
850
|
-
// don't worry about rev, tables handle rev/lastID updates
|
|
851
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isEqual(dbTable, table)) {
|
|
852
|
-
<span class="cstat-no" title="statement not covered" > await db.put(table)</span>
|
|
853
|
-
}
|
|
854
|
-
row._rev = response.rev
|
|
855
|
-
row.type = "row"
|
|
856
|
-
return { row, table }
|
|
884
|
+
return storeResponse(ctx, db, row, dbTable, table)
|
|
857
885
|
}
|
|
858
886
|
|
|
859
887
|
exports.save = async function (ctx) {
|
|
@@ -887,14 +915,7 @@ exports.save = async function (ctx) {
|
|
|
887
915
|
table,
|
|
888
916
|
})
|
|
889
917
|
|
|
890
|
-
row
|
|
891
|
-
const response = await db.put(row)
|
|
892
|
-
// don't worry about rev, tables handle rev/lastID updates
|
|
893
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!isEqual(dbTable, table)) {
|
|
894
|
-
<span class="cstat-no" title="statement not covered" > await db.put(table)</span>
|
|
895
|
-
}
|
|
896
|
-
row._rev = response.rev
|
|
897
|
-
return { row, table }
|
|
918
|
+
return storeResponse(ctx, db, row, dbTable, table)
|
|
898
919
|
}
|
|
899
920
|
|
|
900
921
|
exports.fetchView = async ctx => {
|
|
@@ -990,34 +1011,47 @@ exports.destroy = async function (ctx) {
|
|
|
990
1011
|
const appId = ctx.appId
|
|
991
1012
|
const db = new CouchDB(appId)
|
|
992
1013
|
const { _id, _rev } = ctx.request.body
|
|
993
|
-
|
|
1014
|
+
let row = await db.get(_id)
|
|
994
1015
|
|
|
995
1016
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (row.tableId !== ctx.params.tableId) {
|
|
996
1017
|
<span class="cstat-no" title="statement not covered" > throw "Supplied tableId doesn't match the row's tableId"</span>
|
|
997
1018
|
}
|
|
1019
|
+
const table = await db.get(row.tableId)
|
|
1020
|
+
// update the row to include full relationships before deleting them
|
|
1021
|
+
row = await outputProcessing(ctx, table, row, { squash: false })
|
|
1022
|
+
// now remove the relationships
|
|
998
1023
|
await linkRows.updateLinks({
|
|
999
1024
|
appId,
|
|
1000
1025
|
eventType: linkRows.EventType.ROW_DELETE,
|
|
1001
1026
|
row,
|
|
1002
1027
|
tableId: row.tableId,
|
|
1003
1028
|
})
|
|
1029
|
+
|
|
1030
|
+
let response
|
|
1004
1031
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.params.tableId === InternalTables.USER_METADATA) {
|
|
1005
1032
|
<span class="cstat-no" title="statement not covered" > ctx.params = {</span>
|
|
1006
1033
|
id: _id,
|
|
1007
1034
|
}
|
|
1008
1035
|
<span class="cstat-no" title="statement not covered" > await userController.destroyMetadata(ctx)</span>
|
|
1009
|
-
<span class="cstat-no" title="statement not covered" >
|
|
1036
|
+
<span class="cstat-no" title="statement not covered" > response = ctx.body</span>
|
|
1010
1037
|
} else {
|
|
1011
|
-
|
|
1012
|
-
return { response, row }
|
|
1038
|
+
response = await db.remove(_id, _rev)
|
|
1013
1039
|
}
|
|
1040
|
+
return { response, row }
|
|
1014
1041
|
}
|
|
1015
1042
|
|
|
1016
1043
|
exports.bulkDestroy = async ctx => {
|
|
1017
1044
|
const appId = ctx.appId
|
|
1018
|
-
const { rows } = ctx.request.body
|
|
1019
1045
|
const db = new CouchDB(appId)
|
|
1046
|
+
const tableId = ctx.params.tableId
|
|
1047
|
+
const table = await db.get(tableId)
|
|
1048
|
+
let { rows } = ctx.request.body
|
|
1020
1049
|
|
|
1050
|
+
// before carrying out any updates, make sure the rows are ready to be returned
|
|
1051
|
+
// they need to be the full rows (including previous relationships) for automations
|
|
1052
|
+
rows = await outputProcessing(ctx, table, rows, { squash: false })
|
|
1053
|
+
|
|
1054
|
+
// remove the relationships first
|
|
1021
1055
|
let updates = rows.map(row =>
|
|
1022
1056
|
linkRows.updateLinks({
|
|
1023
1057
|
appId,
|
|
@@ -1026,8 +1060,7 @@ exports.bulkDestroy = async ctx => {
|
|
|
1026
1060
|
tableId: row.tableId,
|
|
1027
1061
|
})
|
|
1028
1062
|
)
|
|
1029
|
-
|
|
1030
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.params.tableId === InternalTables.USER_METADATA) {
|
|
1063
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1031
1064
|
<span class="cstat-no" title="statement not covered" > updates = updates.concat(</span>
|
|
1032
1065
|
rows.map(<span class="fstat-no" title="function not covered" >ro</span>w => {
|
|
1033
1066
|
<span class="cstat-no" title="statement not covered" > ctx.params = {</span>
|
|
@@ -1043,32 +1076,32 @@ exports.bulkDestroy = async ctx => {
|
|
|
1043
1076
|
return { response: { ok: true }, rows }
|
|
1044
1077
|
}
|
|
1045
1078
|
|
|
1046
|
-
exports.search =
|
|
1047
|
-
const appId =
|
|
1048
|
-
const { tableId } =
|
|
1049
|
-
const db =
|
|
1050
|
-
const { paginate, query, ...params } =
|
|
1051
|
-
|
|
1052
|
-
|
|
1079
|
+
exports.search = async ctx => {
|
|
1080
|
+
const appId = ctx.appId
|
|
1081
|
+
const { tableId } = ctx.params
|
|
1082
|
+
const db = new CouchDB(appId)
|
|
1083
|
+
const { paginate, query, ...params } = ctx.request.body
|
|
1084
|
+
params.version = ctx.version
|
|
1085
|
+
params.tableId = tableId
|
|
1053
1086
|
|
|
1054
1087
|
let response
|
|
1055
|
-
<span class="
|
|
1088
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (paginate) {
|
|
1056
1089
|
<span class="cstat-no" title="statement not covered" > response = await paginatedSearch(appId, query, params)</span>
|
|
1057
1090
|
} else {
|
|
1058
|
-
|
|
1091
|
+
response = await fullSearch(appId, query, params)
|
|
1059
1092
|
}
|
|
1060
1093
|
|
|
1061
1094
|
// Enrich search results with relationships
|
|
1062
|
-
<span class="
|
|
1095
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (response.rows && response.rows.length) {
|
|
1063
1096
|
// enrich with global users if from users table
|
|
1064
|
-
<span class="
|
|
1097
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (tableId === InternalTables.USER_METADATA) {
|
|
1065
1098
|
<span class="cstat-no" title="statement not covered" > response.rows = await getGlobalUsersFromMetadata(appId, response.rows)</span>
|
|
1066
1099
|
}
|
|
1067
|
-
const table =
|
|
1068
|
-
|
|
1100
|
+
const table = await db.get(tableId)
|
|
1101
|
+
response.rows = await outputProcessing(ctx, table, response.rows)
|
|
1069
1102
|
}
|
|
1070
1103
|
|
|
1071
|
-
|
|
1104
|
+
return response
|
|
1072
1105
|
}
|
|
1073
1106
|
|
|
1074
1107
|
exports.validate = async ctx => {
|
|
@@ -1129,7 +1162,7 @@ exports.fetchEnrichedRow = async ctx => {
|
|
|
1129
1162
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1130
1163
|
Code coverage generated by
|
|
1131
1164
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1132
|
-
at
|
|
1165
|
+
at Wed Sep 22 2021 10:50:28 GMT+0000 (Coordinated Universal Time)
|
|
1133
1166
|
</div>
|
|
1134
1167
|
</div>
|
|
1135
1168
|
<script src="../../../prettify.js"></script>
|