@budibase/server 1.0.159 → 1.0.162

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 (169) hide show
  1. package/builder/assets/{index.fd63ba67.js → index.54fa98bf.js} +4 -4
  2. package/builder/index.html +1 -1
  3. package/coverage/clover.xml +96 -88
  4. package/coverage/coverage-final.json +2 -2
  5. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  25. package/coverage/lcov-report/api/controllers/row/index.html +1 -1
  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 +1 -1
  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 +24 -24
  40. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/view/utils.js.html +14 -8
  42. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +111 -48
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +19 -19
  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/bcrypt.js.html +1 -1
  139. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  140. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  141. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  142. package/coverage/lcov-report/utilities/global.js.html +1 -1
  143. package/coverage/lcov-report/utilities/index.html +1 -1
  144. package/coverage/lcov-report/utilities/index.js.html +1 -1
  145. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  146. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  147. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  148. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  149. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  150. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +1 -1
  151. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +1 -1
  152. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  153. package/coverage/lcov-report/utilities/security.js.html +1 -1
  154. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  155. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  156. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  157. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  158. package/coverage/lcov-report/utilities/users.js.html +1 -1
  159. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  160. package/coverage/lcov.info +164 -148
  161. package/dist/api/controllers/view/utils.js +4 -2
  162. package/dist/api/controllers/view/viewBuilder.js +22 -8
  163. package/dist/package.json +5 -5
  164. package/dist/tsconfig.build.tsbuildinfo +1 -1
  165. package/package.json +6 -6
  166. package/src/api/controllers/view/tests/__snapshots__/viewBuilder.spec.js.snap +58 -1
  167. package/src/api/controllers/view/tests/viewBuilder.spec.js +18 -0
  168. package/src/api/controllers/view/utils.js +4 -2
  169. package/src/api/controllers/view/viewBuilder.js +32 -11
