@next-bricks/diagram 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/9393.caf561ce.js","mappings":"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","sources":["webpack:///./src/diagram/index.tsx","webpack:///./src/editable-label/index.tsx","webpack:///./src/editable-label/styles.shadow.css"],"sourcesContent":["import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport dagre from \"@dagrejs/dagre\";\nimport { select } from \"d3-selection\";\nimport { ZoomTransform, zoom } from \"d3-zoom\";\nimport classNames from \"classnames\";\nimport { pick, uniqueId } from \"lodash\";\nimport type {\n DiagramEdge,\n DiagramNode,\n LayoutOptionsDagre,\n LineConf,\n NodeBrickConf,\n PositionTuple,\n RefRepository,\n RenderedEdge,\n RenderedLineLabel,\n RenderedNode,\n LineTextClipPath,\n TransformLiteral,\n LineTarget,\n ConnectLineDetail,\n NodesConnectOptions,\n ConnectLineState,\n ActiveTarget,\n RangeTuple,\n} from \"./interfaces\";\nimport { NodeComponentGroup } from \"./NodeComponent\";\nimport { handleKeyboard } from \"./processors/handleKeyboard\";\nimport { transformToCenter } from \"./processors/transformToCenter\";\nimport { getRenderedLinesAndMarkers } from \"./processors/getRenderedLinesAndMarkers\";\nimport { LineLabelComponentGroup } from \"./LineLabelComponent\";\nimport { LineComponent } from \"./LineComponent\";\nimport { MarkerComponent } from \"./MarkerComponent\";\nimport { ClipPathComponent } from \"./ClipPathComponent\";\nimport { ConnectLineComponent } from \"./ConnectLineComponent\";\nimport { getClipPathList } from \"./processors/getClipPathList\";\nimport { getRenderedLineLabels } from \"./processors/getRenderedLineLabels\";\nimport { getRenderedDiagram } from \"./processors/getRenderedDiagram\";\nimport { getDagreGraph } from \"./processors/getDagreGraph\";\nimport { handleNodesMouseDown } from \"./processors/handleNodesMouseDown\";\nimport styleText from \"./styles.shadow.css\";\nimport { DEFAULT_SCALE_RANGE_MAX, DEFAULT_SCALE_RANGE_MIN } from \"./constants\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface EoDiagramProps {\n layout?: \"dagre\";\n nodes?: DiagramNode[];\n edges?: DiagramEdge[];\n nodeBricks?: NodeBrickConf[];\n lines?: LineConf[];\n layoutOptions?: LayoutOptionsDagre;\n nodesConnect?: NodesConnectOptions;\n activeTarget?: ActiveTarget | null;\n disableKeyboardAction?: boolean;\n zoomable?: boolean;\n scrollable?: boolean;\n scaleRange?: RangeTuple;\n}\n\nexport interface DiagramRef {\n callOnLineLabel(id: string, method: string, ...args: unknown[]): void;\n}\n\nexport const EoDiagramComponent = forwardRef(LegacyEoDiagramComponent);\n\n/**\n * 构件 `eo-diagram`\n */\nexport\n@defineElement(\"eo-diagram\", {\n styleTexts: [styleText],\n})\nclass EoDiagram extends ReactNextElement implements EoDiagramProps {\n /**\n * @required\n */\n @property({ type: String })\n accessor layout: \"dagre\" | undefined;\n\n @property({ attribute: false })\n accessor nodes: DiagramNode[] | undefined;\n\n @property({ attribute: false })\n accessor edges: DiagramEdge[] | undefined;\n\n @property({ attribute: false })\n accessor nodeBricks: NodeBrickConf[] | undefined;\n\n @property({ attribute: false })\n accessor lines: LineConf[] | undefined;\n\n @property({ attribute: false })\n accessor layoutOptions: LayoutOptionsDagre | undefined;\n\n @property({ attribute: false })\n accessor activeTarget: ActiveTarget | null | undefined;\n\n @property({ type: Boolean })\n accessor disableKeyboardAction: boolean | undefined;\n\n @property({ attribute: false })\n accessor nodesConnect: NodesConnectOptions | undefined;\n\n @property({ type: Boolean })\n accessor zoomable: boolean | undefined = true;\n\n @property({ type: Boolean })\n accessor scrollable: boolean | undefined = true;\n\n @property({ attribute: false })\n accessor scaleRange: RangeTuple | undefined;\n\n @event({ type: \"activeTarget.change\" })\n accessor #activeTargetChangeEvent!: EventEmitter<ActiveTarget | null>;\n\n #handleActiveTargetChange = (target: ActiveTarget | null) => {\n this.#activeTargetChangeEvent.emit(target);\n };\n\n @event({ type: \"node.delete\" })\n accessor #nodeDelete!: EventEmitter<DiagramNode>;\n\n #handleNodeDelete = (node: DiagramNode) => {\n this.#nodeDelete.emit(node);\n };\n\n @event({ type: \"edge.delete\" })\n accessor #edgeDelete!: EventEmitter<DiagramEdge>;\n\n #handleEdgeDelete = (edge: DiagramEdge) => {\n this.#edgeDelete.emit(edge);\n };\n\n @event({ type: \"line.click\" })\n accessor #lineClick!: EventEmitter<LineTarget>;\n\n #handleLineClick = (line: LineTarget) => {\n this.#lineClick.emit(line);\n };\n\n @event({ type: \"line.dblclick\" })\n accessor #lineDoubleClick!: EventEmitter<LineTarget>;\n\n #handleLineDoubleClick = (line: LineTarget) => {\n this.#lineDoubleClick.emit(line);\n };\n\n @event({ type: \"nodes.connect\" })\n accessor #nodesConnect!: EventEmitter<ConnectLineDetail>;\n\n #handleNodesConnect = (detail: ConnectLineDetail) => {\n this.#nodesConnect.emit(detail);\n };\n\n #handleSwitchActiveTarget = (target: ActiveTarget | null) => {\n this.activeTarget = target;\n };\n\n #diagramRef = createRef<DiagramRef>();\n\n @method()\n callOnLineLabel(id: string, method: string, ...args: unknown[]) {\n this.#diagramRef.current?.callOnLineLabel(id, method, ...args);\n }\n\n render() {\n return (\n <EoDiagramComponent\n ref={this.#diagramRef}\n layout={this.layout}\n nodes={this.nodes}\n edges={this.edges}\n nodeBricks={this.nodeBricks}\n lines={this.lines}\n layoutOptions={this.layoutOptions}\n nodesConnect={this.nodesConnect}\n activeTarget={this.activeTarget}\n disableKeyboardAction={this.disableKeyboardAction}\n zoomable={this.zoomable}\n scrollable={this.scrollable}\n scaleRange={this.scaleRange}\n onActiveTargetChange={this.#handleActiveTargetChange}\n onSwitchActiveTarget={this.#handleSwitchActiveTarget}\n onNodeDelete={this.#handleNodeDelete}\n onEdgeDelete={this.#handleEdgeDelete}\n onLineClick={this.#handleLineClick}\n onLineDoubleClick={this.#handleLineDoubleClick}\n onNodesConnect={this.#handleNodesConnect}\n />\n );\n }\n}\n\nexport interface EoDiagramComponentProps extends EoDiagramProps {\n onActiveTargetChange?(target: ActiveTarget | null): void;\n onSwitchActiveTarget?(target: ActiveTarget | null): void;\n onNodeDelete?(node: DiagramNode): void;\n onEdgeDelete?(edge: DiagramEdge): void;\n onLineClick?(line: LineTarget): void;\n onLineDoubleClick?(line: LineTarget): void;\n onNodesConnect?(detail: ConnectLineDetail): void;\n}\n\nexport function LegacyEoDiagramComponent(\n {\n layout,\n nodes,\n edges,\n nodeBricks,\n lines,\n layoutOptions,\n nodesConnect,\n activeTarget,\n disableKeyboardAction,\n zoomable,\n scrollable,\n scaleRange: _scaleRange,\n onActiveTargetChange,\n onSwitchActiveTarget,\n onNodeDelete,\n onEdgeDelete,\n onLineClick,\n onLineDoubleClick,\n onNodesConnect,\n }: EoDiagramComponentProps,\n ref: React.Ref<DiagramRef>\n) {\n const [graph, setGraph] = useState<dagre.graphlib.Graph<RenderedNode> | null>(\n null\n );\n const [nodesReady, setNodesReady] = useState(false);\n const [nodesRenderId, setNodesRenderId] = useState(0);\n const [nodesRefRepository, setNodesRefRepository] =\n useState<RefRepository | null>(null);\n // const [lineLabelsReady, setLineLabelsReady] = useState(false);\n const [lineLabelsRenderId, setLineLabelsRenderId] = useState(0);\n const [lineLabelsRefRepository, setLineLabelsRefRepository] =\n useState<RefRepository | null>(null);\n const [renderedNodes, setRenderedNodes] = useState<RenderedNode[]>([]);\n const [renderedEdges, setRenderedEdges] = useState<RenderedEdge[]>([]);\n const [renderedLineLabels, setRenderedLineLabels] = useState<\n RenderedLineLabel[]\n >([]);\n\n const [grabbing, setGrabbing] = useState(false);\n const [transform, setTransform] = useState<TransformLiteral>({\n k: 1,\n x: 0,\n y: 0,\n });\n\n const linePathsRef = useRef(new Map<string, SVGPathElement | null>());\n\n const rootRef = useRef<HTMLDivElement>(null);\n const nodesRef = useRef<HTMLDivElement>(null);\n const [centered, setCentered] = useState(false);\n\n const [connectLineTo, setConnectLineTo] = useState<PositionTuple>([0, 0]);\n const [connectLineState, setConnectLineState] =\n useState<ConnectLineState | null>(null);\n\n useImperativeHandle(ref, () => ({\n callOnLineLabel(id, method, ...args) {\n (\n lineLabelsRefRepository?.get(id)\n ?.firstElementChild as unknown as Record<string, Function>\n )?.[method](...args);\n },\n }));\n\n useEffect(() => {\n const onNodesMouseDown = (event: MouseEvent) => {\n handleNodesMouseDown(event, {\n nodes,\n nodesRefRepository,\n nodesConnect,\n setConnectLineState,\n setConnectLineTo,\n onSwitchActiveTarget,\n onNodesConnect,\n });\n };\n // Bind mousedown event manually, since the React event handler can't work with\n // d3-zoom inside shadow DOM.\n const nodesContainer = nodesRef.current;\n nodesContainer?.addEventListener(\"mousedown\", onNodesMouseDown);\n return () => {\n nodesContainer?.removeEventListener(\"mousedown\", onNodesMouseDown);\n };\n }, [\n nodes,\n nodesConnect,\n nodesRefRepository,\n onNodesConnect,\n onSwitchActiveTarget,\n ]);\n\n const fixedOptions = useMemo(\n () => ({\n rankdir: \"TB\",\n ranksep: 50,\n edgesep: 10,\n nodesep: 50,\n // align: undefined,\n nodePadding: 0,\n ...layoutOptions,\n }),\n [layoutOptions]\n );\n\n const { nodePadding } = fixedOptions;\n const dagreGraphOptions = useMemo(\n () =>\n pick(fixedOptions, [\"rankdir\", \"ranksep\", \"edgesep\", \"nodesep\", \"align\"]),\n [fixedOptions]\n );\n\n const activeTargetChangeInitialized = useRef(false);\n useEffect(() => {\n if (!activeTargetChangeInitialized.current) {\n activeTargetChangeInitialized.current = true;\n return;\n }\n onActiveTargetChange?.(activeTarget ?? null);\n }, [nodes, activeTarget, onActiveTargetChange]);\n\n useEffect(() => {\n setGraph((previousGraph) =>\n getDagreGraph(previousGraph, nodes, edges, dagreGraphOptions)\n );\n }, [edges, nodes, dagreGraphOptions]);\n\n useEffect(() => {\n const renderedDiagram = getRenderedDiagram({\n graph,\n nodesRefRepository,\n nodePadding,\n });\n if (renderedDiagram) {\n setRenderedNodes(renderedDiagram.nodes);\n setRenderedEdges(renderedDiagram.edges);\n }\n }, [graph, nodesRefRepository, nodesRenderId, nodePadding]);\n\n const { renderedLines, markers } = useMemo(\n () => getRenderedLinesAndMarkers(renderedEdges, lines),\n [lines, renderedEdges]\n );\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root || disableKeyboardAction) {\n return;\n }\n const onKeydown = (event: KeyboardEvent) => {\n const action = handleKeyboard(event, {\n renderedNodes,\n renderedEdges,\n activeTarget,\n });\n\n if (action?.action === \"delete-node\") {\n onNodeDelete?.(action.node);\n } else if (action?.action === \"delete-edge\") {\n onEdgeDelete?.(action.edge);\n } else if (action?.action === \"switch-active-node\" && action.node) {\n onSwitchActiveTarget?.({ type: \"node\", nodeId: action.node.id });\n }\n };\n root.addEventListener(\"keydown\", onKeydown);\n return () => {\n root.removeEventListener(\"keydown\", onKeydown);\n };\n }, [\n activeTarget,\n renderedNodes,\n renderedEdges,\n disableKeyboardAction,\n onSwitchActiveTarget,\n onNodeDelete,\n onEdgeDelete,\n ]);\n\n const handleNodesRendered = useCallback(\n (refRepository: RefRepository | null) => {\n if (refRepository) {\n setNodesRenderId((previous) => previous + 1);\n setNodesRefRepository(refRepository);\n }\n setNodesReady((previous) => previous || !!refRepository);\n },\n []\n );\n\n const handleLineLabelsRendered = useCallback(\n (refRepository: RefRepository | null) => {\n if (refRepository) {\n setLineLabelsRenderId((previous) => previous + 1);\n setLineLabelsRefRepository(refRepository);\n }\n // setLineLabelsReady((previous) => previous || !!refRepository);\n },\n []\n );\n\n const scaleRange = useMemo(\n () =>\n _scaleRange ??\n ([DEFAULT_SCALE_RANGE_MIN, DEFAULT_SCALE_RANGE_MAX] as RangeTuple),\n [_scaleRange]\n );\n\n const zoomer = useMemo(() => zoom<HTMLDivElement, unknown>(), []);\n\n useEffect(() => {\n let moved = false;\n zoomer\n .scaleExtent(zoomable ? scaleRange : [1, 1])\n .on(\"start\", () => {\n moved = false;\n setGrabbing(true);\n })\n .on(\"zoom\", (e: { transform: TransformLiteral }) => {\n moved = true;\n setTransform(e.transform);\n })\n .on(\"end\", () => {\n setGrabbing(false);\n if (!moved) {\n onSwitchActiveTarget?.(null);\n }\n });\n }, [onSwitchActiveTarget, scaleRange, zoomable, zoomer]);\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root) {\n return;\n }\n\n const rootSelection = select(root);\n\n if (zoomable || scrollable) {\n // Do not override default d3 zoom handler.\n // Only handles *panning*\n rootSelection.on(\n \"wheel.zoom.custom\",\n (e: WheelEvent & { wheelDeltaX: number; wheelDeltaY: number }) => {\n // Mac OS trackpad pinch event is emitted as a wheel.zoom and d3.event.ctrlKey set to true\n if (!e.ctrlKey) {\n // Stop immediate propagation for default d3 zoom handler\n e.stopImmediatePropagation();\n if (scrollable) {\n e.preventDefault();\n zoomer.translateBy(\n rootSelection,\n e.wheelDeltaX / 5,\n e.wheelDeltaY / 5\n );\n }\n }\n // zoomer.scaleBy(rootSelection, Math.pow(2, defaultWheelDelta(e)))\n }\n );\n } else {\n rootSelection.on(\".zoom\", null);\n }\n\n rootSelection\n .on(\"wheel\", (e: WheelEvent) => e.preventDefault())\n .call(zoomer)\n .on(\"dblclick.zoom\", null);\n\n return () => {\n rootSelection.on(\".zoom\", null);\n rootSelection.on(\".zoom.custom\", null);\n };\n }, [scrollable, zoomable, zoomer]);\n\n useEffect(() => {\n const root = rootRef.current;\n if (renderedNodes.length === 0 || !root || centered) {\n return;\n }\n const { k, x, y } = transformToCenter(renderedNodes, {\n canvasWidth: root.clientWidth,\n canvasHeight: root.clientHeight,\n scaleRange: zoomable ? scaleRange : undefined,\n });\n zoomer.transform(select(root), new ZoomTransform(k, x, y));\n setCentered(true);\n }, [centered, renderedNodes, scaleRange, zoomable, zoomer]);\n\n const defPrefix = useMemo(() => `${uniqueId(\"diagram-\")}-`, []);\n const markerPrefix = `${defPrefix}line-arrow-`;\n const clipPathPrefix = `${defPrefix}clip-path-`;\n const activeLineMarkerPrefix = `${defPrefix}active-line-`;\n\n useEffect(() => {\n setRenderedLineLabels((previous) =>\n getRenderedLineLabels(previous, renderedLines, linePathsRef.current)\n );\n }, [renderedLines]);\n\n const [clipPathList, setClipPathList] = React.useState<LineTextClipPath[]>(\n []\n );\n\n useEffect(() => {\n if (!lineLabelsRefRepository) {\n return;\n }\n setClipPathList(\n getClipPathList(renderedLineLabels, lineLabelsRefRepository)\n );\n }, [lineLabelsRenderId, lineLabelsRefRepository, renderedLineLabels]);\n\n if (layout !== \"dagre\") {\n return <div>{`Diagram layout not supported: \"${layout}\"`}</div>;\n }\n\n return (\n <div\n className={classNames(\"diagram\", {\n ready: nodesReady && centered,\n grabbing,\n })}\n tabIndex={-1}\n ref={rootRef}\n >\n <svg width=\"100%\" height=\"100%\" className=\"lines\">\n <defs>\n {markers.map(({ strokeColor }, index) => (\n <MarkerComponent\n key={index}\n id={`${markerPrefix}${index}`}\n strokeColor={strokeColor}\n />\n ))}\n {clipPathList.map((clipPath) => (\n <ClipPathComponent\n key={clipPath.id}\n clipPath={clipPath}\n clipPathPrefix={clipPathPrefix}\n renderedLineLabels={renderedLineLabels}\n />\n ))}\n <marker\n id={`${activeLineMarkerPrefix}start`}\n viewBox=\"0 0 8 8\"\n refX={4}\n refY={4}\n markerWidth={8}\n markerHeight={8}\n orient=\"auto\"\n >\n <path\n d=\"M 0.5 0.5 H 7.5 V 7.5 H 0.5 Z\"\n stroke=\"var(--palette-gray-7)\"\n strokeWidth={1}\n fill=\"var(--palette-gray-1)\"\n />\n </marker>\n <marker\n id={`${activeLineMarkerPrefix}end`}\n viewBox=\"0 0 14 8\"\n refX={3}\n refY={4}\n markerWidth={14}\n markerHeight={8}\n orient=\"auto\"\n >\n <path\n d=\"M 0.5 1.5 L 5.5 4 L 0.5 6.5 z\"\n stroke=\"var(--palette-blue-3)\"\n strokeWidth={1}\n fill=\"var(--palette-blue-3)\"\n />\n <path\n d=\"M 6.5 0.5 H 13.5 V 7.5 H 6.5 Z\"\n stroke=\"var(--palette-gray-7)\"\n strokeWidth={1}\n fill=\"var(--palette-gray-1)\"\n />\n </marker>\n </defs>\n <g\n transform={`translate(${transform.x} ${transform.y}) scale(${transform.k})`}\n >\n {renderedLines.map((line) => (\n <LineComponent\n key={line.line.$id}\n line={line}\n linePaths={linePathsRef.current}\n clipPathList={clipPathList}\n markerPrefix={markerPrefix}\n clipPathPrefix={clipPathPrefix}\n activeLineMarkerPrefix={activeLineMarkerPrefix}\n activeEdge={\n activeTarget?.type === \"edge\" ? activeTarget.edge : null\n }\n onLineClick={onLineClick}\n onLineDoubleClick={onLineDoubleClick}\n />\n ))}\n </g>\n </svg>\n <div\n className=\"line-labels\"\n style={{\n left: transform.x,\n top: transform.y,\n transform: `scale(${transform.k})`,\n }}\n >\n <LineLabelComponentGroup\n labels={renderedLineLabels}\n onRendered={handleLineLabelsRendered}\n />\n </div>\n <div\n className=\"nodes\"\n ref={nodesRef}\n style={{\n left: transform.x,\n top: transform.y,\n transform: `scale(${transform.k})`,\n }}\n >\n <NodeComponentGroup\n nodes={nodes}\n nodeBricks={nodeBricks}\n // nodePositions={nodePositions}\n onRendered={handleNodesRendered}\n />\n </div>\n <ConnectLineComponent\n connectLineState={connectLineState}\n connectLineTo={connectLineTo}\n markerPrefix={markerPrefix}\n />\n </div>\n );\n}\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport classNames from \"classnames\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface EditableLabelProps {\n label?: string;\n type?: LabelType;\n}\n\nexport type LabelType = \"line\" | \"default\";\n\nexport interface EditableLabelRef {\n enableEditing(): void;\n}\n\nexport const EditableLabelComponent = forwardRef(LegacyEditableLabelComponent);\n\n/**\n * 构件 `diagram.editable-label`\n */\nexport\n@defineElement(\"diagram.editable-label\", {\n styleTexts: [styleText],\n})\nclass EditableLabel extends ReactNextElement implements EditableLabelProps {\n @property()\n accessor label: string | undefined;\n\n @property({ render: false })\n accessor type: LabelType | undefined;\n\n @event({ type: \"label.editing.change\" })\n accessor #labelEditingChange!: EventEmitter<boolean>;\n\n #handleLabelEditingChange = (value: boolean) => {\n this.#labelEditingChange.emit(value);\n };\n\n @event({ type: \"label.change\" })\n accessor #labelChange!: EventEmitter<string>;\n\n #handleLabelChange = (value: string) => {\n this.#labelChange.emit(value);\n };\n\n @method()\n enableEditing() {\n this.#editableLabelRef.current?.enableEditing();\n }\n\n #editableLabelRef = createRef<EditableLabelRef>();\n\n render() {\n return (\n <EditableLabelComponent\n ref={this.#editableLabelRef}\n label={this.label}\n onLabelEditingChange={this.#handleLabelEditingChange}\n onLabelChange={this.#handleLabelChange}\n />\n );\n }\n}\n\nexport interface EditableLabelComponentProps extends EditableLabelProps {\n onLabelEditingChange?(value: boolean): void;\n onLabelChange?(value: string): void;\n}\n\nexport function LegacyEditableLabelComponent(\n {\n label: _label,\n onLabelChange,\n onLabelEditingChange,\n }: EditableLabelComponentProps,\n ref: React.Ref<EditableLabelRef>\n) {\n const label = _label ?? \"\";\n const [currentLabel, setCurrentLabel] = useState<string>(label);\n const [editingLabel, setEditingLabel] = useState(false);\n const editingLabelInitialized = useRef(false);\n const [shouldEmitLabelChange, setShouldEmitLabelChange] = useState(false);\n const labelInputRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(ref, () => ({\n enableEditing() {\n setEditingLabel(true);\n },\n }));\n\n useEffect(() => {\n setCurrentLabel(label);\n }, [label]);\n\n const handleEditLabel = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n setEditingLabel(true);\n }, []);\n\n useEffect(() => {\n if (editingLabel) {\n // Prevent scroll when focusing.\n // Otherwise the diagram svg may be clipped in Chrome.\n labelInputRef.current?.focus({ preventScroll: true });\n labelInputRef.current?.select();\n }\n }, [editingLabel]);\n\n useEffect(() => {\n if (editingLabelInitialized.current) {\n onLabelEditingChange?.(editingLabel);\n } else {\n editingLabelInitialized.current = true;\n }\n }, [editingLabel, onLabelEditingChange]);\n\n const handleInputChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setCurrentLabel(event.target.value);\n },\n []\n );\n\n const handleInputKeydown = useCallback((event: React.KeyboardEvent) => {\n const key =\n event.key ||\n /* istanbul ignore next: compatibility */ event.keyCode ||\n /* istanbul ignore next: compatibility */ event.which;\n if (key === \"Enter\" || key === 13) {\n labelInputRef.current?.blur();\n }\n }, []);\n\n const handleInputBlur = useCallback(() => {\n setEditingLabel(false);\n setShouldEmitLabelChange(true);\n }, []);\n\n useEffect(() => {\n if (shouldEmitLabelChange) {\n onLabelChange?.(currentLabel);\n setShouldEmitLabelChange(false);\n }\n }, [currentLabel, onLabelChange, shouldEmitLabelChange]);\n\n const stopPropagation = useCallback((e: React.MouseEvent) => {\n e.stopPropagation();\n }, []);\n\n return (\n <div\n className={classNames(\"label\", {\n editing: editingLabel,\n empty: !currentLabel,\n })}\n onDoubleClick={stopPropagation}\n onMouseDown={stopPropagation}\n >\n <input\n className=\"label-input\"\n value={currentLabel}\n ref={labelInputRef}\n onChange={handleInputChange}\n onKeyDown={handleInputKeydown}\n onBlur={handleInputBlur}\n />\n <div className=\"label-text\" onDoubleClick={handleEditLabel}>\n {currentLabel}\n </div>\n </div>\n );\n}\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block;--local-label-line-height:inherit;--local-label-font-size:inherit;--local-label-color:inherit;--local-label-font-weight:inherit}:host([hidden]){display:none}:host([type=\"line\"]){--local-label-line-height:18px;--local-label-font-size:11px;--local-label-color:var(--color-secondary-text);--local-label-font-weight:400}*{box-sizing:border-box}.label{max-width:168px;margin:-3px}.label-text,\n.label-input{width:100%;height:24px;padding:3px;border:none;line-height:var(--local-label-line-height);font-size:var(--local-label-font-size);color:var(--local-label-color);font-weight:var(--local-label-font-weight);text-align:center;font-family:inherit;cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text}.label-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.label.editing .label-text,\n.label.empty:not(.editing) .label-text,\n.label:not(.editing) .label-input{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n"],"names":["_EoDiagram","defineElement","property","event","method","createDecorators","EoDiagramComponent","forwardRef","LegacyEoDiagramComponent","_dec","styleTexts","styleText","_dec2","type","String","_dec3","attribute","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","Boolean","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_activeTargetChangeEvent","_handleActiveTargetChange","_N","_nodeDelete","_handleNodeDelete","_O","_edgeDelete","_handleEdgeDelete","_P","_lineClick","_handleLineClick","_Q","_lineDoubleClick","_handleLineDoubleClick","_R","_nodesConnect","_handleNodesConnect","_handleSwitchActiveTarget","_diagramRef","EoDiagram","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_nodesConnect2","set","_set_nodesConnect2","_get_lineDoubleClick2","_set_lineDoubleClick2","_get_lineClick2","_set_lineClick2","_get_edgeDelete2","_set_edgeDelete2","_get_nodeDelete2","_set_nodeDelete2","_get_activeTargetChangeEvent2","_set_activeTargetChangeEvent2","writable","value","_initProto","_init_layout","_init_nodes","_init_edges","_init_nodeBricks","_init_lines","_init_layoutOptions","_init_activeTarget","_init_disableKeyboardAction","_init_nodesConnect","_init_zoomable","_init_scrollable","_init_scaleRange","_init_activeTargetChangeEvent","target","_classPrivateFieldGet","this","emit","_init_nodeDelete","node","_init_edgeDelete","edge","_init_lineClick","line","_init_lineDoubleClick","_init_nodesConnect2","detail","activeTarget","createRef","layout","v","_classPrivateFieldSet","nodes","edges","nodeBricks","lines","layoutOptions","disableKeyboardAction","nodesConnect","zoomable","scrollable","scaleRange","callOnLineLabel","id","_classPrivateFieldGet2","_len","length","args","Array","_key","current","render","React","ref","onActiveTargetChange","onSwitchActiveTarget","onNodeDelete","onEdgeDelete","onLineClick","onLineDoubleClick","onNodesConnect","_set_activeTargetChangeEvent","_get_activeTargetChangeEvent","_set_nodeDelete","_get_nodeDelete","_set_edgeDelete","_get_edgeDelete","_set_lineClick","_get_lineClick","_set_lineDoubleClick","_get_lineDoubleClick","_set_nodesConnect","_get_nodesConnect","_ref","_scaleRange","graph","setGraph","useState","nodesReady","setNodesReady","nodesRenderId","setNodesRenderId","nodesRefRepository","setNodesRefRepository","lineLabelsRenderId","setLineLabelsRenderId","lineLabelsRefRepository","setLineLabelsRefRepository","renderedNodes","setRenderedNodes","renderedEdges","setRenderedEdges","renderedLineLabels","setRenderedLineLabels","grabbing","setGrabbing","transform","setTransform","k","x","y","linePathsRef","useRef","Map","rootRef","nodesRef","centered","setCentered","connectLineTo","setConnectLineTo","connectLineState","setConnectLineState","useImperativeHandle","_lineLabelsRefReposit","_len2","_key2","firstElementChild","useEffect","onNodesMouseDown","handleNodesMouseDown","nodesContainer","addEventListener","removeEventListener","fixedOptions","useMemo","_objectSpread","rankdir","ranksep","edgesep","nodesep","nodePadding","dagreGraphOptions","pick","activeTargetChangeInitialized","previousGraph","getDagreGraph","renderedDiagram","getRenderedDiagram","renderedLines","markers","getRenderedLinesAndMarkers","root","onKeydown","action","handleKeyboard","nodeId","handleNodesRendered","useCallback","refRepository","previous","handleLineLabelsRendered","DEFAULT_SCALE_RANGE_MIN","DEFAULT_SCALE_RANGE_MAX","zoomer","zoom","moved","scaleExtent","on","e","rootSelection","select","ctrlKey","stopImmediatePropagation","preventDefault","translateBy","wheelDeltaX","wheelDeltaY","call","transformToCenter","canvasWidth","clientWidth","canvasHeight","clientHeight","undefined","ZoomTransform","defPrefix","concat","uniqueId","markerPrefix","clipPathPrefix","activeLineMarkerPrefix","getRenderedLineLabels","clipPathList","setClipPathList","getClipPathList","className","classNames","ready","tabIndex","width","height","map","_ref2","index","strokeColor","MarkerComponent","key","clipPath","ClipPathComponent","viewBox","refX","refY","markerWidth","markerHeight","orient","d","stroke","strokeWidth","fill","LineComponent","$id","linePaths","activeEdge","style","left","top","LineLabelComponentGroup","labels","onRendered","NodeComponentGroup","ConnectLineComponent","_class","c","_initClass","_applyDecs","o","_","has","_checkInRHS","_EditableLabel","EditableLabelComponent","LegacyEditableLabelComponent","_labelEditingChange","_handleLabelEditingChange","_labelChange","_handleLabelChange","_editableLabelRef","EditableLabel","_get_labelChange2","_set_labelChange2","_get_labelEditingChange2","_set_labelEditingChange2","_init_label","_init_type","_init_labelEditingChange","_init_labelChange","label","enableEditing","onLabelEditingChange","onLabelChange","_set_labelEditingChange","_get_labelEditingChange","_set_labelChange","_get_labelChange","_label","currentLabel","setCurrentLabel","editingLabel","setEditingLabel","editingLabelInitialized","shouldEmitLabelChange","setShouldEmitLabelChange","labelInputRef","handleEditLabel","stopPropagation","_labelInputRef$curren","_labelInputRef$curren2","focus","preventScroll","handleInputChange","handleInputKeydown","_labelInputRef$curren3","keyCode","which","blur","handleInputBlur","editing","empty","onDoubleClick","onMouseDown","onChange","onKeyDown","onBlur","___CSS_LOADER_EXPORT___","push","module","toString"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_next_bricks_diagram=self.webpackChunk_next_bricks_diagram||[]).push([[9016],{2715:(e,t,a)=>{a.r(t),a.d(t,{EoDiagram:()=>ae,EoDiagramComponent:()=>Oe,LegacyEoDiagramComponent:()=>St});var n,i,s,l,r,o,c,u,d,h,v,g,p,k,Z,m,b,w,f,y,E,M,W,C,L,x,R,S,T,D,P,B,z,A,N,O,H,K,_,I,X,Y,V,q,$,j,F,G,J,Q,U,ee,te,ae,ne=a(3028),ie=a(3395),se=a(1815),le=a(381),re=a(687),oe=a(5066),ce=a(8657),ue=a.n(ce),de=a(5727),he=a(305),ve=(a(928),a(1105)),ge=a(7397),pe=a(2779),ke=a.n(pe),Ze=a(1211),me=a(2370),be=a(5702),we=a(7441),fe=a(5731),ye=a(7853),Ee=a(6462),Me=a(9575),We=a(2260),Ce=a(7587),Le=a(1251),xe=a(4126),Re=a(7201),Se=a(5173),Te=a(542),De=a(6436),Pe=a(5318),{defineElement:Be,property:ze,event:Ae,method:Ne}=(0,de.createDecorators)(),Oe=(0,ce.forwardRef)(St);i=Be("eo-diagram",{styleTexts:[De.Z]}),s=ze({type:String}),r=ze({attribute:!1}),c=ze({attribute:!1}),d=ze({attribute:!1}),v=ze({attribute:!1}),p=ze({attribute:!1}),Z=ze({attribute:!1}),b=ze({type:Boolean}),f=ze({attribute:!1}),E=ze({type:Boolean}),W=ze({type:Boolean}),L=ze({attribute:!1}),R=Ae({type:"activeTarget.change"}),P=Ae({type:"node.delete"}),N=Ae({type:"edge.delete"}),_=Ae({type:"line.click"}),V=Ae({type:"line.dblclick"}),F=Ae({type:"nodes.connect"}),U=Ne();var He=new WeakMap,Ke=new WeakMap,_e=new WeakMap,Ie=new WeakMap,Xe=new WeakMap,Ye=new WeakMap,Ve=new WeakMap,qe=new WeakMap,$e=new WeakMap,je=new WeakMap,Fe=new WeakMap,Ge=new WeakMap,Je=new WeakMap,Qe=new WeakMap,Ue=new WeakMap,et=new WeakMap,tt=new WeakMap,at=new WeakMap,nt=new WeakMap,it=new WeakMap,st=new WeakMap,lt=new WeakMap,rt=new WeakMap,ot=new WeakMap,ct=new WeakMap,ut=new WeakMap,dt=new WeakMap,ht=new WeakMap,vt=new WeakMap,gt=new WeakMap,pt=new WeakMap,kt=new WeakMap;class Zt extends he.ReactNextElement{constructor(){super(...arguments),(0,ie.Z)(this,vt,{get:Rt,set:xt}),(0,ie.Z)(this,ut,{get:Lt,set:Ct}),(0,ie.Z)(this,rt,{get:Wt,set:Mt}),(0,ie.Z)(this,it,{get:Et,set:yt}),(0,ie.Z)(this,tt,{get:ft,set:wt}),(0,ie.Z)(this,Qe,{get:bt,set:mt}),(0,ie.Z)(this,He,{writable:!0,value:(ee(this),l(this))}),(0,ie.Z)(this,Ke,{writable:!0,value:o(this)}),(0,ie.Z)(this,_e,{writable:!0,value:u(this)}),(0,ie.Z)(this,Ie,{writable:!0,value:h(this)}),(0,ie.Z)(this,Xe,{writable:!0,value:g(this)}),(0,ie.Z)(this,Ye,{writable:!0,value:k(this)}),(0,ie.Z)(this,Ve,{writable:!0,value:m(this)}),(0,ie.Z)(this,qe,{writable:!0,value:w(this)}),(0,ie.Z)(this,$e,{writable:!0,value:y(this)}),(0,ie.Z)(this,je,{writable:!0,value:M(this,!0)}),(0,ie.Z)(this,Fe,{writable:!0,value:C(this,!0)}),(0,ie.Z)(this,Ge,{writable:!0,value:x(this)}),(0,ie.Z)(this,Je,{writable:!0,value:S(this)}),(0,ie.Z)(this,Ue,{writable:!0,value:e=>{(0,re.Z)(this,Qe).emit(e)}}),(0,ie.Z)(this,et,{writable:!0,value:B(this)}),(0,ie.Z)(this,at,{writable:!0,value:e=>{(0,re.Z)(this,tt).emit(e)}}),(0,ie.Z)(this,nt,{writable:!0,value:O(this)}),(0,ie.Z)(this,st,{writable:!0,value:e=>{(0,re.Z)(this,it).emit(e)}}),(0,ie.Z)(this,lt,{writable:!0,value:I(this)}),(0,ie.Z)(this,ot,{writable:!0,value:e=>{(0,re.Z)(this,rt).emit(e)}}),(0,ie.Z)(this,ct,{writable:!0,value:q(this)}),(0,ie.Z)(this,dt,{writable:!0,value:e=>{(0,re.Z)(this,ut).emit(e)}}),(0,ie.Z)(this,ht,{writable:!0,value:G(this)}),(0,ie.Z)(this,gt,{writable:!0,value:e=>{(0,re.Z)(this,vt).emit(e)}}),(0,ie.Z)(this,pt,{writable:!0,value:e=>{this.activeTarget=e}}),(0,ie.Z)(this,kt,{writable:!0,value:(0,ce.createRef)()})}get layout(){return(0,re.Z)(this,He)}set layout(e){(0,le.Z)(this,He,e)}get nodes(){return(0,re.Z)(this,Ke)}set nodes(e){(0,le.Z)(this,Ke,e)}get edges(){return(0,re.Z)(this,_e)}set edges(e){(0,le.Z)(this,_e,e)}get nodeBricks(){return(0,re.Z)(this,Ie)}set nodeBricks(e){(0,le.Z)(this,Ie,e)}get lines(){return(0,re.Z)(this,Xe)}set lines(e){(0,le.Z)(this,Xe,e)}get layoutOptions(){return(0,re.Z)(this,Ye)}set layoutOptions(e){(0,le.Z)(this,Ye,e)}get activeTarget(){return(0,re.Z)(this,Ve)}set activeTarget(e){(0,le.Z)(this,Ve,e)}get disableKeyboardAction(){return(0,re.Z)(this,qe)}set disableKeyboardAction(e){(0,le.Z)(this,qe,e)}get nodesConnect(){return(0,re.Z)(this,$e)}set nodesConnect(e){(0,le.Z)(this,$e,e)}get zoomable(){return(0,re.Z)(this,je)}set zoomable(e){(0,le.Z)(this,je,e)}get scrollable(){return(0,re.Z)(this,Fe)}set scrollable(e){(0,le.Z)(this,Fe,e)}get scaleRange(){return(0,re.Z)(this,Ge)}set scaleRange(e){(0,le.Z)(this,Ge,e)}callOnLineLabel(e,t){for(var a,n=arguments.length,i=new Array(n>2?n-2:0),s=2;s<n;s++)i[s-2]=arguments[s];null===(a=(0,re.Z)(this,kt).current)||void 0===a||a.callOnLineLabel(e,t,...i)}render(){return ue().createElement(Oe,{ref:(0,re.Z)(this,kt),layout:this.layout,nodes:this.nodes,edges:this.edges,nodeBricks:this.nodeBricks,lines:this.lines,layoutOptions:this.layoutOptions,nodesConnect:this.nodesConnect,activeTarget:this.activeTarget,disableKeyboardAction:this.disableKeyboardAction,zoomable:this.zoomable,scrollable:this.scrollable,scaleRange:this.scaleRange,onActiveTargetChange:(0,re.Z)(this,Ue),onSwitchActiveTarget:(0,re.Z)(this,pt),onNodeDelete:(0,re.Z)(this,at),onEdgeDelete:(0,re.Z)(this,st),onLineClick:(0,re.Z)(this,ot),onLineDoubleClick:(0,re.Z)(this,dt),onNodesConnect:(0,re.Z)(this,gt)})}}function mt(e){D(this,e)}function bt(){return T(this)}function wt(e){A(this,e)}function ft(){return z(this)}function yt(e){K(this,e)}function Et(){return H(this)}function Mt(e){Y(this,e)}function Wt(){return X(this)}function Ct(e){j(this,e)}function Lt(){return $(this)}function xt(e){Q(this,e)}function Rt(){return J(this)}function St(e,t){var{layout:a,nodes:n,edges:i,nodeBricks:s,lines:l,layoutOptions:r,nodesConnect:o,activeTarget:c,disableKeyboardAction:u,zoomable:d,scrollable:h,scaleRange:v,onActiveTargetChange:g,onSwitchActiveTarget:p,onNodeDelete:k,onEdgeDelete:Z,onLineClick:m,onLineDoubleClick:b,onNodesConnect:w}=e,[f,y]=(0,ce.useState)(null),[E,M]=(0,ce.useState)(!1),[W,C]=(0,ce.useState)(0),[L,x]=(0,ce.useState)(null),[R,S]=(0,ce.useState)(0),[T,D]=(0,ce.useState)(null),[P,B]=(0,ce.useState)([]),[z,A]=(0,ce.useState)([]),[N,O]=(0,ce.useState)([]),[H,K]=(0,ce.useState)(!1),[_,I]=(0,ce.useState)({k:1,x:0,y:0}),X=(0,ce.useRef)(new Map),Y=(0,ce.useRef)(null),V=(0,ce.useRef)(null),[q,$]=(0,ce.useState)(!1),[j,F]=(0,ce.useState)([0,0]),[G,J]=(0,ce.useState)(null);(0,ce.useImperativeHandle)(t,(()=>({callOnLineLabel(e,t){for(var a,n=arguments.length,i=new Array(n>2?n-2:0),s=2;s<n;s++)i[s-2]=arguments[s];null==T||null===(a=T.get(e))||void 0===a||null===(a=a.firstElementChild)||void 0===a||a[t](...i)}}))),(0,ce.useEffect)((()=>{var e=e=>{(0,Te.w)(e,{nodes:n,nodesRefRepository:L,nodesConnect:o,setConnectLineState:J,setConnectLineTo:F,onSwitchActiveTarget:p,onNodesConnect:w})},t=V.current;return null==t||t.addEventListener("mousedown",e),()=>{null==t||t.removeEventListener("mousedown",e)}}),[n,o,L,w,p]);var Q=(0,ce.useMemo)((()=>(0,ne.Z)({rankdir:"TB",ranksep:50,edgesep:10,nodesep:50,nodePadding:0},r)),[r]),{nodePadding:U}=Q,ee=(0,ce.useMemo)((()=>(0,Ze.pick)(Q,["rankdir","ranksep","edgesep","nodesep","align"])),[Q]),te=(0,ce.useRef)(!1);(0,ce.useEffect)((()=>{te.current?null==g||g(null!=c?c:null):te.current=!0}),[n,c,g]),(0,ce.useEffect)((()=>{y((e=>(0,Se.T)(e,n,i,ee)))}),[i,n,ee]),(0,ce.useEffect)((()=>{var e=(0,Re.E)({graph:f,nodesRefRepository:L,nodePadding:U});e&&(B(e.nodes),A(e.edges))}),[f,L,W,U]);var{renderedLines:ae,markers:ie}=(0,ce.useMemo)((()=>(0,fe.b)(z,l)),[l,z]);(0,ce.useEffect)((()=>{var e=Y.current;if(e&&!u){var t=e=>{var t=(0,be.p)(e,{renderedNodes:P,renderedEdges:z,activeTarget:c});"delete-node"===(null==t?void 0:t.action)?null==k||k(t.node):"delete-edge"===(null==t?void 0:t.action)?null==Z||Z(t.edge):"switch-active-node"===(null==t?void 0:t.action)&&t.node&&(null==p||p({type:"node",nodeId:t.node.id}))};return e.addEventListener("keydown",t),()=>{e.removeEventListener("keydown",t)}}}),[c,P,z,u,p,k,Z]);var se=(0,ce.useCallback)((e=>{e&&(C((e=>e+1)),x(e)),M((t=>t||!!e))}),[]),le=(0,ce.useCallback)((e=>{e&&(S((e=>e+1)),D(e))}),[]),re=(0,ce.useMemo)((()=>null!=v?v:[Pe.oh,Pe.rN]),[v]),oe=(0,ce.useMemo)((()=>(0,ge.sP)()),[]);(0,ce.useEffect)((()=>{var e=!1;oe.scaleExtent(d?re:[1,1]).on("start",(()=>{e=!1,K(!0)})).on("zoom",(t=>{e=!0,I(t.transform)})).on("end",(()=>{K(!1),e||null==p||p(null)}))}),[p,re,d,oe]),(0,ce.useEffect)((()=>{var e=Y.current;if(e){var t=(0,ve.Z)(e);return d||h?t.on("wheel.zoom.custom",(e=>{e.ctrlKey||(e.stopImmediatePropagation(),h&&(e.preventDefault(),oe.translateBy(t,e.wheelDeltaX/5,e.wheelDeltaY/5)))})):t.on(".zoom",null),t.on("wheel",(e=>e.preventDefault())).call(oe).on("dblclick.zoom",null),()=>{t.on(".zoom",null),t.on(".zoom.custom",null)}}}),[h,d,oe]),(0,ce.useEffect)((()=>{var e=Y.current;if(0!==P.length&&e&&!q){var{k:t,x:a,y:n}=(0,we.i)(P,{canvasWidth:e.clientWidth,canvasHeight:e.clientHeight,scaleRange:d?re:void 0});oe.transform((0,ve.Z)(e),new ge.ax(t,a,n)),$(!0)}}),[q,P,re,d,oe]);var de=(0,ce.useMemo)((()=>"".concat((0,Ze.uniqueId)("diagram-"),"-")),[]),he="".concat(de,"line-arrow-"),pe="".concat(de,"clip-path-"),De="".concat(de,"active-line-");(0,ce.useEffect)((()=>{O((e=>(0,xe.K)(e,ae,X.current)))}),[ae]);var[Be,ze]=ue().useState([]);return(0,ce.useEffect)((()=>{T&&ze((0,Le.i)(N,T))}),[R,T,N]),"dagre"!==a?ue().createElement("div",null,'Diagram layout not supported: "'.concat(a,'"')):ue().createElement("div",{className:ke()("diagram",{ready:E&&q,grabbing:H}),tabIndex:-1,ref:Y},ue().createElement("svg",{width:"100%",height:"100%",className:"lines"},ue().createElement("defs",null,ie.map(((e,t)=>{var{strokeColor:a}=e;return ue().createElement(Me.C,{key:t,id:"".concat(he).concat(t),strokeColor:a})})),Be.map((e=>ue().createElement(We.K,{key:e.id,clipPath:e,clipPathPrefix:pe,renderedLineLabels:N}))),ue().createElement("marker",{id:"".concat(De,"start"),viewBox:"0 0 8 8",refX:4,refY:4,markerWidth:8,markerHeight:8,orient:"auto"},ue().createElement("path",{d:"M 0.5 0.5 H 7.5 V 7.5 H 0.5 Z",stroke:"var(--palette-gray-7)",strokeWidth:1,fill:"var(--palette-gray-1)"})),ue().createElement("marker",{id:"".concat(De,"end"),viewBox:"0 0 14 8",refX:3,refY:4,markerWidth:14,markerHeight:8,orient:"auto"},ue().createElement("path",{d:"M 0.5 1.5 L 5.5 4 L 0.5 6.5 z",stroke:"var(--palette-blue-3)",strokeWidth:1,fill:"var(--palette-blue-3)"}),ue().createElement("path",{d:"M 6.5 0.5 H 13.5 V 7.5 H 6.5 Z",stroke:"var(--palette-gray-7)",strokeWidth:1,fill:"var(--palette-gray-1)"}))),ue().createElement("g",{transform:"translate(".concat(_.x," ").concat(_.y,") scale(").concat(_.k,")")},ae.map((e=>ue().createElement(Ee.y,{key:e.line.$id,line:e,linePaths:X.current,clipPathList:Be,markerPrefix:he,clipPathPrefix:pe,activeLineMarkerPrefix:De,activeEdge:"edge"===(null==c?void 0:c.type)?c.edge:null,onLineClick:m,onLineDoubleClick:b}))))),ue().createElement("div",{className:"line-labels",style:{left:_.x,top:_.y,transform:"scale(".concat(_.k,")")}},ue().createElement(ye.L8,{labels:N,onRendered:le})),ue().createElement("div",{className:"nodes",ref:V,style:{left:_.x,top:_.y,transform:"scale(".concat(_.k,")")}},ue().createElement(me.n,{nodes:n,nodeBricks:s,onRendered:se})),ue().createElement(Ce.f,{connectLineState:G,connectLineTo:j,markerPrefix:he}))}te=Zt,({e:[l,o,u,h,g,k,m,w,y,M,C,x,S,T,D,B,z,A,O,H,K,I,X,Y,q,$,j,G,J,Q,ee],c:[ae,n]}=(0,oe.Z)(te,[[s,1,"layout"],[r,1,"nodes"],[c,1,"edges"],[d,1,"nodeBricks"],[v,1,"lines"],[p,1,"layoutOptions"],[Z,1,"activeTarget"],[b,1,"disableKeyboardAction"],[f,1,"nodesConnect"],[E,1,"zoomable"],[W,1,"scrollable"],[L,1,"scaleRange"],[R,1,"activeTargetChangeEvent",e=>(0,re.Z)(e,Je),(e,t)=>(0,le.Z)(e,Je,t)],[P,1,"nodeDelete",e=>(0,re.Z)(e,et),(e,t)=>(0,le.Z)(e,et,t)],[N,1,"edgeDelete",e=>(0,re.Z)(e,nt),(e,t)=>(0,le.Z)(e,nt,t)],[_,1,"lineClick",e=>(0,re.Z)(e,lt),(e,t)=>(0,le.Z)(e,lt,t)],[V,1,"lineDoubleClick",e=>(0,re.Z)(e,ct),(e,t)=>(0,le.Z)(e,ct,t)],[F,1,"nodesConnect",e=>(0,re.Z)(e,ht),(e,t)=>(0,le.Z)(e,ht,t)],[U,2,"callOnLineLabel"]],[i],0,(e=>kt.has((0,se.Z)(e))),he.ReactNextElement)),n()}}]);
2
- //# sourceMappingURL=eo-diagram.6168dc79.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/eo-diagram.6168dc79.js","mappings":"uUA6KWA,G,2VAtHL,cAAEC,GAAa,SAAEC,GAAQ,MAAEC,GAAK,OAAEC,KAAWC,EAAAA,GAAAA,oBAqBtCC,IAAqBC,EAAAA,GAAAA,YAAWC,IAE7CC,EAICR,GAAc,aAAc,CAC3BS,WAAY,CAACC,GAAAA,KACbC,EAKCV,GAAS,CAAEW,KAAMC,SAASC,EAG1Bb,GAAS,CAAEc,WAAW,IAAQC,EAG9Bf,GAAS,CAAEc,WAAW,IAAQE,EAG9BhB,GAAS,CAAEc,WAAW,IAAQG,EAG9BjB,GAAS,CAAEc,WAAW,IAAQI,EAG9BlB,GAAS,CAAEc,WAAW,IAAQK,EAG9BnB,GAAS,CAAEc,WAAW,IAAQM,EAG9BpB,GAAS,CAAEW,KAAMU,UAAUC,EAG3BtB,GAAS,CAAEc,WAAW,IAAQS,EAG9BvB,GAAS,CAAEW,KAAMU,UAAUG,EAG3BxB,GAAS,CAAEW,KAAMU,UAAUI,EAG3BzB,GAAS,CAAEc,WAAW,IAAQY,EAG9BzB,GAAM,CAAEU,KAAM,wBAAwBgB,EAOtC1B,GAAM,CAAEU,KAAM,gBAAgBiB,EAO9B3B,GAAM,CAAEU,KAAM,gBAAgBkB,EAO9B5B,GAAM,CAAEU,KAAM,eAAemB,EAO7B7B,GAAM,CAAEU,KAAM,kBAAkBoB,EAOhC9B,GAAM,CAAEU,KAAM,kBAAkBqB,EAahC9B,KAAQ,IAAA+B,GAAA,IAAAC,QAAAC,GAAA,IAAAD,QAAAE,GAAA,IAAAF,QAAAG,GAAA,IAAAH,QAAAI,GAAA,IAAAJ,QAAAK,GAAA,IAAAL,QAAAM,GAAA,IAAAN,QAAAO,GAAA,IAAAP,QAAAQ,GAAA,IAAAR,QAAAS,GAAA,IAAAT,QAAAU,GAAA,IAAAV,QAAAW,GAAA,IAAAX,QAAAY,GAAA,IAAAZ,QAAAa,GAAA,IAAAb,QAAAc,GAAA,IAAAd,QAAAe,GAAA,IAAAf,QAAAgB,GAAA,IAAAhB,QAAAiB,GAAA,IAAAjB,QAAAkB,GAAA,IAAAlB,QAAAmB,GAAA,IAAAnB,QAAAoB,GAAA,IAAApB,QAAAqB,GAAA,IAAArB,QAAAsB,GAAA,IAAAtB,QAAAuB,GAAA,IAAAvB,QAAAwB,GAAA,IAAAxB,QAAAyB,GAAA,IAAAzB,QAAA0B,GAAA,IAAA1B,QAAA2B,GAAA,IAAA3B,QAAA4B,GAAA,IAAA5B,QAAA6B,GAAA,IAAA7B,QAAA8B,GAAA,IAAA9B,QAAA+B,GAAA,IAAA/B,QA3FX,MAAAgC,WAGwBC,GAAAA,iBAA2CC,cAAA,SAAAC,YAAAC,EAAAA,GAAAA,GAAA,KAAAR,GAAA,CAAAS,IAAAC,GAAAC,IAAAC,MAAAJ,EAAAA,GAAAA,GAAA,KAAAX,GAAA,CAAAY,IAAAI,GAAAF,IAAAG,MAAAN,EAAAA,GAAAA,GAAA,KAAAd,GAAA,CAAAe,IAAAM,GAAAJ,IAAAK,MAAAR,EAAAA,GAAAA,GAAA,KAAAjB,GAAA,CAAAkB,IAAAQ,GAAAN,IAAAO,MAAAV,EAAAA,GAAAA,GAAA,KAAApB,GAAA,CAAAqB,IAAAU,GAAAR,IAAAS,MAAAZ,EAAAA,GAAAA,GAAA,KAAAvB,GAAA,CAAAwB,IAAAY,GAAAV,IAAAW,MACjEd,EAAAA,GAAAA,GAAA,KAAArC,GAAA,CAAAoD,UAAA,EAAAC,OAAAC,GAAA,MAAAC,EAAA,UAAAlB,EAAAA,GAAAA,GAAA,KAAAnC,GAAA,CAAAkD,UAAA,EAAAC,MAAAG,EAAA,SAAAnB,EAAAA,GAAAA,GAAA,KAAAlC,GAAA,CAAAiD,UAAA,EAAAC,MAAAI,EAAA,SAAApB,EAAAA,GAAAA,GAAA,KAAAjC,GAAA,CAAAgD,UAAA,EAAAC,MAAAK,EAAA,SAAArB,EAAAA,GAAAA,GAAA,KAAAhC,GAAA,CAAA+C,UAAA,EAAAC,MAAAM,EAAA,SAAAtB,EAAAA,GAAAA,GAAA,KAAA/B,GAAA,CAAA8C,UAAA,EAAAC,MAAAO,EAAA,SAAAvB,EAAAA,GAAAA,GAAA,KAAA9B,GAAA,CAAA6C,UAAA,EAAAC,MAAAQ,EAAA,SAAAxB,EAAAA,GAAAA,GAAA,KAAA7B,GAAA,CAAA4C,UAAA,EAAAC,MAAAS,EAAA,SAAAzB,EAAAA,GAAAA,GAAA,KAAA5B,GAAA,CAAA2C,UAAA,EAAAC,MAAAU,EAAA,SAAA1B,EAAAA,GAAAA,GAAA,KAAA3B,GAAA,CAAA0C,UAAA,EAAAC,MAAAW,EAAA,MA+ByC,MAAI3B,EAAAA,GAAAA,GAAA,KAAA1B,GAAA,CAAAyC,UAAA,EAAAC,MAAAY,EAAA,MAGF,MAAI5B,EAAAA,GAAAA,GAAA,KAAAzB,GAAA,CAAAwC,UAAA,EAAAC,MAAAa,EAAA,SAAA7B,EAAAA,GAAAA,GAAA,KAAAxB,GAAA,CAAAuC,UAAA,EAAAC,MAAAc,EAAA,SAAA9B,EAAAA,GAAAA,GAAA,KAAAtB,GAAA,CAAAqC,UAAA,EAAAC,MAQlBe,KAC3BC,EAAAA,GAAAA,GAAAC,KAAIxD,IAA0ByD,KAAKH,EAAO,KAC3C/B,EAAAA,GAAAA,GAAA,KAAArB,GAAA,CAAAoC,UAAA,EAAAC,MAAAmB,EAAA,SAAAnC,EAAAA,GAAAA,GAAA,KAAAnB,GAAA,CAAAkC,UAAA,EAAAC,MAKoBoB,KACnBJ,EAAAA,GAAAA,GAAAC,KAAIrD,IAAasD,KAAKE,EAAK,KAC5BpC,EAAAA,GAAAA,GAAA,KAAAlB,GAAA,CAAAiC,UAAA,EAAAC,MAAAqB,EAAA,SAAArC,EAAAA,GAAAA,GAAA,KAAAhB,GAAA,CAAA+B,UAAA,EAAAC,MAKoBsB,KACnBN,EAAAA,GAAAA,GAAAC,KAAIlD,IAAamD,KAAKI,EAAK,KAC5BtC,EAAAA,GAAAA,GAAA,KAAAf,GAAA,CAAA8B,UAAA,EAAAC,MAAAuB,EAAA,SAAAvC,EAAAA,GAAAA,GAAA,KAAAb,GAAA,CAAA4B,UAAA,EAAAC,MAKmBwB,KAClBR,EAAAA,GAAAA,GAAAC,KAAI/C,IAAYgD,KAAKM,EAAK,KAC3BxC,EAAAA,GAAAA,GAAA,KAAAZ,GAAA,CAAA2B,UAAA,EAAAC,MAAAyB,EAAA,SAAAzC,EAAAA,GAAAA,GAAA,KAAAV,GAAA,CAAAyB,UAAA,EAAAC,MAKyBwB,KACxBR,EAAAA,GAAAA,GAAAC,KAAI5C,IAAkB6C,KAAKM,EAAK,KACjCxC,EAAAA,GAAAA,GAAA,KAAAT,GAAA,CAAAwB,UAAA,EAAAC,MAAA0B,EAAA,SAAA1C,EAAAA,GAAAA,GAAA,KAAAP,GAAA,CAAAsB,UAAA,EAAAC,MAKsB2B,KACrBX,EAAAA,GAAAA,GAAAC,KAAIzC,IAAe0C,KAAKS,EAAO,KAChC3C,EAAAA,GAAAA,GAAA,KAAAN,GAAA,CAAAqB,UAAA,EAAAC,MAE4Be,IAC3BE,KAAKW,aAAeb,CAAM,KAC3B/B,EAAAA,GAAAA,GAAA,KAAAL,GAAA,CAAAoB,UAAA,EAAAC,OAEa6B,EAAAA,GAAAA,cAAuB,CAjF5BC,aAAM,OAAAd,EAAAA,GAAAA,GAAA,KAAArE,GAAA,CAANmF,WAAMC,IAAAC,EAAAA,GAAAA,GAAA,KAAArF,GAAAoF,EAAA,CAGNE,YAAK,OAAAjB,EAAAA,GAAAA,GAAA,KAAAnE,GAAA,CAALoF,UAAKF,IAAAC,EAAAA,GAAAA,GAAA,KAAAnF,GAAAkF,EAAA,CAGLG,YAAK,OAAAlB,EAAAA,GAAAA,GAAA,KAAAlE,GAAA,CAALoF,UAAKH,IAAAC,EAAAA,GAAAA,GAAA,KAAAlF,GAAAiF,EAAA,CAGLI,iBAAU,OAAAnB,EAAAA,GAAAA,GAAA,KAAAjE,GAAA,CAAVoF,eAAUJ,IAAAC,EAAAA,GAAAA,GAAA,KAAAjF,GAAAgF,EAAA,CAGVK,YAAK,OAAApB,EAAAA,GAAAA,GAAA,KAAAhE,GAAA,CAALoF,UAAKL,IAAAC,EAAAA,GAAAA,GAAA,KAAAhF,GAAA+E,EAAA,CAGLM,oBAAa,OAAArB,EAAAA,GAAAA,GAAA,KAAA/D,GAAA,CAAboF,kBAAaN,IAAAC,EAAAA,GAAAA,GAAA,KAAA/E,GAAA8E,EAAA,CAGbH,mBAAY,OAAAZ,EAAAA,GAAAA,GAAA,KAAA9D,GAAA,CAAZ0E,iBAAYG,IAAAC,EAAAA,GAAAA,GAAA,KAAA9E,GAAA6E,EAAA,CAGZO,4BAAqB,OAAAtB,EAAAA,GAAAA,GAAA,KAAA7D,GAAA,CAArBmF,0BAAqBP,IAAAC,EAAAA,GAAAA,GAAA,KAAA7E,GAAA4E,EAAA,CAGrBQ,mBAAY,OAAAvB,EAAAA,GAAAA,GAAA,KAAA5D,GAAA,CAAZmF,iBAAYR,IAAAC,EAAAA,GAAAA,GAAA,KAAA5E,GAAA2E,EAAA,CAGZS,eAAQ,OAAAxB,EAAAA,GAAAA,GAAA,KAAA3D,GAAA,CAARmF,aAAQT,IAAAC,EAAAA,GAAAA,GAAA,KAAA3E,GAAA0E,EAAA,CAGRU,iBAAU,OAAAzB,EAAAA,GAAAA,GAAA,KAAA1D,GAAA,CAAVmF,eAAUV,IAAAC,EAAAA,GAAAA,GAAA,KAAA1E,GAAAyE,EAAA,CAGVW,iBAAU,OAAA1B,EAAAA,GAAAA,GAAA,KAAAzD,GAAA,CAAVmF,eAAUX,IAAAC,EAAAA,GAAAA,GAAA,KAAAzE,GAAAwE,EAAA,CAmDnBY,gBAAgBC,EAAYhI,GAAoC,QAAAiI,EAAAC,EAAA/D,UAAAgE,OAAjBC,EAAI,IAAAC,MAAAH,EAAA,EAAAA,EAAA,KAAAI,EAAA,EAAAA,EAAAJ,EAAAI,IAAJF,EAAIE,EAAA,GAAAnE,UAAAmE,GACzB,QAAxBL,GAAA7B,EAAAA,GAAAA,GAAAC,KAAItC,IAAawE,eAAO,IAAAN,GAAxBA,EAA0BF,gBAAgBC,EAAIhI,KAAWoI,EAC3D,CAEAI,SACE,OACEC,KAAAA,cAACvI,GAAkB,CACjBwI,KAAGtC,EAAAA,GAAAA,GAAEC,KAAItC,IACTmD,OAAQb,KAAKa,OACbG,MAAOhB,KAAKgB,MACZC,MAAOjB,KAAKiB,MACZC,WAAYlB,KAAKkB,WACjBC,MAAOnB,KAAKmB,MACZC,cAAepB,KAAKoB,cACpBE,aAActB,KAAKsB,aACnBX,aAAcX,KAAKW,aACnBU,sBAAuBrB,KAAKqB,sBAC5BE,SAAUvB,KAAKuB,SACfC,WAAYxB,KAAKwB,WACjBC,WAAYzB,KAAKyB,WACjBa,sBAAoBvC,EAAAA,GAAAA,GAAEC,KAAIvD,IAC1B8F,sBAAoBxC,EAAAA,GAAAA,GAAEC,KAAIvC,IAC1B+E,cAAYzC,EAAAA,GAAAA,GAAEC,KAAIpD,IAClB6F,cAAY1C,EAAAA,GAAAA,GAAEC,KAAIjD,IAClB2F,aAAW3C,EAAAA,GAAAA,GAAEC,KAAI9C,IACjByF,mBAAiB5C,EAAAA,GAAAA,GAAEC,KAAI3C,IACvBuF,gBAAc7C,EAAAA,GAAAA,GAAEC,KAAIxC,KAG1B,EACD,SAAAqB,GAAAiC,GAAA+B,EAAA,KAAA/B,EAAA,UAAAlC,KAAA,OAAAkE,EAAA,eAAAnE,GAAAmC,GAAAiC,EAAA,KAAAjC,EAAA,UAAApC,KAAA,OAAAsE,EAAA,eAAAvE,GAAAqC,GAAAmC,EAAA,KAAAnC,EAAA,UAAAtC,KAAA,OAAA0E,EAAA,eAAA3E,GAAAuC,GAAAqC,EAAA,KAAArC,EAAA,UAAAxC,KAAA,OAAA8E,EAAA,eAAA/E,GAAAyC,GAAAuC,EAAA,KAAAvC,EAAA,UAAA1C,KAAA,OAAAkF,EAAA,eAAAnF,GAAA2C,GAAAyC,EAAA,KAAAzC,EAAA,UAAA7C,KAAA,OAAAuF,EAAA,MAYM,SAASzJ,GAAwB0J,EAsBtCpB,GACA,IAtBA,OACExB,EAAM,MACNG,EAAK,MACLC,EAAK,WACLC,EAAU,MACVC,EAAK,cACLC,EAAa,aACbE,EAAY,aACZX,EAAY,sBACZU,EAAqB,SACrBE,EAAQ,WACRC,EACAC,WAAYiC,EAAW,qBACvBpB,EAAoB,qBACpBC,EAAoB,aACpBC,EAAY,aACZC,EAAY,YACZC,EAAW,kBACXC,EAAiB,eACjBC,GACwBa,GAGnBE,EAAOC,IAAYC,EAAAA,GAAAA,UACxB,OAEKC,EAAYC,IAAiBF,EAAAA,GAAAA,WAAS,IACtCG,EAAeC,IAAoBJ,EAAAA,GAAAA,UAAS,IAC5CK,EAAoBC,IACzBN,EAAAA,GAAAA,UAA+B,OAE1BO,EAAoBC,IAAyBR,EAAAA,GAAAA,UAAS,IACtDS,EAAyBC,IAC9BV,EAAAA,GAAAA,UAA+B,OAC1BW,EAAeC,IAAoBZ,EAAAA,GAAAA,UAAyB,KAC5Da,EAAeC,IAAoBd,EAAAA,GAAAA,UAAyB,KAC5De,EAAoBC,IAAyBhB,EAAAA,GAAAA,UAElD,KAEKiB,EAAUC,IAAelB,EAAAA,GAAAA,WAAS,IAClCmB,EAAWC,IAAgBpB,EAAAA,GAAAA,UAA2B,CAC3DqB,EAAG,EACHC,EAAG,EACHC,EAAG,IAGCC,GAAeC,EAAAA,GAAAA,QAAO,IAAIC,KAE1BC,GAAUF,EAAAA,GAAAA,QAAuB,MACjCG,GAAWH,EAAAA,GAAAA,QAAuB,OACjCI,EAAUC,IAAe9B,EAAAA,GAAAA,WAAS,IAElC+B,EAAeC,IAAoBhC,EAAAA,GAAAA,UAAwB,CAAC,EAAG,KAC/DiC,EAAkBC,IACvBlC,EAAAA,GAAAA,UAAkC,OAEpCmC,EAAAA,GAAAA,qBAAoB3D,GAAK,KAAM,CAC7BX,gBAAgBC,EAAIhI,GAAiB,QAAAsM,EAAAC,EAAApI,UAAAgE,OAANC,EAAI,IAAAC,MAAAkE,EAAA,EAAAA,EAAA,KAAAC,EAAA,EAAAA,EAAAD,EAAAC,IAAJpE,EAAIoE,EAAA,GAAArI,UAAAqI,GAE/B7B,SAAgC,QAAT2B,EAAvB3B,EAAyBtG,IAAI2D,UAAG,IAAAsE,GACX,QADWA,EAAhCA,EACIG,yBAAiB,IAAAH,GAFvBA,EAGItM,MAAWoI,EACjB,OAGFsE,EAAAA,GAAAA,YAAU,KACR,IAAMC,EAAoB5M,KACxB6M,EAAAA,GAAAA,GAAqB7M,EAAO,CAC1BsH,QACAkD,qBACA5C,eACAyE,sBACAF,mBACAtD,uBACAK,kBACA,EAIE4D,EAAiBf,EAASvD,QAEhC,OADAsE,SAAAA,EAAgBC,iBAAiB,YAAaH,GACvC,KACLE,SAAAA,EAAgBE,oBAAoB,YAAaJ,EAAiB,CACnE,GACA,CACDtF,EACAM,EACA4C,EACAtB,EACAL,IAGF,IAAMoE,GAAeC,EAAAA,GAAAA,UACnB,KAAAC,EAAAA,GAAAA,GAAC,CACCC,QAAS,KACTC,QAAS,GACTC,QAAS,GACTC,QAAS,GAETC,YAAa,GACV9F,IAEL,CAACA,KAGG,YAAE8F,GAAgBP,EAClBQ,IAAoBP,EAAAA,GAAAA,UACxB,KACEQ,EAAAA,GAAAA,MAAKT,EAAc,CAAC,UAAW,UAAW,UAAW,UAAW,WAClE,CAACA,IAGGU,IAAgC/B,EAAAA,GAAAA,SAAO,IAC7Ce,EAAAA,GAAAA,YAAU,KACHgB,GAA8BnF,QAInCI,SAAAA,EAAuB3B,QAAAA,EAAgB,MAHrC0G,GAA8BnF,SAAU,CAGE,GAC3C,CAAClB,EAAOL,EAAc2B,KAEzB+D,EAAAA,GAAAA,YAAU,KACRzC,GAAU0D,IACRC,EAAAA,GAAAA,GAAcD,EAAetG,EAAOC,EAAOkG,KAC5C,GACA,CAAClG,EAAOD,EAAOmG,MAElBd,EAAAA,GAAAA,YAAU,KACR,IAAMmB,GAAkBC,EAAAA,GAAAA,GAAmB,CACzC9D,QACAO,qBACAgD,gBAEEM,IACF/C,EAAiB+C,EAAgBxG,OACjC2D,EAAiB6C,EAAgBvG,OACnC,GACC,CAAC0C,EAAOO,EAAoBF,EAAekD,IAE9C,IAAM,cAAEQ,GAAa,QAAEC,KAAYf,EAAAA,GAAAA,UACjC,KAAMgB,EAAAA,GAAAA,GAA2BlD,EAAevD,IAChD,CAACA,EAAOuD,KAGV2B,EAAAA,GAAAA,YAAU,KACR,IAAMwB,EAAOrC,EAAQtD,QACrB,GAAK2F,IAAQxG,EAAb,CAGA,IAAMyG,EAAapO,IACjB,IAAMqO,GAASC,EAAAA,GAAAA,GAAetO,EAAO,CACnC8K,gBACAE,gBACA/D,iBAGqB,iBAAnBoH,aAAM,EAANA,EAAQA,QACVvF,SAAAA,EAAeuF,EAAO5H,MACM,iBAAnB4H,aAAM,EAANA,EAAQA,QACjBtF,SAAAA,EAAesF,EAAO1H,MACM,wBAAnB0H,aAAM,EAANA,EAAQA,SAAmCA,EAAO5H,OAC3DoC,SAAAA,EAAuB,CAAEnI,KAAM,OAAQ6N,OAAQF,EAAO5H,KAAKwB,KAC7D,EAGF,OADAkG,EAAKpB,iBAAiB,UAAWqB,GAC1B,KACLD,EAAKnB,oBAAoB,UAAWoB,EAAU,CAlBhD,CAmBC,GACA,CACDnH,EACA6D,EACAE,EACArD,EACAkB,EACAC,EACAC,IAGF,IAAMyF,IAAsBC,EAAAA,GAAAA,cACzBC,IACKA,IACFnE,GAAkBoE,GAAaA,EAAW,IAC1ClE,EAAsBiE,IAExBrE,GAAesE,GAAaA,KAAcD,GAAc,GAE1D,IAGIE,IAA2BH,EAAAA,GAAAA,cAC9BC,IACKA,IACF/D,GAAuBgE,GAAaA,EAAW,IAC/C9D,EAA2B6D,GAC7B,GAGF,IAGI3G,IAAamF,EAAAA,GAAAA,UACjB,IACElD,QAAAA,EACC,CAAC6E,GAAAA,GAAyBC,GAAAA,KAC7B,CAAC9E,IAGG+E,IAAS7B,EAAAA,GAAAA,UAAQ,KAAM8B,EAAAA,GAAAA,OAAiC,KAE9DrC,EAAAA,GAAAA,YAAU,KACR,IAAIsC,GAAQ,EACZF,GACGG,YAAYrH,EAAWE,GAAa,CAAC,EAAG,IACxCoH,GAAG,SAAS,KACXF,GAAQ,EACR5D,GAAY,EAAK,IAElB8D,GAAG,QAASC,IACXH,GAAQ,EACR1D,EAAa6D,EAAE9D,UAAU,IAE1B6D,GAAG,OAAO,KACT9D,GAAY,GACP4D,GACHpG,SAAAA,EAAuB,KACzB,GACA,GACH,CAACA,EAAsBd,GAAYF,EAAUkH,MAEhDpC,EAAAA,GAAAA,YAAU,KACR,IAAMwB,EAAOrC,EAAQtD,QACrB,GAAK2F,EAAL,CAIA,IAAMkB,GAAgBC,EAAAA,GAAAA,GAAOnB,GAiC7B,OA/BItG,GAAYC,EAGduH,EAAcF,GACZ,qBACCC,IAEMA,EAAEG,UAELH,EAAEI,2BACE1H,IACFsH,EAAEK,iBACFV,GAAOW,YACLL,EACAD,EAAEO,YAAc,EAChBP,EAAEQ,YAAc,IAGtB,IAKJP,EAAcF,GAAG,QAAS,MAG5BE,EACGF,GAAG,SAAUC,GAAkBA,EAAEK,mBACjCI,KAAKd,IACLI,GAAG,gBAAiB,MAEhB,KACLE,EAAcF,GAAG,QAAS,MAC1BE,EAAcF,GAAG,eAAgB,KAAK,CArCxC,CAsCC,GACA,CAACrH,EAAYD,EAAUkH,MAE1BpC,EAAAA,GAAAA,YAAU,KACR,IAAMwB,EAAOrC,EAAQtD,QACrB,GAA6B,IAAzBsC,EAAc1C,QAAiB+F,IAAQnC,EAA3C,CAGA,IAAM,EAAER,EAAC,EAAEC,EAAC,EAAEC,IAAMoE,EAAAA,GAAAA,GAAkBhF,EAAe,CACnDiF,YAAa5B,EAAK6B,YAClBC,aAAc9B,EAAK+B,aACnBnI,WAAYF,EAAWE,QAAaoI,IAEtCpB,GAAOzD,WAAUgE,EAAAA,GAAAA,GAAOnB,GAAO,IAAIiC,GAAAA,GAAc5E,EAAGC,EAAGC,IACvDO,GAAY,EAPZ,CAOiB,GAChB,CAACD,EAAUlB,EAAe/C,GAAYF,EAAUkH,KAEnD,IAAMsB,IAAYnD,EAAAA,GAAAA,UAAQ,IAAM,GAANoD,QAASC,EAAAA,GAAAA,UAAS,YAAW,MAAK,IACtDC,GAAe,GAAHF,OAAMD,GAAS,eAC3BI,GAAiB,GAAHH,OAAMD,GAAS,cAC7BK,GAAyB,GAAHJ,OAAMD,GAAS,iBAE3C1D,EAAAA,GAAAA,YAAU,KACRxB,GAAuBwD,IACrBgC,EAAAA,GAAAA,GAAsBhC,EAAUX,GAAerC,EAAanD,UAC7D,GACA,CAACwF,KAEJ,IAAO4C,GAAcC,IAAmBnI,KAAAA,SACtC,IAYF,OATAiE,EAAAA,GAAAA,YAAU,KACH/B,GAGLiG,IACEC,EAAAA,GAAAA,GAAgB5F,EAAoBN,GACrC,GACA,CAACF,EAAoBE,EAAyBM,IAElC,UAAX/D,EACKuB,KAAAA,cAAA,6CAAA4H,OAAwCnJ,EAAM,MAIrDuB,KAAAA,cAAA,OACEqI,UAAWC,KAAW,UAAW,CAC/BC,MAAO7G,GAAc4B,EACrBZ,aAEF8F,UAAW,EACXvI,IAAKmD,GAELpD,KAAAA,cAAA,OAAKyI,MAAM,OAAOC,OAAO,OAAOL,UAAU,SACxCrI,KAAAA,cAAA,YACGuF,GAAQoD,KAAI,CAAAC,EAAkBC,KAAK,IAAtB,YAAEC,GAAaF,EAAA,OAC3B5I,KAAAA,cAAC+I,GAAAA,EAAe,CACdC,IAAKH,EACLtJ,GAAE,GAAAqI,OAAKE,IAAYF,OAAGiB,GACtBC,YAAaA,GACb,IAEHZ,GAAaS,KAAKM,GACjBjJ,KAAAA,cAACkJ,GAAAA,EAAiB,CAChBF,IAAKC,EAAS1J,GACd0J,SAAUA,EACVlB,eAAgBA,GAChBvF,mBAAoBA,MAGxBxC,KAAAA,cAAA,UACET,GAAE,GAAAqI,OAAKI,GAAsB,SAC7BmB,QAAQ,UACRC,KAAM,EACNC,KAAM,EACNC,YAAa,EACbC,aAAc,EACdC,OAAO,QAEPxJ,KAAAA,cAAA,QACEyJ,EAAE,gCACFC,OAAO,wBACPC,YAAa,EACbC,KAAK,2BAGT5J,KAAAA,cAAA,UACET,GAAE,GAAAqI,OAAKI,GAAsB,OAC7BmB,QAAQ,WACRC,KAAM,EACNC,KAAM,EACNC,YAAa,GACbC,aAAc,EACdC,OAAO,QAEPxJ,KAAAA,cAAA,QACEyJ,EAAE,gCACFC,OAAO,wBACPC,YAAa,EACbC,KAAK,0BAEP5J,KAAAA,cAAA,QACEyJ,EAAE,iCACFC,OAAO,wBACPC,YAAa,EACbC,KAAK,4BAIX5J,KAAAA,cAAA,KACE4C,UAAS,aAAAgF,OAAehF,EAAUG,EAAC,KAAA6E,OAAIhF,EAAUI,EAAC,YAAA4E,OAAWhF,EAAUE,EAAC,MAEvEwC,GAAcqD,KAAKxK,GAClB6B,KAAAA,cAAC6J,GAAAA,EAAa,CACZb,IAAK7K,EAAKA,KAAK2L,IACf3L,KAAMA,EACN4L,UAAW9G,EAAanD,QACxBoI,aAAcA,GACdJ,aAAcA,GACdC,eAAgBA,GAChBC,uBAAwBA,GACxBgC,WACyB,UAAvBzL,aAAY,EAAZA,EAAcvG,MAAkBuG,EAAaN,KAAO,KAEtDqC,YAAaA,EACbC,kBAAmBA,QAK3BP,KAAAA,cAAA,OACEqI,UAAU,cACV4B,MAAO,CACLC,KAAMtH,EAAUG,EAChBoH,IAAKvH,EAAUI,EACfJ,UAAW,SAAFgF,OAAWhF,EAAUE,EAAC,OAGjC9C,KAAAA,cAACoK,GAAAA,GAAuB,CACtBC,OAAQ7H,EACR8H,WAAYpE,MAGhBlG,KAAAA,cAAA,OACEqI,UAAU,QACVpI,IAAKoD,EACL4G,MAAO,CACLC,KAAMtH,EAAUG,EAChBoH,IAAKvH,EAAUI,EACfJ,UAAW,SAAFgF,OAAWhF,EAAUE,EAAC,OAGjC9C,KAAAA,cAACuK,GAAAA,EAAkB,CACjB3L,MAAOA,EACPE,WAAYA,EAEZwL,WAAYxE,MAGhB9F,KAAAA,cAACwK,GAAAA,EAAoB,CACnB9G,iBAAkBA,EAClBF,cAAeA,EACfsE,aAAcA,KAItB,CApcC2C,GAAAlP,KAAAmL,GAAA7J,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAiD,EAAAD,EAAA3C,EAAA8C,EAAAD,EAAA3C,EAAA8C,EAAAD,EAAA3C,EAAA8C,EAAAD,EAAA3C,EAAA8C,EAAAD,EAAA5C,EAAA+C,EAAAD,EAAAvE,IAAA8N,GAAAvT,GAAAwT,KAAAC,EAAAA,GAAAA,GAAAH,GAAA,EAAA1S,EAAA,aAAAG,EAAA,YAAAE,EAAA,YAAAC,EAAA,iBAAAC,EAAA,YAAAC,EAAA,oBAAAC,EAAA,mBAAAC,EAAA,4BAAAE,EAAA,mBAAAC,EAAA,eAAAC,EAAA,iBAAAC,EAAA,iBAAAC,EAAA,4BAAA8R,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAA1Q,IAAA,CAAA0Q,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAA1Q,GAAAuE,IAAA,CAAA1F,EAAA,eAAA6R,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAAvQ,IAAA,CAAAuQ,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAAvQ,GAAAoE,IAAA,CAAAzF,EAAA,eAAA4R,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAApQ,IAAA,CAAAoQ,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAApQ,GAAAiE,IAAA,CAAAxF,EAAA,cAAA2R,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAAjQ,IAAA,CAAAiQ,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAAjQ,GAAA8D,IAAA,CAAAvF,EAAA,oBAAA0R,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAA9P,IAAA,CAAA8P,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAA9P,GAAA2D,IAAA,CAAAtF,EAAA,iBAAAyR,IAAAlN,EAAAA,GAAAA,GAAAkN,EAAA3P,IAAA,CAAA2P,EAAAnM,KAAAC,EAAAA,GAAAA,GAAAkM,EAAA3P,GAAAwD,IAAA,CAAArF,EAAA,uBAAAzB,GAAA,GAAAkT,GAAAxP,GAAAyP,KAAAC,EAAAA,GAAAA,GAAAF,KAvHuBtP,GAAAA,mBAAgBmP,G","sources":["webpack:///./src/diagram/index.tsx"],"sourcesContent":["import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport \"@next-core/theme\";\nimport dagre from \"@dagrejs/dagre\";\nimport { select } from \"d3-selection\";\nimport { ZoomTransform, zoom } from \"d3-zoom\";\nimport classNames from \"classnames\";\nimport { pick, uniqueId } from \"lodash\";\nimport type {\n DiagramEdge,\n DiagramNode,\n LayoutOptionsDagre,\n LineConf,\n NodeBrickConf,\n PositionTuple,\n RefRepository,\n RenderedEdge,\n RenderedLineLabel,\n RenderedNode,\n LineTextClipPath,\n TransformLiteral,\n LineTarget,\n ConnectLineDetail,\n NodesConnectOptions,\n ConnectLineState,\n ActiveTarget,\n RangeTuple,\n} from \"./interfaces\";\nimport { NodeComponentGroup } from \"./NodeComponent\";\nimport { handleKeyboard } from \"./processors/handleKeyboard\";\nimport { transformToCenter } from \"./processors/transformToCenter\";\nimport { getRenderedLinesAndMarkers } from \"./processors/getRenderedLinesAndMarkers\";\nimport { LineLabelComponentGroup } from \"./LineLabelComponent\";\nimport { LineComponent } from \"./LineComponent\";\nimport { MarkerComponent } from \"./MarkerComponent\";\nimport { ClipPathComponent } from \"./ClipPathComponent\";\nimport { ConnectLineComponent } from \"./ConnectLineComponent\";\nimport { getClipPathList } from \"./processors/getClipPathList\";\nimport { getRenderedLineLabels } from \"./processors/getRenderedLineLabels\";\nimport { getRenderedDiagram } from \"./processors/getRenderedDiagram\";\nimport { getDagreGraph } from \"./processors/getDagreGraph\";\nimport { handleNodesMouseDown } from \"./processors/handleNodesMouseDown\";\nimport styleText from \"./styles.shadow.css\";\nimport { DEFAULT_SCALE_RANGE_MAX, DEFAULT_SCALE_RANGE_MIN } from \"./constants\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface EoDiagramProps {\n layout?: \"dagre\";\n nodes?: DiagramNode[];\n edges?: DiagramEdge[];\n nodeBricks?: NodeBrickConf[];\n lines?: LineConf[];\n layoutOptions?: LayoutOptionsDagre;\n nodesConnect?: NodesConnectOptions;\n activeTarget?: ActiveTarget | null;\n disableKeyboardAction?: boolean;\n zoomable?: boolean;\n scrollable?: boolean;\n scaleRange?: RangeTuple;\n}\n\nexport interface DiagramRef {\n callOnLineLabel(id: string, method: string, ...args: unknown[]): void;\n}\n\nexport const EoDiagramComponent = forwardRef(LegacyEoDiagramComponent);\n\n/**\n * 构件 `eo-diagram`\n */\nexport\n@defineElement(\"eo-diagram\", {\n styleTexts: [styleText],\n})\nclass EoDiagram extends ReactNextElement implements EoDiagramProps {\n /**\n * @required\n */\n @property({ type: String })\n accessor layout: \"dagre\" | undefined;\n\n @property({ attribute: false })\n accessor nodes: DiagramNode[] | undefined;\n\n @property({ attribute: false })\n accessor edges: DiagramEdge[] | undefined;\n\n @property({ attribute: false })\n accessor nodeBricks: NodeBrickConf[] | undefined;\n\n @property({ attribute: false })\n accessor lines: LineConf[] | undefined;\n\n @property({ attribute: false })\n accessor layoutOptions: LayoutOptionsDagre | undefined;\n\n @property({ attribute: false })\n accessor activeTarget: ActiveTarget | null | undefined;\n\n @property({ type: Boolean })\n accessor disableKeyboardAction: boolean | undefined;\n\n @property({ attribute: false })\n accessor nodesConnect: NodesConnectOptions | undefined;\n\n @property({ type: Boolean })\n accessor zoomable: boolean | undefined = true;\n\n @property({ type: Boolean })\n accessor scrollable: boolean | undefined = true;\n\n @property({ attribute: false })\n accessor scaleRange: RangeTuple | undefined;\n\n @event({ type: \"activeTarget.change\" })\n accessor #activeTargetChangeEvent!: EventEmitter<ActiveTarget | null>;\n\n #handleActiveTargetChange = (target: ActiveTarget | null) => {\n this.#activeTargetChangeEvent.emit(target);\n };\n\n @event({ type: \"node.delete\" })\n accessor #nodeDelete!: EventEmitter<DiagramNode>;\n\n #handleNodeDelete = (node: DiagramNode) => {\n this.#nodeDelete.emit(node);\n };\n\n @event({ type: \"edge.delete\" })\n accessor #edgeDelete!: EventEmitter<DiagramEdge>;\n\n #handleEdgeDelete = (edge: DiagramEdge) => {\n this.#edgeDelete.emit(edge);\n };\n\n @event({ type: \"line.click\" })\n accessor #lineClick!: EventEmitter<LineTarget>;\n\n #handleLineClick = (line: LineTarget) => {\n this.#lineClick.emit(line);\n };\n\n @event({ type: \"line.dblclick\" })\n accessor #lineDoubleClick!: EventEmitter<LineTarget>;\n\n #handleLineDoubleClick = (line: LineTarget) => {\n this.#lineDoubleClick.emit(line);\n };\n\n @event({ type: \"nodes.connect\" })\n accessor #nodesConnect!: EventEmitter<ConnectLineDetail>;\n\n #handleNodesConnect = (detail: ConnectLineDetail) => {\n this.#nodesConnect.emit(detail);\n };\n\n #handleSwitchActiveTarget = (target: ActiveTarget | null) => {\n this.activeTarget = target;\n };\n\n #diagramRef = createRef<DiagramRef>();\n\n @method()\n callOnLineLabel(id: string, method: string, ...args: unknown[]) {\n this.#diagramRef.current?.callOnLineLabel(id, method, ...args);\n }\n\n render() {\n return (\n <EoDiagramComponent\n ref={this.#diagramRef}\n layout={this.layout}\n nodes={this.nodes}\n edges={this.edges}\n nodeBricks={this.nodeBricks}\n lines={this.lines}\n layoutOptions={this.layoutOptions}\n nodesConnect={this.nodesConnect}\n activeTarget={this.activeTarget}\n disableKeyboardAction={this.disableKeyboardAction}\n zoomable={this.zoomable}\n scrollable={this.scrollable}\n scaleRange={this.scaleRange}\n onActiveTargetChange={this.#handleActiveTargetChange}\n onSwitchActiveTarget={this.#handleSwitchActiveTarget}\n onNodeDelete={this.#handleNodeDelete}\n onEdgeDelete={this.#handleEdgeDelete}\n onLineClick={this.#handleLineClick}\n onLineDoubleClick={this.#handleLineDoubleClick}\n onNodesConnect={this.#handleNodesConnect}\n />\n );\n }\n}\n\nexport interface EoDiagramComponentProps extends EoDiagramProps {\n onActiveTargetChange?(target: ActiveTarget | null): void;\n onSwitchActiveTarget?(target: ActiveTarget | null): void;\n onNodeDelete?(node: DiagramNode): void;\n onEdgeDelete?(edge: DiagramEdge): void;\n onLineClick?(line: LineTarget): void;\n onLineDoubleClick?(line: LineTarget): void;\n onNodesConnect?(detail: ConnectLineDetail): void;\n}\n\nexport function LegacyEoDiagramComponent(\n {\n layout,\n nodes,\n edges,\n nodeBricks,\n lines,\n layoutOptions,\n nodesConnect,\n activeTarget,\n disableKeyboardAction,\n zoomable,\n scrollable,\n scaleRange: _scaleRange,\n onActiveTargetChange,\n onSwitchActiveTarget,\n onNodeDelete,\n onEdgeDelete,\n onLineClick,\n onLineDoubleClick,\n onNodesConnect,\n }: EoDiagramComponentProps,\n ref: React.Ref<DiagramRef>\n) {\n const [graph, setGraph] = useState<dagre.graphlib.Graph<RenderedNode> | null>(\n null\n );\n const [nodesReady, setNodesReady] = useState(false);\n const [nodesRenderId, setNodesRenderId] = useState(0);\n const [nodesRefRepository, setNodesRefRepository] =\n useState<RefRepository | null>(null);\n // const [lineLabelsReady, setLineLabelsReady] = useState(false);\n const [lineLabelsRenderId, setLineLabelsRenderId] = useState(0);\n const [lineLabelsRefRepository, setLineLabelsRefRepository] =\n useState<RefRepository | null>(null);\n const [renderedNodes, setRenderedNodes] = useState<RenderedNode[]>([]);\n const [renderedEdges, setRenderedEdges] = useState<RenderedEdge[]>([]);\n const [renderedLineLabels, setRenderedLineLabels] = useState<\n RenderedLineLabel[]\n >([]);\n\n const [grabbing, setGrabbing] = useState(false);\n const [transform, setTransform] = useState<TransformLiteral>({\n k: 1,\n x: 0,\n y: 0,\n });\n\n const linePathsRef = useRef(new Map<string, SVGPathElement | null>());\n\n const rootRef = useRef<HTMLDivElement>(null);\n const nodesRef = useRef<HTMLDivElement>(null);\n const [centered, setCentered] = useState(false);\n\n const [connectLineTo, setConnectLineTo] = useState<PositionTuple>([0, 0]);\n const [connectLineState, setConnectLineState] =\n useState<ConnectLineState | null>(null);\n\n useImperativeHandle(ref, () => ({\n callOnLineLabel(id, method, ...args) {\n (\n lineLabelsRefRepository?.get(id)\n ?.firstElementChild as unknown as Record<string, Function>\n )?.[method](...args);\n },\n }));\n\n useEffect(() => {\n const onNodesMouseDown = (event: MouseEvent) => {\n handleNodesMouseDown(event, {\n nodes,\n nodesRefRepository,\n nodesConnect,\n setConnectLineState,\n setConnectLineTo,\n onSwitchActiveTarget,\n onNodesConnect,\n });\n };\n // Bind mousedown event manually, since the React event handler can't work with\n // d3-zoom inside shadow DOM.\n const nodesContainer = nodesRef.current;\n nodesContainer?.addEventListener(\"mousedown\", onNodesMouseDown);\n return () => {\n nodesContainer?.removeEventListener(\"mousedown\", onNodesMouseDown);\n };\n }, [\n nodes,\n nodesConnect,\n nodesRefRepository,\n onNodesConnect,\n onSwitchActiveTarget,\n ]);\n\n const fixedOptions = useMemo(\n () => ({\n rankdir: \"TB\",\n ranksep: 50,\n edgesep: 10,\n nodesep: 50,\n // align: undefined,\n nodePadding: 0,\n ...layoutOptions,\n }),\n [layoutOptions]\n );\n\n const { nodePadding } = fixedOptions;\n const dagreGraphOptions = useMemo(\n () =>\n pick(fixedOptions, [\"rankdir\", \"ranksep\", \"edgesep\", \"nodesep\", \"align\"]),\n [fixedOptions]\n );\n\n const activeTargetChangeInitialized = useRef(false);\n useEffect(() => {\n if (!activeTargetChangeInitialized.current) {\n activeTargetChangeInitialized.current = true;\n return;\n }\n onActiveTargetChange?.(activeTarget ?? null);\n }, [nodes, activeTarget, onActiveTargetChange]);\n\n useEffect(() => {\n setGraph((previousGraph) =>\n getDagreGraph(previousGraph, nodes, edges, dagreGraphOptions)\n );\n }, [edges, nodes, dagreGraphOptions]);\n\n useEffect(() => {\n const renderedDiagram = getRenderedDiagram({\n graph,\n nodesRefRepository,\n nodePadding,\n });\n if (renderedDiagram) {\n setRenderedNodes(renderedDiagram.nodes);\n setRenderedEdges(renderedDiagram.edges);\n }\n }, [graph, nodesRefRepository, nodesRenderId, nodePadding]);\n\n const { renderedLines, markers } = useMemo(\n () => getRenderedLinesAndMarkers(renderedEdges, lines),\n [lines, renderedEdges]\n );\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root || disableKeyboardAction) {\n return;\n }\n const onKeydown = (event: KeyboardEvent) => {\n const action = handleKeyboard(event, {\n renderedNodes,\n renderedEdges,\n activeTarget,\n });\n\n if (action?.action === \"delete-node\") {\n onNodeDelete?.(action.node);\n } else if (action?.action === \"delete-edge\") {\n onEdgeDelete?.(action.edge);\n } else if (action?.action === \"switch-active-node\" && action.node) {\n onSwitchActiveTarget?.({ type: \"node\", nodeId: action.node.id });\n }\n };\n root.addEventListener(\"keydown\", onKeydown);\n return () => {\n root.removeEventListener(\"keydown\", onKeydown);\n };\n }, [\n activeTarget,\n renderedNodes,\n renderedEdges,\n disableKeyboardAction,\n onSwitchActiveTarget,\n onNodeDelete,\n onEdgeDelete,\n ]);\n\n const handleNodesRendered = useCallback(\n (refRepository: RefRepository | null) => {\n if (refRepository) {\n setNodesRenderId((previous) => previous + 1);\n setNodesRefRepository(refRepository);\n }\n setNodesReady((previous) => previous || !!refRepository);\n },\n []\n );\n\n const handleLineLabelsRendered = useCallback(\n (refRepository: RefRepository | null) => {\n if (refRepository) {\n setLineLabelsRenderId((previous) => previous + 1);\n setLineLabelsRefRepository(refRepository);\n }\n // setLineLabelsReady((previous) => previous || !!refRepository);\n },\n []\n );\n\n const scaleRange = useMemo(\n () =>\n _scaleRange ??\n ([DEFAULT_SCALE_RANGE_MIN, DEFAULT_SCALE_RANGE_MAX] as RangeTuple),\n [_scaleRange]\n );\n\n const zoomer = useMemo(() => zoom<HTMLDivElement, unknown>(), []);\n\n useEffect(() => {\n let moved = false;\n zoomer\n .scaleExtent(zoomable ? scaleRange : [1, 1])\n .on(\"start\", () => {\n moved = false;\n setGrabbing(true);\n })\n .on(\"zoom\", (e: { transform: TransformLiteral }) => {\n moved = true;\n setTransform(e.transform);\n })\n .on(\"end\", () => {\n setGrabbing(false);\n if (!moved) {\n onSwitchActiveTarget?.(null);\n }\n });\n }, [onSwitchActiveTarget, scaleRange, zoomable, zoomer]);\n\n useEffect(() => {\n const root = rootRef.current;\n if (!root) {\n return;\n }\n\n const rootSelection = select(root);\n\n if (zoomable || scrollable) {\n // Do not override default d3 zoom handler.\n // Only handles *panning*\n rootSelection.on(\n \"wheel.zoom.custom\",\n (e: WheelEvent & { wheelDeltaX: number; wheelDeltaY: number }) => {\n // Mac OS trackpad pinch event is emitted as a wheel.zoom and d3.event.ctrlKey set to true\n if (!e.ctrlKey) {\n // Stop immediate propagation for default d3 zoom handler\n e.stopImmediatePropagation();\n if (scrollable) {\n e.preventDefault();\n zoomer.translateBy(\n rootSelection,\n e.wheelDeltaX / 5,\n e.wheelDeltaY / 5\n );\n }\n }\n // zoomer.scaleBy(rootSelection, Math.pow(2, defaultWheelDelta(e)))\n }\n );\n } else {\n rootSelection.on(\".zoom\", null);\n }\n\n rootSelection\n .on(\"wheel\", (e: WheelEvent) => e.preventDefault())\n .call(zoomer)\n .on(\"dblclick.zoom\", null);\n\n return () => {\n rootSelection.on(\".zoom\", null);\n rootSelection.on(\".zoom.custom\", null);\n };\n }, [scrollable, zoomable, zoomer]);\n\n useEffect(() => {\n const root = rootRef.current;\n if (renderedNodes.length === 0 || !root || centered) {\n return;\n }\n const { k, x, y } = transformToCenter(renderedNodes, {\n canvasWidth: root.clientWidth,\n canvasHeight: root.clientHeight,\n scaleRange: zoomable ? scaleRange : undefined,\n });\n zoomer.transform(select(root), new ZoomTransform(k, x, y));\n setCentered(true);\n }, [centered, renderedNodes, scaleRange, zoomable, zoomer]);\n\n const defPrefix = useMemo(() => `${uniqueId(\"diagram-\")}-`, []);\n const markerPrefix = `${defPrefix}line-arrow-`;\n const clipPathPrefix = `${defPrefix}clip-path-`;\n const activeLineMarkerPrefix = `${defPrefix}active-line-`;\n\n useEffect(() => {\n setRenderedLineLabels((previous) =>\n getRenderedLineLabels(previous, renderedLines, linePathsRef.current)\n );\n }, [renderedLines]);\n\n const [clipPathList, setClipPathList] = React.useState<LineTextClipPath[]>(\n []\n );\n\n useEffect(() => {\n if (!lineLabelsRefRepository) {\n return;\n }\n setClipPathList(\n getClipPathList(renderedLineLabels, lineLabelsRefRepository)\n );\n }, [lineLabelsRenderId, lineLabelsRefRepository, renderedLineLabels]);\n\n if (layout !== \"dagre\") {\n return <div>{`Diagram layout not supported: \"${layout}\"`}</div>;\n }\n\n return (\n <div\n className={classNames(\"diagram\", {\n ready: nodesReady && centered,\n grabbing,\n })}\n tabIndex={-1}\n ref={rootRef}\n >\n <svg width=\"100%\" height=\"100%\" className=\"lines\">\n <defs>\n {markers.map(({ strokeColor }, index) => (\n <MarkerComponent\n key={index}\n id={`${markerPrefix}${index}`}\n strokeColor={strokeColor}\n />\n ))}\n {clipPathList.map((clipPath) => (\n <ClipPathComponent\n key={clipPath.id}\n clipPath={clipPath}\n clipPathPrefix={clipPathPrefix}\n renderedLineLabels={renderedLineLabels}\n />\n ))}\n <marker\n id={`${activeLineMarkerPrefix}start`}\n viewBox=\"0 0 8 8\"\n refX={4}\n refY={4}\n markerWidth={8}\n markerHeight={8}\n orient=\"auto\"\n >\n <path\n d=\"M 0.5 0.5 H 7.5 V 7.5 H 0.5 Z\"\n stroke=\"var(--palette-gray-7)\"\n strokeWidth={1}\n fill=\"var(--palette-gray-1)\"\n />\n </marker>\n <marker\n id={`${activeLineMarkerPrefix}end`}\n viewBox=\"0 0 14 8\"\n refX={3}\n refY={4}\n markerWidth={14}\n markerHeight={8}\n orient=\"auto\"\n >\n <path\n d=\"M 0.5 1.5 L 5.5 4 L 0.5 6.5 z\"\n stroke=\"var(--palette-blue-3)\"\n strokeWidth={1}\n fill=\"var(--palette-blue-3)\"\n />\n <path\n d=\"M 6.5 0.5 H 13.5 V 7.5 H 6.5 Z\"\n stroke=\"var(--palette-gray-7)\"\n strokeWidth={1}\n fill=\"var(--palette-gray-1)\"\n />\n </marker>\n </defs>\n <g\n transform={`translate(${transform.x} ${transform.y}) scale(${transform.k})`}\n >\n {renderedLines.map((line) => (\n <LineComponent\n key={line.line.$id}\n line={line}\n linePaths={linePathsRef.current}\n clipPathList={clipPathList}\n markerPrefix={markerPrefix}\n clipPathPrefix={clipPathPrefix}\n activeLineMarkerPrefix={activeLineMarkerPrefix}\n activeEdge={\n activeTarget?.type === \"edge\" ? activeTarget.edge : null\n }\n onLineClick={onLineClick}\n onLineDoubleClick={onLineDoubleClick}\n />\n ))}\n </g>\n </svg>\n <div\n className=\"line-labels\"\n style={{\n left: transform.x,\n top: transform.y,\n transform: `scale(${transform.k})`,\n }}\n >\n <LineLabelComponentGroup\n labels={renderedLineLabels}\n onRendered={handleLineLabelsRendered}\n />\n </div>\n <div\n className=\"nodes\"\n ref={nodesRef}\n style={{\n left: transform.x,\n top: transform.y,\n transform: `scale(${transform.k})`,\n }}\n >\n <NodeComponentGroup\n nodes={nodes}\n nodeBricks={nodeBricks}\n // nodePositions={nodePositions}\n onRendered={handleNodesRendered}\n />\n </div>\n <ConnectLineComponent\n connectLineState={connectLineState}\n connectLineTo={connectLineTo}\n markerPrefix={markerPrefix}\n />\n </div>\n );\n}\n"],"names":["_EoDiagram","defineElement","property","event","method","createDecorators","EoDiagramComponent","forwardRef","LegacyEoDiagramComponent","_dec","styleTexts","styleText","_dec2","type","String","_dec3","attribute","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","Boolean","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_activeTargetChangeEvent","_handleActiveTargetChange","_N","_nodeDelete","_handleNodeDelete","_O","_edgeDelete","_handleEdgeDelete","_P","_lineClick","_handleLineClick","_Q","_lineDoubleClick","_handleLineDoubleClick","_R","_nodesConnect","_handleNodesConnect","_handleSwitchActiveTarget","_diagramRef","EoDiagram","ReactNextElement","constructor","arguments","_classPrivateFieldInitSpec","get","_get_nodesConnect2","set","_set_nodesConnect2","_get_lineDoubleClick2","_set_lineDoubleClick2","_get_lineClick2","_set_lineClick2","_get_edgeDelete2","_set_edgeDelete2","_get_nodeDelete2","_set_nodeDelete2","_get_activeTargetChangeEvent2","_set_activeTargetChangeEvent2","writable","value","_initProto","_init_layout","_init_nodes","_init_edges","_init_nodeBricks","_init_lines","_init_layoutOptions","_init_activeTarget","_init_disableKeyboardAction","_init_nodesConnect","_init_zoomable","_init_scrollable","_init_scaleRange","_init_activeTargetChangeEvent","target","_classPrivateFieldGet","this","emit","_init_nodeDelete","node","_init_edgeDelete","edge","_init_lineClick","line","_init_lineDoubleClick","_init_nodesConnect2","detail","activeTarget","createRef","layout","v","_classPrivateFieldSet","nodes","edges","nodeBricks","lines","layoutOptions","disableKeyboardAction","nodesConnect","zoomable","scrollable","scaleRange","callOnLineLabel","id","_classPrivateFieldGet2","_len","length","args","Array","_key","current","render","React","ref","onActiveTargetChange","onSwitchActiveTarget","onNodeDelete","onEdgeDelete","onLineClick","onLineDoubleClick","onNodesConnect","_set_activeTargetChangeEvent","_get_activeTargetChangeEvent","_set_nodeDelete","_get_nodeDelete","_set_edgeDelete","_get_edgeDelete","_set_lineClick","_get_lineClick","_set_lineDoubleClick","_get_lineDoubleClick","_set_nodesConnect","_get_nodesConnect","_ref","_scaleRange","graph","setGraph","useState","nodesReady","setNodesReady","nodesRenderId","setNodesRenderId","nodesRefRepository","setNodesRefRepository","lineLabelsRenderId","setLineLabelsRenderId","lineLabelsRefRepository","setLineLabelsRefRepository","renderedNodes","setRenderedNodes","renderedEdges","setRenderedEdges","renderedLineLabels","setRenderedLineLabels","grabbing","setGrabbing","transform","setTransform","k","x","y","linePathsRef","useRef","Map","rootRef","nodesRef","centered","setCentered","connectLineTo","setConnectLineTo","connectLineState","setConnectLineState","useImperativeHandle","_lineLabelsRefReposit","_len2","_key2","firstElementChild","useEffect","onNodesMouseDown","handleNodesMouseDown","nodesContainer","addEventListener","removeEventListener","fixedOptions","useMemo","_objectSpread","rankdir","ranksep","edgesep","nodesep","nodePadding","dagreGraphOptions","pick","activeTargetChangeInitialized","previousGraph","getDagreGraph","renderedDiagram","getRenderedDiagram","renderedLines","markers","getRenderedLinesAndMarkers","root","onKeydown","action","handleKeyboard","nodeId","handleNodesRendered","useCallback","refRepository","previous","handleLineLabelsRendered","DEFAULT_SCALE_RANGE_MIN","DEFAULT_SCALE_RANGE_MAX","zoomer","zoom","moved","scaleExtent","on","e","rootSelection","select","ctrlKey","stopImmediatePropagation","preventDefault","translateBy","wheelDeltaX","wheelDeltaY","call","transformToCenter","canvasWidth","clientWidth","canvasHeight","clientHeight","undefined","ZoomTransform","defPrefix","concat","uniqueId","markerPrefix","clipPathPrefix","activeLineMarkerPrefix","getRenderedLineLabels","clipPathList","setClipPathList","getClipPathList","className","classNames","ready","tabIndex","width","height","map","_ref2","index","strokeColor","MarkerComponent","key","clipPath","ClipPathComponent","viewBox","refX","refY","markerWidth","markerHeight","orient","d","stroke","strokeWidth","fill","LineComponent","$id","linePaths","activeEdge","style","left","top","LineLabelComponentGroup","labels","onRendered","NodeComponentGroup","ConnectLineComponent","_class","c","_initClass","_applyDecs","o","_","has","_checkInRHS"],"sourceRoot":""}