@budibase/server 1.3.15-alpha.0 → 1.3.16

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 (252) hide show
  1. package/__mocks__/mongodb.ts +1 -1
  2. package/builder/assets/index.43e7aaa8.js +876 -0
  3. package/builder/assets/{index.f5c54dd2.css → index.a70e216a.css} +2 -2
  4. package/builder/assets/vendor.5e1fe644.css +1 -0
  5. package/builder/assets/vendor.67dbd8fa.js +248 -0
  6. package/builder/index.html +4 -2
  7. package/coverage/clover.xml +254 -296
  8. package/coverage/coverage-final.json +17 -17
  9. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/component.js.html +13 -82
  15. package/coverage/lcov-report/api/controllers/datasource.js.html +20 -20
  16. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/index.html +30 -30
  18. package/coverage/lcov-report/api/controllers/integration.js.html +6 -6
  19. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  24. package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  26. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  30. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/row/utils.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/screen.js.html +12 -204
  34. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  35. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  38. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  40. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  43. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  44. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  45. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  46. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  47. package/coverage/lcov-report/api/index.html +1 -1
  48. package/coverage/lcov-report/api/index.js.html +12 -12
  49. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/index.html +1 -1
  60. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  74. package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  77. package/coverage/lcov-report/automations/actions.js.html +1 -1
  78. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  79. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  80. package/coverage/lcov-report/automations/index.html +1 -1
  81. package/coverage/lcov-report/automations/index.js.html +1 -1
  82. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  83. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  84. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  85. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  86. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/index.html +1 -1
  89. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  97. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  98. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  100. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  101. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  102. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  105. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  106. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  107. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  108. package/coverage/lcov-report/constants/index.html +1 -1
  109. package/coverage/lcov-report/constants/index.js.html +1 -1
  110. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  111. package/coverage/lcov-report/constants/screens.js.html +1 -1
  112. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  113. package/coverage/lcov-report/db/index.html +18 -18
  114. package/coverage/lcov-report/db/index.js.html +1 -1
  115. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  116. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  117. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  118. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  119. package/coverage/lcov-report/db/newid.js.html +2 -2
  120. package/coverage/lcov-report/db/utils.js.html +20 -56
  121. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  122. package/coverage/lcov-report/events/index.html +1 -1
  123. package/coverage/lcov-report/events/index.js.html +1 -1
  124. package/coverage/lcov-report/events/utils.js.html +1 -1
  125. package/coverage/lcov-report/index.html +28 -28
  126. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  127. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  128. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  129. package/coverage/lcov-report/middleware/builder.js.html +12 -12
  130. package/coverage/lcov-report/middleware/currentapp.js.html +33 -33
  131. package/coverage/lcov-report/middleware/index.html +1 -1
  132. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  133. package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
  134. package/coverage/lcov-report/middleware/resourceId.js.html +7 -7
  135. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  136. package/coverage/lcov-report/middleware/utils.js.html +2 -2
  137. package/coverage/lcov-report/utilities/budibaseDir.js.html +3 -3
  138. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  139. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  140. package/coverage/lcov-report/utilities/global.js.html +16 -16
  141. package/coverage/lcov-report/utilities/index.html +1 -1
  142. package/coverage/lcov-report/utilities/index.js.html +24 -24
  143. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +2 -2
  144. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  145. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  146. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  147. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  148. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  149. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  150. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  151. package/coverage/lcov-report/utilities/security.js.html +2 -2
  152. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  153. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  154. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  155. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  156. package/coverage/lcov-report/utilities/users.js.html +1 -1
  157. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  158. package/coverage/lcov.info +445 -533
  159. package/dist/api/controllers/application.js +4 -5
  160. package/dist/api/controllers/component.js +1 -18
  161. package/dist/api/controllers/datasource.js +4 -4
  162. package/dist/api/controllers/integration.js +4 -4
  163. package/dist/api/controllers/row/ExternalRequest.js +3 -1
  164. package/dist/api/controllers/screen.js +2 -51
  165. package/dist/api/controllers/static/index.js +0 -1
  166. package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -10
  167. package/dist/api/controllers/static/templates/preview.hbs +1 -3
  168. package/dist/api/routes/index.js +0 -2
  169. package/dist/app.js +0 -9
  170. package/dist/db/utils.js +1 -10
  171. package/dist/environment.js +2 -3
  172. package/dist/integrations/airtable.js +129 -126
  173. package/dist/integrations/arangodb.js +89 -86
  174. package/dist/integrations/base/query.js +2 -2
  175. package/dist/integrations/couchdb.js +83 -80
  176. package/dist/integrations/dynamodb.js +164 -161
  177. package/dist/integrations/elasticsearch.js +138 -135
  178. package/dist/integrations/firebase.js +157 -154
  179. package/dist/integrations/googlesheets.js +327 -323
  180. package/dist/integrations/index.js +51 -93
  181. package/dist/integrations/microsoftSqlServer.js +243 -240
  182. package/dist/integrations/mongodb.js +242 -239
  183. package/dist/integrations/mysql.js +219 -215
  184. package/dist/integrations/oracle.js +322 -318
  185. package/dist/integrations/postgres.js +265 -262
  186. package/dist/integrations/redis.js +139 -134
  187. package/dist/integrations/rest.js +292 -289
  188. package/dist/integrations/s3.js +64 -61
  189. package/dist/integrations/snowflake.js +86 -83
  190. package/dist/package.json +6 -8
  191. package/dist/threads/query.js +2 -2
  192. package/dist/tsconfig.build.tsbuildinfo +1 -1
  193. package/dist/utilities/fileSystem/index.js +10 -66
  194. package/package.json +7 -9
  195. package/scripts/dev/manage.js +0 -1
  196. package/src/api/controllers/application.ts +1 -1
  197. package/src/api/controllers/component.js +2 -25
  198. package/src/api/controllers/datasource.js +4 -4
  199. package/src/api/controllers/integration.js +4 -4
  200. package/src/api/controllers/row/ExternalRequest.ts +4 -1
  201. package/src/api/controllers/screen.js +1 -65
  202. package/src/api/controllers/static/index.ts +0 -1
  203. package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -10
  204. package/src/api/controllers/static/templates/preview.hbs +1 -3
  205. package/src/api/routes/index.ts +0 -2
  206. package/src/api/routes/tests/query.spec.js +25 -8
  207. package/src/app.ts +0 -12
  208. package/src/db/utils.js +0 -12
  209. package/src/environment.js +2 -3
  210. package/src/integrations/airtable.ts +118 -116
  211. package/src/integrations/arangodb.ts +89 -87
  212. package/src/integrations/base/query.ts +2 -2
  213. package/src/integrations/couchdb.ts +89 -83
  214. package/src/integrations/dynamodb.ts +175 -173
  215. package/src/integrations/elasticsearch.ts +122 -120
  216. package/src/integrations/firebase.ts +159 -157
  217. package/src/integrations/googlesheets.ts +338 -328
  218. package/src/integrations/index.ts +21 -59
  219. package/src/integrations/microsoftSqlServer.ts +251 -249
  220. package/src/integrations/mongodb.ts +258 -261
  221. package/src/integrations/mysql.ts +234 -229
  222. package/src/integrations/oracle.ts +380 -373
  223. package/src/integrations/postgres.ts +268 -264
  224. package/src/integrations/redis.ts +132 -128
  225. package/src/integrations/rest.ts +329 -324
  226. package/src/integrations/s3.ts +71 -68
  227. package/src/integrations/snowflake.ts +82 -80
  228. package/src/integrations/tests/{airtable.spec.ts → airtable.spec.js} +18 -21
  229. package/src/integrations/tests/{arangodb.spec.ts → arangodb.spec.js} +9 -12
  230. package/src/integrations/tests/{couchdb.spec.ts → couchdb.spec.js} +27 -33
  231. package/src/integrations/tests/{dynamodb.spec.ts → dynamodb.spec.js} +41 -45
  232. package/src/integrations/tests/{elasticsearch.spec.ts → elasticsearch.spec.js} +21 -22
  233. package/src/integrations/tests/{firebase.spec.ts → firebase.spec.js} +28 -33
  234. package/src/integrations/tests/{microsoftSqlServer.spec.ts → microsoftSqlServer.spec.js} +11 -12
  235. package/src/integrations/tests/{mongo.spec.ts → mongo.spec.js} +35 -46
  236. package/src/integrations/tests/{mysql.spec.ts → mysql.spec.js} +15 -17
  237. package/src/integrations/tests/{oracle.spec.ts → oracle.spec.js} +17 -19
  238. package/src/integrations/tests/{postgres.spec.ts → postgres.spec.js} +17 -19
  239. package/src/integrations/tests/{redis.spec.ts → redis.spec.js} +18 -27
  240. package/src/integrations/tests/{rest.spec.ts → rest.spec.js} +14 -22
  241. package/src/integrations/tests/{s3.spec.ts → s3.spec.js} +8 -10
  242. package/src/integrations/tests/{sql.spec.ts → sql.spec.js} +177 -228
  243. package/src/module.d.ts +0 -1
  244. package/src/threads/query.ts +2 -2
  245. package/src/utilities/fileSystem/index.js +9 -70
  246. package/builder/assets/index.b266d29f.js +0 -995
  247. package/dist/api/controllers/plugin.js +0 -119
  248. package/dist/api/routes/plugin.js +0 -38
  249. package/dist/watch.js +0 -77
  250. package/src/api/controllers/plugin.ts +0 -110
  251. package/src/api/routes/plugin.ts +0 -13
  252. package/src/watch.ts +0 -38
