@budibase/server 1.0.27-alpha.1 → 1.0.27-alpha.2

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 (178) hide show
  1. package/builder/assets/{index.4a13c4cb.css → index.5522fcd5.css} +1 -1
  2. package/builder/assets/index.e9e2c4d7.js +1343 -0
  3. package/builder/index.html +2 -2
  4. package/coverage/clover.xml +150 -140
  5. package/coverage/coverage-final.json +4 -4
  6. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  7. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  8. package/coverage/lcov-report/api/controllers/application.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/component.js.html +4 -4
  14. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  15. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/hosting.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/index.html +1 -1
  18. package/coverage/lcov-report/api/controllers/integration.js.html +1 -1
  19. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  23. package/coverage/lcov-report/api/controllers/query/index.js.html +1 -1
  24. package/coverage/lcov-report/api/controllers/query/validation.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  26. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/index.html +16 -16
  29. package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
  30. package/coverage/lcov-report/api/controllers/row/internal.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +7 -4
  32. package/coverage/lcov-report/api/controllers/row/utils.js.html +29 -20
  33. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  35. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  37. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/table/internal.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/table/utils.js.html +1 -1
  40. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  44. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  45. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  46. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  47. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  48. package/coverage/lcov-report/api/index.html +1 -1
  49. package/coverage/lcov-report/api/index.js.html +1 -1
  50. package/coverage/lcov-report/api/routes/analytics.js.html +1 -1
  51. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  52. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  54. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/hosting.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/index.html +1 -1
  63. package/coverage/lcov-report/api/routes/index.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  65. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/static.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  80. package/coverage/lcov-report/automations/actions.js.html +1 -1
  81. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  82. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  83. package/coverage/lcov-report/automations/index.html +1 -1
  84. package/coverage/lcov-report/automations/index.js.html +1 -1
  85. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  86. package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
  87. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  88. package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
  89. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/index.html +1 -1
  94. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  97. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  98. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  99. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  100. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  101. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  102. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  103. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  104. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  105. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  106. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  107. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  108. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  109. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  111. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  112. package/coverage/lcov-report/automations/utils.js.html +1 -1
  113. package/coverage/lcov-report/constants/index.html +1 -1
  114. package/coverage/lcov-report/constants/index.js.html +1 -1
  115. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  116. package/coverage/lcov-report/constants/screens.js.html +1 -1
  117. package/coverage/lcov-report/db/client.js.html +1 -1
  118. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  119. package/coverage/lcov-report/db/index.html +1 -1
  120. package/coverage/lcov-report/db/index.js.html +1 -1
  121. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  122. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  123. package/coverage/lcov-report/db/linkedRows/index.js.html +1 -1
  124. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +1 -1
  125. package/coverage/lcov-report/db/newid.js.html +1 -1
  126. package/coverage/lcov-report/db/utils.js.html +1 -1
  127. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  128. package/coverage/lcov-report/events/index.html +1 -1
  129. package/coverage/lcov-report/events/index.js.html +1 -1
  130. package/coverage/lcov-report/events/utils.js.html +1 -1
  131. package/coverage/lcov-report/index.html +26 -26
  132. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  133. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  134. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  135. package/coverage/lcov-report/middleware/authorized.js.html +1 -1
  136. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  137. package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
  138. package/coverage/lcov-report/middleware/index.html +1 -1
  139. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  140. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  141. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  142. package/coverage/lcov-report/middleware/usageQuota.js.html +1 -1
  143. package/coverage/lcov-report/middleware/utils.js.html +1 -1
  144. package/coverage/lcov-report/threads/automation.js.html +1 -1
  145. package/coverage/lcov-report/threads/index.html +1 -1
  146. package/coverage/lcov-report/threads/index.js.html +1 -1
  147. package/coverage/lcov-report/threads/query.js.html +1 -1
  148. package/coverage/lcov-report/threads/utils.js.html +1 -1
  149. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  150. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  151. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  152. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  153. package/coverage/lcov-report/utilities/global.js.html +1 -1
  154. package/coverage/lcov-report/utilities/index.html +1 -1
  155. package/coverage/lcov-report/utilities/index.js.html +1 -1
  156. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  157. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  158. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  159. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  160. package/coverage/lcov-report/utilities/rowProcessor/index.html +19 -19
  161. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +46 -10
  162. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  163. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  164. package/coverage/lcov-report/utilities/security.js.html +1 -1
  165. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  166. package/coverage/lcov-report/utilities/users.js.html +1 -1
  167. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  168. package/coverage/lcov.info +269 -250
  169. package/dist/api/controllers/row/internalSearch.js +2 -1
  170. package/dist/api/controllers/row/utils.js +13 -6
  171. package/dist/package.json +4 -4
  172. package/dist/tsconfig.tsbuildinfo +1 -1
  173. package/dist/utilities/rowProcessor/index.js +13 -0
  174. package/package.json +5 -5
  175. package/src/api/controllers/row/internalSearch.js +2 -1
  176. package/src/api/controllers/row/utils.js +11 -8
  177. package/src/utilities/rowProcessor/index.js +12 -0
  178. package/builder/assets/index.00c4135e.js +0 -1320
