@budibase/server 1.0.135 → 1.0.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/builder/assets/{index.1a219cf7.js → index.a48ac266.js} +112 -112
- package/builder/index.html +1 -1
- package/coverage/clover.xml +13 -9
- package/coverage/coverage-final.json +2 -2
- package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
- package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
- package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
- package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
- package/coverage/lcov-report/api/controllers/component.js.html +1 -1
- package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
- package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
- package/coverage/lcov-report/api/controllers/index.html +1 -1
- package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
- package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
- package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
- package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
- package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
- package/coverage/lcov-report/api/controllers/query/index.html +1 -1
- package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
- package/coverage/lcov-report/api/controllers/role.js.html +1 -1
- package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/index.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
- package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
- package/coverage/lcov-report/api/controllers/script.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.html +1 -1
- package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
- package/coverage/lcov-report/api/controllers/user.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.html +1 -1
- package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
- package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
- package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
- package/coverage/lcov-report/api/index.html +1 -1
- package/coverage/lcov-report/api/index.js.html +1 -1
- package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
- package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
- package/coverage/lcov-report/api/routes/auth.js.html +1 -1
- package/coverage/lcov-report/api/routes/automation.js.html +1 -1
- package/coverage/lcov-report/api/routes/backup.js.html +1 -1
- package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
- package/coverage/lcov-report/api/routes/component.js.html +1 -1
- package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
- package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
- package/coverage/lcov-report/api/routes/dev.js.html +1 -1
- package/coverage/lcov-report/api/routes/index.html +1 -1
- package/coverage/lcov-report/api/routes/integration.js.html +1 -1
- package/coverage/lcov-report/api/routes/layout.js.html +1 -1
- package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
- package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
- package/coverage/lcov-report/api/routes/permission.js.html +1 -1
- package/coverage/lcov-report/api/routes/query.js.html +1 -1
- package/coverage/lcov-report/api/routes/role.js.html +1 -1
- package/coverage/lcov-report/api/routes/routing.js.html +1 -1
- package/coverage/lcov-report/api/routes/screen.js.html +1 -1
- package/coverage/lcov-report/api/routes/script.js.html +1 -1
- package/coverage/lcov-report/api/routes/table.js.html +1 -1
- package/coverage/lcov-report/api/routes/templates.js.html +1 -1
- package/coverage/lcov-report/api/routes/user.js.html +1 -1
- package/coverage/lcov-report/api/routes/utils/index.html +1 -1
- package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
- package/coverage/lcov-report/api/routes/view.js.html +1 -1
- package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/actions.js.html +1 -1
- package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
- package/coverage/lcov-report/automations/bullboard.js.html +1 -1
- package/coverage/lcov-report/automations/index.html +1 -1
- package/coverage/lcov-report/automations/index.js.html +1 -1
- package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
- package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
- package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
- package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
- package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
- package/coverage/lcov-report/automations/steps/index.html +1 -1
- package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
- package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
- package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
- package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
- package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
- package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
- package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
- package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
- package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
- package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
- package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
- package/coverage/lcov-report/automations/triggers.js.html +1 -1
- package/coverage/lcov-report/constants/index.html +1 -1
- package/coverage/lcov-report/constants/index.js.html +1 -1
- package/coverage/lcov-report/constants/layouts.js.html +1 -1
- package/coverage/lcov-report/constants/screens.js.html +1 -1
- package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
- package/coverage/lcov-report/db/index.html +1 -1
- package/coverage/lcov-report/db/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.html +1 -1
- package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
- package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
- package/coverage/lcov-report/db/newid.js.html +1 -1
- package/coverage/lcov-report/db/utils.js.html +1 -1
- package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
- package/coverage/lcov-report/events/index.html +1 -1
- package/coverage/lcov-report/events/index.js.html +1 -1
- package/coverage/lcov-report/events/utils.js.html +1 -1
- package/coverage/lcov-report/index.html +15 -15
- package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
- package/coverage/lcov-report/integrations/tests/index.html +1 -1
- package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
- package/coverage/lcov-report/middleware/builder.js.html +1 -1
- package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
- package/coverage/lcov-report/middleware/index.html +1 -1
- package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
- package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
- package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
- package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
- package/coverage/lcov-report/middleware/utils.js.html +1 -1
- package/coverage/lcov-report/threads/automation.js.html +20 -26
- package/coverage/lcov-report/threads/index.html +22 -22
- package/coverage/lcov-report/threads/query.js.html +16 -19
- package/coverage/lcov-report/threads/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
- package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
- package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
- package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
- package/coverage/lcov-report/utilities/global.js.html +1 -1
- package/coverage/lcov-report/utilities/index.html +1 -1
- package/coverage/lcov-report/utilities/index.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
- package/coverage/lcov-report/utilities/queue/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.html +1 -1
- package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
- package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
- package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
- package/coverage/lcov-report/utilities/security.js.html +1 -1
- package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
- package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
- package/coverage/lcov-report/utilities/users.js.html +1 -1
- package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
- package/coverage/lcov.info +15 -19
- package/dist/integrations/microsoftSqlServer.js +1 -6
- package/dist/integrations/mysql.js +16 -14
- package/dist/integrations/oracle.js +2 -6
- package/dist/integrations/postgres.js +1 -6
- package/dist/integrations/utils.js +15 -5
- package/dist/package.json +5 -5
- package/dist/threads/automation.js +9 -10
- package/dist/threads/query.js +7 -7
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utilities/fileSystem/index.js +11 -7
- package/package.json +6 -6
- package/src/integrations/microsoftSqlServer.ts +1 -3
- package/src/integrations/mysql.ts +18 -12
- package/src/integrations/oracle.ts +3 -3
- package/src/integrations/postgres.ts +1 -2
- package/src/integrations/utils.ts +16 -5
- package/src/threads/automation.js +9 -11
- package/src/threads/query.js +7 -8
- package/src/utilities/fileSystem/index.js +16 -8
|
@@ -307,7 +307,7 @@ exports.getUniqueRows = async appIds => {
|
|
|
307
307
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
308
308
|
Code coverage generated by
|
|
309
309
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
310
|
-
at Tue May 03 2022
|
|
310
|
+
at Tue May 03 2022 16:38:20 GMT+0000 (Coordinated Universal Time)
|
|
311
311
|
</div>
|
|
312
312
|
<script src="../../prettify.js"></script>
|
|
313
313
|
<script>
|
|
@@ -124,7 +124,7 @@ function <span class="fstat-no" title="function not covered" >resetQuotasIfRequi
|
|
|
124
124
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
125
125
|
Code coverage generated by
|
|
126
126
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
127
|
-
at Tue May 03 2022
|
|
127
|
+
at Tue May 03 2022 16:38:20 GMT+0000 (Coordinated Universal Time)
|
|
128
128
|
</div>
|
|
129
129
|
<script src="../../prettify.js"></script>
|
|
130
130
|
<script>
|
|
@@ -142,7 +142,7 @@ exports.getFullUser = async (ctx, userId) => {
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at Tue May 03 2022
|
|
145
|
+
at Tue May 03 2022 16:38:20 GMT+0000 (Coordinated Universal Time)
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -487,7 +487,7 @@ exports.readGlobalUser = <span class="fstat-no" title="function not covered" >as
|
|
|
487
487
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
488
488
|
Code coverage generated by
|
|
489
489
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
490
|
-
at Tue May 03 2022
|
|
490
|
+
at Tue May 03 2022 16:38:20 GMT+0000 (Coordinated Universal Time)
|
|
491
491
|
</div>
|
|
492
492
|
<script src="../prettify.js"></script>
|
|
493
493
|
<script>
|
package/coverage/lcov.info
CHANGED
|
@@ -6522,10 +6522,8 @@ FN:99,(anonymous_6)
|
|
|
6522
6522
|
FN:222,(anonymous_7)
|
|
6523
6523
|
FN:287,(anonymous_8)
|
|
6524
6524
|
FN:289,(anonymous_9)
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
FNF:12
|
|
6528
|
-
FNH:10
|
|
6525
|
+
FNF:10
|
|
6526
|
+
FNH:9
|
|
6529
6527
|
FNDA:6,(anonymous_0)
|
|
6530
6528
|
FNDA:6,(anonymous_1)
|
|
6531
6529
|
FNDA:5,(anonymous_2)
|
|
@@ -6536,8 +6534,6 @@ FNDA:6,(anonymous_6)
|
|
|
6536
6534
|
FNDA:5,(anonymous_7)
|
|
6537
6535
|
FNDA:6,(anonymous_8)
|
|
6538
6536
|
FNDA:6,(anonymous_9)
|
|
6539
|
-
FNDA:6,(anonymous_10)
|
|
6540
|
-
FNDA:0,(anonymous_11)
|
|
6541
6537
|
DA:1,3
|
|
6542
6538
|
DA:2,3
|
|
6543
6539
|
DA:3,3
|
|
@@ -6590,7 +6586,9 @@ DA:92,0
|
|
|
6590
6586
|
DA:100,6
|
|
6591
6587
|
DA:101,6
|
|
6592
6588
|
DA:102,6
|
|
6589
|
+
DA:103,6
|
|
6593
6590
|
DA:105,6
|
|
6591
|
+
DA:106,6
|
|
6594
6592
|
DA:107,6
|
|
6595
6593
|
DA:108,6
|
|
6596
6594
|
DA:109,5
|
|
@@ -6668,10 +6666,11 @@ DA:288,6
|
|
|
6668
6666
|
DA:289,6
|
|
6669
6667
|
DA:290,6
|
|
6670
6668
|
DA:294,6
|
|
6671
|
-
DA:
|
|
6672
|
-
DA:
|
|
6673
|
-
|
|
6674
|
-
|
|
6669
|
+
DA:295,6
|
|
6670
|
+
DA:296,6
|
|
6671
|
+
DA:298,0
|
|
6672
|
+
LF:135
|
|
6673
|
+
LH:82
|
|
6675
6674
|
BRDA:26,0,0,0
|
|
6676
6675
|
BRDA:28,1,0,4
|
|
6677
6676
|
BRDA:28,1,1,2
|
|
@@ -6745,10 +6744,8 @@ FN:162,(anonymous_7)
|
|
|
6745
6744
|
FN:171,(anonymous_8)
|
|
6746
6745
|
FN:193,(anonymous_9)
|
|
6747
6746
|
FN:194,(anonymous_10)
|
|
6748
|
-
|
|
6749
|
-
|
|
6750
|
-
FNF:13
|
|
6751
|
-
FNH:12
|
|
6747
|
+
FNF:11
|
|
6748
|
+
FNH:10
|
|
6752
6749
|
FNDA:15,(anonymous_0)
|
|
6753
6750
|
FNDA:16,(anonymous_1)
|
|
6754
6751
|
FNDA:13,(anonymous_2)
|
|
@@ -6760,8 +6757,6 @@ FNDA:6,(anonymous_7)
|
|
|
6760
6757
|
FNDA:6,(anonymous_8)
|
|
6761
6758
|
FNDA:10,(anonymous_9)
|
|
6762
6759
|
FNDA:10,(anonymous_10)
|
|
6763
|
-
FNDA:8,(anonymous_11)
|
|
6764
|
-
FNDA:2,(anonymous_12)
|
|
6765
6760
|
DA:1,2
|
|
6766
6761
|
DA:2,2
|
|
6767
6762
|
DA:3,2
|
|
@@ -6859,10 +6854,11 @@ DA:193,2
|
|
|
6859
6854
|
DA:194,10
|
|
6860
6855
|
DA:195,10
|
|
6861
6856
|
DA:196,10
|
|
6857
|
+
DA:197,10
|
|
6862
6858
|
DA:198,8
|
|
6863
|
-
DA:
|
|
6864
|
-
LF:
|
|
6865
|
-
LH:
|
|
6859
|
+
DA:200,2
|
|
6860
|
+
LF:100
|
|
6861
|
+
LH:92
|
|
6866
6862
|
BRDA:14,0,0,10
|
|
6867
6863
|
BRDA:34,1,0,2
|
|
6868
6864
|
BRDA:34,1,1,14
|
|
@@ -201,12 +201,7 @@ var MSSQLModule;
|
|
|
201
201
|
if (typeof name !== "string") {
|
|
202
202
|
continue;
|
|
203
203
|
}
|
|
204
|
-
|
|
205
|
-
schema[name] = {
|
|
206
|
-
autocolumn: !!autoColumns.find((col) => col === name),
|
|
207
|
-
name: name,
|
|
208
|
-
type,
|
|
209
|
-
};
|
|
204
|
+
schema[name] = Object.assign({ autocolumn: !!autoColumns.find((col) => col === name), name: name }, (0, utils_1.convertSqlType)(def.DATA_TYPE));
|
|
210
205
|
}
|
|
211
206
|
tables[tableName] = {
|
|
212
207
|
_id: (0, utils_1.buildExternalTableId)(datasourceId, tableName),
|
|
@@ -88,7 +88,7 @@ var MySQLModule;
|
|
|
88
88
|
}
|
|
89
89
|
// if not a number, see if it is a date - important to do in this order as any
|
|
90
90
|
// integer will be considered a valid date
|
|
91
|
-
else if ((0, dayjs_1.default)(binding).isValid()) {
|
|
91
|
+
else if (/^\d/.test(binding) && (0, dayjs_1.default)(binding).isValid()) {
|
|
92
92
|
bindings[i] = (0, dayjs_1.default)(binding).toDate();
|
|
93
93
|
}
|
|
94
94
|
}
|
|
@@ -129,18 +129,25 @@ var MySQLModule;
|
|
|
129
129
|
yield this.client.end();
|
|
130
130
|
});
|
|
131
131
|
}
|
|
132
|
-
internalQuery(query,
|
|
132
|
+
internalQuery(query, opts = {
|
|
133
|
+
connect: true,
|
|
134
|
+
disableCoercion: false,
|
|
135
|
+
}) {
|
|
133
136
|
return __awaiter(this, void 0, void 0, function* () {
|
|
134
137
|
try {
|
|
135
|
-
if (connect) {
|
|
138
|
+
if (opts === null || opts === void 0 ? void 0 : opts.connect) {
|
|
136
139
|
yield this.connect();
|
|
137
140
|
}
|
|
141
|
+
const baseBindings = query.bindings || [];
|
|
142
|
+
const bindings = (opts === null || opts === void 0 ? void 0 : opts.disableCoercion)
|
|
143
|
+
? baseBindings
|
|
144
|
+
: bindingTypeCoerce(baseBindings);
|
|
138
145
|
// Node MySQL is callback based, so we must wrap our call in a promise
|
|
139
|
-
const response = yield this.client.query(query.sql,
|
|
146
|
+
const response = yield this.client.query(query.sql, bindings);
|
|
140
147
|
return response[0];
|
|
141
148
|
}
|
|
142
149
|
finally {
|
|
143
|
-
if (connect) {
|
|
150
|
+
if (opts === null || opts === void 0 ? void 0 : opts.connect) {
|
|
144
151
|
yield this.disconnect();
|
|
145
152
|
}
|
|
146
153
|
}
|
|
@@ -153,13 +160,13 @@ var MySQLModule;
|
|
|
153
160
|
yield this.connect();
|
|
154
161
|
try {
|
|
155
162
|
// get the tables first
|
|
156
|
-
const tablesResp = yield this.internalQuery({ sql: "SHOW TABLES;" }, false);
|
|
163
|
+
const tablesResp = yield this.internalQuery({ sql: "SHOW TABLES;" }, { connect: false });
|
|
157
164
|
const tableNames = tablesResp.map((obj) => obj[`Tables_in_${database}`] ||
|
|
158
165
|
obj[`Tables_in_${database.toLowerCase()}`]);
|
|
159
166
|
for (let tableName of tableNames) {
|
|
160
167
|
const primaryKeys = [];
|
|
161
168
|
const schema = {};
|
|
162
|
-
const descResp = yield this.internalQuery({ sql: `DESCRIBE \`${tableName}\`;` }, false);
|
|
169
|
+
const descResp = yield this.internalQuery({ sql: `DESCRIBE \`${tableName}\`;` }, { connect: false });
|
|
163
170
|
for (let column of descResp) {
|
|
164
171
|
const columnName = column.Field;
|
|
165
172
|
if (column.Key === "PRI" &&
|
|
@@ -172,12 +179,7 @@ var MySQLModule;
|
|
|
172
179
|
const isAuto = typeof column.Extra === "string" &&
|
|
173
180
|
(column.Extra === "auto_increment" ||
|
|
174
181
|
column.Extra.toLowerCase().includes("generated"));
|
|
175
|
-
schema[columnName] = {
|
|
176
|
-
name: columnName,
|
|
177
|
-
autocolumn: isAuto,
|
|
178
|
-
type: (0, utils_1.convertSqlType)(column.Type),
|
|
179
|
-
constraints,
|
|
180
|
-
};
|
|
182
|
+
schema[columnName] = Object.assign({ name: columnName, autocolumn: isAuto, constraints }, (0, utils_1.convertSqlType)(column.Type));
|
|
181
183
|
}
|
|
182
184
|
if (!tables[tableName]) {
|
|
183
185
|
tables[tableName] = {
|
|
@@ -224,7 +226,7 @@ var MySQLModule;
|
|
|
224
226
|
return __awaiter(this, void 0, void 0, function* () {
|
|
225
227
|
yield this.connect();
|
|
226
228
|
try {
|
|
227
|
-
const queryFn = (query) => this.internalQuery(query, false);
|
|
229
|
+
const queryFn = (query) => this.internalQuery(query, { connect: false, disableCoercion: true });
|
|
228
230
|
return yield this.queryWithReturning(json, queryFn);
|
|
229
231
|
}
|
|
230
232
|
finally {
|
|
@@ -202,7 +202,7 @@ var OracleModule;
|
|
|
202
202
|
}
|
|
203
203
|
internalConvertType(column) {
|
|
204
204
|
if (this.isBooleanType(column)) {
|
|
205
|
-
return constants_1.FieldTypes.BOOLEAN;
|
|
205
|
+
return { type: constants_1.FieldTypes.BOOLEAN };
|
|
206
206
|
}
|
|
207
207
|
return (0, utils_1.convertSqlType)(column.type);
|
|
208
208
|
}
|
|
@@ -240,11 +240,7 @@ var OracleModule;
|
|
|
240
240
|
const columnName = oracleColumn.name;
|
|
241
241
|
let fieldSchema = table.schema[columnName];
|
|
242
242
|
if (!fieldSchema) {
|
|
243
|
-
fieldSchema = {
|
|
244
|
-
autocolumn: OracleIntegration.isAutoColumn(oracleColumn),
|
|
245
|
-
name: columnName,
|
|
246
|
-
type: this.internalConvertType(oracleColumn),
|
|
247
|
-
};
|
|
243
|
+
fieldSchema = Object.assign({ autocolumn: OracleIntegration.isAutoColumn(oracleColumn), name: columnName }, this.internalConvertType(oracleColumn));
|
|
248
244
|
table.schema[columnName] = fieldSchema;
|
|
249
245
|
}
|
|
250
246
|
// iterate each constraint on the column
|
|
@@ -190,7 +190,6 @@ var PostgresModule;
|
|
|
190
190
|
schema: {},
|
|
191
191
|
};
|
|
192
192
|
}
|
|
193
|
-
const type = (0, utils_1.convertSqlType)(column.data_type);
|
|
194
193
|
const identity = !!(column.identity_generation ||
|
|
195
194
|
column.identity_start ||
|
|
196
195
|
column.identity_increment);
|
|
@@ -198,11 +197,7 @@ var PostgresModule;
|
|
|
198
197
|
column.column_default.startsWith("nextval");
|
|
199
198
|
const isGenerated = column.is_generated && column.is_generated !== "NEVER";
|
|
200
199
|
const isAuto = hasDefault || identity || isGenerated;
|
|
201
|
-
tables[tableName].schema[columnName] = {
|
|
202
|
-
autocolumn: isAuto,
|
|
203
|
-
name: columnName,
|
|
204
|
-
type,
|
|
205
|
-
};
|
|
200
|
+
tables[tableName].schema[columnName] = Object.assign({ autocolumn: isAuto, name: columnName }, (0, utils_1.convertSqlType)(column.data_type));
|
|
206
201
|
}
|
|
207
202
|
const final = (0, utils_1.finaliseExternalTables)(tables, entities);
|
|
208
203
|
this.tables = final.tables;
|
|
@@ -33,6 +33,8 @@ const SQL_DATE_TYPE_MAP = {
|
|
|
33
33
|
smalldatetime: constants_1.FieldTypes.DATETIME,
|
|
34
34
|
date: constants_1.FieldTypes.DATETIME,
|
|
35
35
|
};
|
|
36
|
+
const SQL_DATE_ONLY_TYPES = ["date"];
|
|
37
|
+
const SQL_TIME_ONLY_TYPES = ["time"];
|
|
36
38
|
const SQL_STRING_TYPE_MAP = {
|
|
37
39
|
varchar: constants_1.FieldTypes.STRING,
|
|
38
40
|
char: constants_1.FieldTypes.STRING,
|
|
@@ -73,9 +75,9 @@ function breakExternalTableId(tableId) {
|
|
|
73
75
|
return {};
|
|
74
76
|
}
|
|
75
77
|
const parts = tableId.split(DOUBLE_SEPARATOR);
|
|
76
|
-
let
|
|
78
|
+
let datasourceId = parts.shift();
|
|
77
79
|
// if they need joined
|
|
78
|
-
let
|
|
80
|
+
let tableName = parts.join(DOUBLE_SEPARATOR);
|
|
79
81
|
return { datasourceId, tableName };
|
|
80
82
|
}
|
|
81
83
|
exports.breakExternalTableId = breakExternalTableId;
|
|
@@ -124,12 +126,20 @@ function breakRowIdField(_id) {
|
|
|
124
126
|
}
|
|
125
127
|
exports.breakRowIdField = breakRowIdField;
|
|
126
128
|
function convertSqlType(type) {
|
|
129
|
+
let foundType = constants_1.FieldTypes.STRING;
|
|
130
|
+
const lcType = type.toLowerCase();
|
|
127
131
|
for (let [external, internal] of Object.entries(SQL_TYPE_MAP)) {
|
|
128
|
-
if (
|
|
129
|
-
|
|
132
|
+
if (lcType.includes(external)) {
|
|
133
|
+
foundType = internal;
|
|
134
|
+
break;
|
|
130
135
|
}
|
|
131
136
|
}
|
|
132
|
-
|
|
137
|
+
const schema = { type: foundType };
|
|
138
|
+
if (foundType === constants_1.FieldTypes.DATETIME) {
|
|
139
|
+
schema.dateOnly = SQL_DATE_ONLY_TYPES.includes(lcType);
|
|
140
|
+
schema.timeOnly = SQL_TIME_ONLY_TYPES.includes(lcType);
|
|
141
|
+
}
|
|
142
|
+
return schema;
|
|
133
143
|
}
|
|
134
144
|
exports.convertSqlType = convertSqlType;
|
|
135
145
|
function getSqlQuery(query) {
|
package/dist/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@budibase/server",
|
|
3
3
|
"email": "hi@budibase.com",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.137",
|
|
5
5
|
"description": "Budibase Web Server",
|
|
6
6
|
"main": "src/index.ts",
|
|
7
7
|
"repository": {
|
|
@@ -68,10 +68,10 @@
|
|
|
68
68
|
"license": "GPL-3.0",
|
|
69
69
|
"dependencies": {
|
|
70
70
|
"@apidevtools/swagger-parser": "^10.0.3",
|
|
71
|
-
"@budibase/backend-core": "^1.0.
|
|
72
|
-
"@budibase/client": "^1.0.
|
|
73
|
-
"@budibase/pro": "1.0.
|
|
74
|
-
"@budibase/string-templates": "^1.0.
|
|
71
|
+
"@budibase/backend-core": "^1.0.137",
|
|
72
|
+
"@budibase/client": "^1.0.137",
|
|
73
|
+
"@budibase/pro": "1.0.137",
|
|
74
|
+
"@budibase/string-templates": "^1.0.137",
|
|
75
75
|
"@bull-board/api": "^3.7.0",
|
|
76
76
|
"@bull-board/koa": "^3.7.0",
|
|
77
77
|
"@elastic/elasticsearch": "7.10.0",
|
|
@@ -100,9 +100,9 @@ class Orchestrator {
|
|
|
100
100
|
let automation = this._automation;
|
|
101
101
|
const app = yield this.getApp();
|
|
102
102
|
let stopped = false;
|
|
103
|
-
let loopStep;
|
|
103
|
+
let loopStep = null;
|
|
104
104
|
let stepCount = 0;
|
|
105
|
-
let loopStepNumber;
|
|
105
|
+
let loopStepNumber = null;
|
|
106
106
|
let loopSteps = [];
|
|
107
107
|
for (let step of automation.definition.steps) {
|
|
108
108
|
stepCount++;
|
|
@@ -249,15 +249,14 @@ class Orchestrator {
|
|
|
249
249
|
}
|
|
250
250
|
module.exports = (input, callback) => {
|
|
251
251
|
const appId = input.data.event.appId;
|
|
252
|
-
doInAppContext(appId, () => {
|
|
252
|
+
doInAppContext(appId, () => __awaiter(void 0, void 0, void 0, function* () {
|
|
253
253
|
const automationOrchestrator = new Orchestrator(input.data.automation, input.data.event);
|
|
254
|
-
|
|
255
|
-
.execute()
|
|
256
|
-
.then(response => {
|
|
254
|
+
try {
|
|
255
|
+
const response = yield automationOrchestrator.execute();
|
|
257
256
|
callback(null, response);
|
|
258
|
-
}
|
|
259
|
-
|
|
257
|
+
}
|
|
258
|
+
catch (err) {
|
|
260
259
|
callback(err);
|
|
261
|
-
}
|
|
262
|
-
});
|
|
260
|
+
}
|
|
261
|
+
}));
|
|
263
262
|
};
|
package/dist/threads/query.js
CHANGED
|
@@ -178,14 +178,14 @@ class QueryRunner {
|
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
module.exports = (input, callback) => {
|
|
181
|
-
doInAppContext(input.appId, () => {
|
|
181
|
+
doInAppContext(input.appId, () => __awaiter(void 0, void 0, void 0, function* () {
|
|
182
182
|
const Runner = new QueryRunner(input);
|
|
183
|
-
|
|
184
|
-
|
|
183
|
+
try {
|
|
184
|
+
const response = yield Runner.execute();
|
|
185
185
|
callback(null, response);
|
|
186
|
-
}
|
|
187
|
-
|
|
186
|
+
}
|
|
187
|
+
catch (err) {
|
|
188
188
|
callback(err);
|
|
189
|
-
}
|
|
190
|
-
});
|
|
189
|
+
}
|
|
190
|
+
}));
|
|
191
191
|
};
|