@budibase/server 1.0.48 → 1.0.49-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/builder/assets/{index.e083dcaf.js → index.21e57eb4.js} +234 -231
- package/builder/assets/index.83c0944f.css +1 -0
- package/builder/assets/{vendor.f9faf6ab.js → vendor.d526bfe8.js} +12 -12
- package/builder/index.html +3 -3
- package/coverage/clover.xml +2338 -2028
- package/coverage/coverage-final.json +100 -95
- package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/application.js.html +210 -126
- package/coverage/lcov-report/api/controllers/auth.js.html +18 -6
- package/coverage/lcov-report/api/controllers/automation.js.html +21 -21
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
- package/coverage/lcov-report/api/controllers/component.js.html +4 -4
- package/coverage/lcov-report/api/controllers/datasource.js.html +72 -36
- package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
- package/coverage/lcov-report/api/controllers/index.html +53 -53
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
- package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
- package/coverage/lcov-report/api/controllers/migrations.js.html +119 -0
- 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 +19 -19
- package/coverage/lcov-report/api/controllers/query/validation.js.html +6 -6
- package/coverage/lcov-report/api/controllers/role.js.html +9 -9
- package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/external.js.html +16 -16
- package/coverage/lcov-report/api/controllers/row/index.html +48 -33
- package/coverage/lcov-report/api/controllers/row/index.js.html +26 -26
- package/coverage/lcov-report/api/controllers/row/internal.js.html +95 -158
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +41 -17
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +551 -0
- package/coverage/lcov-report/api/controllers/row/utils.js.html +39 -57
- 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 +629 -0
- package/coverage/lcov-report/api/controllers/table/external.js.html +12 -12
- package/coverage/lcov-report/api/controllers/table/index.html +46 -31
- package/coverage/lcov-report/api/controllers/table/index.js.html +53 -77
- package/coverage/lcov-report/api/controllers/table/internal.js.html +59 -35
- package/coverage/lcov-report/api/controllers/table/utils.js.html +217 -73
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +30 -24
- 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 +11 -11
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
- package/coverage/lcov-report/api/controllers/webhook.js.html +15 -15
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +8 -8
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/application.js.html +1 -1
- package/coverage/lcov-report/api/routes/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +18 -18
- package/coverage/lcov-report/api/routes/index.js.html +3 -3
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/{hosting.js.html → migrations.js.html} +17 -14
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/row.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/static.js.html +17 -2
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +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 +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
- package/coverage/lcov-report/automations/steps/createRow.js.html +13 -19
- package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
- package/coverage/lcov-report/automations/steps/deleteRow.js.html +11 -20
- 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 +7 -7
- package/coverage/lcov-report/automations/steps/index.html +13 -13
- 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 +10 -10
- 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 +18 -18
- package/coverage/lcov-report/automations/utils.js.html +32 -32
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +53 -26
- 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 +18 -18
- package/coverage/lcov-report/db/linkedRows/index.html +10 -10
- package/coverage/lcov-report/db/linkedRows/index.js.html +38 -41
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +15 -15
- package/coverage/lcov-report/db/newid.js.html +4 -4
- package/coverage/lcov-report/db/utils.js.html +86 -86
- 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 +5 -5
- package/coverage/lcov-report/events/utils.js.html +3 -3
- package/coverage/lcov-report/index.html +114 -99
- package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
- package/coverage/lcov-report/middleware/authorized.js.html +166 -64
- package/coverage/lcov-report/middleware/builder.js.html +8 -8
- package/coverage/lcov-report/middleware/currentapp.js.html +29 -29
- package/coverage/lcov-report/middleware/index.html +30 -30
- package/coverage/lcov-report/middleware/joi-validator.js.html +3 -3
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/usageQuota.js.html +270 -42
- package/coverage/lcov-report/middleware/utils.js.html +2 -2
- package/coverage/lcov-report/threads/automation.js.html +1 -1
- package/coverage/lcov-report/threads/index.html +15 -15
- package/coverage/lcov-report/threads/index.js.html +10 -10
- package/coverage/lcov-report/threads/query.js.html +23 -8
- 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 +26 -26
- package/coverage/lcov-report/utilities/index.html +19 -19
- package/coverage/lcov-report/utilities/index.js.html +25 -25
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +8 -8
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.html +27 -27
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +115 -79
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +75 -27
- 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 +141 -0
- package/coverage/lcov-report/utilities/usageQuota/index.js.html +356 -0
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +302 -0
- package/coverage/lcov-report/{api/controllers/hosting.js.html → utilities/usageQuota/usageQuoteReset.js.html} +36 -48
- package/coverage/lcov-report/utilities/users.js.html +5 -5
- package/coverage/lcov-report/utilities/workerRequests.js.html +39 -108
- package/coverage/lcov.info +3656 -3057
- package/dist/api/controllers/application.js +61 -34
- package/dist/api/controllers/auth.js +4 -0
- package/dist/api/controllers/datasource.js +11 -0
- package/dist/api/controllers/migrations.js +21 -0
- package/dist/api/controllers/row/internal.js +30 -53
- package/dist/api/controllers/row/internalSearch.js +12 -4
- package/dist/api/controllers/row/staticFormula.js +147 -0
- package/dist/api/controllers/row/utils.js +6 -8
- package/dist/api/controllers/static/index.js +59 -10
- package/dist/api/controllers/table/bulkFormula.js +160 -0
- package/dist/api/controllers/table/index.js +12 -9
- package/dist/api/controllers/table/internal.js +9 -0
- package/dist/api/controllers/table/utils.js +41 -12
- package/dist/api/controllers/user.js +2 -0
- package/dist/api/routes/index.js +2 -2
- package/dist/api/routes/migrations.js +9 -0
- package/dist/api/routes/static.js +2 -1
- package/dist/app.js +35 -5
- package/dist/automations/steps/createRow.js +2 -4
- package/dist/automations/steps/deleteRow.js +1 -4
- package/dist/constants/index.js +7 -0
- package/dist/db/linkedRows/index.js +4 -5
- package/dist/definitions/datasource.js +1 -0
- package/dist/environment.js +2 -0
- package/dist/integrations/base/sql.js +13 -6
- package/dist/integrations/googlesheets.js +340 -0
- package/dist/integrations/index.js +3 -0
- package/dist/integrations/utils.js +57 -9
- package/dist/middleware/authorized.js +55 -30
- package/dist/middleware/usageQuota.js +80 -13
- package/dist/migrations/functions/appUrls.js +46 -0
- package/dist/migrations/functions/quotas1.js +50 -0
- package/dist/migrations/functions/usageQuotas/index.js +20 -0
- package/dist/migrations/functions/usageQuotas/syncApps.js +32 -0
- package/dist/migrations/functions/usageQuotas/syncRows.js +35 -0
- package/dist/migrations/functions/userEmailViewCasing.js +24 -0
- package/dist/migrations/index.js +62 -0
- package/dist/package.json +8 -5
- package/dist/tests/utilities/TestConfiguration.js +13 -6
- package/dist/threads/query.js +4 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utilities/rowProcessor/index.js +18 -11
- package/dist/utilities/rowProcessor/utils.js +14 -4
- package/dist/utilities/{usageQuota.js → usageQuota/index.js} +44 -31
- package/dist/utilities/usageQuota/rows.js +77 -0
- package/dist/utilities/usageQuota/usageQuoteReset.js +16 -0
- package/dist/utilities/workerRequests.js +0 -20
- package/nodemon.json +1 -1
- package/package.json +9 -6
- package/src/api/controllers/application.js +52 -24
- package/src/api/controllers/auth.js +4 -0
- package/src/api/controllers/datasource.js +12 -0
- package/src/api/controllers/migrations.js +13 -0
- package/src/api/controllers/row/internal.js +29 -50
- package/src/api/controllers/row/internalSearch.js +12 -4
- package/src/api/controllers/row/staticFormula.js +157 -0
- package/src/api/controllers/row/utils.js +6 -12
- package/src/api/controllers/static/index.js +63 -10
- package/src/api/controllers/table/bulkFormula.js +183 -0
- package/src/api/controllers/table/index.js +16 -24
- package/src/api/controllers/table/internal.js +9 -1
- package/src/api/controllers/table/utils.js +57 -9
- package/src/api/controllers/user.js +2 -0
- package/src/api/routes/index.js +2 -2
- package/src/api/routes/migrations.js +14 -0
- package/src/api/routes/static.js +5 -0
- package/src/api/routes/tests/application.spec.js +2 -2
- package/src/api/routes/tests/auth.spec.js +1 -2
- package/src/api/routes/tests/static.spec.js +98 -0
- package/src/app.ts +18 -5
- package/src/automations/steps/createRow.js +2 -4
- package/src/automations/steps/deleteRow.js +1 -4
- package/src/constants/index.js +9 -0
- package/src/db/linkedRows/index.js +4 -5
- package/src/definitions/common.ts +3 -0
- package/src/definitions/datasource.ts +3 -0
- package/src/environment.js +2 -0
- package/src/integrations/base/sql.ts +14 -7
- package/src/integrations/googlesheets.ts +353 -0
- package/src/integrations/index.ts +3 -0
- package/src/integrations/tests/sql.spec.js +16 -0
- package/src/integrations/utils.ts +71 -11
- package/src/middleware/authorized.js +64 -30
- package/src/middleware/tests/authorized.spec.js +6 -4
- package/src/middleware/tests/usageQuota.spec.js +18 -24
- package/src/middleware/usageQuota.js +91 -15
- package/src/migrations/functions/appUrls.ts +34 -0
- package/src/migrations/functions/quotas1.ts +20 -0
- package/src/migrations/functions/tests/appUrls.spec.js +29 -0
- package/src/migrations/functions/tests/quotas1.spec.js +27 -0
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +25 -0
- package/src/migrations/functions/usageQuotas/index.ts +8 -0
- package/src/migrations/functions/usageQuotas/syncApps.ts +18 -0
- package/src/migrations/functions/usageQuotas/syncRows.ts +21 -0
- package/src/migrations/functions/usageQuotas/tests/syncApps.spec.js +37 -0
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.js +43 -0
- package/src/migrations/functions/userEmailViewCasing.ts +13 -0
- package/src/migrations/index.ts +56 -0
- package/src/tests/utilities/TestConfiguration.js +14 -6
- package/src/threads/query.js +5 -0
- package/src/utilities/rowProcessor/index.js +24 -12
- package/src/utilities/rowProcessor/utils.js +23 -7
- package/src/utilities/tests/usageQuota/usageQuota.spec.js +72 -0
- package/src/utilities/usageQuota/index.js +92 -0
- package/src/utilities/usageQuota/rows.js +74 -0
- package/src/utilities/usageQuota/usageQuoteReset.js +18 -0
- package/src/utilities/workerRequests.js +0 -23
- package/builder/assets/index.39e01193.css +0 -1
- package/dist/api/controllers/hosting.js +0 -30
- package/dist/api/routes/hosting.js +0 -11
- package/src/api/controllers/hosting.js +0 -22
- package/src/api/routes/hosting.js +0 -13
- package/src/api/routes/tests/hosting.spec.js +0 -36
- package/src/utilities/usageQuota.js +0 -73
|
@@ -23,9 +23,9 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">64.
|
|
26
|
+
<span class="strong">64.07% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>132/206</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -37,16 +37,16 @@
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">58.82% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>20/34</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">64.
|
|
47
|
+
<span class="strong">64.5% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>129/200</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -438,39 +438,110 @@
|
|
|
438
438
|
<a name='L379'></a><a href='#L379'>379</a>
|
|
439
439
|
<a name='L380'></a><a href='#L380'>380</a>
|
|
440
440
|
<a name='L381'></a><a href='#L381'>381</a>
|
|
441
|
-
<a name='L382'></a><a href='#L382'>382</a
|
|
442
|
-
<
|
|
441
|
+
<a name='L382'></a><a href='#L382'>382</a>
|
|
442
|
+
<a name='L383'></a><a href='#L383'>383</a>
|
|
443
|
+
<a name='L384'></a><a href='#L384'>384</a>
|
|
444
|
+
<a name='L385'></a><a href='#L385'>385</a>
|
|
445
|
+
<a name='L386'></a><a href='#L386'>386</a>
|
|
446
|
+
<a name='L387'></a><a href='#L387'>387</a>
|
|
447
|
+
<a name='L388'></a><a href='#L388'>388</a>
|
|
448
|
+
<a name='L389'></a><a href='#L389'>389</a>
|
|
449
|
+
<a name='L390'></a><a href='#L390'>390</a>
|
|
450
|
+
<a name='L391'></a><a href='#L391'>391</a>
|
|
451
|
+
<a name='L392'></a><a href='#L392'>392</a>
|
|
452
|
+
<a name='L393'></a><a href='#L393'>393</a>
|
|
453
|
+
<a name='L394'></a><a href='#L394'>394</a>
|
|
454
|
+
<a name='L395'></a><a href='#L395'>395</a>
|
|
455
|
+
<a name='L396'></a><a href='#L396'>396</a>
|
|
456
|
+
<a name='L397'></a><a href='#L397'>397</a>
|
|
457
|
+
<a name='L398'></a><a href='#L398'>398</a>
|
|
458
|
+
<a name='L399'></a><a href='#L399'>399</a>
|
|
459
|
+
<a name='L400'></a><a href='#L400'>400</a>
|
|
460
|
+
<a name='L401'></a><a href='#L401'>401</a>
|
|
461
|
+
<a name='L402'></a><a href='#L402'>402</a>
|
|
462
|
+
<a name='L403'></a><a href='#L403'>403</a>
|
|
463
|
+
<a name='L404'></a><a href='#L404'>404</a>
|
|
464
|
+
<a name='L405'></a><a href='#L405'>405</a>
|
|
465
|
+
<a name='L406'></a><a href='#L406'>406</a>
|
|
466
|
+
<a name='L407'></a><a href='#L407'>407</a>
|
|
467
|
+
<a name='L408'></a><a href='#L408'>408</a>
|
|
468
|
+
<a name='L409'></a><a href='#L409'>409</a>
|
|
469
|
+
<a name='L410'></a><a href='#L410'>410</a>
|
|
470
|
+
<a name='L411'></a><a href='#L411'>411</a>
|
|
471
|
+
<a name='L412'></a><a href='#L412'>412</a>
|
|
472
|
+
<a name='L413'></a><a href='#L413'>413</a>
|
|
473
|
+
<a name='L414'></a><a href='#L414'>414</a>
|
|
474
|
+
<a name='L415'></a><a href='#L415'>415</a>
|
|
475
|
+
<a name='L416'></a><a href='#L416'>416</a>
|
|
476
|
+
<a name='L417'></a><a href='#L417'>417</a>
|
|
477
|
+
<a name='L418'></a><a href='#L418'>418</a>
|
|
478
|
+
<a name='L419'></a><a href='#L419'>419</a>
|
|
479
|
+
<a name='L420'></a><a href='#L420'>420</a>
|
|
480
|
+
<a name='L421'></a><a href='#L421'>421</a>
|
|
481
|
+
<a name='L422'></a><a href='#L422'>422</a>
|
|
482
|
+
<a name='L423'></a><a href='#L423'>423</a>
|
|
483
|
+
<a name='L424'></a><a href='#L424'>424</a>
|
|
484
|
+
<a name='L425'></a><a href='#L425'>425</a>
|
|
485
|
+
<a name='L426'></a><a href='#L426'>426</a>
|
|
486
|
+
<a name='L427'></a><a href='#L427'>427</a>
|
|
487
|
+
<a name='L428'></a><a href='#L428'>428</a>
|
|
488
|
+
<a name='L429'></a><a href='#L429'>429</a>
|
|
489
|
+
<a name='L430'></a><a href='#L430'>430</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">39x</span>
|
|
490
|
+
<span class="cline-any cline-yes">39x</span>
|
|
443
491
|
<span class="cline-any cline-neutral"> </span>
|
|
444
492
|
<span class="cline-any cline-neutral"> </span>
|
|
445
493
|
<span class="cline-any cline-neutral"> </span>
|
|
446
494
|
<span class="cline-any cline-neutral"> </span>
|
|
447
|
-
<span class="cline-any cline-yes">34x</span>
|
|
448
|
-
<span class="cline-any cline-yes">34x</span>
|
|
449
|
-
<span class="cline-any cline-yes">34x</span>
|
|
450
|
-
<span class="cline-any cline-yes">34x</span>
|
|
451
495
|
<span class="cline-any cline-neutral"> </span>
|
|
452
496
|
<span class="cline-any cline-neutral"> </span>
|
|
497
|
+
<span class="cline-any cline-yes">39x</span>
|
|
498
|
+
<span class="cline-any cline-yes">39x</span>
|
|
499
|
+
<span class="cline-any cline-yes">39x</span>
|
|
453
500
|
<span class="cline-any cline-neutral"> </span>
|
|
454
501
|
<span class="cline-any cline-neutral"> </span>
|
|
455
|
-
<span class="cline-any cline-yes">34x</span>
|
|
456
502
|
<span class="cline-any cline-neutral"> </span>
|
|
503
|
+
<span class="cline-any cline-yes">39x</span>
|
|
457
504
|
<span class="cline-any cline-neutral"> </span>
|
|
458
505
|
<span class="cline-any cline-neutral"> </span>
|
|
459
|
-
<span class="cline-any cline-yes">34x</span>
|
|
460
|
-
<span class="cline-any cline-yes">34x</span>
|
|
461
|
-
<span class="cline-any cline-yes">34x</span>
|
|
462
506
|
<span class="cline-any cline-neutral"> </span>
|
|
463
|
-
<span class="cline-any cline-
|
|
464
|
-
<span class="cline-any cline-yes">
|
|
465
|
-
<span class="cline-any cline-
|
|
466
|
-
<span class="cline-any cline-
|
|
467
|
-
<span class="cline-any cline-
|
|
507
|
+
<span class="cline-any cline-neutral"> </span>
|
|
508
|
+
<span class="cline-any cline-yes">39x</span>
|
|
509
|
+
<span class="cline-any cline-neutral"> </span>
|
|
510
|
+
<span class="cline-any cline-neutral"> </span>
|
|
511
|
+
<span class="cline-any cline-neutral"> </span>
|
|
512
|
+
<span class="cline-any cline-neutral"> </span>
|
|
513
|
+
<span class="cline-any cline-yes">39x</span>
|
|
514
|
+
<span class="cline-any cline-yes">39x</span>
|
|
515
|
+
<span class="cline-any cline-yes">39x</span>
|
|
516
|
+
<span class="cline-any cline-yes">39x</span>
|
|
517
|
+
<span class="cline-any cline-yes">39x</span>
|
|
518
|
+
<span class="cline-any cline-neutral"> </span>
|
|
519
|
+
<span class="cline-any cline-yes">39x</span>
|
|
520
|
+
<span class="cline-any cline-no"> </span>
|
|
521
|
+
<span class="cline-any cline-no"> </span>
|
|
522
|
+
<span class="cline-any cline-neutral"> </span>
|
|
523
|
+
<span class="cline-any cline-neutral"> </span>
|
|
524
|
+
<span class="cline-any cline-neutral"> </span>
|
|
525
|
+
<span class="cline-any cline-neutral"> </span>
|
|
526
|
+
<span class="cline-any cline-no"> </span>
|
|
527
|
+
<span class="cline-any cline-neutral"> </span>
|
|
528
|
+
<span class="cline-any cline-no"> </span>
|
|
529
|
+
<span class="cline-any cline-no"> </span>
|
|
530
|
+
<span class="cline-any cline-neutral"> </span>
|
|
531
|
+
<span class="cline-any cline-neutral"> </span>
|
|
532
|
+
<span class="cline-any cline-neutral"> </span>
|
|
533
|
+
<span class="cline-any cline-neutral"> </span>
|
|
534
|
+
<span class="cline-any cline-yes">39x</span>
|
|
535
|
+
<span class="cline-any cline-yes">101x</span>
|
|
536
|
+
<span class="cline-any cline-yes">101x</span>
|
|
537
|
+
<span class="cline-any cline-yes">101x</span>
|
|
538
|
+
<span class="cline-any cline-yes">101x</span>
|
|
468
539
|
<span class="cline-any cline-yes">4x</span>
|
|
469
540
|
<span class="cline-any cline-yes">11x</span>
|
|
470
541
|
<span class="cline-any cline-neutral"> </span>
|
|
471
542
|
<span class="cline-any cline-neutral"> </span>
|
|
472
543
|
<span class="cline-any cline-neutral"> </span>
|
|
473
|
-
<span class="cline-any cline-yes">
|
|
544
|
+
<span class="cline-any cline-yes">101x</span>
|
|
474
545
|
<span class="cline-any cline-neutral"> </span>
|
|
475
546
|
<span class="cline-any cline-yes">1x</span>
|
|
476
547
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -481,6 +552,8 @@
|
|
|
481
552
|
<span class="cline-any cline-yes">1x</span>
|
|
482
553
|
<span class="cline-any cline-yes">1x</span>
|
|
483
554
|
<span class="cline-any cline-yes">1x</span>
|
|
555
|
+
<span class="cline-any cline-yes">1x</span>
|
|
556
|
+
<span class="cline-any cline-yes">1x</span>
|
|
484
557
|
<span class="cline-any cline-no"> </span>
|
|
485
558
|
<span class="cline-any cline-no"> </span>
|
|
486
559
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -489,13 +562,15 @@
|
|
|
489
562
|
<span class="cline-any cline-neutral"> </span>
|
|
490
563
|
<span class="cline-any cline-neutral"> </span>
|
|
491
564
|
<span class="cline-any cline-yes">1x</span>
|
|
565
|
+
<span class="cline-any cline-neutral"> </span>
|
|
566
|
+
<span class="cline-any cline-yes">1x</span>
|
|
492
567
|
<span class="cline-any cline-yes">1x</span>
|
|
493
568
|
<span class="cline-any cline-neutral"> </span>
|
|
494
|
-
<span class="cline-any cline-yes">
|
|
569
|
+
<span class="cline-any cline-yes">101x</span>
|
|
495
570
|
<span class="cline-any cline-neutral"> </span>
|
|
496
571
|
<span class="cline-any cline-neutral"> </span>
|
|
497
572
|
<span class="cline-any cline-neutral"> </span>
|
|
498
|
-
<span class="cline-any cline-yes">
|
|
573
|
+
<span class="cline-any cline-yes">39x</span>
|
|
499
574
|
<span class="cline-any cline-yes">4x</span>
|
|
500
575
|
<span class="cline-any cline-no"> </span>
|
|
501
576
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -515,9 +590,9 @@
|
|
|
515
590
|
<span class="cline-any cline-yes">4x</span>
|
|
516
591
|
<span class="cline-any cline-neutral"> </span>
|
|
517
592
|
<span class="cline-any cline-neutral"> </span>
|
|
518
|
-
<span class="cline-any cline-yes">
|
|
519
|
-
<span class="cline-any cline-yes">
|
|
520
|
-
<span class="cline-any cline-yes">
|
|
593
|
+
<span class="cline-any cline-yes">39x</span>
|
|
594
|
+
<span class="cline-any cline-yes">102x</span>
|
|
595
|
+
<span class="cline-any cline-yes">101x</span>
|
|
521
596
|
<span class="cline-any cline-neutral"> </span>
|
|
522
597
|
<span class="cline-any cline-neutral"> </span>
|
|
523
598
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -556,15 +631,19 @@
|
|
|
556
631
|
<span class="cline-any cline-neutral"> </span>
|
|
557
632
|
<span class="cline-any cline-neutral"> </span>
|
|
558
633
|
<span class="cline-any cline-yes">1x</span>
|
|
634
|
+
<span class="cline-any cline-neutral"> </span>
|
|
635
|
+
<span class="cline-any cline-neutral"> </span>
|
|
636
|
+
<span class="cline-any cline-yes">1x</span>
|
|
637
|
+
<span class="cline-any cline-yes">1x</span>
|
|
559
638
|
<span class="cline-any cline-yes">1x</span>
|
|
560
639
|
<span class="cline-any cline-yes">1x</span>
|
|
561
640
|
<span class="cline-any cline-yes">1x</span>
|
|
562
641
|
<span class="cline-any cline-neutral"> </span>
|
|
563
642
|
<span class="cline-any cline-neutral"> </span>
|
|
564
|
-
<span class="cline-any cline-yes">
|
|
565
|
-
<span class="cline-any cline-yes">
|
|
643
|
+
<span class="cline-any cline-yes">39x</span>
|
|
644
|
+
<span class="cline-any cline-yes">101x</span>
|
|
566
645
|
<span class="cline-any cline-neutral"> </span>
|
|
567
|
-
<span class="cline-any cline-yes">
|
|
646
|
+
<span class="cline-any cline-yes">101x</span>
|
|
568
647
|
<span class="cline-any cline-yes">2x</span>
|
|
569
648
|
<span class="cline-any cline-yes">2x</span>
|
|
570
649
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -602,12 +681,12 @@
|
|
|
602
681
|
<span class="cline-any cline-neutral"> </span>
|
|
603
682
|
<span class="cline-any cline-neutral"> </span>
|
|
604
683
|
<span class="cline-any cline-neutral"> </span>
|
|
605
|
-
<span class="cline-any cline-yes">
|
|
684
|
+
<span class="cline-any cline-yes">101x</span>
|
|
606
685
|
<span class="cline-any cline-neutral"> </span>
|
|
607
686
|
<span class="cline-any cline-neutral"> </span>
|
|
608
|
-
<span class="cline-any cline-yes">
|
|
687
|
+
<span class="cline-any cline-yes">39x</span>
|
|
609
688
|
<span class="cline-any cline-neutral"> </span>
|
|
610
|
-
<span class="cline-any cline-yes">
|
|
689
|
+
<span class="cline-any cline-yes">101x</span>
|
|
611
690
|
<span class="cline-any cline-yes">1x</span>
|
|
612
691
|
<span class="cline-any cline-neutral"> </span>
|
|
613
692
|
<span class="cline-any cline-yes">5x</span>
|
|
@@ -615,60 +694,75 @@
|
|
|
615
694
|
<span class="cline-any cline-neutral"> </span>
|
|
616
695
|
<span class="cline-any cline-neutral"> </span>
|
|
617
696
|
<span class="cline-any cline-neutral"> </span>
|
|
618
|
-
<span class="cline-any cline-yes">
|
|
697
|
+
<span class="cline-any cline-yes">101x</span>
|
|
619
698
|
<span class="cline-any cline-neutral"> </span>
|
|
620
699
|
<span class="cline-any cline-neutral"> </span>
|
|
621
700
|
<span class="cline-any cline-neutral"> </span>
|
|
622
701
|
<span class="cline-any cline-neutral"> </span>
|
|
623
|
-
<span class="cline-any cline-yes">
|
|
624
|
-
<span class="cline-any cline-yes">
|
|
625
|
-
<span class="cline-any cline-yes">
|
|
626
|
-
<span class="cline-any cline-yes">
|
|
702
|
+
<span class="cline-any cline-yes">101x</span>
|
|
703
|
+
<span class="cline-any cline-yes">101x</span>
|
|
704
|
+
<span class="cline-any cline-yes">101x</span>
|
|
705
|
+
<span class="cline-any cline-yes">101x</span>
|
|
627
706
|
<span class="cline-any cline-neutral"> </span>
|
|
628
|
-
<span class="cline-any cline-yes">
|
|
629
|
-
<span class="cline-any cline-yes">
|
|
707
|
+
<span class="cline-any cline-yes">101x</span>
|
|
708
|
+
<span class="cline-any cline-yes">101x</span>
|
|
630
709
|
<span class="cline-any cline-neutral"> </span>
|
|
631
|
-
<span class="cline-any cline-yes">
|
|
710
|
+
<span class="cline-any cline-yes">101x</span>
|
|
632
711
|
<span class="cline-any cline-neutral"> </span>
|
|
633
712
|
<span class="cline-any cline-neutral"> </span>
|
|
634
713
|
<span class="cline-any cline-neutral"> </span>
|
|
635
714
|
<span class="cline-any cline-neutral"> </span>
|
|
636
|
-
<span class="cline-any cline-yes">
|
|
715
|
+
<span class="cline-any cline-yes">101x</span>
|
|
637
716
|
<span class="cline-any cline-yes">4x</span>
|
|
638
717
|
<span class="cline-any cline-neutral"> </span>
|
|
639
|
-
<span class="cline-any cline-yes">
|
|
640
|
-
<span class="cline-any cline-yes">
|
|
718
|
+
<span class="cline-any cline-yes">101x</span>
|
|
719
|
+
<span class="cline-any cline-yes">101x</span>
|
|
720
|
+
<span class="cline-any cline-neutral"> </span>
|
|
721
|
+
<span class="cline-any cline-neutral"> </span>
|
|
722
|
+
<span class="cline-any cline-neutral"> </span>
|
|
723
|
+
<span class="cline-any cline-neutral"> </span>
|
|
724
|
+
<span class="cline-any cline-yes">101x</span>
|
|
725
|
+
<span class="cline-any cline-neutral"> </span>
|
|
726
|
+
<span class="cline-any cline-neutral"> </span>
|
|
641
727
|
<span class="cline-any cline-neutral"> </span>
|
|
642
728
|
<span class="cline-any cline-neutral"> </span>
|
|
643
729
|
<span class="cline-any cline-neutral"> </span>
|
|
730
|
+
<span class="cline-any cline-yes">101x</span>
|
|
731
|
+
<span class="cline-any cline-yes">101x</span>
|
|
644
732
|
<span class="cline-any cline-neutral"> </span>
|
|
645
|
-
<span class="cline-any cline-yes">99x</span>
|
|
646
733
|
<span class="cline-any cline-neutral"> </span>
|
|
647
734
|
<span class="cline-any cline-neutral"> </span>
|
|
648
735
|
<span class="cline-any cline-neutral"> </span>
|
|
736
|
+
<span class="cline-any cline-yes">101x</span>
|
|
737
|
+
<span class="cline-any cline-yes">101x</span>
|
|
649
738
|
<span class="cline-any cline-neutral"> </span>
|
|
650
|
-
<span class="cline-any cline-yes">99x</span>
|
|
651
|
-
<span class="cline-any cline-yes">99x</span>
|
|
652
739
|
<span class="cline-any cline-neutral"> </span>
|
|
653
740
|
<span class="cline-any cline-neutral"> </span>
|
|
654
741
|
<span class="cline-any cline-neutral"> </span>
|
|
655
742
|
<span class="cline-any cline-neutral"> </span>
|
|
656
|
-
<span class="cline-any cline-yes">
|
|
657
|
-
<span class="cline-any cline-yes">99x</span>
|
|
743
|
+
<span class="cline-any cline-yes">101x</span>
|
|
658
744
|
<span class="cline-any cline-neutral"> </span>
|
|
659
745
|
<span class="cline-any cline-neutral"> </span>
|
|
660
746
|
<span class="cline-any cline-neutral"> </span>
|
|
747
|
+
<span class="cline-any cline-yes">101x</span>
|
|
661
748
|
<span class="cline-any cline-neutral"> </span>
|
|
662
749
|
<span class="cline-any cline-neutral"> </span>
|
|
663
|
-
<span class="cline-any cline-yes">99x</span>
|
|
664
750
|
<span class="cline-any cline-neutral"> </span>
|
|
751
|
+
<span class="cline-any cline-yes">39x</span>
|
|
752
|
+
<span class="cline-any cline-yes">207x</span>
|
|
753
|
+
<span class="cline-any cline-yes">207x</span>
|
|
665
754
|
<span class="cline-any cline-neutral"> </span>
|
|
666
755
|
<span class="cline-any cline-neutral"> </span>
|
|
667
|
-
<span class="cline-any cline-yes">99x</span>
|
|
668
756
|
<span class="cline-any cline-neutral"> </span>
|
|
669
757
|
<span class="cline-any cline-neutral"> </span>
|
|
758
|
+
<span class="cline-any cline-yes">474x</span>
|
|
670
759
|
<span class="cline-any cline-neutral"> </span>
|
|
671
|
-
<span class="cline-any cline-
|
|
760
|
+
<span class="cline-any cline-neutral"> </span>
|
|
761
|
+
<span class="cline-any cline-neutral"> </span>
|
|
762
|
+
<span class="cline-any cline-neutral"> </span>
|
|
763
|
+
<span class="cline-any cline-neutral"> </span>
|
|
764
|
+
<span class="cline-any cline-neutral"> </span>
|
|
765
|
+
<span class="cline-any cline-yes">39x</span>
|
|
672
766
|
<span class="cline-any cline-no"> </span>
|
|
673
767
|
<span class="cline-any cline-no"> </span>
|
|
674
768
|
<span class="cline-any cline-no"> </span>
|
|
@@ -677,22 +771,24 @@
|
|
|
677
771
|
<span class="cline-any cline-no"> </span>
|
|
678
772
|
<span class="cline-any cline-neutral"> </span>
|
|
679
773
|
<span class="cline-any cline-neutral"> </span>
|
|
680
|
-
<span class="cline-any cline-yes">
|
|
774
|
+
<span class="cline-any cline-yes">39x</span>
|
|
681
775
|
<span class="cline-any cline-no"> </span>
|
|
682
776
|
<span class="cline-any cline-no"> </span>
|
|
683
777
|
<span class="cline-any cline-neutral"> </span>
|
|
684
778
|
<span class="cline-any cline-neutral"> </span>
|
|
685
|
-
<span class="cline-any cline-yes">
|
|
779
|
+
<span class="cline-any cline-yes">39x</span>
|
|
686
780
|
<span class="cline-any cline-yes">30x</span>
|
|
687
781
|
<span class="cline-any cline-yes">30x</span>
|
|
688
782
|
<span class="cline-any cline-no"> </span>
|
|
689
783
|
<span class="cline-any cline-no"> </span>
|
|
784
|
+
<span class="cline-any cline-no"> </span>
|
|
785
|
+
<span class="cline-any cline-no"> </span>
|
|
690
786
|
<span class="cline-any cline-neutral"> </span>
|
|
691
787
|
<span class="cline-any cline-yes">30x</span>
|
|
692
788
|
<span class="cline-any cline-neutral"> </span>
|
|
693
789
|
<span class="cline-any cline-neutral"> </span>
|
|
694
790
|
<span class="cline-any cline-neutral"> </span>
|
|
695
|
-
<span class="cline-any cline-yes">
|
|
791
|
+
<span class="cline-any cline-yes">39x</span>
|
|
696
792
|
<span class="cline-any cline-yes">1x</span>
|
|
697
793
|
<span class="cline-any cline-yes">1x</span>
|
|
698
794
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -764,15 +860,15 @@
|
|
|
764
860
|
<span class="cline-any cline-neutral"> </span>
|
|
765
861
|
<span class="cline-any cline-neutral"> </span>
|
|
766
862
|
<span class="cline-any cline-neutral"> </span>
|
|
767
|
-
<span class="cline-any cline-yes">
|
|
863
|
+
<span class="cline-any cline-yes">39x</span>
|
|
768
864
|
<span class="cline-any cline-no"> </span>
|
|
769
865
|
<span class="cline-any cline-neutral"> </span>
|
|
770
866
|
<span class="cline-any cline-neutral"> </span>
|
|
771
|
-
<span class="cline-any cline-yes">
|
|
867
|
+
<span class="cline-any cline-yes">39x</span>
|
|
772
868
|
<span class="cline-any cline-no"> </span>
|
|
773
869
|
<span class="cline-any cline-neutral"> </span>
|
|
774
870
|
<span class="cline-any cline-neutral"> </span>
|
|
775
|
-
<span class="cline-any cline-yes">
|
|
871
|
+
<span class="cline-any cline-yes">39x</span>
|
|
776
872
|
<span class="cline-any cline-no"> </span>
|
|
777
873
|
<span class="cline-any cline-neutral"> </span>
|
|
778
874
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -784,7 +880,7 @@
|
|
|
784
880
|
<span class="cline-any cline-no"> </span>
|
|
785
881
|
<span class="cline-any cline-neutral"> </span>
|
|
786
882
|
<span class="cline-any cline-neutral"> </span>
|
|
787
|
-
<span class="cline-any cline-yes">
|
|
883
|
+
<span class="cline-any cline-yes">39x</span>
|
|
788
884
|
<span class="cline-any cline-no"> </span>
|
|
789
885
|
<span class="cline-any cline-neutral"> </span>
|
|
790
886
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -801,9 +897,9 @@
|
|
|
801
897
|
<span class="cline-any cline-no"> </span>
|
|
802
898
|
<span class="cline-any cline-neutral"> </span>
|
|
803
899
|
<span class="cline-any cline-neutral"> </span>
|
|
804
|
-
<span class="cline-any cline-yes">
|
|
805
|
-
<span class="cline-any cline-yes">
|
|
806
|
-
<span class="cline-any cline-yes">
|
|
900
|
+
<span class="cline-any cline-yes">39x</span>
|
|
901
|
+
<span class="cline-any cline-yes">101x</span>
|
|
902
|
+
<span class="cline-any cline-yes">97x</span>
|
|
807
903
|
<span class="cline-any cline-neutral"> </span>
|
|
808
904
|
<span class="cline-any cline-yes">4x</span>
|
|
809
905
|
<span class="cline-any cline-yes">11x</span>
|
|
@@ -818,17 +914,22 @@
|
|
|
818
914
|
<span class="cline-any cline-yes">4x</span>
|
|
819
915
|
<span class="cline-any cline-neutral"> </span>
|
|
820
916
|
<span class="cline-any cline-neutral"> </span>
|
|
821
|
-
<span class="cline-any cline-yes">
|
|
917
|
+
<span class="cline-any cline-yes">39x</span>
|
|
822
918
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const CouchDB = require("../../../db")
|
|
823
919
|
const csvParser = require("../../../utilities/csvParser")
|
|
824
920
|
const {
|
|
825
921
|
getRowParams,
|
|
826
922
|
generateRowID,
|
|
827
923
|
InternalTables,
|
|
924
|
+
getTableParams,
|
|
925
|
+
BudibaseInternalDB,
|
|
828
926
|
} = require("../../../db/utils")
|
|
829
|
-
const { isEqual } = require("lodash
|
|
927
|
+
const { isEqual } = require("lodash")
|
|
830
928
|
const { AutoFieldSubTypes, FieldTypes } = require("../../../constants")
|
|
831
|
-
const {
|
|
929
|
+
const {
|
|
930
|
+
inputProcessing,
|
|
931
|
+
cleanupAttachments,
|
|
932
|
+
} = require("../../../utilities/rowProcessor")
|
|
832
933
|
const {
|
|
833
934
|
USERS_TABLE_SCHEMA,
|
|
834
935
|
SwitchableTypes,
|
|
@@ -837,11 +938,29 @@ const {
|
|
|
837
938
|
const {
|
|
838
939
|
isExternalTable,
|
|
839
940
|
breakExternalTableId,
|
|
941
|
+
isSQL,
|
|
840
942
|
} = require("../../../integrations/utils")
|
|
841
943
|
const { getViews, saveView } = require("../view/utils")
|
|
842
944
|
const viewTemplate = require("../view/viewBuilder")
|
|
945
|
+
const usageQuota = require("../../../utilities/usageQuota")
|
|
946
|
+
const { cloneDeep } = require("lodash/fp")
|
|
947
|
+
|
|
948
|
+
exports.clearColumns = <span class="fstat-no" title="function not covered" >as</span>ync (appId, table, columnNames) => {
|
|
949
|
+
const db = <span class="cstat-no" title="statement not covered" >new CouchDB(appId)</span>
|
|
950
|
+
const rows = <span class="cstat-no" title="statement not covered" >await db.allDocs(</span>
|
|
951
|
+
getRowParams(table._id, null, {
|
|
952
|
+
include_docs: true,
|
|
953
|
+
})
|
|
954
|
+
)
|
|
955
|
+
<span class="cstat-no" title="statement not covered" > return db.bulkDocs(</span>
|
|
956
|
+
rows.rows.map(<span class="fstat-no" title="function not covered" >({</span> doc }) => {
|
|
957
|
+
<span class="cstat-no" title="statement not covered" > columnNames.forEach(<span class="fstat-no" title="function not covered" >co</span>lName => <span class="cstat-no" title="statement not covered" >delete doc[colName])</span></span>
|
|
958
|
+
<span class="cstat-no" title="statement not covered" > return doc</span>
|
|
959
|
+
})
|
|
960
|
+
)
|
|
961
|
+
}
|
|
843
962
|
|
|
844
|
-
exports.checkForColumnUpdates = async (db, oldTable, updatedTable) => {
|
|
963
|
+
exports.checkForColumnUpdates = async (appId, db, oldTable, updatedTable) => {
|
|
845
964
|
let updatedRows = []
|
|
846
965
|
const rename = updatedTable._rename
|
|
847
966
|
let deletedColumns = []
|
|
@@ -858,16 +977,20 @@ exports.checkForColumnUpdates = async (db, oldTable, updatedTable) => {
|
|
|
858
977
|
include_docs: true,
|
|
859
978
|
})
|
|
860
979
|
)
|
|
861
|
-
|
|
980
|
+
const rawRows = rows.rows.map(({ doc }) => doc)
|
|
981
|
+
updatedRows = rawRows.map(row => {
|
|
982
|
+
row = cloneDeep(row)
|
|
862
983
|
if (rename) {
|
|
863
|
-
|
|
864
|
-
delete
|
|
984
|
+
row[rename.updated] = row[rename.old]
|
|
985
|
+
delete row[rename.old]
|
|
865
986
|
} else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="else path not taken" >E</span>if (deletedColumns.length !== 0) {</span>
|
|
866
|
-
<span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >co</span>lName => <span class="cstat-no" title="statement not covered" >delete
|
|
987
|
+
<span class="cstat-no" title="statement not covered" > deletedColumns.forEach(<span class="fstat-no" title="function not covered" >co</span>lName => <span class="cstat-no" title="statement not covered" >delete row[colName])</span></span>
|
|
867
988
|
}
|
|
868
|
-
return
|
|
989
|
+
return row
|
|
869
990
|
})
|
|
870
991
|
|
|
992
|
+
// cleanup any attachments from object storage for deleted attachment columns
|
|
993
|
+
await cleanupAttachments(appId, updatedTable, { oldTable, rows: rawRows })
|
|
871
994
|
// Update views
|
|
872
995
|
await exports.checkForViewUpdates(db, updatedTable, rename, deletedColumns)
|
|
873
996
|
delete updatedTable._rename
|
|
@@ -936,7 +1059,11 @@ exports.handleDataImport = async (appId, user, table, dataImport) => {
|
|
|
936
1059
|
finalData.push(row)
|
|
937
1060
|
}
|
|
938
1061
|
|
|
1062
|
+
await usageQuota.update(usageQuota.Properties.ROW, finalData.length, {
|
|
1063
|
+
dryRun: true,
|
|
1064
|
+
})
|
|
939
1065
|
await db.bulkDocs(finalData)
|
|
1066
|
+
await usageQuota.update(usageQuota.Properties.ROW, finalData.length)
|
|
940
1067
|
let response = await db.put(table)
|
|
941
1068
|
table._rev = response._rev
|
|
942
1069
|
return table
|
|
@@ -1024,6 +1151,7 @@ class TableSaveFunctions {
|
|
|
1024
1151
|
// when confirmed valid
|
|
1025
1152
|
async mid(table) {
|
|
1026
1153
|
let response = await exports.checkForColumnUpdates(
|
|
1154
|
+
this.appId,
|
|
1027
1155
|
this.db,
|
|
1028
1156
|
this.oldTable,
|
|
1029
1157
|
table
|
|
@@ -1049,6 +1177,20 @@ class TableSaveFunctions {
|
|
|
1049
1177
|
}
|
|
1050
1178
|
}
|
|
1051
1179
|
|
|
1180
|
+
exports.getAllInternalTables = async appId => {
|
|
1181
|
+
const db = new CouchDB(appId)
|
|
1182
|
+
const internalTables = await db.allDocs(
|
|
1183
|
+
getTableParams(null, {
|
|
1184
|
+
include_docs: true,
|
|
1185
|
+
})
|
|
1186
|
+
)
|
|
1187
|
+
return internalTables.rows.map(tableDoc => ({
|
|
1188
|
+
...tableDoc.doc,
|
|
1189
|
+
type: "internal",
|
|
1190
|
+
sourceId: BudibaseInternalDB._id,
|
|
1191
|
+
}))
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1052
1194
|
exports.getAllExternalTables = <span class="fstat-no" title="function not covered" >as</span>ync (appId, datasourceId) => {
|
|
1053
1195
|
const db = <span class="cstat-no" title="statement not covered" >new CouchDB(appId)</span>
|
|
1054
1196
|
const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
|
|
@@ -1067,7 +1209,9 @@ exports.getTable = async (appId, tableId) => {
|
|
|
1067
1209
|
const db = new CouchDB(appId)
|
|
1068
1210
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (isExternalTable(tableId)) {
|
|
1069
1211
|
let { datasourceId, tableName } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(tableId)</span>
|
|
1070
|
-
<span class="cstat-no" title="statement not covered" >
|
|
1212
|
+
const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
|
|
1213
|
+
const table = <span class="cstat-no" title="statement not covered" >await exports.getExternalTable(appId, datasourceId, tableName)</span>
|
|
1214
|
+
<span class="cstat-no" title="statement not covered" > return { ...table, sql: isSQL(datasource) }</span>
|
|
1071
1215
|
} else {
|
|
1072
1216
|
return db.get(tableId)
|
|
1073
1217
|
}
|
|
@@ -1207,7 +1351,7 @@ exports.TableSaveFunctions = TableSaveFunctions
|
|
|
1207
1351
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1208
1352
|
Code coverage generated by
|
|
1209
1353
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
1210
|
-
at Mon Jan 31 2022
|
|
1354
|
+
at Mon Jan 31 2022 17:55:41 GMT+0000 (Coordinated Universal Time)
|
|
1211
1355
|
</div>
|
|
1212
1356
|
</div>
|
|
1213
1357
|
<script src="../../../prettify.js"></script>
|
|
@@ -181,7 +181,7 @@ exports.downloadTemplate = async function (ctx) {
|
|
|
181
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
182
|
Code coverage generated by
|
|
183
183
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
184
|
-
at Mon Jan 31 2022
|
|
184
|
+
at Mon Jan 31 2022 17:55:41 GMT+0000 (Coordinated Universal Time)
|
|
185
185
|
</div>
|
|
186
186
|
</div>
|
|
187
187
|
<script src="../../prettify.js"></script>
|