@budibase/server 2.2.26 → 2.2.27-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/Dockerfile +1 -1
- package/__mocks__/aws-sdk.ts +20 -1
- package/__mocks__/node-fetch.ts +80 -0
- package/builder/assets/{bb-emblem.4e4717da.svg → bb-emblem.05f7ae7a.svg} +1 -1
- package/builder/assets/bg.29e85dd5.png +0 -0
- package/builder/assets/bulgaria.bd68393d.png +0 -0
- package/builder/assets/covanta.72c46c1e.png +0 -0
- package/builder/assets/index.3dd03883.css +6 -0
- package/builder/assets/index.77ae0e4d.js +1802 -0
- package/builder/assets/schnellecke.cf1837a8.png +0 -0
- package/builder/index.html +3 -3
- package/coverage/clover.xml +12565 -8055
- package/coverage/coverage-final.json +365 -276
- package/coverage/lcov-report/index.html +721 -466
- package/coverage/lcov-report/src/api/controllers/analytics.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/apikeys.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/application.ts.html +364 -268
- package/coverage/lcov-report/src/api/controllers/auth.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/automation.ts.html +61 -61
- package/coverage/lcov-report/src/api/controllers/backup.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/cloud.ts.html +89 -77
- package/coverage/lcov-report/src/api/controllers/component.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/datasource.ts.html +122 -98
- package/coverage/lcov-report/src/api/controllers/deploy/Deployment.ts.html +21 -18
- package/coverage/lcov-report/src/api/controllers/deploy/index.html +21 -21
- package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +142 -196
- package/coverage/lcov-report/src/api/controllers/dev.ts.html +33 -33
- package/coverage/lcov-report/src/api/controllers/index.html +125 -125
- package/coverage/lcov-report/src/api/controllers/integration.ts.html +5 -5
- package/coverage/lcov-report/src/api/controllers/layout.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/metadata.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/migrations.ts.html +6 -6
- package/coverage/lcov-report/src/api/controllers/permission.ts.html +35 -35
- package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +62 -62
- package/coverage/lcov-report/src/api/controllers/plugin/index.html +72 -72
- package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +150 -135
- package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +56 -56
- package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +18 -18
- package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +75 -24
- package/coverage/lcov-report/src/api/controllers/public/index.html +58 -58
- package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +7 -7
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +25 -25
- package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +4 -4
- package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +15 -15
- package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/public/users.ts.html +27 -27
- package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +14 -14
- package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +8 -8
- package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +12 -12
- package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +23 -23
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +16 -16
- package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/curl.spec.js.html +391 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/curl/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi2/openapi2.spec.js.html +796 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js.html +805 -0
- package/coverage/lcov-report/src/api/controllers/query/import/tests/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/query/import/tests/index.spec.js.html +568 -0
- package/coverage/lcov-report/src/api/controllers/query/index.html +20 -20
- package/coverage/lcov-report/src/api/controllers/query/index.ts.html +131 -107
- package/coverage/lcov-report/src/api/controllers/query/validation.ts.html +11 -11
- package/coverage/lcov-report/src/api/controllers/role.ts.html +9 -9
- package/coverage/lcov-report/src/api/controllers/routing.ts.html +10 -10
- package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +56 -41
- package/coverage/lcov-report/src/api/controllers/row/external.ts.html +87 -57
- package/coverage/lcov-report/src/api/controllers/row/index.html +66 -66
- package/coverage/lcov-report/src/api/controllers/row/index.ts.html +26 -26
- package/coverage/lcov-report/src/api/controllers/row/internal.ts.html +171 -96
- package/coverage/lcov-report/src/api/controllers/row/internalSearch.ts.html +146 -146
- package/coverage/lcov-report/src/api/controllers/row/staticFormula.ts.html +30 -21
- package/coverage/lcov-report/src/api/controllers/row/utils.ts.html +143 -26
- package/coverage/lcov-report/src/api/controllers/screen.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/script.ts.html +19 -19
- package/coverage/lcov-report/src/api/controllers/static/index.html +18 -18
- package/coverage/lcov-report/src/api/controllers/static/index.ts.html +56 -71
- package/coverage/lcov-report/src/api/controllers/table/bulkFormula.ts.html +61 -61
- package/coverage/lcov-report/src/api/controllers/table/external.ts.html +56 -50
- package/coverage/lcov-report/src/api/controllers/table/index.html +51 -51
- package/coverage/lcov-report/src/api/controllers/table/index.ts.html +157 -70
- package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +68 -71
- package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +109 -112
- package/coverage/lcov-report/src/api/controllers/templates.ts.html +21 -21
- package/coverage/lcov-report/src/api/controllers/user.ts.html +161 -137
- package/coverage/lcov-report/src/api/controllers/view/exporters.ts.html +64 -19
- package/coverage/lcov-report/src/api/controllers/view/index.html +38 -38
- package/coverage/lcov-report/src/api/controllers/view/index.ts.html +97 -133
- package/coverage/lcov-report/src/api/controllers/view/tests/index.html +116 -0
- package/coverage/lcov-report/src/api/controllers/view/tests/viewBuilder.spec.js.html +277 -0
- package/coverage/lcov-report/src/api/controllers/view/utils.ts.html +31 -31
- package/coverage/lcov-report/src/api/controllers/view/viewBuilder.ts.html +37 -37
- package/coverage/lcov-report/src/api/controllers/webhook.ts.html +78 -72
- package/coverage/lcov-report/src/api/index.html +15 -15
- package/coverage/lcov-report/src/api/index.ts.html +40 -40
- package/coverage/lcov-report/src/api/routes/analytics.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/apikeys.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/application.ts.html +46 -13
- package/coverage/lcov-report/src/api/routes/auth.ts.html +9 -9
- package/coverage/lcov-report/src/api/routes/automation.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/backup.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/cloud.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/component.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/datasource.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/deploy.ts.html +11 -14
- package/coverage/lcov-report/src/api/routes/dev.ts.html +17 -17
- package/coverage/lcov-report/src/api/routes/index.html +68 -68
- package/coverage/lcov-report/src/api/routes/index.ts.html +49 -40
- package/coverage/lcov-report/src/api/routes/integration.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/layout.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/metadata.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/migrations.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/permission.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/plugin.ts.html +10 -10
- package/coverage/lcov-report/src/api/routes/public/applications.ts.html +147 -15
- package/coverage/lcov-report/src/api/routes/public/index.html +27 -27
- package/coverage/lcov-report/src/api/routes/public/index.ts.html +60 -60
- package/coverage/lcov-report/src/api/routes/public/middleware/index.html +15 -15
- package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +28 -16
- package/coverage/lcov-report/src/api/routes/public/queries.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/public/rows.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tables.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/tests/compare.spec.js.html +583 -0
- package/coverage/lcov-report/src/api/routes/public/tests/index.html +41 -11
- package/coverage/lcov-report/src/api/routes/public/tests/users.spec.js.html +199 -0
- package/coverage/lcov-report/src/api/routes/public/tests/utils.ts.html +5 -5
- package/coverage/lcov-report/src/api/routes/public/users.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +21 -21
- package/coverage/lcov-report/src/api/routes/public/utils/index.html +5 -5
- package/coverage/lcov-report/src/api/routes/query.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/role.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/routing.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/row.ts.html +14 -14
- package/coverage/lcov-report/src/api/routes/screen.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/script.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/static.ts.html +18 -18
- package/coverage/lcov-report/src/api/routes/table.ts.html +29 -98
- package/coverage/lcov-report/src/api/routes/templates.ts.html +11 -11
- package/coverage/lcov-report/src/api/routes/tests/analytics.spec.js.html +271 -0
- package/coverage/lcov-report/src/api/routes/tests/apikeys.spec.js.html +259 -0
- package/coverage/lcov-report/src/api/routes/tests/application.spec.ts.html +1066 -0
- package/coverage/lcov-report/src/api/routes/tests/auth.spec.js.html +154 -0
- package/coverage/lcov-report/src/api/routes/tests/automation.spec.js.html +1123 -0
- package/coverage/lcov-report/src/api/routes/tests/backup.spec.ts.html +223 -0
- package/coverage/lcov-report/src/api/routes/tests/cloud.seq.spec.ts.html +262 -0
- package/coverage/lcov-report/src/api/routes/tests/component.spec.js.html +178 -0
- package/coverage/lcov-report/src/api/routes/tests/datasource.spec.ts.html +799 -0
- package/coverage/lcov-report/src/api/routes/tests/dev.spec.js.html +202 -0
- package/coverage/lcov-report/src/api/routes/tests/index.html +521 -0
- package/coverage/lcov-report/src/api/routes/tests/integration.spec.js.html +238 -0
- package/coverage/lcov-report/src/api/routes/tests/internalSearch.spec.js.html +670 -0
- package/coverage/lcov-report/src/api/routes/tests/layout.spec.js.html +259 -0
- package/coverage/lcov-report/src/api/routes/tests/metadata.spec.js.html +280 -0
- package/coverage/lcov-report/src/api/routes/tests/misc.spec.js.html +358 -0
- package/coverage/lcov-report/src/api/routes/tests/permissions.spec.js.html +484 -0
- package/coverage/lcov-report/src/api/routes/tests/plugin.spec.ts.html +622 -0
- package/coverage/lcov-report/src/api/routes/tests/query.seq.spec.js.html +1696 -0
- package/coverage/lcov-report/src/api/routes/tests/role.spec.js.html +478 -0
- package/coverage/lcov-report/src/api/routes/tests/routing.spec.js.html +430 -0
- package/coverage/lcov-report/src/api/routes/tests/row.spec.js.html +1804 -0
- package/coverage/lcov-report/src/api/routes/tests/screen.spec.js.html +391 -0
- package/coverage/lcov-report/src/api/routes/tests/static.spec.js.html +541 -0
- package/coverage/lcov-report/src/api/routes/tests/table.spec.js.html +991 -0
- package/coverage/lcov-report/src/api/routes/tests/templates.spec.js.html +154 -0
- package/coverage/lcov-report/src/api/routes/tests/user.spec.js.html +688 -0
- package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +116 -47
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +27 -27
- package/coverage/lcov-report/src/api/routes/tests/utilities/index.ts.html +42 -36
- package/coverage/lcov-report/src/api/routes/tests/view.spec.js.html +1342 -0
- package/coverage/lcov-report/src/api/routes/tests/webhook.spec.js.html +484 -0
- package/coverage/lcov-report/src/api/routes/user.ts.html +12 -12
- package/coverage/lcov-report/src/api/routes/utils/index.html +3 -3
- package/coverage/lcov-report/src/api/routes/utils/validators.ts.html +44 -44
- package/coverage/lcov-report/src/api/routes/view.ts.html +13 -13
- package/coverage/lcov-report/src/api/routes/webhook.ts.html +13 -13
- package/coverage/lcov-report/src/app.ts.html +57 -48
- package/coverage/lcov-report/src/automations/actions.ts.html +31 -31
- package/coverage/lcov-report/src/automations/automationUtils.ts.html +127 -55
- package/coverage/lcov-report/src/automations/bullboard.ts.html +19 -19
- package/coverage/lcov-report/src/automations/index.html +58 -58
- package/coverage/lcov-report/src/automations/index.ts.html +23 -23
- package/coverage/lcov-report/src/automations/logging/index.html +3 -3
- package/coverage/lcov-report/src/automations/logging/index.ts.html +15 -15
- package/coverage/lcov-report/src/automations/steps/bash.ts.html +34 -34
- package/coverage/lcov-report/src/automations/steps/createRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/delay.ts.html +7 -7
- package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +9 -9
- package/coverage/lcov-report/src/automations/steps/discord.ts.html +33 -33
- package/coverage/lcov-report/src/automations/steps/executeQuery.ts.html +35 -35
- package/coverage/lcov-report/src/automations/steps/executeScript.ts.html +31 -31
- package/coverage/lcov-report/src/automations/steps/filter.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/index.html +129 -129
- package/coverage/lcov-report/src/automations/steps/integromat.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/loop.ts.html +5 -5
- package/coverage/lcov-report/src/automations/steps/outgoingWebhook.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/queryRows.ts.html +43 -43
- package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.ts.html +28 -28
- package/coverage/lcov-report/src/automations/steps/serverLog.ts.html +19 -19
- package/coverage/lcov-report/src/automations/steps/slack.ts.html +10 -10
- package/coverage/lcov-report/src/automations/steps/updateRow.ts.html +12 -12
- package/coverage/lcov-report/src/automations/steps/utils.ts.html +18 -18
- package/coverage/lcov-report/src/automations/steps/zapier.ts.html +22 -22
- package/coverage/lcov-report/src/automations/tests/automation.spec.js.html +337 -0
- package/coverage/lcov-report/src/automations/tests/bash.spec.js.html +187 -0
- package/coverage/lcov-report/src/automations/tests/createRow.spec.ts.html +223 -0
- package/coverage/lcov-report/src/automations/tests/delay.spec.js.html +133 -0
- package/coverage/lcov-report/src/automations/tests/deleteRow.spec.ts.html +250 -0
- package/coverage/lcov-report/src/automations/tests/discord.spec.js.html +166 -0
- package/coverage/lcov-report/src/automations/tests/executeQuery.spec.js.html +229 -0
- package/coverage/lcov-report/src/automations/tests/executeScript.spec.js.html +229 -0
- package/coverage/lcov-report/src/automations/tests/filter.spec.js.html +232 -0
- package/coverage/lcov-report/src/automations/tests/index.html +341 -0
- package/coverage/lcov-report/src/automations/tests/loop.spec.ts.html +220 -0
- package/coverage/lcov-report/src/automations/tests/outgoingWebhook.spec.js.html +202 -0
- package/coverage/lcov-report/src/automations/tests/queryRows.spec.js.html +436 -0
- package/coverage/lcov-report/src/automations/tests/sendSmtpEmail.spec.js.html +298 -0
- package/coverage/lcov-report/src/automations/tests/serverLog.spec.js.html +151 -0
- package/coverage/lcov-report/src/automations/tests/updateRow.spec.js.html +217 -0
- package/coverage/lcov-report/src/automations/tests/utilities/index.html +15 -15
- package/coverage/lcov-report/src/automations/tests/utilities/index.ts.html +32 -32
- package/coverage/lcov-report/src/automations/tests/zapier.spec.js.html +166 -0
- package/coverage/lcov-report/src/automations/triggerInfo/app.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/cron.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/index.html +17 -17
- package/coverage/lcov-report/src/automations/triggerInfo/index.ts.html +10 -10
- package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggerInfo/webhook.ts.html +6 -6
- package/coverage/lcov-report/src/automations/triggers.ts.html +61 -46
- package/coverage/lcov-report/src/automations/unitTests/automationUtils.spec.ts.html +280 -0
- package/coverage/lcov-report/src/automations/unitTests/index.html +116 -0
- package/coverage/lcov-report/src/automations/utils.ts.html +84 -84
- package/coverage/lcov-report/src/constants/index.html +19 -19
- package/coverage/lcov-report/src/constants/index.ts.html +103 -103
- package/coverage/lcov-report/src/constants/layouts.ts.html +9 -9
- package/coverage/lcov-report/src/constants/screens.ts.html +5 -5
- package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.ts.html +45 -45
- package/coverage/lcov-report/src/db/defaultData/employeeImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/expensesImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/index.html +43 -43
- package/coverage/lcov-report/src/db/defaultData/inventoryImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/defaultData/jobsImport.ts.html +8 -8
- package/coverage/lcov-report/src/db/dynamoClient.ts.html +26 -26
- package/coverage/lcov-report/src/db/inMemoryView.ts.html +13 -13
- package/coverage/lcov-report/src/db/index.html +43 -43
- package/coverage/lcov-report/src/db/index.ts.html +20 -20
- package/coverage/lcov-report/src/db/linkedRows/LinkController.ts.html +38 -38
- package/coverage/lcov-report/src/db/linkedRows/LinkDocument.ts.html +7 -7
- package/coverage/lcov-report/src/db/linkedRows/index.html +37 -37
- package/coverage/lcov-report/src/db/linkedRows/index.ts.html +40 -40
- package/coverage/lcov-report/src/db/linkedRows/linkUtils.ts.html +27 -27
- package/coverage/lcov-report/src/db/newid.ts.html +5 -5
- package/coverage/lcov-report/src/db/tests/index.html +131 -0
- package/coverage/lcov-report/src/db/tests/linkController.spec.js.html +793 -0
- package/coverage/lcov-report/src/db/tests/linkTests.spec.js.html +277 -0
- package/coverage/lcov-report/src/db/utils.ts.html +92 -92
- package/coverage/lcov-report/src/definitions/automations.ts.html +9 -6
- package/coverage/lcov-report/src/definitions/index.html +5 -20
- package/coverage/lcov-report/src/environment.ts.html +49 -37
- package/coverage/lcov-report/src/events/AutomationEmitter.ts.html +14 -14
- package/coverage/lcov-report/src/events/BudibaseEmitter.ts.html +8 -8
- package/coverage/lcov-report/src/events/index.html +20 -20
- package/coverage/lcov-report/src/events/index.ts.html +7 -7
- package/coverage/lcov-report/src/events/utils.ts.html +11 -11
- package/coverage/lcov-report/src/index.html +48 -48
- package/coverage/lcov-report/src/index.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/airtable.ts.html +10 -10
- package/coverage/lcov-report/src/integrations/arangodb.ts.html +9 -9
- package/coverage/lcov-report/src/integrations/base/index.html +29 -29
- package/coverage/lcov-report/src/integrations/base/query.ts.html +15 -9
- package/coverage/lcov-report/src/integrations/base/sql.ts.html +38 -38
- package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +23 -23
- package/coverage/lcov-report/src/integrations/base/utils.ts.html +5 -5
- package/coverage/lcov-report/src/integrations/couchdb.ts.html +109 -31
- package/coverage/lcov-report/src/integrations/dynamodb.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +27 -15
- package/coverage/lcov-report/src/integrations/firebase.ts.html +12 -12
- package/coverage/lcov-report/src/integrations/googlesheets.ts.html +42 -42
- package/coverage/lcov-report/src/integrations/index.html +130 -130
- package/coverage/lcov-report/src/integrations/index.ts.html +50 -62
- package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/mongodb.ts.html +421 -289
- package/coverage/lcov-report/src/integrations/mysql.ts.html +28 -28
- package/coverage/lcov-report/src/integrations/oracle.ts.html +31 -31
- package/coverage/lcov-report/src/integrations/postgres.ts.html +54 -54
- package/coverage/lcov-report/src/integrations/queries/index.html +19 -19
- package/coverage/lcov-report/src/integrations/queries/sql.ts.html +24 -159
- package/coverage/lcov-report/src/integrations/redis.ts.html +8 -8
- package/coverage/lcov-report/src/integrations/rest.ts.html +43 -52
- package/coverage/lcov-report/src/integrations/s3.ts.html +17 -17
- package/coverage/lcov-report/src/integrations/snowflake.ts.html +15 -15
- package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/src/integrations/tests/airtable.spec.ts.html +310 -0
- package/coverage/lcov-report/src/integrations/tests/arangodb.spec.ts.html +199 -0
- package/coverage/lcov-report/src/integrations/tests/couchdb.spec.ts.html +349 -0
- package/coverage/lcov-report/src/integrations/tests/dynamodb.spec.ts.html +550 -0
- package/coverage/lcov-report/src/integrations/tests/elasticsearch.spec.ts.html +331 -0
- package/coverage/lcov-report/src/integrations/tests/firebase.spec.ts.html +376 -0
- package/coverage/lcov-report/src/integrations/tests/index.html +230 -5
- package/coverage/lcov-report/src/integrations/tests/microsoftSqlServer.spec.ts.html +253 -0
- package/coverage/lcov-report/src/integrations/tests/mongo.spec.ts.html +1087 -0
- package/coverage/lcov-report/src/integrations/tests/mysql.spec.ts.html +484 -0
- package/coverage/lcov-report/src/integrations/tests/oracle.spec.ts.html +373 -0
- package/coverage/lcov-report/src/integrations/tests/postgres.spec.ts.html +328 -0
- package/coverage/lcov-report/src/integrations/tests/redis.spec.ts.html +337 -0
- package/coverage/lcov-report/src/integrations/tests/rest.spec.ts.html +1870 -0
- package/coverage/lcov-report/src/integrations/tests/s3.spec.ts.html +421 -0
- package/coverage/lcov-report/src/integrations/tests/sql.spec.ts.html +1753 -0
- package/coverage/lcov-report/src/integrations/utils.ts.html +54 -54
- package/coverage/lcov-report/src/middleware/appInfo.ts.html +11 -11
- package/coverage/lcov-report/src/middleware/authorized.ts.html +49 -37
- package/coverage/lcov-report/src/middleware/builder.ts.html +26 -26
- package/coverage/lcov-report/src/middleware/currentapp.ts.html +60 -57
- package/coverage/lcov-report/src/middleware/index.html +44 -44
- package/coverage/lcov-report/src/middleware/joi-validator.ts.html +10 -10
- package/coverage/lcov-report/src/middleware/publicApi.ts.html +9 -9
- package/coverage/lcov-report/src/middleware/resourceId.ts.html +23 -23
- package/coverage/lcov-report/src/middleware/selfhost.ts.html +2 -2
- package/coverage/lcov-report/src/middleware/tests/authorized.spec.js.html +574 -0
- package/coverage/lcov-report/src/middleware/tests/currentapp.spec.js.html +814 -0
- package/coverage/lcov-report/src/middleware/tests/index.html +161 -0
- package/coverage/lcov-report/src/middleware/tests/resourceId.spec.js.html +397 -0
- package/coverage/lcov-report/src/middleware/tests/selfhost.spec.js.html +214 -0
- package/coverage/lcov-report/src/middleware/utils.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +31 -31
- package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +21 -21
- package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +17 -14
- package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +19 -19
- package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +9 -9
- package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +13 -13
- package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +23 -23
- package/coverage/lcov-report/src/migrations/functions/backfill/index.html +26 -26
- package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +14 -14
- package/coverage/lcov-report/src/migrations/functions/index.html +18 -18
- package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/tableSettings.ts.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/tests/appUrls.spec.js.html +163 -0
- package/coverage/lcov-report/src/migrations/functions/tests/index.html +161 -0
- package/coverage/lcov-report/src/migrations/functions/tests/syncQuotas.spec.js.html +163 -0
- package/coverage/lcov-report/src/migrations/functions/tests/tableSettings.spec.ts.html +517 -0
- package/coverage/lcov-report/src/migrations/functions/tests/userEmailViewCasing.spec.js.html +190 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +11 -11
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +3 -3
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +6 -6
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +8 -8
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +7 -7
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/index.html +131 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncApps.spec.ts.html +190 -0
- package/coverage/lcov-report/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts.html +244 -0
- package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/index.html +15 -15
- package/coverage/lcov-report/src/migrations/index.ts.html +43 -43
- package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +4 -4
- package/coverage/lcov-report/src/migrations/tests/index.html +26 -11
- package/coverage/lcov-report/src/migrations/tests/index.spec.ts.html +535 -0
- package/coverage/lcov-report/src/migrations/tests/structures.ts.html +3 -3
- package/coverage/lcov-report/src/sdk/app/applications/index.html +20 -20
- package/coverage/lcov-report/src/sdk/app/applications/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/applications/sync.ts.html +34 -34
- package/coverage/lcov-report/src/sdk/app/applications/utils.ts.html +15 -15
- package/coverage/lcov-report/src/sdk/app/automations/index.html +7 -7
- package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +14 -14
- package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +30 -30
- package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +45 -57
- package/coverage/lcov-report/src/sdk/app/backups/index.html +42 -42
- package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +7 -7
- package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +73 -73
- package/coverage/lcov-report/src/sdk/app/datasources/datasources.ts.html +493 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.html +131 -0
- package/coverage/lcov-report/src/sdk/app/datasources/index.ts.html +100 -0
- package/coverage/lcov-report/src/sdk/app/queries/index.html +131 -0
- package/coverage/lcov-report/src/{utilities/statusCodes.ts.html → sdk/app/queries/index.ts.html} +22 -28
- package/coverage/lcov-report/src/{definitions/datasource.ts.html → sdk/app/queries/queries.ts.html} +82 -82
- package/coverage/lcov-report/src/sdk/app/rows/attachments.ts.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.html +8 -8
- package/coverage/lcov-report/src/sdk/app/rows/index.ts.html +6 -6
- package/coverage/lcov-report/src/sdk/app/rows/rows.ts.html +4 -4
- package/coverage/lcov-report/src/sdk/app/tables/index.html +15 -15
- package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +30 -21
- package/coverage/lcov-report/src/sdk/index.html +7 -7
- package/coverage/lcov-report/src/sdk/index.ts.html +24 -12
- package/coverage/lcov-report/src/sdk/tests/attachments.spec.ts.html +313 -0
- package/coverage/lcov-report/src/sdk/tests/index.html +116 -0
- package/coverage/lcov-report/src/sdk/users/index.html +10 -10
- package/coverage/lcov-report/src/sdk/users/index.ts.html +5 -5
- package/coverage/lcov-report/src/sdk/users/utils.ts.html +35 -35
- package/coverage/lcov-report/src/sdk/utils/index.html +116 -0
- package/coverage/lcov-report/src/sdk/utils/index.ts.html +133 -0
- package/coverage/lcov-report/src/startup.ts.html +48 -63
- package/coverage/lcov-report/src/tests/utilities/TestConfiguration.ts.html +421 -187
- package/coverage/lcov-report/src/tests/utilities/controllers.ts.html +20 -20
- package/coverage/lcov-report/src/tests/utilities/index.html +35 -35
- package/coverage/lcov-report/src/tests/utilities/index.ts.html +2 -2
- package/coverage/lcov-report/src/tests/utilities/structures.ts.html +236 -47
- package/coverage/lcov-report/src/threads/automation.ts.html +212 -251
- package/coverage/lcov-report/src/threads/index.html +46 -46
- package/coverage/lcov-report/src/threads/index.ts.html +39 -39
- package/coverage/lcov-report/src/threads/query.ts.html +140 -101
- package/coverage/lcov-report/src/threads/utils.ts.html +29 -29
- package/coverage/lcov-report/src/utilities/budibaseDir.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/centralPath.ts.html +11 -11
- package/coverage/lcov-report/src/utilities/fileSystem/app.ts.html +343 -0
- package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.ts.html +20 -20
- package/coverage/lcov-report/src/utilities/fileSystem/filesystem.ts.html +601 -0
- package/coverage/lcov-report/src/utilities/fileSystem/index.html +88 -28
- package/coverage/lcov-report/src/utilities/fileSystem/index.ts.html +20 -1049
- package/coverage/lcov-report/src/utilities/fileSystem/plugin.ts.html +277 -0
- package/coverage/lcov-report/src/utilities/fileSystem/processor.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/fileSystem/template.ts.html +193 -0
- package/coverage/lcov-report/src/utilities/global.ts.html +60 -60
- package/coverage/lcov-report/src/utilities/index.html +102 -117
- package/coverage/lcov-report/src/utilities/index.ts.html +47 -179
- package/coverage/lcov-report/src/utilities/redis.ts.html +38 -38
- package/coverage/lcov-report/src/utilities/{plugins.ts.html → retry.ts.html} +31 -43
- package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/src/utilities/routing/index.ts.html +5 -5
- package/coverage/lcov-report/src/utilities/rowProcessor/index.html +34 -34
- package/coverage/lcov-report/src/utilities/rowProcessor/index.ts.html +72 -45
- package/coverage/lcov-report/src/utilities/rowProcessor/map.ts.html +9 -9
- package/coverage/lcov-report/src/utilities/rowProcessor/tests/index.html +116 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/tests/utils.spec.ts.html +256 -0
- package/coverage/lcov-report/src/utilities/rowProcessor/utils.ts.html +52 -52
- package/coverage/lcov-report/src/utilities/{csvParser.ts.html → schema.ts.html} +174 -234
- package/coverage/lcov-report/src/utilities/scriptRunner.ts.html +33 -33
- package/coverage/lcov-report/src/utilities/security.ts.html +30 -30
- package/coverage/lcov-report/src/utilities/usageQuota/index.html +9 -9
- package/coverage/lcov-report/src/utilities/usageQuota/rows.ts.html +37 -37
- package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.ts.html +3 -3
- package/coverage/lcov-report/src/utilities/users.ts.html +7 -7
- package/coverage/lcov-report/src/utilities/workerRequests.ts.html +92 -65
- package/coverage/lcov-report/src/watch.ts.html +20 -20
- package/coverage/lcov-report/src/websocket.ts.html +15 -15
- package/coverage/lcov.info +24966 -17056
- package/dist/api/controllers/application.js +120 -109
- package/dist/api/controllers/cloud.js +6 -2
- package/dist/api/controllers/datasource.js +24 -15
- package/dist/api/controllers/deploy/index.js +43 -60
- package/dist/api/controllers/plugin/index.js +6 -6
- package/dist/api/controllers/public/applications.js +22 -1
- package/dist/api/controllers/query/index.js +23 -13
- package/dist/api/controllers/row/ExternalRequest.js +12 -4
- package/dist/api/controllers/row/external.js +20 -13
- package/dist/api/controllers/row/internal.js +52 -27
- package/dist/api/controllers/row/staticFormula.js +1 -1
- package/dist/api/controllers/row/utils.js +35 -3
- package/dist/api/controllers/static/index.js +47 -47
- package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/dist/api/controllers/table/external.js +16 -35
- package/dist/api/controllers/table/index.js +44 -15
- package/dist/api/controllers/table/internal.js +6 -7
- package/dist/api/controllers/table/utils.js +9 -9
- package/dist/api/controllers/user.js +14 -6
- package/dist/api/controllers/view/exporters.js +22 -6
- package/dist/api/controllers/view/index.js +23 -58
- package/dist/api/controllers/view/viewBuilder.js +15 -2
- package/dist/api/controllers/webhook.js +45 -43
- package/dist/api/routes/analytics.js +2 -1
- package/dist/api/routes/apikeys.js +2 -1
- package/dist/api/routes/application.js +5 -1
- package/dist/api/routes/auth.js +2 -1
- package/dist/api/routes/automation.js +2 -1
- package/dist/api/routes/backup.js +2 -1
- package/dist/api/routes/cloud.js +2 -1
- package/dist/api/routes/component.js +2 -1
- package/dist/api/routes/datasource.js +2 -1
- package/dist/api/routes/deploy.js +3 -3
- package/dist/api/routes/dev.js +2 -1
- package/dist/api/routes/index.js +2 -0
- package/dist/api/routes/integration.js +2 -1
- package/dist/api/routes/layout.js +2 -1
- package/dist/api/routes/metadata.js +2 -1
- package/dist/api/routes/migrations.js +2 -1
- package/dist/api/routes/permission.js +2 -1
- package/dist/api/routes/public/applications.js +37 -0
- package/dist/api/routes/public/middleware/mapper.js +3 -0
- package/dist/api/routes/query.js +2 -1
- package/dist/api/routes/role.js +2 -1
- package/dist/api/routes/routing.js +2 -1
- package/dist/api/routes/row.js +2 -2
- package/dist/api/routes/screen.js +2 -1
- package/dist/api/routes/script.js +2 -1
- package/dist/api/routes/static.js +6 -5
- package/dist/api/routes/table.js +8 -38
- package/dist/api/routes/templates.js +2 -1
- package/dist/api/routes/user.js +2 -1
- package/dist/api/routes/utils/validators.js +1 -1
- package/dist/api/routes/view.js +2 -1
- package/dist/api/routes/webhook.js +2 -1
- package/dist/app.js +10 -8
- package/dist/automations/automationUtils.js +26 -1
- package/dist/automations/logging/index.js +5 -25
- package/dist/automations/triggers.js +1 -0
- package/dist/db/index.js +5 -2
- package/dist/db/linkedRows/LinkController.js +2 -1
- package/dist/db/linkedRows/LinkDocument.js +2 -1
- package/dist/db/newid.js +4 -2
- package/dist/definitions/datasource.js +0 -6
- package/dist/environment.js +7 -2
- package/dist/events/AutomationEmitter.js +2 -1
- package/dist/events/BudibaseEmitter.js +2 -1
- package/dist/events/index.js +2 -1
- package/dist/index.js +2 -2
- package/dist/integrations/base/query.js +7 -2
- package/dist/integrations/base/sqlTable.js +14 -14
- package/dist/integrations/couchdb.js +34 -8
- package/dist/integrations/dynamodb.js +8 -5
- package/dist/integrations/elasticsearch.js +7 -3
- package/dist/integrations/googlesheets.js +1 -1
- package/dist/integrations/index.js +6 -7
- package/dist/integrations/mongodb.js +311 -271
- package/dist/integrations/mysql.js +2 -2
- package/dist/integrations/queries/sql.js +73 -100
- package/dist/integrations/rest.js +16 -18
- package/dist/middleware/authorized.js +2 -1
- package/dist/middleware/builder.js +4 -2
- package/dist/middleware/currentapp.js +6 -3
- package/dist/middleware/publicApi.js +4 -2
- package/dist/middleware/selfhost.js +4 -1
- package/dist/migrations/functions/backfill/global/configs.js +4 -4
- package/dist/package.json +14 -8
- package/dist/sdk/app/backups/imports.js +2 -6
- package/dist/sdk/app/datasources/datasources.js +147 -0
- package/dist/sdk/app/datasources/index.js +27 -0
- package/dist/sdk/app/queries/index.js +27 -0
- package/dist/sdk/app/queries/queries.js +60 -0
- package/dist/sdk/app/tables/index.js +6 -2
- package/dist/sdk/index.js +4 -0
- package/dist/sdk/utils/index.js +29 -0
- package/dist/startup.js +17 -17
- package/dist/threads/automation.js +22 -35
- package/dist/threads/index.js +4 -4
- package/dist/threads/query.js +27 -13
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/app.js +97 -0
- package/dist/utilities/fileSystem/clientLibrary.js +3 -3
- package/dist/utilities/fileSystem/filesystem.js +184 -0
- package/dist/utilities/fileSystem/index.js +18 -342
- package/dist/utilities/fileSystem/plugin.js +66 -0
- package/dist/utilities/fileSystem/template.js +47 -0
- package/dist/utilities/index.js +1 -44
- package/dist/utilities/retry.js +30 -0
- package/dist/utilities/rowProcessor/index.js +12 -4
- package/dist/utilities/schema.js +108 -0
- package/dist/utilities/scriptRunner.js +2 -1
- package/dist/utilities/statusCodes.js +2 -1
- package/dist/utilities/workerRequests.js +2 -0
- package/dist/watch.js +2 -25
- package/jest-testcontainers-config.js +8 -0
- package/jest.config.ts +33 -13
- package/package.json +15 -9
- package/scripts/dev/manage.js +3 -2
- package/specs/openapi.json +84 -0
- package/specs/openapi.yaml +53 -0
- package/specs/resources/application.js +19 -0
- package/src/api/controllers/application.ts +142 -110
- package/src/api/controllers/auth.ts +2 -2
- package/src/api/controllers/cloud.ts +10 -6
- package/src/api/controllers/datasource.ts +33 -25
- package/src/api/controllers/deploy/Deployment.ts +1 -0
- package/src/api/controllers/deploy/index.ts +40 -58
- package/src/api/controllers/plugin/index.ts +14 -9
- package/src/api/controllers/public/applications.ts +17 -0
- package/src/api/controllers/query/import/tests/index.spec.js +1 -1
- package/src/api/controllers/query/index.ts +49 -41
- package/src/api/controllers/row/ExternalRequest.ts +8 -3
- package/src/api/controllers/row/external.ts +24 -14
- package/src/api/controllers/row/internal.ts +66 -41
- package/src/api/controllers/row/staticFormula.ts +5 -2
- package/src/api/controllers/row/utils.ts +42 -3
- package/src/api/controllers/static/index.ts +22 -27
- package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -1
- package/src/api/controllers/table/external.ts +18 -16
- package/src/api/controllers/table/index.ts +46 -17
- package/src/api/controllers/table/internal.ts +6 -7
- package/src/api/controllers/table/utils.ts +12 -13
- package/src/api/controllers/user.ts +21 -13
- package/src/api/controllers/view/exporters.ts +20 -5
- package/src/api/controllers/view/index.ts +30 -42
- package/src/api/controllers/view/tests/viewBuilder.spec.js +1 -1
- package/src/api/controllers/view/viewBuilder.ts +1 -1
- package/src/api/controllers/webhook.ts +48 -46
- package/src/api/routes/analytics.ts +1 -1
- package/src/api/routes/apikeys.ts +1 -1
- package/src/api/routes/application.ts +12 -1
- package/src/api/routes/auth.ts +1 -1
- package/src/api/routes/automation.ts +1 -1
- package/src/api/routes/backup.ts +1 -1
- package/src/api/routes/cloud.ts +1 -1
- package/src/api/routes/component.ts +1 -1
- package/src/api/routes/datasource.ts +1 -1
- package/src/api/routes/deploy.ts +1 -2
- package/src/api/routes/dev.ts +1 -1
- package/src/api/routes/index.ts +6 -3
- package/src/api/routes/integration.ts +1 -1
- package/src/api/routes/layout.ts +1 -1
- package/src/api/routes/metadata.ts +1 -1
- package/src/api/routes/migrations.ts +1 -1
- package/src/api/routes/permission.ts +1 -1
- package/src/api/routes/public/applications.ts +44 -0
- package/src/api/routes/public/middleware/mapper.ts +4 -0
- package/src/api/routes/query.ts +1 -1
- package/src/api/routes/role.ts +1 -1
- package/src/api/routes/routing.ts +1 -1
- package/src/api/routes/row.ts +1 -1
- package/src/api/routes/screen.ts +1 -1
- package/src/api/routes/script.ts +1 -1
- package/src/api/routes/static.ts +2 -2
- package/src/api/routes/table.ts +16 -39
- package/src/api/routes/templates.ts +1 -1
- package/src/api/routes/tests/__snapshots__/{datasource.spec.js.snap → datasource.spec.ts.snap} +1 -1
- package/src/api/routes/tests/analytics.spec.js +4 -1
- package/src/api/routes/tests/apikeys.spec.js +1 -1
- package/src/api/routes/tests/{application.spec.js → application.spec.ts} +112 -22
- package/src/api/routes/tests/auth.spec.js +2 -2
- package/src/api/routes/tests/automation.spec.js +5 -1
- package/src/api/routes/tests/{backup.spec.js → backup.spec.ts} +17 -15
- package/src/api/routes/tests/cloud.seq.spec.ts +59 -0
- package/src/api/routes/tests/component.spec.js +1 -1
- package/src/api/routes/tests/data/budibase-component-1.0.1.tgz +0 -0
- package/src/api/routes/tests/data/comment-box-1.0.2.tar.gz +0 -0
- package/src/api/routes/tests/data/export-test.tar.gz +0 -0
- package/src/api/routes/tests/{datasource.spec.js → datasource.spec.ts} +76 -17
- package/src/api/routes/tests/dev.spec.js +1 -1
- package/src/api/routes/tests/integration.spec.js +1 -1
- package/src/api/routes/tests/layout.spec.js +1 -1
- package/src/api/routes/tests/metadata.spec.js +1 -1
- package/src/api/routes/tests/misc.spec.js +5 -11
- package/src/api/routes/tests/permissions.spec.js +5 -2
- package/src/api/routes/tests/plugin.spec.ts +179 -0
- package/src/api/routes/tests/{query.spec.js → query.seq.spec.js} +21 -1
- package/src/api/routes/tests/role.spec.js +6 -1
- package/src/api/routes/tests/routing.spec.js +2 -3
- package/src/api/routes/tests/row.spec.js +15 -5
- package/src/api/routes/tests/screen.spec.js +1 -1
- package/src/api/routes/tests/static.spec.js +4 -18
- package/src/api/routes/tests/table.spec.js +17 -33
- package/src/api/routes/tests/templates.spec.js +1 -1
- package/src/api/routes/tests/user.spec.js +108 -0
- package/src/api/routes/tests/utilities/TestFunctions.ts +26 -3
- package/src/api/routes/tests/utilities/index.ts +7 -5
- package/src/api/routes/tests/view.spec.js +4 -1
- package/src/api/routes/tests/webhook.spec.js +12 -3
- package/src/api/routes/user.ts +1 -1
- package/src/api/routes/utils/validators.ts +1 -1
- package/src/api/routes/view.ts +1 -1
- package/src/api/routes/webhook.ts +1 -1
- package/src/app.ts +7 -4
- package/src/automations/automationUtils.ts +24 -0
- package/src/automations/logging/index.ts +1 -1
- package/src/automations/tests/automation.spec.js +4 -4
- package/src/automations/tests/bash.spec.js +34 -0
- package/src/automations/tests/discord.spec.js +27 -0
- package/src/automations/tests/executeQuery.spec.js +48 -0
- package/src/automations/tests/executeScript.spec.js +48 -0
- package/src/automations/tests/loop.spec.ts +45 -0
- package/src/automations/tests/outgoingWebhook.spec.js +1 -1
- package/src/automations/tests/sendSmtpEmail.spec.js +71 -0
- package/src/automations/tests/serverLog.spec.js +22 -0
- package/src/automations/tests/updateRow.spec.js +1 -1
- package/src/automations/tests/utilities/index.ts +2 -2
- package/src/automations/tests/zapier.spec.js +27 -0
- package/src/automations/triggers.ts +6 -1
- package/src/automations/unitTests/automationUtils.spec.ts +65 -0
- package/src/db/index.ts +1 -1
- package/src/db/linkedRows/LinkController.ts +1 -1
- package/src/db/linkedRows/LinkDocument.ts +1 -1
- package/src/db/newid.ts +1 -1
- package/src/db/tests/linkController.spec.js +5 -2
- package/src/db/tests/linkTests.spec.js +1 -1
- package/src/definitions/automations.ts +1 -0
- package/src/definitions/datasource.ts +0 -41
- package/src/definitions/openapi.ts +10 -0
- package/src/environment.ts +6 -2
- package/src/events/AutomationEmitter.ts +1 -1
- package/src/events/BudibaseEmitter.ts +1 -1
- package/src/events/index.ts +1 -1
- package/src/index.ts +1 -1
- package/src/integrations/base/query.ts +3 -1
- package/src/integrations/base/sqlTable.ts +1 -1
- package/src/integrations/couchdb.ts +40 -14
- package/src/integrations/dynamodb.ts +3 -3
- package/src/integrations/elasticsearch.ts +8 -4
- package/src/integrations/googlesheets.ts +1 -1
- package/src/integrations/index.ts +5 -9
- package/src/integrations/mongodb.ts +315 -271
- package/src/integrations/mysql.ts +1 -1
- package/src/integrations/queries/sql.ts +5 -50
- package/src/integrations/rest.ts +16 -19
- package/src/integrations/tests/couchdb.spec.ts +33 -21
- package/src/integrations/tests/rest.spec.ts +19 -15
- package/src/middleware/authorized.ts +5 -1
- package/src/middleware/builder.ts +1 -1
- package/src/middleware/currentapp.ts +4 -3
- package/src/middleware/publicApi.ts +1 -1
- package/src/middleware/selfhost.ts +1 -1
- package/src/middleware/tests/authorized.spec.js +1 -1
- package/src/middleware/tests/currentapp.spec.js +1 -1
- package/src/middleware/tests/selfhost.spec.js +1 -1
- package/src/migrations/functions/backfill/global/configs.ts +5 -4
- package/src/migrations/functions/tests/appUrls.spec.js +1 -1
- package/src/migrations/functions/tests/syncQuotas.spec.js +1 -1
- package/src/migrations/functions/tests/userEmailViewCasing.spec.js +1 -1
- package/src/migrations/functions/usageQuotas/tests/syncRows.spec.ts +10 -6
- package/src/migrations/tests/index.spec.ts +3 -2
- package/src/sdk/app/backups/imports.ts +2 -6
- package/src/sdk/app/datasources/datasources.ts +136 -0
- package/src/sdk/app/datasources/index.ts +5 -0
- package/src/sdk/app/queries/index.ts +5 -0
- package/src/sdk/app/queries/queries.ts +50 -0
- package/src/sdk/app/tables/index.ts +6 -3
- package/src/sdk/index.ts +4 -0
- package/src/sdk/tests/attachments.spec.ts +1 -4
- package/src/sdk/utils/index.ts +16 -0
- package/src/startup.ts +3 -8
- package/src/tests/jestEnv.ts +9 -0
- package/src/tests/jestSetup.ts +8 -20
- package/src/tests/utilities/TestConfiguration.ts +127 -49
- package/src/tests/utilities/structures.ts +65 -2
- package/src/threads/automation.ts +22 -35
- package/src/threads/definitions.ts +3 -0
- package/src/threads/index.ts +1 -1
- package/src/threads/query.ts +28 -15
- package/src/utilities/fileSystem/app.ts +86 -0
- package/src/utilities/fileSystem/clientLibrary.ts +1 -1
- package/src/utilities/fileSystem/filesystem.ts +172 -0
- package/src/utilities/fileSystem/index.ts +5 -348
- package/src/utilities/fileSystem/plugin.ts +64 -0
- package/src/utilities/fileSystem/template.ts +36 -0
- package/src/utilities/index.ts +1 -45
- package/src/utilities/retry.ts +18 -0
- package/src/utilities/rowProcessor/index.ts +17 -8
- package/src/utilities/rowProcessor/tests/utils.spec.ts +57 -0
- package/src/utilities/schema.ts +141 -0
- package/src/utilities/scriptRunner.ts +1 -1
- package/src/utilities/statusCodes.ts +1 -1
- package/src/utilities/workerRequests.ts +10 -1
- package/src/watch.ts +1 -1
- package/tsconfig.build.json +2 -0
- package/tsconfig.json +2 -1
- package/builder/assets/index.96b9ffed.css +0 -6
- package/builder/assets/index.fae8f9eb.js +0 -1024
- package/dist/api/routes/tests/utilities/TestFunctions.js +0 -167
- package/dist/api/routes/tests/utilities/index.js +0 -131
- package/dist/automations/tests/utilities/index.js +0 -81
- package/dist/tests/utilities/TestConfiguration.js +0 -562
- package/dist/tests/utilities/controllers.js +0 -40
- package/dist/tests/utilities/structures.js +0 -168
- package/dist/utilities/csvParser.js +0 -152
- package/dist/utilities/plugins.js +0 -26
- package/src/api/routes/tests/deployment.spec.ts +0 -25
- package/src/automations/unitTests/automationUtils.spec.js +0 -17
- package/src/utilities/csvParser.ts +0 -161
- package/src/utilities/plugins.ts +0 -22
- package/src/utilities/tests/__snapshots__/csvParser.spec.js.snap +0 -15
- package/src/utilities/tests/csvParser.spec.js +0 -112
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">58.74% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>131/223</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">45.78% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>38/83</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">52.63% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>10/19</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">58.37% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>129/221</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
64
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line medium'></div>
|
|
65
65
|
<pre><table class="coverage">
|
|
66
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -553,36 +553,22 @@
|
|
|
553
553
|
<a name='L488'></a><a href='#L488'>488</a>
|
|
554
554
|
<a name='L489'></a><a href='#L489'>489</a>
|
|
555
555
|
<a name='L490'></a><a href='#L490'>490</a>
|
|
556
|
-
<a name='L491'></a><a href='#L491'>491</a>
|
|
557
|
-
<a name='L492'></a><a href='#L492'>492</a>
|
|
558
|
-
<a name='L493'></a><a href='#L493'>493</a>
|
|
559
|
-
<a name='L494'></a><a href='#L494'>494</a>
|
|
560
|
-
<a name='L495'></a><a href='#L495'>495</a>
|
|
561
|
-
<a name='L496'></a><a href='#L496'>496</a>
|
|
562
|
-
<a name='L497'></a><a href='#L497'>497</a>
|
|
563
|
-
<a name='L498'></a><a href='#L498'>498</a>
|
|
564
|
-
<a name='L499'></a><a href='#L499'>499</a>
|
|
565
|
-
<a name='L500'></a><a href='#L500'>500</a>
|
|
566
|
-
<a name='L501'></a><a href='#L501'>501</a>
|
|
567
|
-
<a name='L502'></a><a href='#L502'>502</a>
|
|
568
|
-
<a name='L503'></a><a href='#L503'>503</a>
|
|
569
|
-
<a name='L504'></a><a href='#L504'>504</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">46x</span>
|
|
556
|
+
<a name='L491'></a><a href='#L491'>491</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">55x</span>
|
|
570
557
|
<span class="cline-any cline-neutral"> </span>
|
|
571
|
-
<span class="cline-any cline-yes">
|
|
572
|
-
<span class="cline-any cline-yes">46x</span>
|
|
558
|
+
<span class="cline-any cline-yes">55x</span>
|
|
573
559
|
<span class="cline-any cline-neutral"> </span>
|
|
574
560
|
<span class="cline-any cline-neutral"> </span>
|
|
575
561
|
<span class="cline-any cline-neutral"> </span>
|
|
576
562
|
<span class="cline-any cline-neutral"> </span>
|
|
577
|
-
<span class="cline-any cline-yes">
|
|
578
|
-
<span class="cline-any cline-yes">
|
|
579
|
-
<span class="cline-any cline-yes">
|
|
580
|
-
<span class="cline-any cline-yes">
|
|
581
|
-
<span class="cline-any cline-yes">
|
|
582
|
-
<span class="cline-any cline-yes">
|
|
583
|
-
<span class="cline-any cline-yes">
|
|
584
|
-
<span class="cline-any cline-yes">
|
|
585
|
-
<span class="cline-any cline-yes">
|
|
563
|
+
<span class="cline-any cline-yes">55x</span>
|
|
564
|
+
<span class="cline-any cline-yes">55x</span>
|
|
565
|
+
<span class="cline-any cline-yes">55x</span>
|
|
566
|
+
<span class="cline-any cline-yes">55x</span>
|
|
567
|
+
<span class="cline-any cline-yes">55x</span>
|
|
568
|
+
<span class="cline-any cline-yes">55x</span>
|
|
569
|
+
<span class="cline-any cline-yes">55x</span>
|
|
570
|
+
<span class="cline-any cline-yes">55x</span>
|
|
571
|
+
<span class="cline-any cline-yes">55x</span>
|
|
586
572
|
<span class="cline-any cline-neutral"> </span>
|
|
587
573
|
<span class="cline-any cline-neutral"> </span>
|
|
588
574
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -591,44 +577,33 @@
|
|
|
591
577
|
<span class="cline-any cline-neutral"> </span>
|
|
592
578
|
<span class="cline-any cline-neutral"> </span>
|
|
593
579
|
<span class="cline-any cline-neutral"> </span>
|
|
594
|
-
<span class="cline-any cline-yes">
|
|
595
|
-
<span class="cline-any cline-yes">
|
|
596
|
-
<span class="cline-any cline-yes">
|
|
597
|
-
<span class="cline-any cline-yes">
|
|
598
|
-
<span class="cline-any cline-yes">
|
|
599
|
-
<span class="cline-any cline-yes">
|
|
600
|
-
<span class="cline-any cline-yes">
|
|
601
|
-
<span class="cline-any cline-yes">
|
|
580
|
+
<span class="cline-any cline-yes">55x</span>
|
|
581
|
+
<span class="cline-any cline-yes">55x</span>
|
|
582
|
+
<span class="cline-any cline-yes">55x</span>
|
|
583
|
+
<span class="cline-any cline-yes">55x</span>
|
|
584
|
+
<span class="cline-any cline-yes">55x</span>
|
|
585
|
+
<span class="cline-any cline-yes">55x</span>
|
|
586
|
+
<span class="cline-any cline-yes">55x</span>
|
|
587
|
+
<span class="cline-any cline-yes">55x</span>
|
|
588
|
+
<span class="cline-any cline-yes">55x</span>
|
|
602
589
|
<span class="cline-any cline-neutral"> </span>
|
|
603
590
|
<span class="cline-any cline-neutral"> </span>
|
|
604
|
-
<span class="cline-any cline-
|
|
605
|
-
<span class="cline-any cline-
|
|
606
|
-
<span class="cline-any cline-
|
|
607
|
-
<span class="cline-any cline-no"> </span>
|
|
608
|
-
<span class="cline-any cline-no"> </span>
|
|
609
|
-
<span class="cline-any cline-neutral"> </span>
|
|
610
|
-
<span class="cline-any cline-no"> </span>
|
|
611
|
-
<span class="cline-any cline-no"> </span>
|
|
591
|
+
<span class="cline-any cline-yes">2x</span>
|
|
592
|
+
<span class="cline-any cline-yes">2x</span>
|
|
593
|
+
<span class="cline-any cline-yes">1x</span>
|
|
612
594
|
<span class="cline-any cline-neutral"> </span>
|
|
595
|
+
<span class="cline-any cline-yes">1x</span>
|
|
613
596
|
<span class="cline-any cline-no"> </span>
|
|
614
597
|
<span class="cline-any cline-neutral"> </span>
|
|
615
|
-
<span class="cline-any cline-
|
|
616
|
-
<span class="cline-any cline-
|
|
598
|
+
<span class="cline-any cline-yes">1x</span>
|
|
599
|
+
<span class="cline-any cline-yes">1x</span>
|
|
617
600
|
<span class="cline-any cline-neutral"> </span>
|
|
618
601
|
<span class="cline-any cline-no"> </span>
|
|
619
602
|
<span class="cline-any cline-neutral"> </span>
|
|
620
603
|
<span class="cline-any cline-neutral"> </span>
|
|
621
|
-
<span class="cline-any cline-no"> </span>
|
|
622
|
-
<span class="cline-any cline-neutral"> </span>
|
|
623
|
-
<span class="cline-any cline-no"> </span>
|
|
624
|
-
<span class="cline-any cline-neutral"> </span>
|
|
625
604
|
<span class="cline-any cline-neutral"> </span>
|
|
626
605
|
<span class="cline-any cline-neutral"> </span>
|
|
627
|
-
<span class="cline-any cline-no"> </span>
|
|
628
|
-
<span class="cline-any cline-no"> </span>
|
|
629
|
-
<span class="cline-any cline-no"> </span>
|
|
630
606
|
<span class="cline-any cline-neutral"> </span>
|
|
631
|
-
<span class="cline-any cline-no"> </span>
|
|
632
607
|
<span class="cline-any cline-neutral"> </span>
|
|
633
608
|
<span class="cline-any cline-neutral"> </span>
|
|
634
609
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -641,49 +616,42 @@
|
|
|
641
616
|
<span class="cline-any cline-neutral"> </span>
|
|
642
617
|
<span class="cline-any cline-neutral"> </span>
|
|
643
618
|
<span class="cline-any cline-neutral"> </span>
|
|
619
|
+
<span class="cline-any cline-yes">9x</span>
|
|
620
|
+
<span class="cline-any cline-yes">9x</span>
|
|
621
|
+
<span class="cline-any cline-yes">9x</span>
|
|
622
|
+
<span class="cline-any cline-yes">9x</span>
|
|
623
|
+
<span class="cline-any cline-yes">9x</span>
|
|
624
|
+
<span class="cline-any cline-yes">9x</span>
|
|
625
|
+
<span class="cline-any cline-yes">9x</span>
|
|
626
|
+
<span class="cline-any cline-yes">9x</span>
|
|
644
627
|
<span class="cline-any cline-neutral"> </span>
|
|
628
|
+
<span class="cline-any cline-yes">9x</span>
|
|
629
|
+
<span class="cline-any cline-yes">9x</span>
|
|
645
630
|
<span class="cline-any cline-neutral"> </span>
|
|
631
|
+
<span class="cline-any cline-yes">9x</span>
|
|
632
|
+
<span class="cline-any cline-yes">9x</span>
|
|
646
633
|
<span class="cline-any cline-neutral"> </span>
|
|
647
634
|
<span class="cline-any cline-neutral"> </span>
|
|
635
|
+
<span class="cline-any cline-yes">9x</span>
|
|
636
|
+
<span class="cline-any cline-yes">9x</span>
|
|
648
637
|
<span class="cline-any cline-neutral"> </span>
|
|
638
|
+
<span class="cline-any cline-yes">9x</span>
|
|
639
|
+
<span class="cline-any cline-yes">9x</span>
|
|
649
640
|
<span class="cline-any cline-neutral"> </span>
|
|
650
641
|
<span class="cline-any cline-neutral"> </span>
|
|
651
|
-
<span class="cline-any cline-yes">7x</span>
|
|
652
|
-
<span class="cline-any cline-yes">7x</span>
|
|
653
|
-
<span class="cline-any cline-yes">7x</span>
|
|
654
|
-
<span class="cline-any cline-yes">7x</span>
|
|
655
|
-
<span class="cline-any cline-yes">7x</span>
|
|
656
|
-
<span class="cline-any cline-yes">7x</span>
|
|
657
|
-
<span class="cline-any cline-yes">7x</span>
|
|
658
|
-
<span class="cline-any cline-yes">7x</span>
|
|
659
642
|
<span class="cline-any cline-neutral"> </span>
|
|
660
|
-
<span class="cline-any cline-yes">
|
|
661
|
-
<span class="cline-any cline-yes">7x</span>
|
|
662
|
-
<span class="cline-any cline-neutral"> </span>
|
|
663
|
-
<span class="cline-any cline-yes">7x</span>
|
|
664
|
-
<span class="cline-any cline-yes">7x</span>
|
|
665
|
-
<span class="cline-any cline-neutral"> </span>
|
|
666
|
-
<span class="cline-any cline-neutral"> </span>
|
|
667
|
-
<span class="cline-any cline-yes">7x</span>
|
|
668
|
-
<span class="cline-any cline-yes">7x</span>
|
|
669
|
-
<span class="cline-any cline-neutral"> </span>
|
|
670
|
-
<span class="cline-any cline-yes">7x</span>
|
|
671
|
-
<span class="cline-any cline-yes">7x</span>
|
|
672
|
-
<span class="cline-any cline-neutral"> </span>
|
|
673
|
-
<span class="cline-any cline-neutral"> </span>
|
|
674
|
-
<span class="cline-any cline-neutral"> </span>
|
|
675
|
-
<span class="cline-any cline-yes">7x</span>
|
|
643
|
+
<span class="cline-any cline-yes">9x</span>
|
|
676
644
|
<span class="cline-any cline-no"> </span>
|
|
677
645
|
<span class="cline-any cline-neutral"> </span>
|
|
678
|
-
<span class="cline-any cline-yes">
|
|
646
|
+
<span class="cline-any cline-yes">9x</span>
|
|
679
647
|
<span class="cline-any cline-neutral"> </span>
|
|
680
648
|
<span class="cline-any cline-neutral"> </span>
|
|
681
649
|
<span class="cline-any cline-neutral"> </span>
|
|
682
|
-
<span class="cline-any cline-yes">
|
|
683
|
-
<span class="cline-any cline-yes">
|
|
650
|
+
<span class="cline-any cline-yes">11x</span>
|
|
651
|
+
<span class="cline-any cline-yes">11x</span>
|
|
684
652
|
<span class="cline-any cline-no"> </span>
|
|
685
653
|
<span class="cline-any cline-neutral"> </span>
|
|
686
|
-
<span class="cline-any cline-yes">
|
|
654
|
+
<span class="cline-any cline-yes">11x</span>
|
|
687
655
|
<span class="cline-any cline-neutral"> </span>
|
|
688
656
|
<span class="cline-any cline-neutral"> </span>
|
|
689
657
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -765,9 +733,9 @@
|
|
|
765
733
|
<span class="cline-any cline-neutral"> </span>
|
|
766
734
|
<span class="cline-any cline-neutral"> </span>
|
|
767
735
|
<span class="cline-any cline-neutral"> </span>
|
|
768
|
-
<span class="cline-any cline-yes">
|
|
736
|
+
<span class="cline-any cline-yes">16x</span>
|
|
769
737
|
<span class="cline-any cline-neutral"> </span>
|
|
770
|
-
<span class="cline-any cline-yes">
|
|
738
|
+
<span class="cline-any cline-yes">16x</span>
|
|
771
739
|
<span class="cline-any cline-neutral"> </span>
|
|
772
740
|
<span class="cline-any cline-neutral"> </span>
|
|
773
741
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -776,13 +744,13 @@
|
|
|
776
744
|
<span class="cline-any cline-no"> </span>
|
|
777
745
|
<span class="cline-any cline-neutral"> </span>
|
|
778
746
|
<span class="cline-any cline-neutral"> </span>
|
|
779
|
-
<span class="cline-any cline-yes">
|
|
747
|
+
<span class="cline-any cline-yes">16x</span>
|
|
780
748
|
<span class="cline-any cline-neutral"> </span>
|
|
781
749
|
<span class="cline-any cline-neutral"> </span>
|
|
782
750
|
<span class="cline-any cline-neutral"> </span>
|
|
783
|
-
<span class="cline-any cline-yes">
|
|
751
|
+
<span class="cline-any cline-yes">9x</span>
|
|
784
752
|
<span class="cline-any cline-neutral"> </span>
|
|
785
|
-
<span class="cline-any cline-yes">
|
|
753
|
+
<span class="cline-any cline-yes">16x</span>
|
|
786
754
|
<span class="cline-any cline-neutral"> </span>
|
|
787
755
|
<span class="cline-any cline-neutral"> </span>
|
|
788
756
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -812,17 +780,19 @@
|
|
|
812
780
|
<span class="cline-any cline-neutral"> </span>
|
|
813
781
|
<span class="cline-any cline-neutral"> </span>
|
|
814
782
|
<span class="cline-any cline-neutral"> </span>
|
|
815
|
-
<span class="cline-any cline-yes">7x</span>
|
|
816
|
-
<span class="cline-any cline-yes">7x</span>
|
|
817
|
-
<span class="cline-any cline-yes">7x</span>
|
|
818
783
|
<span class="cline-any cline-neutral"> </span>
|
|
819
|
-
<span class="cline-any cline-yes">
|
|
820
|
-
<span class="cline-any cline-yes">
|
|
821
|
-
<span class="cline-any cline-yes">
|
|
784
|
+
<span class="cline-any cline-yes">9x</span>
|
|
785
|
+
<span class="cline-any cline-yes">8x</span>
|
|
786
|
+
<span class="cline-any cline-yes">8x</span>
|
|
787
|
+
<span class="cline-any cline-yes">8x</span>
|
|
822
788
|
<span class="cline-any cline-neutral"> </span>
|
|
823
|
-
<span class="cline-any cline-yes">
|
|
789
|
+
<span class="cline-any cline-yes">8x</span>
|
|
790
|
+
<span class="cline-any cline-yes">8x</span>
|
|
791
|
+
<span class="cline-any cline-yes">8x</span>
|
|
824
792
|
<span class="cline-any cline-neutral"> </span>
|
|
825
|
-
<span class="cline-any cline-yes">
|
|
793
|
+
<span class="cline-any cline-yes">8x</span>
|
|
794
|
+
<span class="cline-any cline-neutral"> </span>
|
|
795
|
+
<span class="cline-any cline-yes">8x</span>
|
|
826
796
|
<span class="cline-any cline-no"> </span>
|
|
827
797
|
<span class="cline-any cline-no"> </span>
|
|
828
798
|
<span class="cline-any cline-no"> </span>
|
|
@@ -830,34 +800,34 @@
|
|
|
830
800
|
<span class="cline-any cline-neutral"> </span>
|
|
831
801
|
<span class="cline-any cline-neutral"> </span>
|
|
832
802
|
<span class="cline-any cline-neutral"> </span>
|
|
833
|
-
<span class="cline-any cline-yes">
|
|
834
|
-
<span class="cline-any cline-yes">
|
|
803
|
+
<span class="cline-any cline-yes">8x</span>
|
|
804
|
+
<span class="cline-any cline-yes">11x</span>
|
|
835
805
|
<span class="cline-any cline-neutral"> </span>
|
|
836
|
-
<span class="cline-any cline-yes">
|
|
837
|
-
<span class="cline-any cline-yes">
|
|
806
|
+
<span class="cline-any cline-yes">11x</span>
|
|
807
|
+
<span class="cline-any cline-yes">11x</span>
|
|
838
808
|
<span class="cline-any cline-neutral"> </span>
|
|
839
|
-
<span class="cline-any cline-yes">
|
|
840
|
-
<span class="cline-any cline-
|
|
841
|
-
<span class="cline-any cline-
|
|
842
|
-
<span class="cline-any cline-
|
|
809
|
+
<span class="cline-any cline-yes">11x</span>
|
|
810
|
+
<span class="cline-any cline-yes">2x</span>
|
|
811
|
+
<span class="cline-any cline-yes">2x</span>
|
|
812
|
+
<span class="cline-any cline-yes">2x</span>
|
|
843
813
|
<span class="cline-any cline-neutral"> </span>
|
|
844
814
|
<span class="cline-any cline-neutral"> </span>
|
|
845
|
-
<span class="cline-any cline-yes">
|
|
846
|
-
<span class="cline-any cline-
|
|
847
|
-
<span class="cline-any cline-
|
|
815
|
+
<span class="cline-any cline-yes">9x</span>
|
|
816
|
+
<span class="cline-any cline-yes">2x</span>
|
|
817
|
+
<span class="cline-any cline-yes">2x</span>
|
|
848
818
|
<span class="cline-any cline-neutral"> </span>
|
|
849
|
-
<span class="cline-any cline-yes">
|
|
850
|
-
<span class="cline-any cline-yes">
|
|
819
|
+
<span class="cline-any cline-yes">9x</span>
|
|
820
|
+
<span class="cline-any cline-yes">11x</span>
|
|
851
821
|
<span class="cline-any cline-neutral"> </span>
|
|
852
|
-
<span class="cline-any cline-yes">
|
|
853
|
-
<span class="cline-any cline-
|
|
822
|
+
<span class="cline-any cline-yes">11x</span>
|
|
823
|
+
<span class="cline-any cline-yes">3x</span>
|
|
854
824
|
<span class="cline-any cline-neutral"> </span>
|
|
855
825
|
<span class="cline-any cline-neutral"> </span>
|
|
856
826
|
<span class="cline-any cline-neutral"> </span>
|
|
857
827
|
<span class="cline-any cline-neutral"> </span>
|
|
858
|
-
<span class="cline-any cline-
|
|
859
|
-
<span class="cline-any cline-
|
|
860
|
-
<span class="cline-any cline-
|
|
828
|
+
<span class="cline-any cline-yes">3x</span>
|
|
829
|
+
<span class="cline-any cline-yes">3x</span>
|
|
830
|
+
<span class="cline-any cline-yes">3x</span>
|
|
861
831
|
<span class="cline-any cline-neutral"> </span>
|
|
862
832
|
<span class="cline-any cline-neutral"> </span>
|
|
863
833
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -871,23 +841,23 @@
|
|
|
871
841
|
<span class="cline-any cline-no"> </span>
|
|
872
842
|
<span class="cline-any cline-neutral"> </span>
|
|
873
843
|
<span class="cline-any cline-neutral"> </span>
|
|
874
|
-
<span class="cline-any cline-
|
|
875
|
-
<span class="cline-any cline-
|
|
844
|
+
<span class="cline-any cline-yes">3x</span>
|
|
845
|
+
<span class="cline-any cline-yes">3x</span>
|
|
876
846
|
<span class="cline-any cline-neutral"> </span>
|
|
877
847
|
<span class="cline-any cline-neutral"> </span>
|
|
878
848
|
<span class="cline-any cline-neutral"> </span>
|
|
879
849
|
<span class="cline-any cline-no"> </span>
|
|
880
|
-
<span class="cline-any cline-
|
|
850
|
+
<span class="cline-any cline-yes">3x</span>
|
|
881
851
|
<span class="cline-any cline-no"> </span>
|
|
882
852
|
<span class="cline-any cline-neutral"> </span>
|
|
883
|
-
<span class="cline-any cline-
|
|
853
|
+
<span class="cline-any cline-yes">3x</span>
|
|
884
854
|
<span class="cline-any cline-neutral"> </span>
|
|
885
855
|
<span class="cline-any cline-neutral"> </span>
|
|
886
856
|
<span class="cline-any cline-neutral"> </span>
|
|
887
857
|
<span class="cline-any cline-neutral"> </span>
|
|
888
858
|
<span class="cline-any cline-neutral"> </span>
|
|
889
|
-
<span class="cline-any cline-
|
|
890
|
-
<span class="cline-any cline-
|
|
859
|
+
<span class="cline-any cline-yes">3x</span>
|
|
860
|
+
<span class="cline-any cline-yes">3x</span>
|
|
891
861
|
<span class="cline-any cline-no"> </span>
|
|
892
862
|
<span class="cline-any cline-neutral"> </span>
|
|
893
863
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -910,15 +880,15 @@
|
|
|
910
880
|
<span class="cline-any cline-neutral"> </span>
|
|
911
881
|
<span class="cline-any cline-neutral"> </span>
|
|
912
882
|
<span class="cline-any cline-neutral"> </span>
|
|
913
|
-
<span class="cline-any cline-
|
|
914
|
-
<span class="cline-any cline-
|
|
883
|
+
<span class="cline-any cline-yes">3x</span>
|
|
884
|
+
<span class="cline-any cline-yes">3x</span>
|
|
915
885
|
<span class="cline-any cline-neutral"> </span>
|
|
916
886
|
<span class="cline-any cline-neutral"> </span>
|
|
917
887
|
<span class="cline-any cline-neutral"> </span>
|
|
918
888
|
<span class="cline-any cline-neutral"> </span>
|
|
919
889
|
<span class="cline-any cline-neutral"> </span>
|
|
920
890
|
<span class="cline-any cline-neutral"> </span>
|
|
921
|
-
<span class="cline-any cline-
|
|
891
|
+
<span class="cline-any cline-yes">3x</span>
|
|
922
892
|
<span class="cline-any cline-neutral"> </span>
|
|
923
893
|
<span class="cline-any cline-neutral"> </span>
|
|
924
894
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -931,17 +901,17 @@
|
|
|
931
901
|
<span class="cline-any cline-no"> </span>
|
|
932
902
|
<span class="cline-any cline-neutral"> </span>
|
|
933
903
|
<span class="cline-any cline-neutral"> </span>
|
|
934
|
-
<span class="cline-any cline-
|
|
935
|
-
<span class="cline-any cline-
|
|
936
|
-
<span class="cline-any cline-
|
|
904
|
+
<span class="cline-any cline-yes">3x</span>
|
|
905
|
+
<span class="cline-any cline-yes">3x</span>
|
|
906
|
+
<span class="cline-any cline-yes">3x</span>
|
|
937
907
|
<span class="cline-any cline-no"> </span>
|
|
938
908
|
<span class="cline-any cline-no"> </span>
|
|
939
909
|
<span class="cline-any cline-neutral"> </span>
|
|
940
910
|
<span class="cline-any cline-neutral"> </span>
|
|
941
|
-
<span class="cline-any cline-
|
|
911
|
+
<span class="cline-any cline-yes">3x</span>
|
|
942
912
|
<span class="cline-any cline-neutral"> </span>
|
|
943
913
|
<span class="cline-any cline-neutral"> </span>
|
|
944
|
-
<span class="cline-any cline-
|
|
914
|
+
<span class="cline-any cline-yes">3x</span>
|
|
945
915
|
<span class="cline-any cline-no"> </span>
|
|
946
916
|
<span class="cline-any cline-neutral"> </span>
|
|
947
917
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -953,29 +923,29 @@
|
|
|
953
923
|
<span class="cline-any cline-neutral"> </span>
|
|
954
924
|
<span class="cline-any cline-neutral"> </span>
|
|
955
925
|
<span class="cline-any cline-neutral"> </span>
|
|
956
|
-
<span class="cline-any cline-yes">
|
|
926
|
+
<span class="cline-any cline-yes">11x</span>
|
|
957
927
|
<span class="cline-any cline-no"> </span>
|
|
958
928
|
<span class="cline-any cline-no"> </span>
|
|
959
929
|
<span class="cline-any cline-neutral"> </span>
|
|
960
930
|
<span class="cline-any cline-neutral"> </span>
|
|
961
931
|
<span class="cline-any cline-neutral"> </span>
|
|
962
|
-
<span class="cline-any cline-yes">
|
|
963
|
-
<span class="cline-any cline-yes">
|
|
964
|
-
<span class="cline-any cline-yes">
|
|
932
|
+
<span class="cline-any cline-yes">11x</span>
|
|
933
|
+
<span class="cline-any cline-yes">11x</span>
|
|
934
|
+
<span class="cline-any cline-yes">11x</span>
|
|
965
935
|
<span class="cline-any cline-neutral"> </span>
|
|
966
|
-
<span class="cline-any cline-yes">
|
|
936
|
+
<span class="cline-any cline-yes">11x</span>
|
|
967
937
|
<span class="cline-any cline-neutral"> </span>
|
|
968
|
-
<span class="cline-any cline-yes">
|
|
938
|
+
<span class="cline-any cline-yes">11x</span>
|
|
969
939
|
<span class="cline-any cline-neutral"> </span>
|
|
970
940
|
<span class="cline-any cline-neutral"> </span>
|
|
971
941
|
<span class="cline-any cline-neutral"> </span>
|
|
972
942
|
<span class="cline-any cline-neutral"> </span>
|
|
973
943
|
<span class="cline-any cline-neutral"> </span>
|
|
974
944
|
<span class="cline-any cline-neutral"> </span>
|
|
975
|
-
<span class="cline-any cline-yes">
|
|
945
|
+
<span class="cline-any cline-yes">11x</span>
|
|
976
946
|
<span class="cline-any cline-neutral"> </span>
|
|
977
947
|
<span class="cline-any cline-neutral"> </span>
|
|
978
|
-
<span class="cline-any cline-yes">
|
|
948
|
+
<span class="cline-any cline-yes">11x</span>
|
|
979
949
|
<span class="cline-any cline-no"> </span>
|
|
980
950
|
<span class="cline-any cline-no"> </span>
|
|
981
951
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -983,10 +953,10 @@
|
|
|
983
953
|
<span class="cline-any cline-neutral"> </span>
|
|
984
954
|
<span class="cline-any cline-no"> </span>
|
|
985
955
|
<span class="cline-any cline-neutral"> </span>
|
|
986
|
-
<span class="cline-any cline-yes">
|
|
987
|
-
<span class="cline-any cline-
|
|
956
|
+
<span class="cline-any cline-yes">11x</span>
|
|
957
|
+
<span class="cline-any cline-yes">4x</span>
|
|
988
958
|
<span class="cline-any cline-neutral"> </span>
|
|
989
|
-
<span class="cline-any cline-yes">
|
|
959
|
+
<span class="cline-any cline-yes">7x</span>
|
|
990
960
|
<span class="cline-any cline-neutral"> </span>
|
|
991
961
|
<span class="cline-any cline-neutral"> </span>
|
|
992
962
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -998,75 +968,79 @@
|
|
|
998
968
|
<span class="cline-any cline-no"> </span>
|
|
999
969
|
<span class="cline-any cline-neutral"> </span>
|
|
1000
970
|
<span class="cline-any cline-neutral"> </span>
|
|
1001
|
-
<span class="cline-any cline-yes">
|
|
1002
|
-
<span class="cline-any cline-
|
|
1003
|
-
<span class="cline-any cline-
|
|
1004
|
-
<span class="cline-any cline-
|
|
1005
|
-
<span class="cline-any cline-
|
|
1006
|
-
<span class="cline-any cline-
|
|
971
|
+
<span class="cline-any cline-yes">11x</span>
|
|
972
|
+
<span class="cline-any cline-yes">4x</span>
|
|
973
|
+
<span class="cline-any cline-yes">4x</span>
|
|
974
|
+
<span class="cline-any cline-yes">2x</span>
|
|
975
|
+
<span class="cline-any cline-yes">2x</span>
|
|
976
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1007
977
|
<span class="cline-any cline-neutral"> </span>
|
|
1008
978
|
<span class="cline-any cline-neutral"> </span>
|
|
1009
979
|
<span class="cline-any cline-neutral"> </span>
|
|
1010
980
|
<span class="cline-any cline-neutral"> </span>
|
|
1011
981
|
<span class="cline-any cline-neutral"> </span>
|
|
1012
982
|
<span class="cline-any cline-neutral"> </span>
|
|
1013
|
-
<span class="cline-any cline-yes">
|
|
983
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1014
984
|
<span class="cline-any cline-no"> </span>
|
|
1015
985
|
<span class="cline-any cline-no"> </span>
|
|
1016
986
|
<span class="cline-any cline-neutral"> </span>
|
|
1017
987
|
<span class="cline-any cline-neutral"> </span>
|
|
1018
|
-
<span class="cline-any cline-yes">
|
|
1019
|
-
<span class="cline-any cline-
|
|
988
|
+
<span class="cline-any cline-yes">9x</span>
|
|
989
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1020
990
|
<span class="cline-any cline-neutral"> </span>
|
|
1021
991
|
<span class="cline-any cline-neutral"> </span>
|
|
1022
992
|
<span class="cline-any cline-neutral"> </span>
|
|
1023
993
|
<span class="cline-any cline-neutral"> </span>
|
|
1024
|
-
<span class="cline-any cline-
|
|
994
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1025
995
|
<span class="cline-any cline-neutral"> </span>
|
|
1026
996
|
<span class="cline-any cline-neutral"> </span>
|
|
1027
997
|
<span class="cline-any cline-neutral"> </span>
|
|
1028
998
|
<span class="cline-any cline-neutral"> </span>
|
|
1029
999
|
<span class="cline-any cline-neutral"> </span>
|
|
1030
|
-
<span class="cline-any cline-
|
|
1000
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1031
1001
|
<span class="cline-any cline-neutral"> </span>
|
|
1032
|
-
<span class="cline-any cline-
|
|
1033
|
-
<span class="cline-any cline-
|
|
1002
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1003
|
+
<span class="cline-any cline-yes">2x</span>
|
|
1034
1004
|
<span class="cline-any cline-neutral"> </span>
|
|
1035
1005
|
<span class="cline-any cline-neutral"> </span>
|
|
1036
1006
|
<span class="cline-any cline-neutral"> </span>
|
|
1037
1007
|
<span class="cline-any cline-neutral"> </span>
|
|
1038
|
-
<span class="cline-any cline-yes">
|
|
1039
|
-
<span class="cline-any cline-yes">
|
|
1008
|
+
<span class="cline-any cline-yes">8x</span>
|
|
1009
|
+
<span class="cline-any cline-yes">8x</span>
|
|
1040
1010
|
<span class="cline-any cline-no"> </span>
|
|
1041
1011
|
<span class="cline-any cline-neutral"> </span>
|
|
1042
|
-
<span class="cline-any cline-yes">
|
|
1012
|
+
<span class="cline-any cline-yes">8x</span>
|
|
1043
1013
|
<span class="cline-any cline-neutral"> </span>
|
|
1044
1014
|
<span class="cline-any cline-neutral"> </span>
|
|
1045
1015
|
<span class="cline-any cline-neutral"> </span>
|
|
1046
|
-
<span class="cline-any cline-yes">
|
|
1047
|
-
<span class="cline-any cline-yes">
|
|
1048
|
-
<span class="cline-any cline-yes">
|
|
1016
|
+
<span class="cline-any cline-yes">10x</span>
|
|
1017
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1018
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1049
1019
|
<span class="cline-any cline-no"> </span>
|
|
1050
1020
|
<span class="cline-any cline-neutral"> </span>
|
|
1051
|
-
<span class="cline-any cline-yes">
|
|
1052
|
-
<span class="cline-any cline-yes">
|
|
1053
|
-
<span class="cline-any cline-yes">
|
|
1054
|
-
<span class="cline-any cline-yes">
|
|
1055
|
-
<span class="cline-any cline-yes">
|
|
1021
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1022
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1023
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1024
|
+
<span class="cline-any cline-yes">9x</span>
|
|
1025
|
+
<span class="cline-any cline-yes">8x</span>
|
|
1056
1026
|
<span class="cline-any cline-neutral"> </span>
|
|
1057
1027
|
<span class="cline-any cline-no"> </span>
|
|
1058
1028
|
<span class="cline-any cline-neutral"> </span>
|
|
1059
1029
|
<span class="cline-any cline-neutral"> </span>
|
|
1060
1030
|
<span class="cline-any cline-neutral"> </span>
|
|
1061
1031
|
<span class="cline-any cline-neutral"> </span>
|
|
1062
|
-
<span class="cline-any cline-yes">
|
|
1032
|
+
<span class="cline-any cline-yes">55x</span>
|
|
1063
1033
|
<span class="cline-any cline-no"> </span>
|
|
1064
1034
|
<span class="cline-any cline-no"> </span>
|
|
1065
1035
|
<span class="cline-any cline-no"> </span>
|
|
1066
1036
|
<span class="cline-any cline-neutral"> </span>
|
|
1067
1037
|
<span class="cline-any cline-no"> </span>
|
|
1068
1038
|
<span class="cline-any cline-no"> </span>
|
|
1039
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1040
|
+
<span class="cline-any cline-no"> </span>
|
|
1069
1041
|
<span class="cline-any cline-no"> </span>
|
|
1042
|
+
<span class="cline-any cline-no"> </span>
|
|
1043
|
+
<span class="cline-any cline-neutral"> </span>
|
|
1070
1044
|
<span class="cline-any cline-neutral"> </span>
|
|
1071
1045
|
<span class="cline-any cline-neutral"> </span>
|
|
1072
1046
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { default as threadUtils } from "./utils"
|
|
@@ -1087,7 +1061,6 @@ import { storeLog } from "../automations/logging"
|
|
|
1087
1061
|
import { Automation, AutomationStep, AutomationStatus } from "@budibase/types"
|
|
1088
1062
|
import {
|
|
1089
1063
|
LoopStep,
|
|
1090
|
-
LoopStepType,
|
|
1091
1064
|
LoopInput,
|
|
1092
1065
|
TriggerOutput,
|
|
1093
1066
|
AutomationContext,
|
|
@@ -1097,43 +1070,25 @@ import { WorkerCallback } from "./definitions"
|
|
|
1097
1070
|
import { context, logging } from "@budibase/backend-core"
|
|
1098
1071
|
import { processObject } from "@budibase/string-templates"
|
|
1099
1072
|
import { cloneDeep } from "lodash/fp"
|
|
1073
|
+
import * as sdkUtils from "../sdk/utils"
|
|
1100
1074
|
import env from "../environment"
|
|
1101
1075
|
const FILTER_STEP_ID = actions.ACTION_DEFINITIONS.FILTER.stepId
|
|
1102
1076
|
const LOOP_STEP_ID = actions.ACTION_DEFINITIONS.LOOP.stepId
|
|
1103
1077
|
const CRON_STEP_ID = triggerDefs.CRON.stepId
|
|
1104
1078
|
const STOPPED_STATUS = { success: true, status: AutomationStatus.STOPPED }
|
|
1105
1079
|
|
|
1106
|
-
function
|
|
1107
|
-
|
|
1108
|
-
|
|
1080
|
+
function getLoopIterations(loopStep: LoopStep, input: LoopInput) {
|
|
1081
|
+
const binding = automationUtils.typecastForLooping(loopStep, input)
|
|
1082
|
+
if (!loopStep || !binding) {
|
|
1083
|
+
return 1
|
|
1109
1084
|
}
|
|
1110
|
-
<span class="
|
|
1111
|
-
<span class="cstat-no" title="statement not covered" >
|
|
1112
|
-
case LoopStepType.ARRAY:
|
|
1113
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (typeof input.binding === "string") {</span>
|
|
1114
|
-
<span class="cstat-no" title="statement not covered" > return JSON.parse(input.binding)</span>
|
|
1115
|
-
}
|
|
1116
|
-
<span class="cstat-no" title="statement not covered" > break</span>
|
|
1117
|
-
case LoopStepType.STRING:
|
|
1118
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(input.binding)) {</span>
|
|
1119
|
-
<span class="cstat-no" title="statement not covered" > return input.binding.join(",")</span>
|
|
1120
|
-
}
|
|
1121
|
-
<span class="cstat-no" title="statement not covered" > break</span>
|
|
1122
|
-
}
|
|
1123
|
-
} catch (err) {
|
|
1124
|
-
<span class="cstat-no" title="statement not covered" > throw new Error("Unable to cast to correct type")</span>
|
|
1085
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(binding)) {
|
|
1086
|
+
<span class="cstat-no" title="statement not covered" > return binding.length</span>
|
|
1125
1087
|
}
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
function <span class="fstat-no" title="function not covered" >getLoopIterations(</span>loopStep: LoopStep, input: LoopInput) {
|
|
1130
|
-
const binding = <span class="cstat-no" title="statement not covered" >typecastForLooping(loopStep, input)</span>
|
|
1131
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!loopStep || !binding) {</span>
|
|
1132
|
-
<span class="cstat-no" title="statement not covered" > return 1</span>
|
|
1088
|
+
if (typeof binding === "string") {
|
|
1089
|
+
return automationUtils.stringSplit(binding).length
|
|
1133
1090
|
}
|
|
1134
|
-
<span class="cstat-no" title="statement not covered" > return
|
|
1135
|
-
? binding.length
|
|
1136
|
-
: automationUtils.stringSplit(binding).length
|
|
1091
|
+
<span class="cstat-no" title="statement not covered" > return 1</span>
|
|
1137
1092
|
}
|
|
1138
1093
|
|
|
1139
1094
|
/**
|
|
@@ -1189,7 +1144,7 @@ class Orchestrator {
|
|
|
1189
1144
|
return step
|
|
1190
1145
|
}
|
|
1191
1146
|
|
|
1192
|
-
|
|
1147
|
+
<span class="fstat-no" title="function not covered" > async g</span>etMetadata(): Promise<AutomationMetadata> {
|
|
1193
1148
|
const metadataId = <span class="cstat-no" title="statement not covered" >generateAutomationMetadataID(this._automation._id!)</span>
|
|
1194
1149
|
const db = <span class="cstat-no" title="statement not covered" >context.getAppDB()</span>
|
|
1195
1150
|
let metadata: AutomationMetadata
|
|
@@ -1204,7 +1159,7 @@ class Orchestrator {
|
|
|
1204
1159
|
<span class="cstat-no" title="statement not covered" > return metadata</span>
|
|
1205
1160
|
}
|
|
1206
1161
|
|
|
1207
|
-
|
|
1162
|
+
<span class="fstat-no" title="function not covered" > async s</span>topCron(reason: string) {
|
|
1208
1163
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!this._job.opts.repeat) {</span>
|
|
1209
1164
|
<span class="cstat-no" title="statement not covered" > return</span>
|
|
1210
1165
|
}
|
|
@@ -1226,7 +1181,7 @@ class Orchestrator {
|
|
|
1226
1181
|
<span class="cstat-no" title="statement not covered" > await storeLog(automation, this.executionOutput)</span>
|
|
1227
1182
|
}
|
|
1228
1183
|
|
|
1229
|
-
|
|
1184
|
+
<span class="fstat-no" title="function not covered" > async c</span>heckIfShouldStop(metadata: AutomationMetadata): Promise<boolean> {
|
|
1230
1185
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!metadata.errorCount || !this._job.opts.repeat) {</span>
|
|
1231
1186
|
<span class="cstat-no" title="statement not covered" > return false</span>
|
|
1232
1187
|
}
|
|
@@ -1237,7 +1192,7 @@ class Orchestrator {
|
|
|
1237
1192
|
<span class="cstat-no" title="statement not covered" > return false</span>
|
|
1238
1193
|
}
|
|
1239
1194
|
|
|
1240
|
-
|
|
1195
|
+
<span class="fstat-no" title="function not covered" > async u</span>pdateMetadata(metadata: AutomationMetadata) {
|
|
1241
1196
|
const output = <span class="cstat-no" title="statement not covered" >this.executionOutput,</span>
|
|
1242
1197
|
automation = <span class="cstat-no" title="statement not covered" >this._automation</span>
|
|
1243
1198
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!output || !isRecurring(automation)) {</span>
|
|
@@ -1315,6 +1270,8 @@ class Orchestrator {
|
|
|
1315
1270
|
}
|
|
1316
1271
|
|
|
1317
1272
|
async execute() {
|
|
1273
|
+
// this will retrieve from context created at start of thread
|
|
1274
|
+
this._context.env = await sdkUtils.getEnvironmentVariables()
|
|
1318
1275
|
let automation = this._automation
|
|
1319
1276
|
let stopped = false
|
|
1320
1277
|
let loopStep: AutomationStep | undefined = undefined
|
|
@@ -1325,7 +1282,7 @@ class Orchestrator {
|
|
|
1325
1282
|
let metadata
|
|
1326
1283
|
let wasLoopStep = false
|
|
1327
1284
|
// check if this is a recurring automation,
|
|
1328
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (isProdAppID(this._appId) && isRecurring(automation)) {
|
|
1285
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (isProdAppID(this._appId) && <span class="branch-1 cbranch-no" title="branch not covered" >isRecurring(automation)) {</span>
|
|
1329
1286
|
<span class="cstat-no" title="statement not covered" > metadata = await this.getMetadata()</span>
|
|
1330
1287
|
const shouldStop = <span class="cstat-no" title="statement not covered" >await this.checkIfShouldStop(metadata)</span>
|
|
1331
1288
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (shouldStop) {</span>
|
|
@@ -1339,28 +1296,28 @@ class Orchestrator {
|
|
|
1339
1296
|
iterations = 1,
|
|
1340
1297
|
iterationCount = 0
|
|
1341
1298
|
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1299
|
+
if (step.stepId === LOOP_STEP_ID) {
|
|
1300
|
+
loopStep = step
|
|
1301
|
+
loopStepNumber = stepCount
|
|
1302
|
+
continue
|
|
1346
1303
|
}
|
|
1347
1304
|
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1305
|
+
if (loopStep) {
|
|
1306
|
+
input = await processObject(loopStep.inputs, this._context)
|
|
1307
|
+
iterations = getLoopIterations(loopStep as LoopStep, input)
|
|
1351
1308
|
}
|
|
1352
1309
|
for (let index = 0; index < iterations; index++) {
|
|
1353
1310
|
let originalStepInput = cloneDeep(step.inputs)
|
|
1354
1311
|
// Handle if the user has set a max iteration count or if it reaches the max limit set by us
|
|
1355
|
-
|
|
1356
|
-
let newInput: any =
|
|
1312
|
+
if (loopStep && input.binding) {
|
|
1313
|
+
let newInput: any = await processObject(
|
|
1357
1314
|
loopStep.inputs,
|
|
1358
1315
|
cloneDeep(this._context)
|
|
1359
1316
|
)
|
|
1360
1317
|
|
|
1361
|
-
let tempOutput =
|
|
1362
|
-
|
|
1363
|
-
|
|
1318
|
+
let tempOutput = { items: loopSteps, iterations: iterationCount }
|
|
1319
|
+
try {
|
|
1320
|
+
newInput.binding = automationUtils.typecastForLooping(
|
|
1364
1321
|
loopStep as LoopStep,
|
|
1365
1322
|
newInput
|
|
1366
1323
|
)
|
|
@@ -1374,23 +1331,23 @@ class Orchestrator {
|
|
|
1374
1331
|
<span class="cstat-no" title="statement not covered" > break</span>
|
|
1375
1332
|
}
|
|
1376
1333
|
|
|
1377
|
-
let item
|
|
1378
|
-
<span class="
|
|
1334
|
+
let item = []
|
|
1335
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
1379
1336
|
typeof loopStep.inputs.binding === "string" &&
|
|
1380
1337
|
loopStep.inputs.option === "String"
|
|
1381
1338
|
) {
|
|
1382
1339
|
<span class="cstat-no" title="statement not covered" > item = automationUtils.stringSplit(newInput.binding)</span>
|
|
1383
|
-
} else {
|
|
1340
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(loopStep.inputs.binding)) {
|
|
1384
1341
|
<span class="cstat-no" title="statement not covered" > item = loopStep.inputs.binding</span>
|
|
1385
1342
|
}
|
|
1386
|
-
|
|
1343
|
+
this._context.steps[loopStepNumber] = {
|
|
1387
1344
|
currentItem: item[index],
|
|
1388
1345
|
}
|
|
1389
1346
|
|
|
1390
1347
|
// The "Loop" binding in the front end is "fake", so replace it here so the context can understand it
|
|
1391
1348
|
// Pretty hacky because we need to account for the row object
|
|
1392
|
-
|
|
1393
|
-
<span class="
|
|
1349
|
+
for (let [key, value] of Object.entries(originalStepInput)) {
|
|
1350
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (typeof value === "object") {
|
|
1394
1351
|
<span class="cstat-no" title="statement not covered" > for (let [innerKey, innerValue] of Object.entries(</span>
|
|
1395
1352
|
originalStepInput[key]
|
|
1396
1353
|
)) {
|
|
@@ -1413,15 +1370,15 @@ class Orchestrator {
|
|
|
1413
1370
|
}
|
|
1414
1371
|
}
|
|
1415
1372
|
} else {
|
|
1416
|
-
|
|
1417
|
-
|
|
1373
|
+
if (typeof value === "string") {
|
|
1374
|
+
originalStepInput[key] = automationUtils.substituteLoopStep(
|
|
1418
1375
|
value,
|
|
1419
1376
|
`steps.${loopStepNumber}`
|
|
1420
1377
|
)
|
|
1421
1378
|
}
|
|
1422
1379
|
}
|
|
1423
1380
|
}
|
|
1424
|
-
|
|
1381
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
1425
1382
|
index === env.AUTOMATION_MAX_ITERATIONS ||
|
|
1426
1383
|
index === parseInt(loopStep.inputs.iterations)
|
|
1427
1384
|
) {
|
|
@@ -1434,17 +1391,17 @@ class Orchestrator {
|
|
|
1434
1391
|
<span class="cstat-no" title="statement not covered" > break</span>
|
|
1435
1392
|
}
|
|
1436
1393
|
|
|
1437
|
-
let isFailure =
|
|
1438
|
-
const currentItem =
|
|
1439
|
-
<span class="
|
|
1440
|
-
<span class="cstat-no" title="statement not covered" > isFailure = Object.keys(currentItem).some(<span class="fstat-no" title="function not covered" >value
|
|
1394
|
+
let isFailure = false
|
|
1395
|
+
const currentItem = this._context.steps[loopStepNumber]?.currentItem
|
|
1396
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (currentItem && <span class="branch-1 cbranch-no" title="branch not covered" >typeof currentItem === "object") {</span>
|
|
1397
|
+
<span class="cstat-no" title="statement not covered" > isFailure = Object.keys(currentItem).some(<span class="fstat-no" title="function not covered" >value => {</span></span>
|
|
1441
1398
|
<span class="cstat-no" title="statement not covered" > return currentItem[value] === loopStep?.inputs.failure</span>
|
|
1442
1399
|
})
|
|
1443
1400
|
} else {
|
|
1444
|
-
<span class="
|
|
1401
|
+
isFailure = currentItem && <span class="branch-1 cbranch-no" title="branch not covered" >currentItem === loopStep.inputs.failure</span>
|
|
1445
1402
|
}
|
|
1446
1403
|
|
|
1447
|
-
|
|
1404
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (isFailure) {
|
|
1448
1405
|
<span class="cstat-no" title="statement not covered" > this.updateContextAndOutput(loopStepNumber, step, tempOutput, {</span>
|
|
1449
1406
|
status: AutomationErrors.FAILURE_CONDITION,
|
|
1450
1407
|
success: false,
|
|
@@ -1486,8 +1443,8 @@ class Orchestrator {
|
|
|
1486
1443
|
})
|
|
1487
1444
|
<span class="cstat-no" title="statement not covered" > continue</span>
|
|
1488
1445
|
}
|
|
1489
|
-
|
|
1490
|
-
|
|
1446
|
+
if (loopStep && loopSteps) {
|
|
1447
|
+
loopSteps.push(outputs)
|
|
1491
1448
|
} else {
|
|
1492
1449
|
this.updateExecutionOutput(
|
|
1493
1450
|
step.id,
|
|
@@ -1501,45 +1458,45 @@ class Orchestrator {
|
|
|
1501
1458
|
<span class="cstat-no" title="statement not covered" > return err</span>
|
|
1502
1459
|
}
|
|
1503
1460
|
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1461
|
+
if (loopStep) {
|
|
1462
|
+
iterationCount++
|
|
1463
|
+
if (index === iterations - 1) {
|
|
1464
|
+
loopStep = undefined
|
|
1465
|
+
this._context.steps.splice(loopStepNumber, 1)
|
|
1466
|
+
break
|
|
1510
1467
|
}
|
|
1511
1468
|
}
|
|
1512
1469
|
}
|
|
1513
1470
|
|
|
1514
1471
|
// Delete the step after the loop step as it's irrelevant, since information is included
|
|
1515
1472
|
// in the loop step
|
|
1516
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (wasLoopStep) {
|
|
1473
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (wasLoopStep && <span class="branch-1 cbranch-no" title="branch not covered" >!loopStep) {</span>
|
|
1517
1474
|
<span class="cstat-no" title="statement not covered" > this._context.steps.splice(loopStepNumber + 1, 1)</span>
|
|
1518
1475
|
<span class="cstat-no" title="statement not covered" > wasLoopStep = false</span>
|
|
1519
1476
|
}
|
|
1520
1477
|
|
|
1521
|
-
|
|
1522
|
-
let tempOutput =
|
|
1478
|
+
if (loopSteps && loopSteps.length) {
|
|
1479
|
+
let tempOutput = {
|
|
1523
1480
|
success: true,
|
|
1524
1481
|
items: loopSteps,
|
|
1525
1482
|
iterations: iterationCount,
|
|
1526
1483
|
}
|
|
1527
|
-
|
|
1484
|
+
this.executionOutput.steps.splice(loopStepNumber + 1, 0, {
|
|
1528
1485
|
id: step.id,
|
|
1529
1486
|
stepId: step.stepId,
|
|
1530
1487
|
outputs: tempOutput,
|
|
1531
1488
|
inputs: step.inputs,
|
|
1532
1489
|
})
|
|
1533
|
-
|
|
1490
|
+
this._context.steps[loopStepNumber] = tempOutput
|
|
1534
1491
|
|
|
1535
|
-
|
|
1536
|
-
|
|
1492
|
+
wasLoopStep = true
|
|
1493
|
+
loopSteps = []
|
|
1537
1494
|
}
|
|
1538
1495
|
}
|
|
1539
1496
|
|
|
1540
1497
|
// store the logs for the automation run
|
|
1541
1498
|
await storeLog(this._automation, this.executionOutput)
|
|
1542
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (isProdAppID(this._appId) && <span class="branch-1 cbranch-no" title="branch not covered" >isRecurring(automation)
|
|
1499
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (isProdAppID(this._appId) && <span class="branch-1 cbranch-no" title="branch not covered" >isRecurring(automation) && <span class="branch-2 cbranch-no" title="branch not covered" >m</span>etadata) {</span>
|
|
1543
1500
|
<span class="cstat-no" title="statement not covered" > await this.updateMetadata(metadata)</span>
|
|
1544
1501
|
}
|
|
1545
1502
|
return this.executionOutput
|
|
@@ -1562,14 +1519,18 @@ export function execute(job: Job, callback: WorkerCallback) {
|
|
|
1562
1519
|
})
|
|
1563
1520
|
}
|
|
1564
1521
|
|
|
1565
|
-
export const removeStalled = <span class="fstat-no" title="function not covered" >async (j</span>ob: Job) =>
|
|
1522
|
+
export const removeStalled = <span class="fstat-no" title="function not covered" >async (j</span>ob: Job) => {
|
|
1566
1523
|
const appId = <span class="cstat-no" title="statement not covered" >job.data.event.appId</span>
|
|
1567
1524
|
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (!appId) {</span>
|
|
1568
1525
|
<span class="cstat-no" title="statement not covered" > throw new Error("Unable to execute, event doesn't contain app ID.")</span>
|
|
1569
1526
|
}
|
|
1570
|
-
<span class="cstat-no" title="statement not covered" > await context.doInAppContext(appId, <span class="fstat-no" title="function not covered" >async ()
|
|
1571
|
-
const
|
|
1572
|
-
|
|
1527
|
+
<span class="cstat-no" title="statement not covered" > await context.doInAppContext(appId, <span class="fstat-no" title="function not covered" >async () => {</span></span>
|
|
1528
|
+
const envVars = <span class="cstat-no" title="statement not covered" >await sdkUtils.getEnvironmentVariables()</span>
|
|
1529
|
+
// put into automation thread for whole context
|
|
1530
|
+
<span class="cstat-no" title="statement not covered" > await context.doInEnvironmentContext(envVars, <span class="fstat-no" title="function not covered" >async () => {</span></span>
|
|
1531
|
+
const automationOrchestrator = <span class="cstat-no" title="statement not covered" >new Orchestrator(job)</span>
|
|
1532
|
+
<span class="cstat-no" title="statement not covered" > await automationOrchestrator.stopCron("stalled")</span>
|
|
1533
|
+
})
|
|
1573
1534
|
})
|
|
1574
1535
|
}
|
|
1575
1536
|
</pre></td></tr></table></pre>
|
|
@@ -1579,7 +1540,7 @@ export const removeStalled = <span class="fstat-no" title="function not covered"
|
|
|
1579
1540
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1580
1541
|
Code coverage generated by
|
|
1581
1542
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1582
|
-
at
|
|
1543
|
+
at Mon Feb 06 2023 09:24:58 GMT+0000 (Coordinated Universal Time)
|
|
1583
1544
|
</div>
|
|
1584
1545
|
<script src="../../prettify.js"></script>
|
|
1585
1546
|
<script>
|