@budibase/server 2.0.33 → 2.0.34-alpha.1
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__/mongodb.ts +1 -1
- package/builder/assets/backups-default.8c011f1b.png +0 -0
- package/builder/assets/{index.dfa4073c.css → index.b15ffe95.css} +2 -2
- package/builder/assets/{index.ce49a649.js → index.cf543543.js} +340 -332
- package/builder/index.html +2 -2
- package/coverage/clover.xml +635 -690
- package/coverage/coverage-final.json +34 -36
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +74 -62
- package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
- package/coverage/lcov-report/api/controllers/dev.js.html +2 -2
- package/coverage/lcov-report/api/controllers/index.html +17 -32
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
- package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
- package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
- package/coverage/lcov-report/api/controllers/query/index.html +1 -1
- package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/role.js.html +1 -1
- package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/index.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internal.js.html +12 -12
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +15 -15
- package/coverage/lcov-report/api/controllers/row/utils.js.html +13 -13
- package/coverage/lcov-report/api/controllers/script.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +12 -9
- package/coverage/lcov-report/api/controllers/table/external.js.html +10 -10
- package/coverage/lcov-report/api/controllers/table/index.html +16 -16
- package/coverage/lcov-report/api/controllers/table/index.js.html +5 -5
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +3 -3
- package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
- package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +7 -7
- 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/automation.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 +5 -20
- 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/migrations.js.html +1 -1
- 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/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/utils/index.html +1 -1
- package/coverage/lcov-report/api/routes/utils/validators.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 +1 -1
- package/coverage/lcov-report/automations/automationUtils.js.html +6 -6
- package/coverage/lcov-report/automations/bullboard.js.html +17 -92
- package/coverage/lcov-report/automations/index.html +20 -20
- package/coverage/lcov-report/automations/index.js.html +9 -9
- package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/automations/steps/updateRow.js.html +3 -3
- package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/triggers.js.html +30 -30
- package/coverage/lcov-report/constants/index.html +5 -5
- package/coverage/lcov-report/constants/index.js.html +10 -16
- package/coverage/lcov-report/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/constants/screens.js.html +1 -1
- package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
- package/coverage/lcov-report/db/index.html +19 -19
- package/coverage/lcov-report/db/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +11 -11
- package/coverage/lcov-report/db/linkedRows/index.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.js.html +11 -11
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +3 -3
- package/coverage/lcov-report/db/newid.js.html +2 -2
- package/coverage/lcov-report/db/utils.js.html +37 -316
- 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 +2 -2
- package/coverage/lcov-report/events/utils.js.html +9 -9
- package/coverage/lcov-report/index.html +77 -77
- 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/builder.js.html +11 -11
- package/coverage/lcov-report/middleware/currentapp.js.html +34 -34
- package/coverage/lcov-report/middleware/index.html +1 -1
- package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
- package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
- package/coverage/lcov-report/middleware/resourceId.js.html +7 -7
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/utils.js.html +2 -2
- package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
- package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/utilities/csvParser.js.html +11 -8
- package/coverage/lcov-report/utilities/global.js.html +16 -16
- package/coverage/lcov-report/utilities/index.html +15 -15
- package/coverage/lcov-report/utilities/index.js.html +7 -7
- package/coverage/lcov-report/utilities/plugins.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +52 -52
- package/coverage/lcov-report/utilities/queue/index.html +21 -21
- 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 +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +54 -39
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +10 -10
- package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/utilities/security.js.html +2 -2
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +14 -14
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +23 -11
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +1 -1
- package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
- package/coverage/lcov.info +1144 -1248
- package/dist/api/controllers/application.js +4 -7
- package/dist/api/controllers/backup.js +19 -13
- package/dist/api/controllers/cloud.js +38 -35
- package/dist/api/controllers/deploy/index.js +11 -2
- package/dist/api/controllers/dev.js +1 -1
- package/dist/api/controllers/query/index.js +7 -2
- package/dist/api/controllers/row/index.js +30 -10
- package/dist/api/controllers/static/index.js +2 -2
- package/dist/api/controllers/static/templates/preview.hbs +10 -0
- package/dist/api/controllers/table/bulkFormula.js +4 -3
- package/dist/api/controllers/table/external.js +5 -4
- package/dist/api/controllers/table/index.js +4 -4
- package/dist/api/controllers/table/internal.js +10 -3
- package/dist/api/controllers/table/utils.js +7 -49
- package/dist/api/controllers/view/index.js +2 -2
- package/dist/api/routes/backup.js +34 -7
- package/dist/api/routes/index.js +9 -4
- package/dist/app.js +18 -2
- package/dist/automations/automationUtils.js +2 -2
- package/dist/automations/bullboard.js +5 -33
- package/dist/automations/index.js +4 -4
- package/dist/automations/steps/updateRow.js +2 -2
- package/dist/automations/triggers.js +6 -6
- package/dist/automations/utils.js +18 -12
- package/dist/constants/index.js +4 -5
- package/dist/db/utils.js +10 -75
- package/dist/index.js +1 -0
- package/dist/integrations/arangodb.js +2 -0
- package/dist/integrations/base/sqlTable.js +1 -0
- package/dist/integrations/mongodb.js +300 -11
- package/dist/integrations/rest.js +38 -5
- package/dist/migrations/functions/backfill/app/tables.js +5 -8
- package/dist/migrations/functions/{quotas1.js → syncQuotas.js} +3 -7
- package/dist/migrations/functions/usageQuotas/syncApps.js +0 -1
- package/dist/migrations/functions/{pluginCount.js → usageQuotas/syncPlugins.js} +1 -3
- package/dist/migrations/functions/usageQuotas/syncRows.js +9 -5
- package/dist/migrations/index.js +10 -38
- package/dist/package.json +14 -14
- package/dist/sdk/app/backups/constants.js +5 -0
- package/dist/sdk/app/backups/exports.js +172 -0
- package/dist/sdk/app/backups/imports.js +162 -0
- package/dist/sdk/app/backups/index.js +29 -0
- package/dist/sdk/app/backups/statistics.js +73 -0
- package/dist/sdk/app/tables/index.js +61 -0
- package/dist/sdk/index.js +15 -0
- package/dist/tests/utilities/TestConfiguration.js +4 -2
- package/dist/threads/automation.js +12 -17
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/csvParser.js +1 -0
- package/dist/utilities/fileSystem/index.js +3 -95
- package/dist/utilities/fileSystem/utilities.js +2 -1
- package/dist/utilities/rowProcessor/index.js +5 -0
- package/dist/utilities/usageQuota/rows.js +6 -4
- package/package.json +15 -15
- package/specs/openapi.json +3 -0
- package/specs/openapi.yaml +3 -0
- package/src/api/controllers/application.ts +5 -12
- package/src/api/controllers/{backup.js → backup.ts} +7 -7
- package/src/api/controllers/cloud.js +44 -40
- package/src/api/controllers/deploy/index.ts +20 -8
- package/src/api/controllers/dev.js +1 -1
- package/src/api/controllers/query/index.ts +8 -2
- package/src/api/controllers/row/index.ts +36 -13
- package/src/api/controllers/static/index.ts +2 -2
- package/src/api/controllers/static/templates/preview.hbs +10 -0
- package/src/api/controllers/table/bulkFormula.js +4 -3
- package/src/api/controllers/table/external.js +4 -4
- package/src/api/controllers/table/index.js +4 -4
- package/src/api/controllers/table/internal.ts +8 -9
- package/src/api/controllers/table/utils.ts +4 -53
- package/src/api/controllers/view/index.js +2 -2
- package/src/api/routes/backup.ts +10 -0
- package/src/api/routes/index.ts +11 -5
- package/src/api/routes/tests/backup.spec.js +1 -1
- package/src/api/routes/tests/{deployment.spec.js → deployment.spec.ts} +4 -4
- package/src/api/routes/tests/row.spec.js +22 -27
- package/src/app.ts +19 -2
- package/src/automations/automationUtils.js +2 -2
- package/src/automations/bullboard.js +8 -33
- package/src/automations/index.js +4 -4
- package/src/automations/steps/updateRow.js +2 -2
- package/src/automations/tests/automation.spec.js +1 -6
- package/src/automations/triggers.js +6 -6
- package/src/automations/utils.ts +18 -12
- package/src/constants/index.js +4 -6
- package/src/db/utils.js +17 -110
- package/src/definitions/automations.ts +0 -12
- package/src/definitions/datasource.ts +1 -0
- package/src/index.ts +1 -0
- package/src/integrations/arangodb.ts +2 -0
- package/src/integrations/base/sqlTable.ts +1 -0
- package/src/integrations/mongodb.ts +290 -27
- package/src/integrations/rest.ts +17 -5
- package/src/integrations/tests/mongo.spec.ts +19 -19
- package/src/integrations/tests/rest.spec.ts +38 -22
- package/src/migrations/functions/backfill/app/tables.ts +7 -13
- package/src/migrations/functions/backfill/global.ts +1 -1
- package/src/migrations/functions/{quotas1.ts → syncQuotas.ts} +3 -8
- package/src/migrations/functions/tests/{quotas1.spec.js → syncQuotas.spec.js} +5 -2
- package/src/migrations/functions/usageQuotas/syncApps.ts +0 -1
- package/src/migrations/functions/usageQuotas/syncPlugins.ts +10 -0
- package/src/migrations/functions/usageQuotas/syncRows.ts +15 -6
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +9 -1
- package/src/migrations/index.ts +21 -45
- package/src/migrations/tests/index.spec.ts +0 -1
- package/src/sdk/app/backups/constants.ts +2 -0
- package/src/sdk/app/backups/exports.ts +171 -0
- package/src/sdk/app/backups/imports.ts +169 -0
- package/src/sdk/app/backups/index.ts +9 -0
- package/src/sdk/app/backups/statistics.ts +78 -0
- package/src/sdk/app/tables/index.ts +61 -0
- package/src/sdk/index.ts +13 -0
- package/src/tests/utilities/TestConfiguration.js +5 -2
- package/src/threads/automation.ts +20 -27
- package/src/utilities/csvParser.js +1 -0
- package/src/utilities/fileSystem/index.js +2 -119
- package/src/utilities/fileSystem/utilities.js +2 -0
- package/src/utilities/rowProcessor/index.js +5 -0
- package/src/utilities/usageQuota/rows.js +7 -3
- package/coverage/lcov-report/api/controllers/backup.js.html +0 -142
- package/coverage/lcov-report/api/routes/backup.js.html +0 -115
- package/dist/automations/listeners.js +0 -102
- package/src/api/routes/backup.js +0 -10
- package/src/automations/listeners.ts +0 -78
- package/src/migrations/functions/pluginCount.ts +0 -12
|
@@ -405,7 +405,12 @@
|
|
|
405
405
|
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
406
|
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
407
|
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
-
<a name='L343'></a><a href='#L343'>343</a
|
|
408
|
+
<a name='L343'></a><a href='#L343'>343</a>
|
|
409
|
+
<a name='L344'></a><a href='#L344'>344</a>
|
|
410
|
+
<a name='L345'></a><a href='#L345'>345</a>
|
|
411
|
+
<a name='L346'></a><a href='#L346'>346</a>
|
|
412
|
+
<a name='L347'></a><a href='#L347'>347</a>
|
|
413
|
+
<a name='L348'></a><a href='#L348'>348</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">45x</span>
|
|
409
414
|
<span class="cline-any cline-yes">45x</span>
|
|
410
415
|
<span class="cline-any cline-yes">45x</span>
|
|
411
416
|
<span class="cline-any cline-yes">45x</span>
|
|
@@ -469,6 +474,11 @@
|
|
|
469
474
|
<span class="cline-any cline-neutral"> </span>
|
|
470
475
|
<span class="cline-any cline-neutral"> </span>
|
|
471
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-neutral"> </span>
|
|
472
482
|
<span class="cline-any cline-yes">9x</span>
|
|
473
483
|
<span class="cline-any cline-neutral"> </span>
|
|
474
484
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -544,17 +554,17 @@
|
|
|
544
554
|
<span class="cline-any cline-neutral"> </span>
|
|
545
555
|
<span class="cline-any cline-neutral"> </span>
|
|
546
556
|
<span class="cline-any cline-neutral"> </span>
|
|
547
|
-
<span class="cline-any cline-yes">
|
|
548
|
-
<span class="cline-any cline-yes">
|
|
549
|
-
<span class="cline-any cline-yes">
|
|
557
|
+
<span class="cline-any cline-yes">86x</span>
|
|
558
|
+
<span class="cline-any cline-yes">86x</span>
|
|
559
|
+
<span class="cline-any cline-yes">86x</span>
|
|
550
560
|
<span class="cline-any cline-neutral"> </span>
|
|
551
|
-
<span class="cline-any cline-yes">
|
|
561
|
+
<span class="cline-any cline-yes">86x</span>
|
|
552
562
|
<span class="cline-any cline-neutral"> </span>
|
|
553
563
|
<span class="cline-any cline-neutral"> </span>
|
|
554
|
-
<span class="cline-any cline-yes">
|
|
555
|
-
<span class="cline-any cline-yes">
|
|
556
|
-
<span class="cline-any cline-yes">
|
|
557
|
-
<span class="cline-any cline-yes">
|
|
564
|
+
<span class="cline-any cline-yes">86x</span>
|
|
565
|
+
<span class="cline-any cline-yes">86x</span>
|
|
566
|
+
<span class="cline-any cline-yes">232x</span>
|
|
567
|
+
<span class="cline-any cline-yes">232x</span>
|
|
558
568
|
<span class="cline-any cline-neutral"> </span>
|
|
559
569
|
<span class="cline-any cline-no"> </span>
|
|
560
570
|
<span class="cline-any cline-no"> </span>
|
|
@@ -586,7 +596,7 @@
|
|
|
586
596
|
<span class="cline-any cline-no"> </span>
|
|
587
597
|
<span class="cline-any cline-neutral"> </span>
|
|
588
598
|
<span class="cline-any cline-neutral"> </span>
|
|
589
|
-
<span class="cline-any cline-yes">
|
|
599
|
+
<span class="cline-any cline-yes">86x</span>
|
|
590
600
|
<span class="cline-any cline-neutral"> </span>
|
|
591
601
|
<span class="cline-any cline-yes">45x</span>
|
|
592
602
|
<span class="cline-any cline-yes">45x</span>
|
|
@@ -600,17 +610,17 @@
|
|
|
600
610
|
<span class="cline-any cline-neutral"> </span>
|
|
601
611
|
<span class="cline-any cline-yes">45x</span>
|
|
602
612
|
<span class="cline-any cline-neutral"> </span>
|
|
603
|
-
<span class="cline-any cline-yes">
|
|
613
|
+
<span class="cline-any cline-yes">200x</span>
|
|
604
614
|
<span class="cline-any cline-no"> </span>
|
|
605
615
|
<span class="cline-any cline-neutral"> </span>
|
|
606
616
|
<span class="cline-any cline-neutral"> </span>
|
|
607
|
-
<span class="cline-any cline-yes">
|
|
617
|
+
<span class="cline-any cline-yes">200x</span>
|
|
608
618
|
<span class="cline-any cline-yes">16x</span>
|
|
609
|
-
<span class="cline-any cline-yes">
|
|
619
|
+
<span class="cline-any cline-yes">184x</span>
|
|
610
620
|
<span class="cline-any cline-yes">22x</span>
|
|
611
621
|
<span class="cline-any cline-neutral"> </span>
|
|
612
622
|
<span class="cline-any cline-neutral"> </span>
|
|
613
|
-
<span class="cline-any cline-yes">
|
|
623
|
+
<span class="cline-any cline-yes">162x</span>
|
|
614
624
|
<span class="cline-any cline-neutral"> </span>
|
|
615
625
|
<span class="cline-any cline-neutral"> </span>
|
|
616
626
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -628,36 +638,36 @@
|
|
|
628
638
|
<span class="cline-any cline-neutral"> </span>
|
|
629
639
|
<span class="cline-any cline-neutral"> </span>
|
|
630
640
|
<span class="cline-any cline-neutral"> </span>
|
|
631
|
-
<span class="cline-any cline-yes">
|
|
641
|
+
<span class="cline-any cline-yes">86x</span>
|
|
632
642
|
<span class="cline-any cline-neutral"> </span>
|
|
633
|
-
<span class="cline-any cline-yes">
|
|
634
|
-
<span class="cline-any cline-yes">
|
|
635
|
-
<span class="cline-any cline-yes">
|
|
636
|
-
<span class="cline-any cline-yes">
|
|
643
|
+
<span class="cline-any cline-yes">86x</span>
|
|
644
|
+
<span class="cline-any cline-yes">86x</span>
|
|
645
|
+
<span class="cline-any cline-yes">86x</span>
|
|
646
|
+
<span class="cline-any cline-yes">397x</span>
|
|
637
647
|
<span class="cline-any cline-neutral"> </span>
|
|
638
|
-
<span class="cline-any cline-yes">
|
|
639
|
-
<span class="cline-any cline-yes">
|
|
648
|
+
<span class="cline-any cline-yes">397x</span>
|
|
649
|
+
<span class="cline-any cline-yes">198x</span>
|
|
640
650
|
<span class="cline-any cline-yes">13x</span>
|
|
641
651
|
<span class="cline-any cline-neutral"> </span>
|
|
642
|
-
<span class="cline-any cline-yes">
|
|
652
|
+
<span class="cline-any cline-yes">198x</span>
|
|
643
653
|
<span class="cline-any cline-neutral"> </span>
|
|
644
654
|
<span class="cline-any cline-neutral"> </span>
|
|
645
|
-
<span class="cline-any cline-yes">
|
|
655
|
+
<span class="cline-any cline-yes">199x</span>
|
|
646
656
|
<span class="cline-any cline-no"> </span>
|
|
647
657
|
<span class="cline-any cline-neutral"> </span>
|
|
648
658
|
<span class="cline-any cline-neutral"> </span>
|
|
649
659
|
<span class="cline-any cline-neutral"> </span>
|
|
650
|
-
<span class="cline-any cline-yes">
|
|
660
|
+
<span class="cline-any cline-yes">199x</span>
|
|
651
661
|
<span class="cline-any cline-neutral"> </span>
|
|
652
662
|
<span class="cline-any cline-neutral"> </span>
|
|
653
663
|
<span class="cline-any cline-neutral"> </span>
|
|
654
|
-
<span class="cline-any cline-yes">
|
|
655
|
-
<span class="cline-any cline-yes">
|
|
656
|
-
<span class="cline-any cline-yes">
|
|
664
|
+
<span class="cline-any cline-yes">86x</span>
|
|
665
|
+
<span class="cline-any cline-yes">80x</span>
|
|
666
|
+
<span class="cline-any cline-yes">80x</span>
|
|
657
667
|
<span class="cline-any cline-neutral"> </span>
|
|
658
668
|
<span class="cline-any cline-neutral"> </span>
|
|
659
669
|
<span class="cline-any cline-neutral"> </span>
|
|
660
|
-
<span class="cline-any cline-yes">
|
|
670
|
+
<span class="cline-any cline-yes">86x</span>
|
|
661
671
|
<span class="cline-any cline-neutral"> </span>
|
|
662
672
|
<span class="cline-any cline-neutral"> </span>
|
|
663
673
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -670,20 +680,20 @@
|
|
|
670
680
|
<span class="cline-any cline-neutral"> </span>
|
|
671
681
|
<span class="cline-any cline-neutral"> </span>
|
|
672
682
|
<span class="cline-any cline-yes">45x</span>
|
|
673
|
-
<span class="cline-any cline-yes">
|
|
674
|
-
<span class="cline-any cline-yes">
|
|
675
|
-
<span class="cline-any cline-yes">
|
|
676
|
-
<span class="cline-any cline-yes">
|
|
683
|
+
<span class="cline-any cline-yes">126x</span>
|
|
684
|
+
<span class="cline-any cline-yes">126x</span>
|
|
685
|
+
<span class="cline-any cline-yes">106x</span>
|
|
686
|
+
<span class="cline-any cline-yes">106x</span>
|
|
677
687
|
<span class="cline-any cline-neutral"> </span>
|
|
678
688
|
<span class="cline-any cline-neutral"> </span>
|
|
679
|
-
<span class="cline-any cline-yes">
|
|
689
|
+
<span class="cline-any cline-yes">126x</span>
|
|
680
690
|
<span class="cline-any cline-neutral"> </span>
|
|
681
691
|
<span class="cline-any cline-neutral"> </span>
|
|
682
|
-
<span class="cline-any cline-yes">
|
|
692
|
+
<span class="cline-any cline-yes">126x</span>
|
|
683
693
|
<span class="cline-any cline-neutral"> </span>
|
|
684
694
|
<span class="cline-any cline-neutral"> </span>
|
|
685
|
-
<span class="cline-any cline-yes">
|
|
686
|
-
<span class="cline-any cline-yes">
|
|
695
|
+
<span class="cline-any cline-yes">126x</span>
|
|
696
|
+
<span class="cline-any cline-yes">351x</span>
|
|
687
697
|
<span class="cline-any cline-yes">8x</span>
|
|
688
698
|
<span class="cline-any cline-yes">8x</span>
|
|
689
699
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -694,10 +704,10 @@
|
|
|
694
704
|
<span class="cline-any cline-neutral"> </span>
|
|
695
705
|
<span class="cline-any cline-neutral"> </span>
|
|
696
706
|
<span class="cline-any cline-neutral"> </span>
|
|
697
|
-
<span class="cline-any cline-yes">
|
|
707
|
+
<span class="cline-any cline-yes">126x</span>
|
|
698
708
|
<span class="cline-any cline-yes">40x</span>
|
|
699
709
|
<span class="cline-any cline-neutral"> </span>
|
|
700
|
-
<span class="cline-any cline-yes">
|
|
710
|
+
<span class="cline-any cline-yes">126x</span>
|
|
701
711
|
<span class="cline-any cline-neutral"> </span>
|
|
702
712
|
<span class="cline-any cline-neutral"> </span>
|
|
703
713
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -797,6 +807,11 @@ const TYPE_TRANSFORM_MAP = {
|
|
|
797
807
|
[null]: "",
|
|
798
808
|
[undefined]: undefined,
|
|
799
809
|
},
|
|
810
|
+
[FieldTypes.BARCODEQR]: {
|
|
811
|
+
"": "",
|
|
812
|
+
[null]: "",
|
|
813
|
+
[undefined]: undefined,
|
|
814
|
+
},
|
|
800
815
|
[FieldTypes.FORMULA]: {
|
|
801
816
|
"": "",
|
|
802
817
|
[null]: "",
|
|
@@ -1096,7 +1111,7 @@ exports.cleanupAttachments = async (table, { row, rows, oldRow, oldTable }) =>
|
|
|
1096
1111
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1097
1112
|
Code coverage generated by
|
|
1098
1113
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1099
|
-
at
|
|
1114
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
1100
1115
|
</div>
|
|
1101
1116
|
<script src="../../prettify.js"></script>
|
|
1102
1117
|
<script>
|
|
@@ -194,19 +194,19 @@
|
|
|
194
194
|
<span class="cline-any cline-neutral"> </span>
|
|
195
195
|
<span class="cline-any cline-neutral"> </span>
|
|
196
196
|
<span class="cline-any cline-neutral"> </span>
|
|
197
|
-
<span class="cline-any cline-yes">
|
|
198
|
-
<span class="cline-any cline-yes">
|
|
199
|
-
<span class="cline-any cline-yes">
|
|
200
|
-
<span class="cline-any cline-yes">
|
|
197
|
+
<span class="cline-any cline-yes">306x</span>
|
|
198
|
+
<span class="cline-any cline-yes">306x</span>
|
|
199
|
+
<span class="cline-any cline-yes">180x</span>
|
|
200
|
+
<span class="cline-any cline-yes">180x</span>
|
|
201
201
|
<span class="cline-any cline-neutral"> </span>
|
|
202
|
-
<span class="cline-any cline-yes">
|
|
203
|
-
<span class="cline-any cline-yes">
|
|
204
|
-
<span class="cline-any cline-yes">
|
|
202
|
+
<span class="cline-any cline-yes">306x</span>
|
|
203
|
+
<span class="cline-any cline-yes">857x</span>
|
|
204
|
+
<span class="cline-any cline-yes">857x</span>
|
|
205
205
|
<span class="cline-any cline-neutral"> </span>
|
|
206
206
|
<span class="cline-any cline-neutral"> </span>
|
|
207
207
|
<span class="cline-any cline-neutral"> </span>
|
|
208
208
|
<span class="cline-any cline-neutral"> </span>
|
|
209
|
-
<span class="cline-any cline-yes">
|
|
209
|
+
<span class="cline-any cline-yes">857x</span>
|
|
210
210
|
<span class="cline-any cline-neutral"> </span>
|
|
211
211
|
<span class="cline-any cline-neutral"> </span>
|
|
212
212
|
<span class="cline-any cline-no"> </span>
|
|
@@ -220,7 +220,7 @@
|
|
|
220
220
|
<span class="cline-any cline-neutral"> </span>
|
|
221
221
|
<span class="cline-any cline-neutral"> </span>
|
|
222
222
|
<span class="cline-any cline-neutral"> </span>
|
|
223
|
-
<span class="cline-any cline-yes">
|
|
223
|
+
<span class="cline-any cline-yes">306x</span>
|
|
224
224
|
<span class="cline-any cline-neutral"> </span>
|
|
225
225
|
<span class="cline-any cline-neutral"> </span>
|
|
226
226
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -346,7 +346,7 @@ exports.processDates = <span class="fstat-no" title="function not covered" >(t</
|
|
|
346
346
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
347
347
|
Code coverage generated by
|
|
348
348
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
349
|
-
at
|
|
349
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
350
350
|
</div>
|
|
351
351
|
<script src="../../prettify.js"></script>
|
|
352
352
|
<script>
|
|
@@ -142,7 +142,7 @@ module.exports = ScriptRunner
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at
|
|
145
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
<span class="cline-any cline-neutral"> </span>
|
|
155
155
|
<span class="cline-any cline-yes">44x</span>
|
|
156
156
|
<span class="cline-any cline-yes">4x</span>
|
|
157
|
-
<span class="cline-any cline-yes">
|
|
157
|
+
<span class="cline-any cline-yes">128x</span>
|
|
158
158
|
<span class="cline-any cline-neutral"> </span>
|
|
159
159
|
<span class="cline-any cline-yes">4x</span>
|
|
160
160
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -283,7 +283,7 @@ exports.CURRENTLY_SUPPORTED_LEVELS = CURRENTLY_SUPPORTED_LEVELS
|
|
|
283
283
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
284
284
|
Code coverage generated by
|
|
285
285
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
286
|
-
at
|
|
286
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
287
287
|
</div>
|
|
288
288
|
<script src="../prettify.js"></script>
|
|
289
289
|
<script>
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
92
92
|
Code coverage generated by
|
|
93
93
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
94
|
-
at
|
|
94
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
95
95
|
</div>
|
|
96
96
|
<script src="../prettify.js"></script>
|
|
97
97
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">83.72% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>36/43</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">75% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>9/12</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">83.72% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>36/43</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -80,17 +80,17 @@
|
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
82
|
<td class="file high" data-value="rows.js"><a href="rows.js.html">rows.js</a></td>
|
|
83
|
-
<td data-value="94.
|
|
83
|
+
<td data-value="94.73" class="pic high">
|
|
84
84
|
<div class="chart"><div class="cover-fill" style="width: 94%"></div><div class="cover-empty" style="width: 6%"></div></div>
|
|
85
85
|
</td>
|
|
86
|
-
<td data-value="94.
|
|
87
|
-
<td data-value="
|
|
88
|
-
<td data-value="
|
|
89
|
-
<td data-value="
|
|
86
|
+
<td data-value="94.73" class="pct high">94.73%</td>
|
|
87
|
+
<td data-value="38" class="abs high">36/38</td>
|
|
88
|
+
<td data-value="90" class="pct high">90%</td>
|
|
89
|
+
<td data-value="10" class="abs high">9/10</td>
|
|
90
90
|
<td data-value="100" class="pct high">100%</td>
|
|
91
91
|
<td data-value="6" class="abs high">6/6</td>
|
|
92
|
-
<td data-value="94.
|
|
93
|
-
<td data-value="
|
|
92
|
+
<td data-value="94.73" class="pct high">94.73%</td>
|
|
93
|
+
<td data-value="38" class="abs high">36/38</td>
|
|
94
94
|
</tr>
|
|
95
95
|
|
|
96
96
|
<tr>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at
|
|
119
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">94.
|
|
26
|
+
<span class="strong">94.73% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>36/38</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">90% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>9/10</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">94.
|
|
47
|
+
<span class="strong">94.73% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>36/38</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -143,7 +143,12 @@
|
|
|
143
143
|
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
144
|
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
145
|
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a
|
|
146
|
+
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
+
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
+
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
+
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
+
<a name='L85'></a><a href='#L85'>85</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
|
|
151
|
+
<span class="cline-any cline-neutral"> </span>
|
|
147
152
|
<span class="cline-any cline-neutral"> </span>
|
|
148
153
|
<span class="cline-any cline-neutral"> </span>
|
|
149
154
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -199,6 +204,7 @@
|
|
|
199
204
|
<span class="cline-any cline-yes">44x</span>
|
|
200
205
|
<span class="cline-any cline-yes">27x</span>
|
|
201
206
|
<span class="cline-any cline-yes">27x</span>
|
|
207
|
+
<span class="cline-any cline-yes">27x</span>
|
|
202
208
|
<span class="cline-any cline-neutral"> </span>
|
|
203
209
|
<span class="cline-any cline-yes">27x</span>
|
|
204
210
|
<span class="cline-any cline-yes">28x</span>
|
|
@@ -219,6 +225,8 @@
|
|
|
219
225
|
<span class="cline-any cline-neutral"> </span>
|
|
220
226
|
<span class="cline-any cline-neutral"> </span>
|
|
221
227
|
<span class="cline-any cline-yes">28x</span>
|
|
228
|
+
<span class="cline-any cline-yes">28x</span>
|
|
229
|
+
<span class="cline-any cline-yes">28x</span>
|
|
222
230
|
<span class="cline-any cline-neutral"> </span>
|
|
223
231
|
<span class="cline-any cline-neutral"> </span>
|
|
224
232
|
<span class="cline-any cline-yes">27x</span>
|
|
@@ -227,6 +235,7 @@
|
|
|
227
235
|
const {
|
|
228
236
|
isDevAppID,
|
|
229
237
|
getDevelopmentAppID,
|
|
238
|
+
getProdAppID,
|
|
230
239
|
doWithDB,
|
|
231
240
|
} = require("@budibase/backend-core/db")
|
|
232
241
|
|
|
@@ -277,7 +286,8 @@ const getAppRows = async appId => {
|
|
|
277
286
|
* Rows duplicates may exist across apps due to data import so they are not filtered out.
|
|
278
287
|
*/
|
|
279
288
|
exports.getUniqueRows = async appIds => {
|
|
280
|
-
let uniqueRows = []
|
|
289
|
+
let uniqueRows = [],
|
|
290
|
+
rowsByApp = {}
|
|
281
291
|
const pairs = getAppPairs(appIds)
|
|
282
292
|
|
|
283
293
|
for (let pair of Object.values(pairs)) {
|
|
@@ -298,10 +308,12 @@ exports.getUniqueRows = async appIds => {
|
|
|
298
308
|
// this can't be done on all rows because app import results in
|
|
299
309
|
// duplicate row ids across apps
|
|
300
310
|
// the array pre-concat is important to avoid stack overflow
|
|
301
|
-
|
|
311
|
+
const prodId = getProdAppID(pair.devId || pair.prodId)
|
|
312
|
+
rowsByApp[prodId] = [...new Set(appRows)]
|
|
313
|
+
uniqueRows = uniqueRows.concat(rowsByApp[prodId])
|
|
302
314
|
}
|
|
303
315
|
|
|
304
|
-
return uniqueRows
|
|
316
|
+
return { rows: uniqueRows, appRows: rowsByApp }
|
|
305
317
|
}
|
|
306
318
|
</pre></td></tr></table></pre>
|
|
307
319
|
|
|
@@ -310,7 +322,7 @@ exports.getUniqueRows = async appIds => {
|
|
|
310
322
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
311
323
|
Code coverage generated by
|
|
312
324
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
313
|
-
at
|
|
325
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
314
326
|
</div>
|
|
315
327
|
<script src="../../prettify.js"></script>
|
|
316
328
|
<script>
|
|
@@ -124,7 +124,7 @@ function <span class="fstat-no" title="function not covered" >resetQuotasIfRequi
|
|
|
124
124
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
125
125
|
Code coverage generated by
|
|
126
126
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
127
|
-
at
|
|
127
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
128
128
|
</div>
|
|
129
129
|
<script src="../../prettify.js"></script>
|
|
130
130
|
<script>
|
|
@@ -223,7 +223,7 @@ exports.publicApiUserFix = ctx => {
|
|
|
223
223
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
224
224
|
Code coverage generated by
|
|
225
225
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
226
|
-
at
|
|
226
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
227
227
|
</div>
|
|
228
228
|
<script src="../prettify.js"></script>
|
|
229
229
|
<script>
|
|
@@ -589,7 +589,7 @@ exports.generateApiKey = <span class="fstat-no" title="function not covered" >as
|
|
|
589
589
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
590
590
|
Code coverage generated by
|
|
591
591
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
592
|
-
at
|
|
592
|
+
at Tue Oct 25 2022 13:31:47 GMT+0000 (Coordinated Universal Time)
|
|
593
593
|
</div>
|
|
594
594
|
<script src="../prettify.js"></script>
|
|
595
595
|
<script>
|