@budibase/server 0.9.188 → 0.9.190-alpha.10
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 +7 -1
- package/__mocks__/mssql.ts +1 -1
- package/__mocks__/oracledb.ts +31 -0
- package/__mocks__/pg.ts +3 -0
- package/builder/assets/bb-space-man.5be51a45.svg +290 -0
- package/builder/assets/index.2bd3b345.js +1316 -0
- package/builder/assets/index.4fb3f887.css +1 -0
- package/builder/assets/oracle.66592424.png +0 -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 +1608 -1191
- package/coverage/coverage-final.json +97 -93
- 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 +113 -80
- 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 +245 -41
- 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 +98 -98
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +9 -9
- 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 +79 -229
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +29 -29
- package/coverage/lcov-report/api/controllers/row/external.js.html +17 -8
- 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 +3 -3
- package/coverage/lcov-report/api/controllers/script.js.html +3 -3
- package/coverage/lcov-report/api/controllers/table/external.js.html +1001 -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 +533 -0
- package/coverage/lcov-report/api/controllers/table/utils.js.html +175 -52
- 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 +19 -4
- package/coverage/lcov-report/api/controllers/view/index.html +22 -22
- package/coverage/lcov-report/api/controllers/view/index.js.html +52 -13
- 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 +5 -5
- 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 +536 -2
- 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 +464 -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 +4 -4
- package/coverage/lcov-report/automations/bullboard.js.html +71 -20
- package/coverage/lcov-report/automations/index.html +35 -50
- 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 +46 -16
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +87 -21
- 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 +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 +4 -4
- package/coverage/lcov-report/db/utils.js.html +75 -75
- 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 +106 -91
- 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 +19 -16
- package/coverage/lcov-report/middleware/builder.js.html +22 -13
- package/coverage/lcov-report/middleware/currentapp.js.html +33 -33
- 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 +2 -2
- package/coverage/lcov-report/{automations/thread.js.html → threads/automation.js.html} +90 -33
- package/coverage/lcov-report/threads/index.html +141 -0
- package/coverage/lcov-report/threads/index.js.html +278 -0
- package/coverage/lcov-report/threads/query.js.html +278 -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 +38 -23
- package/coverage/lcov-report/utilities/index.html +48 -48
- package/coverage/lcov-report/utilities/index.js.html +49 -16
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +31 -10
- 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 +2 -2
- 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 +2687 -1942
- package/dist/api/controllers/application.js +16 -6
- package/dist/api/controllers/auth.js +3 -3
- package/dist/api/controllers/datasource.js +67 -16
- package/dist/api/controllers/deploy/index.js +2 -0
- package/dist/api/controllers/dev.js +4 -1
- package/dist/api/controllers/query.js +32 -62
- package/dist/api/controllers/row/ExternalRequest.js +83 -36
- package/dist/api/controllers/row/external.js +3 -1
- package/dist/api/controllers/row/utils.js +6 -12
- package/dist/api/controllers/table/external.js +249 -0
- package/dist/api/controllers/table/index.js +49 -123
- package/dist/api/controllers/table/internal.js +146 -0
- package/dist/api/controllers/table/utils.js +62 -28
- package/dist/api/controllers/user.js +123 -11
- package/dist/api/controllers/view/exporters.js +4 -0
- package/dist/api/controllers/view/index.js +14 -2
- package/dist/api/routes/query.js +1 -1
- package/dist/api/routes/row.js +178 -0
- package/dist/api/routes/table.js +150 -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 +19 -0
- package/dist/definitions/datasource.js +17 -1
- package/dist/environment.js +13 -0
- package/dist/integrations/base/IntegrationBase.js +2 -0
- package/dist/integrations/base/datasourcePlus.js +2 -0
- package/dist/integrations/base/sql.js +350 -177
- package/dist/integrations/base/sqlTable.js +143 -0
- package/dist/integrations/base/utils.js +30 -0
- package/dist/integrations/index.js +6 -0
- package/dist/integrations/microsoftSqlServer.js +117 -9
- package/dist/integrations/mysql.js +16 -85
- package/dist/integrations/oracle.js +367 -0
- package/dist/integrations/postgres.js +35 -28
- package/dist/integrations/utils.js +71 -9
- package/dist/middleware/authorized.js +2 -1
- package/dist/middleware/builder.js +4 -1
- package/dist/package.json +18 -9
- package/dist/tests/utilities/TestConfiguration.js +2 -1
- package/dist/{automations/thread.js → threads/automation.js} +26 -8
- package/dist/threads/index.js +64 -0
- package/dist/threads/query.js +64 -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 +11 -0
- package/dist/utilities/queue/inMemoryQueue.js +8 -0
- package/dist/utilities/scriptRunner.js +4 -1
- package/package.json +19 -10
- package/scripts/dev/manage.js +1 -0
- package/scripts/docs/README.md +31 -0
- package/scripts/docs/generate.js +74 -0
- package/scripts/docs/toSwagger.js +320 -0
- 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/integrations/oracle/docker-compose.yml +19 -0
- package/scripts/integrations/oracle/instantclient/linux/x86-64/basiclite-21.4.zip +0 -0
- package/scripts/integrations/oracle/instantclient/linux/x86-64/install.sh +23 -0
- package/scripts/integrations/oracle/oracle.md +90 -0
- package/scripts/integrations/postgres/docker-compose.yml +3 -3
- package/scripts/likeCypress.ts +33 -0
- package/src/api/controllers/application.js +18 -7
- package/src/api/controllers/auth.js +3 -0
- package/src/api/controllers/datasource.js +84 -16
- package/src/api/controllers/deploy/index.js +2 -0
- package/src/api/controllers/dev.js +4 -1
- package/src/api/controllers/query.js +35 -85
- package/src/api/controllers/row/ExternalRequest.ts +99 -38
- package/src/api/controllers/row/external.js +4 -1
- package/src/api/controllers/row/utils.js +8 -11
- package/src/api/controllers/table/external.js +307 -0
- package/src/api/controllers/table/index.js +47 -137
- package/src/api/controllers/table/internal.js +151 -0
- package/src/api/controllers/table/utils.js +74 -33
- package/src/api/controllers/user.js +132 -13
- package/src/api/controllers/view/exporters.js +5 -0
- package/src/api/controllers/view/index.js +15 -2
- package/src/api/routes/query.js +1 -0
- package/src/api/routes/row.js +178 -0
- package/src/api/routes/table.js +154 -0
- package/src/api/routes/tests/application.spec.js +0 -2
- 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 +38 -9
- package/src/api/routes/tests/screen.spec.js +1 -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 +22 -0
- package/src/definitions/common.ts +7 -1
- package/src/definitions/datasource.ts +21 -3
- package/src/environment.js +15 -0
- 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 +375 -218
- 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/index.ts +7 -0
- package/src/integrations/microsoftSqlServer.ts +145 -13
- package/src/integrations/mongodb.ts +2 -1
- package/src/integrations/mysql.ts +23 -95
- package/src/integrations/oracle.ts +464 -0
- 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/oracle.spec.js +94 -0
- package/src/integrations/tests/postgres.spec.js +4 -0
- package/src/integrations/utils.ts +78 -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} +27 -8
- package/src/threads/index.js +66 -0
- package/src/threads/query.js +66 -0
- package/src/utilities/csvParser.js +48 -5
- package/src/utilities/global.js +7 -2
- package/src/utilities/index.js +11 -0
- 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.550fdba7.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
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">30.
|
|
33
|
+
<span class="strong">30.76% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
35
|
<span class='fraction'>4/13</span>
|
|
36
36
|
</div>
|
|
@@ -181,7 +181,7 @@ exports.endUserPing = <span class="fstat-no" title="function not covered" >as</s
|
|
|
181
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
182
|
Code coverage generated by
|
|
183
183
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
184
|
-
at
|
|
184
|
+
at Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
185
185
|
</div>
|
|
186
186
|
</div>
|
|
187
187
|
<script src="../../prettify.js"></script>
|
|
@@ -205,7 +205,7 @@ exports.update = async function (ctx) {
|
|
|
205
205
|
|
|
206
206
|
try {
|
|
207
207
|
const mainDoc = await getBuilderMainDoc()
|
|
208
|
-
|
|
208
|
+
if (mainDoc.apiKeys == null) {
|
|
209
209
|
mainDoc.apiKeys = {}
|
|
210
210
|
}
|
|
211
211
|
mainDoc.apiKeys[key] = value
|
|
@@ -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 Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
230
230
|
</div>
|
|
231
231
|
</div>
|
|
232
232
|
<script src="../../prettify.js"></script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">78.
|
|
26
|
+
<span class="strong">78.02% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>142/182</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">56.94% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>41/72</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">78.88% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>142/180</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -457,7 +457,18 @@
|
|
|
457
457
|
<a name='L398'></a><a href='#L398'>398</a>
|
|
458
458
|
<a name='L399'></a><a href='#L399'>399</a>
|
|
459
459
|
<a name='L400'></a><a href='#L400'>400</a>
|
|
460
|
-
<a name='L401'></a><a href='#L401'>401</a
|
|
460
|
+
<a name='L401'></a><a href='#L401'>401</a>
|
|
461
|
+
<a name='L402'></a><a href='#L402'>402</a>
|
|
462
|
+
<a name='L403'></a><a href='#L403'>403</a>
|
|
463
|
+
<a name='L404'></a><a href='#L404'>404</a>
|
|
464
|
+
<a name='L405'></a><a href='#L405'>405</a>
|
|
465
|
+
<a name='L406'></a><a href='#L406'>406</a>
|
|
466
|
+
<a name='L407'></a><a href='#L407'>407</a>
|
|
467
|
+
<a name='L408'></a><a href='#L408'>408</a>
|
|
468
|
+
<a name='L409'></a><a href='#L409'>409</a>
|
|
469
|
+
<a name='L410'></a><a href='#L410'>410</a>
|
|
470
|
+
<a name='L411'></a><a href='#L411'>411</a>
|
|
471
|
+
<a name='L412'></a><a href='#L412'>412</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
|
|
461
472
|
<span class="cline-any cline-yes">33x</span>
|
|
462
473
|
<span class="cline-any cline-yes">33x</span>
|
|
463
474
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -477,8 +488,6 @@
|
|
|
477
488
|
<span class="cline-any cline-neutral"> </span>
|
|
478
489
|
<span class="cline-any cline-neutral"> </span>
|
|
479
490
|
<span class="cline-any cline-neutral"> </span>
|
|
480
|
-
<span class="cline-any cline-neutral"> </span>
|
|
481
|
-
<span class="cline-any cline-yes">33x</span>
|
|
482
491
|
<span class="cline-any cline-yes">33x</span>
|
|
483
492
|
<span class="cline-any cline-yes">33x</span>
|
|
484
493
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -503,48 +512,51 @@
|
|
|
503
512
|
<span class="cline-any cline-neutral"> </span>
|
|
504
513
|
<span class="cline-any cline-yes">33x</span>
|
|
505
514
|
<span class="cline-any cline-yes">33x</span>
|
|
515
|
+
<span class="cline-any cline-yes">33x</span>
|
|
516
|
+
<span class="cline-any cline-yes">33x</span>
|
|
517
|
+
<span class="cline-any cline-yes">33x</span>
|
|
506
518
|
<span class="cline-any cline-neutral"> </span>
|
|
507
519
|
<span class="cline-any cline-yes">33x</span>
|
|
508
520
|
<span class="cline-any cline-neutral"> </span>
|
|
509
521
|
<span class="cline-any cline-neutral"> </span>
|
|
510
522
|
<span class="cline-any cline-neutral"> </span>
|
|
511
|
-
<span class="cline-any cline-yes">
|
|
523
|
+
<span class="cline-any cline-yes">189x</span>
|
|
512
524
|
<span class="cline-any cline-neutral"> </span>
|
|
513
525
|
<span class="cline-any cline-neutral"> </span>
|
|
514
526
|
<span class="cline-any cline-neutral"> </span>
|
|
515
527
|
<span class="cline-any cline-neutral"> </span>
|
|
516
528
|
<span class="cline-any cline-neutral"> </span>
|
|
517
|
-
<span class="cline-any cline-yes">
|
|
529
|
+
<span class="cline-any cline-yes">378x</span>
|
|
518
530
|
<span class="cline-any cline-neutral"> </span>
|
|
519
531
|
<span class="cline-any cline-neutral"> </span>
|
|
520
532
|
<span class="cline-any cline-neutral"> </span>
|
|
521
|
-
<span class="cline-any cline-yes">
|
|
533
|
+
<span class="cline-any cline-yes">189x</span>
|
|
522
534
|
<span class="cline-any cline-neutral"> </span>
|
|
523
535
|
<span class="cline-any cline-neutral"> </span>
|
|
524
536
|
<span class="cline-any cline-neutral"> </span>
|
|
525
537
|
<span class="cline-any cline-neutral"> </span>
|
|
526
538
|
<span class="cline-any cline-neutral"> </span>
|
|
527
|
-
<span class="cline-any cline-yes">
|
|
539
|
+
<span class="cline-any cline-yes">12x</span>
|
|
528
540
|
<span class="cline-any cline-neutral"> </span>
|
|
529
541
|
<span class="cline-any cline-neutral"> </span>
|
|
530
542
|
<span class="cline-any cline-neutral"> </span>
|
|
531
|
-
<span class="cline-any cline-yes">
|
|
543
|
+
<span class="cline-any cline-yes">187x</span>
|
|
532
544
|
<span class="cline-any cline-neutral"> </span>
|
|
533
545
|
<span class="cline-any cline-neutral"> </span>
|
|
534
546
|
<span class="cline-any cline-neutral"> </span>
|
|
535
547
|
<span class="cline-any cline-neutral"> </span>
|
|
536
548
|
<span class="cline-any cline-neutral"> </span>
|
|
537
549
|
<span class="cline-any cline-neutral"> </span>
|
|
538
|
-
<span class="cline-any cline-yes">
|
|
550
|
+
<span class="cline-any cline-yes">184x</span>
|
|
539
551
|
<span class="cline-any cline-no"> </span>
|
|
540
|
-
<span class="cline-any cline-yes">
|
|
541
|
-
<span class="cline-any cline-yes">
|
|
552
|
+
<span class="cline-any cline-yes">184x</span>
|
|
553
|
+
<span class="cline-any cline-yes">181x</span>
|
|
542
554
|
<span class="cline-any cline-neutral"> </span>
|
|
543
|
-
<span class="cline-any cline-yes">
|
|
544
|
-
<span class="cline-any cline-yes">
|
|
555
|
+
<span class="cline-any cline-yes">184x</span>
|
|
556
|
+
<span class="cline-any cline-yes">181x</span>
|
|
545
557
|
<span class="cline-any cline-neutral"> </span>
|
|
546
|
-
<span class="cline-any cline-yes">
|
|
547
|
-
<span class="cline-any cline-yes">
|
|
558
|
+
<span class="cline-any cline-yes">184x</span>
|
|
559
|
+
<span class="cline-any cline-yes">11x</span>
|
|
548
560
|
<span class="cline-any cline-neutral"> </span>
|
|
549
561
|
<span class="cline-any cline-yes">173x</span>
|
|
550
562
|
<span class="cline-any cline-yes">173x</span>
|
|
@@ -559,12 +571,12 @@
|
|
|
559
571
|
<span class="cline-any cline-neutral"> </span>
|
|
560
572
|
<span class="cline-any cline-neutral"> </span>
|
|
561
573
|
<span class="cline-any cline-neutral"> </span>
|
|
562
|
-
<span class="cline-any cline-yes">
|
|
563
|
-
<span class="cline-any cline-yes">
|
|
564
|
-
<span class="cline-any cline-yes">
|
|
574
|
+
<span class="cline-any cline-yes">179x</span>
|
|
575
|
+
<span class="cline-any cline-yes">179x</span>
|
|
576
|
+
<span class="cline-any cline-yes">179x</span>
|
|
565
577
|
<span class="cline-any cline-neutral"> </span>
|
|
566
|
-
<span class="cline-any cline-yes">
|
|
567
|
-
<span class="cline-any cline-yes">
|
|
578
|
+
<span class="cline-any cline-yes">179x</span>
|
|
579
|
+
<span class="cline-any cline-yes">179x</span>
|
|
568
580
|
<span class="cline-any cline-neutral"> </span>
|
|
569
581
|
<span class="cline-any cline-neutral"> </span>
|
|
570
582
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -573,18 +585,18 @@
|
|
|
573
585
|
<span class="cline-any cline-neutral"> </span>
|
|
574
586
|
<span class="cline-any cline-neutral"> </span>
|
|
575
587
|
<span class="cline-any cline-neutral"> </span>
|
|
576
|
-
<span class="cline-any cline-yes">
|
|
577
|
-
<span class="cline-any cline-yes">
|
|
578
|
-
<span class="cline-any cline-yes">
|
|
588
|
+
<span class="cline-any cline-yes">179x</span>
|
|
589
|
+
<span class="cline-any cline-yes">179x</span>
|
|
590
|
+
<span class="cline-any cline-yes">179x</span>
|
|
579
591
|
<span class="cline-any cline-neutral"> </span>
|
|
580
592
|
<span class="cline-any cline-neutral"> </span>
|
|
581
593
|
<span class="cline-any cline-neutral"> </span>
|
|
582
|
-
<span class="cline-any cline-yes">
|
|
594
|
+
<span class="cline-any cline-yes">179x</span>
|
|
583
595
|
<span class="cline-any cline-no"> </span>
|
|
584
596
|
<span class="cline-any cline-no"> </span>
|
|
585
597
|
<span class="cline-any cline-no"> </span>
|
|
586
598
|
<span class="cline-any cline-neutral"> </span>
|
|
587
|
-
<span class="cline-any cline-yes">
|
|
599
|
+
<span class="cline-any cline-yes">179x</span>
|
|
588
600
|
<span class="cline-any cline-neutral"> </span>
|
|
589
601
|
<span class="cline-any cline-neutral"> </span>
|
|
590
602
|
<span class="cline-any cline-no"> </span>
|
|
@@ -592,10 +604,10 @@
|
|
|
592
604
|
<span class="cline-any cline-neutral"> </span>
|
|
593
605
|
<span class="cline-any cline-neutral"> </span>
|
|
594
606
|
<span class="cline-any cline-neutral"> </span>
|
|
595
|
-
<span class="cline-any cline-yes">
|
|
607
|
+
<span class="cline-any cline-yes">179x</span>
|
|
596
608
|
<span class="cline-any cline-neutral"> </span>
|
|
597
609
|
<span class="cline-any cline-neutral"> </span>
|
|
598
|
-
<span class="cline-any cline-yes">
|
|
610
|
+
<span class="cline-any cline-yes">179x</span>
|
|
599
611
|
<span class="cline-any cline-neutral"> </span>
|
|
600
612
|
<span class="cline-any cline-neutral"> </span>
|
|
601
613
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -640,19 +652,19 @@
|
|
|
640
652
|
<span class="cline-any cline-neutral"> </span>
|
|
641
653
|
<span class="cline-any cline-neutral"> </span>
|
|
642
654
|
<span class="cline-any cline-yes">33x</span>
|
|
643
|
-
<span class="cline-any cline-yes">
|
|
644
|
-
<span class="cline-any cline-yes">
|
|
645
|
-
<span class="cline-any cline-yes">
|
|
646
|
-
<span class="cline-any cline-yes">
|
|
655
|
+
<span class="cline-any cline-yes">188x</span>
|
|
656
|
+
<span class="cline-any cline-yes">188x</span>
|
|
657
|
+
<span class="cline-any cline-yes">188x</span>
|
|
658
|
+
<span class="cline-any cline-yes">188x</span>
|
|
647
659
|
<span class="cline-any cline-neutral"> </span>
|
|
648
660
|
<span class="cline-any cline-neutral"> </span>
|
|
649
|
-
<span class="cline-any cline-yes">
|
|
650
|
-
<span class="cline-any cline-yes">
|
|
651
|
-
<span class="cline-any cline-yes">
|
|
652
|
-
<span class="cline-any cline-yes">
|
|
661
|
+
<span class="cline-any cline-yes">188x</span>
|
|
662
|
+
<span class="cline-any cline-yes">186x</span>
|
|
663
|
+
<span class="cline-any cline-yes">186x</span>
|
|
664
|
+
<span class="cline-any cline-yes">186x</span>
|
|
653
665
|
<span class="cline-any cline-neutral"> </span>
|
|
654
666
|
<span class="cline-any cline-neutral"> </span>
|
|
655
|
-
<span class="cline-any cline-yes">
|
|
667
|
+
<span class="cline-any cline-yes">188x</span>
|
|
656
668
|
<span class="cline-any cline-neutral"> </span>
|
|
657
669
|
<span class="cline-any cline-neutral"> </span>
|
|
658
670
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -661,29 +673,29 @@
|
|
|
661
673
|
<span class="cline-any cline-neutral"> </span>
|
|
662
674
|
<span class="cline-any cline-neutral"> </span>
|
|
663
675
|
<span class="cline-any cline-yes">33x</span>
|
|
664
|
-
<span class="cline-any cline-yes">
|
|
665
|
-
<span class="cline-any cline-yes">
|
|
676
|
+
<span class="cline-any cline-yes">179x</span>
|
|
677
|
+
<span class="cline-any cline-yes">179x</span>
|
|
666
678
|
<span class="cline-any cline-neutral"> </span>
|
|
667
679
|
<span class="cline-any cline-neutral"> </span>
|
|
668
680
|
<span class="cline-any cline-neutral"> </span>
|
|
669
681
|
<span class="cline-any cline-neutral"> </span>
|
|
670
|
-
<span class="cline-any cline-yes">
|
|
682
|
+
<span class="cline-any cline-yes">179x</span>
|
|
671
683
|
<span class="cline-any cline-no"> </span>
|
|
672
684
|
<span class="cline-any cline-neutral"> </span>
|
|
673
|
-
<span class="cline-any cline-yes">
|
|
674
|
-
<span class="cline-any cline-yes">
|
|
685
|
+
<span class="cline-any cline-yes">179x</span>
|
|
686
|
+
<span class="cline-any cline-yes">179x</span>
|
|
675
687
|
<span class="cline-any cline-neutral"> </span>
|
|
676
|
-
<span class="cline-any cline-yes">
|
|
677
|
-
<span class="cline-any cline-yes">
|
|
688
|
+
<span class="cline-any cline-yes">179x</span>
|
|
689
|
+
<span class="cline-any cline-yes">179x</span>
|
|
678
690
|
<span class="cline-any cline-neutral"> </span>
|
|
679
|
-
<span class="cline-any cline-yes">
|
|
691
|
+
<span class="cline-any cline-yes">179x</span>
|
|
680
692
|
<span class="cline-any cline-neutral"> </span>
|
|
681
|
-
<span class="cline-any cline-yes">
|
|
693
|
+
<span class="cline-any cline-yes">179x</span>
|
|
682
694
|
<span class="cline-any cline-no"> </span>
|
|
683
695
|
<span class="cline-any cline-neutral"> </span>
|
|
684
696
|
<span class="cline-any cline-neutral"> </span>
|
|
685
697
|
<span class="cline-any cline-neutral"> </span>
|
|
686
|
-
<span class="cline-any cline-yes">
|
|
698
|
+
<span class="cline-any cline-yes">179x</span>
|
|
687
699
|
<span class="cline-any cline-neutral"> </span>
|
|
688
700
|
<span class="cline-any cline-neutral"> </span>
|
|
689
701
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -698,13 +710,13 @@
|
|
|
698
710
|
<span class="cline-any cline-neutral"> </span>
|
|
699
711
|
<span class="cline-any cline-neutral"> </span>
|
|
700
712
|
<span class="cline-any cline-neutral"> </span>
|
|
701
|
-
<span class="cline-any cline-yes">
|
|
702
|
-
<span class="cline-any cline-yes">
|
|
713
|
+
<span class="cline-any cline-yes">179x</span>
|
|
714
|
+
<span class="cline-any cline-yes">179x</span>
|
|
703
715
|
<span class="cline-any cline-neutral"> </span>
|
|
704
716
|
<span class="cline-any cline-neutral"> </span>
|
|
705
717
|
<span class="cline-any cline-neutral"> </span>
|
|
706
|
-
<span class="cline-any cline-yes">
|
|
707
|
-
<span class="cline-any cline-yes">
|
|
718
|
+
<span class="cline-any cline-yes">179x</span>
|
|
719
|
+
<span class="cline-any cline-yes">179x</span>
|
|
708
720
|
<span class="cline-any cline-neutral"> </span>
|
|
709
721
|
<span class="cline-any cline-neutral"> </span>
|
|
710
722
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -712,8 +724,9 @@
|
|
|
712
724
|
<span class="cline-any cline-neutral"> </span>
|
|
713
725
|
<span class="cline-any cline-neutral"> </span>
|
|
714
726
|
<span class="cline-any cline-neutral"> </span>
|
|
715
|
-
<span class="cline-any cline-yes">
|
|
716
|
-
<span class="cline-any cline-yes">
|
|
727
|
+
<span class="cline-any cline-yes">179x</span>
|
|
728
|
+
<span class="cline-any cline-yes">179x</span>
|
|
729
|
+
<span class="cline-any cline-yes">179x</span>
|
|
717
730
|
<span class="cline-any cline-neutral"> </span>
|
|
718
731
|
<span class="cline-any cline-neutral"> </span>
|
|
719
732
|
<span class="cline-any cline-yes">33x</span>
|
|
@@ -775,8 +788,12 @@
|
|
|
775
788
|
<span class="cline-any cline-neutral"> </span>
|
|
776
789
|
<span class="cline-any cline-neutral"> </span>
|
|
777
790
|
<span class="cline-any cline-neutral"> </span>
|
|
791
|
+
<span class="cline-any cline-yes">11x</span>
|
|
792
|
+
<span class="cline-any cline-no"> </span>
|
|
793
|
+
<span class="cline-any cline-neutral"> </span>
|
|
778
794
|
<span class="cline-any cline-neutral"> </span>
|
|
779
795
|
<span class="cline-any cline-yes">11x</span>
|
|
796
|
+
<span class="cline-any cline-yes">11x</span>
|
|
780
797
|
<span class="cline-any cline-neutral"> </span>
|
|
781
798
|
<span class="cline-any cline-yes">11x</span>
|
|
782
799
|
<span class="cline-any cline-yes">11x</span>
|
|
@@ -787,6 +804,8 @@
|
|
|
787
804
|
<span class="cline-any cline-no"> </span>
|
|
788
805
|
<span class="cline-any cline-no"> </span>
|
|
789
806
|
<span class="cline-any cline-neutral"> </span>
|
|
807
|
+
<span class="cline-any cline-neutral"> </span>
|
|
808
|
+
<span class="cline-any cline-neutral"> </span>
|
|
790
809
|
<span class="cline-any cline-no"> </span>
|
|
791
810
|
<span class="cline-any cline-neutral"> </span>
|
|
792
811
|
<span class="cline-any cline-no"> </span>
|
|
@@ -816,6 +835,10 @@
|
|
|
816
835
|
<span class="cline-any cline-neutral"> </span>
|
|
817
836
|
<span class="cline-any cline-no"> </span>
|
|
818
837
|
<span class="cline-any cline-neutral"> </span>
|
|
838
|
+
<span class="cline-any cline-neutral"> </span>
|
|
839
|
+
<span class="cline-any cline-neutral"> </span>
|
|
840
|
+
<span class="cline-any cline-no"> </span>
|
|
841
|
+
<span class="cline-any cline-neutral"> </span>
|
|
819
842
|
<span class="cline-any cline-no"> </span>
|
|
820
843
|
<span class="cline-any cline-no"> </span>
|
|
821
844
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -841,21 +864,20 @@
|
|
|
841
864
|
<span class="cline-any cline-neutral"> </span>
|
|
842
865
|
<span class="cline-any cline-yes">5x</span>
|
|
843
866
|
<span class="cline-any cline-neutral"> </span>
|
|
867
|
+
<span class="cline-any cline-yes">5x</span>
|
|
868
|
+
<span class="cline-any cline-yes">5x</span>
|
|
869
|
+
<span class="cline-any cline-neutral"> </span>
|
|
844
870
|
<span class="cline-any cline-neutral"> </span>
|
|
845
871
|
<span class="cline-any cline-yes">33x</span>
|
|
846
|
-
<span class="cline-any cline-yes">
|
|
847
|
-
<span class="cline-any cline-neutral"> </span>
|
|
848
|
-
<span class="cline-any cline-yes">178x</span>
|
|
849
|
-
<span class="cline-any cline-yes">178x</span>
|
|
850
|
-
<span class="cline-any cline-yes">356x</span>
|
|
851
|
-
<span class="cline-any cline-yes">356x</span>
|
|
872
|
+
<span class="cline-any cline-yes">179x</span>
|
|
852
873
|
<span class="cline-any cline-neutral"> </span>
|
|
874
|
+
<span class="cline-any cline-yes">179x</span>
|
|
875
|
+
<span class="cline-any cline-yes">179x</span>
|
|
876
|
+
<span class="cline-any cline-yes">358x</span>
|
|
877
|
+
<span class="cline-any cline-yes">358x</span>
|
|
853
878
|
<span class="cline-any cline-neutral"> </span>
|
|
854
|
-
<span class="cline-any cline-yes">178x</span>
|
|
855
|
-
<span class="cline-any cline-yes">178x</span>
|
|
856
|
-
<span class="cline-any cline-yes">178x</span>
|
|
857
879
|
<span class="cline-any cline-neutral"> </span>
|
|
858
|
-
<span class="cline-any cline-yes">
|
|
880
|
+
<span class="cline-any cline-yes">179x</span>
|
|
859
881
|
<span class="cline-any cline-neutral"> </span>
|
|
860
882
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const CouchDB = require("../../db")
|
|
861
883
|
const env = require("../../environment")
|
|
@@ -874,14 +896,12 @@ const {
|
|
|
874
896
|
generateAppID,
|
|
875
897
|
getLayoutParams,
|
|
876
898
|
getScreenParams,
|
|
877
|
-
generateScreenID,
|
|
878
899
|
generateDevAppID,
|
|
879
900
|
DocumentTypes,
|
|
880
901
|
AppStatus,
|
|
881
902
|
} = require("../../db/utils")
|
|
882
903
|
const { BUILTIN_ROLE_IDS, AccessController } = require("@budibase/auth/roles")
|
|
883
904
|
const { BASE_LAYOUTS } = require("../../constants/layouts")
|
|
884
|
-
const { createHomeScreen } = require("../../constants/screens")
|
|
885
905
|
const { cloneDeep } = require("lodash/fp")
|
|
886
906
|
const { processObject } = require("@budibase/string-templates")
|
|
887
907
|
const {
|
|
@@ -903,6 +923,9 @@ const {
|
|
|
903
923
|
revertClientLibrary,
|
|
904
924
|
} = require("../../utilities/fileSystem/clientLibrary")
|
|
905
925
|
const { getTenantId, isMultiTenant } = require("@budibase/auth/tenancy")
|
|
926
|
+
const { syncGlobalUsers } = require("./user")
|
|
927
|
+
const { app: appCache } = require("@budibase/auth/cache")
|
|
928
|
+
const { cleanupAutomations } = require("../../automations/utils")
|
|
906
929
|
|
|
907
930
|
const URL_REGEX_SLASH = /\/|\\/g
|
|
908
931
|
|
|
@@ -1004,10 +1027,10 @@ exports.fetch = async ctx => {
|
|
|
1004
1027
|
const apps = await getAllApps(CouchDB, { dev, all })
|
|
1005
1028
|
|
|
1006
1029
|
// get the locks for all the dev apps
|
|
1007
|
-
|
|
1030
|
+
if (dev || <span class="branch-1 cbranch-no" title="branch not covered" >all)</span> {
|
|
1008
1031
|
const locks = await getAllLocks()
|
|
1009
1032
|
for (let app of apps) {
|
|
1010
|
-
|
|
1033
|
+
if (app.status !== "development") {
|
|
1011
1034
|
continue
|
|
1012
1035
|
}
|
|
1013
1036
|
const lock = <span class="cstat-no" title="statement not covered" >locks.find(<span class="fstat-no" title="function not covered" >lo</span>ck => <span class="cstat-no" title="statement not covered" >lock.appId === app.appId)</span></span>
|
|
@@ -1103,7 +1126,7 @@ exports.create = async ctx => {
|
|
|
1103
1126
|
|
|
1104
1127
|
// Only create the default home screens and layout if we aren't importing
|
|
1105
1128
|
// an app
|
|
1106
|
-
|
|
1129
|
+
if (useTemplate !== "true") {
|
|
1107
1130
|
await createEmptyAppPackage(ctx, newApplication)
|
|
1108
1131
|
}
|
|
1109
1132
|
|
|
@@ -1112,6 +1135,7 @@ exports.create = async ctx => {
|
|
|
1112
1135
|
await createApp(appId)
|
|
1113
1136
|
}
|
|
1114
1137
|
|
|
1138
|
+
await appCache.invalidateAppMetadata(appId, newApplication)
|
|
1115
1139
|
ctx.status = 200
|
|
1116
1140
|
ctx.body = newApplication
|
|
1117
1141
|
}
|
|
@@ -1175,8 +1199,12 @@ exports.delete = async ctx => {
|
|
|
1175
1199
|
if (!env.isTest() && !ctx.query.unpublish) {
|
|
1176
1200
|
await deleteApp(ctx.params.appId)
|
|
1177
1201
|
}
|
|
1202
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (ctx.query && <span class="branch-1 cbranch-no" title="branch not covered" >ctx.query.unpublish)</span> {
|
|
1203
|
+
<span class="cstat-no" title="statement not covered" > await cleanupAutomations(ctx.params.appId)</span>
|
|
1204
|
+
}
|
|
1178
1205
|
// make sure the app/role doesn't stick around after the app has been deleted
|
|
1179
1206
|
await removeAppFromUserRoles(ctx, ctx.params.appId)
|
|
1207
|
+
await appCache.invalidateAppMetadata(ctx.params.appId)
|
|
1180
1208
|
|
|
1181
1209
|
ctx.status = 200
|
|
1182
1210
|
ctx.body = result
|
|
@@ -1187,6 +1215,8 @@ exports.sync = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
|
1187
1215
|
<span class="cstat-no" title="statement not covered" > if (!isDevAppID(appId)) {</span>
|
|
1188
1216
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, "This action cannot be performed for production apps")</span>
|
|
1189
1217
|
}
|
|
1218
|
+
|
|
1219
|
+
// replicate prod to dev
|
|
1190
1220
|
const prodAppId = <span class="cstat-no" title="statement not covered" >getDeployedAppID(appId)</span>
|
|
1191
1221
|
|
|
1192
1222
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
@@ -1216,6 +1246,10 @@ exports.sync = <span class="fstat-no" title="function not covered" >as</span>ync
|
|
|
1216
1246
|
} catch (err) {
|
|
1217
1247
|
<span class="cstat-no" title="statement not covered" > error = err</span>
|
|
1218
1248
|
}
|
|
1249
|
+
|
|
1250
|
+
// sync the users
|
|
1251
|
+
<span class="cstat-no" title="statement not covered" > await syncGlobalUsers(appId)</span>
|
|
1252
|
+
|
|
1219
1253
|
<span class="cstat-no" title="statement not covered" > if (error) {</span>
|
|
1220
1254
|
<span class="cstat-no" title="statement not covered" > ctx.throw(400, error)</span>
|
|
1221
1255
|
} else {
|
|
@@ -1231,7 +1265,7 @@ const updateAppPackage = async (ctx, appPackage, appId) => {
|
|
|
1231
1265
|
const application = await db.get(DocumentTypes.APP_METADATA)
|
|
1232
1266
|
|
|
1233
1267
|
const newAppPackage = { ...application, ...appPackage, url }
|
|
1234
|
-
|
|
1268
|
+
if (appPackage._rev !== application._rev) {
|
|
1235
1269
|
newAppPackage._rev = application._rev
|
|
1236
1270
|
}
|
|
1237
1271
|
|
|
@@ -1239,7 +1273,10 @@ const updateAppPackage = async (ctx, appPackage, appId) => {
|
|
|
1239
1273
|
// Redis, shouldn't ever store it
|
|
1240
1274
|
delete newAppPackage.lockedBy
|
|
1241
1275
|
|
|
1242
|
-
|
|
1276
|
+
const response = await db.put(newAppPackage)
|
|
1277
|
+
// remove any cached metadata, so that it will be updated
|
|
1278
|
+
await appCache.invalidateAppMetadata(appId)
|
|
1279
|
+
return response
|
|
1243
1280
|
}
|
|
1244
1281
|
|
|
1245
1282
|
const createEmptyAppPackage = async (ctx, app) => {
|
|
@@ -1250,10 +1287,6 @@ const createEmptyAppPackage = async (ctx, app) => {
|
|
|
1250
1287
|
const cloned = cloneDeep(layout)
|
|
1251
1288
|
screensAndLayouts.push(await processObject(cloned, app))
|
|
1252
1289
|
}
|
|
1253
|
-
|
|
1254
|
-
const homeScreen = createHomeScreen(app)
|
|
1255
|
-
homeScreen._id = generateScreenID()
|
|
1256
|
-
screensAndLayouts.push(homeScreen)
|
|
1257
1290
|
|
|
1258
1291
|
await db.bulkDocs(screensAndLayouts)
|
|
1259
1292
|
}
|
|
@@ -1264,7 +1297,7 @@ const createEmptyAppPackage = async (ctx, app) => {
|
|
|
1264
1297
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1265
1298
|
Code coverage generated by
|
|
1266
1299
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1267
|
-
at
|
|
1300
|
+
at Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
1268
1301
|
</div>
|
|
1269
1302
|
</div>
|
|
1270
1303
|
<script src="../../prettify.js"></script>
|
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">85.18% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>23/27</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">85.18% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>23/27</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -109,7 +109,10 @@
|
|
|
109
109
|
<a name='L50'></a><a href='#L50'>50</a>
|
|
110
110
|
<a name='L51'></a><a href='#L51'>51</a>
|
|
111
111
|
<a name='L52'></a><a href='#L52'>52</a>
|
|
112
|
-
<a name='L53'></a><a href='#L53'>53</a
|
|
112
|
+
<a name='L53'></a><a href='#L53'>53</a>
|
|
113
|
+
<a name='L54'></a><a href='#L54'>54</a>
|
|
114
|
+
<a name='L55'></a><a href='#L55'>55</a>
|
|
115
|
+
<a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
|
|
113
116
|
<span class="cline-any cline-yes">23x</span>
|
|
114
117
|
<span class="cline-any cline-yes">23x</span>
|
|
115
118
|
<span class="cline-any cline-yes">23x</span>
|
|
@@ -127,6 +130,8 @@
|
|
|
127
130
|
<span class="cline-any cline-yes">1x</span>
|
|
128
131
|
<span class="cline-any cline-neutral"> </span>
|
|
129
132
|
<span class="cline-any cline-yes">1x</span>
|
|
133
|
+
<span class="cline-any cline-neutral"> </span>
|
|
134
|
+
<span class="cline-any cline-yes">1x</span>
|
|
130
135
|
<span class="cline-any cline-yes">1x</span>
|
|
131
136
|
<span class="cline-any cline-neutral"> </span>
|
|
132
137
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -149,6 +154,7 @@
|
|
|
149
154
|
<span class="cline-any cline-yes">1x</span>
|
|
150
155
|
<span class="cline-any cline-neutral"> </span>
|
|
151
156
|
<span class="cline-any cline-neutral"> </span>
|
|
157
|
+
<span class="cline-any cline-neutral"> </span>
|
|
152
158
|
<span class="cline-any cline-yes">1x</span>
|
|
153
159
|
<span class="cline-any cline-yes">1x</span>
|
|
154
160
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -177,8 +183,10 @@ exports.fetchSelf = async ctx => {
|
|
|
177
183
|
}
|
|
178
184
|
|
|
179
185
|
const user = await getFullUser(ctx, userId)
|
|
186
|
+
// this shouldn't be returned by the app self
|
|
187
|
+
delete user.roles
|
|
180
188
|
|
|
181
|
-
|
|
189
|
+
if (appId) {
|
|
182
190
|
const db = new CouchDB(appId)
|
|
183
191
|
// remove the full roles structure
|
|
184
192
|
delete user.roles
|
|
@@ -197,19 +205,20 @@ exports.fetchSelf = async ctx => {
|
|
|
197
205
|
<span class="cstat-no" title="statement not covered" > response = {}</span>
|
|
198
206
|
}
|
|
199
207
|
// user has a role of some sort, return them
|
|
200
|
-
else
|
|
208
|
+
else if (err.status === 404) {
|
|
201
209
|
const metadata = {
|
|
210
|
+
...user,
|
|
202
211
|
_id: userId,
|
|
203
212
|
}
|
|
204
213
|
const dbResp = await db.put(metadata)
|
|
205
214
|
user._rev = dbResp.rev
|
|
206
215
|
response = user
|
|
207
|
-
} else {
|
|
216
|
+
} else <span class="missing-if-branch" title="else path not taken" >E</span>{
|
|
208
217
|
<span class="cstat-no" title="statement not covered" > response = user</span>
|
|
209
218
|
}
|
|
210
219
|
ctx.body = response
|
|
211
220
|
}
|
|
212
|
-
} else {
|
|
221
|
+
} else <span class="missing-if-branch" title="else path not taken" >E</span>{
|
|
213
222
|
<span class="cstat-no" title="statement not covered" > ctx.body = user</span>
|
|
214
223
|
}
|
|
215
224
|
}
|
|
@@ -220,7 +229,7 @@ exports.fetchSelf = async ctx => {
|
|
|
220
229
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
221
230
|
Code coverage generated by
|
|
222
231
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
223
|
-
at
|
|
232
|
+
at Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
224
233
|
</div>
|
|
225
234
|
</div>
|
|
226
235
|
<script src="../../prettify.js"></script>
|
|
@@ -30,14 +30,14 @@
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">71.
|
|
33
|
+
<span class="strong">71.87% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
35
|
<span class='fraction'>23/32</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">92.
|
|
40
|
+
<span class="strong">92.85% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
42
|
<span class='fraction'>13/14</span>
|
|
43
43
|
</div>
|
|
@@ -736,7 +736,7 @@ exports.test = async function (ctx) {
|
|
|
736
736
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
737
737
|
Code coverage generated by
|
|
738
738
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
739
|
-
at
|
|
739
|
+
at Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
740
740
|
</div>
|
|
741
741
|
</div>
|
|
742
742
|
<script src="../../prettify.js"></script>
|
|
@@ -91,7 +91,7 @@ exports.exportAppDump = async function (ctx) {
|
|
|
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">istanbul</a>
|
|
94
|
-
at
|
|
94
|
+
at Fri Nov 26 2021 18:59:43 GMT+0000 (Coordinated Universal Time)
|
|
95
95
|
</div>
|
|
96
96
|
</div>
|
|
97
97
|
<script src="../../prettify.js"></script>
|