@budibase/server 1.0.79 → 1.0.80-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.c57242d4.css} +2 -2
- package/builder/assets/index.f3e82852.js +1288 -0
- package/builder/assets/{vendor.20f80cec.js → vendor.a7c6ad0a.js} +190 -216
- package/builder/index.html +3 -3
- package/coverage/clover.xml +2399 -2336
- 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 +16 -16
- package/coverage/lcov-report/api/controllers/row/index.html +27 -27
- package/coverage/lcov-report/api/controllers/row/index.js.html +46 -46
- package/coverage/lcov-report/api/controllers/row/internal.js.html +94 -82
- 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 +12 -12
- package/coverage/lcov-report/api/controllers/table/index.html +11 -11
- 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 +17 -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 +89 -74
- 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 +3323 -3224
- 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/internal.js +4 -1
- 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 +3 -4
- 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 +8 -4
- 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 +83 -0
- package/specs/openapi.json +2222 -0
- package/specs/openapi.yaml +1530 -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/internal.js +4 -0
- 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 +3 -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 +1 -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 +11 -7
- 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.f28c5d54.js +0 -1352
- package/scripts/proxy/generateProxyConfig.js +0 -70
|
@@ -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
|
|
|
@@ -90,43 +90,20 @@
|
|
|
90
90
|
<a name='L31'></a><a href='#L31'>31</a>
|
|
91
91
|
<a name='L32'></a><a href='#L32'>32</a>
|
|
92
92
|
<a name='L33'></a><a href='#L33'>33</a>
|
|
93
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
94
|
-
<
|
|
95
|
-
<
|
|
96
|
-
<
|
|
97
|
-
<
|
|
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>
|
|
106
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
107
|
-
<a name='L48'></a><a href='#L48'>48</a></td><td class="line-coverage quiet"><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-neutral"> </span>
|
|
111
|
-
<span class="cline-any cline-neutral"> </span>
|
|
112
|
-
<span class="cline-any cline-neutral"> </span>
|
|
113
|
-
<span class="cline-any cline-yes">23x</span>
|
|
114
|
-
<span class="cline-any cline-yes">23x</span>
|
|
115
|
-
<span class="cline-any cline-yes">23x</span>
|
|
116
|
-
<span class="cline-any cline-neutral"> </span>
|
|
117
|
-
<span class="cline-any cline-yes">23x</span>
|
|
118
|
-
<span class="cline-any cline-neutral"> </span>
|
|
119
|
-
<span class="cline-any cline-neutral"> </span>
|
|
120
|
-
<span class="cline-any cline-yes">46x</span>
|
|
93
|
+
<a name='L34'></a><a href='#L34'>34</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
94
|
+
<span class="cline-any cline-yes">24x</span>
|
|
95
|
+
<span class="cline-any cline-yes">24x</span>
|
|
96
|
+
<span class="cline-any cline-yes">24x</span>
|
|
97
|
+
<span class="cline-any cline-yes">24x</span>
|
|
121
98
|
<span class="cline-any cline-neutral"> </span>
|
|
122
|
-
<span class="cline-any cline-yes">
|
|
99
|
+
<span class="cline-any cline-yes">24x</span>
|
|
123
100
|
<span class="cline-any cline-neutral"> </span>
|
|
101
|
+
<span class="cline-any cline-yes">24x</span>
|
|
124
102
|
<span class="cline-any cline-neutral"> </span>
|
|
125
103
|
<span class="cline-any cline-neutral"> </span>
|
|
126
104
|
<span class="cline-any cline-neutral"> </span>
|
|
127
105
|
<span class="cline-any cline-neutral"> </span>
|
|
128
106
|
<span class="cline-any cline-neutral"> </span>
|
|
129
|
-
<span class="cline-any cline-yes">23x</span>
|
|
130
107
|
<span class="cline-any cline-neutral"> </span>
|
|
131
108
|
<span class="cline-any cline-neutral"> </span>
|
|
132
109
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -145,34 +122,15 @@
|
|
|
145
122
|
<span class="cline-any cline-neutral"> </span>
|
|
146
123
|
<span class="cline-any cline-neutral"> </span>
|
|
147
124
|
<span class="cline-any cline-neutral"> </span>
|
|
148
|
-
<span class="cline-any cline-
|
|
149
|
-
<span class="cline-any cline-neutral"> </span>
|
|
150
|
-
<span class="cline-any cline-neutral"> </span>
|
|
151
|
-
<span class="cline-any cline-neutral"> </span>
|
|
152
|
-
<span class="cline-any cline-neutral"> </span>
|
|
153
|
-
<span class="cline-any cline-yes">23x</span>
|
|
125
|
+
<span class="cline-any cline-yes">24x</span>
|
|
154
126
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
155
127
|
const controller = require("../controllers/permission")
|
|
156
128
|
const authorized = require("../../middleware/authorized")
|
|
157
|
-
const {
|
|
158
|
-
|
|
159
|
-
PermissionLevels,
|
|
160
|
-
} = require("@budibase/backend-core/permissions")
|
|
161
|
-
const Joi = require("joi")
|
|
162
|
-
const joiValidator = require("../../middleware/joi-validator")
|
|
129
|
+
const { BUILDER } = require("@budibase/backend-core/permissions")
|
|
130
|
+
const { permissionValidator } = require("./utils/validators")
|
|
163
131
|
|
|
164
132
|
const router = Router()
|
|
165
133
|
|
|
166
|
-
function generateValidator() {
|
|
167
|
-
const permLevelArray = Object.values(PermissionLevels)
|
|
168
|
-
// prettier-ignore
|
|
169
|
-
return joiValidator.params(Joi.object({
|
|
170
|
-
level: Joi.string().valid(...permLevelArray).required(),
|
|
171
|
-
resourceId: Joi.string(),
|
|
172
|
-
roleId: Joi.string(),
|
|
173
|
-
}).unknown(true))
|
|
174
|
-
}
|
|
175
|
-
|
|
176
134
|
router
|
|
177
135
|
.get("/api/permission/builtin", authorized(BUILDER), controller.fetchBuiltin)
|
|
178
136
|
.get("/api/permission/levels", authorized(BUILDER), controller.fetchLevels)
|
|
@@ -186,14 +144,14 @@ router
|
|
|
186
144
|
.post(
|
|
187
145
|
"/api/permission/:roleId/:resourceId/:level",
|
|
188
146
|
authorized(BUILDER),
|
|
189
|
-
|
|
147
|
+
permissionValidator(),
|
|
190
148
|
controller.addPermission
|
|
191
149
|
)
|
|
192
150
|
// deleting the level defaults it back the underlying access control for the resource
|
|
193
151
|
.delete(
|
|
194
152
|
"/api/permission/:roleId/:resourceId/:level",
|
|
195
153
|
authorized(BUILDER),
|
|
196
|
-
|
|
154
|
+
permissionValidator(),
|
|
197
155
|
controller.removePermission
|
|
198
156
|
)
|
|
199
157
|
|
|
@@ -205,7 +163,7 @@ module.exports = router
|
|
|
205
163
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
206
164
|
Code coverage generated by
|
|
207
165
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
208
|
-
at
|
|
166
|
+
at Mon Mar 07 2022 10:13:57 GMT+0000 (Coordinated Universal Time)
|
|
209
167
|
</div>
|
|
210
168
|
</div>
|
|
211
169
|
<script src="../../prettify.js"></script>
|
|
@@ -121,27 +121,27 @@
|
|
|
121
121
|
<a name='L62'></a><a href='#L62'>62</a>
|
|
122
122
|
<a name='L63'></a><a href='#L63'>63</a>
|
|
123
123
|
<a name='L64'></a><a href='#L64'>64</a>
|
|
124
|
-
<a name='L65'></a><a href='#L65'>65</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">
|
|
125
|
-
<span class="cline-any cline-yes">
|
|
126
|
-
<span class="cline-any cline-yes">
|
|
124
|
+
<a name='L65'></a><a href='#L65'>65</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
125
|
+
<span class="cline-any cline-yes">24x</span>
|
|
126
|
+
<span class="cline-any cline-yes">24x</span>
|
|
127
127
|
<span class="cline-any cline-neutral"> </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>
|
|
131
|
-
<span class="cline-any cline-yes">
|
|
131
|
+
<span class="cline-any cline-yes">24x</span>
|
|
132
132
|
<span class="cline-any cline-neutral"> </span>
|
|
133
133
|
<span class="cline-any cline-neutral"> </span>
|
|
134
134
|
<span class="cline-any cline-neutral"> </span>
|
|
135
135
|
<span class="cline-any cline-neutral"> </span>
|
|
136
|
-
<span class="cline-any cline-yes">
|
|
136
|
+
<span class="cline-any cline-yes">24x</span>
|
|
137
137
|
<span class="cline-any cline-neutral"> </span>
|
|
138
138
|
<span class="cline-any cline-neutral"> </span>
|
|
139
139
|
<span class="cline-any cline-neutral"> </span>
|
|
140
|
-
<span class="cline-any cline-yes">
|
|
140
|
+
<span class="cline-any cline-yes">24x</span>
|
|
141
141
|
<span class="cline-any cline-neutral"> </span>
|
|
142
|
-
<span class="cline-any cline-yes">
|
|
142
|
+
<span class="cline-any cline-yes">24x</span>
|
|
143
143
|
<span class="cline-any cline-neutral"> </span>
|
|
144
|
-
<span class="cline-any cline-yes">
|
|
144
|
+
<span class="cline-any cline-yes">24x</span>
|
|
145
145
|
<span class="cline-any cline-neutral"> </span>
|
|
146
146
|
<span class="cline-any cline-neutral"> </span>
|
|
147
147
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
<span class="cline-any cline-neutral"> </span>
|
|
185
185
|
<span class="cline-any cline-neutral"> </span>
|
|
186
186
|
<span class="cline-any cline-neutral"> </span>
|
|
187
|
-
<span class="cline-any cline-yes">
|
|
187
|
+
<span class="cline-any cline-yes">24x</span>
|
|
188
188
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
189
189
|
const queryController = require("../controllers/query")
|
|
190
190
|
const authorized = require("../../middleware/authorized")
|
|
@@ -256,7 +256,7 @@ module.exports = router
|
|
|
256
256
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
257
257
|
Code coverage generated by
|
|
258
258
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
259
|
-
at
|
|
259
|
+
at Mon Mar 07 2022 10:13:57 GMT+0000 (Coordinated Universal Time)
|
|
260
260
|
</div>
|
|
261
261
|
</div>
|
|
262
262
|
<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
|
|
|
@@ -72,94 +72,31 @@
|
|
|
72
72
|
<a name='L13'></a><a href='#L13'>13</a>
|
|
73
73
|
<a name='L14'></a><a href='#L14'>14</a>
|
|
74
74
|
<a name='L15'></a><a href='#L15'>15</a>
|
|
75
|
-
<a name='L16'></a><a href='#L16'>16</a>
|
|
76
|
-
<
|
|
77
|
-
<
|
|
78
|
-
<
|
|
79
|
-
<
|
|
80
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
81
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
82
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">23x</span>
|
|
97
|
-
<span class="cline-any cline-yes">23x</span>
|
|
98
|
-
<span class="cline-any cline-yes">23x</span>
|
|
99
|
-
<span class="cline-any cline-yes">23x</span>
|
|
100
|
-
<span class="cline-any cline-yes">23x</span>
|
|
101
|
-
<span class="cline-any cline-neutral"> </span>
|
|
102
|
-
<span class="cline-any cline-neutral"> </span>
|
|
103
|
-
<span class="cline-any cline-neutral"> </span>
|
|
104
|
-
<span class="cline-any cline-neutral"> </span>
|
|
105
|
-
<span class="cline-any cline-yes">23x</span>
|
|
106
|
-
<span class="cline-any cline-neutral"> </span>
|
|
107
|
-
<span class="cline-any cline-yes">23x</span>
|
|
108
|
-
<span class="cline-any cline-neutral"> </span>
|
|
109
|
-
<span class="cline-any cline-neutral"> </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>
|
|
75
|
+
<a name='L16'></a><a href='#L16'>16</a></td><td class="line-coverage quiet"><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
|
+
<span class="cline-any cline-yes">24x</span>
|
|
79
|
+
<span class="cline-any cline-yes">24x</span>
|
|
114
80
|
<span class="cline-any cline-neutral"> </span>
|
|
81
|
+
<span class="cline-any cline-yes">24x</span>
|
|
115
82
|
<span class="cline-any cline-neutral"> </span>
|
|
83
|
+
<span class="cline-any cline-yes">24x</span>
|
|
116
84
|
<span class="cline-any cline-neutral"> </span>
|
|
117
85
|
<span class="cline-any cline-neutral"> </span>
|
|
118
86
|
<span class="cline-any cline-neutral"> </span>
|
|
119
87
|
<span class="cline-any cline-neutral"> </span>
|
|
120
88
|
<span class="cline-any cline-neutral"> </span>
|
|
121
|
-
<span class="cline-any cline-
|
|
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-yes">23x</span>
|
|
126
|
-
<span class="cline-any cline-neutral"> </span>
|
|
127
|
-
<span class="cline-any cline-neutral"> </span>
|
|
128
|
-
<span class="cline-any cline-neutral"> </span>
|
|
129
|
-
<span class="cline-any cline-neutral"> </span>
|
|
130
|
-
<span class="cline-any cline-neutral"> </span>
|
|
131
|
-
<span class="cline-any cline-yes">23x</span>
|
|
89
|
+
<span class="cline-any cline-yes">24x</span>
|
|
132
90
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
133
91
|
const controller = require("../controllers/role")
|
|
134
92
|
const authorized = require("../../middleware/authorized")
|
|
135
|
-
const
|
|
136
|
-
const
|
|
137
|
-
const {
|
|
138
|
-
BUILTIN_PERMISSION_IDS,
|
|
139
|
-
BUILDER,
|
|
140
|
-
PermissionLevels,
|
|
141
|
-
} = require("@budibase/backend-core/permissions")
|
|
93
|
+
const { BUILDER } = require("@budibase/backend-core/permissions")
|
|
94
|
+
const { roleValidator } = require("./utils/validators")
|
|
142
95
|
|
|
143
96
|
const router = Router()
|
|
144
97
|
|
|
145
|
-
function generateValidator() {
|
|
146
|
-
const permLevelArray = Object.values(PermissionLevels)
|
|
147
|
-
// prettier-ignore
|
|
148
|
-
return joiValidator.body(Joi.object({
|
|
149
|
-
_id: Joi.string().optional(),
|
|
150
|
-
_rev: Joi.string().optional(),
|
|
151
|
-
name: Joi.string().required(),
|
|
152
|
-
// this is the base permission ID (for now a built in)
|
|
153
|
-
permissionId: Joi.string().valid(...Object.values(BUILTIN_PERMISSION_IDS)).required(),
|
|
154
|
-
permissions: Joi.object()
|
|
155
|
-
.pattern(/.*/, [Joi.string().valid(...permLevelArray)])
|
|
156
|
-
.optional(),
|
|
157
|
-
inherits: Joi.string().optional(),
|
|
158
|
-
}).unknown(true))
|
|
159
|
-
}
|
|
160
|
-
|
|
161
98
|
router
|
|
162
|
-
.post("/api/roles", authorized(BUILDER),
|
|
99
|
+
.post("/api/roles", authorized(BUILDER), roleValidator(), controller.save)
|
|
163
100
|
.get("/api/roles", authorized(BUILDER), controller.fetch)
|
|
164
101
|
.get("/api/roles/:roleId", authorized(BUILDER), controller.find)
|
|
165
102
|
.delete("/api/roles/:roleId/:rev", authorized(BUILDER), controller.destroy)
|
|
@@ -172,7 +109,7 @@ module.exports = router
|
|
|
172
109
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
173
110
|
Code coverage generated by
|
|
174
111
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
175
|
-
at
|
|
112
|
+
at Mon Mar 07 2022 10:13:57 GMT+0000 (Coordinated Universal Time)
|
|
176
113
|
</div>
|
|
177
114
|
</div>
|
|
178
115
|
<script src="../../prettify.js"></script>
|
|
@@ -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
|
|
109
|
+
at Mon Mar 07 2022 10:13:57 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,24 @@
|
|
|
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
|
-
<span class="cline-any cline-yes">
|
|
316
|
-
<span class="cline-any cline-yes">
|
|
317
|
-
<span class="cline-any cline-yes">
|
|
314
|
+
<a name='L255'></a><a href='#L255'>255</a>
|
|
315
|
+
<a name='L256'></a><a href='#L256'>256</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">24x</span>
|
|
316
|
+
<span class="cline-any cline-yes">24x</span>
|
|
317
|
+
<span class="cline-any cline-yes">24x</span>
|
|
318
|
+
<span class="cline-any cline-yes">24x</span>
|
|
318
319
|
<span class="cline-any cline-neutral"> </span>
|
|
319
320
|
<span class="cline-any cline-neutral"> </span>
|
|
320
321
|
<span class="cline-any cline-neutral"> </span>
|
|
321
|
-
<span class="cline-any cline-yes">
|
|
322
|
+
<span class="cline-any cline-yes">24x</span>
|
|
322
323
|
<span class="cline-any cline-neutral"> </span>
|
|
323
324
|
<span class="cline-any cline-neutral"> </span>
|
|
324
325
|
<span class="cline-any cline-neutral"> </span>
|
|
325
|
-
<span class="cline-any cline-yes">
|
|
326
|
+
<span class="cline-any cline-yes">24x</span>
|
|
327
|
+
<span class="cline-any cline-yes">24x</span>
|
|
326
328
|
<span class="cline-any cline-neutral"> </span>
|
|
327
|
-
<span class="cline-any cline-yes">
|
|
329
|
+
<span class="cline-any cline-yes">24x</span>
|
|
328
330
|
<span class="cline-any cline-neutral"> </span>
|
|
329
|
-
<span class="cline-any cline-yes">
|
|
331
|
+
<span class="cline-any cline-yes">24x</span>
|
|
330
332
|
<span class="cline-any cline-neutral"> </span>
|
|
331
333
|
<span class="cline-any cline-neutral"> </span>
|
|
332
334
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -564,7 +566,7 @@
|
|
|
564
566
|
<span class="cline-any cline-neutral"> </span>
|
|
565
567
|
<span class="cline-any cline-neutral"> </span>
|
|
566
568
|
<span class="cline-any cline-neutral"> </span>
|
|
567
|
-
<span class="cline-any cline-yes">
|
|
569
|
+
<span class="cline-any cline-yes">24x</span>
|
|
568
570
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const Router = require("@koa/router")
|
|
569
571
|
const rowController = require("../controllers/row")
|
|
570
572
|
const authorized = require("../../middleware/authorized")
|
|
@@ -577,6 +579,7 @@ const {
|
|
|
577
579
|
PermissionLevels,
|
|
578
580
|
PermissionTypes,
|
|
579
581
|
} = require("@budibase/backend-core/permissions")
|
|
582
|
+
const { internalSearchValidator } = require("./utils/validators")
|
|
580
583
|
|
|
581
584
|
const router = Router()
|
|
582
585
|
|
|
@@ -686,8 +689,6 @@ router
|
|
|
686
689
|
* "notEqual": {},
|
|
687
690
|
* "empty": {},
|
|
688
691
|
* "notEmpty": {},
|
|
689
|
-
* "contains": {},
|
|
690
|
-
* "notContains": {}
|
|
691
692
|
* "oneOf": {
|
|
692
693
|
* "columnName": ["value"]
|
|
693
694
|
* }
|
|
@@ -707,6 +708,7 @@ router
|
|
|
707
708
|
*/
|
|
708
709
|
.post(
|
|
709
710
|
"/api/:tableId/search",
|
|
711
|
+
internalSearchValidator(),
|
|
710
712
|
paramResource("tableId"),
|
|
711
713
|
authorized(PermissionTypes.TABLE, PermissionLevels.READ),
|
|
712
714
|
rowController.search
|
|
@@ -762,6 +764,7 @@ router
|
|
|
762
764
|
"/api/:tableId/rows",
|
|
763
765
|
paramResource("tableId"),
|
|
764
766
|
authorized(PermissionTypes.TABLE, PermissionLevels.WRITE),
|
|
767
|
+
usage,
|
|
765
768
|
rowController.patch
|
|
766
769
|
)
|
|
767
770
|
/**
|
|
@@ -826,7 +829,7 @@ module.exports = router
|
|
|
826
829
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
827
830
|
Code coverage generated by
|
|
828
831
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
829
|
-
at
|
|
832
|
+
at Mon Mar 07 2022 10:13:57 GMT+0000 (Coordinated Universal Time)
|
|
830
833
|
</div>
|
|
831
834
|
</div>
|
|
832
835
|
<script src="../../prettify.js"></script>
|