@budibase/server 1.0.149 → 1.0.151-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.
Files changed (167) hide show
  1. package/builder/assets/{index.110cb09f.js → index.22042cca.js} +153 -153
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +11 -11
  4. package/coverage/coverage-final.json +1 -1
  5. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  6. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  7. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  8. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/component.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/index.html +1 -1
  15. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  18. package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  21. package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  26. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
  30. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  35. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  40. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  44. package/coverage/lcov-report/api/index.html +1 -1
  45. package/coverage/lcov-report/api/index.js.html +1 -1
  46. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  47. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  48. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  49. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/index.html +1 -1
  57. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  71. package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  74. package/coverage/lcov-report/automations/actions.js.html +1 -1
  75. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  76. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  77. package/coverage/lcov-report/automations/index.html +1 -1
  78. package/coverage/lcov-report/automations/index.js.html +1 -1
  79. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  80. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  81. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  82. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  83. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  84. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  85. package/coverage/lcov-report/automations/steps/index.html +1 -1
  86. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/queryRows.js.html +5 -2
  90. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  96. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  97. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  98. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  100. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  101. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  102. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  105. package/coverage/lcov-report/constants/index.html +1 -1
  106. package/coverage/lcov-report/constants/index.js.html +1 -1
  107. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  108. package/coverage/lcov-report/constants/screens.js.html +1 -1
  109. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  110. package/coverage/lcov-report/db/index.html +1 -1
  111. package/coverage/lcov-report/db/index.js.html +1 -1
  112. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  113. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  114. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  115. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  116. package/coverage/lcov-report/db/newid.js.html +1 -1
  117. package/coverage/lcov-report/db/utils.js.html +1 -1
  118. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  119. package/coverage/lcov-report/events/index.html +1 -1
  120. package/coverage/lcov-report/events/index.js.html +1 -1
  121. package/coverage/lcov-report/events/utils.js.html +1 -1
  122. package/coverage/lcov-report/index.html +1 -1
  123. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  124. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  125. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  126. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  127. package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
  128. package/coverage/lcov-report/middleware/index.html +1 -1
  129. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  130. package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
  131. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  132. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  133. package/coverage/lcov-report/middleware/utils.js.html +1 -1
  134. package/coverage/lcov-report/threads/automation.js.html +1 -1
  135. package/coverage/lcov-report/threads/index.html +1 -1
  136. package/coverage/lcov-report/threads/query.js.html +1 -1
  137. package/coverage/lcov-report/threads/utils.js.html +1 -1
  138. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  139. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  140. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  141. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  142. package/coverage/lcov-report/utilities/global.js.html +1 -1
  143. package/coverage/lcov-report/utilities/index.html +1 -1
  144. package/coverage/lcov-report/utilities/index.js.html +1 -1
  145. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  146. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  147. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  148. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  149. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  150. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  151. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  152. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  153. package/coverage/lcov-report/utilities/security.js.html +1 -1
  154. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  155. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  156. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  157. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  158. package/coverage/lcov-report/utilities/users.js.html +1 -1
  159. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  160. package/coverage/lcov.info +21 -21
  161. package/dist/automations/steps/queryRows.js +1 -0
  162. package/dist/integrations/postgres.js +39 -30
  163. package/dist/package.json +5 -5
  164. package/dist/tsconfig.build.tsbuildinfo +1 -1
  165. package/package.json +6 -6
  166. package/src/automations/steps/queryRows.js +1 -0
  167. package/src/integrations/postgres.ts +45 -37
