@budibase/server 2.1.32-alpha.2 → 2.1.32-alpha.3

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 (357) hide show
  1. package/builder/assets/{index.1c258fa9.js → index.e3911b1e.js} +254 -254
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +751 -654
  4. package/coverage/coverage-final.json +12 -6
  5. package/coverage/lcov-report/index.html +49 -34
  6. package/coverage/lcov-report/src/api/controllers/analytics.ts.html +1 -1
  7. package/coverage/lcov-report/src/api/controllers/apikeys.js.html +1 -1
  8. package/coverage/lcov-report/src/api/controllers/application.ts.html +70 -13
  9. package/coverage/lcov-report/src/api/controllers/auth.ts.html +1 -1
  10. package/coverage/lcov-report/src/api/controllers/automation.js.html +1 -1
  11. package/coverage/lcov-report/src/api/controllers/backup.ts.html +1 -1
  12. package/coverage/lcov-report/src/api/controllers/cloud.js.html +1 -1
  13. package/coverage/lcov-report/src/api/controllers/component.ts.html +1 -1
  14. package/coverage/lcov-report/src/api/controllers/datasource.js.html +161 -23
  15. package/coverage/lcov-report/src/api/controllers/deploy/Deployment.js.html +1 -1
  16. package/coverage/lcov-report/src/api/controllers/deploy/index.html +1 -1
  17. package/coverage/lcov-report/src/api/controllers/deploy/index.ts.html +1 -1
  18. package/coverage/lcov-report/src/api/controllers/dev.ts.html +1 -1
  19. package/coverage/lcov-report/src/api/controllers/index.html +28 -28
  20. package/coverage/lcov-report/src/api/controllers/integration.js.html +1 -1
  21. package/coverage/lcov-report/src/api/controllers/layout.js.html +1 -1
  22. package/coverage/lcov-report/src/api/controllers/metadata.js.html +1 -1
  23. package/coverage/lcov-report/src/api/controllers/migrations.js.html +1 -1
  24. package/coverage/lcov-report/src/api/controllers/permission.js.html +1 -1
  25. package/coverage/lcov-report/src/api/controllers/plugin/file.ts.html +1 -1
  26. package/coverage/lcov-report/src/api/controllers/plugin/github.ts.html +1 -1
  27. package/coverage/lcov-report/src/api/controllers/plugin/index.html +1 -1
  28. package/coverage/lcov-report/src/api/controllers/plugin/index.ts.html +1 -1
  29. package/coverage/lcov-report/src/api/controllers/plugin/npm.ts.html +1 -1
  30. package/coverage/lcov-report/src/api/controllers/plugin/uploaders.ts.html +1 -1
  31. package/coverage/lcov-report/src/api/controllers/plugin/url.ts.html +1 -1
  32. package/coverage/lcov-report/src/api/controllers/plugin/utils.ts.html +1 -1
  33. package/coverage/lcov-report/src/api/controllers/public/applications.ts.html +1 -1
  34. package/coverage/lcov-report/src/api/controllers/public/index.html +1 -1
  35. package/coverage/lcov-report/src/api/controllers/public/mapping/applications.ts.html +1 -1
  36. package/coverage/lcov-report/src/api/controllers/public/mapping/index.html +1 -1
  37. package/coverage/lcov-report/src/api/controllers/public/mapping/index.ts.html +1 -1
  38. package/coverage/lcov-report/src/api/controllers/public/mapping/queries.ts.html +1 -1
  39. package/coverage/lcov-report/src/api/controllers/public/mapping/rows.ts.html +1 -1
  40. package/coverage/lcov-report/src/api/controllers/public/mapping/tables.ts.html +1 -1
  41. package/coverage/lcov-report/src/api/controllers/public/mapping/users.ts.html +1 -1
  42. package/coverage/lcov-report/src/api/controllers/public/queries.ts.html +1 -1
  43. package/coverage/lcov-report/src/api/controllers/public/rows.ts.html +1 -1
  44. package/coverage/lcov-report/src/api/controllers/public/tables.ts.html +1 -1
  45. package/coverage/lcov-report/src/api/controllers/public/users.ts.html +1 -1
  46. package/coverage/lcov-report/src/api/controllers/public/utils.ts.html +1 -1
  47. package/coverage/lcov-report/src/api/controllers/query/import/index.html +1 -1
  48. package/coverage/lcov-report/src/api/controllers/query/import/index.ts.html +1 -1
  49. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.html +1 -1
  50. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/index.ts.html +1 -1
  51. package/coverage/lcov-report/src/api/controllers/query/import/sources/base/openapi.ts.html +1 -1
  52. package/coverage/lcov-report/src/api/controllers/query/import/sources/curl.ts.html +1 -1
  53. package/coverage/lcov-report/src/api/controllers/query/import/sources/index.html +1 -1
  54. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi2.ts.html +1 -1
  55. package/coverage/lcov-report/src/api/controllers/query/import/sources/openapi3.ts.html +1 -1
  56. package/coverage/lcov-report/src/api/controllers/query/index.html +1 -1
  57. package/coverage/lcov-report/src/api/controllers/query/index.ts.html +1 -1
  58. package/coverage/lcov-report/src/api/controllers/query/validation.js.html +1 -1
  59. package/coverage/lcov-report/src/api/controllers/role.js.html +1 -1
  60. package/coverage/lcov-report/src/api/controllers/routing.js.html +1 -1
  61. package/coverage/lcov-report/src/api/controllers/row/ExternalRequest.ts.html +1 -1
  62. package/coverage/lcov-report/src/api/controllers/row/external.js.html +1 -1
  63. package/coverage/lcov-report/src/api/controllers/row/index.html +1 -1
  64. package/coverage/lcov-report/src/api/controllers/row/index.ts.html +1 -1
  65. package/coverage/lcov-report/src/api/controllers/row/internal.js.html +1 -1
  66. package/coverage/lcov-report/src/api/controllers/row/internalSearch.js.html +1 -1
  67. package/coverage/lcov-report/src/api/controllers/row/staticFormula.js.html +1 -1
  68. package/coverage/lcov-report/src/api/controllers/row/utils.js.html +1 -1
  69. package/coverage/lcov-report/src/api/controllers/screen.ts.html +1 -1
  70. package/coverage/lcov-report/src/api/controllers/script.js.html +1 -1
  71. package/coverage/lcov-report/src/api/controllers/static/index.html +1 -1
  72. package/coverage/lcov-report/src/api/controllers/static/index.ts.html +1 -1
  73. package/coverage/lcov-report/src/api/controllers/table/bulkFormula.js.html +1 -1
  74. package/coverage/lcov-report/src/api/controllers/table/external.js.html +1 -1
  75. package/coverage/lcov-report/src/api/controllers/table/index.html +18 -18
  76. package/coverage/lcov-report/src/api/controllers/table/index.js.html +1 -1
  77. package/coverage/lcov-report/src/api/controllers/table/internal.ts.html +1 -1
  78. package/coverage/lcov-report/src/api/controllers/table/utils.ts.html +48 -33
  79. package/coverage/lcov-report/src/api/controllers/templates.js.html +1 -1
  80. package/coverage/lcov-report/src/api/controllers/user.js.html +1 -1
  81. package/coverage/lcov-report/src/api/controllers/view/exporters.js.html +1 -1
  82. package/coverage/lcov-report/src/api/controllers/view/index.html +1 -1
  83. package/coverage/lcov-report/src/api/controllers/view/index.js.html +1 -1
  84. package/coverage/lcov-report/src/api/controllers/view/utils.js.html +1 -1
  85. package/coverage/lcov-report/src/api/controllers/view/viewBuilder.js.html +1 -1
  86. package/coverage/lcov-report/src/api/controllers/webhook.ts.html +1 -1
  87. package/coverage/lcov-report/src/api/index.html +1 -1
  88. package/coverage/lcov-report/src/api/index.js.html +1 -1
  89. package/coverage/lcov-report/src/api/routes/analytics.js.html +1 -1
  90. package/coverage/lcov-report/src/api/routes/apikeys.js.html +1 -1
  91. package/coverage/lcov-report/src/api/routes/application.ts.html +1 -1
  92. package/coverage/lcov-report/src/api/routes/auth.ts.html +1 -1
  93. package/coverage/lcov-report/src/api/routes/automation.js.html +1 -1
  94. package/coverage/lcov-report/src/api/routes/backup.ts.html +1 -1
  95. package/coverage/lcov-report/src/api/routes/cloud.js.html +1 -1
  96. package/coverage/lcov-report/src/api/routes/component.js.html +1 -1
  97. package/coverage/lcov-report/src/api/routes/datasource.js.html +1 -1
  98. package/coverage/lcov-report/src/api/routes/deploy.js.html +1 -1
  99. package/coverage/lcov-report/src/api/routes/dev.js.html +1 -1
  100. package/coverage/lcov-report/src/api/routes/index.html +1 -1
  101. package/coverage/lcov-report/src/api/routes/index.ts.html +1 -1
  102. package/coverage/lcov-report/src/api/routes/integration.js.html +1 -1
  103. package/coverage/lcov-report/src/api/routes/layout.js.html +1 -1
  104. package/coverage/lcov-report/src/api/routes/metadata.js.html +1 -1
  105. package/coverage/lcov-report/src/api/routes/migrations.js.html +1 -1
  106. package/coverage/lcov-report/src/api/routes/permission.js.html +1 -1
  107. package/coverage/lcov-report/src/api/routes/plugin.ts.html +1 -1
  108. package/coverage/lcov-report/src/api/routes/public/applications.ts.html +1 -1
  109. package/coverage/lcov-report/src/api/routes/public/index.html +1 -1
  110. package/coverage/lcov-report/src/api/routes/public/index.ts.html +1 -1
  111. package/coverage/lcov-report/src/api/routes/public/middleware/index.html +1 -1
  112. package/coverage/lcov-report/src/api/routes/public/middleware/mapper.ts.html +1 -1
  113. package/coverage/lcov-report/src/api/routes/public/queries.ts.html +1 -1
  114. package/coverage/lcov-report/src/api/routes/public/rows.ts.html +1 -1
  115. package/coverage/lcov-report/src/api/routes/public/tables.ts.html +1 -1
  116. package/coverage/lcov-report/src/api/routes/public/users.ts.html +1 -1
  117. package/coverage/lcov-report/src/api/routes/public/utils/Endpoint.ts.html +1 -1
  118. package/coverage/lcov-report/src/api/routes/public/utils/index.html +1 -1
  119. package/coverage/lcov-report/src/api/routes/query.js.html +1 -1
  120. package/coverage/lcov-report/src/api/routes/role.js.html +1 -1
  121. package/coverage/lcov-report/src/api/routes/routing.js.html +1 -1
  122. package/coverage/lcov-report/src/api/routes/row.ts.html +1 -1
  123. package/coverage/lcov-report/src/api/routes/screen.js.html +1 -1
  124. package/coverage/lcov-report/src/api/routes/script.js.html +1 -1
  125. package/coverage/lcov-report/src/api/routes/static.ts.html +1 -1
  126. package/coverage/lcov-report/src/api/routes/table.js.html +1 -1
  127. package/coverage/lcov-report/src/api/routes/templates.js.html +1 -1
  128. package/coverage/lcov-report/src/api/routes/tests/utilities/TestFunctions.ts.html +1 -1
  129. package/coverage/lcov-report/src/api/routes/tests/utilities/index.html +1 -1
  130. package/coverage/lcov-report/src/api/routes/tests/utilities/index.js.html +1 -1
  131. package/coverage/lcov-report/src/api/routes/user.js.html +1 -1
  132. package/coverage/lcov-report/src/api/routes/utils/index.html +1 -1
  133. package/coverage/lcov-report/src/api/routes/utils/validators.js.html +1 -1
  134. package/coverage/lcov-report/src/api/routes/view.js.html +1 -1
  135. package/coverage/lcov-report/src/api/routes/webhook.ts.html +1 -1
  136. package/coverage/lcov-report/src/app.ts.html +1 -1
  137. package/coverage/lcov-report/src/automations/actions.js.html +1 -1
  138. package/coverage/lcov-report/src/automations/automationUtils.js.html +1 -1
  139. package/coverage/lcov-report/src/automations/bullboard.js.html +1 -1
  140. package/coverage/lcov-report/src/automations/index.html +1 -1
  141. package/coverage/lcov-report/src/automations/index.js.html +1 -1
  142. package/coverage/lcov-report/src/automations/logging/index.html +1 -1
  143. package/coverage/lcov-report/src/automations/logging/index.ts.html +1 -1
  144. package/coverage/lcov-report/src/automations/steps/bash.js.html +1 -1
  145. package/coverage/lcov-report/src/automations/steps/createRow.ts.html +1 -1
  146. package/coverage/lcov-report/src/automations/steps/delay.js.html +1 -1
  147. package/coverage/lcov-report/src/automations/steps/deleteRow.ts.html +1 -1
  148. package/coverage/lcov-report/src/automations/steps/discord.js.html +1 -1
  149. package/coverage/lcov-report/src/automations/steps/executeQuery.js.html +1 -1
  150. package/coverage/lcov-report/src/automations/steps/executeScript.js.html +1 -1
  151. package/coverage/lcov-report/src/automations/steps/filter.js.html +1 -1
  152. package/coverage/lcov-report/src/automations/steps/index.html +1 -1
  153. package/coverage/lcov-report/src/automations/steps/integromat.js.html +1 -1
  154. package/coverage/lcov-report/src/automations/steps/loop.js.html +1 -1
  155. package/coverage/lcov-report/src/automations/steps/outgoingWebhook.js.html +1 -1
  156. package/coverage/lcov-report/src/automations/steps/queryRows.js.html +1 -1
  157. package/coverage/lcov-report/src/automations/steps/sendSmtpEmail.js.html +1 -1
  158. package/coverage/lcov-report/src/automations/steps/serverLog.js.html +1 -1
  159. package/coverage/lcov-report/src/automations/steps/slack.js.html +1 -1
  160. package/coverage/lcov-report/src/automations/steps/updateRow.js.html +1 -1
  161. package/coverage/lcov-report/src/automations/steps/utils.js.html +1 -1
  162. package/coverage/lcov-report/src/automations/steps/zapier.js.html +1 -1
  163. package/coverage/lcov-report/src/automations/tests/utilities/index.html +1 -1
  164. package/coverage/lcov-report/src/automations/tests/utilities/index.js.html +1 -1
  165. package/coverage/lcov-report/src/automations/triggerInfo/app.js.html +1 -1
  166. package/coverage/lcov-report/src/automations/triggerInfo/cron.js.html +1 -1
  167. package/coverage/lcov-report/src/automations/triggerInfo/index.html +1 -1
  168. package/coverage/lcov-report/src/automations/triggerInfo/index.js.html +1 -1
  169. package/coverage/lcov-report/src/automations/triggerInfo/rowDeleted.js.html +1 -1
  170. package/coverage/lcov-report/src/automations/triggerInfo/rowSaved.js.html +1 -1
  171. package/coverage/lcov-report/src/automations/triggerInfo/rowUpdated.js.html +1 -1
  172. package/coverage/lcov-report/src/automations/triggerInfo/webhook.js.html +1 -1
  173. package/coverage/lcov-report/src/automations/triggers.js.html +1 -1
  174. package/coverage/lcov-report/src/automations/utils.ts.html +1 -1
  175. package/coverage/lcov-report/src/constants/index.html +1 -1
  176. package/coverage/lcov-report/src/constants/index.js.html +1 -1
  177. package/coverage/lcov-report/src/constants/layouts.js.html +1 -1
  178. package/coverage/lcov-report/src/constants/screens.js.html +1 -1
  179. package/coverage/lcov-report/src/db/defaultData/datasource_bb_default.js.html +2023 -0
  180. package/coverage/lcov-report/src/db/defaultData/employeeImport.js.html +541 -0
  181. package/coverage/lcov-report/src/db/defaultData/expensesImport.js.html +427 -0
  182. package/coverage/lcov-report/src/db/defaultData/index.html +176 -0
  183. package/coverage/lcov-report/src/db/defaultData/inventoryImport.js.html +403 -0
  184. package/coverage/lcov-report/src/db/defaultData/jobsImport.js.html +559 -0
  185. package/coverage/lcov-report/src/db/dynamoClient.js.html +1 -1
  186. package/coverage/lcov-report/src/db/inMemoryView.js.html +1 -1
  187. package/coverage/lcov-report/src/db/index.html +1 -1
  188. package/coverage/lcov-report/src/db/index.js.html +1 -1
  189. package/coverage/lcov-report/src/db/linkedRows/LinkController.js.html +11 -149
  190. package/coverage/lcov-report/src/db/linkedRows/LinkDocument.js.html +226 -0
  191. package/coverage/lcov-report/src/db/linkedRows/index.html +28 -13
  192. package/coverage/lcov-report/src/db/linkedRows/index.js.html +1 -1
  193. package/coverage/lcov-report/src/db/linkedRows/linkUtils.js.html +1 -1
  194. package/coverage/lcov-report/src/db/newid.js.html +1 -1
  195. package/coverage/lcov-report/src/db/utils.ts.html +2 -2
  196. package/coverage/lcov-report/src/definitions/automations.ts.html +1 -1
  197. package/coverage/lcov-report/src/definitions/datasource.ts.html +1 -1
  198. package/coverage/lcov-report/src/definitions/index.html +1 -1
  199. package/coverage/lcov-report/src/environment.js.html +1 -1
  200. package/coverage/lcov-report/src/events/AutomationEmitter.js.html +1 -1
  201. package/coverage/lcov-report/src/events/index.html +1 -1
  202. package/coverage/lcov-report/src/events/index.js.html +1 -1
  203. package/coverage/lcov-report/src/events/utils.js.html +1 -1
  204. package/coverage/lcov-report/src/index.html +1 -1
  205. package/coverage/lcov-report/src/index.ts.html +1 -1
  206. package/coverage/lcov-report/src/integrations/airtable.ts.html +1 -1
  207. package/coverage/lcov-report/src/integrations/arangodb.ts.html +1 -1
  208. package/coverage/lcov-report/src/integrations/base/index.html +1 -1
  209. package/coverage/lcov-report/src/integrations/base/query.ts.html +1 -1
  210. package/coverage/lcov-report/src/integrations/base/sql.ts.html +1 -1
  211. package/coverage/lcov-report/src/integrations/base/sqlTable.ts.html +1 -1
  212. package/coverage/lcov-report/src/integrations/base/utils.ts.html +1 -1
  213. package/coverage/lcov-report/src/integrations/couchdb.ts.html +1 -1
  214. package/coverage/lcov-report/src/integrations/dynamodb.ts.html +1 -1
  215. package/coverage/lcov-report/src/integrations/elasticsearch.ts.html +1 -1
  216. package/coverage/lcov-report/src/integrations/firebase.ts.html +1 -1
  217. package/coverage/lcov-report/src/integrations/googlesheets.ts.html +1 -1
  218. package/coverage/lcov-report/src/integrations/index.html +1 -1
  219. package/coverage/lcov-report/src/integrations/index.ts.html +1 -1
  220. package/coverage/lcov-report/src/integrations/microsoftSqlServer.ts.html +1 -1
  221. package/coverage/lcov-report/src/integrations/mongodb.ts.html +1 -1
  222. package/coverage/lcov-report/src/integrations/mysql.ts.html +1 -1
  223. package/coverage/lcov-report/src/integrations/oracle.ts.html +1 -1
  224. package/coverage/lcov-report/src/integrations/postgres.ts.html +1 -1
  225. package/coverage/lcov-report/src/integrations/queries/index.html +1 -1
  226. package/coverage/lcov-report/src/integrations/queries/sql.ts.html +1 -1
  227. package/coverage/lcov-report/src/integrations/redis.ts.html +1 -1
  228. package/coverage/lcov-report/src/integrations/rest.ts.html +1 -1
  229. package/coverage/lcov-report/src/integrations/s3.ts.html +1 -1
  230. package/coverage/lcov-report/src/integrations/snowflake.ts.html +1 -1
  231. package/coverage/lcov-report/src/integrations/tests/TestConfiguration.js.html +1 -1
  232. package/coverage/lcov-report/src/integrations/tests/index.html +1 -1
  233. package/coverage/lcov-report/src/integrations/utils.ts.html +1 -1
  234. package/coverage/lcov-report/src/middleware/appInfo.ts.html +1 -1
  235. package/coverage/lcov-report/src/middleware/authorized.ts.html +1 -1
  236. package/coverage/lcov-report/src/middleware/builder.ts.html +1 -1
  237. package/coverage/lcov-report/src/middleware/currentapp.ts.html +1 -1
  238. package/coverage/lcov-report/src/middleware/index.html +1 -1
  239. package/coverage/lcov-report/src/middleware/joi-validator.ts.html +1 -1
  240. package/coverage/lcov-report/src/middleware/publicApi.ts.html +1 -1
  241. package/coverage/lcov-report/src/middleware/resourceId.ts.html +1 -1
  242. package/coverage/lcov-report/src/middleware/selfhost.ts.html +1 -1
  243. package/coverage/lcov-report/src/middleware/utils.ts.html +1 -1
  244. package/coverage/lcov-report/src/migrations/functions/appUrls.ts.html +1 -1
  245. package/coverage/lcov-report/src/migrations/functions/backfill/app/automations.ts.html +1 -1
  246. package/coverage/lcov-report/src/migrations/functions/backfill/app/datasources.ts.html +1 -1
  247. package/coverage/lcov-report/src/migrations/functions/backfill/app/index.html +1 -1
  248. package/coverage/lcov-report/src/migrations/functions/backfill/app/layouts.ts.html +1 -1
  249. package/coverage/lcov-report/src/migrations/functions/backfill/app/queries.ts.html +1 -1
  250. package/coverage/lcov-report/src/migrations/functions/backfill/app/roles.ts.html +1 -1
  251. package/coverage/lcov-report/src/migrations/functions/backfill/app/screens.ts.html +1 -1
  252. package/coverage/lcov-report/src/migrations/functions/backfill/app/tables.ts.html +1 -1
  253. package/coverage/lcov-report/src/migrations/functions/backfill/app.ts.html +1 -1
  254. package/coverage/lcov-report/src/migrations/functions/backfill/global/configs.ts.html +1 -1
  255. package/coverage/lcov-report/src/migrations/functions/backfill/global/index.html +1 -1
  256. package/coverage/lcov-report/src/migrations/functions/backfill/global/quotas.ts.html +1 -1
  257. package/coverage/lcov-report/src/migrations/functions/backfill/global/users.ts.html +1 -1
  258. package/coverage/lcov-report/src/migrations/functions/backfill/global.ts.html +1 -1
  259. package/coverage/lcov-report/src/migrations/functions/backfill/index.html +1 -1
  260. package/coverage/lcov-report/src/migrations/functions/backfill/index.ts.html +1 -1
  261. package/coverage/lcov-report/src/migrations/functions/backfill/installation.ts.html +1 -1
  262. package/coverage/lcov-report/src/migrations/functions/index.html +1 -1
  263. package/coverage/lcov-report/src/migrations/functions/syncQuotas.ts.html +1 -1
  264. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.html +1 -1
  265. package/coverage/lcov-report/src/migrations/functions/usageQuotas/index.ts.html +1 -1
  266. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncApps.ts.html +1 -1
  267. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncPlugins.ts.html +1 -1
  268. package/coverage/lcov-report/src/migrations/functions/usageQuotas/syncRows.ts.html +1 -1
  269. package/coverage/lcov-report/src/migrations/functions/userEmailViewCasing.ts.html +1 -1
  270. package/coverage/lcov-report/src/migrations/index.html +1 -1
  271. package/coverage/lcov-report/src/migrations/index.ts.html +1 -1
  272. package/coverage/lcov-report/src/migrations/tests/helpers.ts.html +1 -1
  273. package/coverage/lcov-report/src/migrations/tests/index.html +1 -1
  274. package/coverage/lcov-report/src/migrations/tests/structures.ts.html +1 -1
  275. package/coverage/lcov-report/src/module.d.ts.html +1 -1
  276. package/coverage/lcov-report/src/sdk/app/automations/index.html +1 -1
  277. package/coverage/lcov-report/src/sdk/app/automations/index.ts.html +1 -1
  278. package/coverage/lcov-report/src/sdk/app/automations/webhook.ts.html +1 -1
  279. package/coverage/lcov-report/src/sdk/app/backups/constants.ts.html +1 -1
  280. package/coverage/lcov-report/src/sdk/app/backups/exports.ts.html +1 -1
  281. package/coverage/lcov-report/src/sdk/app/backups/imports.ts.html +1 -1
  282. package/coverage/lcov-report/src/sdk/app/backups/index.html +1 -1
  283. package/coverage/lcov-report/src/sdk/app/backups/index.ts.html +1 -1
  284. package/coverage/lcov-report/src/sdk/app/backups/statistics.ts.html +1 -1
  285. package/coverage/lcov-report/src/sdk/app/tables/index.html +5 -5
  286. package/coverage/lcov-report/src/sdk/app/tables/index.ts.html +4 -4
  287. package/coverage/lcov-report/src/sdk/index.html +1 -1
  288. package/coverage/lcov-report/src/sdk/index.ts.html +1 -1
  289. package/coverage/lcov-report/src/startup.ts.html +1 -1
  290. package/coverage/lcov-report/src/tests/utilities/TestConfiguration.js.html +1 -1
  291. package/coverage/lcov-report/src/tests/utilities/controllers.js.html +1 -1
  292. package/coverage/lcov-report/src/tests/utilities/index.html +1 -1
  293. package/coverage/lcov-report/src/tests/utilities/index.js.html +1 -1
  294. package/coverage/lcov-report/src/tests/utilities/structures.js.html +1 -1
  295. package/coverage/lcov-report/src/threads/automation.ts.html +1 -1
  296. package/coverage/lcov-report/src/threads/index.html +1 -1
  297. package/coverage/lcov-report/src/threads/index.ts.html +1 -1
  298. package/coverage/lcov-report/src/threads/query.ts.html +1 -1
  299. package/coverage/lcov-report/src/threads/utils.ts.html +1 -1
  300. package/coverage/lcov-report/src/utilities/budibaseDir.js.html +1 -1
  301. package/coverage/lcov-report/src/utilities/centralPath.js.html +1 -1
  302. package/coverage/lcov-report/src/utilities/csvParser.js.html +1 -1
  303. package/coverage/lcov-report/src/utilities/fileSystem/clientLibrary.js.html +1 -1
  304. package/coverage/lcov-report/src/utilities/fileSystem/index.html +1 -1
  305. package/coverage/lcov-report/src/utilities/fileSystem/index.js.html +1 -1
  306. package/coverage/lcov-report/src/utilities/fileSystem/processor.js.html +1 -1
  307. package/coverage/lcov-report/src/utilities/fileSystem/utilities.js.html +1 -1
  308. package/coverage/lcov-report/src/utilities/global.ts.html +1 -1
  309. package/coverage/lcov-report/src/utilities/index.html +1 -1
  310. package/coverage/lcov-report/src/utilities/index.js.html +3 -3
  311. package/coverage/lcov-report/src/utilities/plugins.js.html +1 -1
  312. package/coverage/lcov-report/src/utilities/queue/inMemoryQueue.js.html +1 -1
  313. package/coverage/lcov-report/src/utilities/queue/index.html +1 -1
  314. package/coverage/lcov-report/src/utilities/redis.js.html +1 -1
  315. package/coverage/lcov-report/src/utilities/routing/index.html +1 -1
  316. package/coverage/lcov-report/src/utilities/routing/index.js.html +1 -1
  317. package/coverage/lcov-report/src/utilities/rowProcessor/index.html +1 -1
  318. package/coverage/lcov-report/src/utilities/rowProcessor/index.js.html +1 -1
  319. package/coverage/lcov-report/src/utilities/rowProcessor/utils.js.html +1 -1
  320. package/coverage/lcov-report/src/utilities/scriptRunner.js.html +1 -1
  321. package/coverage/lcov-report/src/utilities/security.js.html +1 -1
  322. package/coverage/lcov-report/src/utilities/statusCodes.js.html +1 -1
  323. package/coverage/lcov-report/src/utilities/usageQuota/index.html +1 -1
  324. package/coverage/lcov-report/src/utilities/usageQuota/rows.js.html +1 -1
  325. package/coverage/lcov-report/src/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  326. package/coverage/lcov-report/src/utilities/users.js.html +1 -1
  327. package/coverage/lcov-report/src/utilities/workerRequests.js.html +1 -1
  328. package/coverage/lcov-report/src/watch.ts.html +1 -1
  329. package/coverage/lcov-report/src/websocket.ts.html +1 -1
  330. package/coverage/lcov.info +1281 -1113
  331. package/dist/api/controllers/application.js +13 -2
  332. package/dist/api/controllers/datasource.js +47 -9
  333. package/dist/api/controllers/table/utils.js +31 -26
  334. package/dist/db/defaultData/datasource_bb_default.js +565 -0
  335. package/dist/db/defaultData/employeeImport.js +153 -0
  336. package/dist/db/defaultData/expensesImport.js +115 -0
  337. package/dist/db/defaultData/inventoryImport.js +107 -0
  338. package/dist/db/defaultData/jobsImport.js +150 -0
  339. package/dist/db/linkedRows/LinkController.js +2 -29
  340. package/dist/db/linkedRows/LinkDocument.js +32 -0
  341. package/dist/db/utils.js +1 -1
  342. package/dist/package.json +6 -6
  343. package/dist/sdk/app/tables/index.js +1 -1
  344. package/dist/tsconfig.build.tsbuildinfo +1 -1
  345. package/package.json +7 -7
  346. package/src/api/controllers/application.ts +22 -3
  347. package/src/api/controllers/datasource.js +57 -11
  348. package/src/api/controllers/table/utils.ts +17 -12
  349. package/src/db/defaultData/datasource_bb_default.js +646 -0
  350. package/src/db/defaultData/employeeImport.js +152 -0
  351. package/src/db/defaultData/expensesImport.js +114 -0
  352. package/src/db/defaultData/inventoryImport.js +106 -0
  353. package/src/db/defaultData/jobsImport.js +158 -0
  354. package/src/db/linkedRows/LinkController.js +2 -48
  355. package/src/db/linkedRows/LinkDocument.js +47 -0
  356. package/src/db/utils.ts +1 -1
  357. package/src/sdk/app/tables/index.ts +1 -1
