<core:FragmentDefinition
	xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
	xmlns:unittest="http://schemas.sap.com/sapui5/preprocessorextension/sap.fe.unittesting/1"
	xmlns:mdcTable="sap.ui.mdc.table"
	xmlns:core="sap.ui.core"
	xmlns:customData="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
	template:require="{
		MODEL: 'sap/ui/model/odata/v4/AnnotationHelper',
		TABLE: 'sap/fe/macros/table/TableHelper',
		FIELD: 'sap/fe/macros/field/FieldHelper',
		UI: 'sap/fe/core/templating/UIFormatters'
	}"
>
	<template:with path="dataField>" helper="FIELD.getDataFieldDefault" var="dataField">
		<mdcTable:Column
			unittest:id="MDCTableColumn"
			id="{= TABLE.getColumnStableId(${this>id},${dataField>@@UI.getDataModelObjectPath}) }"
			width="{= ${this>isOptimizedForSmallDevice} === false ? TABLE.getColumnWidth(${this>}, ${column>}, ${dataField>}, ${dataField>@@TABLE.getTextOnActionField}, ${dataField>@@UI.getDataModelObjectPath}, true, {title: ${dataField>Target/$AnnotationPath/Title} || '', description: ${dataField>Target/$AnnotationPath/Description} || ''}) : undefined}"
			minWidth="{= ${this>isOptimizedForSmallDevice} === true ? TABLE.getColumnWidth(${this>}, ${column>}, ${dataField>}, ${dataField>@@TABLE.getTextOnActionField}, ${dataField>@@UI.getDataModelObjectPath}, false, {title: ${dataField>Target/$AnnotationPath/Title} || '', description: ${dataField>Target/$AnnotationPath/Description} || ''}) : undefined}"
			header="{= ${dataField>@@MODEL.label} || ${dataField>Target/$AnnotationPath/@@MODEL.label} || ${column>name} }"
			dataProperty="{column>name}"
			hAlign="{= ${column>horizontalAlign} || FIELD.getColumnAlignment(${dataField>}, ${this>}) }"
			headerVisible="{= TABLE.setHeaderLabelVisibility( ${dataField>}, ${dataField>Target/$AnnotationPath/Data}) }"
			importance="{column>importance}"
			customData:showDataFieldsLabel="{column>showDataFieldsLabel}"
			tooltip="{column>tooltip}"
			required="{= ${this>readOnly} ? undefined : ${column>required} }"
		>
			<core:Fragment fragmentName="sap.fe.macros.table.ColumnContent" type="XML" />
		</mdcTable:Column>
	</template:with>
</core:FragmentDefinition>
