@focus.matters/diagrams 0.0.7

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.
Files changed (136) hide show
  1. package/dist/Diagrams/DiagramEditor.d.ts +11 -0
  2. package/dist/Diagrams/components/Canvas.d.ts +6 -0
  3. package/dist/Diagrams/components/extra/AlignmentSuggestions.d.ts +3 -0
  4. package/dist/Diagrams/components/extra/GatewayRender.d.ts +5 -0
  5. package/dist/Diagrams/components/extra/Measurement.d.ts +3 -0
  6. package/dist/Diagrams/components/extra/MouseTracker.d.ts +3 -0
  7. package/dist/Diagrams/components/extra/NodesConnectorRenderer.d.ts +3 -0
  8. package/dist/Diagrams/components/extra/PathFindingRenderer.d.ts +3 -0
  9. package/dist/Diagrams/components/extra/Selection.d.ts +3 -0
  10. package/dist/Diagrams/components/extra/Stats.d.ts +3 -0
  11. package/dist/Diagrams/components/extra/Svg.d.ts +2 -0
  12. package/dist/Diagrams/components/extra/Theme.d.ts +8 -0
  13. package/dist/Diagrams/components/extra/ToolsState.d.ts +5 -0
  14. package/dist/Diagrams/components/nodes/NodeTools.d.ts +4 -0
  15. package/dist/Diagrams/components/objects/Cross.d.ts +9 -0
  16. package/dist/Diagrams/components/objects/CustomRenderers.d.ts +6 -0
  17. package/dist/Diagrams/components/objects/Grid.d.ts +1 -0
  18. package/dist/Diagrams/components/objects/RenderEdge/EdgeMarker.d.ts +12 -0
  19. package/dist/Diagrams/components/objects/RenderEdge/EdgeMidpoints.d.ts +11 -0
  20. package/dist/Diagrams/components/objects/RenderEdge/debugEdges.d.ts +14 -0
  21. package/dist/Diagrams/components/objects/RenderEdge/index.d.ts +4 -0
  22. package/dist/Diagrams/components/objects/RenderEdge/types.d.ts +29 -0
  23. package/dist/Diagrams/components/objects/RenderEdge/util.d.ts +6 -0
  24. package/dist/Diagrams/components/objects/Shape.d.ts +49 -0
  25. package/dist/Diagrams/components/objects/Shapes.d.ts +1 -0
  26. package/dist/Diagrams/components/objects/customRendererProps.d.ts +7 -0
  27. package/dist/Diagrams/components/objects/makeScalableComponent.d.ts +2 -0
  28. package/dist/Diagrams/context-menu/ContextMenu.d.ts +22 -0
  29. package/dist/Diagrams/context-menu/buildDiagramContextMenu.d.ts +6 -0
  30. package/dist/Diagrams/context-menu/index.d.ts +3 -0
  31. package/dist/Diagrams/context-menu/types.d.ts +12 -0
  32. package/dist/Diagrams/custom/agent/AgentDiagram.d.ts +5 -0
  33. package/dist/Diagrams/custom/agent/edges/AgentEdge.d.ts +32 -0
  34. package/dist/Diagrams/custom/agent/index.d.ts +2 -0
  35. package/dist/Diagrams/custom/agent/nodes/ActionNode.d.ts +14 -0
  36. package/dist/Diagrams/custom/agent/nodes/AgentNode.d.ts +58 -0
  37. package/dist/Diagrams/custom/agent/nodes/ConditionNode.d.ts +14 -0
  38. package/dist/Diagrams/custom/agent/nodes/OutcomeNode.d.ts +14 -0
  39. package/dist/Diagrams/custom/agent/nodes/TriggerNode.d.ts +14 -0
  40. package/dist/Diagrams/custom/agent/types.d.ts +54 -0
  41. package/dist/Diagrams/custom/bpmn/BPMDiagram.d.ts +5 -0
  42. package/dist/Diagrams/custom/bpmn/bpmnEvents.d.ts +3 -0
  43. package/dist/Diagrams/custom/bpmn/edges/EdgeWithLoad.d.ts +4 -0
  44. package/dist/Diagrams/custom/bpmn/nodes/BPMNNodeContext.d.ts +3 -0
  45. package/dist/Diagrams/custom/bpmn/nodes/BPMNode.d.ts +6 -0
  46. package/dist/Diagrams/custom/bpmn/nodes/EventNode.d.ts +58 -0
  47. package/dist/Diagrams/custom/bpmn/nodes/GateNode.d.ts +58 -0
  48. package/dist/Diagrams/custom/bpmn/nodes/Lanes/LanesResizer.d.ts +6 -0
  49. package/dist/Diagrams/custom/bpmn/nodes/Lanes/index.d.ts +66 -0
  50. package/dist/Diagrams/custom/bpmn/nodes/TaskNode.d.ts +9 -0
  51. package/dist/Diagrams/custom/bpmn/nodes/UnknownBPMNNode.d.ts +51 -0
  52. package/dist/Diagrams/custom/communication/CommunicationDiagram.d.ts +15 -0
  53. package/dist/Diagrams/custom/communication/CommunicationNode.d.ts +12 -0
  54. package/dist/Diagrams/custom/communication/edges/CommunicationEdge.d.ts +35 -0
  55. package/dist/Diagrams/custom/communication/nodes/CommunicationActorNode.d.ts +10 -0
  56. package/dist/Diagrams/custom/communication/nodes/CommunicationControllerNode.d.ts +10 -0
  57. package/dist/Diagrams/custom/communication/nodes/CommunicationObjectNode.d.ts +10 -0
  58. package/dist/Diagrams/custom/communication/types.d.ts +1 -0
  59. package/dist/Diagrams/custom/editable/EditableDiagram.d.ts +4 -0
  60. package/dist/Diagrams/custom/editable/EditableLabel.d.ts +3 -0
  61. package/dist/Diagrams/custom/editable/EditableNode.d.ts +15 -0
  62. package/dist/Diagrams/custom/editable/EditableNodeContext.d.ts +3 -0
  63. package/dist/Diagrams/custom/editable/EditionMode.d.ts +10 -0
  64. package/dist/Diagrams/custom/editable/events.d.ts +9 -0
  65. package/dist/Diagrams/layout/HStack.d.ts +4 -0
  66. package/dist/Diagrams/store/Canvas.d.ts +69 -0
  67. package/dist/Diagrams/store/Diagram.d.ts +134 -0
  68. package/dist/Diagrams/store/elements/Edge.d.ts +42 -0
  69. package/dist/Diagrams/store/elements/EdgePoint.d.ts +19 -0
  70. package/dist/Diagrams/store/elements/Element.d.ts +19 -0
  71. package/dist/Diagrams/store/elements/Events.d.ts +244 -0
  72. package/dist/Diagrams/store/elements/EventsMouseInformation.d.ts +10 -0
  73. package/dist/Diagrams/store/elements/Gateway.d.ts +57 -0
  74. package/dist/Diagrams/store/elements/Node.d.ts +73 -0
  75. package/dist/Diagrams/store/elements/TextNode.d.ts +4 -0
  76. package/dist/Diagrams/store/extensions/Creator.d.ts +9 -0
  77. package/dist/Diagrams/store/extensions/Debugger.d.ts +6 -0
  78. package/dist/Diagrams/store/extensions/DiagramExtension.d.ts +13 -0
  79. package/dist/Diagrams/store/extensions/DistancesBalancer.d.ts +13 -0
  80. package/dist/Diagrams/store/extensions/Dragger.d.ts +46 -0
  81. package/dist/Diagrams/store/extensions/EdgesDragger.d.ts +101 -0
  82. package/dist/Diagrams/store/extensions/GridSnap.d.ts +5 -0
  83. package/dist/Diagrams/store/extensions/History.d.ts +15 -0
  84. package/dist/Diagrams/store/extensions/Hotkeys.d.ts +22 -0
  85. package/dist/Diagrams/store/extensions/Measurer.d.ts +17 -0
  86. package/dist/Diagrams/store/extensions/NodesAligner.d.ts +19 -0
  87. package/dist/Diagrams/store/extensions/NodesConnector.d.ts +27 -0
  88. package/dist/Diagrams/store/extensions/NodesResizer.d.ts +4 -0
  89. package/dist/Diagrams/store/extensions/PathFindingRenderer.d.ts +9 -0
  90. package/dist/Diagrams/store/extensions/Priorities.d.ts +26 -0
  91. package/dist/Diagrams/store/extensions/Rules.d.ts +11 -0
  92. package/dist/Diagrams/store/extensions/Selector.d.ts +50 -0
  93. package/dist/Diagrams/store/extensions/StraightDrag.d.ts +8 -0
  94. package/dist/Diagrams/store/primitives/Coordinates.d.ts +45 -0
  95. package/dist/Diagrams/store/primitives/Dimensions.d.ts +58 -0
  96. package/dist/Diagrams/store/primitives/DirectedPoint.d.ts +12 -0
  97. package/dist/Diagrams/store/types.d.ts +61 -0
  98. package/dist/Diagrams/util/ClassList.d.ts +8 -0
  99. package/dist/Diagrams/util/Mouse.d.ts +9 -0
  100. package/dist/Diagrams/util/Mutex.d.ts +5 -0
  101. package/dist/Diagrams/util/PriorityQueue.d.ts +19 -0
  102. package/dist/Diagrams/util/Semaphore.d.ts +37 -0
  103. package/dist/Diagrams/util/TasksQueue.d.ts +7 -0
  104. package/dist/Diagrams/util/arrayOrArray.d.ts +1 -0
  105. package/dist/Diagrams/util/awaitTime.d.ts +1 -0
  106. package/dist/Diagrams/util/binders.d.ts +17 -0
  107. package/dist/Diagrams/util/bpmn/applyBPMNImportPlan.d.ts +3 -0
  108. package/dist/Diagrams/util/bpmn/buildBPMNImportPlan.d.ts +3 -0
  109. package/dist/Diagrams/util/bpmn/importBPMNXmlIntoDiagram.d.ts +6 -0
  110. package/dist/Diagrams/util/bpmn/index.d.ts +5 -0
  111. package/dist/Diagrams/util/bpmn/parseBPMNXml.d.ts +2 -0
  112. package/dist/Diagrams/util/bpmn/types.d.ts +103 -0
  113. package/dist/Diagrams/util/cloneDeep.d.ts +1 -0
  114. package/dist/Diagrams/util/downloadFile.d.ts +1 -0
  115. package/dist/Diagrams/util/getEnumStr.d.ts +3 -0
  116. package/dist/Diagrams/util/getIdForNode.d.ts +2 -0
  117. package/dist/Diagrams/util/getUniqueId.d.ts +1 -0
  118. package/dist/Diagrams/util/insertSorted.d.ts +1 -0
  119. package/dist/Diagrams/util/paths/PathsGrid.d.ts +43 -0
  120. package/dist/Diagrams/util/paths/findBestPathBetweenNodes.d.ts +8 -0
  121. package/dist/Diagrams/util/paths/orthogonalRouter.d.ts +7 -0
  122. package/dist/Diagrams/util/paths/stepBackFromGateway.d.ts +5 -0
  123. package/dist/Diagrams/util/readFile.d.ts +8 -0
  124. package/dist/Diagrams/util/shapes.d.ts +13 -0
  125. package/dist/Diagrams/util/throttle.d.ts +1 -0
  126. package/dist/DirectedPoint-HRgiLZeU.js +53 -0
  127. package/dist/DirectedPoint-HRgiLZeU.js.map +1 -0
  128. package/dist/diagrams.css +1 -0
  129. package/dist/index-DZNvKq1b.js +6657 -0
  130. package/dist/index-DZNvKq1b.js.map +1 -0
  131. package/dist/index.d.ts +8 -0
  132. package/dist/index.es.js +10 -0
  133. package/dist/index.es.js.map +1 -0
  134. package/dist/index.umd.js +6 -0
  135. package/dist/index.umd.js.map +1 -0
  136. package/package.json +45 -0
