@awesome-flow/ecs 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/canvas/index.cjs +5 -0
- package/dist/canvas/index.d.cts +2 -0
- package/dist/canvas/index.d.mts +2 -0
- package/dist/canvas/index.mjs +3 -0
- package/dist/canvas-C4nDXlkK.mjs +677 -0
- package/dist/canvas-C4nDXlkK.mjs.map +1 -0
- package/dist/canvas-DlWcWu05.cjs +688 -0
- package/dist/canvas-DlWcWu05.cjs.map +1 -0
- package/dist/context/index.cjs +497 -0
- package/dist/context/index.cjs.map +1 -0
- package/dist/context/index.d.cts +2 -0
- package/dist/context/index.d.mts +2 -0
- package/dist/context/index.mjs +492 -0
- package/dist/context/index.mjs.map +1 -0
- package/dist/entity-component-inspector-CNaN8Scf.mjs +79 -0
- package/dist/entity-component-inspector-CNaN8Scf.mjs.map +1 -0
- package/dist/entity-component-inspector-VlwcaUqy.cjs +90 -0
- package/dist/entity-component-inspector-VlwcaUqy.cjs.map +1 -0
- package/dist/hooks/index.cjs +19 -0
- package/dist/hooks/index.d.cts +2 -0
- package/dist/hooks/index.d.mts +2 -0
- package/dist/hooks/index.mjs +3 -0
- package/dist/id-generator-C2_8g29M.cjs +45 -0
- package/dist/id-generator-C2_8g29M.cjs.map +1 -0
- package/dist/id-generator-DDsv3NdX.mjs +34 -0
- package/dist/id-generator-DDsv3NdX.mjs.map +1 -0
- package/dist/index-B9WbxxFC.d.mts +67 -0
- package/dist/index-B9WbxxFC.d.mts.map +1 -0
- package/dist/index-BTs_8SY-.d.cts +20 -0
- package/dist/index-BTs_8SY-.d.cts.map +1 -0
- package/dist/index-C-TDFHpq.d.mts +54 -0
- package/dist/index-C-TDFHpq.d.mts.map +1 -0
- package/dist/index-CNCqWBLh.d.cts +54 -0
- package/dist/index-CNCqWBLh.d.cts.map +1 -0
- package/dist/index-CyeezgDI.d.mts +20 -0
- package/dist/index-CyeezgDI.d.mts.map +1 -0
- package/dist/index-D9zIjQH9.d.mts +1 -0
- package/dist/index-DCOd7jg-.d.mts +99 -0
- package/dist/index-DCOd7jg-.d.mts.map +1 -0
- package/dist/index-DGjpWDlm.d.cts +99 -0
- package/dist/index-DGjpWDlm.d.cts.map +1 -0
- package/dist/index-DLoAMD9J.d.cts +1 -0
- package/dist/index-YNgbjS9S.d.cts +159 -0
- package/dist/index-YNgbjS9S.d.cts.map +1 -0
- package/dist/index-_BgjSgkQ.d.mts +159 -0
- package/dist/index-_BgjSgkQ.d.mts.map +1 -0
- package/dist/index-t3_yRTa6.d.cts +67 -0
- package/dist/index-t3_yRTa6.d.cts.map +1 -0
- package/dist/index.cjs +55 -531
- package/dist/index.d.cts +9 -106
- package/dist/index.d.mts +9 -106
- package/dist/index.mjs +10 -520
- package/dist/inspectors/index.cjs +6 -0
- package/dist/inspectors/index.d.cts +2 -0
- package/dist/inspectors/index.d.mts +2 -0
- package/dist/inspectors/index.mjs +3 -0
- package/dist/node-props-BtAkmdqr.d.mts +45 -0
- package/dist/node-props-BtAkmdqr.d.mts.map +1 -0
- package/dist/node-props-DkuSwMA0.d.cts +45 -0
- package/dist/node-props-DkuSwMA0.d.cts.map +1 -0
- package/dist/node-systems-module-CPDV8u8O.d.mts +22 -0
- package/dist/node-systems-module-CPDV8u8O.d.mts.map +1 -0
- package/dist/node-systems-module-CzkoMbdF.d.cts +22 -0
- package/dist/node-systems-module-CzkoMbdF.d.cts.map +1 -0
- package/dist/node-types-BRcpbaeR.mjs +1604 -0
- package/dist/node-types-BRcpbaeR.mjs.map +1 -0
- package/dist/node-types-D_NfbsUT.cjs +1819 -0
- package/dist/node-types-D_NfbsUT.cjs.map +1 -0
- package/dist/nodes/index.cjs +10 -0
- package/dist/nodes/index.d.cts +3 -0
- package/dist/nodes/index.d.mts +3 -0
- package/dist/nodes/index.mjs +3 -0
- package/dist/template-tool-nodes-B7sT2iRc.d.cts +35 -0
- package/dist/template-tool-nodes-B7sT2iRc.d.cts.map +1 -0
- package/dist/template-tool-nodes-BwavFwMh.d.mts +35 -0
- package/dist/template-tool-nodes-BwavFwMh.d.mts.map +1 -0
- package/dist/templates/index.cjs +11 -0
- package/dist/templates/index.d.cts +2 -0
- package/dist/templates/index.d.mts +2 -0
- package/dist/templates/index.mjs +3 -0
- package/package.json +85 -25
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.mts.map +0 -1
- package/dist/index.mjs.map +0 -1
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { r as ScopeGroupNodeData, t as EcsToolNodeData } from "./node-props-DkuSwMA0.cjs";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import * as _$react from "react";
|
|
4
|
+
import { Node, NodeProps } from "@xyflow/react";
|
|
5
|
+
|
|
6
|
+
//#region src/nodes/node-event-timeline.d.ts
|
|
7
|
+
declare function EventTimelineNode({
|
|
8
|
+
id,
|
|
9
|
+
data,
|
|
10
|
+
selected,
|
|
11
|
+
type
|
|
12
|
+
}: NodeProps<Node<EcsToolNodeData>>): _$react_jsx_runtime0.JSX.Element;
|
|
13
|
+
declare const _default$4: _$react.MemoExoticComponent<typeof EventTimelineNode>;
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/nodes/node-scheduler.d.ts
|
|
16
|
+
declare function SchedulerNode({
|
|
17
|
+
id,
|
|
18
|
+
data,
|
|
19
|
+
selected,
|
|
20
|
+
type
|
|
21
|
+
}: NodeProps<Node<EcsToolNodeData>>): _$react_jsx_runtime0.JSX.Element;
|
|
22
|
+
declare const _default$3: _$react.MemoExoticComponent<typeof SchedulerNode>;
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/nodes/node-scope-group.d.ts
|
|
25
|
+
declare function ScopeGroupNode({
|
|
26
|
+
id,
|
|
27
|
+
selected,
|
|
28
|
+
data,
|
|
29
|
+
type,
|
|
30
|
+
width,
|
|
31
|
+
height
|
|
32
|
+
}: NodeProps<Node<ScopeGroupNodeData>>): _$react_jsx_runtime0.JSX.Element;
|
|
33
|
+
declare const _default$2: _$react.MemoExoticComponent<typeof ScopeGroupNode>;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/nodes/node-telemetry.d.ts
|
|
36
|
+
declare function TelemetryNode({
|
|
37
|
+
id,
|
|
38
|
+
data,
|
|
39
|
+
selected,
|
|
40
|
+
type
|
|
41
|
+
}: NodeProps<Node<EcsToolNodeData>>): _$react_jsx_runtime0.JSX.Element;
|
|
42
|
+
declare const _default$1: _$react.MemoExoticComponent<typeof TelemetryNode>;
|
|
43
|
+
//#endregion
|
|
44
|
+
//#region src/nodes/node-update-queue.d.ts
|
|
45
|
+
declare function UpdateQueueNode({
|
|
46
|
+
id,
|
|
47
|
+
data,
|
|
48
|
+
selected,
|
|
49
|
+
type
|
|
50
|
+
}: NodeProps<Node<EcsToolNodeData>>): _$react_jsx_runtime0.JSX.Element;
|
|
51
|
+
declare const _default: _$react.MemoExoticComponent<typeof UpdateQueueNode>;
|
|
52
|
+
//#endregion
|
|
53
|
+
export { _default$4 as a, _default$3 as i, _default$1 as n, _default$2 as r, _default as t };
|
|
54
|
+
//# sourceMappingURL=index-CNCqWBLh.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CNCqWBLh.d.cts","names":[],"sources":["../src/nodes/node-event-timeline.tsx","../src/nodes/node-scheduler.tsx","../src/nodes/node-scope-group.tsx","../src/nodes/node-telemetry.tsx","../src/nodes/node-update-queue.tsx"],"mappings":";;;;;;iBAQS,iBAAA,CAAA;EAAoB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,eAAA,KAAiB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,UAAA;;;iBCDhF,aAAA,CAAA;EAAgB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,eAAA,KAAiB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,UAAA;;;iBCA5E,cAAA,CAAA;EAAiB,EAAA;EAAI,QAAA;EAAU,IAAA;EAAM,IAAA;EAAM,KAAA;EAAO;AAAA,GAAU,SAAA,CAAU,IAAA,CAAK,kBAAA,KAAoB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,UAAA;;;iBCA/F,aAAA,CAAA;EAAgB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,eAAA,KAAiB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,UAAA;;;iBCC5E,eAAA,CAAA;EAAkB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,eAAA,KAAiB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,QAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as _$react from "react";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import { IComponent } from "@awesome-ecs/abstract/components";
|
|
4
|
+
|
|
5
|
+
//#region src/components/entity-component-inspector.d.ts
|
|
6
|
+
type EntityComponentInspectorProps = {
|
|
7
|
+
component: IComponent;
|
|
8
|
+
};
|
|
9
|
+
declare function EntityComponentInspector(props: Readonly<EntityComponentInspectorProps>): _$react_jsx_runtime0.JSX.Element;
|
|
10
|
+
declare const _default$1: _$react.MemoExoticComponent<typeof EntityComponentInspector>;
|
|
11
|
+
//#endregion
|
|
12
|
+
//#region src/components/object-inspector.d.ts
|
|
13
|
+
type ObjectInspectorProps = {
|
|
14
|
+
data: any;
|
|
15
|
+
};
|
|
16
|
+
declare function ObjectInspector(props: Readonly<ObjectInspectorProps>): _$react_jsx_runtime0.JSX.Element;
|
|
17
|
+
declare const _default: _$react.MemoExoticComponent<typeof ObjectInspector>;
|
|
18
|
+
//#endregion
|
|
19
|
+
export { _default$1 as n, _default as t };
|
|
20
|
+
//# sourceMappingURL=index-CyeezgDI.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CyeezgDI.d.mts","names":[],"sources":["../src/components/entity-component-inspector.tsx","../src/components/object-inspector.tsx"],"mappings":";;;;;KAMY,6BAAA;EACV,SAAA,EAAW,UAAU;AAAA;AAAA,iBAGd,wBAAA,CAAyB,KAAA,EAAO,QAAA,CAAS,6BAAA,IAA8B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,UAAA;;;KCNpE,oBAAA;EACV,IAAI;AAAA;AAAA,iBAGG,eAAA,CAAgB,KAAA,EAAO,QAAA,CAAS,oBAAA,IAAqB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,QAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { r as ScopeGroupNodeData, t as EcsToolNodeData } from "./node-props-BtAkmdqr.mjs";
|
|
2
|
+
import { n as EntityNode, t as SystemsModuleNode } from "./node-systems-module-CPDV8u8O.mjs";
|
|
3
|
+
import { a as SystemsModuleNodeTemplate, i as UpdateQueueNodeTemplate, n as SchedulerNodeTemplate, o as ScopeGroupNodeTemplate, r as TelemetryNodeTemplate, s as EntityNodeTemplate, t as EventTimelineNodeTemplate } from "./template-tool-nodes-BwavFwMh.mjs";
|
|
4
|
+
import * as _$react from "react";
|
|
5
|
+
import * as _$_xyflow_react0 from "@xyflow/react";
|
|
6
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
7
|
+
|
|
8
|
+
//#region src/abstract/node-types.d.ts
|
|
9
|
+
declare enum EcsNodeType {
|
|
10
|
+
systemsModule = "systems-module-node",
|
|
11
|
+
entity = "entity-node",
|
|
12
|
+
scopeGroup = "scope-group-node",
|
|
13
|
+
scheduler = "scheduler-node",
|
|
14
|
+
eventTimeline = "event-timeline-node",
|
|
15
|
+
telemetry = "telemetry-node",
|
|
16
|
+
updateQueue = "update-queue-node"
|
|
17
|
+
}
|
|
18
|
+
declare const ecsNodeTypes: {
|
|
19
|
+
"systems-module-node": typeof SystemsModuleNode;
|
|
20
|
+
"entity-node": typeof EntityNode;
|
|
21
|
+
"scope-group-node": _$react.MemoExoticComponent<({
|
|
22
|
+
id,
|
|
23
|
+
selected,
|
|
24
|
+
data,
|
|
25
|
+
type,
|
|
26
|
+
width,
|
|
27
|
+
height
|
|
28
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<ScopeGroupNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
29
|
+
"scheduler-node": _$react.MemoExoticComponent<({
|
|
30
|
+
id,
|
|
31
|
+
data,
|
|
32
|
+
selected,
|
|
33
|
+
type
|
|
34
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
35
|
+
"event-timeline-node": _$react.MemoExoticComponent<({
|
|
36
|
+
id,
|
|
37
|
+
data,
|
|
38
|
+
selected,
|
|
39
|
+
type
|
|
40
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
41
|
+
"telemetry-node": _$react.MemoExoticComponent<({
|
|
42
|
+
id,
|
|
43
|
+
data,
|
|
44
|
+
selected,
|
|
45
|
+
type
|
|
46
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
47
|
+
"update-queue-node": _$react.MemoExoticComponent<({
|
|
48
|
+
id,
|
|
49
|
+
data,
|
|
50
|
+
selected,
|
|
51
|
+
type
|
|
52
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
53
|
+
};
|
|
54
|
+
declare const ecsNodeTemplates: {
|
|
55
|
+
"entity-node": EntityNodeTemplate;
|
|
56
|
+
"systems-module-node": SystemsModuleNodeTemplate;
|
|
57
|
+
"scope-group-node": ScopeGroupNodeTemplate;
|
|
58
|
+
"scheduler-node": SchedulerNodeTemplate;
|
|
59
|
+
"event-timeline-node": EventTimelineNodeTemplate;
|
|
60
|
+
"telemetry-node": TelemetryNodeTemplate;
|
|
61
|
+
"update-queue-node": UpdateQueueNodeTemplate;
|
|
62
|
+
};
|
|
63
|
+
//#endregion
|
|
64
|
+
//#region src/flow/flow-ecs-tool-nodes.d.ts
|
|
65
|
+
declare const defaultEcsToolNodes: readonly [EcsNodeType.scheduler, EcsNodeType.eventTimeline, EcsNodeType.telemetry, EcsNodeType.updateQueue];
|
|
66
|
+
type EcsToolNodeType = (typeof defaultEcsToolNodes)[number];
|
|
67
|
+
//#endregion
|
|
68
|
+
//#region src/flow/flow-ecs-state.d.ts
|
|
69
|
+
type FlowEcsStateProps = {
|
|
70
|
+
showSystemModules: boolean;
|
|
71
|
+
showEntities: boolean;
|
|
72
|
+
autoLayout: boolean;
|
|
73
|
+
enableEntitySpawning?: boolean;
|
|
74
|
+
showScopes?: boolean;
|
|
75
|
+
toolNodes?: boolean | readonly EcsToolNodeType[];
|
|
76
|
+
};
|
|
77
|
+
declare function FlowEcsState(props: Readonly<FlowEcsStateProps>): _$react_jsx_runtime0.JSX.Element;
|
|
78
|
+
declare const _default: _$react.MemoExoticComponent<typeof FlowEcsState>;
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/canvas/flow-ecs-canvas.d.ts
|
|
81
|
+
type FlowEcsCanvasProps = Partial<FlowEcsStateProps> & {
|
|
82
|
+
enableDragDrop?: boolean;
|
|
83
|
+
showEntityTypeTemplates?: boolean;
|
|
84
|
+
showTemplates?: boolean;
|
|
85
|
+
};
|
|
86
|
+
declare function FlowEcsCanvas({
|
|
87
|
+
autoLayout,
|
|
88
|
+
enableEntitySpawning,
|
|
89
|
+
enableDragDrop,
|
|
90
|
+
showEntities,
|
|
91
|
+
showEntityTypeTemplates,
|
|
92
|
+
showScopes,
|
|
93
|
+
showSystemModules,
|
|
94
|
+
showTemplates,
|
|
95
|
+
toolNodes
|
|
96
|
+
}: Readonly<FlowEcsCanvasProps>): _$react_jsx_runtime0.JSX.Element;
|
|
97
|
+
//#endregion
|
|
98
|
+
export { EcsNodeType as a, _default as i, FlowEcsCanvasProps as n, ecsNodeTemplates as o, FlowEcsStateProps as r, ecsNodeTypes as s, FlowEcsCanvas as t };
|
|
99
|
+
//# sourceMappingURL=index-DCOd7jg-.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-DCOd7jg-.d.mts","names":[],"sources":["../src/abstract/node-types.ts","../src/flow/flow-ecs-tool-nodes.tsx","../src/flow/flow-ecs-state.tsx","../src/canvas/flow-ecs-canvas.tsx"],"mappings":";;;;;;;;aAkBY,WAAA;EACV,aAAA;EACA,MAAA;EACA,UAAA;EACA,SAAA;EACA,aAAA;EACA,SAAA;EACA,WAAA;AAAA;AAAA,cAGW,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAUA,gBAAA;;;;;;;;;;;cC9BA,mBAAA,YAAmB,WAAA,CAAA,SAAA,EAAA,WAAA,CAAA,aAAA,EAAA,WAAA,CAAA,SAAA,EAAA,WAAA,CAAA,WAAA;AAAA,KAOpB,eAAA,WAA0B,mBAAmB;;;KCN7C,iBAAA;EACV,iBAAA;EACA,YAAA;EACA,UAAA;EACA,oBAAA;EACA,UAAA;EACA,SAAA,sBAA+B,eAAe;AAAA;AAAA,iBAGvC,YAAA,CAAa,KAAA,EAAO,QAAA,CAAS,iBAAA,IAAkB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,QAAA;;;KCH5C,kBAAA,GAAqB,OAAO,CAAC,iBAAA;EACvC,cAAA;EACA,uBAAA;EACA,aAAA;AAAA;AAAA,iBAGc,aAAA,CAAA;EACd,UAAA;EACA,oBAAA;EACA,cAAA;EACA,YAAA;EACA,uBAAA;EACA,UAAA;EACA,iBAAA;EACA,aAAA;EACA;AAAA,GACC,QAAA,CAAS,kBAAA,IAAmB,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { r as ScopeGroupNodeData, t as EcsToolNodeData } from "./node-props-DkuSwMA0.cjs";
|
|
2
|
+
import { n as EntityNode, t as SystemsModuleNode } from "./node-systems-module-CzkoMbdF.cjs";
|
|
3
|
+
import { a as SystemsModuleNodeTemplate, i as UpdateQueueNodeTemplate, n as SchedulerNodeTemplate, o as ScopeGroupNodeTemplate, r as TelemetryNodeTemplate, s as EntityNodeTemplate, t as EventTimelineNodeTemplate } from "./template-tool-nodes-B7sT2iRc.cjs";
|
|
4
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
+
import * as _$react from "react";
|
|
6
|
+
import * as _$_xyflow_react0 from "@xyflow/react";
|
|
7
|
+
|
|
8
|
+
//#region src/abstract/node-types.d.ts
|
|
9
|
+
declare enum EcsNodeType {
|
|
10
|
+
systemsModule = "systems-module-node",
|
|
11
|
+
entity = "entity-node",
|
|
12
|
+
scopeGroup = "scope-group-node",
|
|
13
|
+
scheduler = "scheduler-node",
|
|
14
|
+
eventTimeline = "event-timeline-node",
|
|
15
|
+
telemetry = "telemetry-node",
|
|
16
|
+
updateQueue = "update-queue-node"
|
|
17
|
+
}
|
|
18
|
+
declare const ecsNodeTypes: {
|
|
19
|
+
"systems-module-node": typeof SystemsModuleNode;
|
|
20
|
+
"entity-node": typeof EntityNode;
|
|
21
|
+
"scope-group-node": _$react.MemoExoticComponent<({
|
|
22
|
+
id,
|
|
23
|
+
selected,
|
|
24
|
+
data,
|
|
25
|
+
type,
|
|
26
|
+
width,
|
|
27
|
+
height
|
|
28
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<ScopeGroupNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
29
|
+
"scheduler-node": _$react.MemoExoticComponent<({
|
|
30
|
+
id,
|
|
31
|
+
data,
|
|
32
|
+
selected,
|
|
33
|
+
type
|
|
34
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
35
|
+
"event-timeline-node": _$react.MemoExoticComponent<({
|
|
36
|
+
id,
|
|
37
|
+
data,
|
|
38
|
+
selected,
|
|
39
|
+
type
|
|
40
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
41
|
+
"telemetry-node": _$react.MemoExoticComponent<({
|
|
42
|
+
id,
|
|
43
|
+
data,
|
|
44
|
+
selected,
|
|
45
|
+
type
|
|
46
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
47
|
+
"update-queue-node": _$react.MemoExoticComponent<({
|
|
48
|
+
id,
|
|
49
|
+
data,
|
|
50
|
+
selected,
|
|
51
|
+
type
|
|
52
|
+
}: _$_xyflow_react0.NodeProps<_$_xyflow_react0.Node<EcsToolNodeData>>) => _$react_jsx_runtime0.JSX.Element>;
|
|
53
|
+
};
|
|
54
|
+
declare const ecsNodeTemplates: {
|
|
55
|
+
"entity-node": EntityNodeTemplate;
|
|
56
|
+
"systems-module-node": SystemsModuleNodeTemplate;
|
|
57
|
+
"scope-group-node": ScopeGroupNodeTemplate;
|
|
58
|
+
"scheduler-node": SchedulerNodeTemplate;
|
|
59
|
+
"event-timeline-node": EventTimelineNodeTemplate;
|
|
60
|
+
"telemetry-node": TelemetryNodeTemplate;
|
|
61
|
+
"update-queue-node": UpdateQueueNodeTemplate;
|
|
62
|
+
};
|
|
63
|
+
//#endregion
|
|
64
|
+
//#region src/flow/flow-ecs-tool-nodes.d.ts
|
|
65
|
+
declare const defaultEcsToolNodes: readonly [EcsNodeType.scheduler, EcsNodeType.eventTimeline, EcsNodeType.telemetry, EcsNodeType.updateQueue];
|
|
66
|
+
type EcsToolNodeType = (typeof defaultEcsToolNodes)[number];
|
|
67
|
+
//#endregion
|
|
68
|
+
//#region src/flow/flow-ecs-state.d.ts
|
|
69
|
+
type FlowEcsStateProps = {
|
|
70
|
+
showSystemModules: boolean;
|
|
71
|
+
showEntities: boolean;
|
|
72
|
+
autoLayout: boolean;
|
|
73
|
+
enableEntitySpawning?: boolean;
|
|
74
|
+
showScopes?: boolean;
|
|
75
|
+
toolNodes?: boolean | readonly EcsToolNodeType[];
|
|
76
|
+
};
|
|
77
|
+
declare function FlowEcsState(props: Readonly<FlowEcsStateProps>): _$react_jsx_runtime0.JSX.Element;
|
|
78
|
+
declare const _default: _$react.MemoExoticComponent<typeof FlowEcsState>;
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/canvas/flow-ecs-canvas.d.ts
|
|
81
|
+
type FlowEcsCanvasProps = Partial<FlowEcsStateProps> & {
|
|
82
|
+
enableDragDrop?: boolean;
|
|
83
|
+
showEntityTypeTemplates?: boolean;
|
|
84
|
+
showTemplates?: boolean;
|
|
85
|
+
};
|
|
86
|
+
declare function FlowEcsCanvas({
|
|
87
|
+
autoLayout,
|
|
88
|
+
enableEntitySpawning,
|
|
89
|
+
enableDragDrop,
|
|
90
|
+
showEntities,
|
|
91
|
+
showEntityTypeTemplates,
|
|
92
|
+
showScopes,
|
|
93
|
+
showSystemModules,
|
|
94
|
+
showTemplates,
|
|
95
|
+
toolNodes
|
|
96
|
+
}: Readonly<FlowEcsCanvasProps>): _$react_jsx_runtime0.JSX.Element;
|
|
97
|
+
//#endregion
|
|
98
|
+
export { EcsNodeType as a, _default as i, FlowEcsCanvasProps as n, ecsNodeTemplates as o, FlowEcsStateProps as r, ecsNodeTypes as s, FlowEcsCanvas as t };
|
|
99
|
+
//# sourceMappingURL=index-DGjpWDlm.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-DGjpWDlm.d.cts","names":[],"sources":["../src/abstract/node-types.ts","../src/flow/flow-ecs-tool-nodes.tsx","../src/flow/flow-ecs-state.tsx","../src/canvas/flow-ecs-canvas.tsx"],"mappings":";;;;;;;;aAkBY,WAAA;EACV,aAAA;EACA,MAAA;EACA,UAAA;EACA,SAAA;EACA,aAAA;EACA,SAAA;EACA,WAAA;AAAA;AAAA,cAGW,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAUA,gBAAA;;;;;;;;;;;cC9BA,mBAAA,YAAmB,WAAA,CAAA,SAAA,EAAA,WAAA,CAAA,aAAA,EAAA,WAAA,CAAA,SAAA,EAAA,WAAA,CAAA,WAAA;AAAA,KAOpB,eAAA,WAA0B,mBAAmB;;;KCN7C,iBAAA;EACV,iBAAA;EACA,YAAA;EACA,UAAA;EACA,oBAAA;EACA,UAAA;EACA,SAAA,sBAA+B,eAAe;AAAA;AAAA,iBAGvC,YAAA,CAAa,KAAA,EAAO,QAAA,CAAS,iBAAA,IAAkB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,cAAA,QAAA;;;KCH5C,kBAAA,GAAqB,OAAO,CAAC,iBAAA;EACvC,cAAA;EACA,uBAAA;EACA,aAAA;AAAA;AAAA,iBAGc,aAAA,CAAA;EACd,UAAA;EACA,oBAAA;EACA,cAAA;EACA,YAAA;EACA,uBAAA;EACA,UAAA;EACA,iBAAA;EACA,aAAA;EACA;AAAA,GACC,QAAA,CAAS,kBAAA,IAAmB,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { i as SystemsModuleNodeData, n as EntityNodeData, o as EcsEntitySpawnRequest, r as ScopeGroupNodeData, s as EcsEntityTypeDescriptor } from "./node-props-DkuSwMA0.cjs";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import * as _$react from "react";
|
|
4
|
+
import { PropsWithChildren } from "react";
|
|
5
|
+
import { EntityEventUid, EntityTypeUid, EntityUid, IEntity, IEntityEvent, IEntityEventsManager, IEntityProxy, IEntityProxyRepository, IEntityRepository, IEntityScheduler, IEntityUpdate, IEntityUpdateQueue, IEventData } from "@awesome-ecs/abstract/entities";
|
|
6
|
+
import { Node } from "@xyflow/react";
|
|
7
|
+
import { PipelineCategoryName } from "@awesome-ecs/abstract/factories";
|
|
8
|
+
import { ISystemsModule, ISystemsModuleRepository, SystemType } from "@awesome-ecs/abstract/systems";
|
|
9
|
+
import { IPerformanceTimer, MiddlewareMetricsSummary, PerformanceTimeEntry } from "@awesome-ecs/abstract/utils";
|
|
10
|
+
|
|
11
|
+
//#region src/context/ecs-flow-repository.d.ts
|
|
12
|
+
declare class EcsFlowRepository {
|
|
13
|
+
private readonly nodes;
|
|
14
|
+
constructor();
|
|
15
|
+
get sizeNodes(): number;
|
|
16
|
+
addSystemModuleNode(node: Node<SystemsModuleNodeData>): void;
|
|
17
|
+
getSystemModuleNode(entityType: EntityTypeUid): Node<SystemsModuleNodeData>;
|
|
18
|
+
addScopeGroupNode(node: Node<ScopeGroupNodeData>): void;
|
|
19
|
+
getScopeGroupNode(scopeId: string): Node<ScopeGroupNodeData>;
|
|
20
|
+
addEntityNode(node: Node<EntityNodeData>): void;
|
|
21
|
+
getEntityNode(entity: IEntityProxy): Node<EntityNodeData>;
|
|
22
|
+
addToolNode(node: Node): void;
|
|
23
|
+
getToolNode(type: string): Node;
|
|
24
|
+
listAllNodes(): Node[];
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/context/ecs-bridge.d.ts
|
|
28
|
+
type EcsBridgeStoreName = 'entities' | 'entityTypes' | 'events' | 'metrics' | 'modules' | 'proxies' | 'queue' | 'scheduler' | 'scopes' | 'subscriptions' | 'updates';
|
|
29
|
+
type EcsBridgeStore = {
|
|
30
|
+
getSnapshot(): number;
|
|
31
|
+
notify(): void;
|
|
32
|
+
subscribe(listener: () => void): () => void;
|
|
33
|
+
};
|
|
34
|
+
type TelemetryMetricsSource = IPerformanceTimer & {
|
|
35
|
+
readonly metrics?: ReadonlyMap<string, ReadonlyArray<PerformanceTimeEntry>>;
|
|
36
|
+
clearMetrics?(): void;
|
|
37
|
+
};
|
|
38
|
+
type EntityUpdateCounts = {
|
|
39
|
+
removes: number;
|
|
40
|
+
updates: number;
|
|
41
|
+
};
|
|
42
|
+
type EcsEventLogEntry = {
|
|
43
|
+
event: IEntityEvent<IEventData>;
|
|
44
|
+
recordedAt: number;
|
|
45
|
+
targets: readonly IEntityProxy[];
|
|
46
|
+
};
|
|
47
|
+
type EcsScopeSummary = {
|
|
48
|
+
entities: readonly IEntity[];
|
|
49
|
+
scopeId: string;
|
|
50
|
+
scopedProxies: ReadonlyMap<EntityTypeUid, IEntityProxy>;
|
|
51
|
+
};
|
|
52
|
+
type EcsEventStreamFilter = {
|
|
53
|
+
limit?: number;
|
|
54
|
+
scopeId?: string;
|
|
55
|
+
source?: IEntityProxy;
|
|
56
|
+
target?: IEntityProxy;
|
|
57
|
+
type?: EntityEventUid;
|
|
58
|
+
};
|
|
59
|
+
type EcsMetricsFilter = {
|
|
60
|
+
category?: PipelineCategoryName;
|
|
61
|
+
entityType?: EntityTypeUid;
|
|
62
|
+
phase?: SystemType | string;
|
|
63
|
+
};
|
|
64
|
+
type PipelineMetricsSummary = {
|
|
65
|
+
avgMs: number;
|
|
66
|
+
count: number;
|
|
67
|
+
lastMs: number;
|
|
68
|
+
maxMs: number;
|
|
69
|
+
minMs: number;
|
|
70
|
+
name: string;
|
|
71
|
+
samples: readonly number[];
|
|
72
|
+
totalMs: number;
|
|
73
|
+
};
|
|
74
|
+
type EcsSchedulerSnapshot = {
|
|
75
|
+
frameSubscriptions: readonly IEntityProxy[];
|
|
76
|
+
isPaused: boolean;
|
|
77
|
+
pendingCount: number;
|
|
78
|
+
schedules: readonly unknown[];
|
|
79
|
+
skippedEntityTypes: readonly EntityTypeUid[];
|
|
80
|
+
};
|
|
81
|
+
type EcsUpdateQueueSnapshot = {
|
|
82
|
+
items: readonly IEntityUpdate[];
|
|
83
|
+
size: number;
|
|
84
|
+
};
|
|
85
|
+
type EcsBridgeInput = {
|
|
86
|
+
defaultScopeId?: string;
|
|
87
|
+
ecsFlowRepository?: EcsFlowRepository;
|
|
88
|
+
entityEventsManager: IEntityEventsManager;
|
|
89
|
+
entityProxyRepository: IEntityProxyRepository;
|
|
90
|
+
entityRepository: IEntityRepository;
|
|
91
|
+
entityScheduler?: IEntityScheduler;
|
|
92
|
+
entityTypeDescriptors?: readonly EcsEntityTypeDescriptor[];
|
|
93
|
+
entityUpdateQueue?: IEntityUpdateQueue;
|
|
94
|
+
eventLogSize?: number;
|
|
95
|
+
performanceTimer?: TelemetryMetricsSource;
|
|
96
|
+
systemsModuleRepository: ISystemsModuleRepository;
|
|
97
|
+
};
|
|
98
|
+
declare class EcsBridge {
|
|
99
|
+
readonly ecsFlowRepository: EcsFlowRepository;
|
|
100
|
+
readonly entityEventsManager: IEntityEventsManager;
|
|
101
|
+
readonly entityProxyRepository: IEntityProxyRepository;
|
|
102
|
+
readonly entityRepository: IEntityRepository;
|
|
103
|
+
readonly entityScheduler?: IEntityScheduler;
|
|
104
|
+
readonly entityUpdateQueue?: IEntityUpdateQueue;
|
|
105
|
+
readonly performanceTimer?: TelemetryMetricsSource;
|
|
106
|
+
readonly stores: Record<EcsBridgeStoreName, EcsBridgeStore>;
|
|
107
|
+
readonly systemsModuleRepository: ISystemsModuleRepository;
|
|
108
|
+
private readonly defaultScopeId?;
|
|
109
|
+
private readonly entityTypeDescriptors;
|
|
110
|
+
private readonly eventLogSize;
|
|
111
|
+
private readonly eventLog;
|
|
112
|
+
private readonly metricEntries;
|
|
113
|
+
private readonly scopedProxies;
|
|
114
|
+
private readonly updateCounts;
|
|
115
|
+
private readonly unsubscribeInstrumentation;
|
|
116
|
+
constructor(input: EcsBridgeInput);
|
|
117
|
+
dispose(): void;
|
|
118
|
+
getEntityUpdateCounts(target: IEntityProxy | EntityUid): EntityUpdateCounts;
|
|
119
|
+
getEntitiesInScope(scopeId: string): IEntity[];
|
|
120
|
+
getEntityTypeDescriptor(idOrEntityType: string | EntityTypeUid): EcsEntityTypeDescriptor | undefined;
|
|
121
|
+
getEntityTypeDescriptors(): EcsEntityTypeDescriptor[];
|
|
122
|
+
registerEntityTypeDescriptor(descriptor: EcsEntityTypeDescriptor): EcsEntityTypeDescriptor;
|
|
123
|
+
getScopes(): EcsScopeSummary[];
|
|
124
|
+
getEventStream(filter?: EcsEventStreamFilter): EcsEventLogEntry[];
|
|
125
|
+
getMetricEntries(filter?: EcsMetricsFilter): PerformanceTimeEntry[];
|
|
126
|
+
getMiddlewareMetrics(filter?: EcsMetricsFilter): MiddlewareMetricsSummary[];
|
|
127
|
+
getPipelineMetrics(entityType?: EntityTypeUid, phase?: SystemType | string): PipelineMetricsSummary | undefined;
|
|
128
|
+
getSchedulerSnapshot(): EcsSchedulerSnapshot | undefined;
|
|
129
|
+
getUpdateQueueSnapshot(limit?: number): EcsUpdateQueueSnapshot | undefined;
|
|
130
|
+
createEntitySpawnUpdate(spawn: EcsEntitySpawnRequest): IEntityUpdate;
|
|
131
|
+
enqueueEntitySpawn(spawn: EcsEntitySpawnRequest): IEntityUpdate | undefined;
|
|
132
|
+
listSystemsModules(): ReadonlyMap<EntityTypeUid, ISystemsModule<IEntity>>;
|
|
133
|
+
recordEvent(event: IEntityEvent<IEventData>, targets?: readonly IEntityProxy[]): void;
|
|
134
|
+
private bumpUpdate;
|
|
135
|
+
private instrumentRepositories;
|
|
136
|
+
}
|
|
137
|
+
declare function createEcsBridge(input: EcsBridgeInput): EcsBridge;
|
|
138
|
+
//#endregion
|
|
139
|
+
//#region src/context/ecs-flow-context.d.ts
|
|
140
|
+
type EcsCanvasContextOptions = {
|
|
141
|
+
readOnly?: boolean;
|
|
142
|
+
telemetryThresholdMs?: number;
|
|
143
|
+
};
|
|
144
|
+
type EcsFlowContextProps = EcsBridge & EcsCanvasContextOptions;
|
|
145
|
+
declare const EcsFlowContext: _$react.Context<EcsFlowContextProps>;
|
|
146
|
+
//#endregion
|
|
147
|
+
//#region src/context/ecs-canvas-provider.d.ts
|
|
148
|
+
type EcsCanvasProviderProps = PropsWithChildren<EcsCanvasContextOptions & {
|
|
149
|
+
bridge: EcsBridge;
|
|
150
|
+
}>;
|
|
151
|
+
declare function EcsCanvasProvider({
|
|
152
|
+
bridge,
|
|
153
|
+
children,
|
|
154
|
+
readOnly,
|
|
155
|
+
telemetryThresholdMs
|
|
156
|
+
}: Readonly<EcsCanvasProviderProps>): _$react_jsx_runtime0.JSX.Element;
|
|
157
|
+
//#endregion
|
|
158
|
+
export { PipelineMetricsSummary as _, EcsFlowContextProps as a, EcsFlowRepository as b, EcsBridgeStore as c, EcsEventStreamFilter as d, EcsMetricsFilter as f, EntityUpdateCounts as g, EcsUpdateQueueSnapshot as h, EcsFlowContext as i, EcsBridgeStoreName as l, EcsScopeSummary as m, EcsCanvasProviderProps as n, EcsBridge as o, EcsSchedulerSnapshot as p, EcsCanvasContextOptions as r, EcsBridgeInput as s, EcsCanvasProvider as t, EcsEventLogEntry as u, TelemetryMetricsSource as v, createEcsBridge as y };
|
|
159
|
+
//# sourceMappingURL=index-YNgbjS9S.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-YNgbjS9S.d.cts","names":[],"sources":["../src/context/ecs-flow-repository.ts","../src/context/ecs-bridge.ts","../src/context/ecs-flow-context.ts","../src/context/ecs-canvas-provider.tsx"],"mappings":"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"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { i as SystemsModuleNodeData, n as EntityNodeData, o as EcsEntitySpawnRequest, r as ScopeGroupNodeData, s as EcsEntityTypeDescriptor } from "./node-props-BtAkmdqr.mjs";
|
|
2
|
+
import * as _$react from "react";
|
|
3
|
+
import { PropsWithChildren } from "react";
|
|
4
|
+
import { Node } from "@xyflow/react";
|
|
5
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
import { ISystemsModule, ISystemsModuleRepository, SystemType } from "@awesome-ecs/abstract/systems";
|
|
7
|
+
import { EntityEventUid, EntityTypeUid, EntityUid, IEntity, IEntityEvent, IEntityEventsManager, IEntityProxy, IEntityProxyRepository, IEntityRepository, IEntityScheduler, IEntityUpdate, IEntityUpdateQueue, IEventData } from "@awesome-ecs/abstract/entities";
|
|
8
|
+
import { PipelineCategoryName } from "@awesome-ecs/abstract/factories";
|
|
9
|
+
import { IPerformanceTimer, MiddlewareMetricsSummary, PerformanceTimeEntry } from "@awesome-ecs/abstract/utils";
|
|
10
|
+
|
|
11
|
+
//#region src/context/ecs-flow-repository.d.ts
|
|
12
|
+
declare class EcsFlowRepository {
|
|
13
|
+
private readonly nodes;
|
|
14
|
+
constructor();
|
|
15
|
+
get sizeNodes(): number;
|
|
16
|
+
addSystemModuleNode(node: Node<SystemsModuleNodeData>): void;
|
|
17
|
+
getSystemModuleNode(entityType: EntityTypeUid): Node<SystemsModuleNodeData>;
|
|
18
|
+
addScopeGroupNode(node: Node<ScopeGroupNodeData>): void;
|
|
19
|
+
getScopeGroupNode(scopeId: string): Node<ScopeGroupNodeData>;
|
|
20
|
+
addEntityNode(node: Node<EntityNodeData>): void;
|
|
21
|
+
getEntityNode(entity: IEntityProxy): Node<EntityNodeData>;
|
|
22
|
+
addToolNode(node: Node): void;
|
|
23
|
+
getToolNode(type: string): Node;
|
|
24
|
+
listAllNodes(): Node[];
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/context/ecs-bridge.d.ts
|
|
28
|
+
type EcsBridgeStoreName = 'entities' | 'entityTypes' | 'events' | 'metrics' | 'modules' | 'proxies' | 'queue' | 'scheduler' | 'scopes' | 'subscriptions' | 'updates';
|
|
29
|
+
type EcsBridgeStore = {
|
|
30
|
+
getSnapshot(): number;
|
|
31
|
+
notify(): void;
|
|
32
|
+
subscribe(listener: () => void): () => void;
|
|
33
|
+
};
|
|
34
|
+
type TelemetryMetricsSource = IPerformanceTimer & {
|
|
35
|
+
readonly metrics?: ReadonlyMap<string, ReadonlyArray<PerformanceTimeEntry>>;
|
|
36
|
+
clearMetrics?(): void;
|
|
37
|
+
};
|
|
38
|
+
type EntityUpdateCounts = {
|
|
39
|
+
removes: number;
|
|
40
|
+
updates: number;
|
|
41
|
+
};
|
|
42
|
+
type EcsEventLogEntry = {
|
|
43
|
+
event: IEntityEvent<IEventData>;
|
|
44
|
+
recordedAt: number;
|
|
45
|
+
targets: readonly IEntityProxy[];
|
|
46
|
+
};
|
|
47
|
+
type EcsScopeSummary = {
|
|
48
|
+
entities: readonly IEntity[];
|
|
49
|
+
scopeId: string;
|
|
50
|
+
scopedProxies: ReadonlyMap<EntityTypeUid, IEntityProxy>;
|
|
51
|
+
};
|
|
52
|
+
type EcsEventStreamFilter = {
|
|
53
|
+
limit?: number;
|
|
54
|
+
scopeId?: string;
|
|
55
|
+
source?: IEntityProxy;
|
|
56
|
+
target?: IEntityProxy;
|
|
57
|
+
type?: EntityEventUid;
|
|
58
|
+
};
|
|
59
|
+
type EcsMetricsFilter = {
|
|
60
|
+
category?: PipelineCategoryName;
|
|
61
|
+
entityType?: EntityTypeUid;
|
|
62
|
+
phase?: SystemType | string;
|
|
63
|
+
};
|
|
64
|
+
type PipelineMetricsSummary = {
|
|
65
|
+
avgMs: number;
|
|
66
|
+
count: number;
|
|
67
|
+
lastMs: number;
|
|
68
|
+
maxMs: number;
|
|
69
|
+
minMs: number;
|
|
70
|
+
name: string;
|
|
71
|
+
samples: readonly number[];
|
|
72
|
+
totalMs: number;
|
|
73
|
+
};
|
|
74
|
+
type EcsSchedulerSnapshot = {
|
|
75
|
+
frameSubscriptions: readonly IEntityProxy[];
|
|
76
|
+
isPaused: boolean;
|
|
77
|
+
pendingCount: number;
|
|
78
|
+
schedules: readonly unknown[];
|
|
79
|
+
skippedEntityTypes: readonly EntityTypeUid[];
|
|
80
|
+
};
|
|
81
|
+
type EcsUpdateQueueSnapshot = {
|
|
82
|
+
items: readonly IEntityUpdate[];
|
|
83
|
+
size: number;
|
|
84
|
+
};
|
|
85
|
+
type EcsBridgeInput = {
|
|
86
|
+
defaultScopeId?: string;
|
|
87
|
+
ecsFlowRepository?: EcsFlowRepository;
|
|
88
|
+
entityEventsManager: IEntityEventsManager;
|
|
89
|
+
entityProxyRepository: IEntityProxyRepository;
|
|
90
|
+
entityRepository: IEntityRepository;
|
|
91
|
+
entityScheduler?: IEntityScheduler;
|
|
92
|
+
entityTypeDescriptors?: readonly EcsEntityTypeDescriptor[];
|
|
93
|
+
entityUpdateQueue?: IEntityUpdateQueue;
|
|
94
|
+
eventLogSize?: number;
|
|
95
|
+
performanceTimer?: TelemetryMetricsSource;
|
|
96
|
+
systemsModuleRepository: ISystemsModuleRepository;
|
|
97
|
+
};
|
|
98
|
+
declare class EcsBridge {
|
|
99
|
+
readonly ecsFlowRepository: EcsFlowRepository;
|
|
100
|
+
readonly entityEventsManager: IEntityEventsManager;
|
|
101
|
+
readonly entityProxyRepository: IEntityProxyRepository;
|
|
102
|
+
readonly entityRepository: IEntityRepository;
|
|
103
|
+
readonly entityScheduler?: IEntityScheduler;
|
|
104
|
+
readonly entityUpdateQueue?: IEntityUpdateQueue;
|
|
105
|
+
readonly performanceTimer?: TelemetryMetricsSource;
|
|
106
|
+
readonly stores: Record<EcsBridgeStoreName, EcsBridgeStore>;
|
|
107
|
+
readonly systemsModuleRepository: ISystemsModuleRepository;
|
|
108
|
+
private readonly defaultScopeId?;
|
|
109
|
+
private readonly entityTypeDescriptors;
|
|
110
|
+
private readonly eventLogSize;
|
|
111
|
+
private readonly eventLog;
|
|
112
|
+
private readonly metricEntries;
|
|
113
|
+
private readonly scopedProxies;
|
|
114
|
+
private readonly updateCounts;
|
|
115
|
+
private readonly unsubscribeInstrumentation;
|
|
116
|
+
constructor(input: EcsBridgeInput);
|
|
117
|
+
dispose(): void;
|
|
118
|
+
getEntityUpdateCounts(target: IEntityProxy | EntityUid): EntityUpdateCounts;
|
|
119
|
+
getEntitiesInScope(scopeId: string): IEntity[];
|
|
120
|
+
getEntityTypeDescriptor(idOrEntityType: string | EntityTypeUid): EcsEntityTypeDescriptor | undefined;
|
|
121
|
+
getEntityTypeDescriptors(): EcsEntityTypeDescriptor[];
|
|
122
|
+
registerEntityTypeDescriptor(descriptor: EcsEntityTypeDescriptor): EcsEntityTypeDescriptor;
|
|
123
|
+
getScopes(): EcsScopeSummary[];
|
|
124
|
+
getEventStream(filter?: EcsEventStreamFilter): EcsEventLogEntry[];
|
|
125
|
+
getMetricEntries(filter?: EcsMetricsFilter): PerformanceTimeEntry[];
|
|
126
|
+
getMiddlewareMetrics(filter?: EcsMetricsFilter): MiddlewareMetricsSummary[];
|
|
127
|
+
getPipelineMetrics(entityType?: EntityTypeUid, phase?: SystemType | string): PipelineMetricsSummary | undefined;
|
|
128
|
+
getSchedulerSnapshot(): EcsSchedulerSnapshot | undefined;
|
|
129
|
+
getUpdateQueueSnapshot(limit?: number): EcsUpdateQueueSnapshot | undefined;
|
|
130
|
+
createEntitySpawnUpdate(spawn: EcsEntitySpawnRequest): IEntityUpdate;
|
|
131
|
+
enqueueEntitySpawn(spawn: EcsEntitySpawnRequest): IEntityUpdate | undefined;
|
|
132
|
+
listSystemsModules(): ReadonlyMap<EntityTypeUid, ISystemsModule<IEntity>>;
|
|
133
|
+
recordEvent(event: IEntityEvent<IEventData>, targets?: readonly IEntityProxy[]): void;
|
|
134
|
+
private bumpUpdate;
|
|
135
|
+
private instrumentRepositories;
|
|
136
|
+
}
|
|
137
|
+
declare function createEcsBridge(input: EcsBridgeInput): EcsBridge;
|
|
138
|
+
//#endregion
|
|
139
|
+
//#region src/context/ecs-flow-context.d.ts
|
|
140
|
+
type EcsCanvasContextOptions = {
|
|
141
|
+
readOnly?: boolean;
|
|
142
|
+
telemetryThresholdMs?: number;
|
|
143
|
+
};
|
|
144
|
+
type EcsFlowContextProps = EcsBridge & EcsCanvasContextOptions;
|
|
145
|
+
declare const EcsFlowContext: _$react.Context<EcsFlowContextProps>;
|
|
146
|
+
//#endregion
|
|
147
|
+
//#region src/context/ecs-canvas-provider.d.ts
|
|
148
|
+
type EcsCanvasProviderProps = PropsWithChildren<EcsCanvasContextOptions & {
|
|
149
|
+
bridge: EcsBridge;
|
|
150
|
+
}>;
|
|
151
|
+
declare function EcsCanvasProvider({
|
|
152
|
+
bridge,
|
|
153
|
+
children,
|
|
154
|
+
readOnly,
|
|
155
|
+
telemetryThresholdMs
|
|
156
|
+
}: Readonly<EcsCanvasProviderProps>): _$react_jsx_runtime0.JSX.Element;
|
|
157
|
+
//#endregion
|
|
158
|
+
export { PipelineMetricsSummary as _, EcsFlowContextProps as a, EcsFlowRepository as b, EcsBridgeStore as c, EcsEventStreamFilter as d, EcsMetricsFilter as f, EntityUpdateCounts as g, EcsUpdateQueueSnapshot as h, EcsFlowContext as i, EcsBridgeStoreName as l, EcsScopeSummary as m, EcsCanvasProviderProps as n, EcsBridge as o, EcsSchedulerSnapshot as p, EcsCanvasContextOptions as r, EcsBridgeInput as s, EcsCanvasProvider as t, EcsEventLogEntry as u, TelemetryMetricsSource as v, createEcsBridge as y };
|
|
159
|
+
//# sourceMappingURL=index-_BgjSgkQ.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-_BgjSgkQ.d.mts","names":[],"sources":["../src/context/ecs-flow-repository.ts","../src/context/ecs-bridge.ts","../src/context/ecs-flow-context.ts","../src/context/ecs-canvas-provider.tsx"],"mappings":"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"}
|