|
|
@ -26,12 +26,20 @@ |
|
|
array: ArrayRenderer, |
|
|
array: ArrayRenderer, |
|
|
internal: InternalRenderer, |
|
|
internal: InternalRenderer, |
|
|
} |
|
|
} |
|
|
$: type = schema?.type ?? "string" |
|
|
$: type = getType(schema) |
|
|
$: customRenderer = customRenderers?.find(x => x.column === schema?.name) |
|
|
$: customRenderer = customRenderers?.find(x => x.column === schema?.name) |
|
|
$: renderer = customRenderer?.component ?? typeMap[type] ?? StringRenderer |
|
|
$: renderer = customRenderer?.component ?? typeMap[type] ?? StringRenderer |
|
|
$: width = schema?.width || "150px" |
|
|
$: width = schema?.width || "150px" |
|
|
$: cellValue = getCellValue(value, schema.template) |
|
|
$: cellValue = getCellValue(value, schema.template) |
|
|
|
|
|
|
|
|
|
|
|
const getType = schema => { |
|
|
|
|
|
// Use a string renderer for dates if we use a custom template |
|
|
|
|
|
if (schema?.type === "datetime" && schema?.template) { |
|
|
|
|
|
return "string" |
|
|
|
|
|
} |
|
|
|
|
|
return schema?.type || "string" |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
const getCellValue = (value, template) => { |
|
|
const getCellValue = (value, template) => { |
|
|
if (!template) { |
|
|
if (!template) { |
|
|
return value |
|
|
return value |
|
|
|