@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
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">46.15% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>6/
|
|
28
|
+
<span class='fraction'>6/13</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">30.77% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>4/
|
|
35
|
+
<span class='fraction'>4/13</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">
|
|
47
|
+
<span class="strong">46.15% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>6/
|
|
49
|
+
<span class='fraction'>6/13</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
56
|
</p>
|
|
57
57
|
</div>
|
|
58
|
-
<div class='status-line
|
|
58
|
+
<div class='status-line low'></div>
|
|
59
59
|
<pre><table class="coverage">
|
|
60
60
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
61
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -92,7 +92,11 @@
|
|
|
92
92
|
<a name='L33'></a><a href='#L33'>33</a>
|
|
93
93
|
<a name='L34'></a><a href='#L34'>34</a>
|
|
94
94
|
<a name='L35'></a><a href='#L35'>35</a>
|
|
95
|
-
<a name='L36'></a><a href='#L36'>36</a
|
|
95
|
+
<a name='L36'></a><a href='#L36'>36</a>
|
|
96
|
+
<a name='L37'></a><a href='#L37'>37</a>
|
|
97
|
+
<a name='L38'></a><a href='#L38'>38</a>
|
|
98
|
+
<a name='L39'></a><a href='#L39'>39</a>
|
|
99
|
+
<a name='L40'></a><a href='#L40'>40</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
|
|
96
100
|
<span class="cline-any cline-yes">23x</span>
|
|
97
101
|
<span class="cline-any cline-neutral"> </span>
|
|
98
102
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -119,6 +123,10 @@
|
|
|
119
123
|
<span class="cline-any cline-neutral"> </span>
|
|
120
124
|
<span class="cline-any cline-neutral"> </span>
|
|
121
125
|
<span class="cline-any cline-neutral"> </span>
|
|
126
|
+
<span class="cline-any cline-no"> </span>
|
|
127
|
+
<span class="cline-any cline-neutral"> </span>
|
|
128
|
+
<span class="cline-any cline-neutral"> </span>
|
|
129
|
+
<span class="cline-any cline-neutral"> </span>
|
|
122
130
|
<span class="cline-any cline-neutral"> </span>
|
|
123
131
|
<span class="cline-any cline-neutral"> </span>
|
|
124
132
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -150,6 +158,10 @@ exports.endUserPing = <span class="fstat-no" title="function not covered" >as</s
|
|
|
150
158
|
<span class="cstat-no" title="statement not covered" > return</span>
|
|
151
159
|
}
|
|
152
160
|
|
|
161
|
+
<span class="cstat-no" title="statement not covered" > posthogClient.identify({</span>
|
|
162
|
+
distinctId: ctx.user && ctx.user._id,
|
|
163
|
+
properties: {},
|
|
164
|
+
})
|
|
153
165
|
<span class="cstat-no" title="statement not covered" > posthogClient.capture({</span>
|
|
154
166
|
event: "budibase:end_user_ping",
|
|
155
167
|
distinctId: ctx.user && ctx.user._id,
|
|
@@ -169,7 +181,7 @@ exports.endUserPing = <span class="fstat-no" title="function not covered" >as</s
|
|
|
169
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
170
182
|
Code coverage generated by
|
|
171
183
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
172
|
-
at
|
|
184
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
173
185
|
</div>
|
|
174
186
|
</div>
|
|
175
187
|
<script src="../../prettify.js"></script>
|
|
@@ -226,7 +226,7 @@ exports.update = async function (ctx) {
|
|
|
226
226
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
227
227
|
Code coverage generated by
|
|
228
228
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
229
|
-
at
|
|
229
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
230
230
|
</div>
|
|
231
231
|
</div>
|
|
232
232
|
<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">82.14% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>138/168</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">59.
|
|
33
|
+
<span class="strong">59.09% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>39/66</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">85% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>17/
|
|
42
|
+
<span class='fraction'>17/20</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">82.63% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>138/167</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -409,7 +409,41 @@
|
|
|
409
409
|
<a name='L350'></a><a href='#L350'>350</a>
|
|
410
410
|
<a name='L351'></a><a href='#L351'>351</a>
|
|
411
411
|
<a name='L352'></a><a href='#L352'>352</a>
|
|
412
|
-
<a name='L353'></a><a href='#L353'>353</a
|
|
412
|
+
<a name='L353'></a><a href='#L353'>353</a>
|
|
413
|
+
<a name='L354'></a><a href='#L354'>354</a>
|
|
414
|
+
<a name='L355'></a><a href='#L355'>355</a>
|
|
415
|
+
<a name='L356'></a><a href='#L356'>356</a>
|
|
416
|
+
<a name='L357'></a><a href='#L357'>357</a>
|
|
417
|
+
<a name='L358'></a><a href='#L358'>358</a>
|
|
418
|
+
<a name='L359'></a><a href='#L359'>359</a>
|
|
419
|
+
<a name='L360'></a><a href='#L360'>360</a>
|
|
420
|
+
<a name='L361'></a><a href='#L361'>361</a>
|
|
421
|
+
<a name='L362'></a><a href='#L362'>362</a>
|
|
422
|
+
<a name='L363'></a><a href='#L363'>363</a>
|
|
423
|
+
<a name='L364'></a><a href='#L364'>364</a>
|
|
424
|
+
<a name='L365'></a><a href='#L365'>365</a>
|
|
425
|
+
<a name='L366'></a><a href='#L366'>366</a>
|
|
426
|
+
<a name='L367'></a><a href='#L367'>367</a>
|
|
427
|
+
<a name='L368'></a><a href='#L368'>368</a>
|
|
428
|
+
<a name='L369'></a><a href='#L369'>369</a>
|
|
429
|
+
<a name='L370'></a><a href='#L370'>370</a>
|
|
430
|
+
<a name='L371'></a><a href='#L371'>371</a>
|
|
431
|
+
<a name='L372'></a><a href='#L372'>372</a>
|
|
432
|
+
<a name='L373'></a><a href='#L373'>373</a>
|
|
433
|
+
<a name='L374'></a><a href='#L374'>374</a>
|
|
434
|
+
<a name='L375'></a><a href='#L375'>375</a>
|
|
435
|
+
<a name='L376'></a><a href='#L376'>376</a>
|
|
436
|
+
<a name='L377'></a><a href='#L377'>377</a>
|
|
437
|
+
<a name='L378'></a><a href='#L378'>378</a>
|
|
438
|
+
<a name='L379'></a><a href='#L379'>379</a>
|
|
439
|
+
<a name='L380'></a><a href='#L380'>380</a>
|
|
440
|
+
<a name='L381'></a><a href='#L381'>381</a>
|
|
441
|
+
<a name='L382'></a><a href='#L382'>382</a>
|
|
442
|
+
<a name='L383'></a><a href='#L383'>383</a>
|
|
443
|
+
<a name='L384'></a><a href='#L384'>384</a>
|
|
444
|
+
<a name='L385'></a><a href='#L385'>385</a>
|
|
445
|
+
<a name='L386'></a><a href='#L386'>386</a>
|
|
446
|
+
<a name='L387'></a><a href='#L387'>387</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
|
|
413
447
|
<span class="cline-any cline-yes">33x</span>
|
|
414
448
|
<span class="cline-any cline-yes">33x</span>
|
|
415
449
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -436,6 +470,11 @@
|
|
|
436
470
|
<span class="cline-any cline-yes">33x</span>
|
|
437
471
|
<span class="cline-any cline-yes">33x</span>
|
|
438
472
|
<span class="cline-any cline-yes">33x</span>
|
|
473
|
+
<span class="cline-any cline-neutral"> </span>
|
|
474
|
+
<span class="cline-any cline-neutral"> </span>
|
|
475
|
+
<span class="cline-any cline-neutral"> </span>
|
|
476
|
+
<span class="cline-any cline-neutral"> </span>
|
|
477
|
+
<span class="cline-any cline-neutral"> </span>
|
|
439
478
|
<span class="cline-any cline-yes">33x</span>
|
|
440
479
|
<span class="cline-any cline-yes">33x</span>
|
|
441
480
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -455,46 +494,46 @@
|
|
|
455
494
|
<span class="cline-any cline-neutral"> </span>
|
|
456
495
|
<span class="cline-any cline-neutral"> </span>
|
|
457
496
|
<span class="cline-any cline-neutral"> </span>
|
|
458
|
-
<span class="cline-any cline-yes">
|
|
497
|
+
<span class="cline-any cline-yes">188x</span>
|
|
459
498
|
<span class="cline-any cline-neutral"> </span>
|
|
460
499
|
<span class="cline-any cline-neutral"> </span>
|
|
461
500
|
<span class="cline-any cline-neutral"> </span>
|
|
462
501
|
<span class="cline-any cline-neutral"> </span>
|
|
463
502
|
<span class="cline-any cline-neutral"> </span>
|
|
464
|
-
<span class="cline-any cline-yes">
|
|
503
|
+
<span class="cline-any cline-yes">376x</span>
|
|
465
504
|
<span class="cline-any cline-neutral"> </span>
|
|
466
505
|
<span class="cline-any cline-neutral"> </span>
|
|
467
506
|
<span class="cline-any cline-neutral"> </span>
|
|
468
|
-
<span class="cline-any cline-yes">
|
|
507
|
+
<span class="cline-any cline-yes">188x</span>
|
|
469
508
|
<span class="cline-any cline-neutral"> </span>
|
|
470
509
|
<span class="cline-any cline-neutral"> </span>
|
|
471
510
|
<span class="cline-any cline-neutral"> </span>
|
|
472
511
|
<span class="cline-any cline-neutral"> </span>
|
|
473
512
|
<span class="cline-any cline-neutral"> </span>
|
|
474
|
-
<span class="cline-any cline-yes">
|
|
513
|
+
<span class="cline-any cline-yes">200x</span>
|
|
475
514
|
<span class="cline-any cline-neutral"> </span>
|
|
476
515
|
<span class="cline-any cline-neutral"> </span>
|
|
477
516
|
<span class="cline-any cline-neutral"> </span>
|
|
478
|
-
<span class="cline-any cline-yes">
|
|
517
|
+
<span class="cline-any cline-yes">186x</span>
|
|
479
518
|
<span class="cline-any cline-neutral"> </span>
|
|
480
519
|
<span class="cline-any cline-neutral"> </span>
|
|
481
520
|
<span class="cline-any cline-neutral"> </span>
|
|
482
521
|
<span class="cline-any cline-neutral"> </span>
|
|
483
522
|
<span class="cline-any cline-neutral"> </span>
|
|
484
523
|
<span class="cline-any cline-neutral"> </span>
|
|
485
|
-
<span class="cline-any cline-yes">
|
|
524
|
+
<span class="cline-any cline-yes">183x</span>
|
|
486
525
|
<span class="cline-any cline-no"> </span>
|
|
487
|
-
<span class="cline-any cline-yes">
|
|
488
|
-
<span class="cline-any cline-yes">
|
|
526
|
+
<span class="cline-any cline-yes">183x</span>
|
|
527
|
+
<span class="cline-any cline-yes">180x</span>
|
|
489
528
|
<span class="cline-any cline-neutral"> </span>
|
|
490
|
-
<span class="cline-any cline-yes">
|
|
491
|
-
<span class="cline-any cline-yes">
|
|
529
|
+
<span class="cline-any cline-yes">183x</span>
|
|
530
|
+
<span class="cline-any cline-yes">180x</span>
|
|
492
531
|
<span class="cline-any cline-neutral"> </span>
|
|
493
|
-
<span class="cline-any cline-yes">
|
|
532
|
+
<span class="cline-any cline-yes">183x</span>
|
|
494
533
|
<span class="cline-any cline-yes">10x</span>
|
|
495
534
|
<span class="cline-any cline-neutral"> </span>
|
|
496
|
-
<span class="cline-any cline-yes">
|
|
497
|
-
<span class="cline-any cline-yes">
|
|
535
|
+
<span class="cline-any cline-yes">173x</span>
|
|
536
|
+
<span class="cline-any cline-yes">173x</span>
|
|
498
537
|
<span class="cline-any cline-neutral"> </span>
|
|
499
538
|
<span class="cline-any cline-neutral"> </span>
|
|
500
539
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -502,16 +541,16 @@
|
|
|
502
541
|
<span class="cline-any cline-neutral"> </span>
|
|
503
542
|
<span class="cline-any cline-no"> </span>
|
|
504
543
|
<span class="cline-any cline-neutral"> </span>
|
|
505
|
-
<span class="cline-any cline-yes">
|
|
544
|
+
<span class="cline-any cline-yes">173x</span>
|
|
506
545
|
<span class="cline-any cline-neutral"> </span>
|
|
507
546
|
<span class="cline-any cline-neutral"> </span>
|
|
508
547
|
<span class="cline-any cline-neutral"> </span>
|
|
509
|
-
<span class="cline-any cline-yes">
|
|
510
|
-
<span class="cline-any cline-yes">
|
|
511
|
-
<span class="cline-any cline-yes">
|
|
548
|
+
<span class="cline-any cline-yes">178x</span>
|
|
549
|
+
<span class="cline-any cline-yes">178x</span>
|
|
550
|
+
<span class="cline-any cline-yes">178x</span>
|
|
512
551
|
<span class="cline-any cline-neutral"> </span>
|
|
513
|
-
<span class="cline-any cline-yes">
|
|
514
|
-
<span class="cline-any cline-yes">
|
|
552
|
+
<span class="cline-any cline-yes">178x</span>
|
|
553
|
+
<span class="cline-any cline-yes">178x</span>
|
|
515
554
|
<span class="cline-any cline-neutral"> </span>
|
|
516
555
|
<span class="cline-any cline-neutral"> </span>
|
|
517
556
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -520,18 +559,18 @@
|
|
|
520
559
|
<span class="cline-any cline-neutral"> </span>
|
|
521
560
|
<span class="cline-any cline-neutral"> </span>
|
|
522
561
|
<span class="cline-any cline-neutral"> </span>
|
|
523
|
-
<span class="cline-any cline-yes">
|
|
524
|
-
<span class="cline-any cline-yes">
|
|
525
|
-
<span class="cline-any cline-yes">
|
|
562
|
+
<span class="cline-any cline-yes">178x</span>
|
|
563
|
+
<span class="cline-any cline-yes">178x</span>
|
|
564
|
+
<span class="cline-any cline-yes">178x</span>
|
|
526
565
|
<span class="cline-any cline-neutral"> </span>
|
|
527
566
|
<span class="cline-any cline-neutral"> </span>
|
|
528
567
|
<span class="cline-any cline-neutral"> </span>
|
|
529
|
-
<span class="cline-any cline-yes">
|
|
568
|
+
<span class="cline-any cline-yes">178x</span>
|
|
530
569
|
<span class="cline-any cline-no"> </span>
|
|
531
570
|
<span class="cline-any cline-no"> </span>
|
|
532
571
|
<span class="cline-any cline-no"> </span>
|
|
533
572
|
<span class="cline-any cline-neutral"> </span>
|
|
534
|
-
<span class="cline-any cline-yes">
|
|
573
|
+
<span class="cline-any cline-yes">178x</span>
|
|
535
574
|
<span class="cline-any cline-neutral"> </span>
|
|
536
575
|
<span class="cline-any cline-neutral"> </span>
|
|
537
576
|
<span class="cline-any cline-no"> </span>
|
|
@@ -539,10 +578,10 @@
|
|
|
539
578
|
<span class="cline-any cline-neutral"> </span>
|
|
540
579
|
<span class="cline-any cline-neutral"> </span>
|
|
541
580
|
<span class="cline-any cline-neutral"> </span>
|
|
542
|
-
<span class="cline-any cline-yes">
|
|
581
|
+
<span class="cline-any cline-yes">178x</span>
|
|
543
582
|
<span class="cline-any cline-neutral"> </span>
|
|
544
583
|
<span class="cline-any cline-neutral"> </span>
|
|
545
|
-
<span class="cline-any cline-yes">
|
|
584
|
+
<span class="cline-any cline-yes">178x</span>
|
|
546
585
|
<span class="cline-any cline-neutral"> </span>
|
|
547
586
|
<span class="cline-any cline-neutral"> </span>
|
|
548
587
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -587,19 +626,19 @@
|
|
|
587
626
|
<span class="cline-any cline-neutral"> </span>
|
|
588
627
|
<span class="cline-any cline-neutral"> </span>
|
|
589
628
|
<span class="cline-any cline-yes">33x</span>
|
|
590
|
-
<span class="cline-any cline-yes">
|
|
591
|
-
<span class="cline-any cline-yes">
|
|
592
|
-
<span class="cline-any cline-yes">
|
|
593
|
-
<span class="cline-any cline-yes">
|
|
629
|
+
<span class="cline-any cline-yes">187x</span>
|
|
630
|
+
<span class="cline-any cline-yes">187x</span>
|
|
631
|
+
<span class="cline-any cline-yes">187x</span>
|
|
632
|
+
<span class="cline-any cline-yes">187x</span>
|
|
594
633
|
<span class="cline-any cline-neutral"> </span>
|
|
595
634
|
<span class="cline-any cline-neutral"> </span>
|
|
596
|
-
<span class="cline-any cline-yes">
|
|
597
|
-
<span class="cline-any cline-
|
|
598
|
-
<span class="cline-any cline-
|
|
599
|
-
<span class="cline-any cline-
|
|
635
|
+
<span class="cline-any cline-yes">187x</span>
|
|
636
|
+
<span class="cline-any cline-yes">185x</span>
|
|
637
|
+
<span class="cline-any cline-yes">185x</span>
|
|
638
|
+
<span class="cline-any cline-yes">185x</span>
|
|
600
639
|
<span class="cline-any cline-neutral"> </span>
|
|
601
640
|
<span class="cline-any cline-neutral"> </span>
|
|
602
|
-
<span class="cline-any cline-yes">
|
|
641
|
+
<span class="cline-any cline-yes">187x</span>
|
|
603
642
|
<span class="cline-any cline-neutral"> </span>
|
|
604
643
|
<span class="cline-any cline-neutral"> </span>
|
|
605
644
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -608,29 +647,29 @@
|
|
|
608
647
|
<span class="cline-any cline-neutral"> </span>
|
|
609
648
|
<span class="cline-any cline-neutral"> </span>
|
|
610
649
|
<span class="cline-any cline-yes">33x</span>
|
|
611
|
-
<span class="cline-any cline-yes">
|
|
612
|
-
<span class="cline-any cline-yes">
|
|
650
|
+
<span class="cline-any cline-yes">178x</span>
|
|
651
|
+
<span class="cline-any cline-yes">178x</span>
|
|
613
652
|
<span class="cline-any cline-neutral"> </span>
|
|
614
653
|
<span class="cline-any cline-neutral"> </span>
|
|
615
654
|
<span class="cline-any cline-neutral"> </span>
|
|
616
655
|
<span class="cline-any cline-neutral"> </span>
|
|
617
|
-
<span class="cline-any cline-yes">
|
|
656
|
+
<span class="cline-any cline-yes">178x</span>
|
|
618
657
|
<span class="cline-any cline-no"> </span>
|
|
619
658
|
<span class="cline-any cline-neutral"> </span>
|
|
620
|
-
<span class="cline-any cline-yes">
|
|
621
|
-
<span class="cline-any cline-yes">
|
|
659
|
+
<span class="cline-any cline-yes">178x</span>
|
|
660
|
+
<span class="cline-any cline-yes">178x</span>
|
|
622
661
|
<span class="cline-any cline-neutral"> </span>
|
|
623
|
-
<span class="cline-any cline-yes">
|
|
624
|
-
<span class="cline-any cline-yes">
|
|
662
|
+
<span class="cline-any cline-yes">178x</span>
|
|
663
|
+
<span class="cline-any cline-yes">178x</span>
|
|
625
664
|
<span class="cline-any cline-neutral"> </span>
|
|
626
|
-
<span class="cline-any cline-yes">
|
|
665
|
+
<span class="cline-any cline-yes">178x</span>
|
|
627
666
|
<span class="cline-any cline-neutral"> </span>
|
|
628
|
-
<span class="cline-any cline-yes">
|
|
667
|
+
<span class="cline-any cline-yes">178x</span>
|
|
629
668
|
<span class="cline-any cline-no"> </span>
|
|
630
669
|
<span class="cline-any cline-neutral"> </span>
|
|
631
670
|
<span class="cline-any cline-neutral"> </span>
|
|
632
671
|
<span class="cline-any cline-neutral"> </span>
|
|
633
|
-
<span class="cline-any cline-yes">
|
|
672
|
+
<span class="cline-any cline-yes">178x</span>
|
|
634
673
|
<span class="cline-any cline-neutral"> </span>
|
|
635
674
|
<span class="cline-any cline-neutral"> </span>
|
|
636
675
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -645,13 +684,13 @@
|
|
|
645
684
|
<span class="cline-any cline-neutral"> </span>
|
|
646
685
|
<span class="cline-any cline-neutral"> </span>
|
|
647
686
|
<span class="cline-any cline-neutral"> </span>
|
|
648
|
-
<span class="cline-any cline-yes">
|
|
649
|
-
<span class="cline-any cline-yes">
|
|
687
|
+
<span class="cline-any cline-yes">178x</span>
|
|
688
|
+
<span class="cline-any cline-yes">178x</span>
|
|
650
689
|
<span class="cline-any cline-neutral"> </span>
|
|
651
690
|
<span class="cline-any cline-neutral"> </span>
|
|
652
691
|
<span class="cline-any cline-neutral"> </span>
|
|
653
|
-
<span class="cline-any cline-yes">
|
|
654
|
-
<span class="cline-any cline-yes">
|
|
692
|
+
<span class="cline-any cline-yes">178x</span>
|
|
693
|
+
<span class="cline-any cline-yes">178x</span>
|
|
655
694
|
<span class="cline-any cline-neutral"> </span>
|
|
656
695
|
<span class="cline-any cline-neutral"> </span>
|
|
657
696
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -659,8 +698,8 @@
|
|
|
659
698
|
<span class="cline-any cline-neutral"> </span>
|
|
660
699
|
<span class="cline-any cline-neutral"> </span>
|
|
661
700
|
<span class="cline-any cline-neutral"> </span>
|
|
662
|
-
<span class="cline-any cline-yes">
|
|
663
|
-
<span class="cline-any cline-yes">
|
|
701
|
+
<span class="cline-any cline-yes">178x</span>
|
|
702
|
+
<span class="cline-any cline-yes">178x</span>
|
|
664
703
|
<span class="cline-any cline-neutral"> </span>
|
|
665
704
|
<span class="cline-any cline-neutral"> </span>
|
|
666
705
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -730,6 +769,35 @@
|
|
|
730
769
|
<span class="cline-any cline-neutral"> </span>
|
|
731
770
|
<span class="cline-any cline-neutral"> </span>
|
|
732
771
|
<span class="cline-any cline-yes">33x</span>
|
|
772
|
+
<span class="cline-any cline-no"> </span>
|
|
773
|
+
<span class="cline-any cline-no"> </span>
|
|
774
|
+
<span class="cline-any cline-no"> </span>
|
|
775
|
+
<span class="cline-any cline-neutral"> </span>
|
|
776
|
+
<span class="cline-any cline-no"> </span>
|
|
777
|
+
<span class="cline-any cline-no"> </span>
|
|
778
|
+
<span class="cline-any cline-neutral"> </span>
|
|
779
|
+
<span class="cline-any cline-neutral"> </span>
|
|
780
|
+
<span class="cline-any cline-neutral"> </span>
|
|
781
|
+
<span class="cline-any cline-neutral"> </span>
|
|
782
|
+
<span class="cline-any cline-no"> </span>
|
|
783
|
+
<span class="cline-any cline-no"> </span>
|
|
784
|
+
<span class="cline-any cline-neutral"> </span>
|
|
785
|
+
<span class="cline-any cline-no"> </span>
|
|
786
|
+
<span class="cline-any cline-neutral"> </span>
|
|
787
|
+
<span class="cline-any cline-neutral"> </span>
|
|
788
|
+
<span class="cline-any cline-neutral"> </span>
|
|
789
|
+
<span class="cline-any cline-no"> </span>
|
|
790
|
+
<span class="cline-any cline-neutral"> </span>
|
|
791
|
+
<span class="cline-any cline-no"> </span>
|
|
792
|
+
<span class="cline-any cline-no"> </span>
|
|
793
|
+
<span class="cline-any cline-neutral"> </span>
|
|
794
|
+
<span class="cline-any cline-no"> </span>
|
|
795
|
+
<span class="cline-any cline-neutral"> </span>
|
|
796
|
+
<span class="cline-any cline-neutral"> </span>
|
|
797
|
+
<span class="cline-any cline-neutral"> </span>
|
|
798
|
+
<span class="cline-any cline-neutral"> </span>
|
|
799
|
+
<span class="cline-any cline-neutral"> </span>
|
|
800
|
+
<span class="cline-any cline-yes">33x</span>
|
|
733
801
|
<span class="cline-any cline-yes">5x</span>
|
|
734
802
|
<span class="cline-any cline-yes">5x</span>
|
|
735
803
|
<span class="cline-any cline-yes">5x</span>
|
|
@@ -747,19 +815,19 @@
|
|
|
747
815
|
<span class="cline-any cline-neutral"> </span>
|
|
748
816
|
<span class="cline-any cline-neutral"> </span>
|
|
749
817
|
<span class="cline-any cline-yes">33x</span>
|
|
750
|
-
<span class="cline-any cline-yes">
|
|
818
|
+
<span class="cline-any cline-yes">178x</span>
|
|
751
819
|
<span class="cline-any cline-neutral"> </span>
|
|
752
|
-
<span class="cline-any cline-yes">
|
|
753
|
-
<span class="cline-any cline-yes">
|
|
754
|
-
<span class="cline-any cline-yes">
|
|
755
|
-
<span class="cline-any cline-yes">
|
|
820
|
+
<span class="cline-any cline-yes">178x</span>
|
|
821
|
+
<span class="cline-any cline-yes">178x</span>
|
|
822
|
+
<span class="cline-any cline-yes">356x</span>
|
|
823
|
+
<span class="cline-any cline-yes">356x</span>
|
|
756
824
|
<span class="cline-any cline-neutral"> </span>
|
|
757
825
|
<span class="cline-any cline-neutral"> </span>
|
|
758
|
-
<span class="cline-any cline-yes">
|
|
759
|
-
<span class="cline-any cline-yes">
|
|
760
|
-
<span class="cline-any cline-yes">
|
|
826
|
+
<span class="cline-any cline-yes">178x</span>
|
|
827
|
+
<span class="cline-any cline-yes">178x</span>
|
|
828
|
+
<span class="cline-any cline-yes">178x</span>
|
|
761
829
|
<span class="cline-any cline-neutral"> </span>
|
|
762
|
-
<span class="cline-any cline-yes">
|
|
830
|
+
<span class="cline-any cline-yes">178x</span>
|
|
763
831
|
<span class="cline-any cline-neutral"> </span>
|
|
764
832
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const CouchDB = require("../../db")
|
|
765
833
|
const env = require("../../environment")
|
|
@@ -788,7 +856,12 @@ const { BASE_LAYOUTS } = require("../../constants/layouts")
|
|
|
788
856
|
const { createHomeScreen } = require("../../constants/screens")
|
|
789
857
|
const { cloneDeep } = require("lodash/fp")
|
|
790
858
|
const { processObject } = require("@budibase/string-templates")
|
|
791
|
-
const {
|
|
859
|
+
const {
|
|
860
|
+
getAllApps,
|
|
861
|
+
isDevAppID,
|
|
862
|
+
getDeployedAppID,
|
|
863
|
+
Replication,
|
|
864
|
+
} = require("@budibase/auth/db")
|
|
792
865
|
const { USERS_TABLE_SCHEMA } = require("../../constants")
|
|
793
866
|
const {
|
|
794
867
|
getDeployedApps,
|
|
@@ -828,7 +901,7 @@ async function getScreens(db) {
|
|
|
828
901
|
|
|
829
902
|
function getUserRoleId(ctx) {
|
|
830
903
|
return !ctx.user.role || !ctx.user.role._id
|
|
831
|
-
?
|
|
904
|
+
? BUILTIN_ROLE_IDS.PUBLIC
|
|
832
905
|
: ctx.user.role._id
|
|
833
906
|
}
|
|
834
907
|
|
|
@@ -897,7 +970,7 @@ async function createInstance(template) {
|
|
|
897
970
|
return { _id: appId }
|
|
898
971
|
}
|
|
899
972
|
|
|
900
|
-
exports.fetch = async
|
|
973
|
+
exports.fetch = async ctx => {
|
|
901
974
|
const dev = ctx.query && ctx.query.status === AppStatus.DEV
|
|
902
975
|
const all = ctx.query && ctx.query.status === AppStatus.ALL
|
|
903
976
|
const apps = await getAllApps(CouchDB, { dev, all })
|
|
@@ -922,7 +995,7 @@ exports.fetch = async function (ctx) {
|
|
|
922
995
|
ctx.body = apps
|
|
923
996
|
}
|
|
924
997
|
|
|
925
|
-
exports.fetchAppDefinition = async
|
|
998
|
+
exports.fetchAppDefinition = async ctx => {
|
|
926
999
|
const db = new CouchDB(ctx.params.appId)
|
|
927
1000
|
const layouts = await getLayouts(db)
|
|
928
1001
|
const userRoleId = getUserRoleId(ctx)
|
|
@@ -938,17 +1011,17 @@ exports.fetchAppDefinition = async function (ctx) {
|
|
|
938
1011
|
}
|
|
939
1012
|
}
|
|
940
1013
|
|
|
941
|
-
exports.fetchAppPackage = async
|
|
1014
|
+
exports.fetchAppPackage = async ctx => {
|
|
942
1015
|
const db = new CouchDB(ctx.params.appId)
|
|
943
1016
|
const application = await db.get(DocumentTypes.APP_METADATA)
|
|
944
1017
|
const layouts = await getLayouts(db)
|
|
945
1018
|
let screens = await getScreens(db)
|
|
946
1019
|
|
|
947
1020
|
// Only filter screens if the user is not a builder
|
|
948
|
-
|
|
949
|
-
const userRoleId =
|
|
950
|
-
const accessController =
|
|
951
|
-
|
|
1021
|
+
if (!(ctx.user.builder && ctx.user.builder.global)) {
|
|
1022
|
+
const userRoleId = getUserRoleId(ctx)
|
|
1023
|
+
const accessController = new AccessController(ctx.params.appId)
|
|
1024
|
+
screens = await accessController.checkScreensAccess(screens, userRoleId)
|
|
952
1025
|
}
|
|
953
1026
|
|
|
954
1027
|
ctx.body = {
|
|
@@ -959,7 +1032,7 @@ exports.fetchAppPackage = async function (ctx) {
|
|
|
959
1032
|
}
|
|
960
1033
|
}
|
|
961
1034
|
|
|
962
|
-
exports.create = async
|
|
1035
|
+
exports.create = async ctx => {
|
|
963
1036
|
const { useTemplate, templateKey, templateString } = ctx.request.body
|
|
964
1037
|
const instanceConfig = {
|
|
965
1038
|
useTemplate,
|
|
@@ -1015,13 +1088,13 @@ exports.create = async function (ctx) {
|
|
|
1015
1088
|
ctx.body = newApplication
|
|
1016
1089
|
}
|
|
1017
1090
|
|
|
1018
|
-
exports.update = async
|
|
1091
|
+
exports.update = async ctx => {
|
|
1019
1092
|
const data = await updateAppPackage(ctx, ctx.request.body, ctx.params.appId)
|
|
1020
1093
|
ctx.status = 200
|
|
1021
1094
|
ctx.body = data
|
|
1022
1095
|
}
|
|
1023
1096
|
|
|
1024
|
-
exports.updateClient = async
|
|
1097
|
+
exports.updateClient = async ctx => {
|
|
1025
1098
|
// Get current app version
|
|
1026
1099
|
const db = new CouchDB(ctx.params.appId)
|
|
1027
1100
|
const application = await db.get(DocumentTypes.APP_METADATA)
|
|
@@ -1043,7 +1116,7 @@ exports.updateClient = async function (ctx) {
|
|
|
1043
1116
|
ctx.body = data
|
|
1044
1117
|
}
|
|
1045
1118
|
|
|
1046
|
-
exports.revertClient = async
|
|
1119
|
+
exports.revertClient = async ctx => {
|
|
1047
1120
|
// Check app can be reverted
|
|
1048
1121
|
const db = new CouchDB(ctx.params.appId)
|
|
1049
1122
|
const application = await db.get(DocumentTypes.APP_METADATA)
|
|
@@ -1066,7 +1139,7 @@ exports.revertClient = async function (ctx) {
|
|
|
1066
1139
|
ctx.body = data
|
|
1067
1140
|
}
|
|
1068
1141
|
|
|
1069
|
-
exports.delete = async
|
|
1142
|
+
exports.delete = async ctx => {
|
|
1070
1143
|
const db = new CouchDB(ctx.params.appId)
|
|
1071
1144
|
|
|
1072
1145
|
const result = await db.destroy()
|
|
@@ -1081,6 +1154,35 @@ exports.delete = async function (ctx) {
|
|
|
1081
1154
|
ctx.body = result
|
|
1082
1155
|
}
|
|
1083
1156
|
|
|
1157
|
+
exports.sync = <span class="fstat-no" title="function not covered" >as</span>ync ctx => {
|
|
1158
|
+
const appId = <span class="cstat-no" title="statement not covered" >ctx.params.appId</span>
|
|
1159
|
+
<span class="cstat-no" title="statement not covered" > if (!isDevAppID(appId)) {</span>
|
|
1160
|
+
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "This action cannot be performed for production apps")</span>
|
|
1161
|
+
}
|
|
1162
|
+
const prodAppId = <span class="cstat-no" title="statement not covered" >getDeployedAppID(appId)</span>
|
|
1163
|
+
const replication = <span class="cstat-no" title="statement not covered" >new Replication({</span>
|
|
1164
|
+
source: prodAppId,
|
|
1165
|
+
target: appId,
|
|
1166
|
+
})
|
|
1167
|
+
let error
|
|
1168
|
+
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
1169
|
+
<span class="cstat-no" title="statement not covered" > await replication.replicate({</span>
|
|
1170
|
+
filter: <span class="fstat-no" title="function not covered" >fu</span>nction (doc) {
|
|
1171
|
+
<span class="cstat-no" title="statement not covered" > return doc._id !== DocumentTypes.APP_METADATA</span>
|
|
1172
|
+
},
|
|
1173
|
+
})
|
|
1174
|
+
} catch (err) {
|
|
1175
|
+
<span class="cstat-no" title="statement not covered" > error = err</span>
|
|
1176
|
+
}
|
|
1177
|
+
<span class="cstat-no" title="statement not covered" > if (error) {</span>
|
|
1178
|
+
<span class="cstat-no" title="statement not covered" > ctx.throw(400, error)</span>
|
|
1179
|
+
} else {
|
|
1180
|
+
<span class="cstat-no" title="statement not covered" > ctx.body = {</span>
|
|
1181
|
+
message: "App sync completed successfully.",
|
|
1182
|
+
}
|
|
1183
|
+
}
|
|
1184
|
+
}
|
|
1185
|
+
|
|
1084
1186
|
const updateAppPackage = async (ctx, appPackage, appId) => {
|
|
1085
1187
|
const url = await getAppUrlIfNotInUse(ctx)
|
|
1086
1188
|
const db = new CouchDB(appId)
|
|
@@ -1120,7 +1222,7 @@ const createEmptyAppPackage = async (ctx, app) => {
|
|
|
1120
1222
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1121
1223
|
Code coverage generated by
|
|
1122
1224
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1123
|
-
at
|
|
1225
|
+
at Wed Oct 27 2021 14:24:39 GMT+0000 (Coordinated Universal Time)
|
|
1124
1226
|
</div>
|
|
1125
1227
|
</div>
|
|
1126
1228
|
<script src="../../prettify.js"></script>
|