|
|
@ -24,29 +24,32 @@ |
|
|
let model |
|
|
let model |
|
|
|
|
|
|
|
|
onMount(async () => { |
|
|
onMount(async () => { |
|
|
const jsonModel = await _bb.api.get(`/api/models/${datasource.modelId}`) |
|
|
if (datasource.modelId) { |
|
|
model = await jsonModel.json() |
|
|
const jsonModel = await _bb.api.get(`/api/models/${datasource.modelId}`) |
|
|
const { schema } = model |
|
|
model = await jsonModel.json() |
|
|
console.log(schema) |
|
|
const { schema } = model |
|
|
if (!isEmpty(datasource)) { |
|
|
console.log(schema) |
|
|
data = await fetchData(datasource) |
|
|
if (!isEmpty(datasource)) { |
|
|
columnDefs = Object.keys(schema).map((key, i) => { |
|
|
data = await fetchData(datasource) |
|
|
return { |
|
|
columnDefs = Object.keys(schema).map((key, i) => { |
|
|
headerCheckboxSelection: i === 0, |
|
|
return { |
|
|
checkboxSelection: i === 0, |
|
|
headerCheckboxSelection: i === 0, |
|
|
valueSetter: setters.get(schema[key].type), |
|
|
checkboxSelection: i === 0, |
|
|
headerName: key.charAt(0).toUpperCase() + key.slice(1), |
|
|
valueSetter: setters.get(schema[key].type), |
|
|
field: key, |
|
|
headerName: key.charAt(0).toUpperCase() + key.slice(1), |
|
|
hide: shouldHideField(key), |
|
|
field: key, |
|
|
sortable: true, |
|
|
hide: shouldHideField(key), |
|
|
editable: |
|
|
sortable: true, |
|
|
schema[key].type !== "boolean" && schema[key].type !== "attachment", |
|
|
editable: |
|
|
cellRenderer: renderers.get(schema[key].type), |
|
|
schema[key].type !== "boolean" && |
|
|
autoHeight: schema[key].type === "attachment", |
|
|
schema[key].type !== "attachment", |
|
|
} |
|
|
cellRenderer: renderers.get(schema[key].type), |
|
|
}) |
|
|
autoHeight: schema[key].type === "attachment", |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
} |
|
|
|
|
|
dataLoaded = true |
|
|
} |
|
|
} |
|
|
dataLoaded = true |
|
|
|
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
const shouldHideField = name => { |
|
|
const shouldHideField = name => { |
|
|
|