@budibase/server 1.0.207-alpha.2 → 1.0.208

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 (184) hide show
  1. package/builder/assets/index.24307ca0.css +6 -0
  2. package/builder/assets/index.cd64626e.js +1315 -0
  3. package/builder/index.html +2 -2
  4. package/coverage/clover.xml +121 -123
  5. package/coverage/coverage-final.json +5 -5
  6. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  7. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  8. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/backup.js.html +6 -9
  10. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/component.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/index.html +7 -7
  15. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  18. package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  21. package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/row/external.js.html +23 -8
  25. package/coverage/lcov-report/api/controllers/row/index.html +16 -16
  26. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/utils.js.html +8 -17
  30. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  32. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  35. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  40. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  44. package/coverage/lcov-report/api/index.html +1 -1
  45. package/coverage/lcov-report/api/index.js.html +1 -1
  46. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  47. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  48. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  49. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/index.html +1 -1
  57. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  71. package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  74. package/coverage/lcov-report/automations/actions.js.html +1 -1
  75. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  76. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  77. package/coverage/lcov-report/automations/index.html +5 -5
  78. package/coverage/lcov-report/automations/index.js.html +1 -1
  79. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  80. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  81. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  82. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  83. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  84. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  85. package/coverage/lcov-report/automations/steps/index.html +1 -1
  86. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/loop.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  96. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  97. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  98. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  99. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  100. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  101. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  102. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggers.js.html +4 -4
  105. package/coverage/lcov-report/constants/index.html +1 -1
  106. package/coverage/lcov-report/constants/index.js.html +1 -1
  107. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  108. package/coverage/lcov-report/constants/screens.js.html +1 -1
  109. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  110. package/coverage/lcov-report/db/index.html +10 -10
  111. package/coverage/lcov-report/db/index.js.html +1 -1
  112. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  113. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  114. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  115. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  116. package/coverage/lcov-report/db/newid.js.html +1 -1
  117. package/coverage/lcov-report/db/utils.js.html +6 -9
  118. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  119. package/coverage/lcov-report/events/index.html +1 -1
  120. package/coverage/lcov-report/events/index.js.html +1 -1
  121. package/coverage/lcov-report/events/utils.js.html +1 -1
  122. package/coverage/lcov-report/index.html +22 -22
  123. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  124. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  125. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  126. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  127. package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
  128. package/coverage/lcov-report/middleware/index.html +1 -1
  129. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  130. package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
  131. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  132. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  133. package/coverage/lcov-report/middleware/utils.js.html +1 -1
  134. package/coverage/lcov-report/threads/automation.js.html +1 -1
  135. package/coverage/lcov-report/threads/index.html +1 -1
  136. package/coverage/lcov-report/threads/query.js.html +1 -1
  137. package/coverage/lcov-report/threads/utils.js.html +1 -1
  138. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  139. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  140. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  141. package/coverage/lcov-report/utilities/global.js.html +1 -1
  142. package/coverage/lcov-report/utilities/index.html +1 -1
  143. package/coverage/lcov-report/utilities/index.js.html +1 -1
  144. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  145. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  146. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  147. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  148. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  149. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  150. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  151. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  152. package/coverage/lcov-report/utilities/security.js.html +1 -1
  153. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  154. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  155. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  156. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  157. package/coverage/lcov-report/utilities/users.js.html +1 -1
  158. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  159. package/coverage/lcov.info +215 -221
  160. package/dist/api/controllers/backup.js +2 -3
  161. package/dist/api/controllers/row/external.js +4 -2
  162. package/dist/api/controllers/row/utils.js +0 -3
  163. package/dist/automations/triggers.js +1 -1
  164. package/dist/db/utils.js +0 -1
  165. package/dist/definitions/datasource.js +0 -1
  166. package/dist/integrations/index.js +0 -4
  167. package/dist/integrations/mongodb.js +6 -0
  168. package/dist/package.json +6 -7
  169. package/dist/tsconfig.build.tsbuildinfo +1 -1
  170. package/dist/utilities/fileSystem/index.js +6 -16
  171. package/package.json +7 -8
  172. package/src/api/controllers/backup.js +2 -3
  173. package/src/api/controllers/row/external.js +7 -2
  174. package/src/api/controllers/row/utils.js +0 -3
  175. package/src/automations/triggers.js +1 -1
  176. package/src/db/utils.js +0 -1
  177. package/src/definitions/datasource.ts +0 -1
  178. package/src/integrations/index.ts +0 -4
  179. package/src/integrations/mongodb.ts +6 -0
  180. package/src/utilities/fileSystem/index.js +8 -22
  181. package/builder/assets/index.c6df2367.css +0 -6
  182. package/builder/assets/index.ec376520.js +0 -1313
  183. package/dist/integrations/snowflake.js +0 -101
  184. package/src/integrations/snowflake.ts +0 -98
