in packages/graph-explorer/src/core/StateProvider/displayTypeConfigs.ts [159:194]
export function mapToDisplayEdgeTypeConfig(
typeConfig: EdgeTypeConfig,
textTransform: TextTransformer = sanitizeText
): DisplayEdgeTypeConfig {
const displayLabel =
typeConfig.displayLabel ||
textTransform(typeConfig.type) ||
MISSING_DISPLAY_TYPE;
const attributes: DisplayConfigAttribute[] = typeConfig.attributes
.map(attr => ({
name: attr.name,
displayLabel: attr.displayLabel || textTransform(attr.name),
isSearchable: isAttributeSearchable(attr),
}))
.toSorted((a, b) => a.name.localeCompare(b.name));
const style: DisplayEdgeStyle = {
sourceArrowStyle:
typeConfig.sourceArrowStyle || defaultEdgeTypeConfig.sourceArrowStyle,
targetArrowStyle:
typeConfig.targetArrowStyle || defaultEdgeTypeConfig.targetArrowStyle,
lineStyle: typeConfig.lineStyle || defaultEdgeTypeConfig.lineStyle,
lineColor: typeConfig.lineColor || defaultEdgeTypeConfig.lineColor,
};
const result: DisplayEdgeTypeConfig = {
type: typeConfig.type,
displayLabel,
attributes,
style,
displayNameAttribute:
typeConfig.displayNameAttribute || RESERVED_TYPES_PROPERTY,
};
return result;
}