import { register, registerAnchors, registerCanvasDraw } from '@meta2d/core';
import { flowPens, flowAnchors } from '@meta2d/flow-diagram';
import {
  activityDiagram,
  activityDiagramByCtx,
} from '@meta2d/activity-diagram';
import { classPens } from '@meta2d/class-diagram';
import { sequencePens, sequencePensbyCtx } from '@meta2d/sequence-diagram';
import { register as registerEcharts } from '@meta2d/chart-diagram';
import { formPens, formPath2DPens } from '@meta2d/form-diagram';
import { chartsPens } from '@meta2d/le5le-charts';
import { ftaPens, ftaPensbyCtx, ftaAnchors } from '@meta2d/fta-diagram';
// import { iotCanvasPens, iotPens } from '@2d-components/iot';
// import { domFormPens, domFormCanvasPens } from '@2d-components/domForm';
// import { threeDPens } from '@2d-components/3d';

export function registerBasicDiagram() {
  register(flowPens());
  registerAnchors(flowAnchors());
  register(activityDiagram());
  registerCanvasDraw(activityDiagramByCtx());
  register(classPens());
  register(sequencePens());
  registerCanvasDraw(sequencePensbyCtx());
  registerEcharts();
  registerCanvasDraw(formPens());
  register(formPath2DPens());
  registerCanvasDraw(chartsPens());
  register(ftaPens());
  registerCanvasDraw(ftaPensbyCtx());
  registerAnchors(ftaAnchors());
  //特殊图元注册
  // register(iotPens());
  // registerCanvasDraw(iotCanvasPens());
  // register(domFormPens());
  // registerCanvasDraw(domFormCanvasPens());
  // registerCanvasDraw(threeDPens());
}