@@ -232,7 +232,7 @@ exports.update = async function (ctx) {
232
232
  <div class='footer quiet pad2 space-top1 center small'>
233
233
  Code coverage generated by
234
234
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
235
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
235
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
236
236
  </div>
237
237
  <script src="../../prettify.js"></script>
238
238
  <script>
@@ -244,7 +244,7 @@ exports.fetchSelf = async ctx =&gt; {
244
244
  <div class='footer quiet pad2 space-top1 center small'>
245
245
  Code coverage generated by
246
246
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
247
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
247
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
248
248
  </div>
249
249
  <script src="../../prettify.js"></script>
250
250
  <script>
@@ -826,7 +826,7 @@ exports.test = async function (ctx) {
826
826
  <div class='footer quiet pad2 space-top1 center small'>
827
827
  Code coverage generated by
828
828
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
829
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
829
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
830
830
  </div>
831
831
  <script src="../../prettify.js"></script>
832
832
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>14/14</span>
28
+ <span class='fraction'>13/13</span>
29
29
  </div>
30
30
 
31
31
 
@@ -46,7 +46,7 @@
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>14/14</span>
49
+ <span class='fraction'>13/13</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,8 +80,7 @@
80
80
  <a name='L15'></a><a href='#L15'>15</a>
81
81
  <a name='L16'></a><a href='#L16'>16</a>
82
82
  <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">27x</span>
83
+ <a name='L18'></a><a href='#L18'>18</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">27x</span>
85
84
  <span class="cline-any cline-yes">27x</span>
86
85
  <span class="cline-any cline-yes">27x</span>
87
86
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -91,7 +90,6 @@
91
90
  <span class="cline-any cline-yes">1x</span>
92
91
  <span class="cline-any cline-yes">1x</span>
93
92
  <span class="cline-any cline-yes">1x</span>
94
- <span class="cline-any cline-yes">1x</span>
95
93
  <span class="cline-any cline-neutral">&nbsp;</span>
96
94
  <span class="cline-any cline-yes">1x</span>
97
95
  <span class="cline-any cline-yes">1x</span>
@@ -104,12 +102,11 @@ const { events, context } = require("@budibase/backend-core")
104
102
  const { DocumentTypes } = require("../../db/utils")
105
103
  &nbsp;
106
104
  exports.exportAppDump = async function (ctx) {
107
- let { appId, excludeRows } = ctx.query
105
+ const { appId } = ctx.query
108
106
  const appName = decodeURI(ctx.query.appname)
109
- excludeRows = excludeRows === "true"
110
107
  const backupIdentifier = `${appName}-export-${new Date().getTime()}.txt`
111
108
  ctx.attachment(backupIdentifier)
112
- ctx.body = await streamBackup(appId, excludeRows)
109
+ ctx.body = await streamBackup(appId)
113
110
  &nbsp;
114
111
  await context.doInAppContext(appId, async () =&gt; {
115
112
  const appDb = context.getAppDB()
@@ -124,7 +121,7 @@ exports.exportAppDump = async function (ctx) {
124
121
  <div class='footer quiet pad2 space-top1 center small'>
125
122
  Code coverage generated by
126
123
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
127
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
124
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
128
125
  </div>
129
126
  <script src="../../prettify.js"></script>
130
127
  <script>
@@ -409,7 +409,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
409
409
  <div class='footer quiet pad2 space-top1 center small'>
410
410
  Code coverage generated by
411
411
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
412
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
412
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
413
413
  </div>
414
414
  <script src="../../prettify.js"></script>
415
415
  <script>
@@ -172,7 +172,7 @@ exports.fetchAppComponentDefinitions = async function (ctx) {
172
172
  <div class='footer quiet pad2 space-top1 center small'>
173
173
  Code coverage generated by
174
174
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
175
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
175
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
176
176
  </div>
177
177
  <script src="../../prettify.js"></script>
178
178
  <script>
@@ -859,7 +859,7 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
859
859
  <div class='footer quiet pad2 space-top1 center small'>
860
860
  Code coverage generated by
861
861
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
862
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
862
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
863
863
  </div>
864
864
  <script src="../../prettify.js"></script>
865
865
  <script>
@@ -475,7 +475,7 @@ exports.getBudibaseVersion = async ctx =&gt; {
475
475
  <div class='footer quiet pad2 space-top1 center small'>
476
476
  Code coverage generated by
477
477
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
478
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
478
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
479
479
  </div>
480
480
  <script src="../../prettify.js"></script>
481
481
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">73.13% </span>
26
+ <span class="strong">73.1% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>705/964</span>
28
+ <span class='fraction'>704/963</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">73.05% </span>
47
+ <span class="strong">73.02% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>694/950</span>
49
+ <span class='fraction'>693/949</span>
50
50
  </div>
51
51
 
52
52
 
@@ -129,13 +129,13 @@
129
129
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
130
130
  </td>
131
131
  <td data-value="100" class="pct high">100%</td>
132
- <td data-value="14" class="abs high">14/14</td>
132
+ <td data-value="13" class="abs high">13/13</td>
133
133
  <td data-value="100" class="pct high">100%</td>
134
134
  <td data-value="0" class="abs high">0/0</td>
135
135
  <td data-value="100" class="pct high">100%</td>
136
136
  <td data-value="2" class="abs high">2/2</td>
137
137
  <td data-value="100" class="pct high">100%</td>
138
- <td data-value="14" class="abs high">14/14</td>
138
+ <td data-value="13" class="abs high">13/13</td>
139
139
  </tr>
140
140
 
141
141
  <tr>
@@ -386,7 +386,7 @@
386
386
  <div class='footer quiet pad2 space-top1 center small'>
387
387
  Code coverage generated by
388
388
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
389
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
389
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
390
390
  </div>
391
391
  <script src="../../prettify.js"></script>
392
392
  <script>
@@ -136,7 +136,7 @@ exports.find = async function (ctx) {
136
136
  <div class='footer quiet pad2 space-top1 center small'>
137
137
  Code coverage generated by
138
138
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
139
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
140
140
  </div>
141
141
  <script src="../../prettify.js"></script>
142
142
  <script>
@@ -232,7 +232,7 @@ exports.destroy = async function (ctx) {
232
232
  <div class='footer quiet pad2 space-top1 center small'>
233
233
  Code coverage generated by
234
234
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
235
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
235
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
236
236
  </div>
237
237
  <script src="../../prettify.js"></script>
238
238
  <script>
@@ -193,7 +193,7 @@ exports.getMetadata = async ctx =&gt; {
193
193
  <div class='footer quiet pad2 space-top1 center small'>
194
194
  Code coverage generated by
195
195
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
196
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
196
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
197
197
  </div>
198
198
  <script src="../../prettify.js"></script>
199
199
  <script>
@@ -109,7 +109,7 @@ exports.fetchDefinitions = <span class="fstat-no" title="function not covered" >
109
109
  <div class='footer quiet pad2 space-top1 center small'>
110
110
  Code coverage generated by
111
111
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
112
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
112
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
113
113
  </div>
114
114
  <script src="../../prettify.js"></script>
115
115
  <script>
@@ -595,7 +595,7 @@ exports.removePermission = async function (ctx) {
595
595
  <div class='footer quiet pad2 space-top1 center small'>
596
596
  Code coverage generated by
597
597
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
598
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
598
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
599
599
  </div>
600
600
  <script src="../../prettify.js"></script>
601
601
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
104
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -220,7 +220,7 @@ exports.generateQueryPreviewValidation = () =&gt; {
220
220
  <div class='footer quiet pad2 space-top1 center small'>
221
221
  Code coverage generated by
222
222
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
223
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
223
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
224
224
  </div>
225
225
  <script src="../../../prettify.js"></script>
226
226
  <script>
@@ -394,7 +394,7 @@ exports.destroy = async function (ctx) {
394
394
  <div class='footer quiet pad2 space-top1 center small'>
395
395
  Code coverage generated by
396
396
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
397
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
397
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
398
398
  </div>
399
399
  <script src="../../prettify.js"></script>
400
400
  <script>
@@ -346,7 +346,7 @@ exports.clientFetch = async ctx =&gt; {
346
346
  <div class='footer quiet pad2 space-top1 center small'>
347
347
  Code coverage generated by
348
348
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
349
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
349
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
350
350
  </div>
351
351
  <script src="../../prettify.js"></script>
352
352
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">16.36% </span>
26
+ <span class="strong">16.07% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>18/110</span>
28
+ <span class='fraction'>18/112</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">16.66% </span>
47
+ <span class="strong">16.36% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>18/108</span>
49
+ <span class='fraction'>18/110</span>
50
50
  </div>
51
51
 
52
52
 
@@ -291,7 +291,12 @@
291
291
  <a name='L226'></a><a href='#L226'>226</a>
292
292
  <a name='L227'></a><a href='#L227'>227</a>
293
293
  <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
295
300
  <span class="cline-any cline-neutral">&nbsp;</span>
296
301
  <span class="cline-any cline-neutral">&nbsp;</span>
297
302
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -456,6 +461,9 @@
456
461
  <span class="cline-any cline-no">&nbsp;</span>
457
462
  <span class="cline-any cline-neutral">&nbsp;</span>
458
463
  <span class="cline-any cline-no">&nbsp;</span>
464
+ <span class="cline-any cline-no">&nbsp;</span>
465
+ <span class="cline-any cline-no">&nbsp;</span>
466
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
467
  <span class="cline-any cline-neutral">&nbsp;</span>
460
468
  <span class="cline-any cline-neutral">&nbsp;</span>
461
469
  <span class="cline-any cline-no">&nbsp;</span>
@@ -463,7 +471,9 @@
463
471
  <span class="cline-any cline-neutral">&nbsp;</span>
464
472
  <span class="cline-any cline-neutral">&nbsp;</span>
465
473
  <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
475
  <span class="cline-any cline-no">&nbsp;</span>
476
+ <span class="cline-any cline-neutral">&nbsp;</span>
467
477
  <span class="cline-any cline-no">&nbsp;</span>
468
478
  <span class="cline-any cline-no">&nbsp;</span>
469
479
  <span class="cline-any cline-no">&nbsp;</span>
@@ -676,22 +686,27 @@ exports.validate = <span class="fstat-no" title="function not covered" >as</span
676
686
  }
677
687
  &nbsp;
678
688
  exports.exportRows = <span class="fstat-no" title="function not covered" >as</span>ync ctx =&gt; {
679
- const { datasourceId } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(ctx.params.tableId)</span>
689
+ const { datasourceId, tableName } = <span class="cstat-no" title="statement not covered" >breakExternalTableId(ctx.params.tableId)</span>
680
690
  const db = <span class="cstat-no" title="statement not covered" >getAppDB()</span>
681
691
  let format = <span class="cstat-no" title="statement not covered" >ctx.query.format</span>
682
692
  const datasource = <span class="cstat-no" title="statement not covered" >await db.get(datasourceId)</span>
683
693
  <span class="cstat-no" title="statement not covered" > if (!datasource || !datasource.entities) {</span>
684
694
  <span class="cstat-no" title="statement not covered" > ctx.throw(400, "Datasource has not been configured for plus API.")</span>
685
695
  }
696
+ const tables = <span class="cstat-no" title="statement not covered" >datasource.entities</span>
697
+ const table = <span class="cstat-no" title="statement not covered" >tables[tableName]</span>
686
698
  <span class="cstat-no" title="statement not covered" > ctx.request.body = {</span>
687
699
  query: {
688
700
  oneOf: {
689
- _id: ctx.request.body.rows.map(<span class="fstat-no" title="function not covered" >ro</span>w =&gt; <span class="cstat-no" title="statement not covered" >JSON.parse(decodeURI(row))[0])</span>,
701
+ [table.primaryDisplay]: ctx.request.body.rows.map(
702
+ <span class="fstat-no" title="function not covered" > id</span> =&gt; <span class="cstat-no" title="statement not covered" >breakRowIdField(id)[0]</span>
703
+ ),
690
704
  },
691
705
  },
692
706
  }
693
707
  &nbsp;
694
708
  let result = <span class="cstat-no" title="statement not covered" >await exports.search(ctx)</span>
709
+ &nbsp;
695
710
  let headers = <span class="cstat-no" title="statement not covered" >Object.keys(result.rows[0])</span>
696
711
  const exporter = <span class="cstat-no" title="statement not covered" >exporters[format]</span>
697
712
  const filename = <span class="cstat-no" title="statement not covered" >`export.${format}`</span>
@@ -754,7 +769,7 @@ exports.fetchEnrichedRow = <span class="fstat-no" title="function not covered" >
754
769
  <div class='footer quiet pad2 space-top1 center small'>
755
770
  Code coverage generated by
756
771
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
757
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
772
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
758
773
  </div>
759
774
  <script src="../../../prettify.js"></script>
760
775
  <script>
@@ -30,9 +30,9 @@
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">35.55% </span>
33
+ <span class="strong">35.82% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>96/270</span>
35
+ <span class='fraction'>96/268</span>
36
36
  </div>
37
37
 
38
38
 
@@ -80,17 +80,17 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file low" data-value="external.js"><a href="external.js.html">external.js</a></td>
83
- <td data-value="16.36" class="pic low">
83
+ <td data-value="16.07" class="pic low">
84
84
  <div class="chart"><div class="cover-fill" style="width: 16%"></div><div class="cover-empty" style="width: 84%"></div></div>
85
85
  </td>
86
- <td data-value="16.36" class="pct low">16.36%</td>
87
- <td data-value="110" class="abs low">18/110</td>
86
+ <td data-value="16.07" class="pct low">16.07%</td>
87
+ <td data-value="112" class="abs low">18/112</td>
88
88
  <td data-value="0" class="pct low">0%</td>
89
89
  <td data-value="46" class="abs low">0/46</td>
90
90
  <td data-value="0" class="pct low">0%</td>
91
91
  <td data-value="15" class="abs low">0/15</td>
92
- <td data-value="16.66" class="pct low">16.66%</td>
93
- <td data-value="108" class="abs low">18/108</td>
92
+ <td data-value="16.36" class="pct low">16.36%</td>
93
+ <td data-value="110" class="abs low">18/110</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
@@ -140,17 +140,17 @@
140
140
 
141
141
  <tr>
142
142
  <td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
143
- <td data-value="66.66" class="pic medium">
144
- <div class="chart"><div class="cover-fill" style="width: 66%"></div><div class="cover-empty" style="width: 34%"></div></div>
143
+ <td data-value="69.23" class="pic medium">
144
+ <div class="chart"><div class="cover-fill" style="width: 69%"></div><div class="cover-empty" style="width: 31%"></div></div>
145
145
  </td>
146
- <td data-value="66.66" class="pct medium">66.66%</td>
147
- <td data-value="54" class="abs medium">36/54</td>
148
- <td data-value="38.23" class="pct low">38.23%</td>
149
- <td data-value="34" class="abs low">13/34</td>
146
+ <td data-value="69.23" class="pct medium">69.23%</td>
147
+ <td data-value="52" class="abs medium">36/52</td>
148
+ <td data-value="40.62" class="pct low">40.62%</td>
149
+ <td data-value="32" class="abs low">13/32</td>
150
150
  <td data-value="66.66" class="pct medium">66.66%</td>
151
151
  <td data-value="6" class="abs medium">4/6</td>
152
- <td data-value="66.03" class="pct medium">66.03%</td>
153
- <td data-value="53" class="abs medium">35/53</td>
152
+ <td data-value="68.62" class="pct medium">68.62%</td>
153
+ <td data-value="51" class="abs medium">35/51</td>
154
154
  </tr>
155
155
 
156
156
  </tbody>
@@ -161,7 +161,7 @@
161
161
  <div class='footer quiet pad2 space-top1 center small'>
162
162
  Code coverage generated by
163
163
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
164
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
164
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
165
165
  </div>
166
166
  <script src="../../../prettify.js"></script>
167
167
  <script>
@@ -1435,7 +1435,7 @@ exports.fetchEnrichedRow = async ctx =&gt; {
1435
1435
  <div class='footer quiet pad2 space-top1 center small'>
1436
1436
  Code coverage generated by
1437
1437
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1438
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
1438
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
1439
1439
  </div>
1440
1440
  <script src="../../../prettify.js"></script>
1441
1441
  <script>
@@ -1264,7 +1264,7 @@ exports.fullSearch = async (query, params) =&gt; {
1264
1264
  <div class='footer quiet pad2 space-top1 center small'>
1265
1265
  Code coverage generated by
1266
1266
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1267
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
1267
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
1268
1268
  </div>
1269
1269
  <script src="../../../prettify.js"></script>
1270
1270
  <script>
@@ -538,7 +538,7 @@ exports.finaliseRow = async (
538
538
  <div class='footer quiet pad2 space-top1 center small'>
539
539
  Code coverage generated by
540
540
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
541
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
541
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
542
542
  </div>
543
543
  <script src="../../../prettify.js"></script>
544
544
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">66.66% </span>
26
+ <span class="strong">69.23% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>36/54</span>
28
+ <span class='fraction'>36/52</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">38.23% </span>
33
+ <span class="strong">40.62% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>13/34</span>
35
+ <span class='fraction'>13/32</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">66.03% </span>
47
+ <span class="strong">68.62% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>35/53</span>
49
+ <span class='fraction'>35/51</span>
50
50
  </div>
51
51
 
52
52
 
@@ -155,10 +155,7 @@
155
155
  <a name='L90'></a><a href='#L90'>90</a>
156
156
  <a name='L91'></a><a href='#L91'>91</a>
157
157
  <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
158
+ <a name='L93'></a><a href='#L93'>93</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">44x</span>
162
159
  <span class="cline-any cline-yes">44x</span>
163
160
  <span class="cline-any cline-yes">44x</span>
164
161
  <span class="cline-any cline-yes">44x</span>
@@ -227,9 +224,6 @@
227
224
  <span class="cline-any cline-no">&nbsp;</span>
228
225
  <span class="cline-any cline-no">&nbsp;</span>
229
226
  <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-no">&nbsp;</span>
231
- <span class="cline-any cline-no">&nbsp;</span>
232
- <span class="cline-any cline-neutral">&nbsp;</span>
233
227
  <span class="cline-any cline-neutral">&nbsp;</span>
234
228
  <span class="cline-any cline-neutral">&nbsp;</span>
235
229
  <span class="cline-any cline-no">&nbsp;</span>
@@ -319,9 +313,6 @@ exports.validate = async ({ tableId, row, table }) =&gt; {
319
313
  // Validate.js doesn't seem to handle array
320
314
  <span class="missing-if-branch" title="if path not taken" >I</span>if (type === FieldTypes.ARRAY &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >row[fieldName])</span> {
321
315
  <span class="cstat-no" title="statement not covered" > if (row[fieldName].length) {</span>
322
- <span class="cstat-no" title="statement not covered" > if (!Array.isArray(row[fieldName])) {</span>
323
- <span class="cstat-no" title="statement not covered" > row[fieldName] = row[fieldName].split(",")</span>
324
- }
325
316
  <span class="cstat-no" title="statement not covered" > row[fieldName].map(<span class="fstat-no" title="function not covered" >va</span>l =&gt; {</span>
326
317
  <span class="cstat-no" title="statement not covered" > if (</span>
327
318
  !constraints.inclusion.includes(val) &amp;&amp;
@@ -355,7 +346,7 @@ exports.validate = async ({ tableId, row, table }) =&gt; {
355
346
  <div class='footer quiet pad2 space-top1 center small'>
356
347
  Code coverage generated by
357
348
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
358
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
349
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
359
350
  </div>
360
351
  <script src="../../../prettify.js"></script>
361
352
  <script>
@@ -244,7 +244,7 @@ exports.destroy = async ctx =&gt; {
244
244
  <div class='footer quiet pad2 space-top1 center small'>
245
245
  Code coverage generated by
246
246
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
247
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
247
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
248
248
  </div>
249
249
  <script src="../../prettify.js"></script>
250
250
  <script>
@@ -103,7 +103,7 @@ exports.save = <span class="fstat-no" title="function not covered" >as</span>ync
103
103
  <div class='footer quiet pad2 space-top1 center small'>
104
104
  Code coverage generated by
105
105
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
106
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
106
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
107
107
  </div>
108
108
  <script src="../../prettify.js"></script>
109
109
  <script>
@@ -589,7 +589,7 @@ exports.runStaticFormulaChecks = async (table, { oldTable, deletion }) =&gt; {
589
589
  <div class='footer quiet pad2 space-top1 center small'>
590
590
  Code coverage generated by
591
591
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
592
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
592
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
593
593
  </div>
594
594
  <script src="../../../prettify.js"></script>
595
595
  <script>
@@ -1030,7 +1030,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
1030
1030
  <div class='footer quiet pad2 space-top1 center small'>
1031
1031
  Code coverage generated by
1032
1032
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1033
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
1033
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
1034
1034
  </div>
1035
1035
  <script src="../../../prettify.js"></script>
1036
1036
  <script>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
134
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
135
135
  </div>
136
136
  <script src="../../../prettify.js"></script>
137
137
  <script>
@@ -403,7 +403,7 @@ exports.validateCSVSchema = async function (ctx) {
403
403
  <div class='footer quiet pad2 space-top1 center small'>
404
404
  Code coverage generated by
405
405
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
406
- at Mon Jun 20 2022 12:08:58 GMT+0000 (Coordinated Universal Time)
406
+ at Mon Jun 20 2022 12:13:56 GMT+0000 (Coordinated Universal Time)
407
407
  </div>
408
408
  <script src="../../../prettify.js"></script>
409
409
  <script>