@@ -10,92 +10,95 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  const types_1 = require("@budibase/types");
13
- const { Database, aql } = require("arangojs");
14
- const SCHEMA = {
15
- docs: "https://github.com/arangodb/arangojs",
16
- friendlyName: "ArangoDB",
17
- type: "Non-relational",
18
- description: "ArangoDB is a scalable open-source multi-model database natively supporting graph, document and search. All supported data models & access patterns can be combined in queries allowing for maximal flexibility. ",
19
- datasource: {
20
- url: {
21
- type: types_1.DatasourceFieldType.STRING,
22
- default: "http://localhost:8529",
23
- required: true,
24
- },
25
- username: {
26
- type: types_1.DatasourceFieldType.STRING,
27
- default: "root",
28
- required: true,
29
- },
30
- password: {
31
- type: types_1.DatasourceFieldType.PASSWORD,
32
- required: true,
33
- },
34
- databaseName: {
35
- type: types_1.DatasourceFieldType.STRING,
36
- default: "_system",
37
- required: true,
38
- },
39
- collection: {
40
- type: types_1.DatasourceFieldType.STRING,
41
- required: true,
42
- },
43
- },
44
- query: {
45
- read: {
46
- type: types_1.QueryType.SQL,
47
- },
48
- create: {
49
- type: types_1.QueryType.JSON,
13
+ var ArangoModule;
14
+ (function (ArangoModule) {
15
+ const { Database, aql } = require("arangojs");
16
+ const SCHEMA = {
17
+ docs: "https://github.com/arangodb/arangojs",
18
+ friendlyName: "ArangoDB",
19
+ type: "Non-relational",
20
+ description: "ArangoDB is a scalable open-source multi-model database natively supporting graph, document and search. All supported data models & access patterns can be combined in queries allowing for maximal flexibility. ",
21
+ datasource: {
22
+ url: {
23
+ type: types_1.DatasourceFieldType.STRING,
24
+ default: "http://localhost:8529",
25
+ required: true,
26
+ },
27
+ username: {
28
+ type: types_1.DatasourceFieldType.STRING,
29
+ default: "root",
30
+ required: true,
31
+ },
32
+ password: {
33
+ type: types_1.DatasourceFieldType.PASSWORD,
34
+ required: true,
35
+ },
36
+ databaseName: {
37
+ type: types_1.DatasourceFieldType.STRING,
38
+ default: "_system",
39
+ required: true,
40
+ },
41
+ collection: {
42
+ type: types_1.DatasourceFieldType.STRING,
43
+ required: true,
44
+ },
50
45
  },
51
- },
52
- };
53
- class ArangoDBIntegration {
54
- constructor(config) {
55
- const newConfig = {
56
- auth: {
57
- username: config.username,
58
- password: config.password,
46
+ query: {
47
+ read: {
48
+ type: types_1.QueryType.SQL,
59
49
  },
60
- };
61
- this.config = config;
62
- this.client = new Database(newConfig);
63
- }
64
- read(query) {
65
- return __awaiter(this, void 0, void 0, function* () {
66
- try {
67
- const result = yield this.client.query(query.sql);
68
- return result.all();
69
- }
70
- catch (err) {
71
- // @ts-ignore
72
- console.error("Error querying arangodb", err.message);
73
- throw err;
74
- }
75
- finally {
76
- this.client.close();
77
- }
78
- });
79
- }
80
- create(query) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const clc = this.client.collection(this.config.collection);
83
- try {
84
- const result = yield this.client.query(aql `INSERT ${query.json} INTO ${clc} RETURN NEW`);
85
- return result.all();
86
- }
87
- catch (err) {
88
- // @ts-ignore
89
- console.error("Error querying arangodb", err.message);
90
- throw err;
91
- }
92
- finally {
93
- this.client.close();
94
- }
95
- });
50
+ create: {
51
+ type: types_1.QueryType.JSON,
52
+ },
53
+ },
54
+ };
55
+ class ArangoDBIntegration {
56
+ constructor(config) {
57
+ const newConfig = {
58
+ auth: {
59
+ username: config.username,
60
+ password: config.password,
61
+ },
62
+ };
63
+ this.config = config;
64
+ this.client = new Database(newConfig);
65
+ }
66
+ read(query) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ try {
69
+ const result = yield this.client.query(query.sql);
70
+ return result.all();
71
+ }
72
+ catch (err) {
73
+ // @ts-ignore
74
+ console.error("Error querying arangodb", err.message);
75
+ throw err;
76
+ }
77
+ finally {
78
+ this.client.close();
79
+ }
80
+ });
81
+ }
82
+ create(query) {
83
+ return __awaiter(this, void 0, void 0, function* () {
84
+ const clc = this.client.collection(this.config.collection);
85
+ try {
86
+ const result = yield this.client.query(aql `INSERT ${query.json} INTO ${clc} RETURN NEW`);
87
+ return result.all();
88
+ }
89
+ catch (err) {
90
+ // @ts-ignore
91
+ console.error("Error querying arangodb", err.message);
92
+ throw err;
93
+ }
94
+ finally {
95
+ this.client.close();
96
+ }
97
+ });
98
+ }
96
99
  }
