@visuallyjs/browser-ui-vue 1.2.4 → 1.2.5
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.
- package/definitions.d.ts +74 -6
- package/diagram-palette-component.d.ts +8 -1
- package/package.json +1 -1
- package/palette-component.d.ts +14 -2
- package/paper-component.d.ts +8 -0
- package/shape-palette-component.d.ts +8 -1
- package/surface-component.d.ts +8 -0
- package/visuallyjs.browser-ui-vue.cjs.js +1 -1
- package/visuallyjs.browser-ui-vue.es.js +1 -1
package/definitions.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BrowserElement, CanvasDropFilter, DataGeneratorFunction, GroupIdentifierFunction, ObjectData, OnVertexAddedCallback, Size, SurfaceOptions, TypeGeneratorFunction, EdgeMapping, NodeMapping, GroupMapping, PortMapping, ModelOptions, Base, Surface, PointXY, SvgExportUIOptions, ImageExportUIOptions, DiagramCell, PaletteMode, Diagram, PreparedShape, OverlaySpec } from "@visuallyjs/browser-ui";
|
|
1
|
+
import { BrowserElement, CanvasDropFilter, DataGeneratorFunction, GroupIdentifierFunction, ObjectData, OnVertexAddedCallback, Size, SurfaceOptions, TypeGeneratorFunction, EdgeMapping, NodeMapping, GroupMapping, PortMapping, ModelOptions, Base, Surface, PointXY, SvgExportUIOptions, ImageExportUIOptions, DiagramCell, PaletteMode, Diagram, PreparedShape, OverlaySpec, AutoEdgeConnectOptions } from "@visuallyjs/browser-ui";
|
|
2
2
|
export declare const DEFAULT_VUE_SURFACE_ID = "surfaceId";
|
|
3
3
|
export declare const DEFAULT_VUE_PAPER_ID = "paperId";
|
|
4
4
|
export declare const PROP_TYPE_FUNCTION = "typeFunction";
|
|
@@ -38,6 +38,9 @@ export declare const PROP_ON_VERTEX_ADDED = "onVertexAdded";
|
|
|
38
38
|
export declare const PROP_SELECT_AFTER_ADD = "selectAfterAdd";
|
|
39
39
|
export declare const PROP_CLICK_TO_ADD_ONLY = "clickToAddOnly";
|
|
40
40
|
export declare const PROP_ALLOW_CLICK_TO_ADD = "allowClickToAdd";
|
|
41
|
+
export declare const PROP_ALLOW_ROTATION = "allowRotation";
|
|
42
|
+
export declare const PROP_ROTATION_SPEED = "rotationSpeed";
|
|
43
|
+
export declare const PROP_AUTO_EDGE_CONNECT = "autoEdgeConnect";
|
|
41
44
|
export declare const PROP_DRAG_SIZE = "dragSize";
|
|
42
45
|
export declare const PROP_CANVAS_DROP_FILTER = "canvasDropFilter";
|
|
43
46
|
export declare const TAG_SHAPE = "Shape";
|
|
@@ -442,13 +445,38 @@ export interface ShapePaletteComponentProps {
|
|
|
442
445
|
*/
|
|
443
446
|
onVertexAdded?: OnVertexAddedCallback;
|
|
444
447
|
/**
|
|
445
|
-
*
|
|
448
|
+
* Optional set of prepared shapes to show in the palette. When this is provided, the palette will only render these shapes, and not the contents of the shape library.
|
|
449
|
+
*/
|
|
450
|
+
preparedShapes?: Array<PreparedShape>;
|
|
451
|
+
/**
|
|
452
|
+
* Whether or not to allow drop on edge. Defaults to false.
|
|
453
|
+
*/
|
|
454
|
+
allowDropOnEdge?: boolean;
|
|
455
|
+
/**
|
|
456
|
+
* Whether or not to allow rotation of elements being dragged. Defaults to true.
|
|
457
|
+
*/
|
|
458
|
+
allowRotation?: boolean;
|
|
459
|
+
/**
|
|
460
|
+
* The number of milliseconds required to complete a full rotation of an element when the trigger key is held down. Defaults to 2000.
|
|
461
|
+
*/
|
|
462
|
+
rotationSpeed?: number;
|
|
463
|
+
/**
|
|
464
|
+
* If true, the palette will automatically connect a new vertex being dragged onto the canvas to existing vertices, if the shape definitions for the new vertex and/or the existing vertices have source/target elements.
|
|
465
|
+
*/
|
|
466
|
+
autoEdgeConnect?: boolean | AutoEdgeConnectOptions;
|
|
467
|
+
/**
|
|
468
|
+
* When `true`, selecting an element in the canvas will cause its related shape to be selected in the palette. Defaults to true.
|
|
446
469
|
*/
|
|
447
470
|
inspector?: boolean;
|
|
448
471
|
/**
|
|
449
|
-
*
|
|
472
|
+
* When `true`, clicking on an entry in the palette will change the type of any selected vertices to that type. Defaults to `false`.
|
|
473
|
+
* This is a potentially destructive operation if the properties of the new shape type are not compatible with the old one.
|
|
450
474
|
*/
|
|
451
|
-
|
|
475
|
+
updateTypeOnPaletteTap?: boolean;
|
|
476
|
+
/**
|
|
477
|
+
* Whether or not to show groups in the palette. Defaults to true.
|
|
478
|
+
*/
|
|
479
|
+
showGroups?: boolean;
|
|
452
480
|
}
|
|
453
481
|
/**
|
|
454
482
|
* Props for the InspectorComponent
|
|
@@ -669,9 +697,24 @@ export interface PaletteComponentProps {
|
|
|
669
697
|
* Defaults to false. When true, the palette treats nodes as if they are part of the canvas - a user can drag new items on top of existing nodes and the new item will be added to the canvas. If you want to force your users to drop on canvas whitespace, don't set this. Note that this flag will force `allowDropOnNode` to `false`.
|
|
670
698
|
*/
|
|
671
699
|
ignoreDropOnNode?: boolean;
|
|
700
|
+
/**
|
|
701
|
+
* Whether or not to allow rotation of elements being dragged. Defaults to true.
|
|
702
|
+
*/
|
|
703
|
+
allowRotation?: boolean;
|
|
704
|
+
/**
|
|
705
|
+
* The number of milliseconds required to complete a full rotation of an element when the trigger key is held down. Defaults to 2000.
|
|
706
|
+
*/
|
|
707
|
+
rotationSpeed?: number;
|
|
708
|
+
/**
|
|
709
|
+
* If true, the palette will automatically connect a new vertex being dragged onto the canvas to existing vertices, if the shape definitions for the new vertex and/or the existing vertices have source/target elements.
|
|
710
|
+
*/
|
|
711
|
+
autoEdgeConnect?: boolean | AutoEdgeConnectOptions;
|
|
712
|
+
/**
|
|
713
|
+
* Whether or not to show groups in the palette. Defaults to true.
|
|
714
|
+
*/
|
|
715
|
+
showGroups?: boolean;
|
|
672
716
|
}
|
|
673
717
|
/**
|
|
674
|
-
* Options for the DiagramPalette component
|
|
675
718
|
* @group Props
|
|
676
719
|
*/
|
|
677
720
|
export interface DiagramPaletteProps {
|
|
@@ -688,9 +731,14 @@ export interface DiagramPaletteProps {
|
|
|
688
731
|
*/
|
|
689
732
|
dragSize?: Size;
|
|
690
733
|
/**
|
|
691
|
-
*
|
|
734
|
+
* When `true`, selecting an element in the canvas will cause its related shape to be selected in the palette. Defaults to true.
|
|
692
735
|
*/
|
|
693
736
|
inspector?: boolean;
|
|
737
|
+
/**
|
|
738
|
+
* When `true`, clicking on an entry in the palette will change the type of any selected vertices to that type. Defaults to `false`.
|
|
739
|
+
* This is a potentially destructive operation if the properties of the new shape type are not compatible with the old one.
|
|
740
|
+
*/
|
|
741
|
+
updateTypeOnPaletteTap?: boolean;
|
|
694
742
|
/**
|
|
695
743
|
* Optional size to use for icons. Defaults to 150x100 pixels. If you provide this but not `dragSize` this size will also be used for an icon that is being dragged.
|
|
696
744
|
*/
|
|
@@ -740,6 +788,26 @@ export interface DiagramPaletteProps {
|
|
|
740
788
|
* Optional set of prepared shapes to show in the palette. When this is provided, the palette will only render these shapes, and not the contents of the shape library.
|
|
741
789
|
*/
|
|
742
790
|
preparedShapes?: Array<PreparedShape>;
|
|
791
|
+
/**
|
|
792
|
+
* Whether or not to allow drop on edge. Defaults to false.
|
|
793
|
+
*/
|
|
794
|
+
allowDropOnEdge?: boolean;
|
|
795
|
+
/**
|
|
796
|
+
* Whether or not to allow rotation of elements being dragged. Defaults to true.
|
|
797
|
+
*/
|
|
798
|
+
allowRotation?: boolean;
|
|
799
|
+
/**
|
|
800
|
+
* The number of milliseconds required to complete a full rotation of an element when the trigger key is held down. Defaults to 2000.
|
|
801
|
+
*/
|
|
802
|
+
rotationSpeed?: number;
|
|
803
|
+
/**
|
|
804
|
+
* If true, the palette will automatically connect a new vertex being dragged onto the canvas to existing vertices, if the shape definitions for the new vertex and/or the existing vertices have source/target elements.
|
|
805
|
+
*/
|
|
806
|
+
autoEdgeConnect?: boolean | AutoEdgeConnectOptions;
|
|
807
|
+
/**
|
|
808
|
+
* Whether or not to show groups in the palette. Defaults to true.
|
|
809
|
+
*/
|
|
810
|
+
showGroups?: boolean;
|
|
743
811
|
}
|
|
744
812
|
/**
|
|
745
813
|
* @group Props
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PropType } from "vue";
|
|
2
|
-
import { Diagram, PreparedShape, Size } from "@visuallyjs/browser-ui";
|
|
2
|
+
import { Diagram, PreparedShape, Size, AutoEdgeConnectOptions, CanDropOnEdgeFilter } from "@visuallyjs/browser-ui";
|
|
3
3
|
import { DiagramPaletteProps } from "./definitions";
|
|
4
4
|
declare const DiagramPaletteComponent: {
|
|
5
5
|
name: string;
|
|
@@ -11,6 +11,7 @@ declare const DiagramPaletteComponent: {
|
|
|
11
11
|
type: BooleanConstructor;
|
|
12
12
|
default: boolean;
|
|
13
13
|
};
|
|
14
|
+
updateTypeOnPaletteTap: BooleanConstructor;
|
|
14
15
|
iconSize: PropType<Size>;
|
|
15
16
|
showLabels: BooleanConstructor;
|
|
16
17
|
paletteStrokeWidth: NumberConstructor;
|
|
@@ -29,6 +30,12 @@ declare const DiagramPaletteComponent: {
|
|
|
29
30
|
};
|
|
30
31
|
onVertexAdded: FunctionConstructor;
|
|
31
32
|
preparedShapes: PropType<Array<PreparedShape>>;
|
|
33
|
+
allowDropOnEdge: PropType<boolean | CanDropOnEdgeFilter<any>>;
|
|
34
|
+
autoEdgeConnect: PropType<boolean | AutoEdgeConnectOptions>;
|
|
35
|
+
showGroups: {
|
|
36
|
+
type: BooleanConstructor;
|
|
37
|
+
default: boolean;
|
|
38
|
+
};
|
|
32
39
|
};
|
|
33
40
|
setup(props: DiagramPaletteProps): {
|
|
34
41
|
service: unknown;
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@visuallyjs/browser-ui-vue","version":"1.2.
|
|
1
|
+
{"name":"@visuallyjs/browser-ui-vue","version":"1.2.5","description":"VisuallyJS Vue integration","module":"visuallyjs.browser-ui-vue.es.js","main":"visuallyjs.browser-ui-vue.cjs.js","types":"index.d.ts","files":["visuallyjs.browser-ui-vue.es.js","visuallyjs.browser-ui-vue.cjs.js","**/*.d.ts"],"author":"VisuallyJs <hello@visuallyjs.com> (https://visuallyjs.com)","license":"Commercial","dependencies":{"@visuallyjs/browser-ui":"1.2.5"},"homepage":"https://visuallyjs.com/vue","bugs":"https://github.com/visuallyjs/visuallyjs/issues"}
|
package/palette-component.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PaletteComponentProps } from "./definitions";
|
|
2
2
|
import { PropType } from "vue";
|
|
3
|
-
import { BrowserElement, CanvasDropFilter, DataGeneratorFunction, GroupIdentifierFunction, ObjectData, OnVertexAddedCallback, PaletteMode, Size, TypeGeneratorFunction } from "@visuallyjs/browser-ui";
|
|
3
|
+
import { BrowserElement, CanvasDropFilter, DataGeneratorFunction, GroupIdentifierFunction, ObjectData, OnVertexAddedCallback, PaletteMode, Size, TypeGeneratorFunction, type AutoEdgeConnectOptions, CanDropOnEdgeFilter } from "@visuallyjs/browser-ui";
|
|
4
4
|
export declare const PaletteComponent: {
|
|
5
5
|
setup(props: PaletteComponentProps): {
|
|
6
6
|
service: unknown;
|
|
@@ -23,7 +23,7 @@ export declare const PaletteComponent: {
|
|
|
23
23
|
type: PropType<GroupIdentifierFunction<BrowserElement>>;
|
|
24
24
|
};
|
|
25
25
|
allowDropOnEdge: {
|
|
26
|
-
type:
|
|
26
|
+
type: PropType<boolean | CanDropOnEdgeFilter<any>>;
|
|
27
27
|
default: boolean;
|
|
28
28
|
};
|
|
29
29
|
allowDropOnCanvas: {
|
|
@@ -59,6 +59,18 @@ export declare const PaletteComponent: {
|
|
|
59
59
|
type: BooleanConstructor;
|
|
60
60
|
default: boolean;
|
|
61
61
|
};
|
|
62
|
+
allowRotation: {
|
|
63
|
+
type: BooleanConstructor;
|
|
64
|
+
default: boolean;
|
|
65
|
+
};
|
|
66
|
+
rotationSpeed: {
|
|
67
|
+
type: NumberConstructor;
|
|
68
|
+
default: number;
|
|
69
|
+
};
|
|
70
|
+
autoEdgeConnect: {
|
|
71
|
+
type: PropType<boolean | AutoEdgeConnectOptions>;
|
|
72
|
+
default: boolean;
|
|
73
|
+
};
|
|
62
74
|
};
|
|
63
75
|
mounted: () => void;
|
|
64
76
|
render: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
package/paper-component.d.ts
CHANGED
|
@@ -43,6 +43,14 @@ export declare const PaperComponent: {
|
|
|
43
43
|
overlays: Array<OverlayPlaceholder>;
|
|
44
44
|
};
|
|
45
45
|
mounted(): void;
|
|
46
|
+
watch: {
|
|
47
|
+
data: {
|
|
48
|
+
handler(newData: any): void;
|
|
49
|
+
};
|
|
50
|
+
url: {
|
|
51
|
+
handler(newUrl: any): void;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
46
54
|
render: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
47
55
|
[key: string]: any;
|
|
48
56
|
}>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PropType } from "vue";
|
|
2
|
-
import { DataGeneratorFunction, ObjectData, PreparedShape, Size } from "@visuallyjs/browser-ui";
|
|
2
|
+
import { DataGeneratorFunction, ObjectData, PreparedShape, Size, AutoEdgeConnectOptions, CanDropOnEdgeFilter } from "@visuallyjs/browser-ui";
|
|
3
3
|
import { ShapePaletteComponentProps } from "./definitions";
|
|
4
4
|
declare const ShapePaletteComponent: {
|
|
5
5
|
name: string;
|
|
@@ -24,7 +24,14 @@ declare const ShapePaletteComponent: {
|
|
|
24
24
|
type: BooleanConstructor;
|
|
25
25
|
default: boolean;
|
|
26
26
|
};
|
|
27
|
+
updateTypeOnPaletteTap: BooleanConstructor;
|
|
27
28
|
preparedShapes: PropType<Array<PreparedShape>>;
|
|
29
|
+
allowDropOnEdge: PropType<boolean | CanDropOnEdgeFilter<any>>;
|
|
30
|
+
autoEdgeConnect: PropType<boolean | AutoEdgeConnectOptions>;
|
|
31
|
+
showGroups: {
|
|
32
|
+
type: BooleanConstructor;
|
|
33
|
+
default: boolean;
|
|
34
|
+
};
|
|
28
35
|
};
|
|
29
36
|
setup(props: ShapePaletteComponentProps): {
|
|
30
37
|
service: unknown;
|
package/surface-component.d.ts
CHANGED
|
@@ -43,6 +43,14 @@ export declare const SurfaceComponent: {
|
|
|
43
43
|
overlays: Array<OverlayPlaceholder>;
|
|
44
44
|
};
|
|
45
45
|
mounted(): void;
|
|
46
|
+
watch: {
|
|
47
|
+
data: {
|
|
48
|
+
handler(newData: any): void;
|
|
49
|
+
};
|
|
50
|
+
url: {
|
|
51
|
+
handler(newUrl: any): void;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
46
54
|
render: () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
47
55
|
[key: string]: any;
|
|
48
56
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var ze=Object.defineProperty,ir=Object.defineProperties,sr=Object.getOwnPropertyDescriptor,ar=Object.getOwnPropertyDescriptors,lr=Object.getOwnPropertyNames,Mo=Object.getOwnPropertySymbols;var bo=Object.prototype.hasOwnProperty,pr=Object.prototype.propertyIsEnumerable;var wo=(e,t,o)=>t in e?ze(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,z=(e,t)=>{for(var o in t||(t={}))bo.call(t,o)&&wo(e,o,t[o]);if(Mo)for(var o of Mo(t))pr.call(t,o)&&wo(e,o,t[o]);return e},he=(e,t)=>ir(e,ar(t));var cr=(e,t)=>{for(var o in t)ze(e,o,{get:t[o],enumerable:!0})},ur=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of lr(t))!bo.call(e,s)&&s!==o&&ze(e,s,{get:()=>t[s],enumerable:!(n=sr(t,s))||n.enumerable});return e};var dr=e=>ur(ze({},"__esModule",{value:!0}),e);var xr={};cr(xr,{$initialiseVueOverlays:()=>We,AreaChartComponent:()=>st,BackgroundComponent:()=>Ao,BarChartComponent:()=>ot,BaseOverlayComponent:()=>Po,BrowserUIVueModel:()=>N,BubbleChartComponent:()=>lt,CLASS_VUE_GROUP:()=>no,CLASS_VUE_NODE:()=>ro,CLASS_VUE_OVERLAY:()=>io,COMPONENT_AREA_CHART:()=>Ue,COMPONENT_BACKGROUND:()=>Te,COMPONENT_BAR_CHART:()=>Ve,COMPONENT_BUBBLE_CHART:()=>je,COMPONENT_COLUMN_CHART:()=>be,COMPONENT_CONTROLS:()=>De,COMPONENT_DIAGRAM:()=>Me,COMPONENT_DIAGRAM_PALETTE:()=>we,COMPONENT_DIAGRAM_PROVIDER:()=>lo,COMPONENT_EXPORT_CONTROLS:()=>Ie,COMPONENT_GAUGE_CHART:()=>Fe,COMPONENT_GRID_BACKGROUND:()=>ge,COMPONENT_IMAGE_BACKGROUND:()=>Se,COMPONENT_INSPECTOR:()=>$e,COMPONENT_LINE_CHART:()=>Le,COMPONENT_MINIVIEW:()=>Re,COMPONENT_PALETTE:()=>xe,COMPONENT_PAPER:()=>Ae,COMPONENT_PAPER_PROVIDER:()=>ao,COMPONENT_PIE_CHART:()=>Ge,COMPONENT_SANKEY_CHART:()=>He,COMPONENT_SCATTER_CHART:()=>ke,COMPONENT_SURFACE:()=>Ne,COMPONENT_SURFACE_POPUP:()=>po,COMPONENT_SURFACE_PROVIDER:()=>so,COMPONENT_TILED_IMAGE_BACKGROUND:()=>ve,COMPONENT_XY_CHART:()=>Be,ColorPickerComponent:()=>No,ColumnChartComponent:()=>tt,ControlsComponent:()=>To,DEFAULT_SHAPE_HEIGHT:()=>to,DEFAULT_SHAPE_WIDTH:()=>eo,DEFAULT_VUE_PAPER_ID:()=>Rt,DEFAULT_VUE_SURFACE_ID:()=>vt,DecoratorComponent:()=>Ct,DiagramComponent:()=>vo,DiagramPaletteComponent:()=>yt,DiagramProvider:()=>_t,EVENT_VERTEX_UPDATED:()=>Uo,EVENT_VERTICES_RENDERED:()=>Lo,EdgeTypePickerComponent:()=>Et,ExportControlsComponent:()=>go,GaugeChartComponent:()=>pt,GridBackgroundComponent:()=>xo,ImageBackgroundComponent:()=>Do,InspectorComponent:()=>Pt,InspectorGetterSymbol:()=>ae,InspectorSetterSymbol:()=>Jo,LineChartComponent:()=>it,MiniviewComponent:()=>So,PROP_ACTIVE_TRACKING:()=>Dt,PROP_ALLOW_CLICK_TO_ADD:()=>Zt,PROP_ALLOW_DROP_ON_CANVAS:()=>$t,PROP_ALLOW_DROP_ON_EDGE:()=>Ht,PROP_ALLOW_DROP_ON_GROUP:()=>Wt,PROP_ALLOW_DROP_ON_NODE:()=>zt,PROP_CANVAS_DROP_FILTER:()=>Qt,PROP_CLASS_NAME:()=>K,PROP_CLICK_TO_ADD_ONLY:()=>Xt,PROP_CLICK_TO_CENTER:()=>At,PROP_CSV_DATA:()=>Bt,PROP_DATA:()=>G,PROP_DATA_GENERATOR:()=>kt,PROP_DATA_SOURCE_FILTER:()=>Je,PROP_DATA_TYPE:()=>Ee,PROP_DRAG_SIZE:()=>qt,PROP_GROUP_IDENTIFIER:()=>Ft,PROP_ID:()=>hr,PROP_IGNORE_DROP_ON_NODE:()=>Kt,PROP_INTERACTIVE:()=>bt,PROP_JSON_DATA:()=>Lt,PROP_MODE:()=>wt,PROP_MODEL:()=>Pe,PROP_MODEL_OPTIONS:()=>J,PROP_ON_VERTEX_ADDED:()=>Jt,PROP_OPTIONS:()=>Q,PROP_PAPER_ID:()=>Mt,PROP_PIVOT:()=>Vt,PROP_RENDER_OPTIONS:()=>fe,PROP_SELECTOR:()=>Gt,PROP_SELECT_AFTER_ADD:()=>Yt,PROP_SHOW_LASSO:()=>xt,PROP_SURFACE_ID:()=>U,PROP_TRACK_SELECTION:()=>It,PROP_TYPE_FUNCTION:()=>Nt,PROP_TYPE_GENERATOR:()=>jt,PROP_URL:()=>k,PROP_USE_MODEL:()=>Ut,PROP_VIEW_OPTIONS:()=>Oe,PaletteComponent:()=>Ro,PaperComponent:()=>_o,PaperProvider:()=>dt,PieChartComponent:()=>nt,SankeyChartComponent:()=>ct,ScatterChartComponent:()=>at,ShapeComponent:()=>mt,ShapePaletteComponent:()=>ft,SurfaceComponent:()=>Co,SurfacePopup:()=>Tt,SurfaceProvider:()=>ut,TAG_COLOR_PICKER:()=>oo,TAG_DECORATOR:()=>co,TAG_EDGE_TYPE_PICKER:()=>ye,TAG_SHAPE:()=>Ce,TAG_SHAPE_PALETTE:()=>_e,TiledImageBackgroundComponent:()=>Io,VisuallyJsPlugin:()=>gr,VisuallyJsService:()=>D,VisuallyJsServiceKey:()=>a,XYChartComponent:()=>rt,addPaper:()=>Eo,addSurface:()=>Oo,bindToDevLifecycle:()=>fr,doProvideInspector:()=>Yo,newInstance:()=>mr,useDiagram:()=>Nr,usePaper:()=>Ar,useSurface:()=>Rr,useVisuallyJsUpdate:()=>vr,useZoom:()=>Sr,vertexHasRendered:()=>uo,vertexHasUpdated:()=>mo,vertexWillRender:()=>Go});module.exports=dr(xr);var Ke=require("@visuallyjs/browser-ui"),N=class extends Ke.BrowserUIModel{render(t,o){return(0,Ke.log)("render called directly on BrowserUiVue class: should not happen. Surface component should use internal render."),null}};function mr(e){return e=e||{},new N(e)}var vt="surfaceId",Rt="paperId",Nt="typeFunction",At="clickToCenter",xt="showLasso",Dt="activeTracking",It="trackSelection",U="surfaceId",Mt="paperId",K="className",G="data",wt="mode",Q="options",fe="renderOptions",J="modelOptions",Pe="model",Oe="viewOptions",k="url",Ee="dataType",bt="interactive",Vt="pivot",Je="dataSourceFilter",Bt="csvData",Lt="jsonData",Ut="useModel",hr="id",Gt="selector",kt="dataGenerator",jt="typeGenerator",Ft="groupIdentifier",Ht="allowDropOnEdge",$t="allowDropOnCanvas",Wt="allowDropOnGroup",zt="allowDropOnNode",Kt="ignoreDropOnNode",Jt="onVertexAdded",Yt="selectAfterAdd",Xt="clickToAddOnly",Zt="allowClickToAdd",qt="dragSize",Qt="canvasDropFilter",Ce="Shape",_e="ShapePalette",eo=120,to=90,ye="EdgeTypePickerComponent",oo="ColorPickerComponent",ro="vjs-vue-node",no="vjs-vue-group",io="vjs-vue-overlay",Te="BackgroundComponent",ge="GridBackgroundComponent",Se="ImageBackgroundComponent",ve="TiledImageBackgroundComponent",Re="MiniviewComponent",Ne="SurfaceComponent",so="SurfaceProvider",Ae="PaperComponent",ao="PaperProvider",lo="DiagramProvider",xe="PaletteComponent",De="ControlsComponent",Ie="ExportControlsComponent",Me="DiagramComponent",we="DiagramPaletteComponent",be="ColumnChartComponent",Ve="BarChartComponent",Be="XYChartComponent",Le="LineChartComponent",Ue="AreaChartComponent",Ge="PieChartComponent",ke="ScatterChartComponent",je="BubbleChartComponent",Fe="GaugeChartComponent",He="SankeyChartComponent",$e="InspectorComponent",po="SurfacePopup",co="Decorator";var j=require("@visuallyjs/browser-ui"),Ye={props:{data:Object,model:N,obj:j.Vertex,vertex:j.Vertex,ui:j.BrowserUI,el:Element,def:Object,eventInfo:Object},mounted(){let e=this,t=(0,j.isGroup)(e.vertex)?no:ro;e.el.firstElementChild&&(0,j.addClass)(e.el.firstElementChild,t),e.ui.$vertexRendered(e.vertex,e.el,e.def,e.eventInfo),uo(e.ui.id,e.vertex)},methods:{getModel:function(){return this.model},removeVertex:function(){this.model.remove(this.vertex)}},updated(){this.ui.$revalidateElement(this.el),mo(this.ui.id,this.vertex)}};var Vo={mixins:[Ye],methods:{getNode:function(){return this.obj},removeNode:function(){this.model.removeNode(this.getNode())},updateNode:function(e){this.model.updateNode(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}}};var Bo={methods:{getGroup:function(){return this.obj},removeGroup:function(e){this.model.removeGroup(this.obj,e)},updateGroup:function(e){this.model.updateGroup(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}},mixins:[Ye]};var A=require("vue"),u=require("@visuallyjs/browser-ui"),ho=class{constructor(){this.unrenderedVertices=new Map;this.eventManager=new u.OptimisticEventGenerator}vertexWillRender(t){this.unrenderedVertices.set(t.id,t)}vertexHasRendered(t){this.unrenderedVertices.delete(t.id),this.unrenderedVertices.size===0&&this.eventManager.fire(Lo)}vertexHasUpdated(t){this.eventManager.fire(Uo,t)}},Lo="vertices:rendered",Uo="vertex:updated",fo=new Map;function Xe(e){return fo.has(e)||fo.set(e,new ho),fo.get(e)}function uo(e,t){Xe(e).vertexHasRendered(t)}function mo(e,t){Xe(e).vertexHasUpdated(t)}function Go(e,t){Xe(e).vertexWillRender(t)}function fr(e,t,o){Xe(e).eventManager.bind(t,o)}var Ze=(e,t)=>{t.parentNode&&t.parentNode.removeChild(t)},Po={props:{data:Object,model:N,obj:u.Edge,edge:u.Edge,overlay:u.Overlay,ui:u.BrowserUI,el:Element,def:Object,eventInfo:Object},mounted(){let e=this;e.el.firstElementChild&&(0,u.addClass)(e.el.firstElementChild,io)},updated(){this.ui.$revalidateElement(this.el)}},qe=(e,t,o,n,s,c,r,l,p)=>{let f=r.component!=null,m=(0,u.isGroup)(l),y=[];f||y.push(m?u.CLASS_DEFAULT_GROUP:u.CLASS_DEFAULT_NODE);let C=f?r.component:{render(g){return g.data.label||""}};if(C){let g=document.createElement(u.ELEMENT_DIV);(0,u.updateClasses)(g,y),C.mixins==null&&(C.mixins=[]);let R=m?Bo:Vo;C.mixins.find(L=>L===R)||C.mixins.push(R),Go(c.id,l);let q={data:o,model:(0,A.markRaw)(n),ui:(0,A.markRaw)(c),obj:(0,A.markRaw)(l),vertex:(0,A.markRaw)(l),el:g,def:(0,A.markRaw)(r),eventInfo:p==null?null:(0,A.markRaw)(p)};if(r.inject)for(let L in r.inject){let W=r.inject[L],nr=typeof W=="function"?W(l,n):W;q[L]=nr}e.push({component:(0,A.markRaw)(C),el:g,e:l.getFullId(),props:q,vertex:l})}};function Oo(e,t,o,n,s,c){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(p,f,m,y)=>{},render:(p,f,m,y,C,g,R,H)=>qe(n,p,f,m,y,C,g,R,H),cleanupVertex:Ze,cleanupPort:Ze,rerender:(p,f,m,y,C,g,R,H,q)=>{let L=n.findIndex(W=>W.vertex===R);L!=null&&n.splice(L,1)[0].el,C.$__unmanage(q,!0,!0),requestAnimationFrame(()=>{qe(n,p,f,m,y,C,g,R,H)})}},l=(0,u.extend)(s||{},{view:c||{},id:t});return(0,u.renderSurface)(e,o,r,l)}function Eo(e,t,o,n,s,c){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(p,f,m,y)=>{},render:(p,f,m,y,C,g,R,H)=>qe(n,p,f,m,y,C,g,R,H),cleanupVertex:Ze,cleanupPort:Ze,rerender:(p,f,m,y,C,g,R,H,q)=>{let L=n.findIndex(W=>W.vertex===R);L!=null&&n.splice(L,1)[0].el,C.$__unmanage(q,!0,!0),requestAnimationFrame(()=>{qe(n,p,f,m,y,C,g,R,H)})}},l=(0,u.extend)(s||{},{view:c||{},id:t});return(0,u.renderPaper)(e,o,r,l)}function We(e,t,o,n){if(e.edges)for(let s in e.edges){let c=e.edges[s];c.overlays&&(c.overlays=c.overlays.map(r=>{let l={};return r.component!=null?{type:u.OVERLAY_TYPE_CUSTOM,options:{create:f=>{let m=document.createElement(u.ELEMENT_DIV),y=(0,u.uuid)();r.component.mixins==null&&(r.component.mixins=[]),r.component.mixins.indexOf(Po)===-1&&r.component.mixins.push(Po);let C=z({data:f.edge.data,model:(0,A.markRaw)(o()),ui:(0,A.markRaw)(t()),obj:f.edge,edge:f.edge,el:m,def:(0,A.markRaw)(r),eventInfo:null,overlay:r},l);return n.push({component:(0,A.markRaw)(r.component),el:m,e:y,props:C}),m}}}:r}))}}var Y=require("@visuallyjs/browser-ui"),ee=require("vue"),a=Symbol.for("visuallyjs-service"),D=class{constructor(t){this.context=t;this.i=[];this.s=[];this.a=[];this.l=[];this.surface=(0,ee.shallowRef)(null);this.model=(0,ee.shallowRef)(null);this.paper=(0,ee.shallowRef)(null);this.diagram=(0,ee.shallowRef)(null);this.ui=(0,ee.shallowRef)(null)}getSurface(t){this.t(this.s,t,this.p)}getDiagram(t){this.t(this.a,t,this.c)}getPaper(t){this.t(this.l,t,this.u)}getModel(t){this.t(this.i,t,this.r)}getModelDirect(){return this.r}t(t,o,n){if(n!=null)try{o(n)}catch(s){(0,Y.log)(`WARN: could not dispatch ${s}`)}else t.push(o)}setSurface(t){this.surface.value=t,this.model.value=t.model,this.ui.value=t,this.p=t,this.n(t.model),this.o(this.s,t)}setDiagram(t){this.diagram.value=t,this.model.value=t.model,this.ui.value=t.$ui,this.c=t,this.n(t.model),t.$ui instanceof Y.Surface?this.setSurface(t.$ui):t.$ui instanceof Y.Paper&&this.setPaper(t.$ui),this.o(this.a,t)}setPaper(t){this.paper.value=t,this.model.value=t.model,this.ui.value=t,this.u=t,this.n(t.model),this.o(this.l,t)}n(t){this.r=t,this.o(this.i,t)}o(t,o){t.forEach(n=>{try{n(o)}catch(s){(0,Y.log)(`WARN: could not flush all queue entries ${s}`)}})}};var I=require("vue"),P=require("@visuallyjs/browser-ui"),Co={setup(e){return{service:(0,I.inject)(a),surfaceId:e.surfaceId||vt}},name:Ne,props:{[G]:{type:Object},[fe]:{type:Object},[J]:{type:Object},[Oe]:{type:Object},[Pe]:{type:Object},[k]:{type:String},[Ee]:{type:String},[U]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new N(this.modelOptions||{}),o=this.$refs.root;e.url?t.load({url:e.url,dataType:e.dataType}):e.data&&t.load({data:e.data,dataType:e.dataType});let n=(0,P.clone)(this.viewOptions||{});We(n,()=>this.surface,()=>t,this.overlays),this.surface=Oo(t,this.surfaceId,o,this.vertices,(0,P.clone)(this.renderOptions||{}),n),this.service.setSurface(this.surface);let s=(r,l)=>{let p=()=>{let m={};return l.originalData||l.updates?m=Object.assign(l.originalData,l.updates):l.newData&&Object.assign(m,l.newData),m},f=this.vertices.find(m=>m.e===r);f!=null&&(f.props.data=p())},c=r=>{let l=this.vertices.findIndex(p=>p.e===r);l!==-1&&this.vertices.splice(l,1)};t.bind(P.EVENT_NODE_UPDATED,r=>{s(r.vertex.getFullId(),r)}),t.bind(P.EVENT_GROUP_UPDATED,r=>{s(r.vertex.getFullId(),r)}),t.bind(P.EVENT_NODE_REMOVED,r=>{c(r.node.id)}),t.bind(P.EVENT_GROUP_REMOVED,r=>{c(r.group.id)}),t.bind(P.EVENT_EDGE_UPDATED,r=>{let l=r.edge.id;this.overlays.forEach(p=>{p.props.edge&&p.props.edge.id===l&&(p.props.data=r.edge.data)})}),t.bind(P.EVENT_EDGE_REMOVED,r=>{let l=r.edge.id,p=this.overlays.length-1;for(;p>=0;)this.overlays[p].props.edge&&this.overlays[p].props.edge.id===l&&this.overlays.splice(p,1),p--}),t.bind(P.EVENT_GRAPH_CLEARED,()=>{this.vertices.length=0,this.overlays.length=0}),this.surface.bind(P.EVENT_RENDER_END,()=>setTimeout(()=>this.surface.$redrawEveryConnection()))},render:function(){let e=this.vertices.map(t=>(0,I.h)(I.Teleport,{to:t.el,key:t.e},[(0,I.h)(t.component,t.props)]));return this.overlays.forEach(t=>{e.push((0,I.h)(I.Teleport,{to:t.el,key:t.e},[(0,I.h)(t.component,t.props)]))}),(0,I.h)(P.ELEMENT_DIV,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};var M=require("vue"),O=require("@visuallyjs/browser-ui"),_o={setup(e){return{service:(0,M.inject)(a),paperId:e.paperId||Rt}},name:Ae,props:{[G]:{type:Object},[fe]:{type:Object},[J]:{type:Object},[Oe]:{type:Object},[Pe]:{type:Object},[k]:{type:String},[Ee]:{type:String},[Mt]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new N(this.modelOptions||{}),o=this.$refs.root;e.url?t.load({url:e.url,dataType:e.dataType}):e.data&&t.load({data:e.data,dataType:e.dataType});let n=(0,O.clone)(this.viewOptions||{});We(n,()=>this.paper,()=>t,this.overlays),this.paper=Eo(t,this.paperId,o,this.vertices,(0,O.clone)(this.renderOptions||{}),n),this.service.setPaper(this.paper);let s=(r,l)=>{let p=()=>{let m={};return l.originalData||l.updates?m=Object.assign(l.originalData,l.updates):l.newData&&Object.assign(m,l.newData),m},f=this.vertices.find(m=>m.e===r);f!=null&&(f.props.data=p())},c=r=>{let l=this.vertices.findIndex(p=>p.e===r);l!==-1&&this.vertices.splice(l,1)};t.bind(O.EVENT_NODE_UPDATED,r=>{s(r.vertex.getFullId(),r)}),t.bind(O.EVENT_GROUP_UPDATED,r=>{s(r.vertex.getFullId(),r)}),t.bind(O.EVENT_NODE_REMOVED,r=>{c(r.node.id)}),t.bind(O.EVENT_GROUP_REMOVED,r=>{c(r.group.id)}),t.bind(O.EVENT_EDGE_UPDATED,r=>{let l=r.edge.id;this.overlays.forEach(p=>{p.props.edge&&p.props.edge.id===l&&(p.props.data=r.edge.data)})}),t.bind(O.EVENT_EDGE_REMOVED,r=>{let l=r.edge.id,p=this.overlays.length-1;for(;p>=0;)this.overlays[p].props.edge&&this.overlays[p].props.edge.id===l&&this.overlays.splice(p,1),p--}),t.bind(O.EVENT_GRAPH_CLEARED,()=>{this.vertices.length=0,this.overlays.length=0}),this.paper.bind(O.EVENT_RENDER_END,()=>setTimeout(()=>this.paper.$redrawEveryConnection()))},render:function(){let e=this.vertices.map(t=>(0,M.h)(M.Teleport,{to:t.el,key:t.e},[(0,M.h)(t.component,t.props)]));return this.overlays.forEach(t=>{e.push((0,M.h)(M.Teleport,{to:t.el,key:t.e},[(0,M.h)(t.component,t.props)]))}),(0,M.h)(O.ELEMENT_DIV,{ref:"root",class:"vjs-vue-paper",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};var d=require("vue"),i=require("@visuallyjs/browser-ui"),Pr="Clear dataset?",yo="vjs-selected-mode",ko="can-undo",jo="can-redo",Or="data-undo",Er="data-redo",Fo="data-mode",Cr="data-reset",_r="data-clear",yr="data-zoom-in",Tr="data-zoom-out",Ho="vjs-controls-has-selection",To={setup(e){return{service:(0,d.inject)(a)}},name:De,props:{clear:{type:Boolean,default:!0},[U]:{type:String},undoRedo:{type:Boolean,default:!0},orientation:{type:String,default:"row"},zoomToExtents:{type:Boolean,default:!0},zoomButtons:{type:Boolean,default:!1},clearMessage:{type:String,default:Pr},onMaybeClear:{type:Function},className:{type:String,default:""}},methods:{panMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(i.SURFACE_MODE_PAN)},selectMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(i.SURFACE_MODE_SELECT)},zoomToFit:function(){var e;(e=this.service.surface.value)==null||e.zoomToFit()},doClear:function(){let e=this.service.surface.value;e&&(this.onMaybeClear!=null?this.onMaybeClear(()=>e.model.clear()):window.confirm(this.clearMessage)&&e.model.clear())},undo:function(){var e;(e=this.service.model.value)==null||e.undo()},redo:function(){var e;(e=this.service.model.value)==null||e.redo()},zoomIn:function(){var e;(e=this.service.surface.value)==null||e.zoomIn()},zoomOut:function(){var e;(e=this.service.surface.value)==null||e.zoomOut()},resetSelection(){let e=this.service.surface.value;e&&(e.model.clearSelection(),(0,i.supportsPathEditing)(e)&&e.stopEditingPath())},updateSelectionState:function(){let e=this.service.surface.value;e&&(e.model.getSelection().isEmpty()?this.$refs.root.removeAttribute(Ho):this.$refs.root.setAttribute(Ho,"true"))}},data:function(){return{ready:!1,hasLasso:!1}},render(){if(this.ready){let e=[];return this.showPan&&(e.push((0,d.h)("i",{class:`vjs-pan-mode ${yo}`,[Fo]:i.SURFACE_MODE_PAN,onClick:()=>this.panMode(),title:"Pan mode"},[(0,d.h)("svg",{viewBox:i.PAN_VIEW_BOX,stroke:"currentColor",fill:"none"},[(0,d.h)("path",{d:i.PAN_PATH})])])),e.push((0,d.h)("i",{class:"vjs-select-mode",[Fo]:i.SURFACE_MODE_SELECT,onClick:()=>this.selectMode(),title:"Select mode"},[(0,d.h)("svg",{viewBox:i.LASSO_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.LASSO_PATH})])]))),this.undoRedo&&(e.push((0,d.h)("i",{class:"vjs-undo",[Or]:!0,title:"Undo last action",onClick:()=>this.undo()})),e.push((0,d.h)("i",{class:"vjs-redo",[Er]:!0,title:"Redo last action",onClick:()=>this.redo()}))),this.zoomToExtents&&e.push((0,d.h)("i",{class:"vjs-zoom-to-fit",[Cr]:"true",onClick:()=>this.zoomToFit(),title:"Zoom to Fit"},[(0,d.h)("svg",{viewBox:i.ZOOM_TO_FIT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.ZOOM_TO_FIT_PATH})])])),this.zoomButtons&&(e.push((0,d.h)("i",{class:"vjs-zoom-in",[yr]:"true",onClick:()=>this.zoomIn(),title:"Zoom In"},[(0,d.h)("svg",{viewBox:i.ZOOM_IN_OUT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.ZOOM_IN_PATH})])])),e.push((0,d.h)("i",{class:"vjs-zoom-out",[Tr]:"true",onClick:()=>this.zoomOut(),title:"Zoom Out"},[(0,d.h)("svg",{viewBox:i.ZOOM_IN_OUT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.ZOOM_OUT_PATH})])]))),e.push((0,d.h)("i",{class:i.CLASS_CONTROLS_RESET_SELECTION,[i.ATTRIBUTE_RESET_SELECTION]:"true",onClick:()=>{this.resetSelection()}},[(0,d.h)("svg",{viewBox:i.RESET_SELECTION_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.RESET_SELECTION_PATH})])])),this.clear&&e.push((0,d.h)("i",{class:"vjs-clear-dataset",[_r]:"true",onClick:()=>{this.doClear()}},[(0,d.h)("svg",{viewBox:i.CLEAR_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,d.h)("path",{d:i.CLEAR_PATH})])])),(0,d.h)(i.ELEMENT_DIV,{class:`vjs-controls ${this.className}`,ref:"root",[ko]:!1,[jo]:!1,[i.ATTRIBUTE_CONTROLS_ORIENTATION]:this.orientation},e)}else return(0,d.h)(i.ELEMENT_DIV,{ref:"root"})},mounted(){let e=t=>{let o=t.getPlugin(i.LassoPlugin.type);this.showPan=o!=null,t.bind(i.EVENT_SURFACE_MODE_CHANGED,n=>{t.removeClass(t.$getSelector(this.$refs.root,"[data-mode]"),yo),t.addClass(t.$getSelector(this.$refs.root,"[data-mode='"+n+"']"),yo)}),t.model.bind(i.EVENT_UNDOREDO_UPDATE,n=>{this.$refs.root.setAttribute(ko,n.undoCount>0?i.TRUE:i.FALSE),this.$refs.root.setAttribute(jo,n.redoCount>0?i.TRUE:i.FALSE)}),t.model.bind(i.EVENT_SELECT,()=>this.updateSelectionState()),t.model.bind(i.EVENT_DESELECT,()=>this.updateSelectionState()),t.model.bind(i.EVENT_SELECTION_CLEARED,()=>this.updateSelectionState()),this.ready=!0};this.service.surface.value==null?(0,d.watch)(this.service.surface,e):e(this.service.surface.value)}};var w=require("vue"),_=require("@visuallyjs/browser-ui"),go={name:Ie,setup(e){return{service:(0,w.inject)(a)}},props:{surfaceId:{type:String},showLabel:{type:Boolean,default:!0},label:{type:String,default:"Export :"},margins:{type:Object},svgOptions:{type:Object},imageOptions:{type:Object},allowSvgExport:{type:Boolean,default:!0},allowPngExport:{type:Boolean,default:!0},allowJpgExport:{type:Boolean,default:!0}},methods:{loadSurface:function(e){let t=this.service.surface.value;t&&e(t)},exportSVG:function(){this.loadSurface(e=>{let t=this.svgOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new _.SvgExportUI(e).export(t)})},exportJPG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),t.type="image/jpeg",new _.ImageExportUI(e).export(t)})},exportPNG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new _.ImageExportUI(e).export(t)})}},render(){let e=this.showLabel!==!1,t=this.allowSvgExport!==!1,o=this.allowPngExport!==!1,n=this.allowJpgExport!==!1,s=[];return t&&s.push((0,w.h)("i",{},[(0,w.h)("a",{href:"#","data-type":_.TYPE_SVG,onClick:()=>this.exportSVG()},"SVG")])),o&&s.push((0,w.h)("i",{},[(0,w.h)("a",{href:"#","data-type":_.TYPE_PNG,onClick:()=>this.exportPNG()},"PNG")])),n&&s.push((0,w.h)("i",{},[(0,w.h)("a",{href:"#","data-type":_.TYPE_JPG,onClick:()=>this.exportJPG()},"JPG")])),e&&s.unshift((0,w.h)("span",{},[this.label])),(0,w.h)(_.ELEMENT_DIV,{class:`${_.CLASS_CONTROLS} ${_.CLASS_EXPORT_CONTROLS}`},s)}};var X=require("vue"),Qe=require("@visuallyjs/browser-ui"),So={setup(e){return{service:(0,X.inject)(a)}},name:Re,props:{[U]:{type:String},[K]:{type:String,default:""},[Dt]:{type:Boolean,default:!0},[At]:{type:Boolean,default:!0},[xt]:{type:Boolean,default:!0},[It]:{type:Boolean,default:!0},[Nt]:{type:Function}},mounted:function(){let e=t=>{t.addPlugin({type:Qe.MiniviewPlugin.type,options:{container:this.$el,activeTracking:this.activeTracking,clickToCenter:this.clickToCenter,showLasso:this.showLasso,trackSelection:this.trackSelection,typeFunction:this.typeFunction}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,X.watch)(this.service.surface,e),(0,X.watch)(this.service.paper,e))},render:function(e){return(0,X.h)(Qe.ELEMENT_DIV,{ref:"root",class:e.className})}};var te=require("vue"),et=require("@visuallyjs/browser-ui"),vo={setup(e){return{service:(0,te.inject)(a)}},name:Me,props:{[G]:{type:Object},[k]:{type:String},[J]:{type:Object},[Q]:{type:Object}},mounted(){let e=this.$refs.root;this.diagram=(0,te.markRaw)((0,et.createDiagram)(e,this.options,this.modelOptions)),this.service.setDiagram(this.diagram),this.data?this.diagram.load({data:this.data}):this.url&&this.diagram.load({url:this.url})},render:function(){return(0,te.h)(et.ELEMENT_DIV,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var $=require("vue"),h=require("@visuallyjs/browser-ui"),$o={[K]:{type:String},[G]:{type:Object},[k]:{type:String},[Ut]:{type:Boolean,default:!1}},Wo={setup(){return{service:(0,$.inject)(a)}},render:function(){return(0,$.h)(h.ELEMENT_DIV,{class:`${this.className}`,ref:"root"})}};function F(e,t,o=!0){let n=he(z({},$o),{[Q]:{type:Object}}),s={};return o&&(n[Je]={type:Function},s[Je]=function(c){this.chart.setDataSourceFilter(c)}),he(z({},Wo),{name:e,props:n,watch:s,data:()=>({hasMounted:!1}),mounted(){let c=this.$refs.root,r=o?Object.assign({dataSourceFilter:this.dataSourceFilter},this.options):this.options;this.data&&(r.data=this.data),this.url&&(r.url=this.url);let l=()=>{this.hasMounted=!0,this.chart=new t(c,r)};this.useModel?this.service.model.value!=null?(r.dataSource=this.service.model.value,l()):(0,$.watch)(this.service.model,p=>{this.hasMounted||(r.dataSource=p,l())}):l()}})}var tt=F(be,h.ColumnChart),ot=F(Ve,h.BarChart),rt=F(Be,h.CategoryValueChart,!1),nt=F(Ge,h.PieChart),it=F(Le,h.LineChart),st=F(Ue,h.AreaChart),at=F(ke,h.ScatterChart),lt=F(je,h.BubbleChart),pt=F(Fe,h.GaugeChart,!1),ct=he(z({},Wo),{name:He,props:he(z({},$o),{[Bt]:{type:String},[Lt]:{type:Object},[bt]:{type:Boolean},[Vt]:{type:String},[Q]:{type:Object}}),data:()=>({hasMounted:!1}),mounted(){let e=this.$refs.root,t=Object.assign({},this.options);this.interactive!=null&&(t.interactive=this.interactive),this.pivot!=null&&(t.pivot=this.pivot),this.csvData&&(t.csvData=this.csvData),this.jsonData&&(t.jsonData=this.jsonData),this.url&&(t.url=this.url);let o=()=>{this.hasMounted=!1,this.chart=new h.SankeyChart(e,t)};if(this.useModel){let n=s=>{this.hasMounted||(t.dataSource=s,o())};this.service.model.value==null?(0,$.watch)(this.service.model,n):n(this.service.model.value)}else o()},watch:{pivot(e){this.chart&&this.chart.pivot(e)}},render:function(){return(0,$.h)(h.ELEMENT_DIV,{class:`${this.className}`,ref:"root"})}});var oe=require("vue"),re=require("@visuallyjs/browser-ui"),Ro={setup(e){return{service:(0,oe.inject)(a)}},name:xe,props:{[U]:{type:String},[Gt]:{type:String},[kt]:{type:Function},[jt]:{type:Function},[Ft]:{type:Function},[Ht]:{type:Boolean,default:!1},[$t]:{type:Boolean,default:!0},[Wt]:{type:Boolean,default:!0},[zt]:{type:Boolean,default:!1},[Kt]:{type:Boolean,default:!1},[qt]:Object,[Jt]:Function,[Qt]:Function,[K]:String,[wt]:String,[Yt]:{type:Boolean,default:!1},[Zt]:{type:Boolean,default:!1},[Xt]:{type:Boolean,default:!1}},mounted:function(){let e=t=>{let o={source:this.$refs.root,selector:this.selector,dataGenerator:n=>this.dataGenerator?this.dataGenerator(n):(0,re.defaultDataGenerator)(n),allowDropOnEdge:this.allowDropOnEdge===!0,allowDropOnGroup:this.allowDropOnGroup!==!1,allowDropOnCanvas:this.allowDropOnCanvas!==!1,allowDropOnNode:this.allowDropOnNode===!0,ignoreDropOnNode:this.ignoreDropOnNode===!0,canvasDropFilter:this.canvasDropFilter,onVertexAdded:this.onVertexAdded,dragSize:this.dragSize,mode:this.mode};this.groupIdentifier!=null&&(o.groupIdentifier=this.groupIdentifier),this.typeGenerator!=null&&(o.typeGenerator=this.typeGenerator),this.palette=new re.Palette(t,o)};this.service.surface.value==null?(0,oe.watch)(this.service.surface,e):e(this.service.surface.value)},render:function(){return(0,oe.h)(re.ELEMENT_DIV,{ref:"root",class:this.className||""},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var zo=require("vue"),ut={setup(){(0,zo.provide)(a,new D("SurfaceProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var Ko=require("vue"),dt={setup(){(0,Ko.provide)(a,new D("PaperProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var ne=require("vue"),b=require("@visuallyjs/browser-ui"),mt={name:Ce,props:{data:{type:Object},showLabels:{type:Boolean,default:!1},labelProperty:{type:String,default:"label"},labelStrokeWidth:{type:Number},multilineLabels:{type:Boolean,default:!0},labelFillRatio:{type:Number,default:b.DEFAULT_LABEL_FILL_RATIO},labelColor:{type:String,default:"#000000"},font:{type:Object}},setup(){return{service:(0,ne.inject)(a)}},mounted(){let e=t=>{let o=t.getShapeLibrary(),n=o.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.appendChild(n),this.showLabels){let s=o.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(s),this.multilineLabels!=!1&&(0,b.convertToMultilineText)(s,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||b.DEFAULT_LABEL_FILL_RATIO))}};this.service.ui.value==null?(0,ne.watch)(this.service.ui,e):e(this.service.ui.value)},updated(){let e=this.service.surface.value;if(e){let t=e.getShapeLibrary(),o=t.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.replaceChildren(o),this.showLabels){let n=t.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(n),this.multilineLabels!=!1&&(0,b.convertToMultilineText)(n,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||b.DEFAULT_LABEL_FILL_RATIO))}}},render:function(){return(0,ne.h)(b.ELEMENT_SVG,{ref:"container",preserveAspectRatio:"none",fill:this.getFill(),stroke:this.getOutline(),"stroke-width":this.getOutlineWidth(),viewBox:"0 0 "+this.getWidth()+" "+this.getHeight(),class:b.CLASS_SHAPE})},methods:{getWidth:function(){return this.data.width||eo},getHeight:function(){return this.data.height||to},getFill:function(){return this.data.fill||"#FFFFFF"},getOutline:function(){return this.data.outline||"#000000"},getOutlineWidth(){return this.data.outlineWidth||2}}};var ie=require("vue"),ht=require("@visuallyjs/browser-ui"),ft={name:_e,props:{surfaceId:{type:String},dragSize:Object,iconSize:Object,fill:String,outline:String,showAllMessage:String,selectAfterDrop:Boolean,paletteStrokeWidth:Number,dataGenerator:Function,initialSet:String,mode:String,allowClickToAdd:Boolean,onVertexAdded:Function,showLabels:Boolean,inspector:{type:Boolean,default:!0},preparedShapes:Array},setup(e){return{service:(0,ie.inject)(a)}},data:()=>({hasMounted:!1}),mounted(){let e=t=>{this.hasMounted||(this.hasMounted=!0,new ht.ShapePalette(t,{container:this.$refs.container,shapeLibrary:t.getShapeLibrary(),dragSize:this.dragSize,iconSize:this.iconSize,fill:this.fill,outline:this.outline,showAllMessage:this.showAllMessage,selectAfterDrop:this.selectAfterDrop,paletteStrokeWidth:this.paletteStrokeWidth,dataGenerator:this.dataGenerator,initialSet:this.initialSet,mode:this.mode,allowClickToAdd:this.allowClickToAdd,onVertexAdded:this.onVertexAdded,showLabels:this.showLabels,inspector:this.inspector,preparedShapes:this.preparedShapes}))};this.service.surface.value==null?(0,ie.watch)(this.service.surface,e):e(this.service.surface.value)},render:function(){return(0,ie.h)(ht.ELEMENT_DIV,{ref:"container"})}};var V=require("vue"),se=require("@visuallyjs/browser-ui"),ae=Symbol.for("VueInspectorGetter"),Jo=Symbol.for("VueInspectorSetter");function Yo(){let e=[],t=null;function o(c){try{c(t)}catch(r){(0,se.log)("WARN: inspector listener threw an exception",r)}}let n={listen:c=>{t!=null?o(c):e.push(c)}},s={inspector:c=>{t=c,e.forEach(o)}};return(0,V.provide)(Jo,s),(0,V.provide)(ae,(0,V.readonly)(n)),s}var Pt={name:$e,props:{autoCommit:{type:Boolean,default:!0},multipleSelections:{type:Boolean,default:!0},filter:Function,renderEmptyContainer:Function,refresh:Function,className:String,showCloseButton:Boolean,afterUpdate:Function,modelValue:Object},emits:["update:modelValue"],setup(e,t){let o=Yo();return{service:(0,V.inject)(a),inspectorProvider:o,inspector:null,emit:t.emit}},mounted(){let e=t=>{if(this.inspector==null){let o=new se.Inspector({container:this.$refs.root,ui:t,renderEmptyContainer:()=>(this.emit("update:modelValue",null),this.renderEmptyContainer?this.renderEmptyContainer():""),refresh:(n,s)=>{this.emit("update:modelValue",n),this.refresh&&this.refresh(n),setTimeout(s)},autoCommit:this.autoCommit,multipleSelections:this.multipleSelections,filter:this.filter,showCloseButton:this.showCloseButton,afterUpdate:()=>this.afterUpdate?this.afterUpdate(t):null});this.inspectorProvider.inspector(o)}};this.service.surface.value==null?(0,V.watch)(this.service.surface,e):e(this.service.surface.value)},render(){return(0,V.h)(se.ELEMENT_DIV,{ref:"root"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var Ot=require("vue"),le=require("@visuallyjs/browser-ui"),Et={name:ye,props:{propertyName:String},setup(){return{inspectorProvider:(0,Ot.inject)(ae)}},mounted(){this.inspectorProvider?this.inspectorProvider.listen(e=>{let t=new le.EdgeTypePicker(e.$ui,this.$refs.container,e.$ui.$getEdgePropertyMappings(),e.getValue(this.propertyName),(o,n)=>{e.setValue(this.propertyName,n,null)});t.render(this.propertyName,e.m),e.onChange(()=>{t.select(this.propertyName,e.getValue(this.propertyName))})}):(0,le.log)("WARN: EdgeTypePicker not instantiated inside an InspectorComponent. Cannot mount.")},render:function(){return(0,Ot.h)(le.ELEMENT_DIV,{ref:"container"})}};var Z=require("vue"),E=require("@visuallyjs/browser-ui"),No={render(){let e=this.swatches.map(t=>(0,Z.h)(E.ELEMENT_DIV,{title:t,class:E.CLASS_COLOR_PICKER_SWATCH,style:`background-color:${t}`,"data-color":t,onClick:()=>this.selectSwatch(t)}));return(0,Z.h)(E.ELEMENT_DIV,{class:`${E.CLASS_COLOR_PICKER}`},[(0,Z.h)("input",{type:"color","vjs-att":this.propertyName,ref:"colorInput"}),(0,Z.h)(E.ELEMENT_DIV,{class:E.CLASS_COLOR_PICKER_SWATCHES},e)])},props:{propertyName:String,maxColors:{type:Number,default:10}},data:()=>({CLASS_COLOR_PICKER:E.CLASS_COLOR_PICKER,CLASS_COLOR_PICKER_SWATCHES:E.CLASS_COLOR_PICKER_SWATCHES,CLASS_COLOR_PICKER_SWATCH:E.CLASS_COLOR_PICKER_SWATCH,colorInput:null,swatches:[]}),mounted(){let e=(0,Z.inject)(ae);e&&e.listen(t=>{this.inspector=t,this.swatches=t.ensureContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,()=>[]),this.colorInput=this.$refs.colorInput,this.colorInput.addEventListener("change",this.colorPicked),t.bind(E.EVENT_CONTEXT_UPDATE,o=>{o.key===E.INSPECTOR_CONTEXT_RECENT_COLORS&&(this.swatches=o.value.slice())}),t.bind("change",this.setCurrentColor),this.setCurrentColor()})},methods:{addColor:function(e){let t=this.inspector.ensureContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,()=>[]);if(e=e.toUpperCase(),!(t.find(n=>n.toUpperCase()===e)!=null)){let n=this.maxColors||10,s=t.slice();s.unshift(e),s.length>n&&(s.length=n),this.inspector.updateContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,s)}},colorPicked:function(){let e=this.colorInput.value;this.inspector.setValue(this.propertyName,e,null),this.addColor(e)},selectSwatch:function(e){this.inspector.setValue(this.propertyName,e,null),this.colorInput.value=e},setCurrentColor:function(){let e=this.inspector.getValue(this.propertyName);e!=null&&(this.colorInput.value=e,this.addColor(e))}}};var S=require("vue"),pe=require("@visuallyjs/browser-ui"),Ct={props:{placement:{type:String,default:"floating"},position:{type:Object},constraints:{type:Object}},data:()=>({hasMounted:!1,surface:null}),setup(e){return{service:(0,S.inject)(a)}},mounted(){let e=t=>{if(!this.hasMounted){this.surface=t,this.hasMounted=!0;let o=this.position||{x:0,y:0};(0,S.nextTick)().then(()=>{this.placement==="floating"?t.floatElement(this.$refs.root,o):t.fixElement(this.$refs.fixedEl,o,this.constraints)})}};this.service.surface.value==null?(0,S.watch)(this.service.surface,e):e(this.service.surface.value)},render(){return(0,S.h)(pe.ELEMENT_DIV,{ref:"root"},this.hasMounted?this.placement==="floating"?(0,S.h)(pe.ELEMENT_DIV,{},this.$slots.hasOwnProperty("default")?this.$slots.default():[]):(0,S.h)(S.Teleport,{to:this.surface.vertexLayer,key:(0,pe.uuid)()},(0,S.h)(pe.ELEMENT_DIV,{ref:"fixedEl"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])):[])}};var Xo=require("vue"),_t={setup(){(0,Xo.provide)(a,new D("DiagramProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var ce=require("vue"),ue=require("@visuallyjs/browser-ui"),yt={name:we,props:{fill:String,outline:String,dragSize:Object,inspector:{type:Boolean,default:!0},iconSize:Object,showLabels:Boolean,paletteStrokeWidth:Number,showAllMessage:String,onCellAdded:Function,mode:String,allowClickToAdd:Boolean,autoExitDrawMode:Boolean,selectAfterAdd:{type:Boolean,default:!0},className:String,diagram:{type:Object},onVertexAdded:Function,preparedShapes:Array},setup(e){return{service:(0,ce.inject)(a)}},data:()=>({hasMounted:!1}),mounted(){if(this.service==null&&this.diagram==null)(0,ue.log)("Cannot mount DiagramPalette - no service found and Diagram not passed in as a prop");else{let e=t=>{this.hasMounted||(this.hasMounted=!0,new ue.DiagramPalette(this.$refs.container,t,{fill:this.fill,outline:this.outline,dragSize:this.dragSize,inspector:this.inspector,iconSize:this.iconSize,showLabels:this.showLabels,paletteStrokeWidth:this.paletteStrokeWidth,showAllMessage:this.showAllMessage,onCellAdded:this.onCellAdded,mode:this.mode,allowClickToAdd:this.allowClickToAdd,autoExitDrawMode:this.autoExitDrawMode,selectAfterAdd:this.selectAfterAdd,onVertexAdded:this.onVertexAdded,preparedShapes:this.preparedShapes}))};this.diagram?e(this.diagram):this.service.diagram.value!=null?e(this.service.diagram.value):(0,ce.watch)(this.service.diagram,e)}},render:function(){return(0,ce.h)(ue.ELEMENT_DIV,{ref:"container"})}};var x=require("@visuallyjs/browser-ui"),v=require("vue"),Tt={name:"SurfacePopup",props:{selector:String,anchor:{type:String,default:"bottom"}},setup(e){let t=(0,v.inject)(a),o=(0,v.ref)(null),n=(0,v.ref)("block"),s=(0,v.ref)(null),c=(0,v.ref)(null),r=l=>{c.value=new x.PopupHandler(e.selector,s.value,l,p=>{o.value=p,p==null?n.value=x.NONE:(n.value=x.BLOCK,requestAnimationFrame(()=>c.value.$positionPopup()))},e.anchor)};return(0,v.onMounted)(()=>{t.surface.value==null?(0,v.watch)(t.surface,r):r(t.surface.value)}),{service:t,current:o,display:n,rootRef:s,handler:c}},render(){var e;return(0,v.h)(x.ELEMENT_DIV,{ref:"rootRef",display:this.display,position:x.ABSOLUTE,class:x.CLASS_SURFACE_POPUP},this.$slots.hasOwnProperty("default")?this.$slots.default({vertex:this.current,model:(e=this.service.surface.value)==null?void 0:e.model,ui:this.service.surface.value,hide:()=>{var t;return(t=this.handler)==null?void 0:t.$hide()}}):[])}};var T=require("vue"),B=require("@visuallyjs/browser-ui"),Ao={setup(){return{service:(0,T.inject)(a)}},name:Te,props:{options:{type:Object}},mounted:function(){let e=t=>{t.addPlugin({type:B.BackgroundPlugin.type,options:this.options})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,T.watch)(this.service.surface,e),(0,T.watch)(this.service.paper,e))},render:function(e){return[]}},xo={setup(){return{service:(0,T.inject)(a)}},name:ge,props:{grid:{type:Object},showBorder:{type:Boolean},minWidth:{type:Number},minHeight:{type:Number},showTickMarks:{type:Boolean},tickMarksPerCell:{type:Number},maxWidth:{type:Number},maxHeight:{type:Number},autoShrink:{type:Boolean},gridType:{type:String},dotRadius:{type:Number},tickDotRadius:{type:Number},visible:{type:Boolean}},mounted:function(){let e=t=>{t.addPlugin({type:B.BackgroundPlugin.type,options:{type:B.GeneratedGridBackground.type,grid:this.grid,showBorder:this.showBorder,minWidth:this.minWidth,minHeight:this.minHeight,showTickMarks:this.showTickMarks,tickMarksPerCell:this.tickMarksPerCell,maxWidth:this.maxWidth,maxHeight:this.maxHeight,autoShrink:this.autoShrink,gridType:this.gridType,dotRadius:this.dotRadius,tickDotRadius:this.tickDotRadius,visible:this.visible}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,T.watch)(this.service.surface,e),(0,T.watch)(this.service.paper,e))},render:function(e){return[]}},Do={setup(){return{service:(0,T.inject)(a)}},name:Se,props:{url:{type:String}},mounted:function(){let e=t=>{t.addPlugin({type:B.BackgroundPlugin.type,options:{type:B.SimpleBackground.type,url:this.url}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,T.watch)(this.service.surface,e),(0,T.watch)(this.service.paper,e))},render:function(e){return[]}},Io={setup(){return{service:(0,T.inject)(a)}},name:ve,props:{url:{type:String},urlGenerator:{type:Function},tileSize:{type:Object},width:{type:Number},height:{type:Number},maxZoom:{type:Number},tiling:{type:String},panDebounceTimeout:{type:Number},zoomDebounceTimeout:{type:Number}},mounted:function(){let e=t=>{t.addPlugin({type:B.BackgroundPlugin.type,options:{type:B.TiledBackground.type,url:this.url,urlGenerator:this.urlGenerator,tileSize:this.tileSize,width:this.width,height:this.height,tiling:this.tiling,panDebounceTimeout:this.panDebounceTimeout,zoomDebounceTimeout:this.zoomDebounceTimeout}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,T.watch)(this.service.surface,e),(0,T.watch)(this.service.paper,e))},render:function(e){return[]}};var gr={install:function(e,t){e.component(so,ut),e.component(ao,dt),e.component(lo,_t),e.component(Ne,Co),e.component(Ae,_o),e.component(Me,vo),e.component(Re,So),e.component(De,To),e.component(Ie,go),e.component(Te,Ao),e.component(ge,xo),e.component(Se,Do),e.component(ve,Io),e.component(xe,Ro),e.component(we,yt),e.component(Ve,ot),e.component(be,tt),e.component(Be,rt),e.component(Le,it),e.component(Ue,st),e.component(Ge,nt),e.component(He,ct),e.component(Fe,pt),e.component(je,lt),e.component(ke,at),e.component(Ce,mt),e.component(_e,ft),e.component(ye,Et),e.component(oo,No),e.component($e,Pt),e.component(co,Ct),e.component(po,Tt),e.provide(a,new D("root"))}};var de=require("vue"),gt=require("@visuallyjs/browser-ui"),Zo=require("vue");function Sr(){let e=(0,Zo.inject)(a),t=(0,de.shallowRef)(null),o=(0,de.shallowRef)(null),n=(0,de.shallowRef)(null),s=(0,de.ref)(1);return e==null||e.getSurface(c=>{o.value=c,o.value.bind(gt.EVENT_ZOOM,r=>{s.value=r.zoom})}),e==null||e.getDiagram(c=>{t.value=c,t.value.$ui.bind(gt.EVENT_ZOOM,r=>{s.value=r.zoom})}),e==null||e.getPaper(c=>{n.value=c,n.value.bind(gt.EVENT_ZOOM,r=>{s.value=r.zoom})}),s}var St=require("vue"),me=require("@visuallyjs/browser-ui");function vr(e){let t=(0,St.inject)(a);if(t){let o=null,n=()=>{o&&e(o)},s=()=>{o&&(o.unbind(me.EVENT_DATA_UPDATED,n),o.unbind(me.EVENT_GRAPH_CLEARED,n))},c=r=>{s(),o=r,o&&(o.bind(me.EVENT_DATA_UPDATED,n),o.bind(me.EVENT_GRAPH_CLEARED,n),n())};t.getModel(r=>{c(r)}),(0,St.onUnmounted)(()=>{s()})}}var qo=require("vue"),Qo=require("vue");function Rr(){let e=(0,Qo.inject)(a),t=(0,qo.shallowRef)(null);return e==null||e.getSurface(o=>{t.value=o}),t}var er=require("vue"),tr=require("vue");function Nr(){let e=(0,tr.inject)(a),t=(0,er.shallowRef)(null);return e==null||e.getDiagram(o=>{t.value=o}),t}var or=require("vue"),rr=require("vue");function Ar(){let e=(0,rr.inject)(a),t=(0,or.shallowRef)(null);return e==null||e.getPaper(o=>{t.value=o}),t}
|
|
1
|
+
var ze=Object.defineProperty,lr=Object.defineProperties,pr=Object.getOwnPropertyDescriptor,cr=Object.getOwnPropertyDescriptors,ur=Object.getOwnPropertyNames,Bo=Object.getOwnPropertySymbols;var Uo=Object.prototype.hasOwnProperty,dr=Object.prototype.propertyIsEnumerable;var Lo=(e,t,o)=>t in e?ze(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,z=(e,t)=>{for(var o in t||(t={}))Uo.call(t,o)&&Lo(e,o,t[o]);if(Bo)for(var o of Bo(t))dr.call(t,o)&&Lo(e,o,t[o]);return e},he=(e,t)=>lr(e,cr(t));var mr=(e,t)=>{for(var o in t)ze(e,o,{get:t[o],enumerable:!0})},hr=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of ur(t))!Uo.call(e,s)&&s!==o&&ze(e,s,{get:()=>t[s],enumerable:!(r=pr(t,s))||r.enumerable});return e};var fr=e=>hr(ze({},"__esModule",{value:!0}),e);var wr={};mr(wr,{$initialiseVueOverlays:()=>We,AreaChartComponent:()=>at,BackgroundComponent:()=>wo,BarChartComponent:()=>rt,BaseOverlayComponent:()=>yo,BrowserUIVueModel:()=>A,BubbleChartComponent:()=>pt,CLASS_VUE_GROUP:()=>lo,CLASS_VUE_NODE:()=>ao,CLASS_VUE_OVERLAY:()=>po,COMPONENT_AREA_CHART:()=>Ue,COMPONENT_BACKGROUND:()=>_e,COMPONENT_BAR_CHART:()=>Ve,COMPONENT_BUBBLE_CHART:()=>Fe,COMPONENT_COLUMN_CHART:()=>Me,COMPONENT_CONTROLS:()=>De,COMPONENT_DIAGRAM:()=>we,COMPONENT_DIAGRAM_PALETTE:()=>be,COMPONENT_DIAGRAM_PROVIDER:()=>mo,COMPONENT_EXPORT_CONTROLS:()=>Ie,COMPONENT_GAUGE_CHART:()=>je,COMPONENT_GRID_BACKGROUND:()=>ge,COMPONENT_IMAGE_BACKGROUND:()=>Se,COMPONENT_INSPECTOR:()=>$e,COMPONENT_LINE_CHART:()=>Le,COMPONENT_MINIVIEW:()=>Re,COMPONENT_PALETTE:()=>xe,COMPONENT_PAPER:()=>Ne,COMPONENT_PAPER_PROVIDER:()=>uo,COMPONENT_PIE_CHART:()=>Ge,COMPONENT_SANKEY_CHART:()=>He,COMPONENT_SCATTER_CHART:()=>ke,COMPONENT_SURFACE:()=>Ae,COMPONENT_SURFACE_POPUP:()=>ho,COMPONENT_SURFACE_PROVIDER:()=>co,COMPONENT_TILED_IMAGE_BACKGROUND:()=>ve,COMPONENT_XY_CHART:()=>Be,ColorPickerComponent:()=>Io,ColumnChartComponent:()=>ot,ControlsComponent:()=>Ro,DEFAULT_SHAPE_HEIGHT:()=>io,DEFAULT_SHAPE_WIDTH:()=>no,DEFAULT_VUE_PAPER_ID:()=>At,DEFAULT_VUE_SURFACE_ID:()=>Rt,DecoratorComponent:()=>yt,DiagramComponent:()=>xo,DiagramPaletteComponent:()=>_t,DiagramProvider:()=>Tt,EVENT_VERTEX_UPDATED:()=>Fo,EVENT_VERTICES_RENDERED:()=>Qe,EdgeTypePickerComponent:()=>Ct,ExportControlsComponent:()=>Ao,GaugeChartComponent:()=>ct,GridBackgroundComponent:()=>bo,ImageBackgroundComponent:()=>Mo,InspectorComponent:()=>Pt,InspectorGetterSymbol:()=>ae,InspectorSetterSymbol:()=>Zo,LineChartComponent:()=>st,MiniviewComponent:()=>No,PROP_ACTIVE_TRACKING:()=>It,PROP_ALLOW_CLICK_TO_ADD:()=>qt,PROP_ALLOW_DROP_ON_CANVAS:()=>Wt,PROP_ALLOW_DROP_ON_EDGE:()=>$t,PROP_ALLOW_DROP_ON_GROUP:()=>zt,PROP_ALLOW_DROP_ON_NODE:()=>Kt,PROP_ALLOW_ROTATION:()=>Qt,PROP_AUTO_EDGE_CONNECT:()=>to,PROP_CANVAS_DROP_FILTER:()=>ro,PROP_CLASS_NAME:()=>K,PROP_CLICK_TO_ADD_ONLY:()=>Zt,PROP_CLICK_TO_CENTER:()=>xt,PROP_CSV_DATA:()=>Lt,PROP_DATA:()=>D,PROP_DATA_GENERATOR:()=>Ft,PROP_DATA_SOURCE_FILTER:()=>Je,PROP_DATA_TYPE:()=>Ee,PROP_DRAG_SIZE:()=>oo,PROP_GROUP_IDENTIFIER:()=>Ht,PROP_ID:()=>Pr,PROP_IGNORE_DROP_ON_NODE:()=>Jt,PROP_INTERACTIVE:()=>Vt,PROP_JSON_DATA:()=>Ut,PROP_MODE:()=>Mt,PROP_MODEL:()=>Oe,PROP_MODEL_OPTIONS:()=>J,PROP_ON_VERTEX_ADDED:()=>Yt,PROP_OPTIONS:()=>Q,PROP_PAPER_ID:()=>bt,PROP_PIVOT:()=>Bt,PROP_RENDER_OPTIONS:()=>fe,PROP_ROTATION_SPEED:()=>eo,PROP_SELECTOR:()=>kt,PROP_SELECT_AFTER_ADD:()=>Xt,PROP_SHOW_LASSO:()=>Dt,PROP_SURFACE_ID:()=>k,PROP_TRACK_SELECTION:()=>wt,PROP_TYPE_FUNCTION:()=>Nt,PROP_TYPE_GENERATOR:()=>jt,PROP_URL:()=>I,PROP_USE_MODEL:()=>Gt,PROP_VIEW_OPTIONS:()=>Pe,PaletteComponent:()=>Do,PaperComponent:()=>So,PaperProvider:()=>mt,PieChartComponent:()=>it,SankeyChartComponent:()=>ut,ScatterChartComponent:()=>lt,ShapeComponent:()=>ht,ShapePaletteComponent:()=>Ot,SurfaceComponent:()=>go,SurfacePopup:()=>gt,SurfaceProvider:()=>dt,TAG_COLOR_PICKER:()=>so,TAG_DECORATOR:()=>fo,TAG_EDGE_TYPE_PICKER:()=>Te,TAG_SHAPE:()=>Ce,TAG_SHAPE_PALETTE:()=>ye,TiledImageBackgroundComponent:()=>Vo,VisuallyJsPlugin:()=>Rr,VisuallyJsService:()=>w,VisuallyJsServiceKey:()=>a,XYChartComponent:()=>nt,addPaper:()=>_o,addSurface:()=>To,bindToDevLifecycle:()=>Er,doProvideInspector:()=>qo,newInstance:()=>Or,useDiagram:()=>Dr,usePaper:()=>Ir,useSurface:()=>xr,useVisuallyJsUpdate:()=>Nr,useZoom:()=>Ar,vertexHasRendered:()=>Oo,vertexHasUpdated:()=>Po,vertexWillRender:()=>jo});module.exports=fr(wr);var Ke=require("@visuallyjs/browser-ui"),A=class extends Ke.BrowserUIModel{render(t,o){return(0,Ke.log)("render called directly on BrowserUiVue class: should not happen. Surface component should use internal render."),null}};function Or(e){return e=e||{},new A(e)}var Rt="surfaceId",At="paperId",Nt="typeFunction",xt="clickToCenter",Dt="showLasso",It="activeTracking",wt="trackSelection",k="surfaceId",bt="paperId",K="className",D="data",Mt="mode",Q="options",fe="renderOptions",J="modelOptions",Oe="model",Pe="viewOptions",I="url",Ee="dataType",Vt="interactive",Bt="pivot",Je="dataSourceFilter",Lt="csvData",Ut="jsonData",Gt="useModel",Pr="id",kt="selector",Ft="dataGenerator",jt="typeGenerator",Ht="groupIdentifier",$t="allowDropOnEdge",Wt="allowDropOnCanvas",zt="allowDropOnGroup",Kt="allowDropOnNode",Jt="ignoreDropOnNode",Yt="onVertexAdded",Xt="selectAfterAdd",Zt="clickToAddOnly",qt="allowClickToAdd",Qt="allowRotation",eo="rotationSpeed",to="autoEdgeConnect",oo="dragSize",ro="canvasDropFilter",Ce="Shape",ye="ShapePalette",no=120,io=90,Te="EdgeTypePickerComponent",so="ColorPickerComponent",ao="vjs-vue-node",lo="vjs-vue-group",po="vjs-vue-overlay",_e="BackgroundComponent",ge="GridBackgroundComponent",Se="ImageBackgroundComponent",ve="TiledImageBackgroundComponent",Re="MiniviewComponent",Ae="SurfaceComponent",co="SurfaceProvider",Ne="PaperComponent",uo="PaperProvider",mo="DiagramProvider",xe="PaletteComponent",De="ControlsComponent",Ie="ExportControlsComponent",we="DiagramComponent",be="DiagramPaletteComponent",Me="ColumnChartComponent",Ve="BarChartComponent",Be="XYChartComponent",Le="LineChartComponent",Ue="AreaChartComponent",Ge="PieChartComponent",ke="ScatterChartComponent",Fe="BubbleChartComponent",je="GaugeChartComponent",He="SankeyChartComponent",$e="InspectorComponent",ho="SurfacePopup",fo="Decorator";var F=require("@visuallyjs/browser-ui"),Ye={props:{data:Object,model:A,obj:F.Vertex,vertex:F.Vertex,ui:F.BrowserUI,el:Element,def:Object,eventInfo:Object},mounted(){let e=this,t=(0,F.isGroup)(e.vertex)?lo:ao;e.el.firstElementChild&&(0,F.addClass)(e.el.firstElementChild,t),e.ui.$vertexRendered(e.vertex,e.el,e.def,e.eventInfo),Oo(e.ui.id,e.vertex)},methods:{getModel:function(){return this.model},removeVertex:function(){this.model.remove(this.vertex)}},updated(){this.ui.$revalidateElement(this.el),Po(this.ui.id,this.vertex)}};var Go={mixins:[Ye],methods:{getNode:function(){return this.obj},removeNode:function(){this.model.removeNode(this.getNode())},updateNode:function(e){this.model.updateNode(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}}};var ko={methods:{getGroup:function(){return this.obj},removeGroup:function(e){this.model.removeGroup(this.obj,e)},updateGroup:function(e){this.model.updateGroup(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}},mixins:[Ye]};var N=require("vue"),d=require("@visuallyjs/browser-ui"),Eo=class{constructor(){this.unrenderedVertices=new Map;this.eventManager=new d.OptimisticEventGenerator;this.hasRendered=!1}vertexWillRender(t){this.unrenderedVertices.set(t.id,t),this.hasRendered=!1}vertexHasRendered(t){this.unrenderedVertices.delete(t.id),this.unrenderedVertices.size===0&&(this.hasRendered=!0,this.eventManager.fire(Qe))}vertexHasUpdated(t){this.eventManager.fire(Fo,t)}},Qe="vertices:rendered",Fo="vertex:updated",Co=new Map;function Xe(e){return Co.has(e)||Co.set(e,new Eo),Co.get(e)}function Oo(e,t){Xe(e).vertexHasRendered(t)}function Po(e,t){Xe(e).vertexHasUpdated(t)}function jo(e,t){Xe(e).vertexWillRender(t)}function Er(e,t,o){let r=Xe(e);r&&(r.eventManager.bind(t,o),t===Qe&&r.hasRendered&&r.eventManager.fire(Qe))}var Ze=(e,t)=>{t.parentNode&&t.parentNode.removeChild(t)},yo={props:{data:Object,model:A,obj:d.Edge,edge:d.Edge,overlay:d.Overlay,ui:d.BrowserUI,el:Element,def:Object,eventInfo:Object},mounted(){let e=this;e.el.firstElementChild&&(0,d.addClass)(e.el.firstElementChild,po)},updated(){this.ui.$revalidateElement(this.el)}},qe=(e,t,o,r,s,c,n,l,p)=>{let f=n.component!=null,m=(0,d.isGroup)(l),T=[];f||T.push(m?d.CLASS_DEFAULT_GROUP:d.CLASS_DEFAULT_NODE);let C=f?n.component:{render(g){return g.data.label||""}};if(C){let g=document.createElement(d.ELEMENT_DIV);(0,d.updateClasses)(g,T),C.mixins==null&&(C.mixins=[]);let R=m?ko:Go;C.mixins.find(G=>G===R)||C.mixins.push(R),jo(c.id,l);let q={data:o,model:(0,N.markRaw)(r),ui:(0,N.markRaw)(c),obj:(0,N.markRaw)(l),vertex:(0,N.markRaw)(l),el:g,def:(0,N.markRaw)(n),eventInfo:p==null?null:(0,N.markRaw)(p)};if(n.inject)for(let G in n.inject){let W=n.inject[G],ar=typeof W=="function"?W(l,r):W;q[G]=ar}e.push({component:(0,N.markRaw)(C),el:g,t:l.getFullId(),props:q,vertex:l})}};function To(e,t,o,r,s,c){let n={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(p,f,m,T)=>{},render:(p,f,m,T,C,g,R,H)=>qe(r,p,f,m,T,C,g,R,H),cleanupVertex:Ze,cleanupPort:Ze,rerender:(p,f,m,T,C,g,R,H,q)=>{let G=r.findIndex(W=>W.vertex===R);G!=null&&r.splice(G,1)[0].el,C.$__unmanage(q,!0,!0),requestAnimationFrame(()=>{qe(r,p,f,m,T,C,g,R,H)})}},l=(0,d.extend)(s||{},{view:c||{},id:t});return(0,d.renderSurface)(e,o,n,l)}function _o(e,t,o,r,s,c){let n={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(p,f,m,T)=>{},render:(p,f,m,T,C,g,R,H)=>qe(r,p,f,m,T,C,g,R,H),cleanupVertex:Ze,cleanupPort:Ze,rerender:(p,f,m,T,C,g,R,H,q)=>{let G=r.findIndex(W=>W.vertex===R);G!=null&&r.splice(G,1)[0].el,C.$__unmanage(q,!0,!0),requestAnimationFrame(()=>{qe(r,p,f,m,T,C,g,R,H)})}},l=(0,d.extend)(s||{},{view:c||{},id:t});return(0,d.renderPaper)(e,o,n,l)}function We(e,t,o,r){if(e.edges)for(let s in e.edges){let c=e.edges[s];c.overlays&&(c.overlays=c.overlays.map(n=>{let l={};return n.component!=null?{type:d.OVERLAY_TYPE_CUSTOM,options:{create:f=>{let m=document.createElement(d.ELEMENT_DIV),T=(0,d.uuid)();n.component.mixins==null&&(n.component.mixins=[]),n.component.mixins.indexOf(yo)===-1&&n.component.mixins.push(yo);let C=z({data:f.edge.data,model:(0,N.markRaw)(o()),ui:(0,N.markRaw)(t()),obj:f.edge,edge:f.edge,el:m,def:(0,N.markRaw)(n),eventInfo:null,overlay:n},l);return r.push({component:(0,N.markRaw)(n.component),el:m,t:T,props:C}),m}}}:n}))}}var Y=require("@visuallyjs/browser-ui"),ee=require("vue"),a=Symbol.for("visuallyjs-service"),w=class{constructor(t){this.context=t;this.s=[];this.a=[];this.l=[];this.p=[];this.surface=(0,ee.shallowRef)(null);this.model=(0,ee.shallowRef)(null);this.paper=(0,ee.shallowRef)(null);this.diagram=(0,ee.shallowRef)(null);this.ui=(0,ee.shallowRef)(null)}getSurface(t){this.o(this.a,t,this.c)}getDiagram(t){this.o(this.l,t,this.u)}getPaper(t){this.o(this.p,t,this.m)}getModel(t){this.o(this.s,t,this.n)}getModelDirect(){return this.n}o(t,o,r){if(r!=null)try{o(r)}catch(s){(0,Y.log)(`WARN: could not dispatch ${s}`)}else t.push(o)}setSurface(t){this.surface.value=t,this.model.value=t.model,this.ui.value=t,this.c=t,this.i(t.model),this.r(this.a,t)}setDiagram(t){this.diagram.value=t,this.model.value=t.model,this.ui.value=t.$ui,this.u=t,this.i(t.model),t.$ui instanceof Y.Surface?this.setSurface(t.$ui):t.$ui instanceof Y.Paper&&this.setPaper(t.$ui),this.r(this.l,t)}setPaper(t){this.paper.value=t,this.model.value=t.model,this.ui.value=t,this.m=t,this.i(t.model),this.r(this.p,t)}i(t){this.n=t,this.r(this.s,t)}r(t,o){t.forEach(r=>{try{r(o)}catch(s){(0,Y.log)(`WARN: could not flush all queue entries ${s}`)}})}};var b=require("vue"),O=require("@visuallyjs/browser-ui"),go={setup(e){return{service:(0,b.inject)(a),surfaceId:e.surfaceId||Rt}},name:Ae,props:{[D]:{type:Object},[fe]:{type:Object},[J]:{type:Object},[Pe]:{type:Object},[Oe]:{type:Object},[I]:{type:String},[Ee]:{type:String},[k]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new A(this.modelOptions||{}),o=this.$refs.root;e.e=!1;let r=(0,O.clone)(this.viewOptions||{});We(r,()=>this.surface,()=>t,this.overlays),this.surface=To(t,this.surfaceId,o,this.vertices,(0,O.clone)(this.renderOptions||{}),r),this.service.setSurface(this.surface);let s=(n,l)=>{let p=()=>{let m={};return l.originalData||l.updates?m=Object.assign(l.originalData,l.updates):l.newData&&Object.assign(m,l.newData),m},f=this.vertices.find(m=>m.t===n);f!=null&&(f.props.data=p())},c=n=>{let l=this.vertices.findIndex(p=>p.t===n);l!==-1&&this.vertices.splice(l,1)};t.bind(O.EVENT_NODE_UPDATED,n=>{s(n.vertex.getFullId(),n)}),t.bind(O.EVENT_GROUP_UPDATED,n=>{s(n.vertex.getFullId(),n)}),t.bind(O.EVENT_NODE_REMOVED,n=>{c(n.node.id)}),t.bind(O.EVENT_GROUP_REMOVED,n=>{c(n.group.id)}),t.bind(O.EVENT_EDGE_UPDATED,n=>{let l=n.edge.id;this.overlays.forEach(p=>{p.props.edge&&p.props.edge.id===l&&(p.props.data=n.edge.data)})}),t.bind(O.EVENT_EDGE_REMOVED,n=>{let l=n.edge.id,p=this.overlays.length-1;for(;p>=0;)this.overlays[p].props.edge&&this.overlays[p].props.edge.id===l&&this.overlays.splice(p,1),p--}),t.bind(O.EVENT_GRAPH_CLEARED,()=>{this.vertices.length=0,this.overlays.length=0}),this.surface.bind(O.EVENT_RENDER_END,()=>setTimeout(()=>this.surface.$redrawEveryConnection())),e.url?t.load({url:e.url,dataType:e.dataType,onload:()=>e.e=!0}):e.data?t.load({data:e.data,dataType:e.dataType,onload:()=>e.e=!0}):e.e=!0},watch:{[D]:{handler(e){this.e!==!1&&this.surface&&this.surface.model&&(this.surface.model.clear(),requestAnimationFrame(()=>{this.surface.model.load({data:e,dataType:this.dataType})}))}},[I]:{handler(e){this.e!==!1&&this.surface&&this.surface.model&&(this.surface.model.clear(),requestAnimationFrame(()=>{this.surface.model.load({url:e,dataType:this.dataType})}))}}},render:function(){let e=this.vertices.map(t=>(0,b.h)(b.Teleport,{to:t.el,key:t.t},[(0,b.h)(t.component,t.props)]));return this.overlays.forEach(t=>{e.push((0,b.h)(b.Teleport,{to:t.el,key:t.t},[(0,b.h)(t.component,t.props)]))}),(0,b.h)(O.ELEMENT_DIV,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};var M=require("vue"),P=require("@visuallyjs/browser-ui"),So={setup(e){return{service:(0,M.inject)(a),paperId:e.paperId||At}},name:Ne,props:{[D]:{type:Object},[fe]:{type:Object},[J]:{type:Object},[Pe]:{type:Object},[Oe]:{type:Object},[I]:{type:String},[Ee]:{type:String},[bt]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new A(this.modelOptions||{}),o=this.$refs.root;e.e=!1;let r=(0,P.clone)(this.viewOptions||{});We(r,()=>this.paper,()=>t,this.overlays),this.paper=_o(t,this.paperId,o,this.vertices,(0,P.clone)(this.renderOptions||{}),r),this.service.setPaper(this.paper);let s=(n,l)=>{let p=()=>{let m={};return l.originalData||l.updates?m=Object.assign(l.originalData,l.updates):l.newData&&Object.assign(m,l.newData),m},f=this.vertices.find(m=>m.t===n);f!=null&&(f.props.data=p())},c=n=>{let l=this.vertices.findIndex(p=>p.t===n);l!==-1&&this.vertices.splice(l,1)};t.bind(P.EVENT_NODE_UPDATED,n=>{s(n.vertex.getFullId(),n)}),t.bind(P.EVENT_GROUP_UPDATED,n=>{s(n.vertex.getFullId(),n)}),t.bind(P.EVENT_NODE_REMOVED,n=>{c(n.node.id)}),t.bind(P.EVENT_GROUP_REMOVED,n=>{c(n.group.id)}),t.bind(P.EVENT_EDGE_UPDATED,n=>{let l=n.edge.id;this.overlays.forEach(p=>{p.props.edge&&p.props.edge.id===l&&(p.props.data=n.edge.data)})}),t.bind(P.EVENT_EDGE_REMOVED,n=>{let l=n.edge.id,p=this.overlays.length-1;for(;p>=0;)this.overlays[p].props.edge&&this.overlays[p].props.edge.id===l&&this.overlays.splice(p,1),p--}),t.bind(P.EVENT_GRAPH_CLEARED,()=>{this.vertices.length=0,this.overlays.length=0}),this.paper.bind(P.EVENT_RENDER_END,()=>setTimeout(()=>this.paper.$redrawEveryConnection())),e.url?t.load({url:e.url,dataType:e.dataType,onload:()=>e.e=!0}):e.data?t.load({data:e.data,dataType:e.dataType,onload:()=>e.e=!0}):e.e=!0},watch:{[D]:{handler(e){this.e!==!1&&this.paper&&this.paper.model&&(this.paper.model.clear(),requestAnimationFrame(()=>{this.paper.model.load({data:e,dataType:this.dataType})}))}},[I]:{handler(e){this.e!==!1&&this.paper&&this.paper.model&&(this.paper.model.clear(),requestAnimationFrame(()=>{this.paper.model.load({url:e,dataType:this.dataType})}))}}},render:function(){let e=this.vertices.map(t=>(0,M.h)(M.Teleport,{to:t.el,key:t.t},[(0,M.h)(t.component,t.props)]));return this.overlays.forEach(t=>{e.push((0,M.h)(M.Teleport,{to:t.el,key:t.t},[(0,M.h)(t.component,t.props)]))}),(0,M.h)(P.ELEMENT_DIV,{ref:"root",class:"vjs-vue-paper",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};var u=require("vue"),i=require("@visuallyjs/browser-ui"),Cr="Clear dataset?",vo="vjs-selected-mode",Ho="can-undo",$o="can-redo",yr="data-undo",Tr="data-redo",Wo="data-mode",_r="data-reset",gr="data-clear",Sr="data-zoom-in",vr="data-zoom-out",zo="vjs-controls-has-selection",Ro={setup(e){return{service:(0,u.inject)(a)}},name:De,props:{clear:{type:Boolean,default:!0},[k]:{type:String},undoRedo:{type:Boolean,default:!0},orientation:{type:String,default:"row"},zoomToExtents:{type:Boolean,default:!0},zoomButtons:{type:Boolean,default:!1},clearMessage:{type:String,default:Cr},onMaybeClear:{type:Function},className:{type:String,default:""}},methods:{panMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(i.SURFACE_MODE_PAN)},selectMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(i.SURFACE_MODE_SELECT)},zoomToFit:function(){var e;(e=this.service.surface.value)==null||e.zoomToFit()},doClear:function(){let e=this.service.surface.value;e&&(this.onMaybeClear!=null?this.onMaybeClear(()=>e.model.clear()):window.confirm(this.clearMessage)&&e.model.clear())},undo:function(){var e;(e=this.service.model.value)==null||e.undo()},redo:function(){var e;(e=this.service.model.value)==null||e.redo()},zoomIn:function(){var e;(e=this.service.surface.value)==null||e.zoomIn()},zoomOut:function(){var e;(e=this.service.surface.value)==null||e.zoomOut()},resetSelection(){let e=this.service.surface.value;e&&(e.model.clearSelection(),(0,i.supportsPathEditing)(e)&&e.stopEditingPath())},updateSelectionState:function(){let e=this.service.surface.value;e&&(e.model.getSelection().isEmpty()?this.$refs.root.removeAttribute(zo):this.$refs.root.setAttribute(zo,"true"))}},data:function(){return{ready:!1,hasLasso:!1}},render(){if(this.ready){let e=[];return this.showPan&&(e.push((0,u.h)("i",{class:`vjs-pan-mode ${vo}`,[Wo]:i.SURFACE_MODE_PAN,onClick:()=>this.panMode(),title:"Pan mode"},[(0,u.h)("svg",{viewBox:i.PAN_VIEW_BOX,stroke:"currentColor",fill:"none"},[(0,u.h)("path",{d:i.PAN_PATH})])])),e.push((0,u.h)("i",{class:"vjs-select-mode",[Wo]:i.SURFACE_MODE_SELECT,onClick:()=>this.selectMode(),title:"Select mode"},[(0,u.h)("svg",{viewBox:i.LASSO_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.LASSO_PATH})])]))),this.undoRedo&&(e.push((0,u.h)("i",{class:"vjs-undo",[yr]:!0,title:"Undo last action",onClick:()=>this.undo()},[(0,u.h)("svg",{viewBox:i.UNDO_VIEW_BOX,stroke:"currentColor",fill:"none"},[(0,u.h)("path",{d:i.UNDO_PATH,"stroke-width":2})])])),e.push((0,u.h)("i",{class:"vjs-redo",[Tr]:!0,title:"Redo last action",onClick:()=>this.redo()},[(0,u.h)("svg",{viewBox:i.REDO_VIEW_BOX,stroke:"currentColor",fill:"none"},[(0,u.h)("path",{d:i.REDO_PATH,"stroke-width":2})])]))),this.zoomToExtents&&e.push((0,u.h)("i",{class:"vjs-zoom-to-fit",[_r]:"true",onClick:()=>this.zoomToFit(),title:"Zoom to Fit"},[(0,u.h)("svg",{viewBox:i.ZOOM_TO_FIT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.ZOOM_TO_FIT_PATH})])])),this.zoomButtons&&(e.push((0,u.h)("i",{class:"vjs-zoom-in",[Sr]:"true",onClick:()=>this.zoomIn(),title:"Zoom In"},[(0,u.h)("svg",{viewBox:i.ZOOM_IN_OUT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.ZOOM_IN_PATH})])])),e.push((0,u.h)("i",{class:"vjs-zoom-out",[vr]:"true",onClick:()=>this.zoomOut(),title:"Zoom Out"},[(0,u.h)("svg",{viewBox:i.ZOOM_IN_OUT_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.ZOOM_OUT_PATH})])]))),e.push((0,u.h)("i",{class:i.CLASS_CONTROLS_RESET_SELECTION,[i.ATTRIBUTE_RESET_SELECTION]:"true",onClick:()=>{this.resetSelection()}},[(0,u.h)("svg",{viewBox:i.RESET_SELECTION_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.RESET_SELECTION_PATH})])])),this.clear&&e.push((0,u.h)("i",{class:"vjs-clear-dataset",[gr]:"true",onClick:()=>{this.doClear()}},[(0,u.h)("svg",{viewBox:i.CLEAR_VIEW_BOX,stroke:"currentColor",fill:"currentColor"},[(0,u.h)("path",{d:i.CLEAR_PATH})])])),(0,u.h)(i.ELEMENT_DIV,{class:`vjs-controls ${this.className}`,ref:"root",[Ho]:!1,[$o]:!1,[i.ATTRIBUTE_CONTROLS_ORIENTATION]:this.orientation},e)}else return(0,u.h)(i.ELEMENT_DIV,{ref:"root"})},mounted(){let e=t=>{let o=t.getPlugin(i.LassoPlugin.type);this.showPan=o!=null,t.bind(i.EVENT_SURFACE_MODE_CHANGED,r=>{t.removeClass(t.$getSelector(this.$refs.root,"[data-mode]"),vo),t.addClass(t.$getSelector(this.$refs.root,"[data-mode='"+r+"']"),vo)}),t.model.bind(i.EVENT_UNDOREDO_UPDATE,r=>{this.$refs.root.setAttribute(Ho,r.undoCount>0?i.TRUE:i.FALSE),this.$refs.root.setAttribute($o,r.redoCount>0?i.TRUE:i.FALSE)}),t.model.bind(i.EVENT_SELECT,()=>this.updateSelectionState()),t.model.bind(i.EVENT_DESELECT,()=>this.updateSelectionState()),t.model.bind(i.EVENT_SELECTION_CLEARED,()=>this.updateSelectionState()),this.ready=!0};this.service.surface.value==null?(0,u.watch)(this.service.surface,e):e(this.service.surface.value)}};var V=require("vue"),y=require("@visuallyjs/browser-ui"),Ao={name:Ie,setup(e){return{service:(0,V.inject)(a)}},props:{surfaceId:{type:String},showLabel:{type:Boolean,default:!0},label:{type:String,default:"Export :"},margins:{type:Object},svgOptions:{type:Object},imageOptions:{type:Object},allowSvgExport:{type:Boolean,default:!0},allowPngExport:{type:Boolean,default:!0},allowJpgExport:{type:Boolean,default:!0}},methods:{loadSurface:function(e){let t=this.service.surface.value;t&&e(t)},exportSVG:function(){this.loadSurface(e=>{let t=this.svgOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new y.SvgExportUI(e).export(t)})},exportJPG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),t.type="image/jpeg",new y.ImageExportUI(e).export(t)})},exportPNG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new y.ImageExportUI(e).export(t)})}},render(){let e=this.showLabel!==!1,t=this.allowSvgExport!==!1,o=this.allowPngExport!==!1,r=this.allowJpgExport!==!1,s=[];return t&&s.push((0,V.h)("i",{},[(0,V.h)("a",{href:"#","data-type":y.TYPE_SVG,onClick:()=>this.exportSVG()},"SVG")])),o&&s.push((0,V.h)("i",{},[(0,V.h)("a",{href:"#","data-type":y.TYPE_PNG,onClick:()=>this.exportPNG()},"PNG")])),r&&s.push((0,V.h)("i",{},[(0,V.h)("a",{href:"#","data-type":y.TYPE_JPG,onClick:()=>this.exportJPG()},"JPG")])),e&&s.unshift((0,V.h)("span",{},[this.label])),(0,V.h)(y.ELEMENT_DIV,{class:`${y.CLASS_CONTROLS} ${y.CLASS_EXPORT_CONTROLS}`},s)}};var X=require("vue"),et=require("@visuallyjs/browser-ui"),No={setup(e){return{service:(0,X.inject)(a)}},name:Re,props:{[k]:{type:String},[K]:{type:String,default:""},[It]:{type:Boolean,default:!0},[xt]:{type:Boolean,default:!0},[Dt]:{type:Boolean,default:!0},[wt]:{type:Boolean,default:!0},[Nt]:{type:Function}},mounted:function(){let e=t=>{t.addPlugin({type:et.MiniviewPlugin.type,options:{container:this.$el,activeTracking:this.activeTracking,clickToCenter:this.clickToCenter,showLasso:this.showLasso,trackSelection:this.trackSelection,typeFunction:this.typeFunction}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,X.watch)(this.service.surface,e),(0,X.watch)(this.service.paper,e))},render:function(e){return(0,X.h)(et.ELEMENT_DIV,{ref:"root",class:e.className})}};var te=require("vue"),tt=require("@visuallyjs/browser-ui"),xo={setup(e){return{service:(0,te.inject)(a)}},name:we,props:{[D]:{type:Object},[I]:{type:String},[J]:{type:Object},[Q]:{type:Object}},mounted(){let e=this.$refs.root;this.diagram=(0,te.markRaw)((0,tt.createDiagram)(e,this.options,this.modelOptions)),this.service.setDiagram(this.diagram),this.data?this.diagram.load({data:this.data}):this.url&&this.diagram.load({url:this.url})},render:function(){return(0,te.h)(tt.ELEMENT_DIV,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var $=require("vue"),h=require("@visuallyjs/browser-ui"),Ko={[K]:{type:String},[D]:{type:Object},[I]:{type:String},[Gt]:{type:Boolean,default:!1}},Jo={setup(){return{service:(0,$.inject)(a)}},render:function(){return(0,$.h)(h.ELEMENT_DIV,{class:`${this.className}`,ref:"root"})}};function j(e,t,o=!0){let r=he(z({},Ko),{[Q]:{type:Object}}),s={};return o&&(r[Je]={type:Function},s[Je]=function(c){this.chart.setDataSourceFilter(c)}),he(z({},Jo),{name:e,props:r,watch:s,data:()=>({hasMounted:!1}),mounted(){let c=this.$refs.root,n=o?Object.assign({dataSourceFilter:this.dataSourceFilter},this.options):this.options;this.data&&(n.data=this.data),this.url&&(n.url=this.url);let l=()=>{this.hasMounted=!0,this.chart=new t(c,n)};this.useModel?this.service.model.value!=null?(n.dataSource=this.service.model.value,l()):(0,$.watch)(this.service.model,p=>{this.hasMounted||(n.dataSource=p,l())}):l()}})}var ot=j(Me,h.ColumnChart),rt=j(Ve,h.BarChart),nt=j(Be,h.CategoryValueChart,!1),it=j(Ge,h.PieChart),st=j(Le,h.LineChart),at=j(Ue,h.AreaChart),lt=j(ke,h.ScatterChart),pt=j(Fe,h.BubbleChart),ct=j(je,h.GaugeChart,!1),ut=he(z({},Jo),{name:He,props:he(z({},Ko),{[Lt]:{type:String},[Ut]:{type:Object},[Vt]:{type:Boolean},[Bt]:{type:String},[Q]:{type:Object}}),data:()=>({hasMounted:!1}),mounted(){let e=this.$refs.root,t=Object.assign({},this.options);this.interactive!=null&&(t.interactive=this.interactive),this.pivot!=null&&(t.pivot=this.pivot),this.csvData&&(t.csvData=this.csvData),this.jsonData&&(t.jsonData=this.jsonData),this.url&&(t.url=this.url);let o=()=>{this.hasMounted=!1,this.chart=new h.SankeyChart(e,t)};if(this.useModel){let r=s=>{this.hasMounted||(t.dataSource=s,o())};this.service.model.value==null?(0,$.watch)(this.service.model,r):r(this.service.model.value)}else o()},watch:{pivot(e){this.chart&&this.chart.pivot(e)}},render:function(){return(0,$.h)(h.ELEMENT_DIV,{class:`${this.className}`,ref:"root"})}});var oe=require("vue"),re=require("@visuallyjs/browser-ui"),Do={setup(e){return{service:(0,oe.inject)(a)}},name:xe,props:{[k]:{type:String},[kt]:{type:String},[Ft]:{type:Function},[jt]:{type:Function},[Ht]:{type:Function},[$t]:{type:[Boolean,Function],default:!1},[Wt]:{type:Boolean,default:!0},[zt]:{type:Boolean,default:!0},[Kt]:{type:Boolean,default:!1},[Jt]:{type:Boolean,default:!1},[oo]:Object,[Yt]:Function,[ro]:Function,[K]:String,[Mt]:String,[Xt]:{type:Boolean,default:!1},[qt]:{type:Boolean,default:!1},[Zt]:{type:Boolean,default:!1},[Qt]:{type:Boolean,default:!0},[eo]:{type:Number,default:2e3},[to]:{type:[Boolean,Object],default:!1}},mounted:function(){let e=t=>{let o={source:this.$refs.root,selector:this.selector,dataGenerator:r=>this.dataGenerator?this.dataGenerator(r):(0,re.defaultDataGenerator)(r),allowDropOnEdge:this.allowDropOnEdge===!0,allowDropOnGroup:this.allowDropOnGroup!==!1,allowDropOnCanvas:this.allowDropOnCanvas!==!1,allowDropOnNode:this.allowDropOnNode===!0,ignoreDropOnNode:this.ignoreDropOnNode===!0,canvasDropFilter:this.canvasDropFilter,onVertexAdded:this.onVertexAdded,dragSize:this.dragSize,mode:this.mode,allowRotation:this.allowRotation!==!1,rotationSpeed:this.rotationSpeed||2e3,autoEdgeConnect:this.autoEdgeConnect};this.groupIdentifier!=null&&(o.groupIdentifier=this.groupIdentifier),this.typeGenerator!=null&&(o.typeGenerator=this.typeGenerator),this.palette=new re.Palette(t,o)};this.service.surface.value==null?(0,oe.watch)(this.service.surface,e):e(this.service.surface.value)},render:function(){return(0,oe.h)(re.ELEMENT_DIV,{ref:"root",class:this.className||""},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var Yo=require("vue"),dt={setup(){(0,Yo.provide)(a,new w("SurfaceProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var Xo=require("vue"),mt={setup(){(0,Xo.provide)(a,new w("PaperProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var ne=require("vue"),B=require("@visuallyjs/browser-ui"),ht={name:Ce,props:{data:{type:Object},showLabels:{type:Boolean,default:!1},labelProperty:{type:String,default:"label"},labelStrokeWidth:{type:Number},multilineLabels:{type:Boolean,default:!0},labelFillRatio:{type:Number,default:B.DEFAULT_LABEL_FILL_RATIO},labelColor:{type:String,default:"#000000"},font:{type:Object}},setup(){return{service:(0,ne.inject)(a)}},mounted(){let e=t=>{let o=t.getShapeLibrary(),r=o.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.appendChild(r),this.showLabels){let s=o.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(s),this.multilineLabels!=!1&&(0,B.convertToMultilineText)(s,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||B.DEFAULT_LABEL_FILL_RATIO))}};this.service.ui.value==null?(0,ne.watch)(this.service.ui,e):e(this.service.ui.value)},updated(){let e=this.service.surface.value;if(e){let t=e.getShapeLibrary(),o=t.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.replaceChildren(o),this.showLabels){let r=t.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(r),this.multilineLabels!=!1&&(0,B.convertToMultilineText)(r,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||B.DEFAULT_LABEL_FILL_RATIO))}}},render:function(){return(0,ne.h)(B.ELEMENT_SVG,{ref:"container",preserveAspectRatio:"none",fill:this.getFill(),stroke:this.getOutline(),"stroke-width":this.getOutlineWidth(),viewBox:"0 0 "+this.getWidth()+" "+this.getHeight(),class:B.CLASS_SHAPE})},methods:{getWidth:function(){return this.data.width||no},getHeight:function(){return this.data.height||io},getFill:function(){return this.data.fill||"#FFFFFF"},getOutline:function(){return this.data.outline||"#000000"},getOutlineWidth(){return this.data.outlineWidth||2}}};var ie=require("vue"),ft=require("@visuallyjs/browser-ui"),Ot={name:ye,props:{surfaceId:{type:String},dragSize:Object,iconSize:Object,fill:String,outline:String,showAllMessage:String,selectAfterDrop:Boolean,paletteStrokeWidth:Number,dataGenerator:Function,initialSet:String,mode:String,allowClickToAdd:Boolean,onVertexAdded:Function,showLabels:Boolean,inspector:{type:Boolean,default:!0},updateTypeOnPaletteTap:Boolean,preparedShapes:Array,allowDropOnEdge:[Boolean,Function],autoEdgeConnect:[Boolean,Object],showGroups:{type:Boolean,default:!0}},setup(e){return{service:(0,ie.inject)(a)}},data:()=>({hasMounted:!1}),mounted(){let e=t=>{this.hasMounted||(this.hasMounted=!0,new ft.ShapePalette(t,{container:this.$refs.container,shapeLibrary:t.getShapeLibrary(),dragSize:this.dragSize,iconSize:this.iconSize,fill:this.fill,outline:this.outline,showAllMessage:this.showAllMessage,selectAfterDrop:this.selectAfterDrop,paletteStrokeWidth:this.paletteStrokeWidth,dataGenerator:this.dataGenerator,initialSet:this.initialSet,mode:this.mode,allowClickToAdd:this.allowClickToAdd,onVertexAdded:this.onVertexAdded,showLabels:this.showLabels,inspector:this.inspector,updateTypeOnPaletteTap:this.updateTypeOnPaletteTap,preparedShapes:this.preparedShapes,allowDropOnEdge:this.allowDropOnEdge,autoEdgeConnect:this.autoEdgeConnect,showGroups:this.showGroups}))};this.service.surface.value==null?(0,ie.watch)(this.service.surface,e):e(this.service.surface.value)},render:function(){return(0,ie.h)(ft.ELEMENT_DIV,{ref:"container"})}};var L=require("vue"),se=require("@visuallyjs/browser-ui"),ae=Symbol.for("VueInspectorGetter"),Zo=Symbol.for("VueInspectorSetter");function qo(){let e=[],t=null;function o(c){try{c(t)}catch(n){(0,se.log)("WARN: inspector listener threw an exception",n)}}let r={listen:c=>{t!=null?o(c):e.push(c)}},s={inspector:c=>{t=c,e.forEach(o)}};return(0,L.provide)(Zo,s),(0,L.provide)(ae,(0,L.readonly)(r)),s}var Pt={name:$e,props:{autoCommit:{type:Boolean,default:!0},multipleSelections:{type:Boolean,default:!0},filter:Function,renderEmptyContainer:Function,refresh:Function,className:String,showCloseButton:Boolean,afterUpdate:Function,modelValue:Object},emits:["update:modelValue"],setup(e,t){let o=qo();return{service:(0,L.inject)(a),inspectorProvider:o,inspector:null,emit:t.emit}},mounted(){let e=t=>{if(this.inspector==null){let o=new se.Inspector({container:this.$refs.root,ui:t,renderEmptyContainer:()=>(this.emit("update:modelValue",null),this.renderEmptyContainer?this.renderEmptyContainer():""),refresh:(r,s)=>{this.emit("update:modelValue",r),this.refresh&&this.refresh(r),setTimeout(s)},autoCommit:this.autoCommit,multipleSelections:this.multipleSelections,filter:this.filter,showCloseButton:this.showCloseButton,afterUpdate:()=>this.afterUpdate?this.afterUpdate(t):null});this.inspectorProvider.inspector(o)}};this.service.surface.value==null?(0,L.watch)(this.service.surface,e):e(this.service.surface.value)},render(){return(0,L.h)(se.ELEMENT_DIV,{ref:"root"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};var Et=require("vue"),le=require("@visuallyjs/browser-ui"),Ct={name:Te,props:{propertyName:String},setup(){return{inspectorProvider:(0,Et.inject)(ae)}},mounted(){this.inspectorProvider?this.inspectorProvider.listen(e=>{let t=new le.EdgeTypePicker(e.$ui,this.$refs.container,e.$ui.$getEdgePropertyMappings(),e.getValue(this.propertyName),(o,r)=>{e.setValue(this.propertyName,r,null)});t.render(this.propertyName,e.h),e.onChange(()=>{t.select(this.propertyName,e.getValue(this.propertyName))})}):(0,le.log)("WARN: EdgeTypePicker not instantiated inside an InspectorComponent. Cannot mount.")},render:function(){return(0,Et.h)(le.ELEMENT_DIV,{ref:"container"})}};var Z=require("vue"),E=require("@visuallyjs/browser-ui"),Io={render(){let e=this.swatches.map(t=>(0,Z.h)(E.ELEMENT_DIV,{title:t,class:E.CLASS_COLOR_PICKER_SWATCH,style:`background-color:${t}`,"data-color":t,onClick:()=>this.selectSwatch(t)}));return(0,Z.h)(E.ELEMENT_DIV,{class:`${E.CLASS_COLOR_PICKER}`},[(0,Z.h)("input",{type:"color","vjs-att":this.propertyName,ref:"colorInput"}),(0,Z.h)(E.ELEMENT_DIV,{class:E.CLASS_COLOR_PICKER_SWATCHES},e)])},props:{propertyName:String,maxColors:{type:Number,default:10}},data:()=>({CLASS_COLOR_PICKER:E.CLASS_COLOR_PICKER,CLASS_COLOR_PICKER_SWATCHES:E.CLASS_COLOR_PICKER_SWATCHES,CLASS_COLOR_PICKER_SWATCH:E.CLASS_COLOR_PICKER_SWATCH,colorInput:null,swatches:[]}),mounted(){let e=(0,Z.inject)(ae);e&&e.listen(t=>{this.inspector=t,this.swatches=t.ensureContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,()=>[]),this.colorInput=this.$refs.colorInput,this.colorInput.addEventListener("change",this.colorPicked),t.bind(E.EVENT_CONTEXT_UPDATE,o=>{o.key===E.INSPECTOR_CONTEXT_RECENT_COLORS&&(this.swatches=o.value.slice())}),t.bind("change",this.setCurrentColor),this.setCurrentColor()})},methods:{addColor:function(e){let t=this.inspector.ensureContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,()=>[]);if(e=e.toUpperCase(),!(t.find(r=>r.toUpperCase()===e)!=null)){let r=this.maxColors||10,s=t.slice();s.unshift(e),s.length>r&&(s.length=r),this.inspector.updateContext(E.INSPECTOR_CONTEXT_RECENT_COLORS,s)}},colorPicked:function(){let e=this.colorInput.value;this.inspector.setValue(this.propertyName,e,null),this.addColor(e)},selectSwatch:function(e){this.inspector.setValue(this.propertyName,e,null),this.colorInput.value=e},setCurrentColor:function(){let e=this.inspector.getValue(this.propertyName);e!=null&&(this.colorInput.value=e,this.addColor(e))}}};var S=require("vue"),pe=require("@visuallyjs/browser-ui"),yt={props:{placement:{type:String,default:"floating"},position:{type:Object},constraints:{type:Object}},data:()=>({hasMounted:!1,surface:null}),setup(e){return{service:(0,S.inject)(a)}},mounted(){let e=t=>{if(!this.hasMounted){this.surface=t,this.hasMounted=!0;let o=this.position||{x:0,y:0};(0,S.nextTick)().then(()=>{this.placement==="floating"?t.floatElement(this.$refs.root,o):t.fixElement(this.$refs.fixedEl,o,this.constraints)})}};this.service.surface.value==null?(0,S.watch)(this.service.surface,e):e(this.service.surface.value)},render(){return(0,S.h)(pe.ELEMENT_DIV,{ref:"root"},this.hasMounted?this.placement==="floating"?(0,S.h)(pe.ELEMENT_DIV,{},this.$slots.hasOwnProperty("default")?this.$slots.default():[]):(0,S.h)(S.Teleport,{to:this.surface.vertexLayer,key:(0,pe.uuid)()},(0,S.h)(pe.ELEMENT_DIV,{ref:"fixedEl"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])):[])}};var Qo=require("vue"),Tt={setup(){(0,Qo.provide)(a,new w("DiagramProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};var ce=require("vue"),ue=require("@visuallyjs/browser-ui"),_t={name:be,props:{fill:String,outline:String,dragSize:Object,inspector:{type:Boolean,default:!0},updateTypeOnPaletteTap:Boolean,iconSize:Object,showLabels:Boolean,paletteStrokeWidth:Number,showAllMessage:String,onCellAdded:Function,mode:String,allowClickToAdd:Boolean,autoExitDrawMode:Boolean,selectAfterAdd:{type:Boolean,default:!0},className:String,diagram:{type:Object},onVertexAdded:Function,preparedShapes:Array,allowDropOnEdge:[Boolean,Function],autoEdgeConnect:[Boolean,Object],showGroups:{type:Boolean,default:!0}},setup(e){return{service:(0,ce.inject)(a)}},data:()=>({hasMounted:!1}),mounted(){if(this.service==null&&this.diagram==null)(0,ue.log)("Cannot mount DiagramPalette - no service found and Diagram not passed in as a prop");else{let e=t=>{this.hasMounted||(this.hasMounted=!0,new ue.DiagramPalette(this.$refs.container,t,{fill:this.fill,outline:this.outline,dragSize:this.dragSize,inspector:this.inspector,iconSize:this.iconSize,showLabels:this.showLabels,paletteStrokeWidth:this.paletteStrokeWidth,showAllMessage:this.showAllMessage,onCellAdded:this.onCellAdded,mode:this.mode,allowClickToAdd:this.allowClickToAdd,autoExitDrawMode:this.autoExitDrawMode,selectAfterAdd:this.selectAfterAdd,onVertexAdded:this.onVertexAdded,updateTypeOnPaletteTap:this.updateTypeOnPaletteTap,preparedShapes:this.preparedShapes,allowDropOnEdge:this.allowDropOnEdge,autoEdgeConnect:this.autoEdgeConnect,showGroups:this.showGroups}))};this.diagram?e(this.diagram):this.service.diagram.value!=null?e(this.service.diagram.value):(0,ce.watch)(this.service.diagram,e)}},render:function(){return(0,ce.h)(ue.ELEMENT_DIV,{ref:"container"})}};var x=require("@visuallyjs/browser-ui"),v=require("vue"),gt={name:"SurfacePopup",props:{selector:String,anchor:{type:String,default:"bottom"}},setup(e){let t=(0,v.inject)(a),o=(0,v.ref)(null),r=(0,v.ref)("block"),s=(0,v.ref)(null),c=(0,v.ref)(null),n=l=>{c.value=new x.PopupHandler(e.selector,s.value,l,p=>{o.value=p,p==null?r.value=x.NONE:(r.value=x.BLOCK,requestAnimationFrame(()=>c.value.$positionPopup()))},e.anchor)};return(0,v.onMounted)(()=>{t.surface.value==null?(0,v.watch)(t.surface,n):n(t.surface.value)}),{service:t,current:o,display:r,rootRef:s,handler:c}},render(){var e;return(0,v.h)(x.ELEMENT_DIV,{ref:"rootRef",display:this.display,position:x.ABSOLUTE,class:x.CLASS_SURFACE_POPUP},this.$slots.hasOwnProperty("default")?this.$slots.default({vertex:this.current,model:(e=this.service.surface.value)==null?void 0:e.model,ui:this.service.surface.value,hide:()=>{var t;return(t=this.handler)==null?void 0:t.$hide()}}):[])}};var _=require("vue"),U=require("@visuallyjs/browser-ui"),wo={setup(){return{service:(0,_.inject)(a)}},name:_e,props:{options:{type:Object}},mounted:function(){let e=t=>{t.addPlugin({type:U.BackgroundPlugin.type,options:this.options})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,_.watch)(this.service.surface,e),(0,_.watch)(this.service.paper,e))},render:function(e){return[]}},bo={setup(){return{service:(0,_.inject)(a)}},name:ge,props:{grid:{type:Object},showBorder:{type:Boolean},minWidth:{type:Number},minHeight:{type:Number},showTickMarks:{type:Boolean},tickMarksPerCell:{type:Number},maxWidth:{type:Number},maxHeight:{type:Number},autoShrink:{type:Boolean},gridType:{type:String},dotRadius:{type:Number},tickDotRadius:{type:Number},visible:{type:Boolean}},mounted:function(){let e=t=>{t.addPlugin({type:U.BackgroundPlugin.type,options:{type:U.GeneratedGridBackground.type,grid:this.grid,showBorder:this.showBorder,minWidth:this.minWidth,minHeight:this.minHeight,showTickMarks:this.showTickMarks,tickMarksPerCell:this.tickMarksPerCell,maxWidth:this.maxWidth,maxHeight:this.maxHeight,autoShrink:this.autoShrink,gridType:this.gridType,dotRadius:this.dotRadius,tickDotRadius:this.tickDotRadius,visible:this.visible}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,_.watch)(this.service.surface,e),(0,_.watch)(this.service.paper,e))},render:function(e){return[]}},Mo={setup(){return{service:(0,_.inject)(a)}},name:Se,props:{url:{type:String}},mounted:function(){let e=t=>{t.addPlugin({type:U.BackgroundPlugin.type,options:{type:U.SimpleBackground.type,url:this.url}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,_.watch)(this.service.surface,e),(0,_.watch)(this.service.paper,e))},render:function(e){return[]}},Vo={setup(){return{service:(0,_.inject)(a)}},name:ve,props:{url:{type:String},urlGenerator:{type:Function},tileSize:{type:Object},width:{type:Number},height:{type:Number},maxZoom:{type:Number},tiling:{type:String},panDebounceTimeout:{type:Number},zoomDebounceTimeout:{type:Number}},mounted:function(){let e=t=>{t.addPlugin({type:U.BackgroundPlugin.type,options:{type:U.TiledBackground.type,url:this.url,urlGenerator:this.urlGenerator,tileSize:this.tileSize,width:this.width,height:this.height,tiling:this.tiling,panDebounceTimeout:this.panDebounceTimeout,zoomDebounceTimeout:this.zoomDebounceTimeout}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):((0,_.watch)(this.service.surface,e),(0,_.watch)(this.service.paper,e))},render:function(e){return[]}};var Rr={install:function(e,t){e.component(co,dt),e.component(uo,mt),e.component(mo,Tt),e.component(Ae,go),e.component(Ne,So),e.component(we,xo),e.component(Re,No),e.component(De,Ro),e.component(Ie,Ao),e.component(_e,wo),e.component(ge,bo),e.component(Se,Mo),e.component(ve,Vo),e.component(xe,Do),e.component(be,_t),e.component(Ve,rt),e.component(Me,ot),e.component(Be,nt),e.component(Le,st),e.component(Ue,at),e.component(Ge,it),e.component(He,ut),e.component(je,ct),e.component(Fe,pt),e.component(ke,lt),e.component(Ce,ht),e.component(ye,Ot),e.component(Te,Ct),e.component(so,Io),e.component($e,Pt),e.component(fo,yt),e.component(ho,gt),e.provide(a,new w("root"))}};var de=require("vue"),St=require("@visuallyjs/browser-ui"),er=require("vue");function Ar(){let e=(0,er.inject)(a),t=(0,de.shallowRef)(null),o=(0,de.shallowRef)(null),r=(0,de.shallowRef)(null),s=(0,de.ref)(1);return e==null||e.getSurface(c=>{o.value=c,o.value.bind(St.EVENT_ZOOM,n=>{s.value=n.zoom})}),e==null||e.getDiagram(c=>{t.value=c,t.value.$ui.bind(St.EVENT_ZOOM,n=>{s.value=n.zoom})}),e==null||e.getPaper(c=>{r.value=c,r.value.bind(St.EVENT_ZOOM,n=>{s.value=n.zoom})}),s}var vt=require("vue"),me=require("@visuallyjs/browser-ui");function Nr(e){let t=(0,vt.inject)(a);if(t){let o=null,r=()=>{o&&e(o)},s=()=>{o&&(o.unbind(me.EVENT_DATA_UPDATED,r),o.unbind(me.EVENT_GRAPH_CLEARED,r))},c=n=>{s(),o=n,o&&(o.bind(me.EVENT_DATA_UPDATED,r),o.bind(me.EVENT_GRAPH_CLEARED,r),r())};t.getModel(n=>{c(n)}),(0,vt.onUnmounted)(()=>{s()})}}var tr=require("vue"),or=require("vue");function xr(){let e=(0,or.inject)(a),t=(0,tr.shallowRef)(null);return e==null||e.getSurface(o=>{t.value=o}),t}var rr=require("vue"),nr=require("vue");function Dr(){let e=(0,nr.inject)(a),t=(0,rr.shallowRef)(null);return e==null||e.getDiagram(o=>{t.value=o}),t}var ir=require("vue"),sr=require("vue");function Ir(){let e=(0,sr.inject)(a),t=(0,ir.shallowRef)(null);return e==null||e.getPaper(o=>{t.value=o}),t}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var Ho=Object.defineProperty,$o=Object.defineProperties;var Wo=Object.getOwnPropertyDescriptors;var tt=Object.getOwnPropertySymbols;var zo=Object.prototype.hasOwnProperty,Ko=Object.prototype.propertyIsEnumerable;var ot=(e,t,o)=>t in e?Ho(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,x=(e,t)=>{for(var o in t||(t={}))zo.call(t,o)&&ot(e,o,t[o]);if(tt)for(var o of tt(t))Ko.call(t,o)&&ot(e,o,t[o]);return e},w=(e,t)=>$o(e,Wo(t));import{log as Jo,BrowserUIModel as Yo}from"@visuallyjs/browser-ui";var O=class extends Yo{render(t,o){return Jo("render called directly on BrowserUiVue class: should not happen. Surface component should use internal render."),null}};function ls(e){return e=e||{},new O(e)}var rt="surfaceId",nt="paperId",it="typeFunction",st="clickToCenter",at="showLasso",lt="activeTracking",pt="trackSelection",g="surfaceId",ct="paperId",I="className",S="data",ut="mode",b="options",G="renderOptions",M="modelOptions",k="model",j="viewOptions",v="url",F="dataType",dt="interactive",mt="pivot",Re="dataSourceFilter",ht="csvData",ft="jsonData",Pt="useModel",Vs="id",Ot="selector",Et="dataGenerator",Ct="typeGenerator",_t="groupIdentifier",yt="allowDropOnEdge",Tt="allowDropOnCanvas",gt="allowDropOnGroup",St="allowDropOnNode",vt="ignoreDropOnNode",Rt="onVertexAdded",Nt="selectAfterAdd",At="clickToAddOnly",xt="allowClickToAdd",Dt="dragSize",It="canvasDropFilter",H="Shape",$="ShapePalette",Mt=120,wt=90,W="EdgeTypePickerComponent",bt="ColorPickerComponent",Vt="vjs-vue-node",Bt="vjs-vue-group",Lt="vjs-vue-overlay",z="BackgroundComponent",K="GridBackgroundComponent",J="ImageBackgroundComponent",Y="TiledImageBackgroundComponent",X="MiniviewComponent",Z="SurfaceComponent",Ut="SurfaceProvider",q="PaperComponent",Gt="PaperProvider",kt="DiagramProvider",Q="PaletteComponent",ee="ControlsComponent",te="ExportControlsComponent",oe="DiagramComponent",re="DiagramPaletteComponent",ne="ColumnChartComponent",ie="BarChartComponent",se="XYChartComponent",ae="LineChartComponent",le="AreaChartComponent",pe="PieChartComponent",ce="ScatterChartComponent",ue="BubbleChartComponent",de="GaugeChartComponent",me="SankeyChartComponent",he="InspectorComponent",jt="SurfacePopup",Ft="Decorator";import{addClass as Xo,BrowserUI as Zo,isGroup as qo,Vertex as Ht}from"@visuallyjs/browser-ui";var fe={props:{data:Object,model:O,obj:Ht,vertex:Ht,ui:Zo,el:Element,def:Object,eventInfo:Object},mounted(){let e=this,t=qo(e.vertex)?Bt:Vt;e.el.firstElementChild&&Xo(e.el.firstElementChild,t),e.ui.$vertexRendered(e.vertex,e.el,e.def,e.eventInfo),$t(e.ui.id,e.vertex)},methods:{getModel:function(){return this.model},removeVertex:function(){this.model.remove(this.vertex)}},updated(){this.ui.$revalidateElement(this.el),Wt(this.ui.id,this.vertex)}};var zt={mixins:[fe],methods:{getNode:function(){return this.obj},removeNode:function(){this.model.removeNode(this.getNode())},updateNode:function(e){this.model.updateNode(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}}};var Kt={methods:{getGroup:function(){return this.obj},removeGroup:function(e){this.model.removeGroup(this.obj,e)},updateGroup:function(e){this.model.updateGroup(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}},mixins:[fe]};import{markRaw as E}from"vue";import{addClass as Qo,BrowserUI as er,CLASS_DEFAULT_GROUP as tr,CLASS_DEFAULT_NODE as or,ELEMENT_DIV as Jt,extend as Yt,isGroup as rr,OptimisticEventGenerator as nr,renderSurface as ir,updateClasses as sr,Overlay as ar,Edge as Xt,OVERLAY_TYPE_CUSTOM as lr,uuid as pr,renderPaper as cr}from"@visuallyjs/browser-ui";var Ne=class{constructor(){this.unrenderedVertices=new Map;this.eventManager=new nr}vertexWillRender(t){this.unrenderedVertices.set(t.id,t)}vertexHasRendered(t){this.unrenderedVertices.delete(t.id),this.unrenderedVertices.size===0&&this.eventManager.fire(ur)}vertexHasUpdated(t){this.eventManager.fire(dr,t)}},ur="vertices:rendered",dr="vertex:updated",Ae=new Map;function Pe(e){return Ae.has(e)||Ae.set(e,new Ne),Ae.get(e)}function $t(e,t){Pe(e).vertexHasRendered(t)}function Wt(e,t){Pe(e).vertexHasUpdated(t)}function mr(e,t){Pe(e).vertexWillRender(t)}function Ea(e,t,o){Pe(e).eventManager.bind(t,o)}var Oe=(e,t)=>{t.parentNode&&t.parentNode.removeChild(t)},Zt={props:{data:Object,model:O,obj:Xt,edge:Xt,overlay:ar,ui:er,el:Element,def:Object,eventInfo:Object},mounted(){let e=this;e.el.firstElementChild&&Qo(e.el.firstElementChild,Lt)},updated(){this.ui.$revalidateElement(this.el)}},Ee=(e,t,o,n,i,p,r,a,l)=>{let d=r.component!=null,c=rr(a),h=[];d||h.push(c?tr:or);let m=d?r.component:{render(f){return f.data.label||""}};if(m){let f=document.createElement(Jt);sr(f,h),m.mixins==null&&(m.mixins=[]);let P=c?Kt:zt;m.mixins.find(C=>C===P)||m.mixins.push(P),mr(p.id,a);let D={data:o,model:E(n),ui:E(p),obj:E(a),vertex:E(a),el:f,def:E(r),eventInfo:l==null?null:E(l)};if(r.inject)for(let C in r.inject){let A=r.inject[C],Fo=typeof A=="function"?A(a,n):A;D[C]=Fo}e.push({component:E(m),el:f,e:a.getFullId(),props:D,vertex:a})}};function qt(e,t,o,n,i,p){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(l,d,c,h)=>{},render:(l,d,c,h,m,f,P,T)=>Ee(n,l,d,c,h,m,f,P,T),cleanupVertex:Oe,cleanupPort:Oe,rerender:(l,d,c,h,m,f,P,T,D)=>{let C=n.findIndex(A=>A.vertex===P);C!=null&&n.splice(C,1)[0].el,m.$__unmanage(D,!0,!0),requestAnimationFrame(()=>{Ee(n,l,d,c,h,m,f,P,T)})}},a=Yt(i||{},{view:p||{},id:t});return ir(e,o,r,a)}function Qt(e,t,o,n,i,p){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(l,d,c,h)=>{},render:(l,d,c,h,m,f,P,T)=>Ee(n,l,d,c,h,m,f,P,T),cleanupVertex:Oe,cleanupPort:Oe,rerender:(l,d,c,h,m,f,P,T,D)=>{let C=n.findIndex(A=>A.vertex===P);C!=null&&n.splice(C,1)[0].el,m.$__unmanage(D,!0,!0),requestAnimationFrame(()=>{Ee(n,l,d,c,h,m,f,P,T)})}},a=Yt(i||{},{view:p||{},id:t});return cr(e,o,r,a)}function Ce(e,t,o,n){if(e.edges)for(let i in e.edges){let p=e.edges[i];p.overlays&&(p.overlays=p.overlays.map(r=>{let a={};return r.component!=null?{type:lr,options:{create:d=>{let c=document.createElement(Jt),h=pr();r.component.mixins==null&&(r.component.mixins=[]),r.component.mixins.indexOf(Zt)===-1&&r.component.mixins.push(Zt);let m=x({data:d.edge.data,model:E(o()),ui:E(t()),obj:d.edge,edge:d.edge,el:c,def:E(r),eventInfo:null,overlay:r},a);return n.push({component:E(r.component),el:c,e:h,props:m}),c}}}:r}))}}import{log as eo,Paper as hr,Surface as fr}from"@visuallyjs/browser-ui";import{shallowRef as V}from"vue";var s=Symbol.for("visuallyjs-service"),_=class{constructor(t){this.context=t;this.i=[];this.s=[];this.a=[];this.l=[];this.surface=V(null);this.model=V(null);this.paper=V(null);this.diagram=V(null);this.ui=V(null)}getSurface(t){this.t(this.s,t,this.p)}getDiagram(t){this.t(this.a,t,this.c)}getPaper(t){this.t(this.l,t,this.u)}getModel(t){this.t(this.i,t,this.r)}getModelDirect(){return this.r}t(t,o,n){if(n!=null)try{o(n)}catch(i){eo(`WARN: could not dispatch ${i}`)}else t.push(o)}setSurface(t){this.surface.value=t,this.model.value=t.model,this.ui.value=t,this.p=t,this.n(t.model),this.o(this.s,t)}setDiagram(t){this.diagram.value=t,this.model.value=t.model,this.ui.value=t.$ui,this.c=t,this.n(t.model),t.$ui instanceof fr?this.setSurface(t.$ui):t.$ui instanceof hr&&this.setPaper(t.$ui),this.o(this.a,t)}setPaper(t){this.paper.value=t,this.model.value=t.model,this.ui.value=t,this.u=t,this.n(t.model),this.o(this.l,t)}n(t){this.r=t,this.o(this.i,t)}o(t,o){t.forEach(n=>{try{n(o)}catch(i){eo(`WARN: could not flush all queue entries ${i}`)}})}};import{h as B,inject as Pr,Teleport as to}from"vue";import{ELEMENT_DIV as Or,EVENT_GROUP_REMOVED as Er,EVENT_GROUP_UPDATED as Cr,EVENT_NODE_REMOVED as _r,EVENT_NODE_UPDATED as yr,EVENT_RENDER_END as Tr,clone as oo,EVENT_EDGE_UPDATED as gr,EVENT_EDGE_REMOVED as Sr,EVENT_GRAPH_CLEARED as vr}from"@visuallyjs/browser-ui";var ro={setup(e){return{service:Pr(s),surfaceId:e.surfaceId||rt}},name:Z,props:{[S]:{type:Object},[G]:{type:Object},[M]:{type:Object},[j]:{type:Object},[k]:{type:Object},[v]:{type:String},[F]:{type:String},[g]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new O(this.modelOptions||{}),o=this.$refs.root;e.url?t.load({url:e.url,dataType:e.dataType}):e.data&&t.load({data:e.data,dataType:e.dataType});let n=oo(this.viewOptions||{});Ce(n,()=>this.surface,()=>t,this.overlays),this.surface=qt(t,this.surfaceId,o,this.vertices,oo(this.renderOptions||{}),n),this.service.setSurface(this.surface);let i=(r,a)=>{let l=()=>{let c={};return a.originalData||a.updates?c=Object.assign(a.originalData,a.updates):a.newData&&Object.assign(c,a.newData),c},d=this.vertices.find(c=>c.e===r);d!=null&&(d.props.data=l())},p=r=>{let a=this.vertices.findIndex(l=>l.e===r);a!==-1&&this.vertices.splice(a,1)};t.bind(yr,r=>{i(r.vertex.getFullId(),r)}),t.bind(Cr,r=>{i(r.vertex.getFullId(),r)}),t.bind(_r,r=>{p(r.node.id)}),t.bind(Er,r=>{p(r.group.id)}),t.bind(gr,r=>{let a=r.edge.id;this.overlays.forEach(l=>{l.props.edge&&l.props.edge.id===a&&(l.props.data=r.edge.data)})}),t.bind(Sr,r=>{let a=r.edge.id,l=this.overlays.length-1;for(;l>=0;)this.overlays[l].props.edge&&this.overlays[l].props.edge.id===a&&this.overlays.splice(l,1),l--}),t.bind(vr,()=>{this.vertices.length=0,this.overlays.length=0}),this.surface.bind(Tr,()=>setTimeout(()=>this.surface.$redrawEveryConnection()))},render:function(){let e=this.vertices.map(t=>B(to,{to:t.el,key:t.e},[B(t.component,t.props)]));return this.overlays.forEach(t=>{e.push(B(to,{to:t.el,key:t.e},[B(t.component,t.props)]))}),B(Or,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};import{h as L,inject as Rr,Teleport as no}from"vue";import{ELEMENT_DIV as Nr,EVENT_GROUP_REMOVED as Ar,EVENT_GROUP_UPDATED as xr,EVENT_NODE_REMOVED as Dr,EVENT_NODE_UPDATED as Ir,EVENT_RENDER_END as Mr,clone as io,EVENT_EDGE_UPDATED as wr,EVENT_EDGE_REMOVED as br,EVENT_GRAPH_CLEARED as Vr}from"@visuallyjs/browser-ui";var so={setup(e){return{service:Rr(s),paperId:e.paperId||nt}},name:q,props:{[S]:{type:Object},[G]:{type:Object},[M]:{type:Object},[j]:{type:Object},[k]:{type:Object},[v]:{type:String},[F]:{type:String},[ct]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new O(this.modelOptions||{}),o=this.$refs.root;e.url?t.load({url:e.url,dataType:e.dataType}):e.data&&t.load({data:e.data,dataType:e.dataType});let n=io(this.viewOptions||{});Ce(n,()=>this.paper,()=>t,this.overlays),this.paper=Qt(t,this.paperId,o,this.vertices,io(this.renderOptions||{}),n),this.service.setPaper(this.paper);let i=(r,a)=>{let l=()=>{let c={};return a.originalData||a.updates?c=Object.assign(a.originalData,a.updates):a.newData&&Object.assign(c,a.newData),c},d=this.vertices.find(c=>c.e===r);d!=null&&(d.props.data=l())},p=r=>{let a=this.vertices.findIndex(l=>l.e===r);a!==-1&&this.vertices.splice(a,1)};t.bind(Ir,r=>{i(r.vertex.getFullId(),r)}),t.bind(xr,r=>{i(r.vertex.getFullId(),r)}),t.bind(Dr,r=>{p(r.node.id)}),t.bind(Ar,r=>{p(r.group.id)}),t.bind(wr,r=>{let a=r.edge.id;this.overlays.forEach(l=>{l.props.edge&&l.props.edge.id===a&&(l.props.data=r.edge.data)})}),t.bind(br,r=>{let a=r.edge.id,l=this.overlays.length-1;for(;l>=0;)this.overlays[l].props.edge&&this.overlays[l].props.edge.id===a&&this.overlays.splice(l,1),l--}),t.bind(Vr,()=>{this.vertices.length=0,this.overlays.length=0}),this.paper.bind(Mr,()=>setTimeout(()=>this.paper.$redrawEveryConnection()))},render:function(){let e=this.vertices.map(t=>L(no,{to:t.el,key:t.e},[L(t.component,t.props)]));return this.overlays.forEach(t=>{e.push(L(no,{to:t.el,key:t.e},[L(t.component,t.props)]))}),L(Nr,{ref:"root",class:"vjs-vue-paper",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};import{h as u,inject as Br,watch as Lr}from"vue";import{LassoPlugin as Ur,SURFACE_MODE_SELECT as ao,SURFACE_MODE_PAN as lo,PAN_PATH as Gr,PAN_VIEW_BOX as kr,LASSO_PATH as jr,LASSO_VIEW_BOX as Fr,ZOOM_TO_FIT_PATH as Hr,ZOOM_TO_FIT_VIEW_BOX as $r,EVENT_UNDOREDO_UPDATE as Wr,TRUE as po,FALSE as co,EVENT_SURFACE_MODE_CHANGED as zr,ELEMENT_DIV as uo,ATTRIBUTE_CONTROLS_ORIENTATION as Kr,ZOOM_IN_OUT_VIEW_BOX as mo,ZOOM_IN_PATH as Jr,ZOOM_OUT_PATH as Yr,RESET_SELECTION_PATH as Xr,RESET_SELECTION_VIEW_BOX as Zr,CLEAR_PATH as qr,CLEAR_VIEW_BOX as Qr,ATTRIBUTE_RESET_SELECTION as en,CLASS_CONTROLS_RESET_SELECTION as tn,EVENT_SELECT as on,EVENT_DESELECT as rn,EVENT_SELECTION_CLEARED as nn,supportsPathEditing as sn}from"@visuallyjs/browser-ui";var an="Clear dataset?",xe="vjs-selected-mode",ho="can-undo",fo="can-redo",ln="data-undo",pn="data-redo",Po="data-mode",cn="data-reset",un="data-clear",dn="data-zoom-in",mn="data-zoom-out",Oo="vjs-controls-has-selection",Eo={setup(e){return{service:Br(s)}},name:ee,props:{clear:{type:Boolean,default:!0},[g]:{type:String},undoRedo:{type:Boolean,default:!0},orientation:{type:String,default:"row"},zoomToExtents:{type:Boolean,default:!0},zoomButtons:{type:Boolean,default:!1},clearMessage:{type:String,default:an},onMaybeClear:{type:Function},className:{type:String,default:""}},methods:{panMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(lo)},selectMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(ao)},zoomToFit:function(){var e;(e=this.service.surface.value)==null||e.zoomToFit()},doClear:function(){let e=this.service.surface.value;e&&(this.onMaybeClear!=null?this.onMaybeClear(()=>e.model.clear()):window.confirm(this.clearMessage)&&e.model.clear())},undo:function(){var e;(e=this.service.model.value)==null||e.undo()},redo:function(){var e;(e=this.service.model.value)==null||e.redo()},zoomIn:function(){var e;(e=this.service.surface.value)==null||e.zoomIn()},zoomOut:function(){var e;(e=this.service.surface.value)==null||e.zoomOut()},resetSelection(){let e=this.service.surface.value;e&&(e.model.clearSelection(),sn(e)&&e.stopEditingPath())},updateSelectionState:function(){let e=this.service.surface.value;e&&(e.model.getSelection().isEmpty()?this.$refs.root.removeAttribute(Oo):this.$refs.root.setAttribute(Oo,"true"))}},data:function(){return{ready:!1,hasLasso:!1}},render(){if(this.ready){let e=[];return this.showPan&&(e.push(u("i",{class:`vjs-pan-mode ${xe}`,[Po]:lo,onClick:()=>this.panMode(),title:"Pan mode"},[u("svg",{viewBox:kr,stroke:"currentColor",fill:"none"},[u("path",{d:Gr})])])),e.push(u("i",{class:"vjs-select-mode",[Po]:ao,onClick:()=>this.selectMode(),title:"Select mode"},[u("svg",{viewBox:Fr,stroke:"currentColor",fill:"currentColor"},[u("path",{d:jr})])]))),this.undoRedo&&(e.push(u("i",{class:"vjs-undo",[ln]:!0,title:"Undo last action",onClick:()=>this.undo()})),e.push(u("i",{class:"vjs-redo",[pn]:!0,title:"Redo last action",onClick:()=>this.redo()}))),this.zoomToExtents&&e.push(u("i",{class:"vjs-zoom-to-fit",[cn]:"true",onClick:()=>this.zoomToFit(),title:"Zoom to Fit"},[u("svg",{viewBox:$r,stroke:"currentColor",fill:"currentColor"},[u("path",{d:Hr})])])),this.zoomButtons&&(e.push(u("i",{class:"vjs-zoom-in",[dn]:"true",onClick:()=>this.zoomIn(),title:"Zoom In"},[u("svg",{viewBox:mo,stroke:"currentColor",fill:"currentColor"},[u("path",{d:Jr})])])),e.push(u("i",{class:"vjs-zoom-out",[mn]:"true",onClick:()=>this.zoomOut(),title:"Zoom Out"},[u("svg",{viewBox:mo,stroke:"currentColor",fill:"currentColor"},[u("path",{d:Yr})])]))),e.push(u("i",{class:tn,[en]:"true",onClick:()=>{this.resetSelection()}},[u("svg",{viewBox:Zr,stroke:"currentColor",fill:"currentColor"},[u("path",{d:Xr})])])),this.clear&&e.push(u("i",{class:"vjs-clear-dataset",[un]:"true",onClick:()=>{this.doClear()}},[u("svg",{viewBox:Qr,stroke:"currentColor",fill:"currentColor"},[u("path",{d:qr})])])),u(uo,{class:`vjs-controls ${this.className}`,ref:"root",[ho]:!1,[fo]:!1,[Kr]:this.orientation},e)}else return u(uo,{ref:"root"})},mounted(){let e=t=>{let o=t.getPlugin(Ur.type);this.showPan=o!=null,t.bind(zr,n=>{t.removeClass(t.$getSelector(this.$refs.root,"[data-mode]"),xe),t.addClass(t.$getSelector(this.$refs.root,"[data-mode='"+n+"']"),xe)}),t.model.bind(Wr,n=>{this.$refs.root.setAttribute(ho,n.undoCount>0?po:co),this.$refs.root.setAttribute(fo,n.redoCount>0?po:co)}),t.model.bind(on,()=>this.updateSelectionState()),t.model.bind(rn,()=>this.updateSelectionState()),t.model.bind(nn,()=>this.updateSelectionState()),this.ready=!0};this.service.surface.value==null?Lr(this.service.surface,e):e(this.service.surface.value)}};import{h as R,inject as hn}from"vue";import{CLASS_CONTROLS as fn,CLASS_EXPORT_CONTROLS as Pn,ELEMENT_DIV as On,ImageExportUI as Co,SvgExportUI as En,TYPE_JPG as Cn,TYPE_PNG as _n,TYPE_SVG as yn}from"@visuallyjs/browser-ui";var _o={name:te,setup(e){return{service:hn(s)}},props:{surfaceId:{type:String},showLabel:{type:Boolean,default:!0},label:{type:String,default:"Export :"},margins:{type:Object},svgOptions:{type:Object},imageOptions:{type:Object},allowSvgExport:{type:Boolean,default:!0},allowPngExport:{type:Boolean,default:!0},allowJpgExport:{type:Boolean,default:!0}},methods:{loadSurface:function(e){let t=this.service.surface.value;t&&e(t)},exportSVG:function(){this.loadSurface(e=>{let t=this.svgOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new En(e).export(t)})},exportJPG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),t.type="image/jpeg",new Co(e).export(t)})},exportPNG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new Co(e).export(t)})}},render(){let e=this.showLabel!==!1,t=this.allowSvgExport!==!1,o=this.allowPngExport!==!1,n=this.allowJpgExport!==!1,i=[];return t&&i.push(R("i",{},[R("a",{href:"#","data-type":yn,onClick:()=>this.exportSVG()},"SVG")])),o&&i.push(R("i",{},[R("a",{href:"#","data-type":_n,onClick:()=>this.exportPNG()},"PNG")])),n&&i.push(R("i",{},[R("a",{href:"#","data-type":Cn,onClick:()=>this.exportJPG()},"JPG")])),e&&i.unshift(R("span",{},[this.label])),R(On,{class:`${fn} ${Pn}`},i)}};import{h as Tn,inject as gn,watch as yo}from"vue";import{ELEMENT_DIV as Sn,MiniviewPlugin as vn}from"@visuallyjs/browser-ui";var To={setup(e){return{service:gn(s)}},name:X,props:{[g]:{type:String},[I]:{type:String,default:""},[lt]:{type:Boolean,default:!0},[st]:{type:Boolean,default:!0},[at]:{type:Boolean,default:!0},[pt]:{type:Boolean,default:!0},[it]:{type:Function}},mounted:function(){let e=t=>{t.addPlugin({type:vn.type,options:{container:this.$el,activeTracking:this.activeTracking,clickToCenter:this.clickToCenter,showLasso:this.showLasso,trackSelection:this.trackSelection,typeFunction:this.typeFunction}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(yo(this.service.surface,e),yo(this.service.paper,e))},render:function(e){return Tn(Sn,{ref:"root",class:e.className})}};import{h as Rn,inject as Nn,markRaw as An}from"vue";import{createDiagram as xn,ELEMENT_DIV as Dn}from"@visuallyjs/browser-ui";var go={setup(e){return{service:Nn(s)}},name:oe,props:{[S]:{type:Object},[v]:{type:String},[M]:{type:Object},[b]:{type:Object}},mounted(){let e=this.$refs.root;this.diagram=An(xn(e,this.options,this.modelOptions)),this.service.setDiagram(this.diagram),this.data?this.diagram.load({data:this.data}):this.url&&this.diagram.load({url:this.url})},render:function(){return Rn(Dn,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{h as So,inject as In,watch as vo}from"vue";import{ColumnChart as Mn,BarChart as wn,CategoryValueChart as bn,ELEMENT_DIV as Ro,LineChart as Vn,AreaChart as Bn,PieChart as Ln,ScatterChart as Un,BubbleChart as Gn,GaugeChart as kn,SankeyChart as jn}from"@visuallyjs/browser-ui";var No={[I]:{type:String},[S]:{type:Object},[v]:{type:String},[Pt]:{type:Boolean,default:!1}},Ao={setup(){return{service:In(s)}},render:function(){return So(Ro,{class:`${this.className}`,ref:"root"})}};function y(e,t,o=!0){let n=w(x({},No),{[b]:{type:Object}}),i={};return o&&(n[Re]={type:Function},i[Re]=function(p){this.chart.setDataSourceFilter(p)}),w(x({},Ao),{name:e,props:n,watch:i,data:()=>({hasMounted:!1}),mounted(){let p=this.$refs.root,r=o?Object.assign({dataSourceFilter:this.dataSourceFilter},this.options):this.options;this.data&&(r.data=this.data),this.url&&(r.url=this.url);let a=()=>{this.hasMounted=!0,this.chart=new t(p,r)};this.useModel?this.service.model.value!=null?(r.dataSource=this.service.model.value,a()):vo(this.service.model,l=>{this.hasMounted||(r.dataSource=l,a())}):a()}})}var De=y(ne,Mn),Ie=y(ie,wn),Me=y(se,bn,!1),we=y(pe,Ln),be=y(ae,Vn),Ve=y(le,Bn),Be=y(ce,Un),Le=y(ue,Gn),Ue=y(de,kn,!1),Ge=w(x({},Ao),{name:me,props:w(x({},No),{[ht]:{type:String},[ft]:{type:Object},[dt]:{type:Boolean},[mt]:{type:String},[b]:{type:Object}}),data:()=>({hasMounted:!1}),mounted(){let e=this.$refs.root,t=Object.assign({},this.options);this.interactive!=null&&(t.interactive=this.interactive),this.pivot!=null&&(t.pivot=this.pivot),this.csvData&&(t.csvData=this.csvData),this.jsonData&&(t.jsonData=this.jsonData),this.url&&(t.url=this.url);let o=()=>{this.hasMounted=!1,this.chart=new jn(e,t)};if(this.useModel){let n=i=>{this.hasMounted||(t.dataSource=i,o())};this.service.model.value==null?vo(this.service.model,n):n(this.service.model.value)}else o()},watch:{pivot(e){this.chart&&this.chart.pivot(e)}},render:function(){return So(Ro,{class:`${this.className}`,ref:"root"})}});import{h as Fn,inject as Hn,watch as $n}from"vue";import{defaultDataGenerator as Wn,ELEMENT_DIV as zn,Palette as Kn}from"@visuallyjs/browser-ui";var xo={setup(e){return{service:Hn(s)}},name:Q,props:{[g]:{type:String},[Ot]:{type:String},[Et]:{type:Function},[Ct]:{type:Function},[_t]:{type:Function},[yt]:{type:Boolean,default:!1},[Tt]:{type:Boolean,default:!0},[gt]:{type:Boolean,default:!0},[St]:{type:Boolean,default:!1},[vt]:{type:Boolean,default:!1},[Dt]:Object,[Rt]:Function,[It]:Function,[I]:String,[ut]:String,[Nt]:{type:Boolean,default:!1},[xt]:{type:Boolean,default:!1},[At]:{type:Boolean,default:!1}},mounted:function(){let e=t=>{let o={source:this.$refs.root,selector:this.selector,dataGenerator:n=>this.dataGenerator?this.dataGenerator(n):Wn(n),allowDropOnEdge:this.allowDropOnEdge===!0,allowDropOnGroup:this.allowDropOnGroup!==!1,allowDropOnCanvas:this.allowDropOnCanvas!==!1,allowDropOnNode:this.allowDropOnNode===!0,ignoreDropOnNode:this.ignoreDropOnNode===!0,canvasDropFilter:this.canvasDropFilter,onVertexAdded:this.onVertexAdded,dragSize:this.dragSize,mode:this.mode};this.groupIdentifier!=null&&(o.groupIdentifier=this.groupIdentifier),this.typeGenerator!=null&&(o.typeGenerator=this.typeGenerator),this.palette=new Kn(t,o)};this.service.surface.value==null?$n(this.service.surface,e):e(this.service.surface.value)},render:function(){return Fn(zn,{ref:"root",class:this.className||""},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{provide as Jn}from"vue";var ke={setup(){Jn(s,new _("SurfaceProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{provide as Yn}from"vue";var je={setup(){Yn(s,new _("PaperProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{h as Xn,inject as Zn,watch as qn}from"vue";import{CLASS_SHAPE as Qn,convertToMultilineText as Do,DEFAULT_LABEL_FILL_RATIO as Fe,ELEMENT_SVG as ei}from"@visuallyjs/browser-ui";var He={name:H,props:{data:{type:Object},showLabels:{type:Boolean,default:!1},labelProperty:{type:String,default:"label"},labelStrokeWidth:{type:Number},multilineLabels:{type:Boolean,default:!0},labelFillRatio:{type:Number,default:Fe},labelColor:{type:String,default:"#000000"},font:{type:Object}},setup(){return{service:Zn(s)}},mounted(){let e=t=>{let o=t.getShapeLibrary(),n=o.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.appendChild(n),this.showLabels){let i=o.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(i),this.multilineLabels!=!1&&Do(i,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||Fe))}};this.service.ui.value==null?qn(this.service.ui,e):e(this.service.ui.value)},updated(){let e=this.service.surface.value;if(e){let t=e.getShapeLibrary(),o=t.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.replaceChildren(o),this.showLabels){let n=t.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(n),this.multilineLabels!=!1&&Do(n,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||Fe))}}},render:function(){return Xn(ei,{ref:"container",preserveAspectRatio:"none",fill:this.getFill(),stroke:this.getOutline(),"stroke-width":this.getOutlineWidth(),viewBox:"0 0 "+this.getWidth()+" "+this.getHeight(),class:Qn})},methods:{getWidth:function(){return this.data.width||Mt},getHeight:function(){return this.data.height||wt},getFill:function(){return this.data.fill||"#FFFFFF"},getOutline:function(){return this.data.outline||"#000000"},getOutlineWidth(){return this.data.outlineWidth||2}}};import{h as ti,inject as oi,watch as ri}from"vue";import{ELEMENT_DIV as ni,ShapePalette as ii}from"@visuallyjs/browser-ui";var $e={name:$,props:{surfaceId:{type:String},dragSize:Object,iconSize:Object,fill:String,outline:String,showAllMessage:String,selectAfterDrop:Boolean,paletteStrokeWidth:Number,dataGenerator:Function,initialSet:String,mode:String,allowClickToAdd:Boolean,onVertexAdded:Function,showLabels:Boolean,inspector:{type:Boolean,default:!0},preparedShapes:Array},setup(e){return{service:oi(s)}},data:()=>({hasMounted:!1}),mounted(){let e=t=>{this.hasMounted||(this.hasMounted=!0,new ii(t,{container:this.$refs.container,shapeLibrary:t.getShapeLibrary(),dragSize:this.dragSize,iconSize:this.iconSize,fill:this.fill,outline:this.outline,showAllMessage:this.showAllMessage,selectAfterDrop:this.selectAfterDrop,paletteStrokeWidth:this.paletteStrokeWidth,dataGenerator:this.dataGenerator,initialSet:this.initialSet,mode:this.mode,allowClickToAdd:this.allowClickToAdd,onVertexAdded:this.onVertexAdded,showLabels:this.showLabels,inspector:this.inspector,preparedShapes:this.preparedShapes}))};this.service.surface.value==null?ri(this.service.surface,e):e(this.service.surface.value)},render:function(){return ti(ni,{ref:"container"})}};import{provide as Io,readonly as si,inject as ai,h as li,watch as pi}from"vue";import{ELEMENT_DIV as ci,Inspector as ui,log as di}from"@visuallyjs/browser-ui";var U=Symbol.for("VueInspectorGetter"),mi=Symbol.for("VueInspectorSetter");function hi(){let e=[],t=null;function o(p){try{p(t)}catch(r){di("WARN: inspector listener threw an exception",r)}}let n={listen:p=>{t!=null?o(p):e.push(p)}},i={inspector:p=>{t=p,e.forEach(o)}};return Io(mi,i),Io(U,si(n)),i}var We={name:he,props:{autoCommit:{type:Boolean,default:!0},multipleSelections:{type:Boolean,default:!0},filter:Function,renderEmptyContainer:Function,refresh:Function,className:String,showCloseButton:Boolean,afterUpdate:Function,modelValue:Object},emits:["update:modelValue"],setup(e,t){let o=hi();return{service:ai(s),inspectorProvider:o,inspector:null,emit:t.emit}},mounted(){let e=t=>{if(this.inspector==null){let o=new ui({container:this.$refs.root,ui:t,renderEmptyContainer:()=>(this.emit("update:modelValue",null),this.renderEmptyContainer?this.renderEmptyContainer():""),refresh:(n,i)=>{this.emit("update:modelValue",n),this.refresh&&this.refresh(n),setTimeout(i)},autoCommit:this.autoCommit,multipleSelections:this.multipleSelections,filter:this.filter,showCloseButton:this.showCloseButton,afterUpdate:()=>this.afterUpdate?this.afterUpdate(t):null});this.inspectorProvider.inspector(o)}};this.service.surface.value==null?pi(this.service.surface,e):e(this.service.surface.value)},render(){return li(ci,{ref:"root"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{h as fi,inject as Pi}from"vue";import{EdgeTypePicker as Oi,ELEMENT_DIV as Ei,log as Ci}from"@visuallyjs/browser-ui";var ze={name:W,props:{propertyName:String},setup(){return{inspectorProvider:Pi(U)}},mounted(){this.inspectorProvider?this.inspectorProvider.listen(e=>{let t=new Oi(e.$ui,this.$refs.container,e.$ui.$getEdgePropertyMappings(),e.getValue(this.propertyName),(o,n)=>{e.setValue(this.propertyName,n,null)});t.render(this.propertyName,e.m),e.onChange(()=>{t.select(this.propertyName,e.getValue(this.propertyName))})}):Ci("WARN: EdgeTypePicker not instantiated inside an InspectorComponent. Cannot mount.")},render:function(){return fi(Ei,{ref:"container"})}};import{h as _e,inject as _i}from"vue";import{CLASS_COLOR_PICKER as Mo,CLASS_COLOR_PICKER_SWATCH as wo,CLASS_COLOR_PICKER_SWATCHES as bo,EVENT_CONTEXT_UPDATE as yi,ELEMENT_DIV as Ke,INSPECTOR_CONTEXT_RECENT_COLORS as ye}from"@visuallyjs/browser-ui";var Vo={render(){let e=this.swatches.map(t=>_e(Ke,{title:t,class:wo,style:`background-color:${t}`,"data-color":t,onClick:()=>this.selectSwatch(t)}));return _e(Ke,{class:`${Mo}`},[_e("input",{type:"color","vjs-att":this.propertyName,ref:"colorInput"}),_e(Ke,{class:bo},e)])},props:{propertyName:String,maxColors:{type:Number,default:10}},data:()=>({CLASS_COLOR_PICKER:Mo,CLASS_COLOR_PICKER_SWATCHES:bo,CLASS_COLOR_PICKER_SWATCH:wo,colorInput:null,swatches:[]}),mounted(){let e=_i(U);e&&e.listen(t=>{this.inspector=t,this.swatches=t.ensureContext(ye,()=>[]),this.colorInput=this.$refs.colorInput,this.colorInput.addEventListener("change",this.colorPicked),t.bind(yi,o=>{o.key===ye&&(this.swatches=o.value.slice())}),t.bind("change",this.setCurrentColor),this.setCurrentColor()})},methods:{addColor:function(e){let t=this.inspector.ensureContext(ye,()=>[]);if(e=e.toUpperCase(),!(t.find(n=>n.toUpperCase()===e)!=null)){let n=this.maxColors||10,i=t.slice();i.unshift(e),i.length>n&&(i.length=n),this.inspector.updateContext(ye,i)}},colorPicked:function(){let e=this.colorInput.value;this.inspector.setValue(this.propertyName,e,null),this.addColor(e)},selectSwatch:function(e){this.inspector.setValue(this.propertyName,e,null),this.colorInput.value=e},setCurrentColor:function(){let e=this.inspector.getValue(this.propertyName);e!=null&&(this.colorInput.value=e,this.addColor(e))}}};import{h as Te,inject as Ti,nextTick as gi,Teleport as Si,watch as vi}from"vue";import{ELEMENT_DIV as Je,uuid as Ri}from"@visuallyjs/browser-ui";var Ye={props:{placement:{type:String,default:"floating"},position:{type:Object},constraints:{type:Object}},data:()=>({hasMounted:!1,surface:null}),setup(e){return{service:Ti(s)}},mounted(){let e=t=>{if(!this.hasMounted){this.surface=t,this.hasMounted=!0;let o=this.position||{x:0,y:0};gi().then(()=>{this.placement==="floating"?t.floatElement(this.$refs.root,o):t.fixElement(this.$refs.fixedEl,o,this.constraints)})}};this.service.surface.value==null?vi(this.service.surface,e):e(this.service.surface.value)},render(){return Te(Je,{ref:"root"},this.hasMounted?this.placement==="floating"?Te(Je,{},this.$slots.hasOwnProperty("default")?this.$slots.default():[]):Te(Si,{to:this.surface.vertexLayer,key:Ri()},Te(Je,{ref:"fixedEl"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])):[])}};import{provide as Ni}from"vue";var Xe={setup(){Ni(s,new _("DiagramProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{h as Ai,inject as xi,watch as Di}from"vue";import{DiagramPalette as Ii,ELEMENT_DIV as Mi,log as wi}from"@visuallyjs/browser-ui";var Ze={name:re,props:{fill:String,outline:String,dragSize:Object,inspector:{type:Boolean,default:!0},iconSize:Object,showLabels:Boolean,paletteStrokeWidth:Number,showAllMessage:String,onCellAdded:Function,mode:String,allowClickToAdd:Boolean,autoExitDrawMode:Boolean,selectAfterAdd:{type:Boolean,default:!0},className:String,diagram:{type:Object},onVertexAdded:Function,preparedShapes:Array},setup(e){return{service:xi(s)}},data:()=>({hasMounted:!1}),mounted(){if(this.service==null&&this.diagram==null)wi("Cannot mount DiagramPalette - no service found and Diagram not passed in as a prop");else{let e=t=>{this.hasMounted||(this.hasMounted=!0,new Ii(this.$refs.container,t,{fill:this.fill,outline:this.outline,dragSize:this.dragSize,inspector:this.inspector,iconSize:this.iconSize,showLabels:this.showLabels,paletteStrokeWidth:this.paletteStrokeWidth,showAllMessage:this.showAllMessage,onCellAdded:this.onCellAdded,mode:this.mode,allowClickToAdd:this.allowClickToAdd,autoExitDrawMode:this.autoExitDrawMode,selectAfterAdd:this.selectAfterAdd,onVertexAdded:this.onVertexAdded,preparedShapes:this.preparedShapes}))};this.diagram?e(this.diagram):this.service.diagram.value!=null?e(this.service.diagram.value):Di(this.service.diagram,e)}},render:function(){return Ai(Mi,{ref:"container"})}};import{BLOCK as bi,ELEMENT_DIV as Vi,NONE as Bi,PopupHandler as Li,CLASS_SURFACE_POPUP as Ui,ABSOLUTE as Gi}from"@visuallyjs/browser-ui";import{h as ki,inject as ji,onMounted as Fi,ref as ge,watch as Hi}from"vue";var qe={name:"SurfacePopup",props:{selector:String,anchor:{type:String,default:"bottom"}},setup(e){let t=ji(s),o=ge(null),n=ge("block"),i=ge(null),p=ge(null),r=a=>{p.value=new Li(e.selector,i.value,a,l=>{o.value=l,l==null?n.value=Bi:(n.value=bi,requestAnimationFrame(()=>p.value.$positionPopup()))},e.anchor)};return Fi(()=>{t.surface.value==null?Hi(t.surface,r):r(t.surface.value)}),{service:t,current:o,display:n,rootRef:i,handler:p}},render(){var e;return ki(Vi,{ref:"rootRef",display:this.display,position:Gi,class:Ui},this.$slots.hasOwnProperty("default")?this.$slots.default({vertex:this.current,model:(e=this.service.surface.value)==null?void 0:e.model,ui:this.service.surface.value,hide:()=>{var t;return(t=this.handler)==null?void 0:t.$hide()}}):[])}};import{inject as Se,watch as N}from"vue";import{BackgroundPlugin as ve,GeneratedGridBackground as $i,SimpleBackground as Wi,TiledBackground as zi}from"@visuallyjs/browser-ui";var Bo={setup(){return{service:Se(s)}},name:z,props:{options:{type:Object}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:this.options})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(N(this.service.surface,e),N(this.service.paper,e))},render:function(e){return[]}},Lo={setup(){return{service:Se(s)}},name:K,props:{grid:{type:Object},showBorder:{type:Boolean},minWidth:{type:Number},minHeight:{type:Number},showTickMarks:{type:Boolean},tickMarksPerCell:{type:Number},maxWidth:{type:Number},maxHeight:{type:Number},autoShrink:{type:Boolean},gridType:{type:String},dotRadius:{type:Number},tickDotRadius:{type:Number},visible:{type:Boolean}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:$i.type,grid:this.grid,showBorder:this.showBorder,minWidth:this.minWidth,minHeight:this.minHeight,showTickMarks:this.showTickMarks,tickMarksPerCell:this.tickMarksPerCell,maxWidth:this.maxWidth,maxHeight:this.maxHeight,autoShrink:this.autoShrink,gridType:this.gridType,dotRadius:this.dotRadius,tickDotRadius:this.tickDotRadius,visible:this.visible}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(N(this.service.surface,e),N(this.service.paper,e))},render:function(e){return[]}},Uo={setup(){return{service:Se(s)}},name:J,props:{url:{type:String}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:Wi.type,url:this.url}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(N(this.service.surface,e),N(this.service.paper,e))},render:function(e){return[]}},Go={setup(){return{service:Se(s)}},name:Y,props:{url:{type:String},urlGenerator:{type:Function},tileSize:{type:Object},width:{type:Number},height:{type:Number},maxZoom:{type:Number},tiling:{type:String},panDebounceTimeout:{type:Number},zoomDebounceTimeout:{type:Number}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:zi.type,url:this.url,urlGenerator:this.urlGenerator,tileSize:this.tileSize,width:this.width,height:this.height,tiling:this.tiling,panDebounceTimeout:this.panDebounceTimeout,zoomDebounceTimeout:this.zoomDebounceTimeout}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(N(this.service.surface,e),N(this.service.paper,e))},render:function(e){return[]}};var sd={install:function(e,t){e.component(Ut,ke),e.component(Gt,je),e.component(kt,Xe),e.component(Z,ro),e.component(q,so),e.component(oe,go),e.component(X,To),e.component(ee,Eo),e.component(te,_o),e.component(z,Bo),e.component(K,Lo),e.component(J,Uo),e.component(Y,Go),e.component(Q,xo),e.component(re,Ze),e.component(ie,Ie),e.component(ne,De),e.component(se,Me),e.component(ae,be),e.component(le,Ve),e.component(pe,we),e.component(me,Ge),e.component(de,Ue),e.component(ue,Le),e.component(ce,Be),e.component(H,He),e.component($,$e),e.component(W,ze),e.component(bt,Vo),e.component(he,We),e.component(Ft,Ye),e.component(jt,qe),e.provide(s,new _("root"))}};import{shallowRef as Qe,ref as Ki}from"vue";import{EVENT_ZOOM as et}from"@visuallyjs/browser-ui";import{inject as Ji}from"vue";function hd(){let e=Ji(s),t=Qe(null),o=Qe(null),n=Qe(null),i=Ki(1);return e==null||e.getSurface(p=>{o.value=p,o.value.bind(et,r=>{i.value=r.zoom})}),e==null||e.getDiagram(p=>{t.value=p,t.value.$ui.bind(et,r=>{i.value=r.zoom})}),e==null||e.getPaper(p=>{n.value=p,n.value.bind(et,r=>{i.value=r.zoom})}),i}import{inject as Yi,onUnmounted as Xi}from"vue";import{EVENT_DATA_UPDATED as ko,EVENT_GRAPH_CLEARED as jo}from"@visuallyjs/browser-ui";function Sd(e){let t=Yi(s);if(t){let o=null,n=()=>{o&&e(o)},i=()=>{o&&(o.unbind(ko,n),o.unbind(jo,n))},p=r=>{i(),o=r,o&&(o.bind(ko,n),o.bind(jo,n),n())};t.getModel(r=>{p(r)}),Xi(()=>{i()})}}import{shallowRef as Zi}from"vue";import{inject as qi}from"vue";function Dd(){let e=qi(s),t=Zi(null);return e==null||e.getSurface(o=>{t.value=o}),t}import{shallowRef as Qi}from"vue";import{inject as es}from"vue";function Bd(){let e=es(s),t=Qi(null);return e==null||e.getDiagram(o=>{t.value=o}),t}import{shallowRef as ts}from"vue";import{inject as os}from"vue";function Fd(){let e=os(s),t=ts(null);return e==null||e.getPaper(o=>{t.value=o}),t}export{Ce as $initialiseVueOverlays,Ve as AreaChartComponent,Bo as BackgroundComponent,Ie as BarChartComponent,Zt as BaseOverlayComponent,O as BrowserUIVueModel,Le as BubbleChartComponent,Bt as CLASS_VUE_GROUP,Vt as CLASS_VUE_NODE,Lt as CLASS_VUE_OVERLAY,le as COMPONENT_AREA_CHART,z as COMPONENT_BACKGROUND,ie as COMPONENT_BAR_CHART,ue as COMPONENT_BUBBLE_CHART,ne as COMPONENT_COLUMN_CHART,ee as COMPONENT_CONTROLS,oe as COMPONENT_DIAGRAM,re as COMPONENT_DIAGRAM_PALETTE,kt as COMPONENT_DIAGRAM_PROVIDER,te as COMPONENT_EXPORT_CONTROLS,de as COMPONENT_GAUGE_CHART,K as COMPONENT_GRID_BACKGROUND,J as COMPONENT_IMAGE_BACKGROUND,he as COMPONENT_INSPECTOR,ae as COMPONENT_LINE_CHART,X as COMPONENT_MINIVIEW,Q as COMPONENT_PALETTE,q as COMPONENT_PAPER,Gt as COMPONENT_PAPER_PROVIDER,pe as COMPONENT_PIE_CHART,me as COMPONENT_SANKEY_CHART,ce as COMPONENT_SCATTER_CHART,Z as COMPONENT_SURFACE,jt as COMPONENT_SURFACE_POPUP,Ut as COMPONENT_SURFACE_PROVIDER,Y as COMPONENT_TILED_IMAGE_BACKGROUND,se as COMPONENT_XY_CHART,Vo as ColorPickerComponent,De as ColumnChartComponent,Eo as ControlsComponent,wt as DEFAULT_SHAPE_HEIGHT,Mt as DEFAULT_SHAPE_WIDTH,nt as DEFAULT_VUE_PAPER_ID,rt as DEFAULT_VUE_SURFACE_ID,Ye as DecoratorComponent,go as DiagramComponent,Ze as DiagramPaletteComponent,Xe as DiagramProvider,dr as EVENT_VERTEX_UPDATED,ur as EVENT_VERTICES_RENDERED,ze as EdgeTypePickerComponent,_o as ExportControlsComponent,Ue as GaugeChartComponent,Lo as GridBackgroundComponent,Uo as ImageBackgroundComponent,We as InspectorComponent,U as InspectorGetterSymbol,mi as InspectorSetterSymbol,be as LineChartComponent,To as MiniviewComponent,lt as PROP_ACTIVE_TRACKING,xt as PROP_ALLOW_CLICK_TO_ADD,Tt as PROP_ALLOW_DROP_ON_CANVAS,yt as PROP_ALLOW_DROP_ON_EDGE,gt as PROP_ALLOW_DROP_ON_GROUP,St as PROP_ALLOW_DROP_ON_NODE,It as PROP_CANVAS_DROP_FILTER,I as PROP_CLASS_NAME,At as PROP_CLICK_TO_ADD_ONLY,st as PROP_CLICK_TO_CENTER,ht as PROP_CSV_DATA,S as PROP_DATA,Et as PROP_DATA_GENERATOR,Re as PROP_DATA_SOURCE_FILTER,F as PROP_DATA_TYPE,Dt as PROP_DRAG_SIZE,_t as PROP_GROUP_IDENTIFIER,Vs as PROP_ID,vt as PROP_IGNORE_DROP_ON_NODE,dt as PROP_INTERACTIVE,ft as PROP_JSON_DATA,ut as PROP_MODE,k as PROP_MODEL,M as PROP_MODEL_OPTIONS,Rt as PROP_ON_VERTEX_ADDED,b as PROP_OPTIONS,ct as PROP_PAPER_ID,mt as PROP_PIVOT,G as PROP_RENDER_OPTIONS,Ot as PROP_SELECTOR,Nt as PROP_SELECT_AFTER_ADD,at as PROP_SHOW_LASSO,g as PROP_SURFACE_ID,pt as PROP_TRACK_SELECTION,it as PROP_TYPE_FUNCTION,Ct as PROP_TYPE_GENERATOR,v as PROP_URL,Pt as PROP_USE_MODEL,j as PROP_VIEW_OPTIONS,xo as PaletteComponent,so as PaperComponent,je as PaperProvider,we as PieChartComponent,Ge as SankeyChartComponent,Be as ScatterChartComponent,He as ShapeComponent,$e as ShapePaletteComponent,ro as SurfaceComponent,qe as SurfacePopup,ke as SurfaceProvider,bt as TAG_COLOR_PICKER,Ft as TAG_DECORATOR,W as TAG_EDGE_TYPE_PICKER,H as TAG_SHAPE,$ as TAG_SHAPE_PALETTE,Go as TiledImageBackgroundComponent,sd as VisuallyJsPlugin,_ as VisuallyJsService,s as VisuallyJsServiceKey,Me as XYChartComponent,Qt as addPaper,qt as addSurface,Ea as bindToDevLifecycle,hi as doProvideInspector,ls as newInstance,Bd as useDiagram,Fd as usePaper,Dd as useSurface,Sd as useVisuallyJsUpdate,hd as useZoom,$t as vertexHasRendered,Wt as vertexHasUpdated,mr as vertexWillRender};
|
|
1
|
+
var Ko=Object.defineProperty,Jo=Object.defineProperties;var Yo=Object.getOwnPropertyDescriptors;var ot=Object.getOwnPropertySymbols;var Xo=Object.prototype.hasOwnProperty,Zo=Object.prototype.propertyIsEnumerable;var rt=(e,t,o)=>t in e?Ko(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,x=(e,t)=>{for(var o in t||(t={}))Xo.call(t,o)&&rt(e,o,t[o]);if(ot)for(var o of ot(t))Zo.call(t,o)&&rt(e,o,t[o]);return e},b=(e,t)=>Jo(e,Yo(t));import{log as qo,BrowserUIModel as Qo}from"@visuallyjs/browser-ui";var P=class extends Qo{render(t,o){return qo("render called directly on BrowserUiVue class: should not happen. Surface component should use internal render."),null}};function fs(e){return e=e||{},new P(e)}var nt="surfaceId",it="paperId",st="typeFunction",at="clickToCenter",lt="showLasso",pt="activeTracking",ct="trackSelection",v="surfaceId",ut="paperId",I="className",y="data",dt="mode",M="options",G="renderOptions",w="modelOptions",k="model",F="viewOptions",T="url",j="dataType",mt="interactive",ht="pivot",Re="dataSourceFilter",ft="csvData",Ot="jsonData",Pt="useModel",$s="id",Et="selector",Ct="dataGenerator",yt="typeGenerator",Tt="groupIdentifier",_t="allowDropOnEdge",gt="allowDropOnCanvas",St="allowDropOnGroup",vt="allowDropOnNode",Rt="ignoreDropOnNode",At="onVertexAdded",Nt="selectAfterAdd",xt="clickToAddOnly",Dt="allowClickToAdd",It="allowRotation",wt="rotationSpeed",bt="autoEdgeConnect",Mt="dragSize",Vt="canvasDropFilter",H="Shape",$="ShapePalette",Bt=120,Lt=90,W="EdgeTypePickerComponent",Ut="ColorPickerComponent",Gt="vjs-vue-node",kt="vjs-vue-group",Ft="vjs-vue-overlay",z="BackgroundComponent",K="GridBackgroundComponent",J="ImageBackgroundComponent",Y="TiledImageBackgroundComponent",X="MiniviewComponent",Z="SurfaceComponent",jt="SurfaceProvider",q="PaperComponent",Ht="PaperProvider",$t="DiagramProvider",Q="PaletteComponent",ee="ControlsComponent",te="ExportControlsComponent",oe="DiagramComponent",re="DiagramPaletteComponent",ne="ColumnChartComponent",ie="BarChartComponent",se="XYChartComponent",ae="LineChartComponent",le="AreaChartComponent",pe="PieChartComponent",ce="ScatterChartComponent",ue="BubbleChartComponent",de="GaugeChartComponent",me="SankeyChartComponent",he="InspectorComponent",Wt="SurfacePopup",zt="Decorator";import{addClass as er,BrowserUI as tr,isGroup as or,Vertex as Kt}from"@visuallyjs/browser-ui";var fe={props:{data:Object,model:P,obj:Kt,vertex:Kt,ui:tr,el:Element,def:Object,eventInfo:Object},mounted(){let e=this,t=or(e.vertex)?kt:Gt;e.el.firstElementChild&&er(e.el.firstElementChild,t),e.ui.$vertexRendered(e.vertex,e.el,e.def,e.eventInfo),Jt(e.ui.id,e.vertex)},methods:{getModel:function(){return this.model},removeVertex:function(){this.model.remove(this.vertex)}},updated(){this.ui.$revalidateElement(this.el),Yt(this.ui.id,this.vertex)}};var Xt={mixins:[fe],methods:{getNode:function(){return this.obj},removeNode:function(){this.model.removeNode(this.getNode())},updateNode:function(e){this.model.updateNode(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}}};var Zt={methods:{getGroup:function(){return this.obj},removeGroup:function(e){this.model.removeGroup(this.obj,e)},updateGroup:function(e){this.model.updateGroup(this.obj,e);let t=this.ui.getRenderedElement(this.obj.getFullId());this.ui.$revalidateElement(t)}},mixins:[fe]};import{markRaw as E}from"vue";import{addClass as rr,BrowserUI as nr,CLASS_DEFAULT_GROUP as ir,CLASS_DEFAULT_NODE as sr,ELEMENT_DIV as qt,extend as Qt,isGroup as ar,OptimisticEventGenerator as lr,renderSurface as pr,updateClasses as cr,Overlay as ur,Edge as eo,OVERLAY_TYPE_CUSTOM as dr,uuid as mr,renderPaper as hr}from"@visuallyjs/browser-ui";var Ae=class{constructor(){this.unrenderedVertices=new Map;this.eventManager=new lr;this.hasRendered=!1}vertexWillRender(t){this.unrenderedVertices.set(t.id,t),this.hasRendered=!1}vertexHasRendered(t){this.unrenderedVertices.delete(t.id),this.unrenderedVertices.size===0&&(this.hasRendered=!0,this.eventManager.fire(Ne))}vertexHasUpdated(t){this.eventManager.fire(fr,t)}},Ne="vertices:rendered",fr="vertex:updated",xe=new Map;function Oe(e){return xe.has(e)||xe.set(e,new Ae),xe.get(e)}function Jt(e,t){Oe(e).vertexHasRendered(t)}function Yt(e,t){Oe(e).vertexHasUpdated(t)}function Or(e,t){Oe(e).vertexWillRender(t)}function Aa(e,t,o){let n=Oe(e);n&&(n.eventManager.bind(t,o),t===Ne&&n.hasRendered&&n.eventManager.fire(Ne))}var Pe=(e,t)=>{t.parentNode&&t.parentNode.removeChild(t)},to={props:{data:Object,model:P,obj:eo,edge:eo,overlay:ur,ui:nr,el:Element,def:Object,eventInfo:Object},mounted(){let e=this;e.el.firstElementChild&&rr(e.el.firstElementChild,Ft)},updated(){this.ui.$revalidateElement(this.el)}},Ee=(e,t,o,n,i,p,r,a,l)=>{let d=r.component!=null,u=ar(a),h=[];d||h.push(u?ir:sr);let m=d?r.component:{render(f){return f.data.label||""}};if(m){let f=document.createElement(qt);cr(f,h),m.mixins==null&&(m.mixins=[]);let O=u?Zt:Xt;m.mixins.find(C=>C===O)||m.mixins.push(O),Or(p.id,a);let D={data:o,model:E(n),ui:E(p),obj:E(a),vertex:E(a),el:f,def:E(r),eventInfo:l==null?null:E(l)};if(r.inject)for(let C in r.inject){let N=r.inject[C],zo=typeof N=="function"?N(a,n):N;D[C]=zo}e.push({component:E(m),el:f,t:a.getFullId(),props:D,vertex:a})}};function oo(e,t,o,n,i,p){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(l,d,u,h)=>{},render:(l,d,u,h,m,f,O,S)=>Ee(n,l,d,u,h,m,f,O,S),cleanupVertex:Pe,cleanupPort:Pe,rerender:(l,d,u,h,m,f,O,S,D)=>{let C=n.findIndex(N=>N.vertex===O);C!=null&&n.splice(C,1)[0].el,m.$__unmanage(D,!0,!0),requestAnimationFrame(()=>{Ee(n,l,d,u,h,m,f,O,S)})}},a=Qt(i||{},{view:p||{},id:t});return pr(e,o,r,a)}function ro(e,t,o,n,i,p){let r={reactive:!0,asynchronous:!0,usesWrapperElement:!1,update:(l,d,u,h)=>{},render:(l,d,u,h,m,f,O,S)=>Ee(n,l,d,u,h,m,f,O,S),cleanupVertex:Pe,cleanupPort:Pe,rerender:(l,d,u,h,m,f,O,S,D)=>{let C=n.findIndex(N=>N.vertex===O);C!=null&&n.splice(C,1)[0].el,m.$__unmanage(D,!0,!0),requestAnimationFrame(()=>{Ee(n,l,d,u,h,m,f,O,S)})}},a=Qt(i||{},{view:p||{},id:t});return hr(e,o,r,a)}function Ce(e,t,o,n){if(e.edges)for(let i in e.edges){let p=e.edges[i];p.overlays&&(p.overlays=p.overlays.map(r=>{let a={};return r.component!=null?{type:dr,options:{create:d=>{let u=document.createElement(qt),h=mr();r.component.mixins==null&&(r.component.mixins=[]),r.component.mixins.indexOf(to)===-1&&r.component.mixins.push(to);let m=x({data:d.edge.data,model:E(o()),ui:E(t()),obj:d.edge,edge:d.edge,el:u,def:E(r),eventInfo:null,overlay:r},a);return n.push({component:E(r.component),el:u,t:h,props:m}),u}}}:r}))}}import{log as no,Paper as Pr,Surface as Er}from"@visuallyjs/browser-ui";import{shallowRef as V}from"vue";var s=Symbol.for("visuallyjs-service"),_=class{constructor(t){this.context=t;this.s=[];this.a=[];this.l=[];this.p=[];this.surface=V(null);this.model=V(null);this.paper=V(null);this.diagram=V(null);this.ui=V(null)}getSurface(t){this.o(this.a,t,this.c)}getDiagram(t){this.o(this.l,t,this.u)}getPaper(t){this.o(this.p,t,this.m)}getModel(t){this.o(this.s,t,this.n)}getModelDirect(){return this.n}o(t,o,n){if(n!=null)try{o(n)}catch(i){no(`WARN: could not dispatch ${i}`)}else t.push(o)}setSurface(t){this.surface.value=t,this.model.value=t.model,this.ui.value=t,this.c=t,this.i(t.model),this.r(this.a,t)}setDiagram(t){this.diagram.value=t,this.model.value=t.model,this.ui.value=t.$ui,this.u=t,this.i(t.model),t.$ui instanceof Er?this.setSurface(t.$ui):t.$ui instanceof Pr&&this.setPaper(t.$ui),this.r(this.l,t)}setPaper(t){this.paper.value=t,this.model.value=t.model,this.ui.value=t,this.m=t,this.i(t.model),this.r(this.p,t)}i(t){this.n=t,this.r(this.s,t)}r(t,o){t.forEach(n=>{try{n(o)}catch(i){no(`WARN: could not flush all queue entries ${i}`)}})}};import{h as B,inject as Cr,Teleport as io}from"vue";import{ELEMENT_DIV as yr,EVENT_GROUP_REMOVED as Tr,EVENT_GROUP_UPDATED as _r,EVENT_NODE_REMOVED as gr,EVENT_NODE_UPDATED as Sr,EVENT_RENDER_END as vr,clone as so,EVENT_EDGE_UPDATED as Rr,EVENT_EDGE_REMOVED as Ar,EVENT_GRAPH_CLEARED as Nr}from"@visuallyjs/browser-ui";var ao={setup(e){return{service:Cr(s),surfaceId:e.surfaceId||nt}},name:Z,props:{[y]:{type:Object},[G]:{type:Object},[w]:{type:Object},[F]:{type:Object},[k]:{type:Object},[T]:{type:String},[j]:{type:String},[v]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new P(this.modelOptions||{}),o=this.$refs.root;e.e=!1;let n=so(this.viewOptions||{});Ce(n,()=>this.surface,()=>t,this.overlays),this.surface=oo(t,this.surfaceId,o,this.vertices,so(this.renderOptions||{}),n),this.service.setSurface(this.surface);let i=(r,a)=>{let l=()=>{let u={};return a.originalData||a.updates?u=Object.assign(a.originalData,a.updates):a.newData&&Object.assign(u,a.newData),u},d=this.vertices.find(u=>u.t===r);d!=null&&(d.props.data=l())},p=r=>{let a=this.vertices.findIndex(l=>l.t===r);a!==-1&&this.vertices.splice(a,1)};t.bind(Sr,r=>{i(r.vertex.getFullId(),r)}),t.bind(_r,r=>{i(r.vertex.getFullId(),r)}),t.bind(gr,r=>{p(r.node.id)}),t.bind(Tr,r=>{p(r.group.id)}),t.bind(Rr,r=>{let a=r.edge.id;this.overlays.forEach(l=>{l.props.edge&&l.props.edge.id===a&&(l.props.data=r.edge.data)})}),t.bind(Ar,r=>{let a=r.edge.id,l=this.overlays.length-1;for(;l>=0;)this.overlays[l].props.edge&&this.overlays[l].props.edge.id===a&&this.overlays.splice(l,1),l--}),t.bind(Nr,()=>{this.vertices.length=0,this.overlays.length=0}),this.surface.bind(vr,()=>setTimeout(()=>this.surface.$redrawEveryConnection())),e.url?t.load({url:e.url,dataType:e.dataType,onload:()=>e.e=!0}):e.data?t.load({data:e.data,dataType:e.dataType,onload:()=>e.e=!0}):e.e=!0},watch:{[y]:{handler(e){this.e!==!1&&this.surface&&this.surface.model&&(this.surface.model.clear(),requestAnimationFrame(()=>{this.surface.model.load({data:e,dataType:this.dataType})}))}},[T]:{handler(e){this.e!==!1&&this.surface&&this.surface.model&&(this.surface.model.clear(),requestAnimationFrame(()=>{this.surface.model.load({url:e,dataType:this.dataType})}))}}},render:function(){let e=this.vertices.map(t=>B(io,{to:t.el,key:t.t},[B(t.component,t.props)]));return this.overlays.forEach(t=>{e.push(B(io,{to:t.el,key:t.t},[B(t.component,t.props)]))}),B(yr,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};import{h as L,inject as xr,Teleport as lo}from"vue";import{ELEMENT_DIV as Dr,EVENT_GROUP_REMOVED as Ir,EVENT_GROUP_UPDATED as wr,EVENT_NODE_REMOVED as br,EVENT_NODE_UPDATED as Mr,EVENT_RENDER_END as Vr,clone as po,EVENT_EDGE_UPDATED as Br,EVENT_EDGE_REMOVED as Lr,EVENT_GRAPH_CLEARED as Ur}from"@visuallyjs/browser-ui";var co={setup(e){return{service:xr(s),paperId:e.paperId||it}},name:q,props:{[y]:{type:Object},[G]:{type:Object},[w]:{type:Object},[F]:{type:Object},[k]:{type:Object},[T]:{type:String},[j]:{type:String},[ut]:{type:String}},data:function(){return{vertices:[],overlays:[]}},mounted(){let e=this,t=this.model||new P(this.modelOptions||{}),o=this.$refs.root;e.e=!1;let n=po(this.viewOptions||{});Ce(n,()=>this.paper,()=>t,this.overlays),this.paper=ro(t,this.paperId,o,this.vertices,po(this.renderOptions||{}),n),this.service.setPaper(this.paper);let i=(r,a)=>{let l=()=>{let u={};return a.originalData||a.updates?u=Object.assign(a.originalData,a.updates):a.newData&&Object.assign(u,a.newData),u},d=this.vertices.find(u=>u.t===r);d!=null&&(d.props.data=l())},p=r=>{let a=this.vertices.findIndex(l=>l.t===r);a!==-1&&this.vertices.splice(a,1)};t.bind(Mr,r=>{i(r.vertex.getFullId(),r)}),t.bind(wr,r=>{i(r.vertex.getFullId(),r)}),t.bind(br,r=>{p(r.node.id)}),t.bind(Ir,r=>{p(r.group.id)}),t.bind(Br,r=>{let a=r.edge.id;this.overlays.forEach(l=>{l.props.edge&&l.props.edge.id===a&&(l.props.data=r.edge.data)})}),t.bind(Lr,r=>{let a=r.edge.id,l=this.overlays.length-1;for(;l>=0;)this.overlays[l].props.edge&&this.overlays[l].props.edge.id===a&&this.overlays.splice(l,1),l--}),t.bind(Ur,()=>{this.vertices.length=0,this.overlays.length=0}),this.paper.bind(Vr,()=>setTimeout(()=>this.paper.$redrawEveryConnection())),e.url?t.load({url:e.url,dataType:e.dataType,onload:()=>e.e=!0}):e.data?t.load({data:e.data,dataType:e.dataType,onload:()=>e.e=!0}):e.e=!0},watch:{[y]:{handler(e){this.e!==!1&&this.paper&&this.paper.model&&(this.paper.model.clear(),requestAnimationFrame(()=>{this.paper.model.load({data:e,dataType:this.dataType})}))}},[T]:{handler(e){this.e!==!1&&this.paper&&this.paper.model&&(this.paper.model.clear(),requestAnimationFrame(()=>{this.paper.model.load({url:e,dataType:this.dataType})}))}}},render:function(){let e=this.vertices.map(t=>L(lo,{to:t.el,key:t.t},[L(t.component,t.props)]));return this.overlays.forEach(t=>{e.push(L(lo,{to:t.el,key:t.t},[L(t.component,t.props)]))}),L(Dr,{ref:"root",class:"vjs-vue-paper",style:{width:"100%",height:"100%"}},e.concat(this.$slots.hasOwnProperty("default")?this.$slots.default():[]))}};import{h as c,inject as Gr,watch as kr}from"vue";import{LassoPlugin as Fr,SURFACE_MODE_SELECT as uo,SURFACE_MODE_PAN as mo,PAN_PATH as jr,PAN_VIEW_BOX as Hr,LASSO_PATH as $r,LASSO_VIEW_BOX as Wr,UNDO_PATH as zr,UNDO_VIEW_BOX as Kr,REDO_PATH as Jr,REDO_VIEW_BOX as Yr,ZOOM_TO_FIT_PATH as Xr,ZOOM_TO_FIT_VIEW_BOX as Zr,EVENT_UNDOREDO_UPDATE as qr,TRUE as ho,FALSE as fo,EVENT_SURFACE_MODE_CHANGED as Qr,ELEMENT_DIV as Oo,ATTRIBUTE_CONTROLS_ORIENTATION as en,ZOOM_IN_OUT_VIEW_BOX as Po,ZOOM_IN_PATH as tn,ZOOM_OUT_PATH as on,RESET_SELECTION_PATH as rn,RESET_SELECTION_VIEW_BOX as nn,CLEAR_PATH as sn,CLEAR_VIEW_BOX as an,ATTRIBUTE_RESET_SELECTION as ln,CLASS_CONTROLS_RESET_SELECTION as pn,EVENT_SELECT as cn,EVENT_DESELECT as un,EVENT_SELECTION_CLEARED as dn,supportsPathEditing as mn}from"@visuallyjs/browser-ui";var hn="Clear dataset?",De="vjs-selected-mode",Eo="can-undo",Co="can-redo",fn="data-undo",On="data-redo",yo="data-mode",Pn="data-reset",En="data-clear",Cn="data-zoom-in",yn="data-zoom-out",To="vjs-controls-has-selection",_o={setup(e){return{service:Gr(s)}},name:ee,props:{clear:{type:Boolean,default:!0},[v]:{type:String},undoRedo:{type:Boolean,default:!0},orientation:{type:String,default:"row"},zoomToExtents:{type:Boolean,default:!0},zoomButtons:{type:Boolean,default:!1},clearMessage:{type:String,default:hn},onMaybeClear:{type:Function},className:{type:String,default:""}},methods:{panMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(mo)},selectMode:function(){var e;(e=this.service.surface.value)==null||e.setMode(uo)},zoomToFit:function(){var e;(e=this.service.surface.value)==null||e.zoomToFit()},doClear:function(){let e=this.service.surface.value;e&&(this.onMaybeClear!=null?this.onMaybeClear(()=>e.model.clear()):window.confirm(this.clearMessage)&&e.model.clear())},undo:function(){var e;(e=this.service.model.value)==null||e.undo()},redo:function(){var e;(e=this.service.model.value)==null||e.redo()},zoomIn:function(){var e;(e=this.service.surface.value)==null||e.zoomIn()},zoomOut:function(){var e;(e=this.service.surface.value)==null||e.zoomOut()},resetSelection(){let e=this.service.surface.value;e&&(e.model.clearSelection(),mn(e)&&e.stopEditingPath())},updateSelectionState:function(){let e=this.service.surface.value;e&&(e.model.getSelection().isEmpty()?this.$refs.root.removeAttribute(To):this.$refs.root.setAttribute(To,"true"))}},data:function(){return{ready:!1,hasLasso:!1}},render(){if(this.ready){let e=[];return this.showPan&&(e.push(c("i",{class:`vjs-pan-mode ${De}`,[yo]:mo,onClick:()=>this.panMode(),title:"Pan mode"},[c("svg",{viewBox:Hr,stroke:"currentColor",fill:"none"},[c("path",{d:jr})])])),e.push(c("i",{class:"vjs-select-mode",[yo]:uo,onClick:()=>this.selectMode(),title:"Select mode"},[c("svg",{viewBox:Wr,stroke:"currentColor",fill:"currentColor"},[c("path",{d:$r})])]))),this.undoRedo&&(e.push(c("i",{class:"vjs-undo",[fn]:!0,title:"Undo last action",onClick:()=>this.undo()},[c("svg",{viewBox:Kr,stroke:"currentColor",fill:"none"},[c("path",{d:zr,"stroke-width":2})])])),e.push(c("i",{class:"vjs-redo",[On]:!0,title:"Redo last action",onClick:()=>this.redo()},[c("svg",{viewBox:Yr,stroke:"currentColor",fill:"none"},[c("path",{d:Jr,"stroke-width":2})])]))),this.zoomToExtents&&e.push(c("i",{class:"vjs-zoom-to-fit",[Pn]:"true",onClick:()=>this.zoomToFit(),title:"Zoom to Fit"},[c("svg",{viewBox:Zr,stroke:"currentColor",fill:"currentColor"},[c("path",{d:Xr})])])),this.zoomButtons&&(e.push(c("i",{class:"vjs-zoom-in",[Cn]:"true",onClick:()=>this.zoomIn(),title:"Zoom In"},[c("svg",{viewBox:Po,stroke:"currentColor",fill:"currentColor"},[c("path",{d:tn})])])),e.push(c("i",{class:"vjs-zoom-out",[yn]:"true",onClick:()=>this.zoomOut(),title:"Zoom Out"},[c("svg",{viewBox:Po,stroke:"currentColor",fill:"currentColor"},[c("path",{d:on})])]))),e.push(c("i",{class:pn,[ln]:"true",onClick:()=>{this.resetSelection()}},[c("svg",{viewBox:nn,stroke:"currentColor",fill:"currentColor"},[c("path",{d:rn})])])),this.clear&&e.push(c("i",{class:"vjs-clear-dataset",[En]:"true",onClick:()=>{this.doClear()}},[c("svg",{viewBox:an,stroke:"currentColor",fill:"currentColor"},[c("path",{d:sn})])])),c(Oo,{class:`vjs-controls ${this.className}`,ref:"root",[Eo]:!1,[Co]:!1,[en]:this.orientation},e)}else return c(Oo,{ref:"root"})},mounted(){let e=t=>{let o=t.getPlugin(Fr.type);this.showPan=o!=null,t.bind(Qr,n=>{t.removeClass(t.$getSelector(this.$refs.root,"[data-mode]"),De),t.addClass(t.$getSelector(this.$refs.root,"[data-mode='"+n+"']"),De)}),t.model.bind(qr,n=>{this.$refs.root.setAttribute(Eo,n.undoCount>0?ho:fo),this.$refs.root.setAttribute(Co,n.redoCount>0?ho:fo)}),t.model.bind(cn,()=>this.updateSelectionState()),t.model.bind(un,()=>this.updateSelectionState()),t.model.bind(dn,()=>this.updateSelectionState()),this.ready=!0};this.service.surface.value==null?kr(this.service.surface,e):e(this.service.surface.value)}};import{h as R,inject as Tn}from"vue";import{CLASS_CONTROLS as _n,CLASS_EXPORT_CONTROLS as gn,ELEMENT_DIV as Sn,ImageExportUI as go,SvgExportUI as vn,TYPE_JPG as Rn,TYPE_PNG as An,TYPE_SVG as Nn}from"@visuallyjs/browser-ui";var So={name:te,setup(e){return{service:Tn(s)}},props:{surfaceId:{type:String},showLabel:{type:Boolean,default:!0},label:{type:String,default:"Export :"},margins:{type:Object},svgOptions:{type:Object},imageOptions:{type:Object},allowSvgExport:{type:Boolean,default:!0},allowPngExport:{type:Boolean,default:!0},allowJpgExport:{type:Boolean,default:!0}},methods:{loadSurface:function(e){let t=this.service.surface.value;t&&e(t)},exportSVG:function(){this.loadSurface(e=>{let t=this.svgOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new vn(e).export(t)})},exportJPG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),t.type="image/jpeg",new go(e).export(t)})},exportPNG:function(){this.loadSurface(e=>{let t=this.imageOptions||{};this.margins!=null&&t.margins==null&&Object.assign(t,this.margins),new go(e).export(t)})}},render(){let e=this.showLabel!==!1,t=this.allowSvgExport!==!1,o=this.allowPngExport!==!1,n=this.allowJpgExport!==!1,i=[];return t&&i.push(R("i",{},[R("a",{href:"#","data-type":Nn,onClick:()=>this.exportSVG()},"SVG")])),o&&i.push(R("i",{},[R("a",{href:"#","data-type":An,onClick:()=>this.exportPNG()},"PNG")])),n&&i.push(R("i",{},[R("a",{href:"#","data-type":Rn,onClick:()=>this.exportJPG()},"JPG")])),e&&i.unshift(R("span",{},[this.label])),R(Sn,{class:`${_n} ${gn}`},i)}};import{h as xn,inject as Dn,watch as vo}from"vue";import{ELEMENT_DIV as In,MiniviewPlugin as wn}from"@visuallyjs/browser-ui";var Ro={setup(e){return{service:Dn(s)}},name:X,props:{[v]:{type:String},[I]:{type:String,default:""},[pt]:{type:Boolean,default:!0},[at]:{type:Boolean,default:!0},[lt]:{type:Boolean,default:!0},[ct]:{type:Boolean,default:!0},[st]:{type:Function}},mounted:function(){let e=t=>{t.addPlugin({type:wn.type,options:{container:this.$el,activeTracking:this.activeTracking,clickToCenter:this.clickToCenter,showLasso:this.showLasso,trackSelection:this.trackSelection,typeFunction:this.typeFunction}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(vo(this.service.surface,e),vo(this.service.paper,e))},render:function(e){return xn(In,{ref:"root",class:e.className})}};import{h as bn,inject as Mn,markRaw as Vn}from"vue";import{createDiagram as Bn,ELEMENT_DIV as Ln}from"@visuallyjs/browser-ui";var Ao={setup(e){return{service:Mn(s)}},name:oe,props:{[y]:{type:Object},[T]:{type:String},[w]:{type:Object},[M]:{type:Object}},mounted(){let e=this.$refs.root;this.diagram=Vn(Bn(e,this.options,this.modelOptions)),this.service.setDiagram(this.diagram),this.data?this.diagram.load({data:this.data}):this.url&&this.diagram.load({url:this.url})},render:function(){return bn(Ln,{ref:"root",class:"vjs-vue-surface",style:{width:"100%",height:"100%"}},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{h as No,inject as Un,watch as xo}from"vue";import{ColumnChart as Gn,BarChart as kn,CategoryValueChart as Fn,ELEMENT_DIV as Do,LineChart as jn,AreaChart as Hn,PieChart as $n,ScatterChart as Wn,BubbleChart as zn,GaugeChart as Kn,SankeyChart as Jn}from"@visuallyjs/browser-ui";var Io={[I]:{type:String},[y]:{type:Object},[T]:{type:String},[Pt]:{type:Boolean,default:!1}},wo={setup(){return{service:Un(s)}},render:function(){return No(Do,{class:`${this.className}`,ref:"root"})}};function g(e,t,o=!0){let n=b(x({},Io),{[M]:{type:Object}}),i={};return o&&(n[Re]={type:Function},i[Re]=function(p){this.chart.setDataSourceFilter(p)}),b(x({},wo),{name:e,props:n,watch:i,data:()=>({hasMounted:!1}),mounted(){let p=this.$refs.root,r=o?Object.assign({dataSourceFilter:this.dataSourceFilter},this.options):this.options;this.data&&(r.data=this.data),this.url&&(r.url=this.url);let a=()=>{this.hasMounted=!0,this.chart=new t(p,r)};this.useModel?this.service.model.value!=null?(r.dataSource=this.service.model.value,a()):xo(this.service.model,l=>{this.hasMounted||(r.dataSource=l,a())}):a()}})}var Ie=g(ne,Gn),we=g(ie,kn),be=g(se,Fn,!1),Me=g(pe,$n),Ve=g(ae,jn),Be=g(le,Hn),Le=g(ce,Wn),Ue=g(ue,zn),Ge=g(de,Kn,!1),ke=b(x({},wo),{name:me,props:b(x({},Io),{[ft]:{type:String},[Ot]:{type:Object},[mt]:{type:Boolean},[ht]:{type:String},[M]:{type:Object}}),data:()=>({hasMounted:!1}),mounted(){let e=this.$refs.root,t=Object.assign({},this.options);this.interactive!=null&&(t.interactive=this.interactive),this.pivot!=null&&(t.pivot=this.pivot),this.csvData&&(t.csvData=this.csvData),this.jsonData&&(t.jsonData=this.jsonData),this.url&&(t.url=this.url);let o=()=>{this.hasMounted=!1,this.chart=new Jn(e,t)};if(this.useModel){let n=i=>{this.hasMounted||(t.dataSource=i,o())};this.service.model.value==null?xo(this.service.model,n):n(this.service.model.value)}else o()},watch:{pivot(e){this.chart&&this.chart.pivot(e)}},render:function(){return No(Do,{class:`${this.className}`,ref:"root"})}});import{h as Yn,inject as Xn,watch as Zn}from"vue";import{defaultDataGenerator as qn,ELEMENT_DIV as Qn,Palette as ei}from"@visuallyjs/browser-ui";var bo={setup(e){return{service:Xn(s)}},name:Q,props:{[v]:{type:String},[Et]:{type:String},[Ct]:{type:Function},[yt]:{type:Function},[Tt]:{type:Function},[_t]:{type:[Boolean,Function],default:!1},[gt]:{type:Boolean,default:!0},[St]:{type:Boolean,default:!0},[vt]:{type:Boolean,default:!1},[Rt]:{type:Boolean,default:!1},[Mt]:Object,[At]:Function,[Vt]:Function,[I]:String,[dt]:String,[Nt]:{type:Boolean,default:!1},[Dt]:{type:Boolean,default:!1},[xt]:{type:Boolean,default:!1},[It]:{type:Boolean,default:!0},[wt]:{type:Number,default:2e3},[bt]:{type:[Boolean,Object],default:!1}},mounted:function(){let e=t=>{let o={source:this.$refs.root,selector:this.selector,dataGenerator:n=>this.dataGenerator?this.dataGenerator(n):qn(n),allowDropOnEdge:this.allowDropOnEdge===!0,allowDropOnGroup:this.allowDropOnGroup!==!1,allowDropOnCanvas:this.allowDropOnCanvas!==!1,allowDropOnNode:this.allowDropOnNode===!0,ignoreDropOnNode:this.ignoreDropOnNode===!0,canvasDropFilter:this.canvasDropFilter,onVertexAdded:this.onVertexAdded,dragSize:this.dragSize,mode:this.mode,allowRotation:this.allowRotation!==!1,rotationSpeed:this.rotationSpeed||2e3,autoEdgeConnect:this.autoEdgeConnect};this.groupIdentifier!=null&&(o.groupIdentifier=this.groupIdentifier),this.typeGenerator!=null&&(o.typeGenerator=this.typeGenerator),this.palette=new ei(t,o)};this.service.surface.value==null?Zn(this.service.surface,e):e(this.service.surface.value)},render:function(){return Yn(Qn,{ref:"root",class:this.className||""},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{provide as ti}from"vue";var Fe={setup(){ti(s,new _("SurfaceProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{provide as oi}from"vue";var je={setup(){oi(s,new _("PaperProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{h as ri,inject as ni,watch as ii}from"vue";import{CLASS_SHAPE as si,convertToMultilineText as Mo,DEFAULT_LABEL_FILL_RATIO as He,ELEMENT_SVG as ai}from"@visuallyjs/browser-ui";var $e={name:H,props:{data:{type:Object},showLabels:{type:Boolean,default:!1},labelProperty:{type:String,default:"label"},labelStrokeWidth:{type:Number},multilineLabels:{type:Boolean,default:!0},labelFillRatio:{type:Number,default:He},labelColor:{type:String,default:"#000000"},font:{type:Object}},setup(){return{service:ni(s)}},mounted(){let e=t=>{let o=t.getShapeLibrary(),n=o.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.appendChild(n),this.showLabels){let i=o.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(i),this.multilineLabels!=!1&&Mo(i,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||He))}};this.service.ui.value==null?ii(this.service.ui,e):e(this.service.ui.value)},updated(){let e=this.service.surface.value;if(e){let t=e.getShapeLibrary(),o=t.renderCompiledShape(Object.assign({sw:this.getOutlineWidth()},this.data));if(this.$refs.container.replaceChildren(o),this.showLabels){let n=t.renderShapeLabel(this.data,this.labelProperty,this.labelStrokeWidth,null,this.labelColor,this.labelColor,this.font);this.$refs.container.appendChild(n),this.multilineLabels!=!1&&Mo(n,this.data[this.labelProperty]||"",this.getWidth()*(this.labelFillRatio||He))}}},render:function(){return ri(ai,{ref:"container",preserveAspectRatio:"none",fill:this.getFill(),stroke:this.getOutline(),"stroke-width":this.getOutlineWidth(),viewBox:"0 0 "+this.getWidth()+" "+this.getHeight(),class:si})},methods:{getWidth:function(){return this.data.width||Bt},getHeight:function(){return this.data.height||Lt},getFill:function(){return this.data.fill||"#FFFFFF"},getOutline:function(){return this.data.outline||"#000000"},getOutlineWidth(){return this.data.outlineWidth||2}}};import{h as li,inject as pi,watch as ci}from"vue";import{ELEMENT_DIV as ui,ShapePalette as di}from"@visuallyjs/browser-ui";var We={name:$,props:{surfaceId:{type:String},dragSize:Object,iconSize:Object,fill:String,outline:String,showAllMessage:String,selectAfterDrop:Boolean,paletteStrokeWidth:Number,dataGenerator:Function,initialSet:String,mode:String,allowClickToAdd:Boolean,onVertexAdded:Function,showLabels:Boolean,inspector:{type:Boolean,default:!0},updateTypeOnPaletteTap:Boolean,preparedShapes:Array,allowDropOnEdge:[Boolean,Function],autoEdgeConnect:[Boolean,Object],showGroups:{type:Boolean,default:!0}},setup(e){return{service:pi(s)}},data:()=>({hasMounted:!1}),mounted(){let e=t=>{this.hasMounted||(this.hasMounted=!0,new di(t,{container:this.$refs.container,shapeLibrary:t.getShapeLibrary(),dragSize:this.dragSize,iconSize:this.iconSize,fill:this.fill,outline:this.outline,showAllMessage:this.showAllMessage,selectAfterDrop:this.selectAfterDrop,paletteStrokeWidth:this.paletteStrokeWidth,dataGenerator:this.dataGenerator,initialSet:this.initialSet,mode:this.mode,allowClickToAdd:this.allowClickToAdd,onVertexAdded:this.onVertexAdded,showLabels:this.showLabels,inspector:this.inspector,updateTypeOnPaletteTap:this.updateTypeOnPaletteTap,preparedShapes:this.preparedShapes,allowDropOnEdge:this.allowDropOnEdge,autoEdgeConnect:this.autoEdgeConnect,showGroups:this.showGroups}))};this.service.surface.value==null?ci(this.service.surface,e):e(this.service.surface.value)},render:function(){return li(ui,{ref:"container"})}};import{provide as Vo,readonly as mi,inject as hi,h as fi,watch as Oi}from"vue";import{ELEMENT_DIV as Pi,Inspector as Ei,log as Ci}from"@visuallyjs/browser-ui";var U=Symbol.for("VueInspectorGetter"),yi=Symbol.for("VueInspectorSetter");function Ti(){let e=[],t=null;function o(p){try{p(t)}catch(r){Ci("WARN: inspector listener threw an exception",r)}}let n={listen:p=>{t!=null?o(p):e.push(p)}},i={inspector:p=>{t=p,e.forEach(o)}};return Vo(yi,i),Vo(U,mi(n)),i}var ze={name:he,props:{autoCommit:{type:Boolean,default:!0},multipleSelections:{type:Boolean,default:!0},filter:Function,renderEmptyContainer:Function,refresh:Function,className:String,showCloseButton:Boolean,afterUpdate:Function,modelValue:Object},emits:["update:modelValue"],setup(e,t){let o=Ti();return{service:hi(s),inspectorProvider:o,inspector:null,emit:t.emit}},mounted(){let e=t=>{if(this.inspector==null){let o=new Ei({container:this.$refs.root,ui:t,renderEmptyContainer:()=>(this.emit("update:modelValue",null),this.renderEmptyContainer?this.renderEmptyContainer():""),refresh:(n,i)=>{this.emit("update:modelValue",n),this.refresh&&this.refresh(n),setTimeout(i)},autoCommit:this.autoCommit,multipleSelections:this.multipleSelections,filter:this.filter,showCloseButton:this.showCloseButton,afterUpdate:()=>this.afterUpdate?this.afterUpdate(t):null});this.inspectorProvider.inspector(o)}};this.service.surface.value==null?Oi(this.service.surface,e):e(this.service.surface.value)},render(){return fi(Pi,{ref:"root"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])}};import{h as _i,inject as gi}from"vue";import{EdgeTypePicker as Si,ELEMENT_DIV as vi,log as Ri}from"@visuallyjs/browser-ui";var Ke={name:W,props:{propertyName:String},setup(){return{inspectorProvider:gi(U)}},mounted(){this.inspectorProvider?this.inspectorProvider.listen(e=>{let t=new Si(e.$ui,this.$refs.container,e.$ui.$getEdgePropertyMappings(),e.getValue(this.propertyName),(o,n)=>{e.setValue(this.propertyName,n,null)});t.render(this.propertyName,e.h),e.onChange(()=>{t.select(this.propertyName,e.getValue(this.propertyName))})}):Ri("WARN: EdgeTypePicker not instantiated inside an InspectorComponent. Cannot mount.")},render:function(){return _i(vi,{ref:"container"})}};import{h as ye,inject as Ai}from"vue";import{CLASS_COLOR_PICKER as Bo,CLASS_COLOR_PICKER_SWATCH as Lo,CLASS_COLOR_PICKER_SWATCHES as Uo,EVENT_CONTEXT_UPDATE as Ni,ELEMENT_DIV as Je,INSPECTOR_CONTEXT_RECENT_COLORS as Te}from"@visuallyjs/browser-ui";var Go={render(){let e=this.swatches.map(t=>ye(Je,{title:t,class:Lo,style:`background-color:${t}`,"data-color":t,onClick:()=>this.selectSwatch(t)}));return ye(Je,{class:`${Bo}`},[ye("input",{type:"color","vjs-att":this.propertyName,ref:"colorInput"}),ye(Je,{class:Uo},e)])},props:{propertyName:String,maxColors:{type:Number,default:10}},data:()=>({CLASS_COLOR_PICKER:Bo,CLASS_COLOR_PICKER_SWATCHES:Uo,CLASS_COLOR_PICKER_SWATCH:Lo,colorInput:null,swatches:[]}),mounted(){let e=Ai(U);e&&e.listen(t=>{this.inspector=t,this.swatches=t.ensureContext(Te,()=>[]),this.colorInput=this.$refs.colorInput,this.colorInput.addEventListener("change",this.colorPicked),t.bind(Ni,o=>{o.key===Te&&(this.swatches=o.value.slice())}),t.bind("change",this.setCurrentColor),this.setCurrentColor()})},methods:{addColor:function(e){let t=this.inspector.ensureContext(Te,()=>[]);if(e=e.toUpperCase(),!(t.find(n=>n.toUpperCase()===e)!=null)){let n=this.maxColors||10,i=t.slice();i.unshift(e),i.length>n&&(i.length=n),this.inspector.updateContext(Te,i)}},colorPicked:function(){let e=this.colorInput.value;this.inspector.setValue(this.propertyName,e,null),this.addColor(e)},selectSwatch:function(e){this.inspector.setValue(this.propertyName,e,null),this.colorInput.value=e},setCurrentColor:function(){let e=this.inspector.getValue(this.propertyName);e!=null&&(this.colorInput.value=e,this.addColor(e))}}};import{h as _e,inject as xi,nextTick as Di,Teleport as Ii,watch as wi}from"vue";import{ELEMENT_DIV as Ye,uuid as bi}from"@visuallyjs/browser-ui";var Xe={props:{placement:{type:String,default:"floating"},position:{type:Object},constraints:{type:Object}},data:()=>({hasMounted:!1,surface:null}),setup(e){return{service:xi(s)}},mounted(){let e=t=>{if(!this.hasMounted){this.surface=t,this.hasMounted=!0;let o=this.position||{x:0,y:0};Di().then(()=>{this.placement==="floating"?t.floatElement(this.$refs.root,o):t.fixElement(this.$refs.fixedEl,o,this.constraints)})}};this.service.surface.value==null?wi(this.service.surface,e):e(this.service.surface.value)},render(){return _e(Ye,{ref:"root"},this.hasMounted?this.placement==="floating"?_e(Ye,{},this.$slots.hasOwnProperty("default")?this.$slots.default():[]):_e(Ii,{to:this.surface.vertexLayer,key:bi()},_e(Ye,{ref:"fixedEl"},this.$slots.hasOwnProperty("default")?this.$slots.default():[])):[])}};import{provide as Mi}from"vue";var Ze={setup(){Mi(s,new _("DiagramProvider"))},render(){return this.$slots.hasOwnProperty("default")?this.$slots.default():[]}};import{h as Vi,inject as Bi,watch as Li}from"vue";import{DiagramPalette as Ui,ELEMENT_DIV as Gi,log as ki}from"@visuallyjs/browser-ui";var qe={name:re,props:{fill:String,outline:String,dragSize:Object,inspector:{type:Boolean,default:!0},updateTypeOnPaletteTap:Boolean,iconSize:Object,showLabels:Boolean,paletteStrokeWidth:Number,showAllMessage:String,onCellAdded:Function,mode:String,allowClickToAdd:Boolean,autoExitDrawMode:Boolean,selectAfterAdd:{type:Boolean,default:!0},className:String,diagram:{type:Object},onVertexAdded:Function,preparedShapes:Array,allowDropOnEdge:[Boolean,Function],autoEdgeConnect:[Boolean,Object],showGroups:{type:Boolean,default:!0}},setup(e){return{service:Bi(s)}},data:()=>({hasMounted:!1}),mounted(){if(this.service==null&&this.diagram==null)ki("Cannot mount DiagramPalette - no service found and Diagram not passed in as a prop");else{let e=t=>{this.hasMounted||(this.hasMounted=!0,new Ui(this.$refs.container,t,{fill:this.fill,outline:this.outline,dragSize:this.dragSize,inspector:this.inspector,iconSize:this.iconSize,showLabels:this.showLabels,paletteStrokeWidth:this.paletteStrokeWidth,showAllMessage:this.showAllMessage,onCellAdded:this.onCellAdded,mode:this.mode,allowClickToAdd:this.allowClickToAdd,autoExitDrawMode:this.autoExitDrawMode,selectAfterAdd:this.selectAfterAdd,onVertexAdded:this.onVertexAdded,updateTypeOnPaletteTap:this.updateTypeOnPaletteTap,preparedShapes:this.preparedShapes,allowDropOnEdge:this.allowDropOnEdge,autoEdgeConnect:this.autoEdgeConnect,showGroups:this.showGroups}))};this.diagram?e(this.diagram):this.service.diagram.value!=null?e(this.service.diagram.value):Li(this.service.diagram,e)}},render:function(){return Vi(Gi,{ref:"container"})}};import{BLOCK as Fi,ELEMENT_DIV as ji,NONE as Hi,PopupHandler as $i,CLASS_SURFACE_POPUP as Wi,ABSOLUTE as zi}from"@visuallyjs/browser-ui";import{h as Ki,inject as Ji,onMounted as Yi,ref as ge,watch as Xi}from"vue";var Qe={name:"SurfacePopup",props:{selector:String,anchor:{type:String,default:"bottom"}},setup(e){let t=Ji(s),o=ge(null),n=ge("block"),i=ge(null),p=ge(null),r=a=>{p.value=new $i(e.selector,i.value,a,l=>{o.value=l,l==null?n.value=Hi:(n.value=Fi,requestAnimationFrame(()=>p.value.$positionPopup()))},e.anchor)};return Yi(()=>{t.surface.value==null?Xi(t.surface,r):r(t.surface.value)}),{service:t,current:o,display:n,rootRef:i,handler:p}},render(){var e;return Ki(ji,{ref:"rootRef",display:this.display,position:zi,class:Wi},this.$slots.hasOwnProperty("default")?this.$slots.default({vertex:this.current,model:(e=this.service.surface.value)==null?void 0:e.model,ui:this.service.surface.value,hide:()=>{var t;return(t=this.handler)==null?void 0:t.$hide()}}):[])}};import{inject as Se,watch as A}from"vue";import{BackgroundPlugin as ve,GeneratedGridBackground as Zi,SimpleBackground as qi,TiledBackground as Qi}from"@visuallyjs/browser-ui";var ko={setup(){return{service:Se(s)}},name:z,props:{options:{type:Object}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:this.options})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(A(this.service.surface,e),A(this.service.paper,e))},render:function(e){return[]}},Fo={setup(){return{service:Se(s)}},name:K,props:{grid:{type:Object},showBorder:{type:Boolean},minWidth:{type:Number},minHeight:{type:Number},showTickMarks:{type:Boolean},tickMarksPerCell:{type:Number},maxWidth:{type:Number},maxHeight:{type:Number},autoShrink:{type:Boolean},gridType:{type:String},dotRadius:{type:Number},tickDotRadius:{type:Number},visible:{type:Boolean}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:Zi.type,grid:this.grid,showBorder:this.showBorder,minWidth:this.minWidth,minHeight:this.minHeight,showTickMarks:this.showTickMarks,tickMarksPerCell:this.tickMarksPerCell,maxWidth:this.maxWidth,maxHeight:this.maxHeight,autoShrink:this.autoShrink,gridType:this.gridType,dotRadius:this.dotRadius,tickDotRadius:this.tickDotRadius,visible:this.visible}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(A(this.service.surface,e),A(this.service.paper,e))},render:function(e){return[]}},jo={setup(){return{service:Se(s)}},name:J,props:{url:{type:String}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:qi.type,url:this.url}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(A(this.service.surface,e),A(this.service.paper,e))},render:function(e){return[]}},Ho={setup(){return{service:Se(s)}},name:Y,props:{url:{type:String},urlGenerator:{type:Function},tileSize:{type:Object},width:{type:Number},height:{type:Number},maxZoom:{type:Number},tiling:{type:String},panDebounceTimeout:{type:Number},zoomDebounceTimeout:{type:Number}},mounted:function(){let e=t=>{t.addPlugin({type:ve.type,options:{type:Qi.type,url:this.url,urlGenerator:this.urlGenerator,tileSize:this.tileSize,width:this.width,height:this.height,tiling:this.tiling,panDebounceTimeout:this.panDebounceTimeout,zoomDebounceTimeout:this.zoomDebounceTimeout}})};this.service.surface.value!=null&&e(this.service.surface.value),this.service.paper.value!=null?e(this.service.paper.value):(A(this.service.surface,e),A(this.service.paper,e))},render:function(e){return[]}};var Cd={install:function(e,t){e.component(jt,Fe),e.component(Ht,je),e.component($t,Ze),e.component(Z,ao),e.component(q,co),e.component(oe,Ao),e.component(X,Ro),e.component(ee,_o),e.component(te,So),e.component(z,ko),e.component(K,Fo),e.component(J,jo),e.component(Y,Ho),e.component(Q,bo),e.component(re,qe),e.component(ie,we),e.component(ne,Ie),e.component(se,be),e.component(ae,Ve),e.component(le,Be),e.component(pe,Me),e.component(me,ke),e.component(de,Ge),e.component(ue,Ue),e.component(ce,Le),e.component(H,$e),e.component($,We),e.component(W,Ke),e.component(Ut,Go),e.component(he,ze),e.component(zt,Xe),e.component(Wt,Qe),e.provide(s,new _("root"))}};import{shallowRef as et,ref as es}from"vue";import{EVENT_ZOOM as tt}from"@visuallyjs/browser-ui";import{inject as ts}from"vue";function Ad(){let e=ts(s),t=et(null),o=et(null),n=et(null),i=es(1);return e==null||e.getSurface(p=>{o.value=p,o.value.bind(tt,r=>{i.value=r.zoom})}),e==null||e.getDiagram(p=>{t.value=p,t.value.$ui.bind(tt,r=>{i.value=r.zoom})}),e==null||e.getPaper(p=>{n.value=p,n.value.bind(tt,r=>{i.value=r.zoom})}),i}import{inject as os,onUnmounted as rs}from"vue";import{EVENT_DATA_UPDATED as $o,EVENT_GRAPH_CLEARED as Wo}from"@visuallyjs/browser-ui";function Ld(e){let t=os(s);if(t){let o=null,n=()=>{o&&e(o)},i=()=>{o&&(o.unbind($o,n),o.unbind(Wo,n))},p=r=>{i(),o=r,o&&(o.bind($o,n),o.bind(Wo,n),n())};t.getModel(r=>{p(r)}),rs(()=>{i()})}}import{shallowRef as ns}from"vue";import{inject as is}from"vue";function Hd(){let e=is(s),t=ns(null);return e==null||e.getSurface(o=>{t.value=o}),t}import{shallowRef as ss}from"vue";import{inject as as}from"vue";function Yd(){let e=as(s),t=ss(null);return e==null||e.getDiagram(o=>{t.value=o}),t}import{shallowRef as ls}from"vue";import{inject as ps}from"vue";function tm(){let e=ps(s),t=ls(null);return e==null||e.getPaper(o=>{t.value=o}),t}export{Ce as $initialiseVueOverlays,Be as AreaChartComponent,ko as BackgroundComponent,we as BarChartComponent,to as BaseOverlayComponent,P as BrowserUIVueModel,Ue as BubbleChartComponent,kt as CLASS_VUE_GROUP,Gt as CLASS_VUE_NODE,Ft as CLASS_VUE_OVERLAY,le as COMPONENT_AREA_CHART,z as COMPONENT_BACKGROUND,ie as COMPONENT_BAR_CHART,ue as COMPONENT_BUBBLE_CHART,ne as COMPONENT_COLUMN_CHART,ee as COMPONENT_CONTROLS,oe as COMPONENT_DIAGRAM,re as COMPONENT_DIAGRAM_PALETTE,$t as COMPONENT_DIAGRAM_PROVIDER,te as COMPONENT_EXPORT_CONTROLS,de as COMPONENT_GAUGE_CHART,K as COMPONENT_GRID_BACKGROUND,J as COMPONENT_IMAGE_BACKGROUND,he as COMPONENT_INSPECTOR,ae as COMPONENT_LINE_CHART,X as COMPONENT_MINIVIEW,Q as COMPONENT_PALETTE,q as COMPONENT_PAPER,Ht as COMPONENT_PAPER_PROVIDER,pe as COMPONENT_PIE_CHART,me as COMPONENT_SANKEY_CHART,ce as COMPONENT_SCATTER_CHART,Z as COMPONENT_SURFACE,Wt as COMPONENT_SURFACE_POPUP,jt as COMPONENT_SURFACE_PROVIDER,Y as COMPONENT_TILED_IMAGE_BACKGROUND,se as COMPONENT_XY_CHART,Go as ColorPickerComponent,Ie as ColumnChartComponent,_o as ControlsComponent,Lt as DEFAULT_SHAPE_HEIGHT,Bt as DEFAULT_SHAPE_WIDTH,it as DEFAULT_VUE_PAPER_ID,nt as DEFAULT_VUE_SURFACE_ID,Xe as DecoratorComponent,Ao as DiagramComponent,qe as DiagramPaletteComponent,Ze as DiagramProvider,fr as EVENT_VERTEX_UPDATED,Ne as EVENT_VERTICES_RENDERED,Ke as EdgeTypePickerComponent,So as ExportControlsComponent,Ge as GaugeChartComponent,Fo as GridBackgroundComponent,jo as ImageBackgroundComponent,ze as InspectorComponent,U as InspectorGetterSymbol,yi as InspectorSetterSymbol,Ve as LineChartComponent,Ro as MiniviewComponent,pt as PROP_ACTIVE_TRACKING,Dt as PROP_ALLOW_CLICK_TO_ADD,gt as PROP_ALLOW_DROP_ON_CANVAS,_t as PROP_ALLOW_DROP_ON_EDGE,St as PROP_ALLOW_DROP_ON_GROUP,vt as PROP_ALLOW_DROP_ON_NODE,It as PROP_ALLOW_ROTATION,bt as PROP_AUTO_EDGE_CONNECT,Vt as PROP_CANVAS_DROP_FILTER,I as PROP_CLASS_NAME,xt as PROP_CLICK_TO_ADD_ONLY,at as PROP_CLICK_TO_CENTER,ft as PROP_CSV_DATA,y as PROP_DATA,Ct as PROP_DATA_GENERATOR,Re as PROP_DATA_SOURCE_FILTER,j as PROP_DATA_TYPE,Mt as PROP_DRAG_SIZE,Tt as PROP_GROUP_IDENTIFIER,$s as PROP_ID,Rt as PROP_IGNORE_DROP_ON_NODE,mt as PROP_INTERACTIVE,Ot as PROP_JSON_DATA,dt as PROP_MODE,k as PROP_MODEL,w as PROP_MODEL_OPTIONS,At as PROP_ON_VERTEX_ADDED,M as PROP_OPTIONS,ut as PROP_PAPER_ID,ht as PROP_PIVOT,G as PROP_RENDER_OPTIONS,wt as PROP_ROTATION_SPEED,Et as PROP_SELECTOR,Nt as PROP_SELECT_AFTER_ADD,lt as PROP_SHOW_LASSO,v as PROP_SURFACE_ID,ct as PROP_TRACK_SELECTION,st as PROP_TYPE_FUNCTION,yt as PROP_TYPE_GENERATOR,T as PROP_URL,Pt as PROP_USE_MODEL,F as PROP_VIEW_OPTIONS,bo as PaletteComponent,co as PaperComponent,je as PaperProvider,Me as PieChartComponent,ke as SankeyChartComponent,Le as ScatterChartComponent,$e as ShapeComponent,We as ShapePaletteComponent,ao as SurfaceComponent,Qe as SurfacePopup,Fe as SurfaceProvider,Ut as TAG_COLOR_PICKER,zt as TAG_DECORATOR,W as TAG_EDGE_TYPE_PICKER,H as TAG_SHAPE,$ as TAG_SHAPE_PALETTE,Ho as TiledImageBackgroundComponent,Cd as VisuallyJsPlugin,_ as VisuallyJsService,s as VisuallyJsServiceKey,be as XYChartComponent,ro as addPaper,oo as addSurface,Aa as bindToDevLifecycle,Ti as doProvideInspector,fs as newInstance,Yd as useDiagram,tm as usePaper,Hd as useSurface,Ld as useVisuallyJsUpdate,Ad as useZoom,Jt as vertexHasRendered,Yt as vertexHasUpdated,Or as vertexWillRender};
|