@budibase/server 1.0.80 → 1.0.81-alpha.2
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__/node-fetch.ts +1 -0
- package/builder/assets/{index.c8d1e8f0.css → index.8b1dc06c.css} +2 -2
- package/builder/assets/index.e4d4c510.js +1291 -0
- package/builder/assets/{vendor.20f80cec.js → vendor.a7c6ad0a.js} +190 -216
- package/builder/index.html +3 -3
- package/coverage/clover.xml +2531 -2440
- package/coverage/coverage-final.json +138 -137
- package/coverage/lcov-report/api/controllers/analytics.js.html +6 -6
- package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
- package/coverage/lcov-report/api/controllers/application.js.html +152 -149
- package/coverage/lcov-report/api/controllers/auth.js.html +7 -7
- package/coverage/lcov-report/api/controllers/automation.js.html +21 -21
- package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
- package/coverage/lcov-report/api/controllers/cloud.js.html +11 -11
- package/coverage/lcov-report/api/controllers/component.js.html +5 -5
- package/coverage/lcov-report/api/controllers/datasource.js.html +16 -16
- package/coverage/lcov-report/api/controllers/dev.js.html +19 -19
- package/coverage/lcov-report/api/controllers/index.html +16 -16
- package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
- package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
- package/coverage/lcov-report/api/controllers/metadata.js.html +9 -9
- package/coverage/lcov-report/api/controllers/migrations.js.html +4 -4
- package/coverage/lcov-report/api/controllers/permission.js.html +15 -15
- package/coverage/lcov-report/api/controllers/query/index.html +1 -1
- package/coverage/lcov-report/api/controllers/query/index.js.html +26 -26
- package/coverage/lcov-report/api/controllers/query/validation.js.html +10 -10
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
- package/coverage/lcov-report/api/controllers/row/external.js.html +86 -23
- package/coverage/lcov-report/api/controllers/row/index.html +46 -46
- package/coverage/lcov-report/api/controllers/row/index.js.html +76 -49
- package/coverage/lcov-report/api/controllers/row/internal.js.html +144 -84
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +204 -204
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -24
- package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -29
- package/coverage/lcov-report/api/controllers/screen.js.html +7 -7
- package/coverage/lcov-report/api/controllers/script.js.html +4 -4
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +49 -49
- package/coverage/lcov-report/api/controllers/table/external.js.html +62 -20
- package/coverage/lcov-report/api/controllers/table/index.html +20 -20
- package/coverage/lcov-report/api/controllers/table/index.js.html +47 -44
- package/coverage/lcov-report/api/controllers/table/internal.js.html +50 -50
- package/coverage/lcov-report/api/controllers/table/utils.js.html +80 -80
- package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
- package/coverage/lcov-report/api/controllers/user.js.html +19 -19
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +14 -14
- package/coverage/lcov-report/api/controllers/view/utils.js.html +12 -12
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
- package/coverage/lcov-report/api/controllers/webhook.js.html +18 -27
- package/coverage/lcov-report/api/index.html +10 -10
- package/coverage/lcov-report/api/index.js.html +37 -28
- package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
- package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
- package/coverage/lcov-report/api/routes/application.js.html +9 -9
- package/coverage/lcov-report/api/routes/auth.js.html +6 -6
- package/coverage/lcov-report/api/routes/automation.js.html +19 -109
- package/coverage/lcov-report/api/routes/backup.js.html +8 -8
- package/coverage/lcov-report/api/routes/cloud.js.html +8 -8
- package/coverage/lcov-report/api/routes/component.js.html +8 -8
- package/coverage/lcov-report/api/routes/datasource.js.html +18 -156
- package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
- package/coverage/lcov-report/api/routes/dev.js.html +13 -13
- package/coverage/lcov-report/api/routes/index.html +35 -35
- package/coverage/lcov-report/api/routes/index.js.html +38 -32
- package/coverage/lcov-report/api/routes/integration.js.html +8 -8
- package/coverage/lcov-report/api/routes/layout.js.html +8 -8
- package/coverage/lcov-report/api/routes/metadata.js.html +9 -9
- package/coverage/lcov-report/api/routes/migrations.js.html +7 -7
- package/coverage/lcov-report/api/routes/permission.js.html +16 -58
- package/coverage/lcov-report/api/routes/query.js.html +10 -10
- package/coverage/lcov-report/api/routes/role.js.html +15 -78
- package/coverage/lcov-report/api/routes/routing.js.html +8 -8
- package/coverage/lcov-report/api/routes/row.js.html +80 -14
- package/coverage/lcov-report/api/routes/screen.js.html +14 -95
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/static.js.html +13 -13
- package/coverage/lcov-report/api/routes/table.js.html +17 -62
- package/coverage/lcov-report/api/routes/templates.js.html +8 -8
- package/coverage/lcov-report/api/routes/user.js.html +8 -8
- package/coverage/lcov-report/api/routes/utils/index.html +111 -0
- package/coverage/lcov-report/api/routes/utils/validators.js.html +737 -0
- package/coverage/lcov-report/api/routes/view.js.html +10 -10
- package/coverage/lcov-report/api/routes/webhook.js.html +14 -62
- package/coverage/lcov-report/automations/actions.js.html +24 -24
- package/coverage/lcov-report/automations/automationUtils.js.html +5 -5
- package/coverage/lcov-report/automations/bullboard.js.html +16 -16
- package/coverage/lcov-report/automations/index.html +1 -1
- package/coverage/lcov-report/automations/index.js.html +7 -7
- package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
- package/coverage/lcov-report/automations/steps/createRow.js.html +7 -7
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
- package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
- package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
- package/coverage/lcov-report/automations/steps/filter.js.html +12 -9
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
- package/coverage/lcov-report/automations/steps/queryRows.js.html +11 -11
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
- package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
- package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
- package/coverage/lcov-report/automations/steps/updateRow.js.html +6 -6
- package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
- package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
- 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 +26 -26
- package/coverage/lcov-report/automations/utils.js.html +35 -35
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +40 -28
- package/coverage/lcov-report/constants/layouts.js.html +5 -5
- package/coverage/lcov-report/constants/screens.js.html +4 -4
- package/coverage/lcov-report/db/client.js.html +18 -18
- package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
- package/coverage/lcov-report/db/index.html +15 -15
- package/coverage/lcov-report/db/index.js.html +3 -3
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +21 -21
- package/coverage/lcov-report/db/linkedRows/index.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.js.html +36 -36
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +30 -30
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +123 -87
- 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 +8 -8
- package/coverage/lcov-report/events/utils.js.html +18 -18
- package/coverage/lcov-report/index.html +91 -76
- 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 +5 -5
- package/coverage/lcov-report/middleware/authorized.js.html +29 -29
- package/coverage/lcov-report/middleware/builder.js.html +16 -16
- package/coverage/lcov-report/middleware/currentapp.js.html +44 -44
- package/coverage/lcov-report/middleware/index.html +1 -1
- package/coverage/lcov-report/middleware/joi-validator.js.html +14 -14
- package/coverage/lcov-report/middleware/resourceId.js.html +29 -29
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +17 -17
- package/coverage/lcov-report/middleware/utils.js.html +4 -4
- package/coverage/lcov-report/threads/automation.js.html +1 -1
- package/coverage/lcov-report/threads/index.html +19 -19
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +123 -39
- package/coverage/lcov-report/threads/utils.js.html +14 -14
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
- package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
- package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
- package/coverage/lcov-report/utilities/global.js.html +28 -28
- package/coverage/lcov-report/utilities/index.html +18 -18
- package/coverage/lcov-report/utilities/index.js.html +24 -24
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +9 -9
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
- package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +60 -60
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +13 -13
- package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
- package/coverage/lcov-report/utilities/security.js.html +8 -8
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +12 -12
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +8 -8
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +5 -5
- package/coverage/lcov-report/utilities/workerRequests.js.html +200 -53
- package/coverage/lcov.info +3555 -3411
- package/dist/api/controllers/application.js +1 -0
- package/dist/api/controllers/public/applications.js +94 -0
- package/dist/api/controllers/public/mapping/applications.js +29 -0
- package/dist/api/controllers/public/mapping/index.js +11 -0
- package/dist/api/controllers/public/mapping/queries.js +36 -0
- package/dist/api/controllers/public/mapping/rows.js +24 -0
- package/dist/api/controllers/public/mapping/tables.js +23 -0
- package/dist/api/controllers/public/mapping/types.js +2 -0
- package/dist/api/controllers/public/mapping/users.js +29 -0
- package/dist/api/controllers/public/queries.js +38 -0
- package/dist/api/controllers/public/rows.js +97 -0
- package/dist/api/controllers/public/tables.js +75 -0
- package/dist/api/controllers/public/users.js +95 -0
- package/dist/api/controllers/public/utils.js +49 -0
- package/dist/api/controllers/row/external.js +18 -0
- package/dist/api/controllers/row/index.js +11 -0
- package/dist/api/controllers/row/internal.js +15 -1
- package/dist/api/controllers/table/external.js +8 -2
- package/dist/api/controllers/table/index.js +2 -1
- package/dist/api/controllers/webhook.js +3 -5
- package/dist/api/index.js +3 -1
- package/dist/api/routes/automation.js +3 -31
- package/dist/api/routes/datasource.js +3 -50
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/permission.js +4 -14
- package/dist/api/routes/public/applications.js +141 -0
- package/dist/api/routes/public/index.js +101 -0
- package/dist/api/routes/public/middleware/mapper.js +94 -0
- package/dist/api/routes/public/queries.js +77 -0
- package/dist/api/routes/public/rows.js +229 -0
- package/dist/api/routes/public/tables.js +154 -0
- package/dist/api/routes/public/users.js +137 -0
- package/dist/api/routes/public/utils/Endpoint.js +36 -0
- package/dist/api/routes/role.js +3 -19
- package/dist/api/routes/row.js +18 -5
- package/dist/api/routes/screen.js +2 -23
- package/dist/api/routes/table.js +3 -17
- package/dist/api/routes/tests/utilities/index.js +23 -0
- package/dist/api/routes/utils/validators.js +200 -0
- package/dist/api/routes/webhook.js +2 -17
- package/dist/automations/steps/filter.js +2 -2
- package/dist/automations/steps/queryRows.js +1 -1
- package/dist/automations/utils.js +2 -2
- package/dist/constants/index.js +3 -0
- package/dist/db/utils.js +11 -0
- package/dist/definitions/openapi.js +6 -0
- package/dist/environment.js +1 -0
- package/dist/integrations/base/sql.js +16 -1
- package/dist/integrations/base/sqlTable.js +21 -9
- package/dist/integrations/googlesheets.js +3 -0
- package/dist/integrations/microsoftSqlServer.js +60 -43
- package/dist/integrations/mysql.js +3 -0
- package/dist/integrations/oracle.js +14 -19
- package/dist/integrations/postgres.js +34 -28
- package/dist/integrations/utils.js +32 -15
- package/dist/package.json +11 -7
- package/dist/tests/utilities/TestConfiguration.js +25 -8
- package/dist/threads/query.js +33 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/workerRequests.js +50 -15
- package/package.json +12 -8
- package/scripts/integrations/mssql/data/setup.sql +18 -1
- package/scripts/integrations/oracle/oracle.md +2 -2
- package/scripts/integrations/postgres/init.sql +11 -3
- package/scripts/likeCypress.ts +9 -6
- package/specs/generate.js +94 -0
- package/specs/openapi.json +2232 -0
- package/specs/openapi.yaml +1538 -0
- package/specs/parameters.js +59 -0
- package/specs/resources/application.js +101 -0
- package/specs/resources/index.js +24 -0
- package/specs/resources/misc.js +12 -0
- package/specs/resources/query.js +189 -0
- package/specs/resources/row.js +125 -0
- package/specs/resources/table.js +191 -0
- package/specs/resources/user.js +126 -0
- package/specs/resources/utils/Resource.js +26 -0
- package/specs/resources/utils/index.js +11 -0
- package/specs/security.js +7 -0
- package/src/api/controllers/application.js +1 -0
- package/src/api/controllers/public/applications.ts +74 -0
- package/src/api/controllers/public/mapping/applications.ts +32 -0
- package/src/api/controllers/public/mapping/index.ts +13 -0
- package/src/api/controllers/public/mapping/queries.ts +39 -0
- package/src/api/controllers/public/mapping/rows.ts +31 -0
- package/src/api/controllers/public/mapping/tables.ts +26 -0
- package/src/api/controllers/public/mapping/types.ts +13 -0
- package/src/api/controllers/public/mapping/users.ts +32 -0
- package/src/api/controllers/public/queries.ts +20 -0
- package/src/api/controllers/public/rows.ts +77 -0
- package/src/api/controllers/public/tables.ts +56 -0
- package/src/api/controllers/public/users.ts +82 -0
- package/src/api/controllers/public/utils.ts +38 -0
- package/src/api/controllers/row/ExternalRequest.ts +1 -1
- package/src/api/controllers/row/external.js +21 -0
- package/src/api/controllers/row/index.js +9 -0
- package/src/api/controllers/row/internal.js +20 -0
- package/src/api/controllers/table/external.js +16 -2
- package/src/api/controllers/table/index.js +2 -1
- package/src/api/controllers/webhook.js +3 -6
- package/src/api/index.js +4 -1
- package/src/api/routes/automation.js +3 -33
- package/src/api/routes/datasource.js +6 -52
- package/src/api/routes/index.js +2 -0
- package/src/api/routes/permission.js +4 -18
- package/src/api/routes/public/applications.ts +156 -0
- package/src/api/routes/public/index.ts +118 -0
- package/src/api/routes/public/middleware/mapper.ts +81 -0
- package/src/api/routes/public/queries.ts +81 -0
- package/src/api/routes/public/rows.ts +242 -0
- package/src/api/routes/public/tables.ts +169 -0
- package/src/api/routes/public/tests/compare.spec.js +184 -0
- package/src/api/routes/public/users.ts +144 -0
- package/src/api/routes/public/utils/Endpoint.ts +51 -0
- package/src/api/routes/role.js +3 -24
- package/src/api/routes/row.js +24 -2
- package/src/api/routes/screen.js +2 -29
- package/src/api/routes/table.js +4 -19
- package/src/api/routes/tests/utilities/index.js +24 -0
- package/src/api/routes/utils/validators.js +219 -0
- package/src/api/routes/webhook.js +2 -18
- package/src/automations/steps/filter.js +3 -2
- package/src/automations/steps/queryRows.js +1 -1
- package/src/automations/utils.js +2 -2
- package/src/constants/index.js +4 -0
- package/src/db/utils.js +12 -0
- package/src/definitions/common.ts +4 -0
- package/src/definitions/datasource.ts +7 -0
- package/src/definitions/openapi.ts +943 -0
- package/src/environment.js +1 -0
- package/src/integrations/base/datasourcePlus.ts +3 -0
- package/src/integrations/base/sql.ts +16 -1
- package/src/integrations/base/sqlTable.ts +35 -13
- package/src/integrations/googlesheets.ts +5 -2
- package/src/integrations/microsoftSqlServer.ts +86 -61
- package/src/integrations/mysql.ts +4 -0
- package/src/integrations/oracle.ts +27 -35
- package/src/integrations/postgres.ts +33 -26
- package/src/integrations/utils.ts +43 -15
- package/src/tests/utilities/TestConfiguration.js +23 -2
- package/src/threads/query.js +37 -9
- package/src/utilities/workerRequests.js +65 -16
- package/builder/assets/index.22a39cc9.js +0 -1352
- package/scripts/proxy/generateProxyConfig.js +0 -70
|
@@ -71,20 +71,20 @@
|
|
|
71
71
|
<a name='L12'></a><a href='#L12'>12</a>
|
|
72
72
|
<a name='L13'></a><a href='#L13'>13</a>
|
|
73
73
|
<a name='L14'></a><a href='#L14'>14</a>
|
|
74
|
-
<a name='L15'></a><a href='#L15'>15</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
75
|
-
<span class="cline-any cline-yes">
|
|
76
|
-
<span class="cline-any cline-yes">
|
|
77
|
-
<span class="cline-any cline-yes">
|
|
74
|
+
<a name='L15'></a><a href='#L15'>15</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
75
|
+
<span class="cline-any cline-yes">24x</span>
|
|
76
|
+
<span class="cline-any cline-yes">24x</span>
|
|
77
|
+
<span class="cline-any cline-yes">24x</span>
|
|
78
78
|
<span class="cline-any cline-neutral"> </span>
|
|
79
|
-
<span class="cline-any cline-yes">
|
|
79
|
+
<span class="cline-any cline-yes">24x</span>
|
|
80
80
|
<span class="cline-any cline-neutral"> </span>
|
|
81
|
-
<span class="cline-any cline-yes">
|
|
81
|
+
<span class="cline-any cline-yes">24x</span>
|
|
82
82
|
<span class="cline-any cline-neutral"> </span>
|
|
83
83
|
<span class="cline-any cline-neutral"> </span>
|
|
84
84
|
<span class="cline-any cline-neutral"> </span>
|
|
85
85
|
<span class="cline-any cline-neutral"> </span>
|
|
86
86
|
<span class="cline-any cline-neutral"> </span>
|
|
87
|
-
<span class="cline-any cline-yes">
|
|
87
|
+
<span class="cline-any cline-yes">24x</span>
|
|
88
88
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
89
89
|
const authorized = require("../../middleware/authorized")
|
|
90
90
|
const { BUILDER } = require("@budibase/backend-core/permissions")
|
|
@@ -106,7 +106,7 @@ module.exports = router
|
|
|
106
106
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
107
107
|
Code coverage generated by
|
|
108
108
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
109
|
-
at Tue Mar 08 2022
|
|
109
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
110
110
|
</div>
|
|
111
111
|
</div>
|
|
112
112
|
<script src="../../prettify.js"></script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>10/10</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>10/10</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -311,22 +311,45 @@
|
|
|
311
311
|
<a name='L252'></a><a href='#L252'>252</a>
|
|
312
312
|
<a name='L253'></a><a href='#L253'>253</a>
|
|
313
313
|
<a name='L254'></a><a href='#L254'>254</a>
|
|
314
|
-
<a name='L255'></a><a href='#L255'>255</a
|
|
315
|
-
<
|
|
316
|
-
<
|
|
317
|
-
<
|
|
314
|
+
<a name='L255'></a><a href='#L255'>255</a>
|
|
315
|
+
<a name='L256'></a><a href='#L256'>256</a>
|
|
316
|
+
<a name='L257'></a><a href='#L257'>257</a>
|
|
317
|
+
<a name='L258'></a><a href='#L258'>258</a>
|
|
318
|
+
<a name='L259'></a><a href='#L259'>259</a>
|
|
319
|
+
<a name='L260'></a><a href='#L260'>260</a>
|
|
320
|
+
<a name='L261'></a><a href='#L261'>261</a>
|
|
321
|
+
<a name='L262'></a><a href='#L262'>262</a>
|
|
322
|
+
<a name='L263'></a><a href='#L263'>263</a>
|
|
323
|
+
<a name='L264'></a><a href='#L264'>264</a>
|
|
324
|
+
<a name='L265'></a><a href='#L265'>265</a>
|
|
325
|
+
<a name='L266'></a><a href='#L266'>266</a>
|
|
326
|
+
<a name='L267'></a><a href='#L267'>267</a>
|
|
327
|
+
<a name='L268'></a><a href='#L268'>268</a>
|
|
328
|
+
<a name='L269'></a><a href='#L269'>269</a>
|
|
329
|
+
<a name='L270'></a><a href='#L270'>270</a>
|
|
330
|
+
<a name='L271'></a><a href='#L271'>271</a>
|
|
331
|
+
<a name='L272'></a><a href='#L272'>272</a>
|
|
332
|
+
<a name='L273'></a><a href='#L273'>273</a>
|
|
333
|
+
<a name='L274'></a><a href='#L274'>274</a>
|
|
334
|
+
<a name='L275'></a><a href='#L275'>275</a>
|
|
335
|
+
<a name='L276'></a><a href='#L276'>276</a>
|
|
336
|
+
<a name='L277'></a><a href='#L277'>277</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
337
|
+
<span class="cline-any cline-yes">24x</span>
|
|
338
|
+
<span class="cline-any cline-yes">24x</span>
|
|
339
|
+
<span class="cline-any cline-yes">24x</span>
|
|
318
340
|
<span class="cline-any cline-neutral"> </span>
|
|
319
341
|
<span class="cline-any cline-neutral"> </span>
|
|
320
342
|
<span class="cline-any cline-neutral"> </span>
|
|
321
|
-
<span class="cline-any cline-yes">
|
|
343
|
+
<span class="cline-any cline-yes">24x</span>
|
|
322
344
|
<span class="cline-any cline-neutral"> </span>
|
|
323
345
|
<span class="cline-any cline-neutral"> </span>
|
|
324
346
|
<span class="cline-any cline-neutral"> </span>
|
|
325
|
-
<span class="cline-any cline-yes">
|
|
347
|
+
<span class="cline-any cline-yes">24x</span>
|
|
348
|
+
<span class="cline-any cline-yes">24x</span>
|
|
326
349
|
<span class="cline-any cline-neutral"> </span>
|
|
327
|
-
<span class="cline-any cline-yes">
|
|
350
|
+
<span class="cline-any cline-yes">24x</span>
|
|
328
351
|
<span class="cline-any cline-neutral"> </span>
|
|
329
|
-
<span class="cline-any cline-yes">
|
|
352
|
+
<span class="cline-any cline-yes">24x</span>
|
|
330
353
|
<span class="cline-any cline-neutral"> </span>
|
|
331
354
|
<span class="cline-any cline-neutral"> </span>
|
|
332
355
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -564,7 +587,28 @@
|
|
|
564
587
|
<span class="cline-any cline-neutral"> </span>
|
|
565
588
|
<span class="cline-any cline-neutral"> </span>
|
|
566
589
|
<span class="cline-any cline-neutral"> </span>
|
|
567
|
-
<span class="cline-any cline-
|
|
590
|
+
<span class="cline-any cline-neutral"> </span>
|
|
591
|
+
<span class="cline-any cline-neutral"> </span>
|
|
592
|
+
<span class="cline-any cline-neutral"> </span>
|
|
593
|
+
<span class="cline-any cline-neutral"> </span>
|
|
594
|
+
<span class="cline-any cline-neutral"> </span>
|
|
595
|
+
<span class="cline-any cline-neutral"> </span>
|
|
596
|
+
<span class="cline-any cline-neutral"> </span>
|
|
597
|
+
<span class="cline-any cline-neutral"> </span>
|
|
598
|
+
<span class="cline-any cline-neutral"> </span>
|
|
599
|
+
<span class="cline-any cline-neutral"> </span>
|
|
600
|
+
<span class="cline-any cline-neutral"> </span>
|
|
601
|
+
<span class="cline-any cline-neutral"> </span>
|
|
602
|
+
<span class="cline-any cline-neutral"> </span>
|
|
603
|
+
<span class="cline-any cline-neutral"> </span>
|
|
604
|
+
<span class="cline-any cline-neutral"> </span>
|
|
605
|
+
<span class="cline-any cline-neutral"> </span>
|
|
606
|
+
<span class="cline-any cline-neutral"> </span>
|
|
607
|
+
<span class="cline-any cline-neutral"> </span>
|
|
608
|
+
<span class="cline-any cline-neutral"> </span>
|
|
609
|
+
<span class="cline-any cline-neutral"> </span>
|
|
610
|
+
<span class="cline-any cline-neutral"> </span>
|
|
611
|
+
<span class="cline-any cline-yes">24x</span>
|
|
568
612
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
569
613
|
const rowController = require("../controllers/row")
|
|
570
614
|
const authorized = require("../../middleware/authorized")
|
|
@@ -577,6 +621,7 @@ const {
|
|
|
577
621
|
PermissionLevels,
|
|
578
622
|
PermissionTypes,
|
|
579
623
|
} = require("@budibase/backend-core/permissions")
|
|
624
|
+
const { internalSearchValidator } = require("./utils/validators")
|
|
580
625
|
|
|
581
626
|
const router = Router()
|
|
582
627
|
|
|
@@ -686,8 +731,6 @@ router
|
|
|
686
731
|
* "notEqual": {},
|
|
687
732
|
* "empty": {},
|
|
688
733
|
* "notEmpty": {},
|
|
689
|
-
* "contains": {},
|
|
690
|
-
* "notContains": {}
|
|
691
734
|
* "oneOf": {
|
|
692
735
|
* "columnName": ["value"]
|
|
693
736
|
* }
|
|
@@ -707,6 +750,7 @@ router
|
|
|
707
750
|
*/
|
|
708
751
|
.post(
|
|
709
752
|
"/api/:tableId/search",
|
|
753
|
+
internalSearchValidator(),
|
|
710
754
|
paramResource("tableId"),
|
|
711
755
|
authorized(PermissionTypes.TABLE, PermissionLevels.READ),
|
|
712
756
|
rowController.search
|
|
@@ -762,6 +806,7 @@ router
|
|
|
762
806
|
"/api/:tableId/rows",
|
|
763
807
|
paramResource("tableId"),
|
|
764
808
|
authorized(PermissionTypes.TABLE, PermissionLevels.WRITE),
|
|
809
|
+
usage,
|
|
765
810
|
rowController.patch
|
|
766
811
|
)
|
|
767
812
|
/**
|
|
@@ -817,6 +862,27 @@ router
|
|
|
817
862
|
usage,
|
|
818
863
|
rowController.destroy
|
|
819
864
|
)
|
|
865
|
+
|
|
866
|
+
/**
|
|
867
|
+
* @api {post} /api/:tableId/rows/exportRows Export Rows
|
|
868
|
+
* @apiName Export rows
|
|
869
|
+
* @apiGroup rows
|
|
870
|
+
* @apiPermission table write access
|
|
871
|
+
* @apiDescription This API can export a number of provided rows
|
|
872
|
+
*
|
|
873
|
+
* @apiParam {string} tableId The ID of the table the row is to be deleted from.
|
|
874
|
+
*
|
|
875
|
+
* @apiParam (Body) {object[]} [rows] The row IDs which are to be exported
|
|
876
|
+
*
|
|
877
|
+
* @apiSuccess {object[]|object}
|
|
878
|
+
*/
|
|
879
|
+
.post(
|
|
880
|
+
"/api/:tableId/rows/exportRows",
|
|
881
|
+
paramResource("tableId"),
|
|
882
|
+
authorized(PermissionTypes.TABLE, PermissionLevels.WRITE),
|
|
883
|
+
usage,
|
|
884
|
+
rowController.export
|
|
885
|
+
)
|
|
820
886
|
|
|
821
887
|
module.exports = router
|
|
822
888
|
</pre></td></tr></table></pre>
|
|
@@ -826,7 +892,7 @@ module.exports = router
|
|
|
826
892
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
827
893
|
Code coverage generated by
|
|
828
894
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
829
|
-
at Tue Mar 08 2022
|
|
895
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
830
896
|
</div>
|
|
831
897
|
</div>
|
|
832
898
|
<script src="../../prettify.js"></script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>8/8</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -39,14 +39,14 @@
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>0/0</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>8/8</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -75,116 +75,35 @@
|
|
|
75
75
|
<a name='L16'></a><a href='#L16'>16</a>
|
|
76
76
|
<a name='L17'></a><a href='#L17'>17</a>
|
|
77
77
|
<a name='L18'></a><a href='#L18'>18</a>
|
|
78
|
-
<a name='L19'></a><a href='#L19'>19</a>
|
|
79
|
-
<
|
|
80
|
-
<
|
|
81
|
-
<
|
|
82
|
-
<
|
|
83
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
84
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
85
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
86
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
87
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
88
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
89
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
90
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
91
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
92
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
93
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
94
|
-
<a name='L35'></a><a href='#L35'>35</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>
|
|
100
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
101
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
102
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
103
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
104
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
105
|
-
<a name='L46'></a><a href='#L46'>46</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
|
|
106
|
-
<span class="cline-any cline-yes">23x</span>
|
|
107
|
-
<span class="cline-any cline-yes">23x</span>
|
|
108
|
-
<span class="cline-any cline-yes">23x</span>
|
|
109
|
-
<span class="cline-any cline-yes">23x</span>
|
|
110
|
-
<span class="cline-any cline-yes">23x</span>
|
|
111
|
-
<span class="cline-any cline-neutral"> </span>
|
|
112
|
-
<span class="cline-any cline-yes">23x</span>
|
|
113
|
-
<span class="cline-any cline-neutral"> </span>
|
|
114
|
-
<span class="cline-any cline-neutral"> </span>
|
|
115
|
-
<span class="cline-any cline-neutral"> </span>
|
|
116
|
-
<span class="cline-any cline-yes">23x</span>
|
|
117
|
-
<span class="cline-any cline-neutral"> </span>
|
|
118
|
-
<span class="cline-any cline-neutral"> </span>
|
|
119
|
-
<span class="cline-any cline-neutral"> </span>
|
|
120
|
-
<span class="cline-any cline-neutral"> </span>
|
|
121
|
-
<span class="cline-any cline-neutral"> </span>
|
|
122
|
-
<span class="cline-any cline-neutral"> </span>
|
|
123
|
-
<span class="cline-any cline-neutral"> </span>
|
|
124
|
-
<span class="cline-any cline-neutral"> </span>
|
|
125
|
-
<span class="cline-any cline-neutral"> </span>
|
|
126
|
-
<span class="cline-any cline-neutral"> </span>
|
|
78
|
+
<a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
79
|
+
<span class="cline-any cline-yes">24x</span>
|
|
80
|
+
<span class="cline-any cline-yes">24x</span>
|
|
81
|
+
<span class="cline-any cline-yes">24x</span>
|
|
82
|
+
<span class="cline-any cline-yes">24x</span>
|
|
127
83
|
<span class="cline-any cline-neutral"> </span>
|
|
84
|
+
<span class="cline-any cline-yes">24x</span>
|
|
128
85
|
<span class="cline-any cline-neutral"> </span>
|
|
86
|
+
<span class="cline-any cline-yes">24x</span>
|
|
129
87
|
<span class="cline-any cline-neutral"> </span>
|
|
130
88
|
<span class="cline-any cline-neutral"> </span>
|
|
131
89
|
<span class="cline-any cline-neutral"> </span>
|
|
132
90
|
<span class="cline-any cline-neutral"> </span>
|
|
133
91
|
<span class="cline-any cline-neutral"> </span>
|
|
134
92
|
<span class="cline-any cline-neutral"> </span>
|
|
135
|
-
<span class="cline-any cline-yes">23x</span>
|
|
136
93
|
<span class="cline-any cline-neutral"> </span>
|
|
137
94
|
<span class="cline-any cline-neutral"> </span>
|
|
138
|
-
<span class="cline-any cline-
|
|
139
|
-
<span class="cline-any cline-neutral"> </span>
|
|
140
|
-
<span class="cline-any cline-neutral"> </span>
|
|
141
|
-
<span class="cline-any cline-neutral"> </span>
|
|
142
|
-
<span class="cline-any cline-neutral"> </span>
|
|
143
|
-
<span class="cline-any cline-neutral"> </span>
|
|
144
|
-
<span class="cline-any cline-neutral"> </span>
|
|
145
|
-
<span class="cline-any cline-neutral"> </span>
|
|
146
|
-
<span class="cline-any cline-neutral"> </span>
|
|
147
|
-
<span class="cline-any cline-neutral"> </span>
|
|
148
|
-
<span class="cline-any cline-neutral"> </span>
|
|
149
|
-
<span class="cline-any cline-yes">23x</span>
|
|
95
|
+
<span class="cline-any cline-yes">24x</span>
|
|
150
96
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
151
97
|
const controller = require("../controllers/screen")
|
|
152
98
|
const authorized = require("../../middleware/authorized")
|
|
153
99
|
const { BUILDER } = require("@budibase/backend-core/permissions")
|
|
154
|
-
const
|
|
155
|
-
const Joi = require("joi")
|
|
100
|
+
const { screenValidator } = require("./utils/validators")
|
|
156
101
|
|
|
157
102
|
const router = Router()
|
|
158
103
|
|
|
159
|
-
function generateSaveValidation() {
|
|
160
|
-
// prettier-ignore
|
|
161
|
-
return joiValidator.body(Joi.object({
|
|
162
|
-
name: Joi.string().required(),
|
|
163
|
-
routing: Joi.object({
|
|
164
|
-
route: Joi.string().required(),
|
|
165
|
-
roleId: Joi.string().required().allow(""),
|
|
166
|
-
}).required().unknown(true),
|
|
167
|
-
props: Joi.object({
|
|
168
|
-
_id: Joi.string().required(),
|
|
169
|
-
_component: Joi.string().required(),
|
|
170
|
-
_children: Joi.array().required(),
|
|
171
|
-
_instanceName: Joi.string().required(),
|
|
172
|
-
_styles: Joi.object().required(),
|
|
173
|
-
type: Joi.string().optional(),
|
|
174
|
-
table: Joi.string().optional(),
|
|
175
|
-
layoutId: Joi.string().optional(),
|
|
176
|
-
}).required().unknown(true),
|
|
177
|
-
}).unknown(true))
|
|
178
|
-
}
|
|
179
|
-
|
|
180
104
|
router
|
|
181
105
|
.get("/api/screens", authorized(BUILDER), controller.fetch)
|
|
182
|
-
.post(
|
|
183
|
-
"/api/screens",
|
|
184
|
-
authorized(BUILDER),
|
|
185
|
-
generateSaveValidation(),
|
|
186
|
-
controller.save
|
|
187
|
-
)
|
|
106
|
+
.post("/api/screens", authorized(BUILDER), screenValidator(), controller.save)
|
|
188
107
|
.delete(
|
|
189
108
|
"/api/screens/:screenId/:screenRev",
|
|
190
109
|
authorized(BUILDER),
|
|
@@ -199,7 +118,7 @@ module.exports = router
|
|
|
199
118
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
200
119
|
Code coverage generated by
|
|
201
120
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
202
|
-
at Tue Mar 08 2022
|
|
121
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
203
122
|
</div>
|
|
204
123
|
</div>
|
|
205
124
|
<script src="../../prettify.js"></script>
|
|
@@ -94,7 +94,7 @@ const router = <span class="cstat-no" title="statement not covered" >Router()</s
|
|
|
94
94
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
95
95
|
Code coverage generated by
|
|
96
96
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
97
|
-
at Tue Mar 08 2022
|
|
97
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
98
98
|
</div>
|
|
99
99
|
</div>
|
|
100
100
|
<script src="../../prettify.js"></script>
|
|
@@ -112,19 +112,19 @@
|
|
|
112
112
|
<a name='L53'></a><a href='#L53'>53</a>
|
|
113
113
|
<a name='L54'></a><a href='#L54'>54</a>
|
|
114
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">
|
|
116
|
-
<span class="cline-any cline-yes">
|
|
117
|
-
<span class="cline-any cline-yes">
|
|
118
|
-
<span class="cline-any cline-yes">
|
|
115
|
+
<a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
116
|
+
<span class="cline-any cline-yes">24x</span>
|
|
117
|
+
<span class="cline-any cline-yes">24x</span>
|
|
118
|
+
<span class="cline-any cline-yes">24x</span>
|
|
119
119
|
<span class="cline-any cline-neutral"> </span>
|
|
120
120
|
<span class="cline-any cline-neutral"> </span>
|
|
121
121
|
<span class="cline-any cline-neutral"> </span>
|
|
122
122
|
<span class="cline-any cline-neutral"> </span>
|
|
123
|
-
<span class="cline-any cline-yes">
|
|
124
|
-
<span class="cline-any cline-yes">
|
|
125
|
-
<span class="cline-any cline-yes">
|
|
123
|
+
<span class="cline-any cline-yes">24x</span>
|
|
124
|
+
<span class="cline-any cline-yes">24x</span>
|
|
125
|
+
<span class="cline-any cline-yes">24x</span>
|
|
126
126
|
<span class="cline-any cline-neutral"> </span>
|
|
127
|
-
<span class="cline-any cline-yes">
|
|
127
|
+
<span class="cline-any cline-yes">24x</span>
|
|
128
128
|
<span class="cline-any cline-neutral"> </span>
|
|
129
129
|
<span class="cline-any cline-neutral"> </span>
|
|
130
130
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -144,11 +144,11 @@
|
|
|
144
144
|
<span class="cline-any cline-neutral"> </span>
|
|
145
145
|
<span class="cline-any cline-neutral"> </span>
|
|
146
146
|
<span class="cline-any cline-neutral"> </span>
|
|
147
|
-
<span class="cline-any cline-yes">
|
|
148
|
-
<span class="cline-any cline-yes">
|
|
147
|
+
<span class="cline-any cline-yes">24x</span>
|
|
148
|
+
<span class="cline-any cline-yes">24x</span>
|
|
149
149
|
<span class="cline-any cline-neutral"> </span>
|
|
150
150
|
<span class="cline-any cline-neutral"> </span>
|
|
151
|
-
<span class="cline-any cline-yes">
|
|
151
|
+
<span class="cline-any cline-yes">24x</span>
|
|
152
152
|
<span class="cline-any cline-neutral"> </span>
|
|
153
153
|
<span class="cline-any cline-neutral"> </span>
|
|
154
154
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -166,7 +166,7 @@
|
|
|
166
166
|
<span class="cline-any cline-neutral"> </span>
|
|
167
167
|
<span class="cline-any cline-neutral"> </span>
|
|
168
168
|
<span class="cline-any cline-neutral"> </span>
|
|
169
|
-
<span class="cline-any cline-yes">
|
|
169
|
+
<span class="cline-any cline-yes">24x</span>
|
|
170
170
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
171
171
|
const controller = require("../controllers/static")
|
|
172
172
|
const { budibaseTempDir } = require("../../utilities/budibaseDir")
|
|
@@ -229,7 +229,7 @@ module.exports = router
|
|
|
229
229
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
230
230
|
Code coverage generated by
|
|
231
231
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
232
|
-
at Tue Mar 08 2022
|
|
232
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
233
233
|
</div>
|
|
234
234
|
</div>
|
|
235
235
|
<script src="../../prettify.js"></script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">100% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>9/9</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -39,14 +39,14 @@
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
40
|
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>0/0</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">100% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>9/9</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -253,50 +253,26 @@
|
|
|
253
253
|
<a name='L194'></a><a href='#L194'>194</a>
|
|
254
254
|
<a name='L195'></a><a href='#L195'>195</a>
|
|
255
255
|
<a name='L196'></a><a href='#L196'>196</a>
|
|
256
|
-
<a name='L197'></a><a href='#L197'>197</a>
|
|
257
|
-
<
|
|
258
|
-
<
|
|
259
|
-
<
|
|
260
|
-
<a name='L201'></a><a href='#L201'>201</a>
|
|
261
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
262
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
263
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
264
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
265
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
266
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
267
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
268
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
269
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
270
|
-
<a name='L211'></a><a href='#L211'>211</a>
|
|
271
|
-
<a name='L212'></a><a href='#L212'>212</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
|
|
272
|
-
<span class="cline-any cline-yes">23x</span>
|
|
273
|
-
<span class="cline-any cline-yes">23x</span>
|
|
274
|
-
<span class="cline-any cline-yes">23x</span>
|
|
275
|
-
<span class="cline-any cline-neutral"> </span>
|
|
276
|
-
<span class="cline-any cline-neutral"> </span>
|
|
277
|
-
<span class="cline-any cline-neutral"> </span>
|
|
278
|
-
<span class="cline-any cline-neutral"> </span>
|
|
279
|
-
<span class="cline-any cline-yes">23x</span>
|
|
280
|
-
<span class="cline-any cline-yes">23x</span>
|
|
281
|
-
<span class="cline-any cline-yes">23x</span>
|
|
282
|
-
<span class="cline-any cline-neutral"> </span>
|
|
283
|
-
<span class="cline-any cline-yes">23x</span>
|
|
284
|
-
<span class="cline-any cline-neutral"> </span>
|
|
285
|
-
<span class="cline-any cline-neutral"> </span>
|
|
256
|
+
<a name='L197'></a><a href='#L197'>197</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
257
|
+
<span class="cline-any cline-yes">24x</span>
|
|
258
|
+
<span class="cline-any cline-yes">24x</span>
|
|
259
|
+
<span class="cline-any cline-yes">24x</span>
|
|
286
260
|
<span class="cline-any cline-neutral"> </span>
|
|
287
|
-
<span class="cline-any cline-yes">23x</span>
|
|
288
261
|
<span class="cline-any cline-neutral"> </span>
|
|
289
262
|
<span class="cline-any cline-neutral"> </span>
|
|
290
263
|
<span class="cline-any cline-neutral"> </span>
|
|
264
|
+
<span class="cline-any cline-yes">24x</span>
|
|
265
|
+
<span class="cline-any cline-yes">24x</span>
|
|
291
266
|
<span class="cline-any cline-neutral"> </span>
|
|
267
|
+
<span class="cline-any cline-yes">24x</span>
|
|
292
268
|
<span class="cline-any cline-neutral"> </span>
|
|
269
|
+
<span class="cline-any cline-yes">24x</span>
|
|
293
270
|
<span class="cline-any cline-neutral"> </span>
|
|
294
271
|
<span class="cline-any cline-neutral"> </span>
|
|
295
272
|
<span class="cline-any cline-neutral"> </span>
|
|
296
273
|
<span class="cline-any cline-neutral"> </span>
|
|
297
274
|
<span class="cline-any cline-neutral"> </span>
|
|
298
275
|
<span class="cline-any cline-neutral"> </span>
|
|
299
|
-
<span class="cline-any cline-yes">23x</span>
|
|
300
276
|
<span class="cline-any cline-neutral"> </span>
|
|
301
277
|
<span class="cline-any cline-neutral"> </span>
|
|
302
278
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -472,13 +448,7 @@
|
|
|
472
448
|
<span class="cline-any cline-neutral"> </span>
|
|
473
449
|
<span class="cline-any cline-neutral"> </span>
|
|
474
450
|
<span class="cline-any cline-neutral"> </span>
|
|
475
|
-
<span class="cline-any cline-
|
|
476
|
-
<span class="cline-any cline-neutral"> </span>
|
|
477
|
-
<span class="cline-any cline-neutral"> </span>
|
|
478
|
-
<span class="cline-any cline-neutral"> </span>
|
|
479
|
-
<span class="cline-any cline-neutral"> </span>
|
|
480
|
-
<span class="cline-any cline-neutral"> </span>
|
|
481
|
-
<span class="cline-any cline-yes">23x</span>
|
|
451
|
+
<span class="cline-any cline-yes">24x</span>
|
|
482
452
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
483
453
|
const tableController = require("../controllers/table")
|
|
484
454
|
const authorized = require("../../middleware/authorized")
|
|
@@ -488,25 +458,10 @@ const {
|
|
|
488
458
|
PermissionLevels,
|
|
489
459
|
PermissionTypes,
|
|
490
460
|
} = require("@budibase/backend-core/permissions")
|
|
491
|
-
const
|
|
492
|
-
const Joi = require("joi")
|
|
461
|
+
const { tableValidator } = require("./utils/validators")
|
|
493
462
|
|
|
494
463
|
const router = Router()
|
|
495
464
|
|
|
496
|
-
function generateSaveValidator() {
|
|
497
|
-
// prettier-ignore
|
|
498
|
-
return joiValidator.body(Joi.object({
|
|
499
|
-
_id: Joi.string(),
|
|
500
|
-
_rev: Joi.string(),
|
|
501
|
-
type: Joi.string().valid("table", "internal", "external"),
|
|
502
|
-
primaryDisplay: Joi.string(),
|
|
503
|
-
schema: Joi.object().required(),
|
|
504
|
-
name: Joi.string().required(),
|
|
505
|
-
views: Joi.object(),
|
|
506
|
-
dataImport: Joi.object(),
|
|
507
|
-
}).unknown(true))
|
|
508
|
-
}
|
|
509
|
-
|
|
510
465
|
router
|
|
511
466
|
/**
|
|
512
467
|
* @api {get} /api/tables Fetch all tables
|
|
@@ -534,8 +489,8 @@ router
|
|
|
534
489
|
* @apiSuccess {object[]} body The response body will be the table that was found.
|
|
535
490
|
*/
|
|
536
491
|
.get(
|
|
537
|
-
"/api/tables/:
|
|
538
|
-
paramResource("
|
|
492
|
+
"/api/tables/:tableId",
|
|
493
|
+
paramResource("tableId"),
|
|
539
494
|
authorized(PermissionTypes.TABLE, PermissionLevels.READ),
|
|
540
495
|
tableController.find
|
|
541
496
|
)
|
|
@@ -617,7 +572,7 @@ router
|
|
|
617
572
|
// allows control over updating a table
|
|
618
573
|
bodyResource("_id"),
|
|
619
574
|
authorized(BUILDER),
|
|
620
|
-
|
|
575
|
+
tableValidator(),
|
|
621
576
|
tableController.save
|
|
622
577
|
)
|
|
623
578
|
/**
|
|
@@ -697,7 +652,7 @@ module.exports = router
|
|
|
697
652
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
698
653
|
Code coverage generated by
|
|
699
654
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
700
|
-
at Tue Mar 08 2022
|
|
655
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
701
656
|
</div>
|
|
702
657
|
</div>
|
|
703
658
|
<script src="../../prettify.js"></script>
|
|
@@ -73,14 +73,14 @@
|
|
|
73
73
|
<a name='L14'></a><a href='#L14'>14</a>
|
|
74
74
|
<a name='L15'></a><a href='#L15'>15</a>
|
|
75
75
|
<a name='L16'></a><a href='#L16'>16</a>
|
|
76
|
-
<a name='L17'></a><a href='#L17'>17</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
77
|
-
<span class="cline-any cline-yes">
|
|
78
|
-
<span class="cline-any cline-yes">
|
|
79
|
-
<span class="cline-any cline-yes">
|
|
76
|
+
<a name='L17'></a><a href='#L17'>17</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
77
|
+
<span class="cline-any cline-yes">24x</span>
|
|
78
|
+
<span class="cline-any cline-yes">24x</span>
|
|
79
|
+
<span class="cline-any cline-yes">24x</span>
|
|
80
80
|
<span class="cline-any cline-neutral"> </span>
|
|
81
|
-
<span class="cline-any cline-yes">
|
|
81
|
+
<span class="cline-any cline-yes">24x</span>
|
|
82
82
|
<span class="cline-any cline-neutral"> </span>
|
|
83
|
-
<span class="cline-any cline-yes">
|
|
83
|
+
<span class="cline-any cline-yes">24x</span>
|
|
84
84
|
<span class="cline-any cline-neutral"> </span>
|
|
85
85
|
<span class="cline-any cline-neutral"> </span>
|
|
86
86
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
<span class="cline-any cline-neutral"> </span>
|
|
89
89
|
<span class="cline-any cline-neutral"> </span>
|
|
90
90
|
<span class="cline-any cline-neutral"> </span>
|
|
91
|
-
<span class="cline-any cline-yes">
|
|
91
|
+
<span class="cline-any cline-yes">24x</span>
|
|
92
92
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
93
93
|
const controller = require("../controllers/templates")
|
|
94
94
|
const authorized = require("../../middleware/authorized")
|
|
@@ -112,7 +112,7 @@ module.exports = router
|
|
|
112
112
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
113
113
|
Code coverage generated by
|
|
114
114
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
115
|
-
at Tue Mar 08 2022
|
|
115
|
+
at Tue Mar 08 2022 15:58:36 GMT+0000 (Coordinated Universal Time)
|
|
116
116
|
</div>
|
|
117
117
|
</div>
|
|
118
118
|
<script src="../../prettify.js"></script>
|