@budibase/server 1.0.79-alpha.9 → 1.0.79

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 (309) hide show
  1. package/__mocks__/mysql2/promise.ts +17 -0
  2. package/__mocks__/node-fetch.ts +0 -1
  3. package/builder/assets/{index.c57242d4.css → index.c8d1e8f0.css} +2 -2
  4. package/builder/assets/index.f28c5d54.js +1352 -0
  5. package/builder/assets/{vendor.6b00a24f.js → vendor.20f80cec.js} +216 -190
  6. package/builder/index.html +3 -3
  7. package/coverage/clover.xml +2327 -2390
  8. package/coverage/coverage-final.json +137 -138
  9. package/coverage/lcov-report/api/controllers/analytics.js.html +6 -6
  10. package/coverage/lcov-report/api/controllers/apikeys.js.html +6 -6
  11. package/coverage/lcov-report/api/controllers/application.js.html +149 -152
  12. package/coverage/lcov-report/api/controllers/auth.js.html +7 -7
  13. package/coverage/lcov-report/api/controllers/automation.js.html +21 -21
  14. package/coverage/lcov-report/api/controllers/backup.js.html +3 -3
  15. package/coverage/lcov-report/api/controllers/cloud.js.html +11 -11
  16. package/coverage/lcov-report/api/controllers/component.js.html +5 -5
  17. package/coverage/lcov-report/api/controllers/datasource.js.html +16 -16
  18. package/coverage/lcov-report/api/controllers/dev.js.html +19 -19
  19. package/coverage/lcov-report/api/controllers/index.html +16 -16
  20. package/coverage/lcov-report/api/controllers/integration.js.html +4 -4
  21. package/coverage/lcov-report/api/controllers/layout.js.html +6 -6
  22. package/coverage/lcov-report/api/controllers/metadata.js.html +9 -9
  23. package/coverage/lcov-report/api/controllers/migrations.js.html +4 -4
  24. package/coverage/lcov-report/api/controllers/permission.js.html +15 -15
  25. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  26. package/coverage/lcov-report/api/controllers/query/index.js.html +26 -26
  27. package/coverage/lcov-report/api/controllers/query/validation.js.html +10 -10
  28. package/coverage/lcov-report/api/controllers/role.js.html +9 -9
  29. package/coverage/lcov-report/api/controllers/routing.js.html +9 -9
  30. package/coverage/lcov-report/api/controllers/row/external.js.html +16 -16
  31. package/coverage/lcov-report/api/controllers/row/index.html +27 -27
  32. package/coverage/lcov-report/api/controllers/row/index.js.html +46 -46
  33. package/coverage/lcov-report/api/controllers/row/internal.js.html +82 -94
  34. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +204 -204
  35. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +24 -24
  36. package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -29
  37. package/coverage/lcov-report/api/controllers/screen.js.html +7 -7
  38. package/coverage/lcov-report/api/controllers/script.js.html +4 -4
  39. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +49 -49
  40. package/coverage/lcov-report/api/controllers/table/external.js.html +12 -12
  41. package/coverage/lcov-report/api/controllers/table/index.html +11 -11
  42. package/coverage/lcov-report/api/controllers/table/index.js.html +44 -47
  43. package/coverage/lcov-report/api/controllers/table/internal.js.html +50 -50
  44. package/coverage/lcov-report/api/controllers/table/utils.js.html +80 -80
  45. package/coverage/lcov-report/api/controllers/templates.js.html +5 -5
  46. package/coverage/lcov-report/api/controllers/user.js.html +19 -19
  47. package/coverage/lcov-report/api/controllers/view/exporters.js.html +4 -4
  48. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  49. package/coverage/lcov-report/api/controllers/view/index.js.html +14 -14
  50. package/coverage/lcov-report/api/controllers/view/utils.js.html +12 -12
  51. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +7 -7
  52. package/coverage/lcov-report/api/controllers/webhook.js.html +27 -18
  53. package/coverage/lcov-report/api/index.html +10 -10
  54. package/coverage/lcov-report/api/index.js.html +28 -37
  55. package/coverage/lcov-report/api/routes/analytics.js.html +6 -6
  56. package/coverage/lcov-report/api/routes/apikeys.js.html +8 -8
  57. package/coverage/lcov-report/api/routes/application.js.html +9 -9
  58. package/coverage/lcov-report/api/routes/auth.js.html +6 -6
  59. package/coverage/lcov-report/api/routes/automation.js.html +109 -19
  60. package/coverage/lcov-report/api/routes/backup.js.html +8 -8
  61. package/coverage/lcov-report/api/routes/cloud.js.html +8 -8
  62. package/coverage/lcov-report/api/routes/component.js.html +8 -8
  63. package/coverage/lcov-report/api/routes/datasource.js.html +156 -18
  64. package/coverage/lcov-report/api/routes/deploy.js.html +8 -8
  65. package/coverage/lcov-report/api/routes/dev.js.html +13 -13
  66. package/coverage/lcov-report/api/routes/index.html +35 -35
  67. package/coverage/lcov-report/api/routes/index.js.html +32 -38
  68. package/coverage/lcov-report/api/routes/integration.js.html +8 -8
  69. package/coverage/lcov-report/api/routes/layout.js.html +8 -8
  70. package/coverage/lcov-report/api/routes/metadata.js.html +9 -9
  71. package/coverage/lcov-report/api/routes/migrations.js.html +7 -7
  72. package/coverage/lcov-report/api/routes/permission.js.html +58 -16
  73. package/coverage/lcov-report/api/routes/query.js.html +10 -10
  74. package/coverage/lcov-report/api/routes/role.js.html +78 -15
  75. package/coverage/lcov-report/api/routes/routing.js.html +8 -8
  76. package/coverage/lcov-report/api/routes/row.js.html +14 -17
  77. package/coverage/lcov-report/api/routes/screen.js.html +95 -14
  78. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/static.js.html +13 -13
  80. package/coverage/lcov-report/api/routes/table.js.html +62 -17
  81. package/coverage/lcov-report/api/routes/templates.js.html +8 -8
  82. package/coverage/lcov-report/api/routes/user.js.html +8 -8
  83. package/coverage/lcov-report/api/routes/view.js.html +10 -10
  84. package/coverage/lcov-report/api/routes/webhook.js.html +62 -14
  85. package/coverage/lcov-report/automations/actions.js.html +24 -24
  86. package/coverage/lcov-report/automations/automationUtils.js.html +5 -5
  87. package/coverage/lcov-report/automations/bullboard.js.html +16 -16
  88. package/coverage/lcov-report/automations/index.html +1 -1
  89. package/coverage/lcov-report/automations/index.js.html +7 -7
  90. package/coverage/lcov-report/automations/steps/bash.js.html +6 -6
  91. package/coverage/lcov-report/automations/steps/createRow.js.html +7 -7
  92. package/coverage/lcov-report/automations/steps/delay.js.html +4 -4
  93. package/coverage/lcov-report/automations/steps/deleteRow.js.html +7 -7
  94. package/coverage/lcov-report/automations/steps/discord.js.html +7 -7
  95. package/coverage/lcov-report/automations/steps/executeQuery.js.html +6 -6
  96. package/coverage/lcov-report/automations/steps/executeScript.js.html +6 -6
  97. package/coverage/lcov-report/automations/steps/filter.js.html +9 -12
  98. package/coverage/lcov-report/automations/steps/index.html +1 -1
  99. package/coverage/lcov-report/automations/steps/integromat.js.html +5 -5
  100. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +8 -8
  101. package/coverage/lcov-report/automations/steps/queryRows.js.html +11 -11
  102. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +5 -5
  103. package/coverage/lcov-report/automations/steps/serverLog.js.html +3 -3
  104. package/coverage/lcov-report/automations/steps/slack.js.html +5 -5
  105. package/coverage/lcov-report/automations/steps/updateRow.js.html +6 -6
  106. package/coverage/lcov-report/automations/steps/utils.js.html +3 -3
  107. package/coverage/lcov-report/automations/steps/zapier.js.html +5 -5
  108. package/coverage/lcov-report/automations/triggerInfo/app.js.html +2 -2
  109. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +2 -2
  110. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  111. package/coverage/lcov-report/automations/triggerInfo/index.js.html +8 -8
  112. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +2 -2
  113. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +2 -2
  114. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +2 -2
  115. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +2 -2
  116. package/coverage/lcov-report/automations/triggers.js.html +26 -26
  117. package/coverage/lcov-report/automations/utils.js.html +35 -35
  118. package/coverage/lcov-report/constants/index.html +5 -5
  119. package/coverage/lcov-report/constants/index.js.html +28 -40
  120. package/coverage/lcov-report/constants/layouts.js.html +5 -5
  121. package/coverage/lcov-report/constants/screens.js.html +4 -4
  122. package/coverage/lcov-report/db/client.js.html +18 -18
  123. package/coverage/lcov-report/db/inMemoryView.js.html +7 -7
  124. package/coverage/lcov-report/db/index.html +15 -15
  125. package/coverage/lcov-report/db/index.js.html +3 -3
  126. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +21 -21
  127. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  128. package/coverage/lcov-report/db/linkedRows/index.js.html +36 -36
  129. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +30 -30
  130. package/coverage/lcov-report/db/newid.js.html +4 -4
  131. package/coverage/lcov-report/db/utils.js.html +87 -123
  132. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  133. package/coverage/lcov-report/events/index.html +1 -1
  134. package/coverage/lcov-report/events/index.js.html +8 -8
  135. package/coverage/lcov-report/events/utils.js.html +18 -18
  136. package/coverage/lcov-report/index.html +74 -89
  137. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  138. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  139. package/coverage/lcov-report/middleware/appInfo.js.html +5 -5
  140. package/coverage/lcov-report/middleware/authorized.js.html +29 -29
  141. package/coverage/lcov-report/middleware/builder.js.html +16 -16
  142. package/coverage/lcov-report/middleware/currentapp.js.html +44 -44
  143. package/coverage/lcov-report/middleware/index.html +1 -1
  144. package/coverage/lcov-report/middleware/joi-validator.js.html +14 -14
  145. package/coverage/lcov-report/middleware/resourceId.js.html +29 -29
  146. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  147. package/coverage/lcov-report/middleware/usageQuota.js.html +17 -17
  148. package/coverage/lcov-report/middleware/utils.js.html +4 -4
  149. package/coverage/lcov-report/threads/automation.js.html +1 -1
  150. package/coverage/lcov-report/threads/index.html +19 -19
  151. package/coverage/lcov-report/threads/index.js.html +10 -10
  152. package/coverage/lcov-report/threads/query.js.html +39 -123
  153. package/coverage/lcov-report/threads/utils.js.html +14 -14
  154. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  155. package/coverage/lcov-report/utilities/budibaseDir.js.html +7 -7
  156. package/coverage/lcov-report/utilities/centralPath.js.html +4 -4
  157. package/coverage/lcov-report/utilities/csvParser.js.html +6 -6
  158. package/coverage/lcov-report/utilities/global.js.html +28 -28
  159. package/coverage/lcov-report/utilities/index.html +18 -18
  160. package/coverage/lcov-report/utilities/index.js.html +24 -24
  161. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +9 -9
  162. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  163. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  164. package/coverage/lcov-report/utilities/routing/index.js.html +6 -6
  165. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  166. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +60 -60
  167. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +13 -13
  168. package/coverage/lcov-report/utilities/scriptRunner.js.html +5 -5
  169. package/coverage/lcov-report/utilities/security.js.html +8 -8
  170. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  171. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  172. package/coverage/lcov-report/utilities/usageQuota/index.js.html +12 -12
  173. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +8 -8
  174. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  175. package/coverage/lcov-report/utilities/users.js.html +5 -5
  176. package/coverage/lcov-report/utilities/workerRequests.js.html +53 -200
  177. package/coverage/lcov.info +3233 -3332
  178. package/dist/api/controllers/application.js +0 -1
  179. package/dist/api/controllers/row/internal.js +1 -4
  180. package/dist/api/controllers/table/index.js +1 -2
  181. package/dist/api/controllers/webhook.js +5 -3
  182. package/dist/api/index.js +1 -3
  183. package/dist/api/routes/automation.js +31 -3
  184. package/dist/api/routes/datasource.js +50 -3
  185. package/dist/api/routes/index.js +0 -2
  186. package/dist/api/routes/permission.js +14 -4
  187. package/dist/api/routes/role.js +19 -3
  188. package/dist/api/routes/row.js +4 -3
  189. package/dist/api/routes/screen.js +23 -2
  190. package/dist/api/routes/table.js +17 -3
  191. package/dist/api/routes/tests/utilities/index.js +0 -23
  192. package/dist/api/routes/webhook.js +17 -2
  193. package/dist/automations/steps/filter.js +2 -2
  194. package/dist/automations/steps/queryRows.js +1 -1
  195. package/dist/automations/utils.js +2 -2
  196. package/dist/constants/index.js +0 -3
  197. package/dist/db/utils.js +0 -11
  198. package/dist/integrations/googlesheets.js +0 -3
  199. package/dist/integrations/microsoftSqlServer.js +29 -35
  200. package/dist/integrations/mysql.js +70 -58
  201. package/dist/integrations/oracle.js +19 -14
  202. package/dist/integrations/postgres.js +28 -34
  203. package/dist/integrations/utils.js +1 -1
  204. package/dist/package.json +7 -8
  205. package/dist/tests/utilities/TestConfiguration.js +8 -25
  206. package/dist/threads/query.js +8 -33
  207. package/dist/tsconfig.tsbuildinfo +1 -1
  208. package/dist/utilities/workerRequests.js +15 -50
  209. package/package.json +8 -9
  210. package/scripts/integrations/oracle/oracle.md +2 -2
  211. package/scripts/integrations/postgres/init.sql +3 -5
  212. package/scripts/likeCypress.ts +6 -9
  213. package/scripts/proxy/generateProxyConfig.js +70 -0
  214. package/src/api/controllers/application.js +0 -1
  215. package/src/api/controllers/row/internal.js +0 -4
  216. package/src/api/controllers/table/index.js +1 -2
  217. package/src/api/controllers/webhook.js +6 -3
  218. package/src/api/index.js +1 -4
  219. package/src/api/routes/automation.js +33 -3
  220. package/src/api/routes/datasource.js +52 -6
  221. package/src/api/routes/index.js +0 -2
  222. package/src/api/routes/permission.js +18 -4
  223. package/src/api/routes/role.js +24 -3
  224. package/src/api/routes/row.js +2 -3
  225. package/src/api/routes/screen.js +29 -2
  226. package/src/api/routes/table.js +19 -4
  227. package/src/api/routes/tests/utilities/index.js +0 -24
  228. package/src/api/routes/webhook.js +18 -2
  229. package/src/automations/steps/filter.js +2 -3
  230. package/src/automations/steps/queryRows.js +1 -1
  231. package/src/automations/utils.js +2 -2
  232. package/src/constants/index.js +0 -4
  233. package/src/db/utils.js +0 -12
  234. package/src/definitions/common.ts +0 -4
  235. package/src/integrations/base/datasourcePlus.ts +0 -3
  236. package/src/integrations/googlesheets.ts +2 -5
  237. package/src/integrations/microsoftSqlServer.ts +33 -38
  238. package/src/integrations/mysql.ts +77 -72
  239. package/src/integrations/oracle.ts +35 -27
  240. package/src/integrations/postgres.ts +26 -33
  241. package/src/integrations/tests/mysql.spec.js +4 -4
  242. package/src/integrations/utils.ts +1 -1
  243. package/src/tests/utilities/TestConfiguration.js +2 -23
  244. package/src/threads/query.js +9 -37
  245. package/src/utilities/workerRequests.js +16 -65
  246. package/builder/assets/index.e6e92f4f.js +0 -1288
  247. package/coverage/lcov-report/api/routes/utils/index.html +0 -111
  248. package/coverage/lcov-report/api/routes/utils/validators.js.html +0 -737
  249. package/dist/api/controllers/public/applications.js +0 -94
  250. package/dist/api/controllers/public/mapping/applications.js +0 -29
  251. package/dist/api/controllers/public/mapping/index.js +0 -11
  252. package/dist/api/controllers/public/mapping/queries.js +0 -36
  253. package/dist/api/controllers/public/mapping/rows.js +0 -24
  254. package/dist/api/controllers/public/mapping/tables.js +0 -23
  255. package/dist/api/controllers/public/mapping/types.js +0 -2
  256. package/dist/api/controllers/public/mapping/users.js +0 -29
  257. package/dist/api/controllers/public/queries.js +0 -38
  258. package/dist/api/controllers/public/rows.js +0 -97
  259. package/dist/api/controllers/public/tables.js +0 -75
  260. package/dist/api/controllers/public/users.js +0 -95
  261. package/dist/api/controllers/public/utils.js +0 -49
  262. package/dist/api/routes/public/applications.js +0 -141
  263. package/dist/api/routes/public/index.js +0 -68
  264. package/dist/api/routes/public/middleware/mapper.js +0 -94
  265. package/dist/api/routes/public/queries.js +0 -77
  266. package/dist/api/routes/public/rows.js +0 -229
  267. package/dist/api/routes/public/tables.js +0 -154
  268. package/dist/api/routes/public/users.js +0 -137
  269. package/dist/api/routes/public/utils/Endpoint.js +0 -36
  270. package/dist/api/routes/utils/validators.js +0 -200
  271. package/dist/definitions/openapi.js +0 -6
  272. package/specs/generate.js +0 -83
  273. package/specs/openapi.json +0 -2222
  274. package/specs/openapi.yaml +0 -1530
  275. package/specs/parameters.js +0 -59
  276. package/specs/resources/application.js +0 -101
  277. package/specs/resources/index.js +0 -24
  278. package/specs/resources/misc.js +0 -12
  279. package/specs/resources/query.js +0 -189
  280. package/specs/resources/row.js +0 -125
  281. package/specs/resources/table.js +0 -191
  282. package/specs/resources/user.js +0 -126
  283. package/specs/resources/utils/Resource.js +0 -26
  284. package/specs/resources/utils/index.js +0 -11
  285. package/specs/security.js +0 -7
  286. package/src/api/controllers/public/applications.ts +0 -74
  287. package/src/api/controllers/public/mapping/applications.ts +0 -32
  288. package/src/api/controllers/public/mapping/index.ts +0 -13
  289. package/src/api/controllers/public/mapping/queries.ts +0 -39
  290. package/src/api/controllers/public/mapping/rows.ts +0 -31
  291. package/src/api/controllers/public/mapping/tables.ts +0 -26
  292. package/src/api/controllers/public/mapping/types.ts +0 -13
  293. package/src/api/controllers/public/mapping/users.ts +0 -32
  294. package/src/api/controllers/public/queries.ts +0 -20
  295. package/src/api/controllers/public/rows.ts +0 -77
  296. package/src/api/controllers/public/tables.ts +0 -56
  297. package/src/api/controllers/public/users.ts +0 -82
  298. package/src/api/controllers/public/utils.ts +0 -38
  299. package/src/api/routes/public/applications.ts +0 -156
  300. package/src/api/routes/public/index.ts +0 -82
  301. package/src/api/routes/public/middleware/mapper.ts +0 -81
  302. package/src/api/routes/public/queries.ts +0 -81
  303. package/src/api/routes/public/rows.ts +0 -242
  304. package/src/api/routes/public/tables.ts +0 -169
  305. package/src/api/routes/public/tests/compare.spec.js +0 -184
  306. package/src/api/routes/public/users.ts +0 -144
  307. package/src/api/routes/public/utils/Endpoint.ts +0 -51
  308. package/src/api/routes/utils/validators.js +0 -219
  309. package/src/definitions/openapi.ts +0 -943
