Merge branch 'master' of github.com:budibase/budibase into feature-flag-helper

This commit is contained in:
Sam Rose 2024-10-08 11:14:11 +01:00
commit 635d268eea
No known key found for this signature in database
3 changed files with 39 additions and 9 deletions

View File

@ -371,15 +371,21 @@ export class DatabaseImpl implements Database {
return this.performCall(() => { return this.performCall(() => {
return async () => { return async () => {
const response = await directCouchUrlCall(args) const response = await directCouchUrlCall(args)
if (response.status >= 300) { const text = await response.text()
const text = await response.text() if (response.status > 300) {
console.error(`SQS error: ${text}`) let json
throw new CouchDBError( try {
"error while running SQS query, please try again later", json = JSON.parse(text)
{ name: "sqs_error", status: response.status } } catch (err) {
) console.error(`SQS error: ${text}`)
throw new CouchDBError(
"error while running SQS query, please try again later",
{ name: "sqs_error", status: response.status }
)
}
throw json
} }
return (await response.json()) as T return JSON.parse(text) as T
} }
}) })
} }

View File

@ -1067,6 +1067,26 @@ describe.each([
) )
}) })
it("can add a new group by field that is invisible, even if required on the table", async () => {
view.schema!.name = { visible: false }
await config.api.viewV2.update(view)
const { rows } = await config.api.row.search(view.id)
expect(rows).toHaveLength(2)
expect(rows).toEqual(
expect.arrayContaining([
{
country: "USA",
age: 65,
},
{
country: "UK",
age: 61,
},
])
)
})
it("can add a new calculation field", async () => { it("can add a new calculation field", async () => {
view.schema!.count = { view.schema!.count = {
visible: true, visible: true,

View File

@ -122,7 +122,11 @@ async function guardViewSchema(
} }
await checkReadonlyFields(table, view) await checkReadonlyFields(table, view)
checkRequiredFields(table, view)
if (!helpers.views.isCalculationView(view)) {
checkRequiredFields(table, view)
}
checkDisplayField(view) checkDisplayField(view)
} }