@budibase/server 0.9.172 → 0.9.173-alpha.3
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__/{mysql.ts → mysql2.ts} +0 -0
- package/builder/assets/{index.dbc6728e.css → index.7469e1e4.css} +2 -2
- package/builder/assets/{index.9ab01cd4.js → index.b38aa4d6.js} +34 -34
- package/builder/assets/{vendor.54435e8f.js → vendor.278a305c.js} +1 -1
- package/builder/index.html +3 -3
- package/coverage/clover.xml +973 -849
- package/coverage/coverage-final.json +47 -46
- package/coverage/lcov-report/api/controllers/analytics.js.html +21 -9
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/application.js.html +186 -84
- package/coverage/lcov-report/api/controllers/auth.js.html +37 -10
- package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/backup.js.html +6 -9
- package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
- package/coverage/lcov-report/api/controllers/component.js.html +1 -1
- package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
- package/coverage/lcov-report/api/controllers/dev.js.html +41 -17
- package/coverage/lcov-report/api/controllers/hosting.js.html +1 -1
- package/coverage/lcov-report/api/controllers/index.html +71 -71
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
- package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +7 -4
- package/coverage/lcov-report/api/controllers/query.js.html +129 -24
- package/coverage/lcov-report/api/controllers/role.js.html +1 -1
- package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/index.html +5 -5
- package/coverage/lcov-report/api/controllers/row/index.js.html +15 -15
- package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/screen.js.html +9 -9
- package/coverage/lcov-report/api/controllers/script.js.html +12 -57
- package/coverage/lcov-report/api/controllers/table/index.html +28 -28
- package/coverage/lcov-report/api/controllers/table/index.js.html +16 -37
- package/coverage/lcov-report/api/controllers/table/utils.js.html +279 -33
- package/coverage/lcov-report/api/controllers/templates.js.html +49 -13
- package/coverage/lcov-report/api/controllers/user.js.html +3 -3
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +19 -19
- package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/utils.js.html +8 -8
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +54 -15
- package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +3 -3
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/application.js.html +5 -2
- 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 +26 -11
- package/coverage/lcov-report/api/routes/hosting.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +9 -9
- 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/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +9 -3
- 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 +31 -10
- package/coverage/lcov-report/automations/automationUtils.js.html +14 -86
- package/coverage/lcov-report/automations/bullboard.js.html +1 -1
- package/coverage/lcov-report/automations/index.html +37 -37
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +10 -7
- package/coverage/lcov-report/automations/steps/createRow.js.html +2 -2
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +8 -5
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +10 -7
- package/coverage/lcov-report/automations/steps/executeScript.js.html +10 -7
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +57 -57
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +10 -7
- package/coverage/lcov-report/automations/steps/queryRows.js.html +10 -7
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +10 -7
- 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 +14 -14
- package/coverage/lcov-report/automations/steps/utils.js.html +10 -10
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/thread.js.html +54 -12
- 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 +1 -1
- package/coverage/lcov-report/automations/utils.js.html +28 -28
- package/coverage/lcov-report/constants/index.html +1 -1
- package/coverage/lcov-report/constants/index.js.html +5 -2
- package/coverage/lcov-report/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/constants/screens.js.html +2 -2
- package/coverage/lcov-report/db/client.js.html +1 -1
- 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 +1 -1
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +12 -12
- package/coverage/lcov-report/db/linkedRows/index.html +18 -18
- package/coverage/lcov-report/db/linkedRows/index.js.html +47 -26
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
- package/coverage/lcov-report/db/newid.js.html +2 -2
- package/coverage/lcov-report/db/utils.js.html +17 -17
- 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 +107 -107
- 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 +2 -2
- package/coverage/lcov-report/middleware/builder.js.html +1 -1
- package/coverage/lcov-report/middleware/currentapp.js.html +52 -25
- package/coverage/lcov-report/middleware/index.html +15 -15
- 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 +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 +27 -27
- package/coverage/lcov-report/utilities/index.html +32 -17
- package/coverage/lcov-report/utilities/index.js.html +4 -4
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +29 -8
- package/coverage/lcov-report/utilities/queue/index.html +15 -15
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.html +14 -14
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +38 -8
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/scriptRunner.js.html +143 -0
- 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/users.js.html +1 -1
- package/coverage/lcov-report/utilities/workerRequests.js.html +19 -19
- package/coverage/lcov.info +1692 -1452
- package/dist/api/controllers/analytics.js +4 -0
- package/dist/api/controllers/application.js +185 -171
- package/dist/api/controllers/auth.js +12 -2
- package/dist/api/controllers/backup.js +4 -4
- package/dist/api/controllers/deploy/index.js +3 -16
- package/dist/api/controllers/dev.js +17 -11
- package/dist/api/controllers/permission.js +1 -0
- package/dist/api/controllers/query.js +26 -8
- package/dist/api/controllers/row/ExternalRequest.js +46 -5
- package/dist/api/controllers/script.js +4 -16
- package/dist/api/controllers/table/index.js +5 -10
- package/dist/api/controllers/table/utils.js +83 -10
- package/dist/api/controllers/templates.js +18 -3
- package/dist/api/controllers/view/viewBuilder.js +15 -1
- package/dist/api/routes/application.js +1 -0
- package/dist/api/routes/dev.js +8 -4
- package/dist/api/routes/query.js +3 -1
- package/dist/api/routes/tests/utilities/TestFunctions.js +7 -9
- package/dist/automations/actions.js +9 -3
- package/dist/automations/automationUtils.js +8 -29
- package/dist/automations/steps/bash.js +2 -1
- package/dist/automations/steps/createRow.js +1 -1
- package/dist/automations/steps/deleteRow.js +2 -1
- package/dist/automations/steps/executeQuery.js +2 -1
- package/dist/automations/steps/executeScript.js +2 -1
- package/dist/automations/steps/outgoingWebhook.js +2 -1
- package/dist/automations/steps/queryRows.js +2 -1
- package/dist/automations/steps/sendSmtpEmail.js +2 -1
- package/dist/automations/steps/updateRow.js +6 -2
- package/dist/automations/thread.js +14 -3
- package/dist/constants/index.js +1 -0
- package/dist/db/linkedRows/index.js +9 -6
- package/dist/integrations/base/sql.js +4 -4
- package/dist/integrations/mysql.js +1 -1
- package/dist/integrations/utils.js +17 -1
- package/dist/middleware/currentapp.js +8 -2
- package/dist/package.json +7 -6
- package/dist/tests/utilities/TestConfiguration.js +34 -19
- package/dist/tests/utilities/controllers.js +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/index.js +49 -33
- package/dist/utilities/global.js +1 -1
- package/dist/utilities/queue/inMemoryQueue.js +6 -0
- package/dist/utilities/rowProcessor/index.js +8 -0
- package/dist/utilities/scriptRunner.js +19 -0
- package/package.json +8 -7
- package/scripts/jestSetup.js +2 -0
- package/src/api/controllers/analytics.js +4 -0
- package/src/api/controllers/application.js +43 -9
- package/src/api/controllers/auth.js +12 -3
- package/src/api/controllers/backup.js +4 -5
- package/src/api/controllers/deploy/index.js +3 -18
- package/src/api/controllers/dev.js +16 -8
- package/src/api/controllers/permission.js +1 -0
- package/src/api/controllers/query.js +46 -11
- package/src/api/controllers/row/ExternalRequest.ts +53 -4
- package/src/api/controllers/script.js +4 -19
- package/src/api/controllers/table/index.js +5 -12
- package/src/api/controllers/table/utils.js +94 -12
- package/src/api/controllers/templates.js +17 -5
- package/src/api/controllers/view/tests/__snapshots__/viewBuilder.spec.js.snap +1 -1
- package/src/api/controllers/view/viewBuilder.js +14 -1
- package/src/api/routes/application.js +1 -0
- package/src/api/routes/dev.js +9 -4
- package/src/api/routes/query.js +3 -1
- package/src/api/routes/tests/auth.spec.js +1 -2
- package/src/api/routes/tests/permissions.spec.js +3 -0
- package/src/api/routes/tests/query.spec.js +2 -2
- package/src/api/routes/tests/routing.spec.js +24 -8
- package/src/api/routes/tests/user.spec.js +1 -1
- package/src/api/routes/tests/utilities/TestFunctions.js +7 -9
- package/src/api/routes/tests/webhook.spec.js +4 -1
- package/src/automations/actions.js +10 -3
- package/src/automations/automationUtils.js +7 -31
- package/src/automations/steps/bash.js +2 -1
- package/src/automations/steps/createRow.js +1 -1
- package/src/automations/steps/deleteRow.js +2 -1
- package/src/automations/steps/executeQuery.js +2 -1
- package/src/automations/steps/executeScript.js +2 -1
- package/src/automations/steps/outgoingWebhook.js +2 -1
- package/src/automations/steps/queryRows.js +2 -1
- package/src/automations/steps/sendSmtpEmail.js +2 -1
- package/src/automations/steps/updateRow.js +6 -6
- package/src/automations/thread.js +17 -3
- package/src/constants/index.js +1 -0
- package/src/db/linkedRows/index.js +14 -7
- package/src/integrations/base/sql.ts +11 -3
- package/src/integrations/mysql.ts +1 -1
- package/src/integrations/tests/mongo.spec.js +10 -6
- package/src/integrations/tests/mysql.spec.js +1 -1
- package/src/integrations/utils.ts +18 -0
- package/src/middleware/currentapp.js +11 -2
- package/src/middleware/tests/currentapp.spec.js +3 -3
- package/src/tests/utilities/TestConfiguration.js +47 -19
- package/src/tests/utilities/controllers.js +1 -0
- package/src/utilities/fileSystem/index.js +65 -43
- package/src/utilities/global.js +1 -1
- package/src/utilities/queue/inMemoryQueue.js +7 -0
- package/src/utilities/rowProcessor/index.js +10 -0
- package/src/utilities/scriptRunner.js +21 -0
|
@@ -202,7 +202,7 @@ exports.getMetadata = async ctx => {
|
|
|
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 Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
206
206
|
</div>
|
|
207
207
|
</div>
|
|
208
208
|
<script src="../../prettify.js"></script>
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">90.
|
|
33
|
+
<span class="strong">90.91% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>30/33</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -231,7 +231,8 @@
|
|
|
231
231
|
<a name='L172'></a><a href='#L172'>172</a>
|
|
232
232
|
<a name='L173'></a><a href='#L173'>173</a>
|
|
233
233
|
<a name='L174'></a><a href='#L174'>174</a>
|
|
234
|
-
<a name='L175'></a><a href='#L175'>175</a
|
|
234
|
+
<a name='L175'></a><a href='#L175'>175</a>
|
|
235
|
+
<a name='L176'></a><a href='#L176'>176</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
|
|
235
236
|
<span class="cline-any cline-neutral"> </span>
|
|
236
237
|
<span class="cline-any cline-neutral"> </span>
|
|
237
238
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -383,6 +384,7 @@
|
|
|
383
384
|
<span class="cline-any cline-neutral"> </span>
|
|
384
385
|
<span class="cline-any cline-neutral"> </span>
|
|
385
386
|
<span class="cline-any cline-neutral"> </span>
|
|
387
|
+
<span class="cline-any cline-neutral"> </span>
|
|
386
388
|
<span class="cline-any cline-yes">3x</span>
|
|
387
389
|
<span class="cline-any cline-neutral"> </span>
|
|
388
390
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -554,6 +556,7 @@ exports.getResourcePerms = async function (ctx) {
|
|
|
554
556
|
const rolePerms = role.permissions
|
|
555
557
|
if (
|
|
556
558
|
rolePerms &&
|
|
559
|
+
rolePerms[resourceId] &&
|
|
557
560
|
(rolePerms[resourceId] === level ||
|
|
558
561
|
rolePerms[resourceId].indexOf(level) !== -1)
|
|
559
562
|
) {
|
|
@@ -586,7 +589,7 @@ exports.removePermission = async function (ctx) {
|
|
|
586
589
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
587
590
|
Code coverage generated by
|
|
588
591
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
589
|
-
at
|
|
592
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
590
593
|
</div>
|
|
591
594
|
</div>
|
|
592
595
|
<script src="../../prettify.js"></script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">77.78% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>77/99</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">53.66% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>22/41</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">92.31% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>12/13</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">78.13% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>75/96</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -233,7 +233,43 @@
|
|
|
233
233
|
<a name='L174'></a><a href='#L174'>174</a>
|
|
234
234
|
<a name='L175'></a><a href='#L175'>175</a>
|
|
235
235
|
<a name='L176'></a><a href='#L176'>176</a>
|
|
236
|
-
<a name='L177'></a><a href='#L177'>177</a
|
|
236
|
+
<a name='L177'></a><a href='#L177'>177</a>
|
|
237
|
+
<a name='L178'></a><a href='#L178'>178</a>
|
|
238
|
+
<a name='L179'></a><a href='#L179'>179</a>
|
|
239
|
+
<a name='L180'></a><a href='#L180'>180</a>
|
|
240
|
+
<a name='L181'></a><a href='#L181'>181</a>
|
|
241
|
+
<a name='L182'></a><a href='#L182'>182</a>
|
|
242
|
+
<a name='L183'></a><a href='#L183'>183</a>
|
|
243
|
+
<a name='L184'></a><a href='#L184'>184</a>
|
|
244
|
+
<a name='L185'></a><a href='#L185'>185</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>
|
|
250
|
+
<a name='L191'></a><a href='#L191'>191</a>
|
|
251
|
+
<a name='L192'></a><a href='#L192'>192</a>
|
|
252
|
+
<a name='L193'></a><a href='#L193'>193</a>
|
|
253
|
+
<a name='L194'></a><a href='#L194'>194</a>
|
|
254
|
+
<a name='L195'></a><a href='#L195'>195</a>
|
|
255
|
+
<a name='L196'></a><a href='#L196'>196</a>
|
|
256
|
+
<a name='L197'></a><a href='#L197'>197</a>
|
|
257
|
+
<a name='L198'></a><a href='#L198'>198</a>
|
|
258
|
+
<a name='L199'></a><a href='#L199'>199</a>
|
|
259
|
+
<a name='L200'></a><a href='#L200'>200</a>
|
|
260
|
+
<a name='L201'></a><a href='#L201'>201</a>
|
|
261
|
+
<a name='L202'></a><a href='#L202'>202</a>
|
|
262
|
+
<a name='L203'></a><a href='#L203'>203</a>
|
|
263
|
+
<a name='L204'></a><a href='#L204'>204</a>
|
|
264
|
+
<a name='L205'></a><a href='#L205'>205</a>
|
|
265
|
+
<a name='L206'></a><a href='#L206'>206</a>
|
|
266
|
+
<a name='L207'></a><a href='#L207'>207</a>
|
|
267
|
+
<a name='L208'></a><a href='#L208'>208</a>
|
|
268
|
+
<a name='L209'></a><a href='#L209'>209</a>
|
|
269
|
+
<a name='L210'></a><a href='#L210'>210</a>
|
|
270
|
+
<a name='L211'></a><a href='#L211'>211</a>
|
|
271
|
+
<a name='L212'></a><a href='#L212'>212</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
|
|
272
|
+
<span class="cline-any cline-yes">34x</span>
|
|
237
273
|
<span class="cline-any cline-yes">34x</span>
|
|
238
274
|
<span class="cline-any cline-yes">34x</span>
|
|
239
275
|
<span class="cline-any cline-yes">34x</span>
|
|
@@ -264,8 +300,35 @@
|
|
|
264
300
|
<span class="cline-any cline-neutral"> </span>
|
|
265
301
|
<span class="cline-any cline-neutral"> </span>
|
|
266
302
|
<span class="cline-any cline-yes">2x</span>
|
|
303
|
+
<span class="cline-any cline-neutral"> </span>
|
|
304
|
+
<span class="cline-any cline-neutral"> </span>
|
|
305
|
+
<span class="cline-any cline-neutral"> </span>
|
|
306
|
+
<span class="cline-any cline-neutral"> </span>
|
|
307
|
+
<span class="cline-any cline-neutral"> </span>
|
|
308
|
+
<span class="cline-any cline-neutral"> </span>
|
|
309
|
+
<span class="cline-any cline-neutral"> </span>
|
|
310
|
+
<span class="cline-any cline-neutral"> </span>
|
|
311
|
+
<span class="cline-any cline-yes">2x</span>
|
|
312
|
+
<span class="cline-any cline-neutral"> </span>
|
|
313
|
+
<span class="cline-any cline-neutral"> </span>
|
|
314
|
+
<span class="cline-any cline-yes">2x</span>
|
|
315
|
+
<span class="cline-any cline-no"> </span>
|
|
316
|
+
<span class="cline-any cline-no"> </span>
|
|
317
|
+
<span class="cline-any cline-neutral"> </span>
|
|
318
|
+
<span class="cline-any cline-neutral"> </span>
|
|
319
|
+
<span class="cline-any cline-neutral"> </span>
|
|
320
|
+
<span class="cline-any cline-yes">2x</span>
|
|
321
|
+
<span class="cline-any cline-no"> </span>
|
|
322
|
+
<span class="cline-any cline-neutral"> </span>
|
|
323
|
+
<span class="cline-any cline-neutral"> </span>
|
|
324
|
+
<span class="cline-any cline-neutral"> </span>
|
|
325
|
+
<span class="cline-any cline-yes">2x</span>
|
|
267
326
|
<span class="cline-any cline-no"> </span>
|
|
268
327
|
<span class="cline-any cline-neutral"> </span>
|
|
328
|
+
<span class="cline-any cline-neutral"> </span>
|
|
329
|
+
<span class="cline-any cline-neutral"> </span>
|
|
330
|
+
<span class="cline-any cline-yes">2x</span>
|
|
331
|
+
<span class="cline-any cline-neutral"> </span>
|
|
269
332
|
<span class="cline-any cline-yes">2x</span>
|
|
270
333
|
<span class="cline-any cline-neutral"> </span>
|
|
271
334
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -358,14 +421,15 @@
|
|
|
358
421
|
<span class="cline-any cline-neutral"> </span>
|
|
359
422
|
<span class="cline-any cline-neutral"> </span>
|
|
360
423
|
<span class="cline-any cline-yes">1x</span>
|
|
361
|
-
<span class="cline-any cline-neutral"> </span>
|
|
362
424
|
<span class="cline-any cline-yes">1x</span>
|
|
363
|
-
<span class="cline-any cline-neutral"> </span>
|
|
364
425
|
<span class="cline-any cline-yes">1x</span>
|
|
426
|
+
<span class="cline-any cline-neutral"> </span>
|
|
365
427
|
<span class="cline-any cline-yes">1x</span>
|
|
366
428
|
<span class="cline-any cline-neutral"> </span>
|
|
367
429
|
<span class="cline-any cline-neutral"> </span>
|
|
368
|
-
<span class="cline-any cline-
|
|
430
|
+
<span class="cline-any cline-neutral"> </span>
|
|
431
|
+
<span class="cline-any cline-neutral"> </span>
|
|
432
|
+
<span class="cline-any cline-neutral"> </span>
|
|
369
433
|
<span class="cline-any cline-neutral"> </span>
|
|
370
434
|
<span class="cline-any cline-yes">1x</span>
|
|
371
435
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -393,9 +457,15 @@
|
|
|
393
457
|
<span class="cline-any cline-neutral"> </span>
|
|
394
458
|
<span class="cline-any cline-neutral"> </span>
|
|
395
459
|
<span class="cline-any cline-neutral"> </span>
|
|
460
|
+
<span class="cline-any cline-yes">1x</span>
|
|
461
|
+
<span class="cline-any cline-neutral"> </span>
|
|
396
462
|
<span class="cline-any cline-neutral"> </span>
|
|
397
463
|
<span class="cline-any cline-yes">1x</span>
|
|
398
464
|
<span class="cline-any cline-neutral"> </span>
|
|
465
|
+
<span class="cline-any cline-neutral"> </span>
|
|
466
|
+
<span class="cline-any cline-neutral"> </span>
|
|
467
|
+
<span class="cline-any cline-neutral"> </span>
|
|
468
|
+
<span class="cline-any cline-neutral"> </span>
|
|
399
469
|
<span class="cline-any cline-yes">1x</span>
|
|
400
470
|
<span class="cline-any cline-neutral"> </span>
|
|
401
471
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -415,6 +485,7 @@ const { generateQueryID, getQueryParams } = require("../../db/utils")
|
|
|
415
485
|
const { integrations } = require("../../integrations")
|
|
416
486
|
const { BaseQueryVerbs } = require("../../constants")
|
|
417
487
|
const env = require("../../environment")
|
|
488
|
+
const ScriptRunner = require("../../utilities/scriptRunner")
|
|
418
489
|
|
|
419
490
|
// simple function to append "readable" to all read queries
|
|
420
491
|
function enrichQueries(input) {
|
|
@@ -439,12 +510,39 @@ function formatResponse(resp) {
|
|
|
439
510
|
<span class="cstat-no" title="statement not covered" > resp = { response: resp }</span>
|
|
440
511
|
}
|
|
441
512
|
}
|
|
442
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Array.isArray(resp)) {
|
|
443
|
-
<span class="cstat-no" title="statement not covered" > resp = [resp]</span>
|
|
444
|
-
}
|
|
445
513
|
return resp
|
|
446
514
|
}
|
|
447
515
|
|
|
516
|
+
async function runAndTransform(
|
|
517
|
+
integration,
|
|
518
|
+
queryVerb,
|
|
519
|
+
enrichedQuery,
|
|
520
|
+
transformer
|
|
521
|
+
) {
|
|
522
|
+
let rows = formatResponse(await integration[queryVerb](enrichedQuery))
|
|
523
|
+
|
|
524
|
+
// transform as required
|
|
525
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (transformer) {
|
|
526
|
+
const runner = <span class="cstat-no" title="statement not covered" >new ScriptRunner(transformer, { data: rows })</span>
|
|
527
|
+
<span class="cstat-no" title="statement not covered" > rows = runner.execute()</span>
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
// needs to an array for next step
|
|
531
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Array.isArray(rows)) {
|
|
532
|
+
<span class="cstat-no" title="statement not covered" > rows = [rows]</span>
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
// map into JSON if just raw primitive here
|
|
536
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (rows.find(row => typeof row !== "object")) {
|
|
537
|
+
<span class="cstat-no" title="statement not covered" > rows = rows.map(<span class="fstat-no" title="function not covered" >va</span>lue => (<span class="cstat-no" title="statement not covered" >{ value })</span>)</span>
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
// get all the potential fields in the schema
|
|
541
|
+
let keys = rows.flatMap(Object.keys)
|
|
542
|
+
|
|
543
|
+
return { rows, keys }
|
|
544
|
+
}
|
|
545
|
+
|
|
448
546
|
exports.fetch = async function (ctx) {
|
|
449
547
|
const db = new CouchDB(ctx.appId)
|
|
450
548
|
|
|
@@ -533,15 +631,16 @@ exports.preview = async function (ctx) {
|
|
|
533
631
|
ctx.throw(400, "Integration type does not exist.")
|
|
534
632
|
}
|
|
535
633
|
|
|
536
|
-
const { fields, parameters, queryVerb } = ctx.request.body
|
|
537
|
-
|
|
634
|
+
const { fields, parameters, queryVerb, transformer } = ctx.request.body
|
|
538
635
|
const enrichedQuery = await enrichQueryFields(fields, parameters)
|
|
539
|
-
|
|
540
636
|
const integration = new Integration(datasource.config)
|
|
541
|
-
const rows = formatResponse(await integration[queryVerb](enrichedQuery))
|
|
542
637
|
|
|
543
|
-
|
|
544
|
-
|
|
638
|
+
const { rows, keys } = await runAndTransform(
|
|
639
|
+
integration,
|
|
640
|
+
queryVerb,
|
|
641
|
+
enrichedQuery,
|
|
642
|
+
transformer
|
|
643
|
+
)
|
|
545
644
|
|
|
546
645
|
ctx.body = {
|
|
547
646
|
rows,
|
|
@@ -569,10 +668,16 @@ exports.execute = async function (ctx) {
|
|
|
569
668
|
query.fields,
|
|
570
669
|
ctx.request.body.parameters
|
|
571
670
|
)
|
|
572
|
-
|
|
573
671
|
const integration = new Integration(datasource.config)
|
|
672
|
+
|
|
574
673
|
// call the relevant CRUD method on the integration class
|
|
575
|
-
|
|
674
|
+
const { rows } = await runAndTransform(
|
|
675
|
+
integration,
|
|
676
|
+
query.queryVerb,
|
|
677
|
+
enrichedQuery,
|
|
678
|
+
query.transformer
|
|
679
|
+
)
|
|
680
|
+
ctx.body = rows
|
|
576
681
|
// cleanup
|
|
577
682
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (integration.end) {
|
|
578
683
|
<span class="cstat-no" title="statement not covered" > integration.end()</span>
|
|
@@ -592,7 +697,7 @@ exports.destroy = async function (ctx) {
|
|
|
592
697
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
593
698
|
Code coverage generated by
|
|
594
699
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
595
|
-
at
|
|
700
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
596
701
|
</div>
|
|
597
702
|
</div>
|
|
598
703
|
<script src="../../prettify.js"></script>
|
|
@@ -358,7 +358,7 @@ exports.destroy = async function (ctx) {
|
|
|
358
358
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
359
359
|
Code coverage generated by
|
|
360
360
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
361
|
-
at
|
|
361
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
362
362
|
</div>
|
|
363
363
|
</div>
|
|
364
364
|
<script src="../../prettify.js"></script>
|
|
@@ -343,7 +343,7 @@ exports.clientFetch = async ctx => {
|
|
|
343
343
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
344
344
|
Code coverage generated by
|
|
345
345
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
346
|
-
at
|
|
346
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
347
347
|
</div>
|
|
348
348
|
</div>
|
|
349
349
|
<script src="../../prettify.js"></script>
|
|
@@ -748,7 +748,7 @@ exports.fetchEnrichedRow = <span class="fstat-no" title="function not covered" >
|
|
|
748
748
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
749
749
|
Code coverage generated by
|
|
750
750
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
751
|
-
at
|
|
751
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
752
752
|
</div>
|
|
753
753
|
</div>
|
|
754
754
|
<script src="../../../prettify.js"></script>
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">33.
|
|
33
|
+
<span class="strong">33.88% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>83/245</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -94,8 +94,8 @@
|
|
|
94
94
|
</td>
|
|
95
95
|
<td data-value="92.94" class="pct high">92.94%</td>
|
|
96
96
|
<td data-value="85" class="abs high">79/85</td>
|
|
97
|
-
<td data-value="
|
|
98
|
-
<td data-value="34" class="abs high">
|
|
97
|
+
<td data-value="94.12" class="pct high">94.12%</td>
|
|
98
|
+
<td data-value="34" class="abs high">32/34</td>
|
|
99
99
|
<td data-value="100" class="pct high">100%</td>
|
|
100
100
|
<td data-value="11" class="abs high">11/11</td>
|
|
101
101
|
<td data-value="92.94" class="pct high">92.94%</td>
|
|
@@ -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 Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
159
159
|
</div>
|
|
160
160
|
</div>
|
|
161
161
|
<script src="../../../prettify.js"></script>
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">94.12% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>32/34</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -201,41 +201,41 @@
|
|
|
201
201
|
<span class="cline-any cline-yes">34x</span>
|
|
202
202
|
<span class="cline-any cline-neutral"> </span>
|
|
203
203
|
<span class="cline-any cline-neutral"> </span>
|
|
204
|
-
<span class="cline-any cline-yes">
|
|
204
|
+
<span class="cline-any cline-yes">111x</span>
|
|
205
205
|
<span class="cline-any cline-no"> </span>
|
|
206
206
|
<span class="cline-any cline-neutral"> </span>
|
|
207
207
|
<span class="cline-any cline-yes">110x</span>
|
|
208
208
|
<span class="cline-any cline-neutral"> </span>
|
|
209
209
|
<span class="cline-any cline-neutral"> </span>
|
|
210
210
|
<span class="cline-any cline-neutral"> </span>
|
|
211
|
-
<span class="cline-any cline-yes">
|
|
211
|
+
<span class="cline-any cline-yes">113x</span>
|
|
212
212
|
<span class="cline-any cline-yes">73x</span>
|
|
213
213
|
<span class="cline-any cline-neutral"> </span>
|
|
214
|
-
<span class="cline-any cline-yes">
|
|
214
|
+
<span class="cline-any cline-yes">40x</span>
|
|
215
215
|
<span class="cline-any cline-yes">32x</span>
|
|
216
216
|
<span class="cline-any cline-neutral"> </span>
|
|
217
|
-
<span class="cline-any cline-yes">
|
|
217
|
+
<span class="cline-any cline-yes">8x</span>
|
|
218
218
|
<span class="cline-any cline-yes">7x</span>
|
|
219
219
|
<span class="cline-any cline-neutral"> </span>
|
|
220
220
|
<span class="cline-any cline-neutral"> </span>
|
|
221
221
|
<span class="cline-any cline-neutral"> </span>
|
|
222
222
|
<span class="cline-any cline-yes">34x</span>
|
|
223
|
-
<span class="cline-any cline-yes">
|
|
224
|
-
<span class="cline-any cline-yes">
|
|
225
|
-
<span class="cline-any cline-yes">
|
|
223
|
+
<span class="cline-any cline-yes">6x</span>
|
|
224
|
+
<span class="cline-any cline-yes">6x</span>
|
|
225
|
+
<span class="cline-any cline-yes">6x</span>
|
|
226
226
|
<span class="cline-any cline-neutral"> </span>
|
|
227
|
-
<span class="cline-any cline-yes">
|
|
227
|
+
<span class="cline-any cline-yes">6x</span>
|
|
228
228
|
<span class="cline-any cline-no"> </span>
|
|
229
229
|
<span class="cline-any cline-neutral"> </span>
|
|
230
|
-
<span class="cline-any cline-yes">
|
|
231
|
-
<span class="cline-any cline-yes">
|
|
230
|
+
<span class="cline-any cline-yes">6x</span>
|
|
231
|
+
<span class="cline-any cline-yes">6x</span>
|
|
232
232
|
<span class="cline-any cline-yes">4x</span>
|
|
233
233
|
<span class="cline-any cline-yes">4x</span>
|
|
234
234
|
<span class="cline-any cline-neutral"> </span>
|
|
235
235
|
<span class="cline-any cline-yes">4x</span>
|
|
236
236
|
<span class="cline-any cline-yes">4x</span>
|
|
237
237
|
<span class="cline-any cline-neutral"> </span>
|
|
238
|
-
<span class="cline-any cline-yes">
|
|
238
|
+
<span class="cline-any cline-yes">2x</span>
|
|
239
239
|
<span class="cline-any cline-neutral"> </span>
|
|
240
240
|
<span class="cline-any cline-neutral"> </span>
|
|
241
241
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -353,7 +353,7 @@ function getTableId(ctx) {
|
|
|
353
353
|
if (ctx.params && ctx.params.tableId) {
|
|
354
354
|
return ctx.params.tableId
|
|
355
355
|
}
|
|
356
|
-
|
|
356
|
+
if (ctx.params && ctx.params.viewName) {
|
|
357
357
|
return ctx.params.viewName
|
|
358
358
|
}
|
|
359
359
|
}
|
|
@@ -481,7 +481,7 @@ exports.fetchEnrichedRow = async function (ctx) {
|
|
|
481
481
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
482
482
|
Code coverage generated by
|
|
483
483
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
484
|
-
at
|
|
484
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
485
485
|
</div>
|
|
486
486
|
</div>
|
|
487
487
|
<script src="../../../prettify.js"></script>
|
|
@@ -1405,7 +1405,7 @@ exports.fetchEnrichedRow = async ctx => {
|
|
|
1405
1405
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1406
1406
|
Code coverage generated by
|
|
1407
1407
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1408
|
-
at
|
|
1408
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
1409
1409
|
</div>
|
|
1410
1410
|
</div>
|
|
1411
1411
|
<script src="../../../prettify.js"></script>
|
|
@@ -1228,7 +1228,7 @@ exports.fullSearch = <span class="fstat-no" title="function not covered" >as</sp
|
|
|
1228
1228
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1229
1229
|
Code coverage generated by
|
|
1230
1230
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1231
|
-
at
|
|
1231
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
1232
1232
|
</div>
|
|
1233
1233
|
</div>
|
|
1234
1234
|
<script src="../../../prettify.js"></script>
|
|
@@ -328,7 +328,7 @@ exports.validate = async ({ appId, tableId, row, table }) => {
|
|
|
328
328
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
329
329
|
Code coverage generated by
|
|
330
330
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
331
|
-
at
|
|
331
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
332
332
|
</div>
|
|
333
333
|
</div>
|
|
334
334
|
<script src="../../../prettify.js"></script>
|
|
@@ -128,17 +128,17 @@
|
|
|
128
128
|
<span class="cline-any cline-neutral"> </span>
|
|
129
129
|
<span class="cline-any cline-neutral"> </span>
|
|
130
130
|
<span class="cline-any cline-yes">33x</span>
|
|
131
|
-
<span class="cline-any cline-yes">
|
|
132
|
-
<span class="cline-any cline-yes">
|
|
133
|
-
<span class="cline-any cline-yes">
|
|
131
|
+
<span class="cline-any cline-yes">19x</span>
|
|
132
|
+
<span class="cline-any cline-yes">19x</span>
|
|
133
|
+
<span class="cline-any cline-yes">19x</span>
|
|
134
134
|
<span class="cline-any cline-neutral"> </span>
|
|
135
|
-
<span class="cline-any cline-yes">
|
|
136
|
-
<span class="cline-any cline-yes">
|
|
135
|
+
<span class="cline-any cline-yes">19x</span>
|
|
136
|
+
<span class="cline-any cline-yes">19x</span>
|
|
137
137
|
<span class="cline-any cline-neutral"> </span>
|
|
138
|
-
<span class="cline-any cline-yes">
|
|
138
|
+
<span class="cline-any cline-yes">19x</span>
|
|
139
139
|
<span class="cline-any cline-neutral"> </span>
|
|
140
|
-
<span class="cline-any cline-yes">
|
|
141
|
-
<span class="cline-any cline-yes">
|
|
140
|
+
<span class="cline-any cline-yes">19x</span>
|
|
141
|
+
<span class="cline-any cline-yes">19x</span>
|
|
142
142
|
<span class="cline-any cline-neutral"> </span>
|
|
143
143
|
<span class="cline-any cline-neutral"> </span>
|
|
144
144
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -208,7 +208,7 @@ exports.destroy = async ctx => {
|
|
|
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 Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
212
212
|
</div>
|
|
213
213
|
</div>
|
|
214
214
|
<script src="../../prettify.js"></script>
|