97
- }
98
- exports.default = {
99
- schema: SCHEMA,
100
- integration: ArangoDBIntegration,
101
- };
100
+ module.exports = {
101
+ schema: SCHEMA,
102
+ integration: ArangoDBIntegration,
103
+ };
104
+ })(ArangoModule || (ArangoModule = {}));
@@ -10,10 +10,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.makeExternalQuery = void 0;
13
- const { getIntegration } = require("../index");
13
+ const { integrations } = require("../index");
14
14
  function makeExternalQuery(datasource, json) {
15
15
  return __awaiter(this, void 0, void 0, function* () {
16
- const Integration = yield getIntegration(datasource.source);
16
+ const Integration = integrations[datasource.source];
17
17
  // query is the opinionated function
18
18
  if (Integration.prototype.query) {
19
19
  const integration = new Integration(datasource.config);
@@ -10,90 +10,93 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  const types_1 = require("@budibase/types");
13
- const PouchDB = require("pouchdb");
14
- const SCHEMA = {
15
- docs: "https://docs.couchdb.org/en/stable/",
16
- friendlyName: "CouchDB",
17
- type: "Non-relational",
18
- description: "Apache CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang.",
19
- datasource: {
20
- url: {
21
- type: types_1.DatasourceFieldType.STRING,
22
- required: true,
23
- default: "http://localhost:5984",
24
- },
25
- database: {
26
- type: types_1.DatasourceFieldType.STRING,
27
- required: true,
28
- },
29
- },
30
- query: {
31
- create: {
32
- type: types_1.QueryType.JSON,
33
- },
34
- read: {
35
- type: types_1.QueryType.JSON,
36
- },
37
- update: {
38
- type: types_1.QueryType.JSON,
13
+ var CouchDBModule;
14
+ (function (CouchDBModule) {
15
+ const PouchDB = require("pouchdb");
16
+ const SCHEMA = {
17
+ docs: "https://docs.couchdb.org/en/stable/",
18
+ friendlyName: "CouchDB",
19
+ type: "Non-relational",
20
+ description: "Apache CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang.",
21
+ datasource: {
22
+ url: {
23
+ type: types_1.DatasourceFieldType.STRING,
24
+ required: true,
25
+ default: "http://localhost:5984",
26
+ },
27
+ database: {
28
+ type: types_1.DatasourceFieldType.STRING,
29
+ required: true,
30
+ },
39
31
  },
40
- delete: {
41
- type: types_1.QueryType.FIELDS,
42
- fields: {
43
- id: {
44
- type: types_1.DatasourceFieldType.STRING,
45
- required: true,
32
+ query: {
33
+ create: {
34
+ type: types_1.QueryType.JSON,
35
+ },
36
+ read: {
37
+ type: types_1.QueryType.JSON,
38
+ },
39
+ update: {
40
+ type: types_1.QueryType.JSON,
41
+ },
42
+ delete: {
43
+ type: types_1.QueryType.FIELDS,
44
+ fields: {
45
+ id: {
46
+ type: types_1.DatasourceFieldType.STRING,
47
+ required: true,
48
+ },
46
49
  },
47
50
  },
48
51
  },
49
- },
50
- };
51
- class CouchDBIntegration {
52
- constructor(config) {
53
- this.config = config;
54
- this.client = new PouchDB(`${config.url}/${config.database}`);
55
- }
56
- query(command, errorMsg, query) {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- try {
59
- const response = yield this.client[command](query.id || query.json);
60
- yield this.client.close();
61
- return response;
62
- }
63
- catch (err) {
64
- console.error(errorMsg, err);
65
- throw err;
66
- }
67
- });
68
- }
69
- create(query) {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- return this.query("post", "Error writing to couchDB", query);
72
- });
73
- }
74
- read(query) {
75
- return __awaiter(this, void 0, void 0, function* () {
76
- const result = yield this.query("allDocs", "Error querying couchDB", {
77
- json: Object.assign({ include_docs: true }, query.json),
52
+ };
53
+ class CouchDBIntegration {
54
+ constructor(config) {
55
+ this.config = config;
56
+ this.client = new PouchDB(`${config.url}/${config.database}`);
57
+ }
58
+ query(command, errorMsg, query) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ try {
61
+ const response = yield this.client[command](query.id || query.json);
62
+ yield this.client.close();
63
+ return response;
64
+ }
65
+ catch (err) {
66
+ console.error(errorMsg, err);
67
+ throw err;
68
+ }
78
69
  });
79
- return result.rows.map((row) => row.doc);
80
- });
81
- }
82
- update(query) {
83
- return __awaiter(this, void 0, void 0, function* () {
84
- return this.query("put", "Error updating couchDB document", query);
85
- });
86
- }
87
- delete(query) {
88
- return __awaiter(this, void 0, void 0, function* () {
89
- const doc = yield this.query("get", "Cannot find doc to be deleted", query);
90
- return this.query("remove", "Error deleting couchDB document", {
91
- json: doc,
70
+ }
71
+ create(query) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ return this.query("post", "Error writing to couchDB", query);
92
74
  });
93
- });
75
+ }
76
+ read(query) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ const result = yield this.query("allDocs", "Error querying couchDB", {
79
+ json: Object.assign({ include_docs: true }, query.json),
80
+ });
81
+ return result.rows.map((row) => row.doc);
82
+ });
83
+ }
84
+ update(query) {
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ return this.query("put", "Error updating couchDB document", query);
87
+ });
88
+ }
89
+ delete(query) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ const doc = yield this.query("get", "Cannot find doc to be deleted", query);
92
+ return this.query("remove", "Error deleting couchDB document", {
93
+ json: doc,
94
+ });
95
+ });
96
+ }
94
97
  }
95
- }
96
- exports.default = {
97
- schema: SCHEMA,
98
- integration: CouchDBIntegration,
99
- };
98
+ module.exports = {
99
+ schema: SCHEMA,
100
+ integration: CouchDBIntegration,
101
+ };
102
+ })(CouchDBModule || (CouchDBModule = {}));