@@ -244,7 +244,7 @@ exports.fetchSelf = async ctx => {
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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
247
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
248
248
  </div>
249
249
  <script src="../../prettify.js"></script>
250
250
  <script>
@@ -724,7 +724,7 @@ exports.test = async function (ctx) {
724
724
  <div class='footer quiet pad2 space-top1 center small'>
725
725
  Code coverage generated by
726
726
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
727
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
727
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
728
728
  </div>
729
729
  <script src="../../prettify.js"></script>
730
730
  <script>
@@ -97,7 +97,7 @@ exports.exportAppDump = async function (ctx) {
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" rel="noopener noreferrer">istanbul</a>
100
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
100
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
101
101
  </div>
102
102
  <script src="../../prettify.js"></script>
103
103
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
412
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
175
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
176
176
  </div>
177
177
  <script src="../../prettify.js"></script>
178
178
  <script>
@@ -847,7 +847,7 @@ const buildSchemaHelper = <span class="fstat-no" title="function not covered" >a
847
847
  <div class='footer quiet pad2 space-top1 center small'>
848
848
  Code coverage generated by
849
849
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
850
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
850
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
851
851
  </div>
852
852
  <script src="../../prettify.js"></script>
853
853
  <script>
@@ -451,7 +451,7 @@ exports.getBudibaseVersion = <span class="fstat-no" title="function not covered"
451
451
  <div class='footer quiet pad2 space-top1 center small'>
452
452
  Code coverage generated by
453
453
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
454
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
454
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
455
455
  </div>
456
456
  <script src="../../prettify.js"></script>
457
457
  <script>
@@ -401,7 +401,7 @@
401
401
  <div class='footer quiet pad2 space-top1 center small'>
402
402
  Code coverage generated by
403
403
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
404
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
404
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
405
405
  </div>
406
406
  <script src="../../prettify.js"></script>
407
407
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
139
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
140
140
  </div>
141
141
  <script src="../../prettify.js"></script>
142
142
  <script>
@@ -223,7 +223,7 @@ exports.destroy = async function (ctx) {
223
223
  <div class='footer quiet pad2 space-top1 center small'>
224
224
  Code coverage generated by
225
225
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
226
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
226
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
227
227
  </div>
228
228
  <script src="../../prettify.js"></script>
229
229
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
196
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
112
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
598
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
104
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
223
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
224
224
  </div>
225
225
  <script src="../../../prettify.js"></script>
226
226
  <script>
@@ -364,7 +364,7 @@ exports.destroy = async function (ctx) {
364
364
  <div class='footer quiet pad2 space-top1 center small'>
365
365
  Code coverage generated by
366
366
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
367
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
367
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
368
368
  </div>
369
369
  <script src="../../prettify.js"></script>
370
370
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
349
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
350
350
  </div>
351
351
  <script src="../../prettify.js"></script>
352
352
  <script>
@@ -769,7 +769,7 @@ exports.fetchEnrichedRow = <span class="fstat-no" title="function not covered" >
769
769
  <div class='footer quiet pad2 space-top1 center small'>
770
770
  Code coverage generated by
771
771
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
772
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
772
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
773
773
  </div>
774
774
  <script src="../../../prettify.js"></script>
775
775
  <script>
@@ -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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
164
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
1438
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
1267
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
541
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
542
542
  </div>
543
543
  <script src="../../../prettify.js"></script>
544
544
  <script>
@@ -346,7 +346,7 @@ exports.validate = async ({ tableId, row, table }) =&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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
349
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
350
350
  </div>
351
351
  <script src="../../../prettify.js"></script>
352
352
  <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" rel="noopener noreferrer">istanbul</a>
211
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
211
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
212
212
  </div>
213
213
  <script src="../../prettify.js"></script>
214
214
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
106
+ at Mon May 16 2022 16:48:23 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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
592
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
593
593
  </div>
594
594
  <script src="../../../prettify.js"></script>
595
595
  <script>
@@ -1024,7 +1024,7 @@ exports.bulkImport = <span class="fstat-no" title="function not covered" >as</sp
1024
1024
  <div class='footer quiet pad2 space-top1 center small'>
1025
1025
  Code coverage generated by
1026
1026
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1027
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
1027
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
1028
1028
  </div>
1029
1029
  <script src="../../../prettify.js"></script>
1030
1030
  <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 Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
134
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
135
135
  </div>
136
136
  <script src="../../../prettify.js"></script>
137
137
  <script>
@@ -367,7 +367,7 @@ exports.validateCSVSchema = async function (ctx) {
367
367
  <div class='footer quiet pad2 space-top1 center small'>
368
368
  Code coverage generated by
369
369
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
370
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
370
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
371
371
  </div>
372
372
  <script src="../../../prettify.js"></script>
373
373
  <script>
@@ -187,7 +187,7 @@ exports.downloadTemplate = async function (ctx) {
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" rel="noopener noreferrer">istanbul</a>
190
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
190
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
191
191
  </div>
192
192
  <script src="../../prettify.js"></script>
193
193
  <script>
@@ -772,7 +772,7 @@ exports.getFlags = <span class="fstat-no" title="function not covered" >as</span
772
772
  <div class='footer quiet pad2 space-top1 center small'>
773
773
  Code coverage generated by
774
774
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
775
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
775
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
776
776
  </div>
777
777
  <script src="../../prettify.js"></script>
778
778
  <script>
@@ -148,7 +148,7 @@ exports.ExportFormats = {
148
148
  <div class='footer quiet pad2 space-top1 center small'>
149
149
  Code coverage generated by
150
150
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
151
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
151
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
152
152
  </div>
153
153
  <script src="../../../prettify.js"></script>
154
154
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">73.84% </span>
26
+ <span class="strong">75.86% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>144/195</span>
28
+ <span class='fraction'>154/203</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">63.85% </span>
33
+ <span class="strong">66.29% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>53/83</span>
35
+ <span class='fraction'>59/89</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">72% </span>
40
+ <span class="strong">76.92% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>18/25</span>
42
+ <span class='fraction'>20/26</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">74.09% </span>
47
+ <span class="strong">76.11% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>143/193</span>
49
+ <span class='fraction'>153/201</span>
50
50
  </div>
51
51
 
52
52
 
@@ -110,32 +110,32 @@
110
110
 
111
111
  <tr>
112
112
  <td class="file medium" data-value="utils.js"><a href="utils.js.html">utils.js</a></td>
113
- <td data-value="53.08" class="pic medium">
113
+ <td data-value="53.65" class="pic medium">
114
114
  <div class="chart"><div class="cover-fill" style="width: 53%"></div><div class="cover-empty" style="width: 47%"></div></div>
115
115
  </td>
116
- <td data-value="53.08" class="pct medium">53.08%</td>
117
- <td data-value="81" class="abs medium">43/81</td>
116
+ <td data-value="53.65" class="pct medium">53.65%</td>
117
+ <td data-value="82" class="abs medium">44/82</td>
118
118
  <td data-value="34.61" class="pct low">34.61%</td>
119
119
  <td data-value="26" class="abs low">9/26</td>
120
120
  <td data-value="66.66" class="pct medium">66.66%</td>
121
121
  <td data-value="9" class="abs medium">6/9</td>
122
- <td data-value="53.08" class="pct medium">53.08%</td>
123
- <td data-value="81" class="abs medium">43/81</td>
122
+ <td data-value="53.65" class="pct medium">53.65%</td>
123
+ <td data-value="82" class="abs medium">44/82</td>
124
124
  </tr>
125
125
 
126
126
  <tr>
127
127
  <td class="file high" data-value="viewBuilder.js"><a href="viewBuilder.js.html">viewBuilder.js</a></td>
128
- <td data-value="84.84" class="pic high">
129
- <div class="chart"><div class="cover-fill" style="width: 84%"></div><div class="cover-empty" style="width: 16%"></div></div>
128
+ <td data-value="92.5" class="pic high">
129
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
130
130
  </td>
131
- <td data-value="84.84" class="pct high">84.84%</td>
132
- <td data-value="33" class="abs high">28/33</td>
133
- <td data-value="83.33" class="pct high">83.33%</td>
134
- <td data-value="30" class="abs high">25/30</td>
135
- <td data-value="75" class="pct medium">75%</td>
136
- <td data-value="4" class="abs medium">3/4</td>
137
- <td data-value="84.84" class="pct high">84.84%</td>
138
- <td data-value="33" class="abs high">28/33</td>
131
+ <td data-value="92.5" class="pct high">92.5%</td>
132
+ <td data-value="40" class="abs high">37/40</td>
133
+ <td data-value="86.11" class="pct high">86.11%</td>
134
+ <td data-value="36" class="abs high">31/36</td>
135
+ <td data-value="100" class="pct high">100%</td>
136
+ <td data-value="5" class="abs high">5/5</td>
137
+ <td data-value="92.5" class="pct high">92.5%</td>
138
+ <td data-value="40" class="abs high">37/40</td>
139
139
  </tr>
140
140
 
141
141
  </tbody>
@@ -146,7 +146,7 @@
146
146
  <div class='footer quiet pad2 space-top1 center small'>
147
147
  Code coverage generated by
148
148
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
149
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
149
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
150
150
  </div>
151
151
  <script src="../../../prettify.js"></script>
152
152
  <script>
@@ -427,7 +427,7 @@ exports.exportView = async ctx =&gt; {
427
427
  <div class='footer quiet pad2 space-top1 center small'>
428
428
  Code coverage generated by
429
429
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
430
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
430
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
431
431
  </div>
432
432
  <script src="../../../prettify.js"></script>
433
433
  <script>
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">53.08% </span>
26
+ <span class="strong">53.65% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>43/81</span>
28
+ <span class='fraction'>44/82</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">53.08% </span>
47
+ <span class="strong">53.65% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>43/81</span>
49
+ <span class='fraction'>44/82</span>
50
50
  </div>
51
51
 
52
52
 
@@ -211,7 +211,9 @@
211
211
  <a name='L146'></a><a href='#L146'>146</a>
212
212
  <a name='L147'></a><a href='#L147'>147</a>
213
213
  <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
215
217
  <span class="cline-any cline-neutral">&nbsp;</span>
216
218
  <span class="cline-any cline-neutral">&nbsp;</span>
217
219
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -220,6 +222,7 @@
220
222
  <span class="cline-any cline-yes">41x</span>
221
223
  <span class="cline-any cline-yes">41x</span>
222
224
  <span class="cline-any cline-yes">41x</span>
225
+ <span class="cline-any cline-yes">41x</span>
223
226
  <span class="cline-any cline-neutral">&nbsp;</span>
224
227
  <span class="cline-any cline-yes">41x</span>
225
228
  <span class="cline-any cline-yes">2x</span>
@@ -327,6 +330,7 @@
327
330
  <span class="cline-any cline-yes">41x</span>
328
331
  <span class="cline-any cline-neutral">&nbsp;</span>
329
332
  <span class="cline-any cline-no">&nbsp;</span>
333
+ <span class="cline-any cline-neutral">&nbsp;</span>
330
334
  <span class="cline-any cline-no">&nbsp;</span>
331
335
  <span class="cline-any cline-no">&nbsp;</span>
332
336
  <span class="cline-any cline-no">&nbsp;</span>
@@ -368,6 +372,7 @@
368
372
  } = require("../../../db/utils")
369
373
  const env = require("../../../environment")
370
374
  const { getAppDB } = require("@budibase/backend-core/context")
375
+ const viewBuilder = require("./viewBuilder")
371
376
  &nbsp;
372
377
  exports.getView = async viewName =&gt; {
373
378
  const db = getAppDB()
@@ -475,7 +480,8 @@ exports.deleteView = async viewName =&gt; {
475
480
  exports.migrateToInMemoryView = <span class="fstat-no" title="function not covered" >as</span>ync (db, viewName) =&gt; {
476
481
  // delete the view initially
477
482
  const designDoc = <span class="cstat-no" title="statement not covered" >await db.get("_design/database")</span>
478
- const view = <span class="cstat-no" title="statement not covered" >designDoc.views[viewName]</span>
483
+ // run the view back through the view builder to update it
484
+ const view = <span class="cstat-no" title="statement not covered" >viewBuilder(designDoc.views[viewName].meta)</span>
479
485
  <span class="cstat-no" title="statement not covered" > delete designDoc.views[viewName]</span>
480
486
  <span class="cstat-no" title="statement not covered" > await db.put(designDoc)</span>
481
487
  <span class="cstat-no" title="statement not covered" > await exports.saveView(db, null, viewName, view)</span>
@@ -484,7 +490,7 @@ exports.migrateToInMemoryView = <span class="fstat-no" title="function not cover
484
490
  exports.migrateToDesignView = <span class="fstat-no" title="function not covered" >as</span>ync (db, viewName) =&gt; {
485
491
  let view = <span class="cstat-no" title="statement not covered" >await db.get(generateMemoryViewID(viewName))</span>
486
492
  const designDoc = <span class="cstat-no" title="statement not covered" >await db.get("_design/database")</span>
487
- <span class="cstat-no" title="statement not covered" > designDoc.views[viewName] = view.view</span>
493
+ <span class="cstat-no" title="statement not covered" > designDoc.views[viewName] = viewBuilder(view.view.meta)</span>
488
494
  <span class="cstat-no" title="statement not covered" > await db.put(designDoc)</span>
489
495
  <span class="cstat-no" title="statement not covered" > await db.remove(view._id, view._rev)</span>
490
496
  }
@@ -514,7 +520,7 @@ exports.getFromMemoryDoc = async (db, viewName) =&gt; {
514
520
  <div class='footer quiet pad2 space-top1 center small'>
515
521
  Code coverage generated by
516
522
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
517
- at Fri May 13 2022 09:10:38 GMT+0000 (Coordinated Universal Time)
523
+ at Mon May 16 2022 16:48:23 GMT+0000 (Coordinated Universal Time)
518
524
  </div>
519
525
  <script src="../../../prettify.js"></script>
520
526
  <script>