in karavan-space/src/designer/route/DslConnections.tsx [234:262]
getInternalLines(data: [string, number, boolean]) {
const pos = this.state.steps.get(data[0]);
const uri = (pos?.step as any).uri;
if (uri && uri.length && pos) {
const key = pos.step.uuid + "-outgoing"
const fromX = pos.headerRect.x + pos.headerRect.width / 2 - this.props.left;
const fromY = pos.headerRect.y + pos.headerRect.height / 2 - this.props.top;
const r = pos.headerRect.height / 2;
const className = (CamelUi.hasDirectUri(pos.step) ? "path-direct" : "path-seda") + (data[2] ? "-selected" : "");
return this.getInternalLine(uri, key, className, fromX, fromY, r, data[1]);
} else if (pos?.step.dslName === 'SagaDefinition'){
const saga = (pos?.step as SagaDefinition);
const fromX = pos.headerRect.x + pos.headerRect.width / 2 - this.props.left;
const fromY = pos.headerRect.y + pos.headerRect.height / 2 - this.props.top;
const r = pos.headerRect.height / 2;
const result:any[] = [];
if (saga.completion && (saga.completion.startsWith("direct") || saga.completion.startsWith("seda"))){
const key = pos.step.uuid + "-completion"
const className = saga.completion.startsWith("direct") ? "path-direct" : "path-seda";
result.push(this.getInternalLine(saga.completion, key, className, fromX, fromY, r, data[1]));
}
if (saga.compensation && (saga.compensation.startsWith("direct") || saga.compensation.startsWith("seda"))){
const key = pos.step.uuid + "-compensation"
const className = saga.compensation.startsWith("direct") ? "path-direct" : "path-seda";
result.push(this.getInternalLine(saga.compensation, key, className, fromX, fromY, r, data[1]));
}
return result;
}
}