@@ -0,0 +1,565 @@
1
+ "use strict";
2
+ const { FieldTypes, AutoFieldSubTypes, RelationshipTypes, } = require("../../constants/index");
3
+ const { importToRows } = require("../../api/controllers/table/utils");
4
+ const { cloneDeep } = require("lodash/fp");
5
+ const LinkDocument = require("../linkedRows/LinkDocument");
6
+ const { inventoryImport } = require("./inventoryImport");
7
+ const { employeeImport } = require("./employeeImport");
8
+ const { jobsImport } = require("./jobsImport");
9
+ const { expensesImport } = require("./expensesImport");
10
+ const { db: dbCore } = require("@budibase/backend-core");
11
+ exports.DEFAULT_JOBS_TABLE_ID = "ta_bb_jobs";
12
+ exports.DEFAULT_INVENTORY_TABLE_ID = "ta_bb_inventory";
13
+ exports.DEFAULT_EXPENSES_TABLE_ID = "ta_bb_expenses";
14
+ exports.DEFAULT_EMPLOYEE_TABLE_ID = "ta_bb_employee";
15
+ exports.DEFAULT_BB_DATASOURCE_ID = "datasource_internal_bb_default";
16
+ exports.DEFAULT_BB_DATASOURCE = {
17
+ _id: this.DEFAULT_BB_DATASOURCE_ID,
18
+ type: dbCore.BUDIBASE_DATASOURCE_TYPE,
19
+ name: "Sample Data",
20
+ source: "BUDIBASE",
21
+ config: {},
22
+ };
23
+ const syncLastIds = (table, rowCount) => {
24
+ Object.keys(table.schema).forEach(key => {
25
+ const entry = table.schema[key];
26
+ if (entry.autocolumn && entry.subtype == "autoID") {
27
+ entry.lastID = rowCount;
28
+ }
29
+ });
30
+ };
31
+ const tableImport = (table, data) => {
32
+ const cloneTable = cloneDeep(table);
33
+ const rowDocs = importToRows(data, cloneTable);
34
+ syncLastIds(cloneTable, rowDocs.length);
35
+ return { rows: rowDocs, table: cloneTable };
36
+ };
37
+ // AUTO COLUMNS
38
+ const AUTO_COLUMNS = {
39
+ "Created At": {
40
+ name: "Created At",
41
+ type: FieldTypes.DATETIME,
42
+ subtype: AutoFieldSubTypes.CREATED_AT,
43
+ icon: "ri-magic-line",
44
+ autocolumn: true,
45
+ constraints: {
46
+ type: FieldTypes.STRING,
47
+ length: {},
48
+ presence: false,
49
+ datetime: {
50
+ latest: "",
51
+ earliest: "",
52
+ },
53
+ },
54
+ },
55
+ "Updated At": {
56
+ name: "Updated At",
57
+ type: FieldTypes.DATETIME,
58
+ subtype: AutoFieldSubTypes.UPDATED_AT,
59
+ icon: "ri-magic-line",
60
+ autocolumn: true,
61
+ constraints: {
62
+ type: FieldTypes.STRING,
63
+ length: {},
64
+ presence: false,
65
+ datetime: {
66
+ latest: "",
67
+ earliest: "",
68
+ },
69
+ },
70
+ },
71
+ };
72
+ exports.DEFAULT_INVENTORY_TABLE_SCHEMA = {
73
+ _id: this.DEFAULT_INVENTORY_TABLE_ID,
74
+ type: "internal",
75
+ views: {},
76
+ sourceId: exports.DEFAULT_BB_DATASOURCE_ID,
77
+ primaryDisplay: "Item Name",
78
+ name: "Inventory",
79
+ schema: Object.assign({ "Item ID": {
80
+ name: "Item ID",
81
+ type: FieldTypes.NUMBER,
82
+ subtype: AutoFieldSubTypes.AUTO_ID,
83
+ icon: "ri-magic-line",
84
+ autocolumn: true,
85
+ constraints: {
86
+ type: FieldTypes.NUMBER,
87
+ presence: false,
88
+ numericality: {
89
+ greaterThanOrEqualTo: "",
90
+ lessThanOrEqualTo: "",
91
+ },
92
+ },
93
+ }, "Item Name": {
94
+ type: FieldTypes.STRING,
95
+ constraints: {
96
+ type: FieldTypes.STRING,
97
+ length: {
98
+ maximum: null,
99
+ },
100
+ presence: {
101
+ allowEmpty: false,
102
+ },
103
+ },
104
+ name: "Item Name",
105
+ }, "Item Tags": {
106
+ type: FieldTypes.ARRAY,
107
+ constraints: {
108
+ type: FieldTypes.ARRAY,
109
+ presence: {
110
+ allowEmpty: false,
111
+ },
112
+ inclusion: ["Electrical", "Material", "Vehicle", "Office", "Tools"],
113
+ },
114
+ name: "Item Tags",
115
+ sortable: false,
116
+ }, Notes: {
117
+ type: FieldTypes.LONGFORM,
118
+ constraints: {
119
+ type: FieldTypes.STRING,
120
+ length: {},
121
+ presence: false,
122
+ },
123
+ name: "Notes",
124
+ useRichText: null,
125
+ }, Status: {
126
+ type: FieldTypes.ARRAY,
127
+ constraints: {
128
+ type: FieldTypes.ARRAY,
129
+ presence: {
130
+ allowEmpty: false,
131
+ },
132
+ inclusion: ["Available", "Repair", "Broken"],
133
+ },
134
+ name: "Status",
135
+ sortable: false,
136
+ }, SKU: {
137
+ type: FieldTypes.BARCODEQR,
138
+ constraints: {
139
+ type: FieldTypes.STRING,
140
+ length: {},
141
+ presence: false,
142
+ },
143
+ name: "SKU",
144
+ }, "Purchase Date": {
145
+ type: FieldTypes.DATETIME,
146
+ constraints: {
147
+ type: FieldTypes.STRING,
148
+ length: {},
149
+ presence: false,
150
+ datetime: {
151
+ latest: "",
152
+ earliest: "",
153
+ },
154
+ },
155
+ name: "Purchase Date",
156
+ ignoreTimezones: true,
157
+ }, "Purchase Price": {
158
+ type: FieldTypes.NUMBER,
159
+ constraints: {
160
+ type: FieldTypes.NUMBER,
161
+ presence: false,
162
+ numericality: {
163
+ greaterThanOrEqualTo: null,
164
+ lessThanOrEqualTo: "",
165
+ },
166
+ },
167
+ name: "Purchase Price",
168
+ } }, AUTO_COLUMNS),
169
+ };
170
+ exports.DEFAULT_EMPLOYEE_TABLE_SCHEMA = {
171
+ _id: this.DEFAULT_EMPLOYEE_TABLE_ID,
172
+ type: "internal",
173
+ views: {},
174
+ name: "Employees",
175
+ sourceId: exports.DEFAULT_BB_DATASOURCE_ID,
176
+ primaryDisplay: "First Name",
177
+ schema: Object.assign({ "First Name": {
178
+ name: "First Name",
179
+ type: FieldTypes.STRING,
180
+ constraints: {
181
+ type: FieldTypes.STRING,
182
+ length: {},
183
+ presence: false,
184
+ },
185
+ }, "Last Name": {
186
+ name: "Last Name",
187
+ type: FieldTypes.STRING,
188
+ constraints: {
189
+ type: FieldTypes.STRING,
190
+ length: {},
191
+ presence: false,
192
+ },
193
+ }, Email: {
194
+ name: "Email",
195
+ type: FieldTypes.STRING,
196
+ constraints: {
197
+ type: FieldTypes.STRING,
198
+ length: {},
199
+ presence: false,
200
+ },
201
+ }, Address: {
202
+ name: "Address",
203
+ type: FieldTypes.STRING,
204
+ constraints: {
205
+ type: FieldTypes.STRING,
206
+ length: {},
207
+ presence: false,
208
+ },
209
+ }, City: {
210
+ name: "City",
211
+ type: FieldTypes.STRING,
212
+ constraints: {
213
+ type: FieldTypes.STRING,
214
+ length: {},
215
+ presence: false,
216
+ },
217
+ }, Postcode: {
218
+ name: "Postcode",
219
+ type: FieldTypes.STRING,
220
+ constraints: {
221
+ type: FieldTypes.STRING,
222
+ length: {},
223
+ presence: false,
224
+ },
225
+ }, Phone: {
226
+ name: "Phone",
227
+ type: FieldTypes.STRING,
228
+ constraints: {
229
+ type: FieldTypes.STRING,
230
+ length: {},
231
+ presence: false,
232
+ },
233
+ }, "EMPLOYEE ID": {
234
+ name: "EMPLOYEE ID",
235
+ type: FieldTypes.NUMBER,
236
+ subtype: AutoFieldSubTypes.AUTO_ID,
237
+ icon: "ri-magic-line",
238
+ autocolumn: true,
239
+ constraints: {
240
+ type: FieldTypes.NUMBER,
241
+ presence: false,
242
+ numericality: {
243
+ greaterThanOrEqualTo: "",
244
+ lessThanOrEqualTo: "",
245
+ },
246
+ },
247
+ }, "Employee Level": {
248
+ type: FieldTypes.ARRAY,
249
+ constraints: {
250
+ type: FieldTypes.ARRAY,
251
+ presence: false,
252
+ inclusion: ["Manager", "Junior", "Senior", "Apprentice", "Contractor"],
253
+ },
254
+ name: "Employee Level",
255
+ sortable: false,
256
+ }, "Badge Photo": {
257
+ type: "attachment",
258
+ constraints: {
259
+ type: FieldTypes.ARRAY,
260
+ presence: false,
261
+ },
262
+ name: "Badge Photo",
263
+ sortable: false,
264
+ }, Jobs: {
265
+ type: FieldTypes.LINK,
266
+ constraints: {
267
+ type: FieldTypes.ARRAY,
268
+ presence: false,
269
+ },
270
+ fieldName: "Assigned",
271
+ name: "Jobs",
272
+ relationshipType: RelationshipTypes.MANY_TO_MANY,
273
+ tableId: this.DEFAULT_JOBS_TABLE_ID,
274
+ }, "Start Date": {
275
+ type: FieldTypes.DATETIME,
276
+ constraints: {
277
+ type: FieldTypes.STRING,
278
+ length: {},
279
+ presence: false,
280
+ datetime: {
281
+ latest: "",
282
+ earliest: "",
283
+ },
284
+ },
285
+ name: "Start Date",
286
+ ignoreTimezones: true,
287
+ }, "End Date": {
288
+ type: FieldTypes.DATETIME,
289
+ constraints: {
290
+ type: FieldTypes.STRING,
291
+ length: {},
292
+ presence: false,
293
+ datetime: {
294
+ latest: "",
295
+ earliest: "",
296
+ },
297
+ },
298
+ name: "End Date",
299
+ ignoreTimezones: true,
300
+ } }, AUTO_COLUMNS),
301
+ };
302
+ exports.DEFAULT_JOBS_TABLE_SCHEMA = {
303
+ _id: this.DEFAULT_JOBS_TABLE_ID,
304
+ type: "internal",
305
+ name: "Jobs",
306
+ sourceId: exports.DEFAULT_BB_DATASOURCE_ID,
307
+ primaryDisplay: "Job ID",
308
+ schema: Object.assign({ "Job ID": {
309
+ name: "Job ID",
310
+ type: FieldTypes.NUMBER,
311
+ subtype: AutoFieldSubTypes.AUTO_ID,
312
+ icon: "ri-magic-line",
313
+ autocolumn: true,
314
+ constraints: {
315
+ type: FieldTypes.NUMBER,
316
+ presence: false,
317
+ numericality: {
318
+ greaterThanOrEqualTo: "",
319
+ lessThanOrEqualTo: "",
320
+ },
321
+ },
322
+ }, "Quote Date": {
323
+ type: FieldTypes.DATETIME,
324
+ constraints: {
325
+ type: FieldTypes.STRING,
326
+ length: {},
327
+ presence: {
328
+ allowEmpty: false,
329
+ },
330
+ datetime: {
331
+ latest: "",
332
+ earliest: "",
333
+ },
334
+ },
335
+ name: "Quote Date",
336
+ ignoreTimezones: true,
337
+ }, "Quote Price": {
338
+ type: FieldTypes.NUMBER,
339
+ constraints: {
340
+ type: FieldTypes.NUMBER,
341
+ presence: {
342
+ allowEmpty: false,
343
+ },
344
+ numericality: {
345
+ greaterThanOrEqualTo: "",
346
+ lessThanOrEqualTo: "",
347
+ },
348
+ },
349
+ name: "Quote Price",
350
+ }, "Works Start": {
351
+ type: FieldTypes.DATETIME,
352
+ constraints: {
353
+ type: FieldTypes.STRING,
354
+ length: {},
355
+ presence: false,
356
+ datetime: {
357
+ latest: "",
358
+ earliest: "",
359
+ },
360
+ },
361
+ name: "Works Start",
362
+ ignoreTimezones: true,
363
+ }, Address: {
364
+ type: FieldTypes.LONGFORM,
365
+ constraints: {
366
+ type: FieldTypes.STRING,
367
+ length: {},
368
+ presence: false,
369
+ },
370
+ name: "Address",
371
+ useRichText: null,
372
+ }, "Customer Name": {
373
+ type: FieldTypes.STRING,
374
+ constraints: {
375
+ type: FieldTypes.STRING,
376
+ length: {
377
+ maximum: null,
378
+ },
379
+ presence: false,
380
+ },
381
+ name: "Customer Name",
382
+ }, Notes: {
383
+ type: FieldTypes.LONGFORM,
384
+ constraints: {
385
+ type: FieldTypes.STRING,
386
+ length: {},
387
+ presence: false,
388
+ },
389
+ name: "Notes",
390
+ useRichText: null,
391
+ }, "Customer Phone": {
392
+ type: FieldTypes.STRING,
393
+ constraints: {
394
+ type: FieldTypes.STRING,
395
+ length: {
396
+ maximum: null,
397
+ },
398
+ presence: false,
399
+ },
400
+ name: "Customer Phone",
401
+ }, "Customer Email": {
402
+ type: FieldTypes.STRING,
403
+ constraints: {
404
+ type: FieldTypes.STRING,
405
+ length: {
406
+ maximum: null,
407
+ },
408
+ presence: false,
409
+ },
410
+ name: "Customer Email",
411
+ }, Assigned: {
412
+ name: "Assigned",
413
+ type: FieldTypes.LINK,
414
+ tableId: this.DEFAULT_EMPLOYEE_TABLE_ID,
415
+ fieldName: "Jobs",
416
+ relationshipType: RelationshipTypes.MANY_TO_MANY,
417
+ // sortable: true,
418
+ }, "Works End": {
419
+ type: "datetime",
420
+ constraints: {
421
+ type: "string",
422
+ length: {},
423
+ presence: false,
424
+ datetime: {
425
+ latest: "",
426
+ earliest: "",
427
+ },
428
+ },
429
+ name: "Works End",
430
+ ignoreTimezones: true,
431
+ }, "Updated Price": {
432
+ type: "number",
433
+ constraints: {
434
+ type: "number",
435
+ presence: false,
436
+ numericality: {
437
+ greaterThanOrEqualTo: "",
438
+ lessThanOrEqualTo: "",
439
+ },
440
+ },
441
+ name: "Updated Price",
442
+ } }, AUTO_COLUMNS),
443
+ };
444
+ exports.DEFAULT_EXPENSES_TABLE_SCHEMA = {
445
+ _id: this.DEFAULT_EXPENSES_TABLE_ID,
446
+ type: "internal",
447
+ views: {},
448
+ name: "Expenses",
449
+ sourceId: exports.DEFAULT_BB_DATASOURCE_ID,
450
+ primaryDisplay: "Expense ID",
451
+ schema: Object.assign({ "Expense ID": {
452
+ name: "Expense ID",
453
+ type: FieldTypes.NUMBER,
454
+ subtype: AutoFieldSubTypes.AUTO_ID,
455
+ icon: "ri-magic-line",
456
+ autocolumn: true,
457
+ constraints: {
458
+ type: FieldTypes.NUMBER,
459
+ presence: false,
460
+ numericality: {
461
+ greaterThanOrEqualTo: "",
462
+ lessThanOrEqualTo: "",
463
+ },
464
+ },
465
+ }, "Expense Tags": {
466
+ type: FieldTypes.ARRAY,
467
+ constraints: {
468
+ type: FieldTypes.ARRAY,
469
+ presence: {
470
+ allowEmpty: false,
471
+ },
472
+ inclusion: [
473
+ "Fuel",
474
+ "Food",
475
+ "Materials",
476
+ "Repair",
477
+ "Equipment",
478
+ "Fees",
479
+ "Service",
480
+ "Office",
481
+ "Other",
482
+ ],
483
+ },
484
+ name: "Expense Tags",
485
+ sortable: false,
486
+ }, Cost: {
487
+ type: FieldTypes.NUMBER,
488
+ constraints: {
489
+ type: FieldTypes.NUMBER,
490
+ presence: {
491
+ allowEmpty: false,
492
+ },
493
+ numericality: {
494
+ greaterThanOrEqualTo: "",
495
+ lessThanOrEqualTo: "",
496
+ },
497
+ },
498
+ name: "Cost",
499
+ }, Notes: {
500
+ type: FieldTypes.LONGFORM,
501
+ constraints: {
502
+ type: FieldTypes.STRING,
503
+ length: {},
504
+ presence: false,
505
+ },
506
+ name: "Notes",
507
+ useRichText: null,
508
+ }, "Payment Due": {
509
+ type: FieldTypes.DATETIME,
510
+ constraints: {
511
+ type: FieldTypes.STRING,
512
+ length: {},
513
+ presence: false,
514
+ datetime: {
515
+ latest: "",
516
+ earliest: "",
517
+ },
518
+ },
519
+ name: "Payment Due",
520
+ ignoreTimezones: true,
521
+ }, "Date Paid": {
522
+ type: FieldTypes.DATETIME,
523
+ constraints: {
524
+ type: FieldTypes.STRING,
525
+ length: {},
526
+ presence: false,
527
+ datetime: {
528
+ latest: "",
529
+ earliest: "",
530
+ },
531
+ },
532
+ name: "Date Paid",
533
+ ignoreTimezones: true,
534
+ }, Attachment: {
535
+ type: FieldTypes.ATTACHMENT,
536
+ constraints: {
537
+ type: FieldTypes.ARRAY,
538
+ presence: false,
539
+ },
540
+ name: "Attachment",
541
+ sortable: false,
542
+ } }, AUTO_COLUMNS),
543
+ };
544
+ exports.buildDefaultDocs = () => {
545
+ const inventoryData = tableImport(this.DEFAULT_INVENTORY_TABLE_SCHEMA, inventoryImport);
546
+ const employeeData = tableImport(this.DEFAULT_EMPLOYEE_TABLE_SCHEMA, employeeImport);
547
+ const jobData = tableImport(this.DEFAULT_JOBS_TABLE_SCHEMA, jobsImport);
548
+ const expensesData = tableImport(this.DEFAULT_EXPENSES_TABLE_SCHEMA, expensesImport);
549
+ // Build one link doc for each employee/job
550
+ const jobEmployeeLinks = employeeData.rows.map((employee, index) => {
551
+ return new LinkDocument(employeeData.table._id, "Jobs", employeeData.rows[index]._id, jobData.table._id, "Assigned", jobData.rows[index]._id);
552
+ });
553
+ return [
554
+ this.DEFAULT_BB_DATASOURCE,
555
+ inventoryData.table,
556
+ employeeData.table,
557
+ jobData.table,
558
+ expensesData.table,
559
+ ...inventoryData.rows,
560
+ ...employeeData.rows,
561
+ ...jobData.rows,
562
+ ...expensesData.rows,
563
+ ...jobEmployeeLinks,
564
+ ];
565
+ };