@@ -0,0 +1,11 @@
1
+ import { ReactNode } from 'react';
2
+ import { Diagram } from './store/Diagram';
3
+ type DiagramEditorProps = {
4
+ diagram: Diagram;
5
+ leftPanel?: ReactNode;
6
+ toolbar?: ReactNode;
7
+ };
8
+ export declare const DiagramEditor: (({ diagram, leftPanel, toolbar }: DiagramEditorProps) => import("react").JSX.Element) & {
9
+ displayName: string;
10
+ };
11
+ export {};
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const Canvas: (({ children }: {
3
+ children?: ReactNode;
4
+ }) => import("react").JSX.Element) & {
5
+ displayName: string;
6
+ };
@@ -0,0 +1,3 @@
1
+ export declare const AlignmentSuggestions: (() => import("react").JSX.Element) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,5 @@
1
+ import { ReactElement } from 'react';
2
+ import { Gateway } from '../../store/elements/Gateway';
3
+ export declare const GatewayRender: ({ gateway, }: {
4
+ gateway: Gateway;
5
+ }) => ReactElement;
@@ -0,0 +1,3 @@
1
+ export declare const Measurement: (() => import("react").JSX.Element | null) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ export declare const MouseTracker: (() => import("react").JSX.Element) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ export declare const NodesConnectorRenderer: (() => import("react").JSX.Element | null) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ export declare const PathFindingRenderer: (() => import("react").JSX.Element | null) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ export declare const Selection: (() => import("react").JSX.Element | null) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,3 @@
1
+ export declare const Stats: (() => import("react").JSX.Element) & {
2
+ displayName: string;
3
+ };
@@ -0,0 +1,2 @@
1
+ import { SVGProps } from 'react';
2
+ export declare const Svg: import('react').ForwardRefExoticComponent<Omit<SVGProps<SVGSVGElement>, "ref"> & import('react').RefAttributes<any>>;
@@ -0,0 +1,8 @@
1
+ export declare class Theme {
2
+ static instance: Theme;
3
+ isLight: boolean;
4
+ private constructor();
5
+ _get(): boolean;
6
+ get(): boolean;
7
+ toggle(): void;
8
+ }
@@ -0,0 +1,5 @@
1
+ export declare class ToolsStates {
2
+ static instance: ToolsStates;
3
+ showDragHints: boolean;
4
+ private constructor();
5
+ }
@@ -0,0 +1,4 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const NodeTools: ({ children }: {
3
+ children: ReactNode;
4
+ }) => import("react").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { Coordinates } from '../../store/primitives/Coordinates';
2
+ export interface RedCrossProps {
3
+ coordinates: Coordinates;
4
+ size?: number;
5
+ strokeWidth?: number;
6
+ rounded?: boolean;
7
+ stroke?: string;
8
+ }
9
+ export declare const Cross: React.FC<RedCrossProps>;
@@ -0,0 +1,6 @@
1
+ export declare const RenderCustomRenderers: (() => import("react").JSX.Element) & {
2
+ displayName: string;
3
+ };
4
+ export declare const RenderScreenLabels: (() => import("react").JSX.Element) & {
5
+ displayName: string;
6
+ };
@@ -0,0 +1 @@
1
+ export declare const Grid: () => null;
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ import { EdgeArrowHead } from '../../../store/types';
3
+ interface EdgeMarkerProps {
4
+ id: string;
5
+ color?: string;
6
+ type: EdgeArrowHead;
7
+ width: number;
8
+ arrowSize: number;
9
+ flip?: boolean;
10
+ }
11
+ export declare const EdgeMarker: React.FC<EdgeMarkerProps>;
12
+ export {};
@@ -0,0 +1,11 @@
1
+ import { default as React } from 'react';
2
+ import { Coordinates } from '../../../store/primitives/Coordinates';
3
+ import { Midpoint } from './types';
4
+ import { Edge } from '../../../store/elements/Edge';
5
+ interface EdgeMidpointsProps {
6
+ edge: Edge;
7
+ onMouseDown: (m: Midpoint, ev: React.MouseEvent) => unknown;
8
+ points: Coordinates[];
9
+ }
10
+ export declare const EdgeMidpoints: React.FC<EdgeMidpointsProps>;
11
+ export {};
@@ -0,0 +1,14 @@
1
+ import { Edge } from '../../../store/elements/Edge';
2
+ import { Midpoint } from './types';
3
+ type DebugClickTarget = {
4
+ type: 'edge';
5
+ } | {
6
+ type: 'drag-point';
7
+ midpoint: Midpoint;
8
+ renderedIndex: number;
9
+ } | {
10
+ type: 'endpoint';
11
+ endpoint: 'from' | 'to';
12
+ };
13
+ export declare function copyEdgeDebugToClipboard(edge: Edge | undefined, target: DebugClickTarget): void;
14
+ export {};
@@ -0,0 +1,4 @@
1
+ import { default as React } from 'react';
2
+ import { RenderEdgeProps } from './types';
3
+ export type * from './types';
4
+ export declare const RenderEdge: React.FC<RenderEdgeProps>;
@@ -0,0 +1,29 @@
1
+ import { default as React } from 'react';
2
+ import { Coordinates } from '../../../store/primitives/Coordinates';
3
+ import { EdgeArrowHead, EdgeLineStyle } from '../../../store/types';
4
+ import { EdgePoint } from '../../../store/elements/EdgePoint';
5
+ import { Edge } from '../../../store/elements/Edge';
6
+ import { AnyMouseEvent } from '../../../store/elements/Events';
7
+ export interface RenderEdgeProps {
8
+ edge?: Edge;
9
+ points: (Coordinates | EdgePoint)[];
10
+ color?: string;
11
+ width?: number;
12
+ arrowSize?: number;
13
+ className?: string;
14
+ endStroke?: string;
15
+ startStroke?: string;
16
+ startType?: EdgeArrowHead;
17
+ endType?: EdgeArrowHead;
18
+ lineStyle?: EdgeLineStyle;
19
+ draggable?: boolean;
20
+ onMidpointMouseDown?: (p: Midpoint, ev: React.MouseEvent) => void;
21
+ onEndpointMouseDown?: (endpoint: 'from' | 'to', ev: React.MouseEvent) => void;
22
+ }
23
+ export declare class Midpoint extends Coordinates {
24
+ id: string;
25
+ edge: Edge;
26
+ points: [Coordinates, Coordinates];
27
+ constructor(id: string, edge: Edge, points: [Coordinates, Coordinates], items?: AnyMouseEvent | Event | Coordinates | number[]);
28
+ copy(): Midpoint;
29
+ }
@@ -0,0 +1,6 @@
1
+ import { Edge } from '../../../store/elements/Edge';
2
+ import { EdgePoint } from '../../../store/elements/EdgePoint';
3
+ import { Coordinates } from '../../../store/primitives/Coordinates';
4
+ import { Midpoint } from './types';
5
+ export declare function arePointsAligned(p1: Coordinates, p2: Coordinates, p3: Coordinates): boolean;
6
+ export declare function getSegmentMidpoints(edge: Edge, points: (Coordinates | EdgePoint)[]): Midpoint[];
@@ -0,0 +1,49 @@
1
+ import { default as React, MouseEventHandler, ReactNode, SVGProps } from 'react';
2
+ import { Coordinates } from '../../store/primitives/Coordinates';
3
+ /**
4
+ * Estilo del borde: sólido, rayado o punteado.
5
+ */
6
+ export type StrokeStyle = 'solid' | 'dashed' | 'dotted';
7
+ export type ArrowPosition = 'start' | 'end' | 'both';
8
+ export interface ArrowSpec {
9
+ position?: ArrowPosition;
10
+ size?: number;
11
+ color?: string;
12
+ filled?: boolean;
13
+ sharpness?: number;
14
+ }
15
+ /**
16
+ * Configuración de un path individual dentro del Shape.
17
+ */
18
+ export interface PathSpec {
19
+ /** Atributo SVG "d" */
20
+ d: string;
21
+ arrow?: ArrowSpec;
22
+ fill?: string;
23
+ stroke?: string;
24
+ strokeWidth?: number;
25
+ strokeStyle?: StrokeStyle;
26
+ animated?: boolean;
27
+ animationDuration?: number;
28
+ nonScalingStroke?: boolean;
29
+ roundedBorders?: boolean;
30
+ }
31
+ export interface ShapeProps extends SVGProps<SVGGElement> {
32
+ paths: PathSpec[];
33
+ transform?: string;
34
+ selected?: boolean;
35
+ onClick?: React.MouseEventHandler<SVGGElement>;
36
+ className?: string;
37
+ roundedBorders?: boolean;
38
+ label?: string;
39
+ labelColor?: string;
40
+ labelFontSize?: number;
41
+ labelFontFamily?: string;
42
+ labelOffset?: Coordinates;
43
+ onMouseDown?: MouseEventHandler<SVGGElement>;
44
+ 'data-id'?: string;
45
+ children?: ReactNode;
46
+ }
47
+ declare const UnobservedShape: React.ForwardRefExoticComponent<Omit<ShapeProps, "ref"> & React.RefAttributes<any>>;
48
+ export declare const Shape: typeof UnobservedShape;
49
+ export {};
@@ -0,0 +1 @@
1
+ export declare function shapes(): import("react").JSX.Element[];
@@ -0,0 +1,7 @@
1
+ import { Node } from '../../store/elements/Node';
2
+ type DivProps = React.DetailedHTMLProps<React.HTMLAttributes<any>, any> & {
3
+ [key: `data-${string}`]: string | number | boolean | undefined;
4
+ };
5
+ export declare function customRendererStyles(node: Node<any>): React.DetailedHTMLProps<React.HTMLAttributes<any>, any>['style'];
6
+ export declare function customRendererProps(node: Node<any>): DivProps;
7
+ export {};
@@ -0,0 +1,2 @@
1
+ export declare function makeScalableComponent<T extends object>(c: T): T;
2
+ export declare function makeBackScalableComponent<T extends object>(c: T): T;
@@ -0,0 +1,22 @@
1
+ import { ContextMenuElement, ContextMenuOpenOptions } from './types';
2
+ type Position = {
3
+ x: number;
4
+ y: number;
5
+ };
6
+ declare class ContextMenuStore {
7
+ private _elements;
8
+ private _opened;
9
+ private _position;
10
+ private _openVersion;
11
+ readonly Component: () => import("react").JSX.Element;
12
+ constructor();
13
+ get elements(): ContextMenuElement[];
14
+ get opened(): boolean;
15
+ get position(): Position;
16
+ get openVersion(): number;
17
+ open(elements: ContextMenuElement[], options?: ContextMenuOpenOptions): void;
18
+ close(): void;
19
+ execute(item: ContextMenuElement): void;
20
+ }
21
+ export declare const ContextMenu: ContextMenuStore;
22
+ export {};
@@ -0,0 +1,6 @@
1
+ import { Diagram } from '../store/Diagram';
2
+ import { ContextMenuElement } from './types';
3
+ export declare function buildDiagramContextMenu(diagram: Diagram, target: HTMLElement, cursor: {
4
+ x: number;
5
+ y: number;
6
+ }): ContextMenuElement[];
@@ -0,0 +1,3 @@
1
+ export { ContextMenu } from './ContextMenu';
2
+ export { buildDiagramContextMenu } from './buildDiagramContextMenu';
3
+ export type { ContextMenuAction, ContextMenuElement, ContextMenuOpenOptions, } from './types';
@@ -0,0 +1,12 @@
1
+ export type ContextMenuAction = () => void | Promise<void>;
2
+ export interface ContextMenuElement {
3
+ label: string;
4
+ onClick: ContextMenuAction;
5
+ submenu?: ContextMenuElement[];
6
+ disabled?: boolean;
7
+ danger?: boolean;
8
+ }
9
+ export interface ContextMenuOpenOptions {
10
+ x?: number;
11
+ y?: number;
12
+ }
@@ -0,0 +1,5 @@
1
+ import { TDiagramSettings } from '../../store/Diagram';
2
+ import { EditableDiagram } from '../editable/EditableDiagram';
3
+ export declare class AgentDiagram extends EditableDiagram {
4
+ constructor(settings?: TDiagramSettings);
5
+ }
@@ -0,0 +1,32 @@
1
+ import { Edge } from '../../../store/elements/Edge';
2
+ import { Element } from '../../../store/elements/Element';
3
+ import { TEdgeState } from '../../../store/types';
4
+ import { AgentEdgeKind } from '../types';
5
+ type AgentEdgeState = Partial<TEdgeState> & {
6
+ kind?: AgentEdgeKind;
7
+ };
8
+ type AgentSerializedEdge = ReturnType<Edge['serialize']> & {
9
+ kind?: AgentEdgeKind;
10
+ };
11
+ export declare class AgentEdge extends Edge {
12
+ kind: AgentEdgeKind;
13
+ constructor(parent: Element | null, state: AgentEdgeState);
14
+ setKind(kind: AgentEdgeKind): void;
15
+ serialize(): {
16
+ kind: AgentEdgeKind;
17
+ arrowHeadEnd: import('../../../store/types').EdgeArrowHead | undefined;
18
+ arrowHeadStart: import('../../../store/types').EdgeArrowHead | undefined;
19
+ displacementEnd: [number, number] | undefined;
20
+ displacementStart: [number, number] | undefined;
21
+ lineStyle: import('../../../store/types').EdgeLineStyle | undefined;
22
+ pathType: import('../../../store/types').EdgePathType | undefined;
23
+ steps: import('../../../store/elements/EdgePoint').TSerializedEdgePoint[];
24
+ stroke: string | undefined;
25
+ strokeWidth: number | undefined;
26
+ to: string;
27
+ toParentId: string;
28
+ class: string;
29
+ };
30
+ deserialize(o: AgentSerializedEdge): void;
31
+ }
32
+ export {};
@@ -0,0 +1,2 @@
1
+ export { AgentDiagram } from './AgentDiagram';
2
+ export type * from './types';
@@ -0,0 +1,14 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { ActionPayload } from '../types';
4
+ import { AgentNode } from './AgentNode';
5
+ export declare class ActionNode extends AgentNode<ActionPayload> {
6
+ readonly kind: "action";
7
+ constructor(parent: Element | null, state: TNodeConstructorProps & {
8
+ payload?: Partial<ActionPayload>;
9
+ });
10
+ protected defaultPayload(): ActionPayload;
11
+ protected Render: (() => import("react").JSX.Element) & {
12
+ displayName: string;
13
+ };
14
+ }
@@ -0,0 +1,58 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { EditableNode } from '../../editable/EditableNode';
4
+ import { AgentNodeKind } from '../types';
5
+ type AgentNodeConstructorProps<TPayload> = TNodeConstructorProps & {
6
+ payload?: Partial<TPayload>;
7
+ };
8
+ export declare abstract class AgentNode<TPayload> extends EditableNode {
9
+ abstract readonly kind: AgentNodeKind;
10
+ payload: TPayload;
11
+ constructor(parent: Element | null, state: AgentNodeConstructorProps<TPayload>);
12
+ protected abstract defaultPayload(): TPayload;
13
+ protected mergePayload(payload?: Partial<TPayload>): TPayload;
14
+ replacePayload(payload: TPayload): void;
15
+ updatePayload(patch: Partial<TPayload>): void;
16
+ serialize(): {
17
+ kind: AgentNodeKind;
18
+ payload: TPayload;
19
+ box: [number, number, number, number];
20
+ id: string;
21
+ label: string;
22
+ movable: boolean | undefined;
23
+ selectable: boolean | undefined;
24
+ selected: boolean | undefined;
25
+ gateways: {
26
+ coordinates: [number, number];
27
+ fill: string | undefined;
28
+ id: string;
29
+ orientation: import('../../../store/types').TOrientation;
30
+ radius: number;
31
+ stroke: string | undefined;
32
+ strokeWidth: number;
33
+ outEdges: {
34
+ arrowHeadEnd: import('../../../store/types').EdgeArrowHead | undefined;
35
+ arrowHeadStart: import('../../../store/types').EdgeArrowHead | undefined;
36
+ displacementEnd: [number, number] | undefined;
37
+ displacementStart: [number, number] | undefined;
38
+ lineStyle: import('../../../store/types').EdgeLineStyle | undefined;
39
+ pathType: import('../../../store/types').EdgePathType | undefined;
40
+ steps: import('../../../store/elements/EdgePoint').TSerializedEdgePoint[];
41
+ stroke: string | undefined;
42
+ strokeWidth: number | undefined;
43
+ to: string;
44
+ toParentId: string;
45
+ class: string;
46
+ }[];
47
+ class: string;
48
+ }[];
49
+ fill: string | undefined;
50
+ labelFontSize: number | undefined;
51
+ stroke: string | undefined;
52
+ strokewWidth: number | undefined;
53
+ class: string;
54
+ };
55
+ deserialize(o: ReturnType<(typeof this)['serialize']>): void;
56
+ }
57
+ export declare function isAgentNode(node: unknown): node is AgentNode<unknown>;
58
+ export {};
@@ -0,0 +1,14 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { ConditionPayload } from '../types';
4
+ import { AgentNode } from './AgentNode';
5
+ export declare class ConditionNode extends AgentNode<ConditionPayload> {
6
+ readonly kind: "condition";
7
+ constructor(parent: Element | null, state: TNodeConstructorProps & {
8
+ payload?: Partial<ConditionPayload>;
9
+ });
10
+ protected defaultPayload(): ConditionPayload;
11
+ protected Render: (() => import("react").JSX.Element) & {
12
+ displayName: string;
13
+ };
14
+ }
@@ -0,0 +1,14 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { OutcomePayload } from '../types';
4
+ import { AgentNode } from './AgentNode';
5
+ export declare class OutcomeNode extends AgentNode<OutcomePayload> {
6
+ readonly kind: "outcome";
7
+ constructor(parent: Element | null, state: TNodeConstructorProps & {
8
+ payload?: Partial<OutcomePayload>;
9
+ });
10
+ protected defaultPayload(): OutcomePayload;
11
+ protected Render: (() => import("react").JSX.Element) & {
12
+ displayName: string;
13
+ };
14
+ }
@@ -0,0 +1,14 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { TriggerPayload } from '../types';
4
+ import { AgentNode } from './AgentNode';
5
+ export declare class TriggerNode extends AgentNode<TriggerPayload> {
6
+ readonly kind: "trigger";
7
+ constructor(parent: Element | null, state: TNodeConstructorProps & {
8
+ payload?: Partial<TriggerPayload>;
9
+ });
10
+ protected defaultPayload(): TriggerPayload;
11
+ protected Render: (() => import("react").JSX.Element) & {
12
+ displayName: string;
13
+ };
14
+ }
@@ -0,0 +1,54 @@
1
+ import { TOrientation } from '../../store/types';
2
+ export type AgentNodeKind = 'trigger' | 'action' | 'condition' | 'outcome';
3
+ export type AgentEdgeKind = 'default' | 'condition-true' | 'condition-false' | 'trigger';
4
+ export type AgentMetadata = Record<string, string | number | boolean>;
5
+ export type TriggerPayload = {
6
+ triggerType: 'manual' | 'event' | 'schedule';
7
+ source: string;
8
+ eventName: string;
9
+ schedule: string;
10
+ metadata?: AgentMetadata;
11
+ };
12
+ export type ActionPayload = {
13
+ actionType: 'task' | 'api' | 'notification' | 'human';
14
+ operation: string;
15
+ inputRef: string;
16
+ outputRef: string;
17
+ metadata?: AgentMetadata;
18
+ };
19
+ export type ConditionPayload = {
20
+ expression: string;
21
+ language: 'rule' | 'javascript' | 'jsonpath';
22
+ trueLabel: string;
23
+ falseLabel: string;
24
+ metadata?: AgentMetadata;
25
+ };
26
+ export type OutcomePayload = {
27
+ status: 'success' | 'failure' | 'neutral';
28
+ code: string;
29
+ summary: string;
30
+ metadata?: AgentMetadata;
31
+ };
32
+ export type AgentPayloadByKind = {
33
+ trigger: TriggerPayload;
34
+ action: ActionPayload;
35
+ condition: ConditionPayload;
36
+ outcome: OutcomePayload;
37
+ };
38
+ export type AgentPayload = AgentPayloadByKind[AgentNodeKind];
39
+ export type AgentCreateNodeInput<K extends AgentNodeKind = AgentNodeKind> = {
40
+ kind: K;
41
+ label?: string;
42
+ payload?: Partial<AgentPayloadByKind[K]>;
43
+ };
44
+ export type AgentConnectInput = {
45
+ fromNodeId: string;
46
+ toNodeId: string;
47
+ fromGateway?: TOrientation;
48
+ toGateway?: TOrientation;
49
+ kind?: AgentEdgeKind;
50
+ };
51
+ export type AgentTemplateResult = {
52
+ nodeIds: string[];
53
+ edgeIds: string[];
54
+ };
@@ -0,0 +1,5 @@
1
+ import { TDiagramSettings } from '../../store/Diagram';
2
+ import { EditableDiagram } from '../editable/EditableDiagram';
3
+ export declare class BPMDiagram extends EditableDiagram {
4
+ constructor(settings?: TDiagramSettings);
5
+ }
@@ -0,0 +1,3 @@
1
+ import { DChangeEvent } from '../../store/elements/Events';
2
+ export declare class AddLaneEvent extends DChangeEvent {
3
+ }
@@ -0,0 +1,4 @@
1
+ import { Edge } from '../../../store/elements/Edge';
2
+ export declare class EdgeWithLoad extends Edge {
3
+ setLoad(h: number): void;
4
+ }
@@ -0,0 +1,3 @@
1
+ import { BPMNode } from './BPMNode';
2
+ export declare const BPMNodeContext: import('react').Context<BPMNode | null>;
3
+ export declare function useBPMNode(): BPMNode;
@@ -0,0 +1,6 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { EditableNode } from '../../editable/EditableNode';
4
+ export declare abstract class BPMNode extends EditableNode {
5
+ constructor(parent: Element | null, state: TNodeConstructorProps);
6
+ }
@@ -0,0 +1,58 @@
1
+ import { Element } from '../../../store/elements/Element';
2
+ import { TNodeConstructorProps } from '../../../store/elements/Node';
3
+ import { BPMNode } from './BPMNode';
4
+ export declare enum EventTypes {
5
+ start = 0,
6
+ end = 1,
7
+ intermediate = 2
8
+ }
9
+ export type TEventNodeType = EventTypes;
10
+ export declare class EventNode extends BPMNode {
11
+ type: TEventNodeType;
12
+ constructor(parent: Element | null, state: TNodeConstructorProps & {
13
+ type?: TEventNodeType;
14
+ });
15
+ setType(type: TEventNodeType): void;
16
+ serialize(): {
17
+ type: EventTypes;
18
+ box: [number, number, number, number];
19
+ id: string;
20
+ label: string;
21
+ movable: boolean | undefined;
22
+ selectable: boolean | undefined;
23
+ selected: boolean | undefined;
24
+ gateways: {
25
+ coordinates: [number, number];
26
+ fill: string | undefined;
27
+ id: string;
28
+ orientation: import('../../../store/types').TOrientation;
29
+ radius: number;
30
+ stroke: string | undefined;
31
+ strokeWidth: number;
32
+ outEdges: {
33
+ arrowHeadEnd: import('../../../store/types').EdgeArrowHead | undefined;
34
+ arrowHeadStart: import('../../../store/types').EdgeArrowHead | undefined;
35
+ displacementEnd: [number, number] | undefined;
36
+ displacementStart: [number, number] | undefined;
37
+ lineStyle: import('../../../store/types').EdgeLineStyle | undefined;
38
+ pathType: import('../../../store/types').EdgePathType | undefined;
39
+ steps: import('../../../store/elements/EdgePoint').TSerializedEdgePoint[];
40
+ stroke: string | undefined;
41
+ strokeWidth: number | undefined;
42
+ to: string;
43
+ toParentId: string;
44
+ class: string;
45
+ }[];
46
+ class: string;
47
+ }[];
48
+ fill: string | undefined;
49
+ labelFontSize: number | undefined;
50
+ stroke: string | undefined;
51
+ strokewWidth: number | undefined;
52
+ class: string;
53
+ };
54
+ deserialize(o: ReturnType<this['serialize']>): void;
55
+ protected Render: (() => import("react").JSX.Element) & {
56
+ displayName: string;
57
+ };
58
+ }