@@ -1,94 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.destroy = exports.update = exports.read = exports.create = exports.search = void 0;
16
- const { getAllApps } = require("@budibase/backend-core/db");
17
- const { updateAppId } = require("@budibase/backend-core/context");
18
- const utils_1 = require("./utils");
19
- const application_1 = __importDefault(require("../application"));
20
- function fixAppID(app, params) {
21
- if (!params) {
22
- return app;
23
- }
24
- if (!app._id && params.appId) {
25
- app._id = params.appId;
26
- }
27
- return app;
28
- }
29
- function setResponseApp(ctx) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- if (ctx.body && ctx.body.appId && (!ctx.params || !ctx.params.appId)) {
32
- ctx.params = { appId: ctx.body.appId };
33
- }
34
- yield application_1.default.fetchAppPackage(ctx);
35
- });
36
- }
37
- function search(ctx, next) {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- const { name } = ctx.request.body;
40
- const apps = yield getAllApps({ all: true });
41
- ctx.body = utils_1.search(apps, name);
42
- yield next();
43
- });
44
- }
45
- exports.search = search;
46
- function create(ctx, next) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- if (!ctx.request.body || !ctx.request.body.useTemplate) {
49
- ctx.request.body = Object.assign({ useTemplate: false }, ctx.request.body);
50
- }
51
- yield application_1.default.create(ctx);
52
- yield setResponseApp(ctx);
53
- yield next();
54
- });
55
- }
56
- exports.create = create;
57
- function read(ctx, next) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- updateAppId(ctx.params.appId);
60
- yield setResponseApp(ctx);
61
- yield next();
62
- });
63
- }
64
- exports.read = read;
65
- function update(ctx, next) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- ctx.request.body = fixAppID(ctx.request.body, ctx.params);
68
- updateAppId(ctx.params.appId);
69
- yield application_1.default.update(ctx);
70
- yield setResponseApp(ctx);
71
- yield next();
72
- });
73
- }
74
- exports.update = update;
75
- function destroy(ctx, next) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- updateAppId(ctx.params.appId);
78
- // get the app before deleting it
79
- yield setResponseApp(ctx);
80
- const body = ctx.body;
81
- yield application_1.default.delete(ctx);
82
- // overwrite the body again
83
- ctx.body = body;
84
- yield next();
85
- });
86
- }
87
- exports.destroy = destroy;
88
- exports.default = {
89
- create,
90
- update,
91
- read,
92
- destroy,
93
- search,
94
- };
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function application(body) {
4
- let app = (body === null || body === void 0 ? void 0 : body.application) ? body.application : body;
5
- return {
6
- _id: app.appId,
7
- name: app.name,
8
- url: app.url,
9
- status: app.status,
10
- createdAt: app.createdAt,
11
- updatedAt: app.updatedAt,
12
- version: app.version,
13
- tenantId: app.tenantId,
14
- lockedBy: app.lockedBy,
15
- };
16
- }
17
- function mapApplication(ctx) {
18
- return {
19
- data: application(ctx.body),
20
- };
21
- }
22
- function mapApplications(ctx) {
23
- const apps = ctx.body.map((body) => application(body));
24
- return { data: apps };
25
- }
26
- exports.default = {
27
- mapApplication,
28
- mapApplications,
29
- };
@@ -1,11 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const tables_1 = __importDefault(require("./tables"));
7
- const applications_1 = __importDefault(require("./applications"));
8
- const users_1 = __importDefault(require("./users"));
9
- const rows_1 = __importDefault(require("./rows"));
10
- const queries_1 = __importDefault(require("./queries"));
11
- exports.default = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, tables_1.default), applications_1.default), users_1.default), rows_1.default), queries_1.default);
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function query(body) {
4
- return {
5
- _id: body._id,
6
- datasourceId: body.datasourceId,
7
- parameters: body.parameters,
8
- fields: body.fields,
9
- queryVerb: body.queryVerb,
10
- name: body.name,
11
- schema: body.schema,
12
- transformer: body.transformer,
13
- readable: body.readable,
14
- };
15
- }
16
- function mapQueries(ctx) {
17
- const queries = ctx.body.map((body) => query(body));
18
- return {
19
- data: queries,
20
- };
21
- }
22
- function mapQueryExecution(ctx) {
23
- // very little we can map here, structure mostly unknown
24
- return {
25
- data: ctx.body.data,
26
- pagination: ctx.body.pagination,
27
- extra: {
28
- raw: ctx.body.raw,
29
- headers: ctx.body.headers,
30
- },
31
- };
32
- }
33
- exports.default = {
34
- mapQueries,
35
- mapQueryExecution,
36
- };
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function row(body) {
4
- delete body._rev;
5
- // have to input everything, since structure unknown
6
- return Object.assign(Object.assign({}, body), { _id: body._id, tableId: body.tableId });
7
- }
8
- function mapRowSearch(ctx) {
9
- const rows = ctx.body.rows.map((body) => row(body));
10
- return {
11
- data: rows,
12
- hasNextPage: ctx.body.hasNextPage,
13
- bookmark: ctx.body.bookmark,
14
- };
15
- }
16
- function mapRow(ctx) {
17
- return {
18
- data: row(ctx.body),
19
- };
20
- }
21
- exports.default = {
22
- mapRowSearch,
23
- mapRow,
24
- };
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function table(body) {
4
- return {
5
- _id: body._id,
6
- name: body.name,
7
- schema: body.schema,
8
- primaryDisplay: body.primaryDisplay,
9
- };
10
- }
11
- function mapTable(ctx) {
12
- return {
13
- data: table(ctx.body),
14
- };
15
- }
16
- function mapTables(ctx) {
17
- const tables = ctx.body.map((body) => table(body));
18
- return { data: tables };
19
- }
20
- exports.default = {
21
- mapTable,
22
- mapTables,
23
- };
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function user(body) {
4
- return {
5
- _id: body._id,
6
- email: body.email,
7
- password: body.password,
8
- status: body.status,
9
- firstName: body.firstName,
10
- lastName: body.lastName,
11
- forceResetPassword: body.forceResetPassword,
12
- builder: body.builder,
13
- admin: body.admin,
14
- roles: body.roles,
15
- };
16
- }
17
- function mapUser(ctx) {
18
- return {
19
- data: user(ctx.body),
20
- };
21
- }
22
- function mapUsers(ctx) {
23
- const users = ctx.body.map((body) => user(body));
24
- return { data: users };
25
- }
26
- exports.default = {
27
- mapUser,
28
- mapUsers,
29
- };
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.execute = exports.search = void 0;
16
- const utils_1 = require("./utils");
17
- const query_1 = __importDefault(require("../query"));
18
- function search(ctx, next) {
19
- return __awaiter(this, void 0, void 0, function* () {
20
- yield query_1.default.fetch(ctx);
21
- const { name } = ctx.request.body;
22
- ctx.body = utils_1.search(ctx.body, name);
23
- yield next();
24
- });
25
- }
26
- exports.search = search;
27
- function execute(ctx, next) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- // don't wrap this, already returns "data"
30
- yield query_1.default.executeV2(ctx);
31
- yield next();
32
- });
33
- }
34
- exports.execute = execute;
35
- exports.default = {
36
- search,
37
- execute,
38
- };
@@ -1,97 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.destroy = exports.update = exports.read = exports.create = exports.search = void 0;
16
- const row_1 = __importDefault(require("../row"));
17
- const utils_1 = require("./utils");
18
- // makes sure that the user doesn't need to pass in the type, tableId or _id params for
19
- // the call to be correct
20
- function fixRow(row, params) {
21
- if (!params || !row) {
22
- return row;
23
- }
24
- if (params.rowId) {
25
- row._id = params.rowId;
26
- }
27
- if (params.tableId) {
28
- row.tableId = params.tableId;
29
- }
30
- if (!row.type) {
31
- row.type = "row";
32
- }
33
- return row;
34
- }
35
- function search(ctx, next) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- let { sort, paginate, bookmark, limit, query } = ctx.request.body;
38
- // update the body to the correct format of the internal search
39
- if (!sort) {
40
- sort = {};
41
- }
42
- ctx.request.body = {
43
- sort: sort.column,
44
- sortType: sort.type,
45
- sortOrder: sort.order,
46
- bookmark,
47
- paginate,
48
- limit,
49
- query,
50
- };
51
- yield row_1.default.search(ctx);
52
- yield next();
53
- });
54
- }
55
- exports.search = search;
56
- function create(ctx, next) {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- ctx.request.body = fixRow(ctx.request.body, ctx.params);
59
- yield row_1.default.save(ctx);
60
- yield next();
61
- });
62
- }
63
- exports.create = create;
64
- function read(ctx, next) {
65
- return __awaiter(this, void 0, void 0, function* () {
66
- yield row_1.default.fetchEnrichedRow(ctx);
67
- yield next();
68
- });
69
- }
70
- exports.read = read;
71
- function update(ctx, next) {
72
- return __awaiter(this, void 0, void 0, function* () {
73
- ctx.request.body = yield utils_1.addRev(fixRow(ctx.request.body, ctx.params.tableId));
74
- yield row_1.default.save(ctx);
75
- yield next();
76
- });
77
- }
78
- exports.update = update;
79
- function destroy(ctx, next) {
80
- return __awaiter(this, void 0, void 0, function* () {
81
- // set the body as expected, with the _id and _rev fields
82
- ctx.request.body = yield utils_1.addRev(fixRow({ _id: ctx.params.rowId }, ctx.params.tableId));
83
- yield row_1.default.destroy(ctx);
84
- // destroy controller doesn't currently return the row as the body, need to adjust this
85
- // in the public API to be correct
86
- ctx.body = ctx.row;
87
- yield next();
88
- });
89
- }
90
- exports.destroy = destroy;
91
- exports.default = {
92
- create,
93
- read,
94
- update,
95
- destroy,
96
- search,
97
- };
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.destroy = exports.update = exports.read = exports.create = exports.search = void 0;
16
- const utils_1 = require("./utils");
17
- const table_1 = __importDefault(require("../table"));
18
- function fixTable(table, params) {
19
- if (!params || !table) {
20
- return table;
21
- }
22
- if (params.tableId) {
23
- table._id = params.tableId;
24
- }
25
- if (!table.type) {
26
- table.type = "table";
27
- }
28
- return table;
29
- }
30
- function search(ctx, next) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- const { name } = ctx.request.body;
33
- yield table_1.default.fetch(ctx);
34
- ctx.body = utils_1.search(ctx.body, name);
35
- yield next();
36
- });
37
- }
38
- exports.search = search;
39
- function create(ctx, next) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- yield table_1.default.save(ctx);
42
- yield next();
43
- });
44
- }
45
- exports.create = create;
46
- function read(ctx, next) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- yield table_1.default.find(ctx);
49
- yield next();
50
- });
51
- }
52
- exports.read = read;
53
- function update(ctx, next) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- ctx.request.body = yield utils_1.addRev(fixTable(ctx.request.body, ctx.params), ctx.params.tableId);
56
- yield table_1.default.save(ctx);
57
- yield next();
58
- });
59
- }
60
- exports.update = update;
61
- function destroy(ctx, next) {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- yield table_1.default.destroy(ctx);
64
- ctx.body = ctx.table;
65
- yield next();
66
- });
67
- }
68
- exports.destroy = destroy;
69
- exports.default = {
70
- create,
71
- read,
72
- update,
73
- destroy,
74
- search,
75
- };
@@ -1,95 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.destroy = exports.update = exports.read = exports.create = exports.search = void 0;
13
- const workerRequests_1 = require("../../../utilities/workerRequests");
14
- const utils_1 = require("./utils");
15
- const { getProdAppID } = require("@budibase/backend-core/db");
16
- function fixUser(ctx) {
17
- if (!ctx.request.body) {
18
- return ctx;
19
- }
20
- if (!ctx.request.body._id && ctx.params.userId) {
21
- ctx.request.body._id = ctx.params.userId;
22
- }
23
- if (!ctx.request.body.roles) {
24
- ctx.request.body.roles = {};
25
- }
26
- else {
27
- const newRoles = {};
28
- for (let [appId, role] of Object.entries(ctx.request.body.roles)) {
29
- // @ts-ignore
30
- newRoles[getProdAppID(appId)] = role;
31
- }
32
- ctx.request.body.roles = newRoles;
33
- }
34
- return ctx;
35
- }
36
- function getUser(ctx, userId) {
37
- var _a;
38
- if (userId) {
39
- ctx.params = { userId };
40
- }
41
- else if (!((_a = ctx.params) === null || _a === void 0 ? void 0 : _a.userId)) {
42
- throw "No user ID provided for getting";
43
- }
44
- return workerRequests_1.readGlobalUser(ctx);
45
- }
46
- function search(ctx, next) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- const { name } = ctx.request.body;
49
- const users = yield workerRequests_1.allGlobalUsers(ctx);
50
- ctx.body = utils_1.search(users, name, "email");
51
- yield next();
52
- });
53
- }
54
- exports.search = search;
55
- function create(ctx, next) {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- const response = yield workerRequests_1.saveGlobalUser(fixUser(ctx));
58
- ctx.body = yield getUser(ctx, response._id);
59
- yield next();
60
- });
61
- }
62
- exports.create = create;
63
- function read(ctx, next) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- ctx.body = yield workerRequests_1.readGlobalUser(ctx);
66
- yield next();
67
- });
68
- }
69
- exports.read = read;
70
- function update(ctx, next) {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- const user = yield workerRequests_1.readGlobalUser(ctx);
73
- ctx.request.body = Object.assign(Object.assign({}, ctx.request.body), { _rev: user._rev });
74
- const response = yield workerRequests_1.saveGlobalUser(fixUser(ctx));
75
- ctx.body = yield getUser(ctx, response._id);
76
- yield next();
77
- });
78
- }
79
- exports.update = update;
80
- function destroy(ctx, next) {
81
- return __awaiter(this, void 0, void 0, function* () {
82
- const user = yield getUser(ctx);
83
- yield workerRequests_1.deleteGlobalUser(ctx);
84
- ctx.body = user;
85
- yield next();
86
- });
87
- }
88
- exports.destroy = destroy;
89
- exports.default = {
90
- create,
91
- read,
92
- update,
93
- destroy,
94
- search,
95
- };
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.search = exports.addRev = void 0;
13
- const { getAppDB } = require("@budibase/backend-core/context");
14
- const utils_1 = require("../../../integrations/utils");
15
- function addRev(body, tableId) {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- if (!body._id || (tableId && utils_1.isExternalTable(tableId))) {
18
- return body;
19
- }
20
- const db = getAppDB();
21
- const dbDoc = yield db.get(body._id);
22
- body._rev = dbDoc._rev;
23
- return body;
24
- });
25
- }
26
- exports.addRev = addRev;
27
- /**
28
- * Performs a case insensitive search on the provided documents, using the
29
- * provided key and value. This will be a string based search, using the
30
- * startsWith function.
31
- */
32
- function search(docs, value, key = "name") {
33
- if (!value || typeof value !== "string") {
34
- return docs;
35
- }
36
- value = value.toLowerCase();
37
- const filtered = [];
38
- for (let doc of docs) {
39
- if (typeof doc[key] !== "string") {
40
- continue;
41
- }
42
- const toTest = doc[key].toLowerCase();
43
- if (toTest.startsWith(value)) {
44
- filtered.push(doc);
45
- }
46
- }
47
- return filtered;
48
- }
49
- exports.search = search;