@@ -181,7 +181,7 @@ exports.endUserPing = <span class="fstat-no" title="function not covered" >as</s
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
184
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
184
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  </div>
187
187
  <script src="../../prettify.js"></script>
@@ -226,7 +226,7 @@ exports.update = async function (ctx) {
226
226
  <div class='footer quiet pad2 space-top1 center small'>
227
227
  Code coverage generated by
228
228
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
229
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
229
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
230
230
  </div>
231
231
  </div>
232
232
  <script src="../../prettify.js"></script>
@@ -1297,7 +1297,7 @@ const createEmptyAppPackage = async (ctx, app) =&gt; {
1297
1297
  <div class='footer quiet pad2 space-top1 center small'>
1298
1298
  Code coverage generated by
1299
1299
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1300
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
1300
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
1301
1301
  </div>
1302
1302
  </div>
1303
1303
  <script src="../../prettify.js"></script>
@@ -229,7 +229,7 @@ exports.fetchSelf = async ctx =&gt; {
229
229
  <div class='footer quiet pad2 space-top1 center small'>
230
230
  Code coverage generated by
231
231
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
232
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
232
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
233
233
  </div>
234
234
  </div>
235
235
  <script src="../../prettify.js"></script>
@@ -748,7 +748,7 @@ exports.test = async function (ctx) {
748
748
  <div class='footer quiet pad2 space-top1 center small'>
749
749
  Code coverage generated by
750
750
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
751
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
751
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
752
752
  </div>
753
753
  </div>
754
754
  <script src="../../prettify.js"></script>
@@ -91,7 +91,7 @@ exports.exportAppDump = async function (ctx) {
91
91
  <div class='footer quiet pad2 space-top1 center small'>
92
92
  Code coverage generated by
93
93
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
94
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
94
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
95
95
  </div>
96
96
  </div>
97
97
  <script src="../../prettify.js"></script>
@@ -397,7 +397,7 @@ exports.importApps = <span class="fstat-no" title="function not covered" >as</sp
397
397
  <div class='footer quiet pad2 space-top1 center small'>
398
398
  Code coverage generated by
399
399
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
400
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
400
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
401
401
  </div>
402
402
  </div>
403
403
  <script src="../../prettify.js"></script>
@@ -114,11 +114,11 @@
114
114
  <span class="cline-any cline-yes">1x</span>
115
115
  <span class="cline-any cline-yes">1x</span>
116
116
  <span class="cline-any cline-yes">1x</span>
117
- <span class="cline-any cline-yes">47x</span>
117
+ <span class="cline-any cline-yes">49x</span>
118
118
  <span class="cline-any cline-yes">1x</span>
119
119
  <span class="cline-any cline-neutral">&nbsp;</span>
120
- <span class="cline-any cline-yes">46x</span>
121
- <span class="cline-any cline-yes">46x</span>
120
+ <span class="cline-any cline-yes">48x</span>
121
+ <span class="cline-any cline-yes">48x</span>
122
122
  <span class="cline-any cline-neutral">&nbsp;</span>
123
123
  <span class="cline-any cline-neutral">&nbsp;</span>
124
124
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -169,7 +169,7 @@ exports.fetchAppComponentDefinitions = async function (ctx) {
169
169
  <div class='footer quiet pad2 space-top1 center small'>
170
170
  Code coverage generated by
171
171
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
172
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
172
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
173
173
  </div>
174
174
  </div>
175
175
  <script src="../../prettify.js"></script>
@@ -709,7 +709,7 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
709
709
  <div class='footer quiet pad2 space-top1 center small'>
710
710
  Code coverage generated by
711
711
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
712
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
712
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
713
713
  </div>
714
714
  </div>
715
715
  <script src="../../prettify.js"></script>
@@ -430,7 +430,7 @@ exports.getBudibaseVersion = <span class="fstat-no" title="function not covered"
430
430
  <div class='footer quiet pad2 space-top1 center small'>
431
431
  Code coverage generated by
432
432
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
433
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
433
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
434
434
  </div>
435
435
  </div>
436
436
  <script src="../../prettify.js"></script>
@@ -130,7 +130,7 @@ exports.getDeployedApps = <span class="fstat-no" title="function not covered" >a
130
130
  <div class='footer quiet pad2 space-top1 center small'>
131
131
  Code coverage generated by
132
132
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
133
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
133
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
134
134
  </div>
135
135
  </div>
136
136
  <script src="../../prettify.js"></script>
@@ -410,7 +410,7 @@
410
410
  <div class='footer quiet pad2 space-top1 center small'>
411
411
  Code coverage generated by
412
412
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
413
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
413
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
414
414
  </div>
415
415
  </div>
416
416
  <script src="../../prettify.js"></script>
@@ -100,7 +100,7 @@ exports.find = async function (ctx) {
100
100
  <div class='footer quiet pad2 space-top1 center small'>
101
101
  Code coverage generated by
102
102
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
103
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
103
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
104
104
  </div>
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
@@ -217,7 +217,7 @@ exports.destroy = async function (ctx) {
217
217
  <div class='footer quiet pad2 space-top1 center small'>
218
218
  Code coverage generated by
219
219
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
220
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
220
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
221
221
  </div>
222
222
  </div>
223
223
  <script src="../../prettify.js"></script>
@@ -202,7 +202,7 @@ exports.getMetadata = async ctx =&gt; {
202
202
  <div class='footer quiet pad2 space-top1 center small'>
203
203
  Code coverage generated by
204
204
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
205
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
205
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
206
206
  </div>
207
207
  </div>
208
208
  <script src="../../prettify.js"></script>
@@ -589,7 +589,7 @@ exports.removePermission = async function (ctx) {
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">istanbul</a>
592
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
592
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
593
593
  </div>
594
594
  </div>
595
595
  <script src="../../prettify.js"></script>
@@ -110,7 +110,7 @@
110
110
  <div class='footer quiet pad2 space-top1 center small'>
111
111
  Code coverage generated by
112
112
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
113
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
113
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
114
114
  </div>
115
115
  </div>
116
116
  <script src="../../../prettify.js"></script>
@@ -670,7 +670,7 @@ exports.destroy = async function (ctx) {
670
670
  <div class='footer quiet pad2 space-top1 center small'>
671
671
  Code coverage generated by
672
672
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
673
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
673
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
674
674
  </div>
675
675
  </div>
676
676
  <script src="../../../prettify.js"></script>
@@ -187,7 +187,7 @@ exports.generateQueryPreviewValidation = () =&gt; {
187
187
  <div class='footer quiet pad2 space-top1 center small'>
188
188
  Code coverage generated by
189
189
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
190
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
190
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
191
191
  </div>
192
192
  </div>
193
193
  <script src="../../../prettify.js"></script>
@@ -358,7 +358,7 @@ exports.destroy = async function (ctx) {
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
361
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
361
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
362
362
  </div>
363
363
  </div>
364
364
  <script src="../../prettify.js"></script>
@@ -343,7 +343,7 @@ exports.clientFetch = async ctx =&gt; {
343
343
  <div class='footer quiet pad2 space-top1 center small'>
344
344
  Code coverage generated by
345
345
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
346
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
346
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
347
347
  </div>
348
348
  </div>
349
349
  <script src="../../prettify.js"></script>
@@ -757,7 +757,7 @@ exports.fetchEnrichedRow = <span class="fstat-no" title="function not covered" >
757
757
  <div class='footer quiet pad2 space-top1 center small'>
758
758
  Code coverage generated by
759
759
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
760
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
760
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
761
761
  </div>
762
762
  </div>
763
763
  <script src="../../../prettify.js"></script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">52.6% </span>
26
+ <span class="strong">52.5% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>313/595</span>
28
+ <span class='fraction'>315/600</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">33.46% </span>
33
+ <span class="strong">33.59% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>83/248</span>
35
+ <span class='fraction'>85/253</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">52.65% </span>
47
+ <span class="strong">52.55% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>307/583</span>
49
+ <span class='fraction'>309/588</span>
50
50
  </div>
51
51
 
52
52
 
@@ -125,7 +125,7 @@
125
125
  <td data-value="4.66" class="pct low">4.66%</td>
126
126
  <td data-value="150" class="abs low">7/150</td>
127
127
  <td data-value="0" class="pct low">0%</td>
128
- <td data-value="85" class="abs low">0/85</td>
128
+ <td data-value="87" class="abs low">0/87</td>
129
129
  <td data-value="0" class="pct low">0%</td>
130
130
  <td data-value="33" class="abs low">0/33</td>
131
131
  <td data-value="4.76" class="pct low">4.76%</td>
@@ -134,17 +134,17 @@
134
134
 
135
135
  <tr>
136
136
  <td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
137
- <td data-value="77.27" class="pic medium">
138
- <div class="chart"><div class="cover-fill" style="width: 77%"></div><div class="cover-empty" style="width: 23%"></div></div>
137
+ <td data-value="73.46" class="pic medium">
138
+ <div class="chart"><div class="cover-fill" style="width: 73%"></div><div class="cover-empty" style="width: 27%"></div></div>
139
139
  </td>
140
- <td data-value="77.27" class="pct medium">77.27%</td>
141
- <td data-value="44" class="abs medium">34/44</td>
142
- <td data-value="52.17" class="pct medium">52.17%</td>
143
- <td data-value="23" class="abs medium">12/23</td>
140
+ <td data-value="73.46" class="pct medium">73.46%</td>
141
+ <td data-value="49" class="abs medium">36/49</td>
142
+ <td data-value="53.84" class="pct medium">53.84%</td>
143
+ <td data-value="26" class="abs medium">14/26</td>
144
144
  <td data-value="66.66" class="pct medium">66.66%</td>
145
145
  <td data-value="6" class="abs medium">4/6</td>
146
- <td data-value="76.74" class="pct medium">76.74%</td>
147
- <td data-value="43" class="abs medium">33/43</td>
146
+ <td data-value="72.91" class="pct medium">72.91%</td>
147
+ <td data-value="48" class="abs medium">35/48</td>
148
148
  </tr>
149
149
 
150
150
  </tbody>
@@ -155,7 +155,7 @@
155
155
  <div class='footer quiet pad2 space-top1 center small'>
156
156
  Code coverage generated by
157
157
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
158
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
158
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
159
159
  </div>
160
160
  </div>
161
161
  <script src="../../../prettify.js"></script>
@@ -481,7 +481,7 @@ exports.fetchEnrichedRow = async function (ctx) {
481
481
  <div class='footer quiet pad2 space-top1 center small'>
482
482
  Code coverage generated by
483
483
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
484
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
484
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
485
485
  </div>
486
486
  </div>
487
487
  <script src="../../../prettify.js"></script>
@@ -1405,7 +1405,7 @@ exports.fetchEnrichedRow = async ctx =&gt; {
1405
1405
  <div class='footer quiet pad2 space-top1 center small'>
1406
1406
  Code coverage generated by
1407
1407
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1408
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
1408
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
1409
1409
  </div>
1410
1410
  </div>
1411
1411
  <script src="../../../prettify.js"></script>
@@ -32,7 +32,7 @@
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">0% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/85</span>
35
+ <span class='fraction'>0/87</span>
36
36
  </div>
37
37
 
38
38
 
@@ -445,7 +445,8 @@
445
445
  <a name='L386'></a><a href='#L386'>386</a>
446
446
  <a name='L387'></a><a href='#L387'>387</a>
447
447
  <a name='L388'></a><a href='#L388'>388</a>
448
- <a name='L389'></a><a href='#L389'>389</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
448
+ <a name='L389'></a><a href='#L389'>389</a>
449
+ <a name='L390'></a><a href='#L390'>390</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">33x</span>
449
450
  <span class="cline-any cline-yes">33x</span>
450
451
  <span class="cline-any cline-yes">33x</span>
451
452
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -638,6 +639,7 @@
638
639
  <span class="cline-any cline-neutral">&nbsp;</span>
639
640
  <span class="cline-any cline-no">&nbsp;</span>
640
641
  <span class="cline-any cline-no">&nbsp;</span>
642
+ <span class="cline-any cline-neutral">&nbsp;</span>
641
643
  <span class="cline-any cline-no">&nbsp;</span>
642
644
  <span class="cline-any cline-no">&nbsp;</span>
643
645
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1026,7 +1028,8 @@ class QueryBuilder {
1026
1028
  }
1027
1029
  <span class="cstat-no" title="statement not covered" > if (this.query.equal) {</span>
1028
1030
  <span class="cstat-no" title="statement not covered" > build(this.query.equal, <span class="fstat-no" title="function not covered" >(k</span>ey, value) =&gt; {</span>
1029
- <span class="cstat-no" title="statement not covered" > if (!value) {</span>
1031
+ // 0 evaluates to false, which means we would return all rows if we don't check it
1032
+ <span class="cstat-no" title="statement not covered" > if (!value &amp;&amp; value !== 0) {</span>
1030
1033
  <span class="cstat-no" title="statement not covered" > return null</span>
1031
1034
  }
1032
1035
  <span class="cstat-no" title="statement not covered" > return `${key}:${builder.preprocess(value, allPreProcessingOpts)}`</span>
@@ -1228,7 +1231,7 @@ exports.fullSearch = <span class="fstat-no" title="function not covered" >as</sp
1228
1231
  <div class='footer quiet pad2 space-top1 center small'>
1229
1232
  Code coverage generated by
1230
1233
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1231
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
1234
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
1232
1235
  </div>
1233
1236
  </div>
1234
1237
  <script src="../../../prettify.js"></script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">77.27% </span>
26
+ <span class="strong">73.46% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>34/44</span>
28
+ <span class='fraction'>36/49</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">52.17% </span>
33
+ <span class="strong">53.84% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>12/23</span>
35
+ <span class='fraction'>14/26</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">76.74% </span>
47
+ <span class="strong">72.91% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>33/43</span>
49
+ <span class='fraction'>35/48</span>
50
50
  </div>
51
51
 
52
52
 
@@ -142,7 +142,10 @@
142
142
  <a name='L83'></a><a href='#L83'>83</a>
143
143
  <a name='L84'></a><a href='#L84'>84</a>
144
144
  <a name='L85'></a><a href='#L85'>85</a>
145
- <a name='L86'></a><a href='#L86'>86</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
145
+ <a name='L86'></a><a href='#L86'>86</a>
146
+ <a name='L87'></a><a href='#L87'>87</a>
147
+ <a name='L88'></a><a href='#L88'>88</a>
148
+ <a name='L89'></a><a href='#L89'>89</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">34x</span>
146
149
  <span class="cline-any cline-yes">34x</span>
147
150
  <span class="cline-any cline-yes">34x</span>
148
151
  <span class="cline-any cline-yes">34x</span>
@@ -194,9 +197,9 @@
194
197
  <span class="cline-any cline-yes">74x</span>
195
198
  <span class="cline-any cline-yes">74x</span>
196
199
  <span class="cline-any cline-yes">206x</span>
197
- <span class="cline-any cline-neutral">&nbsp;</span>
198
200
  <span class="cline-any cline-yes">206x</span>
199
201
  <span class="cline-any cline-neutral">&nbsp;</span>
202
+ <span class="cline-any cline-yes">206x</span>
200
203
  <span class="cline-any cline-neutral">&nbsp;</span>
201
204
  <span class="cline-any cline-neutral">&nbsp;</span>
202
205
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -206,14 +209,17 @@
206
209
  <span class="cline-any cline-neutral">&nbsp;</span>
207
210
  <span class="cline-any cline-neutral">&nbsp;</span>
208
211
  <span class="cline-any cline-yes">206x</span>
212
+ <span class="cline-any cline-no">&nbsp;</span>
213
+ <span class="cline-any cline-no">&nbsp;</span>
214
+ <span class="cline-any cline-no">&nbsp;</span>
209
215
  <span class="cline-any cline-neutral">&nbsp;</span>
210
216
  <span class="cline-any cline-neutral">&nbsp;</span>
217
+ <span class="cline-any cline-yes">206x</span>
211
218
  <span class="cline-any cline-neutral">&nbsp;</span>
212
- <span class="cline-any cline-neutral">&nbsp;</span>
213
- <span class="cline-any cline-no">&nbsp;</span>
214
219
  <span class="cline-any cline-no">&nbsp;</span>
215
220
  <span class="cline-any cline-no">&nbsp;</span>
216
221
  <span class="cline-any cline-neutral">&nbsp;</span>
222
+ <span class="cline-any cline-no">&nbsp;</span>
217
223
  <span class="cline-any cline-neutral">&nbsp;</span>
218
224
  <span class="cline-any cline-yes">206x</span>
219
225
  <span class="cline-any cline-no">&nbsp;</span>
@@ -279,28 +285,31 @@ exports.validate = async ({ appId, tableId, row, table }) =&gt; {
279
285
  const errors = {}
280
286
  for (let fieldName of Object.keys(table.schema)) {
281
287
  const constraints = cloneDeep(table.schema[fieldName].constraints)
288
+ const type = table.schema[fieldName].type
282
289
  // special case for options, need to always allow unselected (null)
283
290
  <span class="missing-if-branch" title="if path not taken" >I</span>if (
284
- table.schema[fieldName].type ===
285
- (FieldTypes.OPTIONS || <span class="branch-1 cbranch-no" title="branch not covered" >FieldTypes.ARRAY)</span> &amp;&amp;
286
- <span class="branch-1 cbranch-no" title="branch not covered" > constraints.inclusion</span>
291
+ (type === FieldTypes.OPTIONS || type === FieldTypes.ARRAY) &amp;&amp;
292
+ <span class="branch-2 cbranch-no" title="branch not covered" > constraints.inclusion</span>
287
293
  ) {
288
294
  <span class="cstat-no" title="statement not covered" > constraints.inclusion.push(null)</span>
289
295
  }
290
296
  let res
291
297
  &nbsp;
292
298
  // Validate.js doesn't seem to handle array
293
- <span class="missing-if-branch" title="if path not taken" >I</span>if (
294
- table.schema[fieldName].type === FieldTypes.ARRAY &amp;&amp;
295
- <span class="branch-1 cbranch-no" title="branch not covered" > row[fieldName] </span>&amp;&amp;
296
- <span class="branch-2 cbranch-no" title="branch not covered" > row[fieldName].length</span>
297
- ) {
299
+ <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>&amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >row[fieldName].length)</span> {
298
300
  <span class="cstat-no" title="statement not covered" > row[fieldName].map(<span class="fstat-no" title="function not covered" >va</span>l =&gt; {</span>
299
301
  <span class="cstat-no" title="statement not covered" > if (!constraints.inclusion.includes(val)) {</span>
300
302
  <span class="cstat-no" title="statement not covered" > errors[fieldName] = "Field not in list"</span>
301
303
  }
302
304
  })
303
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if (table.schema[fieldName].type === FieldTypes.FORMULA) {
305
+ } else <span class="missing-if-branch" title="if path not taken" >I</span>if (type === FieldTypes.JSON &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >typeof row[fieldName] === "string")</span> {
306
+ // this should only happen if there is an error
307
+ <span class="cstat-no" title="statement not covered" > try {</span>
308
+ <span class="cstat-no" title="statement not covered" > JSON.parse(row[fieldName])</span>
309
+ } catch (err) {
310
+ <span class="cstat-no" title="statement not covered" > errors[fieldName] = [`Contains invalid JSON`]</span>
311
+ }
312
+ } else <span class="missing-if-branch" title="if path not taken" >I</span>if (type === FieldTypes.FORMULA) {
304
313
  <span class="cstat-no" title="statement not covered" > res = validateJs.single(</span>
305
314
  processStringSync(table.schema[fieldName].formula, row),
306
315
  constraints
@@ -319,7 +328,7 @@ exports.validate = async ({ appId, tableId, row, table }) =&gt; {
319
328
  <div class='footer quiet pad2 space-top1 center small'>
320
329
  Code coverage generated by
321
330
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
322
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
331
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
323
332
  </div>
324
333
  </div>
325
334
  <script src="../../../prettify.js"></script>
@@ -208,7 +208,7 @@ exports.destroy = async ctx =&gt; {
208
208
  <div class='footer quiet pad2 space-top1 center small'>
209
209
  Code coverage generated by
210
210
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
211
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
211
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
212
212
  </div>
213
213
  </div>
214
214
  <script src="../../prettify.js"></script>
@@ -97,7 +97,7 @@ exports.save = <span class="fstat-no" title="function not covered" >as</span>ync
97
97
  <div class='footer quiet pad2 space-top1 center small'>
98
98
  Code coverage generated by
99
99
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
100
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
100
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
101
101
  </div>
102
102
  </div>
103
103
  <script src="../../prettify.js"></script>
@@ -985,7 +985,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
985
985
  <div class='footer quiet pad2 space-top1 center small'>
986
986
  Code coverage generated by
987
987
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
988
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
988
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
989
989
  </div>
990
990
  </div>
991
991
  <script src="../../../prettify.js"></script>
@@ -140,7 +140,7 @@
140
140
  <div class='footer quiet pad2 space-top1 center small'>
141
141
  Code coverage generated by
142
142
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
143
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
143
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
144
144
  </div>
145
145
  </div>
146
146
  <script src="../../../prettify.js"></script>
@@ -382,7 +382,7 @@ exports.validateCSVSchema = async function (ctx) {
382
382
  <div class='footer quiet pad2 space-top1 center small'>
383
383
  Code coverage generated by
384
384
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
385
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
385
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
386
386
  </div>
387
387
  </div>
388
388
  <script src="../../../prettify.js"></script>
@@ -517,7 +517,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
517
517
  <div class='footer quiet pad2 space-top1 center small'>
518
518
  Code coverage generated by
519
519
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
520
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
520
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
521
521
  </div>
522
522
  </div>
523
523
  <script src="../../../prettify.js"></script>
@@ -1144,7 +1144,7 @@ exports.TableSaveFunctions = TableSaveFunctions
1144
1144
  <div class='footer quiet pad2 space-top1 center small'>
1145
1145
  Code coverage generated by
1146
1146
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1147
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
1147
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
1148
1148
  </div>
1149
1149
  </div>
1150
1150
  <script src="../../../prettify.js"></script>
@@ -181,7 +181,7 @@ exports.downloadTemplate = async function (ctx) {
181
181
  <div class='footer quiet pad2 space-top1 center small'>
182
182
  Code coverage generated by
183
183
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
184
- at Fri Dec 31 2021 14:12:35 GMT+0000 (Coordinated Universal Time)
184
+ at Tue Jan 04 2022 11:51:46 GMT+0000 (Coordinated Universal Time)
185
185
  </div>
186
186
  </div>
187
187
  <script src="../../prettify.js"></script>