@budibase/server 1.3.19-alpha.1 → 1.3.19

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 (302) hide show
  1. package/__mocks__/mongodb.ts +1 -1
  2. package/builder/assets/index.9ce4f8c5.css +6 -0
  3. package/builder/assets/index.a1f7532b.js +876 -0
  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 +388 -441
  8. package/coverage/coverage-final.json +20 -20
  9. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/auth.js.html +8 -41
  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 +11 -68
  15. package/coverage/lcov-report/api/controllers/datasource.js.html +34 -73
  16. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/index.html +46 -46
  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 +2 -2
  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 -207
  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 +13 -13
  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 +2 -2
  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 +5 -5
  74. package/coverage/lcov-report/api/routes/utils/validators.js.html +6 -9
  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 +3 -3
  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 +37 -37
  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 +40 -46
  131. package/coverage/lcov-report/middleware/index.html +15 -15
  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 +667 -780
  159. package/dist/api/controllers/application.js +5 -5
  160. package/dist/api/controllers/auth.js +0 -9
  161. package/dist/api/controllers/component.js +1 -14
  162. package/dist/api/controllers/datasource.js +8 -21
  163. package/dist/api/controllers/deploy/index.js +8 -1
  164. package/dist/api/controllers/integration.js +4 -4
  165. package/dist/api/controllers/row/external.js +1 -1
  166. package/dist/api/controllers/screen.js +2 -52
  167. package/dist/api/controllers/static/index.js +0 -1
  168. package/dist/api/controllers/static/templates/BudibaseApp.svelte +0 -10
  169. package/dist/api/controllers/static/templates/preview.hbs +1 -5
  170. package/dist/api/index.js +1 -1
  171. package/dist/api/routes/application.js +2 -3
  172. package/dist/api/routes/index.js +0 -2
  173. package/dist/api/routes/public/tables.js +1 -1
  174. package/dist/api/routes/table.js +1 -1
  175. package/dist/api/routes/utils/validators.js +1 -2
  176. package/dist/app.js +0 -11
  177. package/dist/db/utils.js +1 -10
  178. package/dist/environment.js +0 -1
  179. package/dist/integrations/airtable.js +129 -126
  180. package/dist/integrations/arangodb.js +89 -86
  181. package/dist/integrations/base/query.js +2 -2
  182. package/dist/integrations/base/sqlTable.js +1 -3
  183. package/dist/integrations/couchdb.js +83 -80
  184. package/dist/integrations/dynamodb.js +164 -161
  185. package/dist/integrations/elasticsearch.js +138 -135
  186. package/dist/integrations/firebase.js +157 -154
  187. package/dist/integrations/googlesheets.js +327 -323
  188. package/dist/integrations/index.js +51 -99
  189. package/dist/integrations/microsoftSqlServer.js +243 -240
  190. package/dist/integrations/mongodb.js +242 -239
  191. package/dist/integrations/mysql.js +219 -215
  192. package/dist/integrations/oracle.js +322 -318
  193. package/dist/integrations/postgres.js +265 -262
  194. package/dist/integrations/redis.js +139 -134
  195. package/dist/integrations/rest.js +292 -289
  196. package/dist/integrations/s3.js +64 -61
  197. package/dist/integrations/snowflake.js +86 -83
  198. package/dist/middleware/currentapp.js +0 -2
  199. package/dist/migrations/functions/backfill/global.js +3 -0
  200. package/dist/migrations/functions/developerQuota.js +49 -0
  201. package/dist/{api/routes/plugin.js → migrations/functions/publishedAppsQuota.js} +21 -13
  202. package/dist/{api/controllers/plugin/url.js → migrations/functions/usageQuotas/syncDevelopers.js} +13 -13
  203. package/dist/{api/controllers/plugin/file.js → migrations/functions/usageQuotas/syncPublishedApps.js} +15 -13
  204. package/dist/migrations/index.js +10 -0
  205. package/dist/package.json +6 -9
  206. package/dist/tests/utilities/TestConfiguration.js +1 -1
  207. package/dist/threads/query.js +2 -2
  208. package/dist/tsconfig.build.tsbuildinfo +1 -1
  209. package/dist/utilities/fileSystem/index.js +1 -110
  210. package/package.json +7 -10
  211. package/scripts/dev/manage.js +0 -1
  212. package/scripts/localdomain.js +1 -3
  213. package/specs/openapi.json +3 -3
  214. package/specs/openapi.yaml +3 -3
  215. package/specs/resources/query.js +1 -1
  216. package/src/api/controllers/application.ts +2 -1
  217. package/src/api/controllers/auth.js +0 -11
  218. package/src/api/controllers/component.js +2 -21
  219. package/src/api/controllers/datasource.js +8 -21
  220. package/src/api/controllers/deploy/index.ts +6 -1
  221. package/src/api/controllers/integration.js +4 -4
  222. package/src/api/controllers/row/external.js +1 -1
  223. package/src/api/controllers/screen.js +1 -66
  224. package/src/api/controllers/static/index.ts +1 -1
  225. package/src/api/controllers/static/templates/BudibaseApp.svelte +0 -10
  226. package/src/api/controllers/static/templates/preview.hbs +1 -5
  227. package/src/api/index.js +1 -1
  228. package/src/api/routes/application.ts +2 -13
  229. package/src/api/routes/index.ts +0 -2
  230. package/src/api/routes/public/tables.ts +1 -1
  231. package/src/api/routes/table.js +1 -1
  232. package/src/api/routes/tests/query.spec.js +25 -8
  233. package/src/api/routes/tests/user.spec.js +2 -0
  234. package/src/api/routes/utils/validators.js +1 -2
  235. package/src/app.ts +0 -14
  236. package/src/db/utils.js +0 -12
  237. package/src/definitions/openapi.ts +3 -3
  238. package/src/environment.js +0 -1
  239. package/src/integrations/airtable.ts +118 -116
  240. package/src/integrations/arangodb.ts +89 -87
  241. package/src/integrations/base/query.ts +2 -2
  242. package/src/integrations/base/sqlTable.ts +1 -3
  243. package/src/integrations/couchdb.ts +89 -83
  244. package/src/integrations/dynamodb.ts +175 -173
  245. package/src/integrations/elasticsearch.ts +122 -120
  246. package/src/integrations/firebase.ts +159 -157
  247. package/src/integrations/googlesheets.ts +338 -328
  248. package/src/integrations/index.ts +21 -64
  249. package/src/integrations/microsoftSqlServer.ts +251 -249
  250. package/src/integrations/mongodb.ts +258 -261
  251. package/src/integrations/mysql.ts +234 -229
  252. package/src/integrations/oracle.ts +380 -373
  253. package/src/integrations/postgres.ts +268 -264
  254. package/src/integrations/redis.ts +132 -128
  255. package/src/integrations/rest.ts +329 -324
  256. package/src/integrations/s3.ts +71 -68
  257. package/src/integrations/snowflake.ts +82 -80
  258. package/src/integrations/tests/{airtable.spec.ts → airtable.spec.js} +18 -21
  259. package/src/integrations/tests/{arangodb.spec.ts → arangodb.spec.js} +9 -12
  260. package/src/integrations/tests/{couchdb.spec.ts → couchdb.spec.js} +27 -33
  261. package/src/integrations/tests/{dynamodb.spec.ts → dynamodb.spec.js} +41 -45
  262. package/src/integrations/tests/{elasticsearch.spec.ts → elasticsearch.spec.js} +21 -22
  263. package/src/integrations/tests/{firebase.spec.ts → firebase.spec.js} +28 -33
  264. package/src/integrations/tests/{microsoftSqlServer.spec.ts → microsoftSqlServer.spec.js} +11 -12
  265. package/src/integrations/tests/{mongo.spec.ts → mongo.spec.js} +35 -46
  266. package/src/integrations/tests/{mysql.spec.ts → mysql.spec.js} +15 -17
  267. package/src/integrations/tests/{oracle.spec.ts → oracle.spec.js} +17 -19
  268. package/src/integrations/tests/{postgres.spec.ts → postgres.spec.js} +17 -19
  269. package/src/integrations/tests/{redis.spec.ts → redis.spec.js} +18 -27
  270. package/src/integrations/tests/{rest.spec.ts → rest.spec.js} +14 -22
  271. package/src/integrations/tests/{s3.spec.ts → s3.spec.js} +8 -10
  272. package/src/integrations/tests/{sql.spec.ts → sql.spec.js} +177 -228
  273. package/src/middleware/currentapp.js +0 -2
  274. package/src/migrations/functions/backfill/global.ts +3 -0
  275. package/src/migrations/functions/developerQuota.ts +15 -0
  276. package/src/migrations/functions/publishedAppsQuota.ts +13 -0
  277. package/src/migrations/functions/usageQuotas/syncDevelopers.ts +19 -0
  278. package/src/migrations/functions/usageQuotas/syncPublishedApps.ts +21 -0
  279. package/src/migrations/index.ts +16 -0
  280. package/src/module.d.ts +0 -2
  281. package/src/tests/utilities/TestConfiguration.js +1 -1
  282. package/src/threads/query.ts +2 -2
  283. package/src/utilities/fileSystem/index.js +0 -129
  284. package/builder/assets/index.1709d1b3.js +0 -1005
  285. package/builder/assets/index.8f621053.css +0 -6
  286. package/dist/api/controllers/plugin/github.js +0 -69
  287. package/dist/api/controllers/plugin/index.js +0 -200
  288. package/dist/api/controllers/plugin/npm.js +0 -58
  289. package/dist/api/controllers/plugin/uploaders.js +0 -11
  290. package/dist/api/controllers/plugin/utils.js +0 -26
  291. package/dist/watch.js +0 -77
  292. package/dist/websocket.js +0 -22
  293. package/src/api/controllers/plugin/file.ts +0 -15
  294. package/src/api/controllers/plugin/github.ts +0 -75
  295. package/src/api/controllers/plugin/index.ts +0 -215
  296. package/src/api/controllers/plugin/npm.ts +0 -56
  297. package/src/api/controllers/plugin/uploaders.ts +0 -4
  298. package/src/api/controllers/plugin/url.ts +0 -12
  299. package/src/api/controllers/plugin/utils.ts +0 -19
  300. package/src/api/routes/plugin.ts +0 -14
  301. package/src/watch.ts +0 -38
  302. package/src/websocket.ts +0 -26
