@budibase/server 1.0.123-alpha.1 → 1.0.124
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/{index.3a7314b2.js → index.5351a3fb.js} +2 -2
- package/builder/index.html +1 -1
- package/coverage/clover.xml +180 -158
- package/coverage/coverage-final.json +4 -4
- package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
- package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
- 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 +1 -1
- package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
- package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
- package/coverage/lcov-report/api/controllers/index.html +1 -1
- 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/migrations.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
- package/coverage/lcov-report/api/controllers/query/index.html +1 -1
- package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
- 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 +1 -1
- 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/staticFormula.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 +1 -1
- package/coverage/lcov-report/api/controllers/script.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
- 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 +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/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +1 -1
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.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/utils/index.html +1 -1
- package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +1 -1
- package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
- package/coverage/lcov-report/automations/bullboard.js.html +1 -1
- package/coverage/lcov-report/automations/index.html +1 -1
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
- package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/triggers.js.html +1 -1
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +28 -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/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 +9 -6
- package/coverage/lcov-report/db/linkedRows/index.html +10 -10
- package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
- 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 +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 +25 -25
- 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/builder.js.html +1 -1
- package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
- package/coverage/lcov-report/middleware/index.html +1 -1
- package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
- package/coverage/lcov-report/middleware/publicApi.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/utils.js.html +1 -1
- package/coverage/lcov-report/threads/automation.js.html +1 -1
- package/coverage/lcov-report/threads/index.html +1 -1
- package/coverage/lcov-report/threads/query.js.html +1 -1
- package/coverage/lcov-report/threads/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
- package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
- package/coverage/lcov-report/utilities/global.js.html +1 -1
- package/coverage/lcov-report/utilities/index.html +1 -1
- package/coverage/lcov-report/utilities/index.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.html +25 -25
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +31 -22
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +94 -10
- package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/utilities/security.js.html +1 -1
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +1 -1
- package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
- package/coverage/lcov.info +332 -292
- package/dist/api/controllers/table/internal.js +21 -0
- package/dist/constants/index.js +7 -0
- package/dist/db/linkedRows/LinkController.js +1 -0
- package/dist/package.json +5 -5
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/rowProcessor/index.js +11 -6
- package/dist/utilities/rowProcessor/utils.js +27 -1
- package/package.json +6 -6
- package/src/api/controllers/table/internal.ts +27 -2
- package/src/api/routes/tests/routing.spec.js +0 -1
- package/src/constants/index.js +8 -0
- package/src/db/linkedRows/LinkController.js +1 -0
- package/src/definitions/common.ts +1 -0
- package/src/utilities/rowProcessor/index.js +12 -9
- package/src/utilities/rowProcessor/utils.js +29 -1
|
@@ -145,7 +145,7 @@ exports.createRoutingView = createRoutingView
|
|
|
145
145
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
146
146
|
Code coverage generated by
|
|
147
147
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
148
|
-
at Tue Apr 26 2022
|
|
148
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
149
149
|
</div>
|
|
150
150
|
<script src="../../prettify.js"></script>
|
|
151
151
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">59.
|
|
26
|
+
<span class="strong">59.17% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>100/169</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">48.5% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>65/134</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">54.54% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>12/22</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">61.
|
|
47
|
+
<span class="strong">61.49% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>99/161</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -80,32 +80,32 @@
|
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
82
|
<td class="file medium" data-value="index.js"><a href="index.js.html">index.js</a></td>
|
|
83
|
-
<td data-value="58.
|
|
83
|
+
<td data-value="58.39" class="pic medium">
|
|
84
84
|
<div class="chart"><div class="cover-fill" style="width: 58%"></div><div class="cover-empty" style="width: 42%"></div></div>
|
|
85
85
|
</td>
|
|
86
|
-
<td data-value="58.
|
|
87
|
-
<td data-value="
|
|
88
|
-
<td data-value="
|
|
89
|
-
<td data-value="
|
|
86
|
+
<td data-value="58.39" class="pct medium">58.39%</td>
|
|
87
|
+
<td data-value="137" class="abs medium">80/137</td>
|
|
88
|
+
<td data-value="46.53" class="pct low">46.53%</td>
|
|
89
|
+
<td data-value="101" class="abs low">47/101</td>
|
|
90
90
|
<td data-value="50" class="pct medium">50%</td>
|
|
91
91
|
<td data-value="20" class="abs medium">10/20</td>
|
|
92
|
-
<td data-value="60.
|
|
93
|
-
<td data-value="
|
|
92
|
+
<td data-value="60.76" class="pct medium">60.76%</td>
|
|
93
|
+
<td data-value="130" class="abs medium">79/130</td>
|
|
94
94
|
</tr>
|
|
95
95
|
|
|
96
96
|
<tr>
|
|
97
97
|
<td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
|
|
98
|
-
<td data-value="
|
|
99
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
98
|
+
<td data-value="62.5" class="pic medium">
|
|
99
|
+
<div class="chart"><div class="cover-fill" style="width: 62%"></div><div class="cover-empty" style="width: 38%"></div></div>
|
|
100
100
|
</td>
|
|
101
|
-
<td data-value="
|
|
102
|
-
<td data-value="
|
|
103
|
-
<td data-value="
|
|
104
|
-
<td data-value="
|
|
101
|
+
<td data-value="62.5" class="pct medium">62.5%</td>
|
|
102
|
+
<td data-value="32" class="abs medium">20/32</td>
|
|
103
|
+
<td data-value="54.54" class="pct medium">54.54%</td>
|
|
104
|
+
<td data-value="33" class="abs medium">18/33</td>
|
|
105
105
|
<td data-value="100" class="pct high">100%</td>
|
|
106
|
-
<td data-value="
|
|
107
|
-
<td data-value="
|
|
108
|
-
<td data-value="
|
|
106
|
+
<td data-value="2" class="abs high">2/2</td>
|
|
107
|
+
<td data-value="64.51" class="pct medium">64.51%</td>
|
|
108
|
+
<td data-value="31" class="abs medium">20/31</td>
|
|
109
109
|
</tr>
|
|
110
110
|
|
|
111
111
|
</tbody>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at Tue Apr 26 2022
|
|
119
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">58.
|
|
26
|
+
<span class="strong">58.39% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>80/137</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">46.53% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>47/101</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">60.
|
|
47
|
+
<span class="strong">60.76% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>79/130</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -402,7 +402,10 @@
|
|
|
402
402
|
<a name='L337'></a><a href='#L337'>337</a>
|
|
403
403
|
<a name='L338'></a><a href='#L338'>338</a>
|
|
404
404
|
<a name='L339'></a><a href='#L339'>339</a>
|
|
405
|
-
<a name='L340'></a><a href='#L340'>340</a
|
|
405
|
+
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
|
+
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
|
+
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
+
<a name='L343'></a><a href='#L343'>343</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">41x</span>
|
|
406
409
|
<span class="cline-any cline-yes">41x</span>
|
|
407
410
|
<span class="cline-any cline-yes">41x</span>
|
|
408
411
|
<span class="cline-any cline-yes">41x</span>
|
|
@@ -415,6 +418,7 @@
|
|
|
415
418
|
<span class="cline-any cline-neutral"> </span>
|
|
416
419
|
<span class="cline-any cline-yes">41x</span>
|
|
417
420
|
<span class="cline-any cline-yes">41x</span>
|
|
421
|
+
<span class="cline-any cline-yes">41x</span>
|
|
418
422
|
<span class="cline-any cline-neutral"> </span>
|
|
419
423
|
<span class="cline-any cline-yes">41x</span>
|
|
420
424
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -542,6 +546,10 @@
|
|
|
542
546
|
<span class="cline-any cline-neutral"> </span>
|
|
543
547
|
<span class="cline-any cline-yes">77x</span>
|
|
544
548
|
<span class="cline-any cline-yes">77x</span>
|
|
549
|
+
<span class="cline-any cline-yes">77x</span>
|
|
550
|
+
<span class="cline-any cline-neutral"> </span>
|
|
551
|
+
<span class="cline-any cline-yes">77x</span>
|
|
552
|
+
<span class="cline-any cline-neutral"> </span>
|
|
545
553
|
<span class="cline-any cline-neutral"> </span>
|
|
546
554
|
<span class="cline-any cline-yes">77x</span>
|
|
547
555
|
<span class="cline-any cline-yes">77x</span>
|
|
@@ -549,14 +557,12 @@
|
|
|
549
557
|
<span class="cline-any cline-yes">214x</span>
|
|
550
558
|
<span class="cline-any cline-neutral"> </span>
|
|
551
559
|
<span class="cline-any cline-no"> </span>
|
|
552
|
-
<span class="cline-any cline-neutral"> </span>
|
|
553
560
|
<span class="cline-any cline-no"> </span>
|
|
554
561
|
<span class="cline-any cline-neutral"> </span>
|
|
555
|
-
<span class="cline-any cline-
|
|
556
|
-
<span class="cline-any cline-neutral"> </span>
|
|
557
|
-
<span class="cline-any cline-neutral"> </span>
|
|
562
|
+
<span class="cline-any cline-no"> </span>
|
|
558
563
|
<span class="cline-any cline-neutral"> </span>
|
|
559
564
|
<span class="cline-any cline-no"> </span>
|
|
565
|
+
<span class="cline-any cline-no"> </span>
|
|
560
566
|
<span class="cline-any cline-neutral"> </span>
|
|
561
567
|
<span class="cline-any cline-no"> </span>
|
|
562
568
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -583,7 +589,7 @@
|
|
|
583
589
|
<span class="cline-any cline-yes">77x</span>
|
|
584
590
|
<span class="cline-any cline-neutral"> </span>
|
|
585
591
|
<span class="cline-any cline-yes">41x</span>
|
|
586
|
-
<span class="cline-any cline-
|
|
592
|
+
<span class="cline-any cline-yes">41x</span>
|
|
587
593
|
<span class="cline-any cline-yes">41x</span>
|
|
588
594
|
<span class="cline-any cline-neutral"> </span>
|
|
589
595
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -745,7 +751,7 @@
|
|
|
745
751
|
const { cloneDeep } = require("lodash/fp")
|
|
746
752
|
const { FieldTypes, AutoFieldSubTypes } = require("../../constants")
|
|
747
753
|
const { attachmentsRelativeURL } = require("../index")
|
|
748
|
-
const { processFormulas } = require("./utils")
|
|
754
|
+
const { processFormulas, fixAutoColumnSubType } = require("./utils")
|
|
749
755
|
const { deleteFiles } = require("../../utilities/fileSystem/utilities")
|
|
750
756
|
const { ObjectStoreBuckets } = require("../../constants")
|
|
751
757
|
const {
|
|
@@ -754,6 +760,7 @@ const {
|
|
|
754
760
|
dbExists,
|
|
755
761
|
} = require("@budibase/backend-core/db")
|
|
756
762
|
const { getAppId } = require("@budibase/backend-core/context")
|
|
763
|
+
const { InternalTables } = require("../../db/utils")
|
|
757
764
|
|
|
758
765
|
const BASE_AUTO_ID = 1
|
|
759
766
|
|
|
@@ -880,21 +887,23 @@ function processAutoColumn(
|
|
|
880
887
|
opts = <span class="branch-0 cbranch-no" title="branch not covered" >{ reprocessing: false, noAutoRelationships: false }</span>
|
|
881
888
|
) {
|
|
882
889
|
let noUser = !user || !user.userId
|
|
890
|
+
let isUserTable = table._id === InternalTables.USER_METADATA
|
|
883
891
|
let now = new Date().toISOString()
|
|
884
892
|
// if a row doesn't have a revision then it doesn't exist yet
|
|
885
893
|
const creating = !row._rev
|
|
894
|
+
// check its not user table, or whether any of the processing options have been disabled
|
|
895
|
+
const shouldUpdateUserFields =
|
|
896
|
+
!isUserTable && !opts.reprocessing && !opts.noAutoRelationships && !noUser
|
|
886
897
|
for (let [key, schema] of Object.entries(table.schema)) {
|
|
887
898
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (!schema.autocolumn) {
|
|
888
899
|
continue
|
|
889
900
|
}
|
|
901
|
+
<span class="cstat-no" title="statement not covered" > if (!schema.subtype) {</span>
|
|
902
|
+
<span class="cstat-no" title="statement not covered" > schema = fixAutoColumnSubType(schema)</span>
|
|
903
|
+
}
|
|
890
904
|
<span class="cstat-no" title="statement not covered" > switch (schema.subtype) {</span>
|
|
891
905
|
case AutoFieldSubTypes.CREATED_BY:
|
|
892
|
-
<span class="cstat-no" title="statement not covered" > if (</span>
|
|
893
|
-
creating &&
|
|
894
|
-
!opts.reprocessing &&
|
|
895
|
-
!opts.noAutoRelationships &&
|
|
896
|
-
!noUser
|
|
897
|
-
) {
|
|
906
|
+
<span class="cstat-no" title="statement not covered" > if (creating && shouldUpdateUserFields) {</span>
|
|
898
907
|
<span class="cstat-no" title="statement not covered" > row[key] = [user.userId]</span>
|
|
899
908
|
}
|
|
900
909
|
<span class="cstat-no" title="statement not covered" > break</span>
|
|
@@ -904,7 +913,7 @@ function processAutoColumn(
|
|
|
904
913
|
}
|
|
905
914
|
<span class="cstat-no" title="statement not covered" > break</span>
|
|
906
915
|
case AutoFieldSubTypes.UPDATED_BY:
|
|
907
|
-
<span class="cstat-no" title="statement not covered" > if (
|
|
916
|
+
<span class="cstat-no" title="statement not covered" > if (shouldUpdateUserFields) {</span>
|
|
908
917
|
<span class="cstat-no" title="statement not covered" > row[key] = [user.userId]</span>
|
|
909
918
|
}
|
|
910
919
|
<span class="cstat-no" title="statement not covered" > break</span>
|
|
@@ -922,7 +931,7 @@ function processAutoColumn(
|
|
|
922
931
|
return { table, row }
|
|
923
932
|
}
|
|
924
933
|
exports.processAutoColumn = processAutoColumn
|
|
925
|
-
|
|
934
|
+
exports.fixAutoColumnSubType = fixAutoColumnSubType
|
|
926
935
|
exports.processFormulas = processFormulas
|
|
927
936
|
|
|
928
937
|
/**
|
|
@@ -1087,7 +1096,7 @@ exports.cleanupAttachments = async (table, { row, rows, oldRow, oldTable }) =>
|
|
|
1087
1096
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1088
1097
|
Code coverage generated by
|
|
1089
1098
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1090
|
-
at Tue Apr 26 2022
|
|
1099
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
1091
1100
|
</div>
|
|
1092
1101
|
<script src="../../prettify.js"></script>
|
|
1093
1102
|
<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">62.5% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>20/32</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">54.54% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>18/33</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>2/2</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">64.51% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>20/31</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -102,8 +102,64 @@
|
|
|
102
102
|
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
103
|
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
104
|
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a
|
|
105
|
+
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
+
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
+
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
+
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
+
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
+
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
+
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
+
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
+
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
+
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
+
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
+
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
+
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
+
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
+
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
+
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
+
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
+
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
+
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
+
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
+
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
+
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
+
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
+
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
+
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
+
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
+
<a name='L68'></a><a href='#L68'>68</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
134
|
+
<span class="cline-any cline-neutral"> </span>
|
|
135
|
+
<span class="cline-any cline-neutral"> </span>
|
|
136
|
+
<span class="cline-any cline-neutral"> </span>
|
|
137
|
+
<span class="cline-any cline-neutral"> </span>
|
|
106
138
|
<span class="cline-any cline-yes">41x</span>
|
|
139
|
+
<span class="cline-any cline-yes">41x</span>
|
|
140
|
+
<span class="cline-any cline-neutral"> </span>
|
|
141
|
+
<span class="cline-any cline-neutral"> </span>
|
|
142
|
+
<span class="cline-any cline-neutral"> </span>
|
|
143
|
+
<span class="cline-any cline-neutral"> </span>
|
|
144
|
+
<span class="cline-any cline-neutral"> </span>
|
|
145
|
+
<span class="cline-any cline-yes">41x</span>
|
|
146
|
+
<span class="cline-any cline-yes">2x</span>
|
|
147
|
+
<span class="cline-any cline-no"> </span>
|
|
148
|
+
<span class="cline-any cline-neutral"> </span>
|
|
149
|
+
<span class="cline-any cline-neutral"> </span>
|
|
150
|
+
<span class="cline-any cline-yes">2x</span>
|
|
151
|
+
<span class="cline-any cline-no"> </span>
|
|
152
|
+
<span class="cline-any cline-yes">2x</span>
|
|
153
|
+
<span class="cline-any cline-no"> </span>
|
|
154
|
+
<span class="cline-any cline-yes">2x</span>
|
|
155
|
+
<span class="cline-any cline-no"> </span>
|
|
156
|
+
<span class="cline-any cline-yes">2x</span>
|
|
157
|
+
<span class="cline-any cline-no"> </span>
|
|
158
|
+
<span class="cline-any cline-yes">2x</span>
|
|
159
|
+
<span class="cline-any cline-no"> </span>
|
|
160
|
+
<span class="cline-any cline-neutral"> </span>
|
|
161
|
+
<span class="cline-any cline-yes">2x</span>
|
|
162
|
+
<span class="cline-any cline-neutral"> </span>
|
|
107
163
|
<span class="cline-any cline-neutral"> </span>
|
|
108
164
|
<span class="cline-any cline-neutral"> </span>
|
|
109
165
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -141,9 +197,37 @@
|
|
|
141
197
|
<span class="cline-any cline-neutral"> </span>
|
|
142
198
|
<span class="cline-any cline-yes">278x</span>
|
|
143
199
|
<span class="cline-any cline-neutral"> </span>
|
|
144
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const {
|
|
200
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const {
|
|
201
|
+
FieldTypes,
|
|
202
|
+
FormulaTypes,
|
|
203
|
+
AutoFieldDefaultNames,
|
|
204
|
+
AutoFieldSubTypes,
|
|
205
|
+
} = require("../../constants")
|
|
145
206
|
const { processStringSync } = require("@budibase/string-templates")
|
|
146
207
|
|
|
208
|
+
/**
|
|
209
|
+
* If the subtype has been lost for any reason this works out what
|
|
210
|
+
* subtype the auto column should be.
|
|
211
|
+
*/
|
|
212
|
+
exports.fixAutoColumnSubType = column => {
|
|
213
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!column.autocolumn || !column.name || column.subtype) {
|
|
214
|
+
<span class="cstat-no" title="statement not covered" > return column</span>
|
|
215
|
+
}
|
|
216
|
+
// the columns which get auto generated
|
|
217
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (column.name.endsWith(AutoFieldDefaultNames.CREATED_BY)) {
|
|
218
|
+
<span class="cstat-no" title="statement not covered" > column.subtype = AutoFieldSubTypes.CREATED_BY</span>
|
|
219
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (column.name.endsWith(AutoFieldDefaultNames.UPDATED_BY)) {
|
|
220
|
+
<span class="cstat-no" title="statement not covered" > column.subtype = AutoFieldSubTypes.UPDATED_BY</span>
|
|
221
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (column.name.endsWith(AutoFieldDefaultNames.CREATED_AT)) {
|
|
222
|
+
<span class="cstat-no" title="statement not covered" > column.subtype = AutoFieldSubTypes.CREATED_AT</span>
|
|
223
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (column.name.endsWith(AutoFieldDefaultNames.UPDATED_AT)) {
|
|
224
|
+
<span class="cstat-no" title="statement not covered" > column.subtype = AutoFieldSubTypes.UPDATED_AT</span>
|
|
225
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (column.name.endsWith(AutoFieldDefaultNames.AUTO_ID)) {
|
|
226
|
+
<span class="cstat-no" title="statement not covered" > column.subtype = AutoFieldSubTypes.AUTO_ID</span>
|
|
227
|
+
}
|
|
228
|
+
return column
|
|
229
|
+
}
|
|
230
|
+
|
|
147
231
|
/**
|
|
148
232
|
* Looks through the rows provided and finds formulas - which it then processes.
|
|
149
233
|
*/
|
|
@@ -187,7 +271,7 @@ exports.processFormulas = (
|
|
|
187
271
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
188
272
|
Code coverage generated by
|
|
189
273
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
190
|
-
at Tue Apr 26 2022
|
|
274
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
191
275
|
</div>
|
|
192
276
|
<script src="../../prettify.js"></script>
|
|
193
277
|
<script>
|
|
@@ -142,7 +142,7 @@ module.exports = ScriptRunner
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at Tue Apr 26 2022
|
|
145
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -280,7 +280,7 @@ exports.CURRENTLY_SUPPORTED_LEVELS = CURRENTLY_SUPPORTED_LEVELS
|
|
|
280
280
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
281
281
|
Code coverage generated by
|
|
282
282
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
283
|
-
at Tue Apr 26 2022
|
|
283
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
284
284
|
</div>
|
|
285
285
|
<script src="../prettify.js"></script>
|
|
286
286
|
<script>
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
92
92
|
Code coverage generated by
|
|
93
93
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
94
|
-
at Tue Apr 26 2022
|
|
94
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
95
95
|
</div>
|
|
96
96
|
<script src="../prettify.js"></script>
|
|
97
97
|
<script>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at Tue Apr 26 2022
|
|
119
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -307,7 +307,7 @@ exports.getUniqueRows = async appIds => {
|
|
|
307
307
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
308
308
|
Code coverage generated by
|
|
309
309
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
310
|
-
at Tue Apr 26 2022
|
|
310
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
311
311
|
</div>
|
|
312
312
|
<script src="../../prettify.js"></script>
|
|
313
313
|
<script>
|
|
@@ -124,7 +124,7 @@ function <span class="fstat-no" title="function not covered" >resetQuotasIfRequi
|
|
|
124
124
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
125
125
|
Code coverage generated by
|
|
126
126
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
127
|
-
at Tue Apr 26 2022
|
|
127
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
128
128
|
</div>
|
|
129
129
|
<script src="../../prettify.js"></script>
|
|
130
130
|
<script>
|
|
@@ -142,7 +142,7 @@ exports.getFullUser = async (ctx, userId) => {
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at Tue Apr 26 2022
|
|
145
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -487,7 +487,7 @@ exports.readGlobalUser = <span class="fstat-no" title="function not covered" >as
|
|
|
487
487
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
488
488
|
Code coverage generated by
|
|
489
489
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
490
|
-
at Tue Apr 26 2022
|
|
490
|
+
at Tue Apr 26 2022 22:47:48 GMT+0000 (Coordinated Universal Time)
|
|
491
491
|
</div>
|
|
492
492
|
<script src="../prettify.js"></script>
|
|
493
493
|
<script>
|