@@ -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 Mon May 09 2022 14:53:52 GMT+0000 (Coordinated Universal Time)
127
+ at Wed May 11 2022 11:09:35 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) =&gt; {
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 Mon May 09 2022 14:53:52 GMT+0000 (Coordinated Universal Time)
145
+ at Wed May 11 2022 11:09:35 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 Mon May 09 2022 14:53:52 GMT+0000 (Coordinated Universal Time)
490
+ at Wed May 11 2022 11:09:35 GMT+0000 (Coordinated Universal Time)
491
491
  </div>
492
492
  <script src="../prettify.js"></script>
493
493
  <script>
@@ -4752,8 +4752,8 @@ BRH:12
4752
4752
  end_of_record
4753
4753
  TN:
4754
4754
  SF:src/automations/steps/queryRows.js
4755
- FN:74,getTable
4756
- FN:84,(anonymous_1)
4755
+ FN:75,getTable
4756
+ FN:85,(anonymous_1)
4757
4757
  FNF:2
4758
4758
  FNH:2
4759
4759
  FNDA:1,getTable
@@ -4766,35 +4766,35 @@ DA:5,41
4766
4766
  DA:7,41
4767
4767
  DA:12,41
4768
4768
  DA:17,41
4769
- DA:75,1
4770
- DA:80,1
4769
+ DA:76,1
4771
4770
  DA:81,1
4772
- DA:84,41
4773
- DA:85,1
4771
+ DA:82,1
4772
+ DA:85,41
4774
4773
  DA:86,1
4775
4774
  DA:87,1
4776
4775
  DA:88,1
4777
4776
  DA:89,1
4778
4777
  DA:90,1
4779
- DA:93,1
4780
- DA:105,1
4778
+ DA:91,1
4779
+ DA:94,1
4781
4780
  DA:106,1
4782
4781
  DA:107,1
4783
- DA:112,0
4782
+ DA:108,1
4783
+ DA:113,0
4784
4784
  LF:23
4785
4785
  LH:22
4786
- BRDA:88,0,0,1
4787
- BRDA:88,0,1,0
4788
- BRDA:88,1,0,1
4789
- BRDA:88,1,1,1
4790
- BRDA:88,1,2,1
4791
- BRDA:88,1,3,1
4792
- BRDA:91,2,0,0
4793
- BRDA:91,2,1,1
4794
- BRDA:101,3,0,1
4795
- BRDA:101,3,1,0
4796
- BRDA:108,4,0,1
4797
- BRDA:108,4,1,0
4786
+ BRDA:89,0,0,1
4787
+ BRDA:89,0,1,0
4788
+ BRDA:89,1,0,1
4789
+ BRDA:89,1,1,1
4790
+ BRDA:89,1,2,1
4791
+ BRDA:89,1,3,1
4792
+ BRDA:92,2,0,0
4793
+ BRDA:92,2,1,1
4794
+ BRDA:102,3,0,1
4795
+ BRDA:102,3,1,0
4796
+ BRDA:109,4,0,1
4797
+ BRDA:109,4,1,0
4798
4798
  BRF:12
4799
4799
  BRH:8
4800
4800
  end_of_record
@@ -57,6 +57,7 @@ exports.definition = {
57
57
  limit: {
58
58
  type: "number",
59
59
  title: "Limit",
60
+ customType: "queryLimit",
60
61
  },
61
62
  },
62
63
  required: ["tableId"],
@@ -115,7 +115,7 @@ var PostgresModule;
115
115
  getStringConcat(parts) {
116
116
  return parts.join(" || ");
117
117
  }
118
- internalQuery(query) {
118
+ internalQuery(query, close = true) {
119
119
  return __awaiter(this, void 0, void 0, function* () {
120
120
  const client = this.client;
121
121
  this.index = 1;
@@ -134,11 +134,13 @@ var PostgresModule;
134
134
  return yield client.query(query.sql, query.bindings || []);
135
135
  }
136
136
  catch (err) {
137
+ yield this.client.end();
137
138
  // @ts-ignore
138
139
  throw new Error(err);
139
140
  }
140
141
  finally {
141
- yield this.client.end();
142
+ if (close)
143
+ yield this.client.end();
142
144
  }
143
145
  });
144
146
  }
@@ -177,35 +179,41 @@ var PostgresModule;
177
179
  catch (err) {
178
180
  tableKeys = {};
179
181
  }
180
- finally {
181
- yield this.client.close();
182
- }
183
- const columnsResponse = yield this.client.query(this.COLUMNS_SQL);
184
- const tables = {};
185
- for (let column of columnsResponse.rows) {
186
- const tableName = column.table_name;
187
- const columnName = column.column_name;
188
- // table key doesn't exist yet
189
- if (!tables[tableName] || !tables[tableName].schema) {
190
- tables[tableName] = {
191
- _id: (0, utils_1.buildExternalTableId)(datasourceId, tableName),
192
- primary: tableKeys[tableName] || [],
193
- name: tableName,
194
- schema: {},
195
- };
182
+ try {
183
+ const columnsResponse = yield this.client.query(this.COLUMNS_SQL);
184
+ const tables = {};
185
+ for (let column of columnsResponse.rows) {
186
+ const tableName = column.table_name;
187
+ const columnName = column.column_name;
188
+ // table key doesn't exist yet
189
+ if (!tables[tableName] || !tables[tableName].schema) {
190
+ tables[tableName] = {
191
+ _id: (0, utils_1.buildExternalTableId)(datasourceId, tableName),
192
+ primary: tableKeys[tableName] || [],
193
+ name: tableName,
194
+ schema: {},
195
+ };
196
+ }
197
+ const identity = !!(column.identity_generation ||
198
+ column.identity_start ||
199
+ column.identity_increment);
200
+ const hasDefault = typeof column.column_default === "string" &&
201
+ column.column_default.startsWith("nextval");
202
+ const isGenerated = column.is_generated && column.is_generated !== "NEVER";
203
+ const isAuto = hasDefault || identity || isGenerated;
204
+ tables[tableName].schema[columnName] = Object.assign({ autocolumn: isAuto, name: columnName }, (0, utils_1.convertSqlType)(column.data_type));
196
205
  }
197
- const identity = !!(column.identity_generation ||
198
- column.identity_start ||
199
- column.identity_increment);
200
- const hasDefault = typeof column.column_default === "string" &&
201
- column.column_default.startsWith("nextval");
202
- const isGenerated = column.is_generated && column.is_generated !== "NEVER";
203
- const isAuto = hasDefault || identity || isGenerated;
204
- tables[tableName].schema[columnName] = Object.assign({ autocolumn: isAuto, name: columnName }, (0, utils_1.convertSqlType)(column.data_type));
206
+ const final = (0, utils_1.finaliseExternalTables)(tables, entities);
207
+ this.tables = final.tables;
208
+ this.schemaErrors = final.errors;
209
+ }
210
+ catch (err) {
211
+ // @ts-ignore
212
+ throw new Error(err);
213
+ }
214
+ finally {
215
+ yield this.client.end();
205
216
  }
206
- const final = (0, utils_1.finaliseExternalTables)(tables, entities);
207
- this.tables = final.tables;
208
- this.schemaErrors = final.errors;
209
217
  });
210
218
  }
211
219
  create(query) {
@@ -239,8 +247,9 @@ var PostgresModule;
239
247
  if (Array.isArray(input)) {
240
248
  const responses = [];
241
249
  for (let query of input) {
242
- responses.push(yield this.internalQuery(query));
250
+ responses.push(yield this.internalQuery(query, false));
243
251
  }
252
+ yield this.client.end();
244
253
  return responses;
245
254
  }
246
255
  else {
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.148",
4
+ "version": "1.0.151-alpha.0",
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.148",
72
- "@budibase/client": "^1.0.148",
73
- "@budibase/pro": "1.0.148",
74
- "@budibase/string-templates": "^1.0.148",
71
+ "@budibase/backend-core": "^1.0.151-alpha.0",
72
+ "@budibase/client": "^1.0.151-alpha.0",
73
+ "@budibase/pro": "1.0.151-alpha.0",
74
+ "@budibase/string-templates": "^1.0.151-alpha.0",
75
75
  "@bull-board/api": "^3.7.0",
76
76
  "@bull-board/koa": "^3.7.0",
77
77
  "@elastic/elasticsearch": "7.10.0",