@budibase/server 0.9.184 → 0.9.185-alpha.11
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/Dockerfile +1 -1
- package/__mocks__/mssql.ts +1 -1
- package/__mocks__/pg.ts +3 -0
- package/builder/assets/bb-space-man.5be51a45.svg +290 -0
- package/builder/assets/index.053c6f7a.js +1321 -0
- package/builder/assets/index.4a7c5636.css +1 -0
- package/builder/assets/vendor.470042a4.js +152 -0
- package/builder/assets/vendor.5e1fe644.css +1 -0
- package/builder/index.html +4 -4
- package/coverage/clover.xml +1357 -959
- package/coverage/coverage-final.json +91 -87
- package/coverage/lcov-report/api/controllers/analytics.js.html +2 -2
- package/coverage/lcov-report/api/controllers/apikeys.js.html +2 -2
- package/coverage/lcov-report/api/controllers/application.js.html +65 -14
- package/coverage/lcov-report/api/controllers/auth.js.html +19 -10
- package/coverage/lcov-report/api/controllers/automation.js.html +3 -3
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
- package/coverage/lcov-report/api/controllers/component.js.html +4 -4
- package/coverage/lcov-report/api/controllers/datasource.js.html +147 -27
- package/coverage/lcov-report/api/controllers/dev.js.html +16 -7
- package/coverage/lcov-report/api/controllers/hosting.js.html +10 -10
- package/coverage/lcov-report/api/controllers/index.html +90 -90
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +3 -3
- package/coverage/lcov-report/api/controllers/metadata.js.html +3 -3
- package/coverage/lcov-report/api/controllers/permission.js.html +3 -3
- package/coverage/lcov-report/api/controllers/query.js.html +53 -209
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +3 -3
- package/coverage/lcov-report/api/controllers/row/external.js.html +12 -6
- package/coverage/lcov-report/api/controllers/row/index.html +26 -26
- package/coverage/lcov-report/api/controllers/row/index.js.html +2 -2
- package/coverage/lcov-report/api/controllers/row/internal.js.html +9 -9
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +2 -2
- package/coverage/lcov-report/api/controllers/row/utils.js.html +21 -30
- package/coverage/lcov-report/api/controllers/screen.js.html +2 -2
- package/coverage/lcov-report/api/controllers/script.js.html +3 -3
- package/coverage/lcov-report/api/controllers/table/external.js.html +980 -0
- package/coverage/lcov-report/api/controllers/table/index.html +56 -26
- package/coverage/lcov-report/api/controllers/table/index.js.html +80 -350
- package/coverage/lcov-report/api/controllers/table/internal.js.html +545 -0
- package/coverage/lcov-report/api/controllers/table/utils.js.html +172 -49
- package/coverage/lcov-report/api/controllers/templates.js.html +4 -4
- package/coverage/lcov-report/api/controllers/user.js.html +390 -33
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +9 -9
- package/coverage/lcov-report/api/controllers/view/index.js.html +5 -5
- package/coverage/lcov-report/api/controllers/view/utils.js.html +11 -11
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +3 -3
- package/coverage/lcov-report/api/controllers/webhook.js.html +4 -4
- 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 +2 -2
- package/coverage/lcov-report/api/routes/hosting.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +4 -4
- 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 +5 -2
- 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 +2 -2
- package/coverage/lcov-report/api/routes/table.js.html +35 -2
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +17 -2
- 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 +2 -2
- package/coverage/lcov-report/automations/automationUtils.js.html +3 -3
- package/coverage/lcov-report/automations/bullboard.js.html +71 -20
- package/coverage/lcov-report/automations/index.html +33 -48
- package/coverage/lcov-report/automations/index.js.html +2 -2
- package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
- 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 +3 -3
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +3 -3
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +14 -14
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +3 -3
- package/coverage/lcov-report/automations/steps/queryRows.js.html +3 -3
- 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 +1 -1
- package/coverage/lcov-report/automations/steps/utils.js.html +7 -7
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
- package/coverage/lcov-report/automations/triggers.js.html +22 -10
- package/coverage/lcov-report/automations/utils.js.html +42 -12
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +49 -4
- 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 +2 -2
- package/coverage/lcov-report/db/inMemoryView.js.html +2 -2
- package/coverage/lcov-report/db/index.html +2 -2
- package/coverage/lcov-report/db/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +6 -6
- package/coverage/lcov-report/db/linkedRows/index.html +10 -10
- package/coverage/lcov-report/db/linkedRows/index.js.html +5 -5
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +6 -6
- package/coverage/lcov-report/db/newid.js.html +1 -1
- package/coverage/lcov-report/db/utils.js.html +1 -1
- package/coverage/lcov-report/events/AutomationEmitter.js.html +6 -6
- package/coverage/lcov-report/events/index.html +6 -6
- package/coverage/lcov-report/events/index.js.html +1 -1
- package/coverage/lcov-report/events/utils.js.html +5 -5
- package/coverage/lcov-report/index.html +98 -83
- 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 +2 -2
- package/coverage/lcov-report/middleware/authorized.js.html +11 -8
- package/coverage/lcov-report/middleware/builder.js.html +16 -7
- package/coverage/lcov-report/middleware/currentapp.js.html +6 -6
- package/coverage/lcov-report/middleware/index.html +23 -23
- package/coverage/lcov-report/middleware/joi-validator.js.html +2 -2
- package/coverage/lcov-report/middleware/resourceId.js.html +18 -18
- package/coverage/lcov-report/middleware/selfhost.js.html +2 -2
- package/coverage/lcov-report/middleware/usageQuota.js.html +4 -4
- package/coverage/lcov-report/middleware/utils.js.html +1 -1
- package/coverage/lcov-report/{automations/thread.js.html → threads/automation.js.html} +83 -32
- package/coverage/lcov-report/threads/index.html +141 -0
- package/coverage/lcov-report/threads/index.js.html +260 -0
- package/coverage/lcov-report/threads/query.js.html +269 -0
- 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 +144 -15
- package/coverage/lcov-report/utilities/global.js.html +26 -11
- package/coverage/lcov-report/utilities/index.html +49 -49
- package/coverage/lcov-report/utilities/index.js.html +65 -17
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +30 -9
- package/coverage/lcov-report/utilities/queue/index.html +14 -14
- 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 +4 -4
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +2 -2
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +3 -3
- package/coverage/lcov-report/utilities/scriptRunner.js.html +16 -7
- package/coverage/lcov-report/utilities/security.js.html +3 -3
- 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 +5 -5
- package/coverage/lcov.info +2301 -1599
- package/dist/api/controllers/application.js +16 -2
- package/dist/api/controllers/auth.js +3 -3
- package/dist/api/controllers/datasource.js +47 -16
- package/dist/api/controllers/deploy/index.js +2 -0
- package/dist/api/controllers/dev.js +4 -1
- package/dist/api/controllers/query.js +30 -58
- package/dist/api/controllers/row/ExternalRequest.js +37 -14
- package/dist/api/controllers/row/external.js +1 -0
- package/dist/api/controllers/row/utils.js +6 -12
- package/dist/api/controllers/static/index.js +1 -1
- package/dist/api/controllers/table/external.js +242 -0
- package/dist/api/controllers/table/index.js +49 -123
- package/dist/api/controllers/table/internal.js +150 -0
- package/dist/api/controllers/table/utils.js +62 -28
- package/dist/api/controllers/user.js +123 -11
- package/dist/api/routes/query.js +1 -1
- package/dist/api/routes/table.js +7 -1
- package/dist/api/routes/user.js +2 -1
- package/dist/app.js +2 -11
- package/dist/automations/bullboard.js +37 -10
- package/dist/automations/triggers.js +7 -3
- package/dist/automations/utils.js +11 -2
- package/dist/constants/index.js +13 -0
- package/dist/definitions/datasource.js +4 -0
- package/dist/integrations/base/IntegrationBase.js +2 -0
- package/dist/integrations/base/datasourcePlus.js +2 -0
- package/dist/integrations/base/sql.js +334 -180
- package/dist/integrations/base/sqlTable.js +143 -0
- package/dist/integrations/base/utils.js +30 -0
- package/dist/integrations/microsoftSqlServer.js +117 -9
- package/dist/integrations/mysql.js +14 -84
- package/dist/integrations/postgres.js +35 -28
- package/dist/integrations/utils.js +56 -9
- package/dist/middleware/authorized.js +2 -1
- package/dist/middleware/builder.js +4 -1
- package/dist/package.json +7 -6
- package/dist/tests/utilities/TestConfiguration.js +2 -1
- package/dist/{automations/thread.js → threads/automation.js} +23 -7
- package/dist/threads/index.js +58 -0
- package/dist/threads/query.js +61 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/csvParser.js +46 -5
- package/dist/utilities/global.js +6 -2
- package/dist/utilities/index.js +18 -2
- package/dist/utilities/queue/inMemoryQueue.js +8 -0
- package/dist/utilities/scriptRunner.js +4 -1
- package/package.json +8 -7
- package/scripts/integrations/mssql/data/Dockerfile +9 -0
- package/scripts/integrations/mssql/data/entrypoint.sh +24 -0
- package/scripts/integrations/mssql/data/setup.sql +54 -0
- package/scripts/integrations/mssql/docker-compose.yaml +12 -0
- package/scripts/integrations/mssql/reset.sh +3 -0
- package/scripts/likeCypress.ts +33 -0
- package/src/api/controllers/application.js +19 -2
- package/src/api/controllers/auth.js +3 -0
- package/src/api/controllers/datasource.js +56 -16
- package/src/api/controllers/deploy/index.js +2 -0
- package/src/api/controllers/dev.js +4 -1
- package/src/api/controllers/query.js +29 -81
- package/src/api/controllers/row/ExternalRequest.ts +47 -16
- package/src/api/controllers/row/external.js +2 -0
- package/src/api/controllers/row/utils.js +8 -11
- package/src/api/controllers/static/index.js +1 -1
- package/src/api/controllers/table/external.js +300 -0
- package/src/api/controllers/table/index.js +47 -137
- package/src/api/controllers/table/internal.js +155 -0
- package/src/api/controllers/table/utils.js +74 -33
- package/src/api/controllers/user.js +132 -13
- package/src/api/routes/query.js +1 -0
- package/src/api/routes/table.js +11 -0
- package/src/api/routes/tests/datasource.spec.js +2 -2
- package/src/api/routes/tests/misc.spec.js +5 -1
- package/src/api/routes/tests/query.spec.js +0 -1
- package/src/api/routes/user.js +5 -0
- package/src/app.ts +2 -10
- package/src/automations/bullboard.js +28 -11
- package/src/automations/tests/automation.spec.js +3 -4
- package/src/automations/triggers.js +7 -3
- package/src/automations/utils.js +12 -2
- package/src/constants/index.js +15 -0
- package/src/definitions/common.ts +7 -1
- package/src/definitions/datasource.ts +9 -3
- package/src/integrations/airtable.ts +2 -1
- package/src/integrations/arangodb.ts +2 -1
- package/src/integrations/base/IntegrationBase.ts +6 -0
- package/src/integrations/base/datasourcePlus.ts +9 -0
- package/src/integrations/base/sql.ts +359 -222
- package/src/integrations/base/sqlTable.ts +180 -0
- package/src/integrations/base/utils.ts +22 -0
- package/src/integrations/couchdb.ts +2 -1
- package/src/integrations/dynamodb.ts +2 -1
- package/src/integrations/elasticsearch.ts +2 -1
- package/src/integrations/microsoftSqlServer.ts +145 -13
- package/src/integrations/mongodb.ts +2 -1
- package/src/integrations/mysql.ts +20 -94
- package/src/integrations/postgres.ts +45 -35
- package/src/integrations/rest.ts +2 -1
- package/src/integrations/s3.ts +2 -1
- package/src/integrations/tests/microsoftSqlServer.spec.js +22 -15
- package/src/integrations/tests/postgres.spec.js +4 -0
- package/src/integrations/utils.ts +60 -8
- package/src/middleware/authorized.js +2 -1
- package/src/middleware/builder.js +4 -1
- package/src/tests/utilities/TestConfiguration.js +2 -1
- package/src/{automations/thread.js → threads/automation.js} +24 -7
- package/src/threads/index.js +60 -0
- package/src/threads/query.js +63 -0
- package/src/utilities/csvParser.js +48 -5
- package/src/utilities/global.js +7 -2
- package/src/utilities/index.js +18 -2
- package/src/utilities/queue/inMemoryQueue.js +7 -0
- package/src/utilities/scriptRunner.js +4 -1
- package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -6
- package/src/utilities/tests/csvParser.spec.js +3 -0
- package/tsconfig.json +1 -1
- package/builder/assets/index.34964222.js +0 -201
- package/builder/assets/index.7469e1e4.css +0 -29
- package/builder/assets/vendor.278a305c.js +0 -9
- package/builder/assets/vendor.d75d5eb7.css +0 -1
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">79.
|
|
26
|
+
<span class="strong">79.1% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>53/67</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">80.
|
|
33
|
+
<span class="strong">80.55% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
35
|
<span class='fraction'>29/36</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">88.88% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>8/
|
|
42
|
+
<span class='fraction'>8/9</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">79.
|
|
47
|
+
<span class="strong">79.1% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>53/67</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -221,7 +221,17 @@
|
|
|
221
221
|
<a name='L162'></a><a href='#L162'>162</a>
|
|
222
222
|
<a name='L163'></a><a href='#L163'>163</a>
|
|
223
223
|
<a name='L164'></a><a href='#L164'>164</a>
|
|
224
|
-
<a name='L165'></a><a href='#L165'>165</a
|
|
224
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
225
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
226
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
227
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
228
|
+
<a name='L169'></a><a href='#L169'>169</a>
|
|
229
|
+
<a name='L170'></a><a href='#L170'>170</a>
|
|
230
|
+
<a name='L171'></a><a href='#L171'>171</a>
|
|
231
|
+
<a name='L172'></a><a href='#L172'>172</a>
|
|
232
|
+
<a name='L173'></a><a href='#L173'>173</a>
|
|
233
|
+
<a name='L174'></a><a href='#L174'>174</a>
|
|
234
|
+
<a name='L175'></a><a href='#L175'>175</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
|
|
225
235
|
<span class="cline-any cline-yes">33x</span>
|
|
226
236
|
<span class="cline-any cline-yes">33x</span>
|
|
227
237
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -233,6 +243,7 @@
|
|
|
233
243
|
<span class="cline-any cline-neutral"> </span>
|
|
234
244
|
<span class="cline-any cline-yes">33x</span>
|
|
235
245
|
<span class="cline-any cline-yes">33x</span>
|
|
246
|
+
<span class="cline-any cline-yes">33x</span>
|
|
236
247
|
<span class="cline-any cline-neutral"> </span>
|
|
237
248
|
<span class="cline-any cline-yes">33x</span>
|
|
238
249
|
<span class="cline-any cline-yes">10x</span>
|
|
@@ -385,7 +396,16 @@
|
|
|
385
396
|
<span class="cline-any cline-neutral"> </span>
|
|
386
397
|
<span class="cline-any cline-yes">23x</span>
|
|
387
398
|
<span class="cline-any cline-neutral"> </span>
|
|
388
|
-
<span class="cline-any cline-neutral"> </span
|
|
399
|
+
<span class="cline-any cline-neutral"> </span>
|
|
400
|
+
<span class="cline-any cline-neutral"> </span>
|
|
401
|
+
<span class="cline-any cline-neutral"> </span>
|
|
402
|
+
<span class="cline-any cline-neutral"> </span>
|
|
403
|
+
<span class="cline-any cline-neutral"> </span>
|
|
404
|
+
<span class="cline-any cline-neutral"> </span>
|
|
405
|
+
<span class="cline-any cline-yes">33x</span>
|
|
406
|
+
<span class="cline-any cline-no"> </span>
|
|
407
|
+
<span class="cline-any cline-neutral"> </span>
|
|
408
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const { Thread, ThreadType } = require("../threads")
|
|
389
409
|
const { definitions } = require("./triggerInfo")
|
|
390
410
|
const webhooks = require("../api/controllers/webhook")
|
|
391
411
|
const CouchDB = require("../db")
|
|
@@ -397,11 +417,12 @@ const { getDeployedAppID } = require("@budibase/auth/db")
|
|
|
397
417
|
|
|
398
418
|
const WH_STEP_ID = definitions.WEBHOOK.stepId
|
|
399
419
|
const CRON_STEP_ID = definitions.CRON.stepId
|
|
420
|
+
const Runner = new Thread(ThreadType.AUTOMATION)
|
|
400
421
|
|
|
401
422
|
exports.processEvent = async job => {
|
|
402
423
|
try {
|
|
403
424
|
// need to actually await these so that an error can be captured properly
|
|
404
|
-
return await
|
|
425
|
+
return await Runner.run(job)
|
|
405
426
|
} catch (err) {
|
|
406
427
|
<span class="cstat-no" title="statement not covered" > console.error(</span>
|
|
407
428
|
`${job.data.automation.appId} automation ${job.data.automation._id} was unable to run - ${err}`
|
|
@@ -511,7 +532,7 @@ exports.checkForWebhooks = async ({ appId, oldAuto, newAuto }) => {
|
|
|
511
532
|
params: { id: webhook._id, rev: webhook._rev },
|
|
512
533
|
}
|
|
513
534
|
// might be updating - reset the inputs to remove the URLs
|
|
514
|
-
|
|
535
|
+
if (newTrigger) {
|
|
515
536
|
delete newTrigger.webhookId
|
|
516
537
|
newTrigger.inputs = {}
|
|
517
538
|
}
|
|
@@ -549,6 +570,15 @@ exports.checkForWebhooks = async ({ appId, oldAuto, newAuto }) => {
|
|
|
549
570
|
}
|
|
550
571
|
return newAuto
|
|
551
572
|
}
|
|
573
|
+
|
|
574
|
+
/**
|
|
575
|
+
* When removing an app/unpublishing it need to make sure automations are cleaned up (cron).
|
|
576
|
+
* @param appId {string} the app that is being removed.
|
|
577
|
+
* @return {Promise<void>} clean is complete if this succeeds.
|
|
578
|
+
*/
|
|
579
|
+
exports.cleanupAutomations = <span class="fstat-no" title="function not covered" >as</span>ync appId => {
|
|
580
|
+
<span class="cstat-no" title="statement not covered" > await exports.disableAllCrons(appId)</span>
|
|
581
|
+
}
|
|
552
582
|
</pre></td></tr></table></pre>
|
|
553
583
|
|
|
554
584
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -556,7 +586,7 @@ exports.checkForWebhooks = async ({ appId, oldAuto, newAuto }) => {
|
|
|
556
586
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
557
587
|
Code coverage generated by
|
|
558
588
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
559
|
-
at
|
|
589
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
560
590
|
</div>
|
|
561
591
|
</div>
|
|
562
592
|
<script src="../prettify.js"></script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>28/28</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>27/27</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -78,13 +78,13 @@
|
|
|
78
78
|
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
79
79
|
</td>
|
|
80
80
|
<td data-value="100" class="pct high">100%</td>
|
|
81
|
-
<td data-value="
|
|
81
|
+
<td data-value="20" class="abs high">20/20</td>
|
|
82
82
|
<td data-value="100" class="pct high">100%</td>
|
|
83
83
|
<td data-value="0" class="abs high">0/0</td>
|
|
84
84
|
<td data-value="100" class="pct high">100%</td>
|
|
85
85
|
<td data-value="0" class="abs high">0/0</td>
|
|
86
86
|
<td data-value="100" class="pct high">100%</td>
|
|
87
|
-
<td data-value="
|
|
87
|
+
<td data-value="20" class="abs high">20/20</td>
|
|
88
88
|
</tr>
|
|
89
89
|
|
|
90
90
|
<tr>
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
129
129
|
</div>
|
|
130
130
|
</div>
|
|
131
131
|
<script src="../prettify.js"></script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>20/20</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>20/20</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -213,7 +213,22 @@
|
|
|
213
213
|
<a name='L154'></a><a href='#L154'>154</a>
|
|
214
214
|
<a name='L155'></a><a href='#L155'>155</a>
|
|
215
215
|
<a name='L156'></a><a href='#L156'>156</a>
|
|
216
|
-
<a name='L157'></a><a href='#L157'>157</a
|
|
216
|
+
<a name='L157'></a><a href='#L157'>157</a>
|
|
217
|
+
<a name='L158'></a><a href='#L158'>158</a>
|
|
218
|
+
<a name='L159'></a><a href='#L159'>159</a>
|
|
219
|
+
<a name='L160'></a><a href='#L160'>160</a>
|
|
220
|
+
<a name='L161'></a><a href='#L161'>161</a>
|
|
221
|
+
<a name='L162'></a><a href='#L162'>162</a>
|
|
222
|
+
<a name='L163'></a><a href='#L163'>163</a>
|
|
223
|
+
<a name='L164'></a><a href='#L164'>164</a>
|
|
224
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
225
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
226
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
227
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
228
|
+
<a name='L169'></a><a href='#L169'>169</a>
|
|
229
|
+
<a name='L170'></a><a href='#L170'>170</a>
|
|
230
|
+
<a name='L171'></a><a href='#L171'>171</a>
|
|
231
|
+
<a name='L172'></a><a href='#L172'>172</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">40x</span>
|
|
217
232
|
<span class="cline-any cline-yes">40x</span>
|
|
218
233
|
<span class="cline-any cline-yes">40x</span>
|
|
219
234
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -266,6 +281,13 @@
|
|
|
266
281
|
<span class="cline-any cline-neutral"> </span>
|
|
267
282
|
<span class="cline-any cline-neutral"> </span>
|
|
268
283
|
<span class="cline-any cline-neutral"> </span>
|
|
284
|
+
<span class="cline-any cline-neutral"> </span>
|
|
285
|
+
<span class="cline-any cline-yes">40x</span>
|
|
286
|
+
<span class="cline-any cline-neutral"> </span>
|
|
287
|
+
<span class="cline-any cline-neutral"> </span>
|
|
288
|
+
<span class="cline-any cline-neutral"> </span>
|
|
289
|
+
<span class="cline-any cline-neutral"> </span>
|
|
290
|
+
<span class="cline-any cline-neutral"> </span>
|
|
269
291
|
<span class="cline-any cline-yes">40x</span>
|
|
270
292
|
<span class="cline-any cline-neutral"> </span>
|
|
271
293
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -279,6 +301,10 @@
|
|
|
279
301
|
<span class="cline-any cline-neutral"> </span>
|
|
280
302
|
<span class="cline-any cline-neutral"> </span>
|
|
281
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>
|
|
282
308
|
<span class="cline-any cline-yes">40x</span>
|
|
283
309
|
<span class="cline-any cline-neutral"> </span>
|
|
284
310
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -367,6 +393,10 @@
|
|
|
367
393
|
<span class="cline-any cline-neutral"> </span>
|
|
368
394
|
<span class="cline-any cline-neutral"> </span>
|
|
369
395
|
<span class="cline-any cline-neutral"> </span>
|
|
396
|
+
<span class="cline-any cline-yes">40x</span>
|
|
397
|
+
<span class="cline-any cline-neutral"> </span>
|
|
398
|
+
<span class="cline-any cline-neutral"> </span>
|
|
399
|
+
<span class="cline-any cline-neutral"> </span>
|
|
370
400
|
<span class="cline-any cline-neutral"> </span>
|
|
371
401
|
<span class="cline-any cline-yes">40x</span>
|
|
372
402
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const { BUILTIN_ROLE_IDS } = require("@budibase/auth/roles")
|
|
@@ -416,6 +446,13 @@ exports.FieldTypes = {
|
|
|
416
446
|
INTERNAL: "internal",
|
|
417
447
|
}
|
|
418
448
|
|
|
449
|
+
exports.SwitchableTypes = [
|
|
450
|
+
exports.FieldTypes.STRING,
|
|
451
|
+
exports.FieldTypes.OPTIONS,
|
|
452
|
+
exports.FieldTypes.NUMBER,
|
|
453
|
+
exports.FieldTypes.BOOLEAN,
|
|
454
|
+
]
|
|
455
|
+
|
|
419
456
|
exports.RelationshipTypes = {
|
|
420
457
|
ONE_TO_MANY: "one-to-many",
|
|
421
458
|
MANY_TO_ONE: "many-to-one",
|
|
@@ -433,6 +470,10 @@ exports.DataSourceOperation = {
|
|
|
433
470
|
READ: "READ",
|
|
434
471
|
UPDATE: "UPDATE",
|
|
435
472
|
DELETE: "DELETE",
|
|
473
|
+
BULK_CREATE: "BULK_CREATE",
|
|
474
|
+
CREATE_TABLE: "CREATE_TABLE",
|
|
475
|
+
UPDATE_TABLE: "UPDATE_TABLE",
|
|
476
|
+
DELETE_TABLE: "DELETE_TABLE",
|
|
436
477
|
}
|
|
437
478
|
|
|
438
479
|
exports.SortDirection = {
|
|
@@ -523,6 +564,10 @@ exports.MetadataTypes = {
|
|
|
523
564
|
AUTOMATION_TEST_HISTORY: "automationTestHistory",
|
|
524
565
|
}
|
|
525
566
|
|
|
567
|
+
exports.BuildSchemaErrors = {
|
|
568
|
+
NO_KEY: "no_key",
|
|
569
|
+
}
|
|
570
|
+
|
|
526
571
|
// pass through the list from the auth/core lib
|
|
527
572
|
exports.ObjectStoreBuckets = ObjectStoreBuckets
|
|
528
573
|
</pre></td></tr></table></pre>
|
|
@@ -532,7 +577,7 @@ exports.ObjectStoreBuckets = ObjectStoreBuckets
|
|
|
532
577
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
533
578
|
Code coverage generated by
|
|
534
579
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
535
|
-
at
|
|
580
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
536
581
|
</div>
|
|
537
582
|
</div>
|
|
538
583
|
<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 Mon Nov 22 2021 10:23:31 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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
206
206
|
</div>
|
|
207
207
|
</div>
|
|
208
208
|
<script src="../prettify.js"></script>
|
|
@@ -136,7 +136,7 @@ let POUCH_DB_DEFAULTS = {
|
|
|
136
136
|
prefix: COUCH_DB_URL,
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
|
|
139
|
+
if (env.isTest()) {
|
|
140
140
|
PouchDB.plugin(require("pouchdb-adapter-memory"))
|
|
141
141
|
POUCH_DB_DEFAULTS = {
|
|
142
142
|
prefix: undefined,
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
161
161
|
</div>
|
|
162
162
|
</div>
|
|
163
163
|
<script src="../prettify.js"></script>
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">26.
|
|
47
|
+
<span class="strong">26.08% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
49
|
<span class='fraction'>6/23</span>
|
|
50
50
|
</div>
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
212
212
|
</div>
|
|
213
213
|
</div>
|
|
214
214
|
<script src="../prettify.js"></script>
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
<td data-value="8" class="abs low">0/8</td>
|
|
99
99
|
<td data-value="0" class="pct low">0%</td>
|
|
100
100
|
<td data-value="4" class="abs low">0/4</td>
|
|
101
|
-
<td data-value="26.
|
|
101
|
+
<td data-value="26.08" class="pct low">26.08%</td>
|
|
102
102
|
<td data-value="23" class="abs low">6/23</td>
|
|
103
103
|
</tr>
|
|
104
104
|
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
159
159
|
</div>
|
|
160
160
|
</div>
|
|
161
161
|
<script src="../prettify.js"></script>
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
77
77
|
</div>
|
|
78
78
|
</div>
|
|
79
79
|
<script src="../prettify.js"></script>
|
|
@@ -30,21 +30,21 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">88.
|
|
33
|
+
<span class="strong">88.23% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
35
|
<span class='fraction'>60/68</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">88.
|
|
40
|
+
<span class="strong">88.88% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
42
|
<span class='fraction'>24/27</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">96.
|
|
47
|
+
<span class="strong">96.68% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
49
|
<span class='fraction'>146/151</span>
|
|
50
50
|
</div>
|
|
@@ -1166,7 +1166,7 @@ class LinkController {
|
|
|
1166
1166
|
} else if (linkerField.relationshipType === RelationshipTypes.MANY_TO_ONE) {
|
|
1167
1167
|
// Ensure that the other side of the relationship is locked to one record
|
|
1168
1168
|
linkedField.relationshipType = RelationshipTypes.ONE_TO_MANY
|
|
1169
|
-
} else
|
|
1169
|
+
} else if (linkerField.relationshipType === RelationshipTypes.ONE_TO_MANY) {
|
|
1170
1170
|
linkedField.relationshipType = RelationshipTypes.MANY_TO_ONE
|
|
1171
1171
|
}
|
|
1172
1172
|
return { linkerField, linkedField }
|
|
@@ -1244,7 +1244,7 @@ class LinkController {
|
|
|
1244
1244
|
}
|
|
1245
1245
|
}
|
|
1246
1246
|
|
|
1247
|
-
|
|
1247
|
+
if (linkId && linkId !== "" && linkDocIds.indexOf(linkId) === -1) {
|
|
1248
1248
|
// first check the doc we're linking to exists
|
|
1249
1249
|
try {
|
|
1250
1250
|
await this._db.get(linkId)
|
|
@@ -1468,7 +1468,7 @@ module.exports = LinkController
|
|
|
1468
1468
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1469
1469
|
Code coverage generated by
|
|
1470
1470
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1471
|
-
at
|
|
1471
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
1472
1472
|
</div>
|
|
1473
1473
|
</div>
|
|
1474
1474
|
<script src="../../prettify.js"></script>
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">86.
|
|
33
|
+
<span class="strong">86.02% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
35
|
<span class='fraction'>117/136</span>
|
|
36
36
|
</div>
|
|
@@ -44,7 +44,7 @@
|
|
|
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
49
|
<span class='fraction'>290/300</span>
|
|
50
50
|
</div>
|
|
@@ -79,20 +79,20 @@
|
|
|
79
79
|
</td>
|
|
80
80
|
<td data-value="96.05" class="pct high">96.05%</td>
|
|
81
81
|
<td data-value="152" class="abs high">146/152</td>
|
|
82
|
-
<td data-value="88.
|
|
82
|
+
<td data-value="88.23" class="pct high">88.23%</td>
|
|
83
83
|
<td data-value="68" class="abs high">60/68</td>
|
|
84
|
-
<td data-value="88.
|
|
84
|
+
<td data-value="88.88" class="pct high">88.88%</td>
|
|
85
85
|
<td data-value="27" class="abs high">24/27</td>
|
|
86
|
-
<td data-value="96.
|
|
86
|
+
<td data-value="96.68" class="pct high">96.68%</td>
|
|
87
87
|
<td data-value="151" class="abs high">146/151</td>
|
|
88
88
|
</tr>
|
|
89
89
|
|
|
90
90
|
<tr>
|
|
91
91
|
<td class="file high" data-value="index.js"><a href="index.js.html">index.js</a></td>
|
|
92
|
-
<td data-value="96.
|
|
92
|
+
<td data-value="96.07" class="pic high">
|
|
93
93
|
<div class="chart"><div class="cover-fill" style="width: 96%"></div><div class="cover-empty" style="width: 4%"></div></div>
|
|
94
94
|
</td>
|
|
95
|
-
<td data-value="96.
|
|
95
|
+
<td data-value="96.07" class="pct high">96.07%</td>
|
|
96
96
|
<td data-value="102" class="abs high">98/102</td>
|
|
97
97
|
<td data-value="80.95" class="pct high">80.95%</td>
|
|
98
98
|
<td data-value="42" class="abs high">34/42</td>
|
|
@@ -104,10 +104,10 @@
|
|
|
104
104
|
|
|
105
105
|
<tr>
|
|
106
106
|
<td class="file high" data-value="linkUtils.js"><a href="linkUtils.js.html">linkUtils.js</a></td>
|
|
107
|
-
<td data-value="98.
|
|
107
|
+
<td data-value="98.24" class="pic high">
|
|
108
108
|
<div class="chart"><div class="cover-fill" style="width: 98%"></div><div class="cover-empty" style="width: 2%"></div></div>
|
|
109
109
|
</td>
|
|
110
|
-
<td data-value="98.
|
|
110
|
+
<td data-value="98.24" class="pct high">98.24%</td>
|
|
111
111
|
<td data-value="57" class="abs high">56/57</td>
|
|
112
112
|
<td data-value="88.46" class="pct high">88.46%</td>
|
|
113
113
|
<td data-value="26" class="abs high">23/26</td>
|
|
@@ -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 Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
129
129
|
</div>
|
|
130
130
|
</div>
|
|
131
131
|
<script src="../../prettify.js"></script>
|
|
@@ -23,7 +23,7 @@
|
|
|
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.07% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
28
|
<span class='fraction'>98/102</span>
|
|
29
29
|
</div>
|
|
@@ -681,11 +681,11 @@ exports.attachFullLinkedDocs = async (ctx, table, rows) => {
|
|
|
681
681
|
const linkedTables = []
|
|
682
682
|
for (let row of rows) {
|
|
683
683
|
for (let link of links.filter(link => link.thisId === row._id)) {
|
|
684
|
-
|
|
684
|
+
if (row[link.fieldName] == null) {
|
|
685
685
|
row[link.fieldName] = []
|
|
686
686
|
}
|
|
687
687
|
const linkedRow = linked.find(row => row._id === link.id)
|
|
688
|
-
|
|
688
|
+
if (linkedRow) {
|
|
689
689
|
const linkedTableId =
|
|
690
690
|
linkedRow.tableId || <span class="branch-1 cbranch-no" title="branch not covered" >getRelatedTableForField(table, link.fieldName)</span>
|
|
691
691
|
const linkedTable = await getLinkedTable(
|
|
@@ -693,7 +693,7 @@ exports.attachFullLinkedDocs = async (ctx, table, rows) => {
|
|
|
693
693
|
linkedTableId,
|
|
694
694
|
linkedTables
|
|
695
695
|
)
|
|
696
|
-
|
|
696
|
+
if (linkedTable) {
|
|
697
697
|
row[link.fieldName].push(processFormulas(linkedTable, linkedRow))
|
|
698
698
|
}
|
|
699
699
|
}
|
|
@@ -742,7 +742,7 @@ exports.squashLinksToPrimaryDisplay = async (appId, table, enriched) => {
|
|
|
742
742
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
743
743
|
Code coverage generated by
|
|
744
744
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
745
|
-
at
|
|
745
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
746
746
|
</div>
|
|
747
747
|
</div>
|
|
748
748
|
<script src="../../prettify.js"></script>
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">98.
|
|
26
|
+
<span class="strong">98.24% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
28
|
<span class='fraction'>56/57</span>
|
|
29
29
|
</div>
|
|
@@ -345,7 +345,7 @@ exports.getLinkDocuments = async function (args) {
|
|
|
345
345
|
return false
|
|
346
346
|
}
|
|
347
347
|
const unique = foundIds.indexOf(link.id) === -1
|
|
348
|
-
|
|
348
|
+
if (unique) {
|
|
349
349
|
foundIds.push(link.id)
|
|
350
350
|
}
|
|
351
351
|
return unique
|
|
@@ -358,10 +358,10 @@ exports.getLinkDocuments = async function (args) {
|
|
|
358
358
|
}
|
|
359
359
|
} catch (err) {
|
|
360
360
|
// check if the view doesn't exist, it should for all new instances
|
|
361
|
-
|
|
361
|
+
if (err != null && err.name === "not_found") {
|
|
362
362
|
await exports.createLinkView(appId)
|
|
363
363
|
return exports.getLinkDocuments(arguments[0])
|
|
364
|
-
} else {
|
|
364
|
+
} else <span class="missing-if-branch" title="else path not taken" >E</span>{
|
|
365
365
|
/* istanbul ignore next */
|
|
366
366
|
Sentry.captureException(err)
|
|
367
367
|
}
|
|
@@ -386,7 +386,7 @@ exports.getLinkedTable = async (db, id, tables) => {
|
|
|
386
386
|
return linkedTable
|
|
387
387
|
}
|
|
388
388
|
linkedTable = await db.get(id)
|
|
389
|
-
|
|
389
|
+
if (linkedTable) {
|
|
390
390
|
tables.push(linkedTable)
|
|
391
391
|
}
|
|
392
392
|
return linkedTable
|
|
@@ -412,7 +412,7 @@ exports.getRelatedTableForField = (table, fieldName) => {
|
|
|
412
412
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
413
413
|
Code coverage generated by
|
|
414
414
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
415
|
-
at
|
|
415
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
416
416
|
</div>
|
|
417
417
|
</div>
|
|
418
418
|
<script src="../../prettify.js"></script>
|
|
@@ -79,7 +79,7 @@ module.exports = function () {
|
|
|
79
79
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
80
80
|
Code coverage generated by
|
|
81
81
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
82
|
-
at
|
|
82
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
83
83
|
</div>
|
|
84
84
|
</div>
|
|
85
85
|
<script src="../prettify.js"></script>
|
|
@@ -1174,7 +1174,7 @@ exports.getMultiIDParams = ids => {
|
|
|
1174
1174
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1175
1175
|
Code coverage generated by
|
|
1176
1176
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1177
|
-
at
|
|
1177
|
+
at Mon Nov 22 2021 10:23:31 GMT+0000 (Coordinated Universal Time)
|
|
1178
1178
|
</div>
|
|
1179
1179
|
</div>
|
|
1180
1180
|
<script src="../prettify.js"></script>
|