react-diagrams icon indicating copy to clipboard operation
react-diagrams copied to clipboard

Circular references is preventing webpack from working

Open philippe-lavoie opened this issue 5 years ago • 1 comments

Hi

(great project by the way)

When I do gatsby build it always complain

> 53 | export class CustomDeleteItemsAction extends Action {

  WebpackError: TypeError: Class extends value undefined is not a constructor or null

After some digging, it turns out that only a circular refernce can cause this. I installed marge and here is what it found

× Found 16 circular dependencies!

1) src/DiagramEngine.ts > src/entities/label/LabelModel.ts
2) src/DiagramEngine.ts > src/entities/label/LabelModel.ts > src/entities/link/LinkModel.ts
3) src/entities/label/LabelModel.ts > src/entities/link/LinkModel.ts
4) src/entities/link/LinkModel.ts > src/entities/link/PointModel.ts
5) src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts
6) src/DiagramEngine.ts > src/entities/label/LabelModel.ts > src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts
7) src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts
8) src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts
9) src/DiagramEngine.ts > src/entities/label/LabelModel.ts > src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts > src/models/DiagramModel.ts > src/entities/link-layer/LinkLayerModel.ts
10) src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts > src/models/DiagramModel.ts > src/entities/link-layer/LinkLayerModel.ts
11) src/models/DiagramModel.ts > src/entities/link-layer/LinkLayerModel.ts
12) src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts > src/models/DiagramModel.ts
13) src/DiagramEngine.ts > src/entities/label/LabelModel.ts > src/entities/link/LinkModel.ts > src/entities/port/PortModel.ts > src/entities/node/NodeModel.ts > src/models/DiagramModel.ts > src/entities/node-layer/NodeLayerModel.ts
14) src/entities/node/NodeModel.ts > src/models/DiagramModel.ts > src/entities/node-layer/NodeLayerModel.ts
15) src/models/DiagramModel.ts > src/entities/node-layer/NodeLayerModel.ts
16) src/entities/node/NodeModel.ts > src/models/DiagramModel.ts

There should not be circular dependencies as it can have downstream effects.

philippe-lavoie avatar Jan 21 '20 19:01 philippe-lavoie

Any progress on this?

malavshah-9 avatar Oct 26 '21 10:10 malavshah-9