@@ -10,182 +10,185 @@ 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 AWS = require("aws-sdk");
14
- const { AWS_REGION } = require("../db/dynamoClient");
15
- const SCHEMA = {
16
- docs: "https://github.com/dabit3/dynamodb-documentclient-cheat-sheet",
17
- description: "Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.",
18
- friendlyName: "DynamoDB",
19
- type: "Non-relational",
20
- datasource: {
21
- region: {
22
- type: types_1.DatasourceFieldType.STRING,
23
- required: true,
24
- default: "us-east-1",
25
- },
26
- accessKeyId: {
27
- type: types_1.DatasourceFieldType.PASSWORD,
28
- required: true,
29
- },
30
- secretAccessKey: {
31
- type: types_1.DatasourceFieldType.PASSWORD,
32
- required: true,
33
- },
34
- endpoint: {
35
- type: types_1.DatasourceFieldType.STRING,
36
- required: false,
37
- default: "https://dynamodb.us-east-1.amazonaws.com",
38
- },
39
- },
40
- query: {
41
- create: {
42
- type: types_1.QueryType.FIELDS,
43
- customisable: true,
44
- fields: {
45
- table: {
46
- type: types_1.DatasourceFieldType.STRING,
47
- required: true,
48
- },
13
+ var DynamoModule;
14
+ (function (DynamoModule) {
15
+ const AWS = require("aws-sdk");
16
+ const { AWS_REGION } = require("../db/dynamoClient");
17
+ const SCHEMA = {
18
+ docs: "https://github.com/dabit3/dynamodb-documentclient-cheat-sheet",
19
+ description: "Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.",
20
+ friendlyName: "DynamoDB",
21
+ type: "Non-relational",
22
+ datasource: {
23
+ region: {
24
+ type: types_1.DatasourceFieldType.STRING,
25
+ required: true,
26
+ default: "us-east-1",
27
+ },
28
+ accessKeyId: {
29
+ type: types_1.DatasourceFieldType.PASSWORD,
30
+ required: true,
31
+ },
32
+ secretAccessKey: {
33
+ type: types_1.DatasourceFieldType.PASSWORD,
34
+ required: true,
35
+ },
36
+ endpoint: {
37
+ type: types_1.DatasourceFieldType.STRING,
38
+ required: false,
39
+ default: "https://dynamodb.us-east-1.amazonaws.com",
49
40
  },
50
41
  },
51
- read: {
52
- type: types_1.QueryType.FIELDS,
53
- customisable: true,
54
- readable: true,
55
- fields: {
56
- table: {
57
- type: types_1.DatasourceFieldType.STRING,
58
- required: true,
59
- },
60
- index: {
61
- type: types_1.DatasourceFieldType.STRING,
42
+ query: {
43
+ create: {
44
+ type: types_1.QueryType.FIELDS,
45
+ customisable: true,
46
+ fields: {
47
+ table: {
48
+ type: types_1.DatasourceFieldType.STRING,
49
+ required: true,
50
+ },
62
51
  },
63
52
  },
64
- },
65
- scan: {
66
- type: types_1.QueryType.FIELDS,
67
- customisable: true,
68
- readable: true,
69
- fields: {
70
- table: {
71
- type: types_1.DatasourceFieldType.STRING,
72
- required: true,
53
+ read: {
54
+ type: types_1.QueryType.FIELDS,
55
+ customisable: true,
56
+ readable: true,
57
+ fields: {
58
+ table: {
59
+ type: types_1.DatasourceFieldType.STRING,
60
+ required: true,
61
+ },
62
+ index: {
63
+ type: types_1.DatasourceFieldType.STRING,
64
+ },
73
65
  },
74
- index: {
75
- type: types_1.DatasourceFieldType.STRING,
66
+ },
67
+ scan: {
68
+ type: types_1.QueryType.FIELDS,
69
+ customisable: true,
70
+ readable: true,
71
+ fields: {
72
+ table: {
73
+ type: types_1.DatasourceFieldType.STRING,
74
+ required: true,
75
+ },
76
+ index: {
77
+ type: types_1.DatasourceFieldType.STRING,
78
+ },
76
79
  },
77
80
  },
78
- },
79
- describe: {
80
- type: types_1.QueryType.FIELDS,
81
- customisable: true,
82
- readable: true,
83
- fields: {
84
- table: {
85
- type: types_1.DatasourceFieldType.STRING,
86
- required: true,
81
+ describe: {
82
+ type: types_1.QueryType.FIELDS,
83
+ customisable: true,
84
+ readable: true,
85
+ fields: {
86
+ table: {
87
+ type: types_1.DatasourceFieldType.STRING,
88
+ required: true,
89
+ },
87
90
  },
88
91
  },
89
- },
90
- get: {
91
- type: types_1.QueryType.FIELDS,
92
- customisable: true,
93
- readable: true,
94
- fields: {
95
- table: {
96
- type: types_1.DatasourceFieldType.STRING,
97
- required: true,
92
+ get: {
93
+ type: types_1.QueryType.FIELDS,
94
+ customisable: true,
95
+ readable: true,
96
+ fields: {
97
+ table: {
98
+ type: types_1.DatasourceFieldType.STRING,
99
+ required: true,
100
+ },
98
101
  },
99
102
  },
100
- },
101
- update: {
102
- type: types_1.QueryType.FIELDS,
103
- customisable: true,
104
- fields: {
105
- table: {
106
- type: types_1.DatasourceFieldType.STRING,
107
- required: true,
103
+ update: {
104
+ type: types_1.QueryType.FIELDS,
105
+ customisable: true,
106
+ fields: {
107
+ table: {
108
+ type: types_1.DatasourceFieldType.STRING,
109
+ required: true,
110
+ },
108
111
  },
109
112
  },
110
- },
111
- delete: {
112
- type: types_1.QueryType.FIELDS,
113
- customisable: true,
114
- fields: {
115
- table: {
116
- type: types_1.DatasourceFieldType.STRING,
117
- required: true,
113
+ delete: {
114
+ type: types_1.QueryType.FIELDS,
115
+ customisable: true,
116
+ fields: {
117
+ table: {
118
+ type: types_1.DatasourceFieldType.STRING,
119
+ required: true,
120
+ },
118
121
  },
119
122
  },
120
123
  },
121
- },
122
- };
123
- class DynamoDBIntegration {
124
- constructor(config) {
125
- var _a, _b;
126
- this.config = config;
127
- // User is using a local dynamoDB endpoint, don't auth with remote
128
- if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.endpoint) === null || _b === void 0 ? void 0 : _b.includes("localhost")) {
129
- // @ts-ignore
130
- this.config = {};
131
- }
132
- this.config = Object.assign(Object.assign({}, this.config), { currentClockSkew: true, region: config.region || AWS_REGION, endpoint: config.endpoint || undefined });
133
- this.client = new AWS.DynamoDB.DocumentClient(this.config);
134
- }
135
- create(query) {
136
- return __awaiter(this, void 0, void 0, function* () {
137
- const params = Object.assign({ TableName: query.table }, query.json);
138
- return this.client.put(params).promise();
139
- });
140
- }
141
- read(query) {
142
- return __awaiter(this, void 0, void 0, function* () {
143
- const params = Object.assign({ TableName: query.table, IndexName: query.index ? query.index : undefined }, query.json);
144
- const response = yield this.client.query(params).promise();
145
- if (response.Items) {
146
- return response.Items;
124
+ };
125
+ class DynamoDBIntegration {
126
+ constructor(config) {
127
+ var _a, _b;
128
+ this.config = config;
129
+ // User is using a local dynamoDB endpoint, don't auth with remote
130
+ if ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.endpoint) === null || _b === void 0 ? void 0 : _b.includes("localhost")) {
131
+ // @ts-ignore
132
+ this.config = {};
147
133
  }
148
- return response;
149
- });
150
- }
151
- scan(query) {
152
- return __awaiter(this, void 0, void 0, function* () {
153
- const params = Object.assign({ TableName: query.table, IndexName: query.index ? query.index : undefined }, query.json);
154
- const response = yield this.client.scan(params).promise();
155
- if (response.Items) {
156
- return response.Items;
157
- }
158
- return response;
159
- });
160
- }
161
- describe(query) {
162
- return __awaiter(this, void 0, void 0, function* () {
163
- const params = {
164
- TableName: query.table,
165
- };
166
- return new AWS.DynamoDB(this.config).describeTable(params).promise();
167
- });
168
- }
169
- get(query) {
170
- return __awaiter(this, void 0, void 0, function* () {
171
- const params = Object.assign({ TableName: query.table }, query.json);
172
- return this.client.get(params).promise();
173
- });
174
- }
175
- update(query) {
176
- return __awaiter(this, void 0, void 0, function* () {
177
- const params = Object.assign({ TableName: query.table }, query.json);
178
- return this.client.update(params).promise();
179
- });
180
- }
181
- delete(query) {
182
- return __awaiter(this, void 0, void 0, function* () {
183
- const params = Object.assign({ TableName: query.table }, query.json);
184
- return this.client.delete(params).promise();
185
- });
134
+ this.config = Object.assign(Object.assign({}, this.config), { currentClockSkew: true, region: config.region || AWS_REGION, endpoint: config.endpoint || undefined });
135
+ this.client = new AWS.DynamoDB.DocumentClient(this.config);
136
+ }
137
+ create(query) {
138
+ return __awaiter(this, void 0, void 0, function* () {
139
+ const params = Object.assign({ TableName: query.table }, query.json);
140
+ return this.client.put(params).promise();
141
+ });
142
+ }
143
+ read(query) {
144
+ return __awaiter(this, void 0, void 0, function* () {
145
+ const params = Object.assign({ TableName: query.table, IndexName: query.index ? query.index : undefined }, query.json);
146
+ const response = yield this.client.query(params).promise();
147
+ if (response.Items) {
148
+ return response.Items;
149
+ }
150
+ return response;
151
+ });
152
+ }
153
+ scan(query) {
154
+ return __awaiter(this, void 0, void 0, function* () {
155
+ const params = Object.assign({ TableName: query.table, IndexName: query.index ? query.index : undefined }, query.json);
156
+ const response = yield this.client.scan(params).promise();
157
+ if (response.Items) {
158
+ return response.Items;
159
+ }
160
+ return response;
161
+ });
162
+ }
163
+ describe(query) {
164
+ return __awaiter(this, void 0, void 0, function* () {
165
+ const params = {
166
+ TableName: query.table,
167
+ };
168
+ return new AWS.DynamoDB(this.config).describeTable(params).promise();
169
+ });
170
+ }
171
+ get(query) {
172
+ return __awaiter(this, void 0, void 0, function* () {
173
+ const params = Object.assign({ TableName: query.table }, query.json);
174
+ return this.client.get(params).promise();
175
+ });
176
+ }
177
+ update(query) {
178
+ return __awaiter(this, void 0, void 0, function* () {
179
+ const params = Object.assign({ TableName: query.table }, query.json);
180
+ return this.client.update(params).promise();
181
+ });
182
+ }
183
+ delete(query) {
184
+ return __awaiter(this, void 0, void 0, function* () {
185
+ const params = Object.assign({ TableName: query.table }, query.json);
186
+ return this.client.delete(params).promise();
187
+ });
188
+ }
186
189
  }
187
- }
188
- exports.default = {
189
- schema: SCHEMA,
190
- integration: DynamoDBIntegration,
191
- };
190
+ module.exports = {
191
+ schema: SCHEMA,
192
+ integration: DynamoDBIntegration,
193
+ };
194
+ })(DynamoModule || (DynamoModule = {}));
@@ -10,149 +10,152 @@ 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 { Client } = require("@elastic/elasticsearch");
14
- const SCHEMA = {
15
- docs: "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html",
16
- description: "Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.",
17
- friendlyName: "ElasticSearch",
18
- type: "Non-relational",
19
- datasource: {
20
- url: {
21
- type: types_1.DatasourceFieldType.STRING,
22
- required: true,
23
- default: "http://localhost:9200",
24
- },
25
- },
26
- query: {
27
- create: {
28
- type: types_1.QueryType.FIELDS,
29
- customisable: true,
30
- fields: {
31
- index: {
32
- type: types_1.DatasourceFieldType.STRING,
33
- required: true,
34
- },
13
+ var ElasticsearchModule;
14
+ (function (ElasticsearchModule) {
15
+ const { Client } = require("@elastic/elasticsearch");
16
+ const SCHEMA = {
17
+ docs: "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html",
18
+ description: "Elasticsearch is a search engine based on the Lucene library. It provides a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents.",
19
+ friendlyName: "ElasticSearch",
20
+ type: "Non-relational",
21
+ datasource: {
22
+ url: {
23
+ type: types_1.DatasourceFieldType.STRING,
24
+ required: true,
25
+ default: "http://localhost:9200",
35
26
  },
36
27
  },
37
- read: {
38
- type: types_1.QueryType.FIELDS,
39
- customisable: true,
40
- fields: {
41
- index: {
42
- type: types_1.DatasourceFieldType.STRING,
43
- required: true,
28
+ query: {
29
+ create: {
30
+ type: types_1.QueryType.FIELDS,
31
+ customisable: true,
32
+ fields: {
33
+ index: {
34
+ type: types_1.DatasourceFieldType.STRING,
35
+ required: true,
36
+ },
44
37
  },
45
38
  },
46
- },
47
- update: {
48
- type: types_1.QueryType.FIELDS,
49
- customisable: true,
50
- fields: {
51
- id: {
52
- type: types_1.DatasourceFieldType.STRING,
53
- required: true,
54
- },
55
- index: {
56
- type: types_1.DatasourceFieldType.STRING,
57
- required: true,
39
+ read: {
40
+ type: types_1.QueryType.FIELDS,
41
+ customisable: true,
42
+ fields: {
43
+ index: {
44
+ type: types_1.DatasourceFieldType.STRING,
45
+ required: true,
46
+ },
58
47
  },
59
48
  },
60
- },
61
- delete: {
62
- type: types_1.QueryType.FIELDS,
63
- fields: {
64
- index: {
65
- type: types_1.DatasourceFieldType.STRING,
66
- required: true,
49
+ update: {
50
+ type: types_1.QueryType.FIELDS,
51
+ customisable: true,
52
+ fields: {
53
+ id: {
54
+ type: types_1.DatasourceFieldType.STRING,
55
+ required: true,
56
+ },
57
+ index: {
58
+ type: types_1.DatasourceFieldType.STRING,
59
+ required: true,
60
+ },
67
61
  },
68
- id: {
69
- type: types_1.DatasourceFieldType.STRING,
70
- required: true,
62
+ },
63
+ delete: {
64
+ type: types_1.QueryType.FIELDS,
65
+ fields: {
66
+ index: {
67
+ type: types_1.DatasourceFieldType.STRING,
68
+ required: true,
69
+ },
70
+ id: {
71
+ type: types_1.DatasourceFieldType.STRING,
72
+ required: true,
73
+ },
71
74
  },
72
75
  },
73
76
  },
74
- },
75
- };
76
- class ElasticSearchIntegration {
77
- constructor(config) {
78
- this.config = config;
79
- this.client = new Client({ node: config.url });
80
- }
81
- create(query) {
82
- return __awaiter(this, void 0, void 0, function* () {
83
- const { index, json } = query;
84
- try {
85
- const result = yield this.client.index({
86
- index,
87
- body: json,
88
- });
89
- return result.body;
90
- }
91
- catch (err) {
92
- console.error("Error writing to elasticsearch", err);
93
- throw err;
94
- }
95
- finally {
96
- yield this.client.close();
97
- }
98
- });
99
- }
100
- read(query) {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- const { index, json } = query;
103
- try {
104
- const result = yield this.client.search({
105
- index: index,
106
- body: json,
107
- });
108
- return result.body.hits.hits.map(({ _source }) => _source);
109
- }
110
- catch (err) {
111
- console.error("Error querying elasticsearch", err);
112
- throw err;
113
- }
114
- finally {
115
- yield this.client.close();
116
- }
117
- });
77
+ };
78
+ class ElasticSearchIntegration {
79
+ constructor(config) {
80
+ this.config = config;
81
+ this.client = new Client({ node: config.url });
82
+ }
83
+ create(query) {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ const { index, json } = query;
86
+ try {
87
+ const result = yield this.client.index({
88
+ index,
89
+ body: json,
90
+ });
91
+ return result.body;
92
+ }
93
+ catch (err) {
94
+ console.error("Error writing to elasticsearch", err);
95
+ throw err;
96
+ }
97
+ finally {
98
+ yield this.client.close();
99
+ }
100
+ });
101
+ }
102
+ read(query) {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ const { index, json } = query;
105
+ try {
106
+ const result = yield this.client.search({
107
+ index: index,
108
+ body: json,
109
+ });
110
+ return result.body.hits.hits.map(({ _source }) => _source);
111
+ }
112
+ catch (err) {
113
+ console.error("Error querying elasticsearch", err);
114
+ throw err;
115
+ }
116
+ finally {
117
+ yield this.client.close();
118
+ }
119
+ });
120
+ }
121
+ update(query) {
122
+ return __awaiter(this, void 0, void 0, function* () {
123
+ const { id, index, json } = query;
124
+ try {
125
+ const result = yield this.client.update({
126
+ id,
127
+ index,
128
+ body: json,
129
+ });
130
+ return result.body;
131
+ }
132
+ catch (err) {
133
+ console.error("Error querying elasticsearch", err);
134
+ throw err;
135
+ }
136
+ finally {
137
+ yield this.client.close();
138
+ }
139
+ });
140
+ }
141
+ delete(query) {
142
+ return __awaiter(this, void 0, void 0, function* () {
143
+ try {
144
+ const result = yield this.client.delete(query);
145
+ return result.body;
146
+ }
147
+ catch (err) {
148
+ console.error("Error deleting from elasticsearch", err);
149
+ throw err;
150
+ }
151
+ finally {
152
+ yield this.client.close();
153
+ }
154
+ });
155
+ }
118
156
  }
119
- update(query) {
120
- return __awaiter(this, void 0, void 0, function* () {
121
- const { id, index, json } = query;
122
- try {
123
- const result = yield this.client.update({
124
- id,
125
- index,
126
- body: json,
127
- });
128
- return result.body;
129
- }
130
- catch (err) {
131
- console.error("Error querying elasticsearch", err);
132
- throw err;
133
- }
134
- finally {
135
- yield this.client.close();
136
- }
137
- });
138
- }
139
- delete(query) {
140
- return __awaiter(this, void 0, void 0, function* () {
141
- try {
142
- const result = yield this.client.delete(query);
143
- return result.body;
144
- }
145
- catch (err) {
146
- console.error("Error deleting from elasticsearch", err);
147
- throw err;
148
- }
149
- finally {
150
- yield this.client.close();
151
- }
152
- });
153
- }
154
- }
155
- exports.default = {
156
- schema: SCHEMA,
157
- integration: ElasticSearchIntegration,
158
- };
157
+ module.exports = {
158
+ schema: SCHEMA,
159
+ integration: ElasticSearchIntegration,
160
+ };
161
+ })(ElasticsearchModule || (ElasticsearchModule = {}));