@awesome-flow/ecs 0.14.1 → 0.15.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.
Files changed (83) hide show
  1. package/dist/canvas/index.cjs +1 -1
  2. package/dist/canvas/index.d.cts +1 -1
  3. package/dist/canvas/index.d.mts +1 -1
  4. package/dist/canvas/index.mjs +1 -1
  5. package/dist/{canvas-cO2NAQyX.mjs → canvas-B21OqInM.mjs} +62 -62
  6. package/dist/canvas-B21OqInM.mjs.map +1 -0
  7. package/dist/{canvas-WWAJ6C2l.cjs → canvas-CC3xvbbA.cjs} +61 -61
  8. package/dist/canvas-CC3xvbbA.cjs.map +1 -0
  9. package/dist/context/index.cjs.map +1 -1
  10. package/dist/context/index.d.cts +1 -1
  11. package/dist/context/index.d.mts +1 -1
  12. package/dist/context/index.mjs.map +1 -1
  13. package/dist/{entity-component-inspector-VlwcaUqy.cjs → entity-component-inspector-7f3SijXE.cjs} +2 -2
  14. package/dist/{entity-component-inspector-VlwcaUqy.cjs.map → entity-component-inspector-7f3SijXE.cjs.map} +1 -1
  15. package/dist/{entity-component-inspector-CNaN8Scf.mjs → entity-component-inspector-BKpliIkt.mjs} +2 -2
  16. package/dist/{entity-component-inspector-CNaN8Scf.mjs.map → entity-component-inspector-BKpliIkt.mjs.map} +1 -1
  17. package/dist/hooks/index.cjs +1 -1
  18. package/dist/hooks/index.d.cts +1 -1
  19. package/dist/hooks/index.d.mts +1 -1
  20. package/dist/hooks/index.mjs +1 -1
  21. package/dist/id-generator-C2_8g29M.cjs.map +1 -1
  22. package/dist/id-generator-DDsv3NdX.mjs.map +1 -1
  23. package/dist/{index-edb-X9uc.d.mts → index-BGxRtxzm.d.mts} +2 -3
  24. package/dist/index-BGxRtxzm.d.mts.map +1 -0
  25. package/dist/{index-2l9Vdh2S.d.mts → index-BabUtsGu.d.mts} +9 -8
  26. package/dist/index-BabUtsGu.d.mts.map +1 -0
  27. package/dist/{index-vf1CSWta.d.mts → index-BfZT1xsF.d.mts} +2 -2
  28. package/dist/index-BfZT1xsF.d.mts.map +1 -0
  29. package/dist/{index-CPTq4oOA.d.cts → index-CbjlHvOZ.d.cts} +2 -2
  30. package/dist/index-CbjlHvOZ.d.cts.map +1 -0
  31. package/dist/{index-BTs_8SY-.d.cts → index-Cet6AhTm.d.cts} +3 -4
  32. package/dist/index-Cet6AhTm.d.cts.map +1 -0
  33. package/dist/{index-BFqa6aqs.d.mts → index-D5HuA6I5.d.mts} +20 -13
  34. package/dist/index-D5HuA6I5.d.mts.map +1 -0
  35. package/dist/{index-pInK6VDK.d.cts → index-DRUvPELK.d.cts} +20 -13
  36. package/dist/index-DRUvPELK.d.cts.map +1 -0
  37. package/dist/{index-CyeezgDI.d.mts → index-DoQL-Kim.d.mts} +3 -4
  38. package/dist/index-DoQL-Kim.d.mts.map +1 -0
  39. package/dist/{index-C3QIukqX.d.cts → index-DwEO6FDo.d.cts} +2 -3
  40. package/dist/index-DwEO6FDo.d.cts.map +1 -0
  41. package/dist/{index-Ht3fVcsn.d.cts → index-N2r0CM_0.d.cts} +9 -8
  42. package/dist/index-N2r0CM_0.d.cts.map +1 -0
  43. package/dist/index.cjs +3 -3
  44. package/dist/index.d.cts +6 -6
  45. package/dist/index.d.mts +6 -6
  46. package/dist/index.mjs +3 -3
  47. package/dist/inspectors/index.cjs +1 -1
  48. package/dist/inspectors/index.d.cts +1 -1
  49. package/dist/inspectors/index.d.mts +1 -1
  50. package/dist/inspectors/index.mjs +1 -1
  51. package/dist/node-props-Bryks8-5.d.cts.map +1 -1
  52. package/dist/node-props-Cusf_qtn.d.mts.map +1 -1
  53. package/dist/{node-systems-module-Dx-hISbg.d.cts → node-systems-module-BiefT_Cv.d.cts} +4 -4
  54. package/dist/node-systems-module-BiefT_Cv.d.cts.map +1 -0
  55. package/dist/{node-systems-module-B8aKhvBo.d.mts → node-systems-module-EYtTf6Re.d.mts} +4 -4
  56. package/dist/node-systems-module-EYtTf6Re.d.mts.map +1 -0
  57. package/dist/{node-types-l0GwV0mz.mjs → node-types-DV97CoAJ.mjs} +65 -35
  58. package/dist/node-types-DV97CoAJ.mjs.map +1 -0
  59. package/dist/{node-types-CNO_-52M.cjs → node-types-Z4QaJir-.cjs} +64 -34
  60. package/dist/node-types-Z4QaJir-.cjs.map +1 -0
  61. package/dist/nodes/index.cjs +1 -1
  62. package/dist/nodes/index.d.cts +2 -2
  63. package/dist/nodes/index.d.mts +2 -2
  64. package/dist/nodes/index.mjs +1 -1
  65. package/dist/templates/index.cjs +1 -1
  66. package/dist/templates/index.mjs +1 -1
  67. package/package.json +13 -14
  68. package/dist/canvas-WWAJ6C2l.cjs.map +0 -1
  69. package/dist/canvas-cO2NAQyX.mjs.map +0 -1
  70. package/dist/index-2l9Vdh2S.d.mts.map +0 -1
  71. package/dist/index-BFqa6aqs.d.mts.map +0 -1
  72. package/dist/index-BTs_8SY-.d.cts.map +0 -1
  73. package/dist/index-C3QIukqX.d.cts.map +0 -1
  74. package/dist/index-CPTq4oOA.d.cts.map +0 -1
  75. package/dist/index-CyeezgDI.d.mts.map +0 -1
  76. package/dist/index-Ht3fVcsn.d.cts.map +0 -1
  77. package/dist/index-edb-X9uc.d.mts.map +0 -1
  78. package/dist/index-pInK6VDK.d.cts.map +0 -1
  79. package/dist/index-vf1CSWta.d.mts.map +0 -1
  80. package/dist/node-systems-module-B8aKhvBo.d.mts.map +0 -1
  81. package/dist/node-systems-module-Dx-hISbg.d.cts.map +0 -1
  82. package/dist/node-types-CNO_-52M.cjs.map +0 -1
  83. package/dist/node-types-l0GwV0mz.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-types-Z4QaJir-.cjs","names":["useContext","useSyncExternalStore","EcsBridgeStoreName","EcsFlowContext","useEcsBridge","bridge","Error","useBridgeStoreVersion","storeName","store","stores","subscribe","getSnapshot","IEntity","useMemo","useBridgeStoreVersion","useEcsBridge","useEntitiesInScope","scopeId","$","_c","bridge","entityVersion","proxyVersion","t0","bb0","t1","Symbol","for","getEntitiesInScope","TEntity","IEntity","IEntityProxy","useMemo","EcsIdGenerator","useBridgeStoreVersion","useEcsBridge","useEntity","proxy","$","_c","bridge","version","proxyId","entityProxy","undefined","t0","bb0","entityRepository","has","t1","getEntity","EntityTypeUid","IEntity","useMemo","useBridgeStoreVersion","useEcsBridge","useEntityList","type","$","_c","bridge","version","t0","bb0","undefined","t1","entityRepository","getEntities","Array","from","listAll","TEntity","useMemo","useBridgeStoreVersion","useEcsBridge","useEntityTypeDescriptors","$","_c","bridge","version","t0","getEntityTypeDescriptors","EcsHandleDataType","proxy","module","EcsTemplateGroup","ecs","entities","tools","ITemplateFactory","NodeTemplate","Position","EcsEntityTypeDescriptor","EcsHandleDataType","EntityNodeData","EcsNodeType","EcsTemplateGroup","EcsIdGenerator","entityNodeHandles","dataType","proxy","position","Left","connection","const","disabled","Right","createEntityTypeTemplate","descriptor","id","entityType","entityTypeTemplate","type","entity","group","entities","data","title","toString","spawn","descriptorId","scopeId","handles","EntityNodeTemplate","template","ecs","useMemo","createEntityTypeTemplate","useEntityTypeDescriptors","useEntityTypeTemplates","t0","$","_c","enabled","undefined","descriptors","t1","bb0","t2","Symbol","for","map","EntityUid","IEntityProxy","useMemo","EntityUpdateCounts","useBridgeStoreVersion","useEcsBridge","useEntityUpdates","target","$","_c","bridge","version","t0","getEntityUpdateCounts","useMemo","EcsEventStreamFilter","useBridgeStoreVersion","useEcsBridge","useEventStream","filter","$","_c","bridge","version","t0","getEventStream","EntityTypeUid","PipelineCategoryName","SystemType","useMemo","EcsMetricsFilter","useBridgeStoreVersion","useEcsBridge","usePipelineMetrics","entityType","phase","$","_c","bridge","version","t0","getPipelineMetrics","useMiddlewareMetrics","filter","getMiddlewareMetrics","useMemo","useBridgeStoreVersion","useEcsBridge","useScheduler","$","_c","bridge","version","t0","getSchedulerSnapshot","useMemo","useBridgeStoreVersion","useEcsBridge","useScopeList","$","_c","bridge","entityVersion","scopeVersion","t0","getScopes","EntityTypeUid","IEntity","ISystemsModule","useMemo","useBridgeStoreVersion","useEcsBridge","useSystemsModule","type","$","_c","bridge","version","t0","bb0","undefined","t1","systemsModuleRepository","get","useSystemsModuleList","listSystemsModules","useMemo","useBridgeStoreVersion","useEcsBridge","useUpdateQueue","limit","$","_c","bridge","version","t0","getUpdateQueueSnapshot","NodeContainer","Badge","Group","Stack","Text","Node","NodeProps","memo","EcsToolNodeData","useEventStream","EcsIdGenerator","EventTimelineNode","t0","$","_c","id","data","selected","type","t1","limit","t2","events","t3","Symbol","for","t4","t5","length","t6","map","_temp","t7","t8","entry","recordedAt","event","uid","Date","toLocaleTimeString","entityProxy","origin","target","targets","memo","useMemo","CamelCaseFormatterProps","value","CamelCaseFormatter","props","$","_c","t0","toString","replace","IComponent","IEntity","Accordion","Badge","Stack","memo","EntityComponentInspector","EntityComponentListProps","entity","EntityComponentList","props","$","_c","T0","T1","T2","t0","t1","t2","t3","components","listComponents","Item","length","Panel","map","_temp","t4","t5","t6","c","i","field","value","Object","entries","isComponent","push","Badge","BadgeProps","memo","FormatterCamelCase","BadgeListProps","items","badge","BadgeList","props","Readonly","map","value","i","IEntity","Accordion","Badge","Stack","memo","useBridgeStoreVersion","useEcsBridge","EcsIdGenerator","BadgeList","EntityProxyListProps","entity","EntityProxyList","props","$","_c","bridge","t0","entityProxyRepository","identity","proxy","proxies","Array","from","getAllProxies","values","flat","map","_temp","items","t1","length","t2","Symbol","for","variant","t3","t4","p","entityProxy","IEntity","Accordion","Badge","Stack","memo","useBridgeStoreVersion","useEcsBridge","BadgeList","EntitySubscriptionListProps","entity","EntitySubscriptionList","props","$","_c","bridge","t0","entityEventsManager","identity","proxy","getSubscriptionsForEntity","subscriptions","t1","length","t2","Symbol","for","variant","t3","t4","EntityUid","Badge","memo","useEntityUpdates","EntityUpdateCounterProps","entityUid","EntityUpdateCounter","props","$","_c","updates","removes","t0","t1","t2","IEntity","Accordion","Badge","Divider","Group","EntityComponentList","EntityProxyList","EntitySubscriptionList","EntityUpdateCounter","NodeEntityProps","entity","EntityLayout","t0","$","_c","t1","identity","proxy","entityUid","t2","Symbol","for","t3","t4","NodeContainer","Badge","Stack","Text","Node","NodeProps","EntityNodeData","CamelCaseFormatter","useEntity","EntityLayout","EntityNode","t0","$","_c","id","data","selected","type","entity","entityType","identity","proxy","pending","spawnStatus","missingScheduler","t1","title","t2","t3","t4","entityUid","t5","NodeContainer","Badge","Group","Stack","Text","Node","NodeProps","memo","EcsToolNodeData","useScheduler","SchedulerNode","t0","$","_c","id","data","selected","type","scheduler","t1","Symbol","for","t2","pendingCount","t3","t4","schedules","length","t5","t6","t7","isPaused","t8","t9","t10","t11","frameSubscriptions","t12","t13","t14","t15","t16","NodeCollapse","NodeContainer","GroupBackdrop","Badge","Group","Text","Node","NodeProps","NodeResizer","memo","useMemo","useGroupNode","ScopeGroupNodeData","ScopeGroupNode","t0","$","_c","id","selected","data","type","width","height","positionAbsoluteX","positionAbsoluteY","t1","groupNodes","groupData","onCollapsed","isDropTarget","t2","initialSize","t3","t4","size","t5","length","t6","t7","isCollapsed","t8","t9","scopeId","t10","title","t11","t12","t13","t14","t15","t16","IMiddleware","IPipeline","IPipelineContext","Accordion","Badge","Stack","BadgeList","PipelineMiddlewareListProps","pipeline","label","PipelineMiddlewareList","props","$","_c","t0","Symbol","for","middleware","t1","map","_temp","components","t2","length","t3","variant","t4","t5","m","name","constructor","EntityTypeUid","IEntity","ISystemsModule","ISystemsRuntimeContext","SystemType","Accordion","Text","PipelineMiddlewareList","NodeSystemModuleProps","type","module","SystemsModuleLayout","props","$","_c","runtimeContext","systemsModule","error","dispatch","t0","builder","pipelines","get","initialize","init","t1","update","t2","render","t3","sync","t4","formatError","t5","t6","t7","t8","t9","t10","Error","message","String","NodeContainer","Badge","Node","NodeProps","SystemsModuleNodeData","CamelCaseFormatter","useSystemsModule","SystemsModuleLayout","SystemsModuleNode","t0","$","_c","id","data","selected","type","module","entityType","t1","t2","t3","NodeContainer","Badge","Group","Stack","Text","Node","NodeProps","memo","EcsToolNodeData","useMiddlewareMetrics","TelemetryNode","t0","$","_c","id","data","selected","type","metrics","T0","T1","t1","t2","t3","t4","t5","t6","t7","t8","t9","visibleMetrics","slice","limit","Symbol","for","length","map","_temp","t10","t11","metric","category","name","lastMs","toFixed","NodeContainer","Badge","Group","Stack","Text","Node","NodeProps","memo","EcsToolNodeData","useUpdateQueue","EcsIdGenerator","UpdateQueueNode","t0","$","_c","id","data","selected","type","queue","limit","t1","items","t2","Symbol","for","t3","size","t4","t5","t6","map","_temp","t7","t8","item","index","entityProxy","entity","ITemplateFactory","NodeTemplate","ScopeGroupNodeData","EcsNodeType","EcsTemplateGroup","ScopeGroupNodeTemplate","template","type","scopeGroup","group","ecs","data","title","isGroup","scopeId","initialSize","width","height","collapsedSize","handles","ITemplateFactory","NodeTemplate","Position","EcsHandleDataType","SystemsModuleNodeData","EcsNodeType","EcsTemplateGroup","SystemsModuleNodeTemplate","template","type","systemsModule","group","ecs","data","title","entityType","handles","dataType","module","position","Left","connection","disabled","ITemplateFactory","NodeTemplate","EcsToolNodeData","EcsNodeType","EcsTemplateGroup","createToolTemplate","type","title","group","tools","data","limit","initialSize","width","height","handles","SchedulerNodeTemplate","template","scheduler","EventTimelineNodeTemplate","eventTimeline","TelemetryNodeTemplate","telemetry","UpdateQueueNodeTemplate","updateQueue","NodeTypes","EventTimelineNode","EntityNode","SchedulerNode","ScopeGroupNode","SystemsModuleNode","TelemetryNode","UpdateQueueNode","EntityNodeTemplate","ScopeGroupNodeTemplate","SystemsModuleNodeTemplate","EventTimelineNodeTemplate","SchedulerNodeTemplate","TelemetryNodeTemplate","UpdateQueueNodeTemplate","EcsNodeType","systemsModule","entity","scopeGroup","scheduler","eventTimeline","telemetry","updateQueue","ecsNodeTypes","ecsNodeTemplates"],"sources":["../src/hooks/use-ecs-bridge.ts","../src/hooks/use-entities-in-scope.ts","../src/hooks/use-entity.ts","../src/hooks/use-entity-list.ts","../src/hooks/use-entity-type-descriptors.ts","../src/abstract/handle-types.ts","../src/abstract/templates.ts","../src/templates/template-entity-node.ts","../src/hooks/use-entity-type-templates.ts","../src/hooks/use-entity-updates.ts","../src/hooks/use-event-stream.ts","../src/hooks/use-pipeline-metrics.ts","../src/hooks/use-scheduler.ts","../src/hooks/use-scope-list.ts","../src/hooks/use-systems-module.ts","../src/hooks/use-update-queue.ts","../src/nodes/node-event-timeline.tsx","../src/components/formatter-camel-case.tsx","../src/components/entity-component-list.tsx","../src/components/badge-list.tsx","../src/components/entity-proxy-list.tsx","../src/components/entity-subscription-list.tsx","../src/components/entity-update-counter.tsx","../src/layout/entity-layout.tsx","../src/nodes/node-entity.tsx","../src/nodes/node-scheduler.tsx","../src/nodes/node-scope-group.tsx","../src/components/pipeline-middleware-list.tsx","../src/layout/systems-module-layout.tsx","../src/nodes/node-systems-module.tsx","../src/nodes/node-telemetry.tsx","../src/nodes/node-update-queue.tsx","../src/templates/template-scope-group.ts","../src/templates/template-systems-module.ts","../src/templates/template-tool-nodes.ts","../src/abstract/node-types.ts"],"sourcesContent":["import { useContext, useSyncExternalStore } from 'react';\nimport { EcsBridgeStoreName } from '../context/ecs-bridge';\nimport { EcsFlowContext } from '../context/ecs-flow-context';\n\nexport function useEcsBridge() {\n const bridge = useContext(EcsFlowContext);\n\n if (!bridge) {\n throw new Error('useEcsBridge must be used inside an EcsCanvasProvider.');\n }\n\n return bridge;\n}\n\nexport function useBridgeStoreVersion(storeName: EcsBridgeStoreName): number {\n const bridge = useEcsBridge();\n const store = bridge.stores[storeName];\n\n return useSyncExternalStore(store.subscribe, store.getSnapshot, store.getSnapshot);\n}\n","import { IEntity } from '@awesome-ecs/abstract/entities';\nimport { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEntitiesInScope<TEntity extends IEntity = IEntity>(\n scopeId: string | undefined\n): TEntity[] {\n const bridge = useEcsBridge();\n const entityVersion = useBridgeStoreVersion('entities');\n const proxyVersion = useBridgeStoreVersion('proxies');\n\n return useMemo(() => {\n if (!scopeId) {\n return [];\n }\n\n return bridge.getEntitiesInScope(scopeId) as TEntity[];\n }, [bridge, entityVersion, proxyVersion, scopeId]);\n}\n","import { IEntity, IEntityProxy } from '@awesome-ecs/abstract/entities';\nimport { useMemo } from 'react';\nimport { EcsIdGenerator } from '../utils/id-generator';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEntity<TEntity extends IEntity = IEntity>(\n proxy: IEntityProxy | undefined\n): TEntity | undefined {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('entities');\n const proxyId = proxy ? EcsIdGenerator.entityProxy(proxy) : undefined;\n\n return useMemo(() => {\n if (!proxy || !bridge.entityRepository.has(proxy)) {\n return undefined;\n }\n\n return bridge.entityRepository.getEntity<TEntity>(proxy);\n }, [bridge, proxy, proxyId, version]);\n}\n","import { EntityTypeUid, IEntity } from '@awesome-ecs/abstract/entities';\nimport { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEntityList<TEntity extends IEntity = IEntity>(\n type?: EntityTypeUid\n): TEntity[] {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('entities');\n\n return useMemo(() => {\n if (type !== undefined) {\n return bridge.entityRepository.getEntities<TEntity>(type);\n }\n\n return Array.from(bridge.entityRepository.listAll()) as TEntity[];\n }, [bridge, type, version]);\n}\n","import { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEntityTypeDescriptors() {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('entityTypes');\n\n return useMemo(() => bridge.getEntityTypeDescriptors(), [bridge, version]);\n}\n","export enum EcsHandleDataType {\n proxy = 'proxy',\n module = 'module'\n}\n","export enum EcsTemplateGroup {\n ecs = 'ECS',\n entities = 'ECS Entities',\n tools = 'ECS Tools'\n}\n","import { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/react';\nimport { EcsEntityTypeDescriptor } from '../abstract/entity-type-descriptor';\nimport { EcsHandleDataType } from '../abstract/handle-types';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { EcsTemplateGroup } from '../abstract/templates';\nimport { EcsIdGenerator } from '../utils/id-generator';\n\nconst entityNodeHandles = [\n {\n dataType: EcsHandleDataType.proxy,\n position: Position.Left,\n connection: 'target' as const,\n disabled: true\n },\n {\n dataType: EcsHandleDataType.proxy,\n position: Position.Right,\n connection: 'source' as const,\n disabled: true\n }\n];\n\nexport function createEntityTypeTemplate(descriptor: EcsEntityTypeDescriptor): NodeTemplate<EntityNodeData> {\n const id = descriptor.id ?? EcsIdGenerator.entityType(descriptor.entityType);\n\n return {\n id: EcsIdGenerator.entityTypeTemplate(descriptor.entityType, id),\n type: EcsNodeType.entity,\n group: descriptor.group ?? EcsTemplateGroup.entities,\n data: {\n title: descriptor.title ?? descriptor.entityType.toString(),\n entityType: descriptor.entityType,\n spawn: {\n descriptorId: id,\n entityType: descriptor.entityType,\n scopeId: descriptor.scopeId\n }\n },\n handles: entityNodeHandles\n };\n}\n\nexport class EntityNodeTemplate implements ITemplateFactory {\n readonly template: NodeTemplate<EntityNodeData> = {\n type: EcsNodeType.entity,\n group: EcsTemplateGroup.ecs,\n data: {\n title: 'Entity'\n },\n handles: entityNodeHandles\n };\n}\n","import { useMemo } from 'react';\nimport { createEntityTypeTemplate } from '../templates/template-entity-node';\nimport { useEntityTypeDescriptors } from './use-entity-type-descriptors';\n\nexport function useEntityTypeTemplates(enabled = true) {\n const descriptors = useEntityTypeDescriptors();\n\n return useMemo(() => {\n if (!enabled) {\n return [];\n }\n\n return descriptors.map(createEntityTypeTemplate);\n }, [descriptors, enabled]);\n}\n","import { EntityUid, IEntityProxy } from '@awesome-ecs/abstract/entities';\nimport { useMemo } from 'react';\nimport { EntityUpdateCounts } from '../context/ecs-bridge';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEntityUpdates(target: IEntityProxy | EntityUid): EntityUpdateCounts {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('updates');\n\n return useMemo(() => bridge.getEntityUpdateCounts(target), [bridge, target, version]);\n}\n","import { useMemo } from 'react';\nimport { EcsEventStreamFilter } from '../context/ecs-bridge';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useEventStream(filter?: EcsEventStreamFilter) {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('events');\n\n return useMemo(() => bridge.getEventStream(filter), [bridge, filter, version]);\n}\n","import { EntityTypeUid } from '@awesome-ecs/abstract/entities';\nimport { PipelineCategoryName } from '@awesome-ecs/abstract/factories';\nimport { SystemType } from '@awesome-ecs/abstract/systems';\nimport { useMemo } from 'react';\nimport { EcsMetricsFilter } from '../context/ecs-bridge';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function usePipelineMetrics(entityType?: EntityTypeUid, phase?: SystemType | string) {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('metrics');\n\n return useMemo(\n () => bridge.getPipelineMetrics(entityType, phase),\n [bridge, entityType, phase, version]\n );\n}\n\nexport function useMiddlewareMetrics(filter?: EcsMetricsFilter & { category?: PipelineCategoryName }) {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('metrics');\n\n return useMemo(() => bridge.getMiddlewareMetrics(filter), [bridge, filter, version]);\n}\n","import { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useScheduler() {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('scheduler');\n\n return useMemo(() => bridge.getSchedulerSnapshot(), [bridge, version]);\n}\n","import { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useScopeList() {\n const bridge = useEcsBridge();\n const entityVersion = useBridgeStoreVersion('entities');\n const scopeVersion = useBridgeStoreVersion('scopes');\n\n return useMemo(() => bridge.getScopes(), [bridge, entityVersion, scopeVersion]);\n}\n","import { EntityTypeUid, IEntity } from '@awesome-ecs/abstract/entities';\nimport { ISystemsModule } from '@awesome-ecs/abstract/systems';\nimport { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useSystemsModule<TEntity extends IEntity = IEntity>(\n type: EntityTypeUid | undefined\n): ISystemsModule<TEntity> | undefined {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('modules');\n\n return useMemo(() => {\n if (type === undefined) {\n return undefined;\n }\n\n return bridge.systemsModuleRepository.get<TEntity>(type);\n }, [bridge, type, version]);\n}\n\nexport function useSystemsModuleList(): ReadonlyMap<EntityTypeUid, ISystemsModule<IEntity>> {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('modules');\n\n return useMemo(() => bridge.listSystemsModules(), [bridge, version]);\n}\n","import { useMemo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from './use-ecs-bridge';\n\nexport function useUpdateQueue(limit?: number) {\n const bridge = useEcsBridge();\n const version = useBridgeStoreVersion('queue');\n\n return useMemo(() => bridge.getUpdateQueueSnapshot(limit), [bridge, limit, version]);\n}\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge, Group, Stack, Text } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { useEventStream } from '../hooks';\nimport { EcsIdGenerator } from '../utils/id-generator';\n\nfunction EventTimelineNode({ id, data, selected, type }: NodeProps<Node<EcsToolNodeData>>) {\n const events = useEventStream({ limit: data.limit ?? 10 });\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth color=\"grape\" variant=\"transparent\">\n Event Timeline\n </Badge>\n }\n type={type}\n >\n <Stack gap=\"xs\">\n <Badge variant=\"light\">events {events.length}</Badge>\n {events.length === 0 && (\n <Text size=\"xs\" c=\"dimmed\">\n No events recorded.\n </Text>\n )}\n {events.map((entry) => (\n <Stack key={`${entry.recordedAt}:${entry.event.data.uid}`} gap={2}>\n <Group gap=\"xs\" wrap=\"nowrap\">\n <Badge size=\"xs\" variant=\"outline\">\n {entry.event.data.uid}\n </Badge>\n <Text size=\"xs\" c=\"dimmed\">\n {new Date(entry.recordedAt).toLocaleTimeString()}\n </Text>\n </Group>\n <Text size=\"xs\" truncate>\n {EcsIdGenerator.entityProxy(entry.event.origin)}\n {' -> '}\n {entry.event.target ? EcsIdGenerator.entityProxy(entry.event.target) : `${entry.targets.length} target(s)`}\n </Text>\n </Stack>\n ))}\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(EventTimelineNode);\n","import { memo, useMemo } from 'react';\n\nexport type CamelCaseFormatterProps = {\n value: string | number;\n};\n\nfunction CamelCaseFormatter(props: Readonly<CamelCaseFormatterProps>) {\n const value = useMemo(\n () => props.value?.toString().replace(/([a-z])([A-Z])/g, '$1 $2'),\n [props.value]\n );\n return value;\n}\n\nexport default memo(CamelCaseFormatter);\n","import { IComponent } from '@awesome-ecs/abstract/components';\nimport { IEntity } from '@awesome-ecs/abstract/entities';\nimport { Accordion, Badge, Stack } from '@mantine/core';\nimport { memo } from 'react';\nimport EntityComponentInspector from './entity-component-inspector';\n\nexport type EntityComponentListProps = {\n entity: IEntity;\n};\n\nfunction EntityComponentList(props: Readonly<EntityComponentListProps>) {\n const components = listComponents(props.entity);\n\n return (\n <Accordion.Item key=\"components\" value=\"components\">\n <Accordion.Control>\n <Badge fullWidth variant=\"light\" rightSection={components.length}>\n Components\n </Badge>\n </Accordion.Control>\n <Accordion.Panel>\n <Stack>\n {components.map((c, i) => (\n <EntityComponentInspector component={c} key={i} />\n ))}\n </Stack>\n </Accordion.Panel>\n </Accordion.Item>\n );\n}\n\nfunction listComponents(entity: IEntity): IComponent[] {\n const components: IComponent[] = [];\n for (const [field, value] of Object.entries(entity)) {\n if (field === 'identity') {\n continue;\n }\n\n if (isComponent(value)) {\n components.push(value);\n }\n }\n\n return components;\n}\n\nfunction isComponent(value: unknown): value is IComponent {\n return (\n typeof value === 'object' &&\n value !== null &&\n 'componentType' in value &&\n 'isSerializable' in value\n );\n}\n\nexport default memo(EntityComponentList);\n","import { Badge, BadgeProps } from '@mantine/core';\nimport { memo } from 'react';\nimport FormatterCamelCase from './formatter-camel-case';\n\nexport type BadgeListProps = {\n items: (string | number)[];\n badge?: BadgeProps;\n};\n\nfunction BadgeList(props: Readonly<BadgeListProps>) {\n return props.items.map((value, i) => {\n return (\n <Badge key={i} {...(props.badge || [])}>\n <FormatterCamelCase value={value} />\n </Badge>\n );\n });\n}\n\nexport default memo(BadgeList);\n","import { IEntity } from '@awesome-ecs/abstract/entities';\nimport { Accordion, Badge, Stack } from '@mantine/core';\nimport { memo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\nimport { EcsIdGenerator } from '../utils/id-generator';\nimport BadgeList from './badge-list';\n\nexport type EntityProxyListProps = {\n entity: IEntity;\n};\n\nfunction EntityProxyList(props: Readonly<EntityProxyListProps>) {\n const bridge = useEcsBridge();\n useBridgeStoreVersion('proxies');\n\n const proxies = Array.from(bridge.entityProxyRepository.getAllProxies(props.entity.identity.proxy).values()).flat();\n const items = proxies.map((p) => EcsIdGenerator.entityProxy(p));\n\n return (\n <Accordion.Item key=\"proxies\" value=\"proxies\">\n <Accordion.Control>\n <Badge fullWidth variant=\"light\" rightSection={items.length}>\n Proxies\n </Badge>\n </Accordion.Control>\n <Accordion.Panel>\n <Stack>\n <BadgeList items={items} badge={{ variant: 'outline' }} />\n </Stack>\n </Accordion.Panel>\n </Accordion.Item>\n );\n}\n\nexport default memo(EntityProxyList);\n","import { IEntity } from '@awesome-ecs/abstract/entities';\nimport { Accordion, Badge, Stack } from '@mantine/core';\nimport { memo } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\nimport BadgeList from './badge-list';\n\nexport type EntitySubscriptionListProps = {\n entity: IEntity;\n};\n\nfunction EntitySubscriptionList(props: Readonly<EntitySubscriptionListProps>) {\n const bridge = useEcsBridge();\n useBridgeStoreVersion('subscriptions');\n\n const subscriptions = bridge.entityEventsManager.getSubscriptionsForEntity(props.entity.identity.proxy);\n\n return (\n <Accordion.Item key=\"subscriptions\" value=\"subscriptions\">\n <Accordion.Control>\n <Badge fullWidth variant=\"light\" rightSection={subscriptions.length}>\n Events\n </Badge>\n </Accordion.Control>\n <Accordion.Panel>\n <Stack>\n <BadgeList items={subscriptions} badge={{ variant: 'outline' }} />\n </Stack>\n </Accordion.Panel>\n </Accordion.Item>\n );\n}\n\nexport default memo(EntitySubscriptionList);\n","import { EntityUid } from '@awesome-ecs/abstract/entities';\nimport { Badge } from '@mantine/core';\nimport { memo } from 'react';\nimport { useEntityUpdates } from '../hooks';\n\nexport type EntityUpdateCounterProps = {\n entityUid: EntityUid;\n};\n\nfunction EntityUpdateCounter(props: Readonly<EntityUpdateCounterProps>) {\n const { updates, removes } = useEntityUpdates(props.entityUid);\n\n return (\n <>\n <Badge variant=\"light\">{updates}</Badge>\n <Badge variant=\"light\" color=\"orange\">\n {removes}\n </Badge>\n </>\n );\n}\n\nexport default memo(EntityUpdateCounter);\n","import { IEntity } from '@awesome-ecs/abstract/entities';\nimport { Accordion, Badge, Divider, Group } from '@mantine/core';\nimport EntityComponentList from '../components/entity-component-list';\nimport EntityProxyList from '../components/entity-proxy-list';\nimport EntitySubscriptionList from '../components/entity-subscription-list';\nimport EntityUpdateCounter from '../components/entity-update-counter';\n\nexport type NodeEntityProps = {\n entity: IEntity;\n};\n\nfunction EntityLayout({ entity }: Readonly<NodeEntityProps>) {\n return (\n <>\n <Group>\n <Badge variant=\"outline\" color=\"orange\">\n {entity.identity.proxy.entityUid}\n </Badge>\n <EntityUpdateCounter entityUid={entity.identity.proxy.entityUid} />\n </Group>\n <Divider my={5} />\n <Accordion>\n <EntityComponentList entity={entity} />\n <EntityProxyList entity={entity} />\n <EntitySubscriptionList entity={entity} />\n </Accordion>\n </>\n );\n}\n\nexport default EntityLayout;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge, Stack, Text } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport CamelCaseFormatter from '../components/formatter-camel-case';\nimport { useEntity } from '../hooks';\nimport EntityLayout from '../layout/entity-layout';\n\nfunction EntityNode({ id, data, selected, type }: NodeProps<Node<EntityNodeData>>) {\n const entity = useEntity(data.entity);\n const entityType = entity?.identity.proxy.entityType ?? data.entity?.entityType ?? data.entityType;\n const pending = data.spawnStatus === 'queued' && !entity;\n const missingScheduler = data.spawnStatus === 'missing-scheduler';\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth variant=\"transparent\">\n <CamelCaseFormatter value={entityType ?? data.title} />\n </Badge>\n }\n type={type}\n >\n {entity && <EntityLayout entity={entity} />}\n {!entity && (\n <Stack gap=\"xs\">\n <Badge variant=\"light\" color={pending ? 'yellow' : 'gray'}>\n {pending ? 'upsert queued' : missingScheduler ? 'scheduler missing' : 'no entity bound'}\n </Badge>\n {data.entity && (\n <Text size=\"xs\" c=\"dimmed\" truncate>\n {data.entity.entityType}:{data.entity.entityUid}\n </Text>\n )}\n </Stack>\n )}\n </NodeContainer>\n );\n}\n\nexport default EntityNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge, Group, Stack, Text } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { useScheduler } from '../hooks';\n\nfunction SchedulerNode({ id, data, selected, type }: NodeProps<Node<EcsToolNodeData>>) {\n const scheduler = useScheduler();\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth color=\"cyan\" variant=\"transparent\">\n Scheduler\n </Badge>\n }\n type={type}\n >\n <Stack gap=\"xs\">\n <Group gap=\"xs\">\n <Badge variant=\"light\">pending {scheduler?.pendingCount ?? 0}</Badge>\n <Badge variant=\"light\">scheduled {scheduler?.schedules.length ?? 0}</Badge>\n </Group>\n <Group gap=\"xs\">\n <Badge variant={scheduler?.isPaused ? 'filled' : 'outline'} color={scheduler?.isPaused ? 'orange' : 'gray'}>\n {scheduler?.isPaused ? 'paused' : 'running'}\n </Badge>\n <Badge variant=\"outline\">per-frame {scheduler?.frameSubscriptions.length ?? 0}</Badge>\n </Group>\n {!scheduler && (\n <Text size=\"xs\" c=\"dimmed\">\n No scheduler connected.\n </Text>\n )}\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(SchedulerNode);\n","import { NodeCollapse, NodeContainer, GroupBackdrop } from '@awesome-flow/core/layout';\nimport { Badge, Group, Text } from '@mantine/core';\nimport { Node, NodeProps, NodeResizer } from '@xyflow/react';\nimport { memo, useMemo } from 'react';\nimport { useGroupNode } from '@awesome-flow/core/hooks';\nimport { ScopeGroupNodeData } from '../abstract/node-props';\n\nfunction ScopeGroupNode({\n id,\n selected,\n data,\n type,\n width,\n height,\n positionAbsoluteX,\n positionAbsoluteY\n}: NodeProps<Node<ScopeGroupNodeData>>) {\n const { groupNodes, groupData, onCollapsed, isDropTarget } = useGroupNode({ id, data, width, height });\n\n const size = useMemo(\n () => ({\n width: data.initialSize?.width || 320,\n height: data.initialSize?.height || 220\n }),\n [data.initialSize]\n );\n\n const title = useMemo(\n () => (\n <Group justify=\"space-between\" wrap=\"nowrap\">\n <Group gap=\"xs\" wrap=\"nowrap\">\n <Badge size=\"xs\" variant=\"outline\" radius=\"xs\" color=\"teal\">\n {groupNodes?.length || 0}\n </Badge>\n <NodeCollapse nodeId={id} isCollapsed={data.isCollapsed} onCollapsed={onCollapsed} />\n </Group>\n <Text size=\"xs\" c=\"dimmed\" truncate>\n {data.scopeId}\n </Text>\n </Group>\n ),\n [data.scopeId, data.isCollapsed, groupNodes, id, onCollapsed]\n );\n\n return (\n <>\n <GroupBackdrop x={positionAbsoluteX} y={positionAbsoluteY} width={width} height={height} />\n {isDropTarget && <span className=\"flowGroupDropTarget\" aria-hidden=\"true\" />}\n <NodeContainer id={id} selected={selected} data={groupData} title={title} type={type} />\n <NodeResizer nodeId={id} minWidth={size.width} minHeight={size.height} isVisible={selected && !data.isCollapsed} />\n </>\n );\n}\n\nexport default memo(ScopeGroupNode);\n","import { IMiddleware, IPipeline, IPipelineContext } from '@awesome-ecs/abstract/pipelines';\nimport { Accordion, Badge, Stack } from '@mantine/core';\nimport BadgeList from './badge-list';\n\nexport type PipelineMiddlewareListProps = {\n pipeline: IPipeline<IPipelineContext>;\n label: string;\n};\n\nfunction PipelineMiddlewareList(props: Readonly<PipelineMiddlewareListProps>) {\n let middleware: IMiddleware<IPipelineContext>[] = [];\n\n if (props.pipeline) {\n middleware = props.pipeline['middleware'] as IMiddleware<IPipelineContext>[];\n }\n\n const components = middleware.map((m) => {\n return m.name || m.constructor.name;\n });\n\n return (\n <Accordion.Item key={props.label} value={props.label}>\n <Accordion.Control>\n <Badge fullWidth variant=\"light\" rightSection={components.length}>\n {props.label}\n </Badge>\n </Accordion.Control>\n <Accordion.Panel>\n <Stack>\n <BadgeList items={components} badge={{ variant: 'outline' }} />\n </Stack>\n </Accordion.Panel>\n </Accordion.Item>\n );\n}\n\nexport default PipelineMiddlewareList;\n","import { EntityTypeUid, IEntity } from '@awesome-ecs/abstract/entities';\nimport { ISystemsModule, ISystemsRuntimeContext, SystemType } from '@awesome-ecs/abstract/systems';\nimport { Accordion, Text } from '@mantine/core';\nimport PipelineMiddlewareList from '../components/pipeline-middleware-list';\n\nexport type NodeSystemModuleProps = {\n type: EntityTypeUid;\n module: ISystemsModule<IEntity>;\n};\n\nfunction SystemsModuleLayout(props: Readonly<NodeSystemModuleProps>) {\n const { module } = props;\n\n const runtimeContext = module['runtimeContext'] as ISystemsRuntimeContext<IEntity> | undefined;\n const systemsModule = runtimeContext?.systemsModule ?? module;\n\n const error = runtimeContext?.dispatch?.error;\n\n const init = systemsModule.builder.pipelines.get(SystemType.initialize);\n const update = systemsModule.builder.pipelines.get(SystemType.update);\n const render = systemsModule.builder.pipelines.get(SystemType.render);\n const sync = systemsModule.builder.pipelines.get(SystemType.sync);\n\n return (\n <>\n {error && <Text>Error: {formatError(error)}</Text>}\n <Accordion>\n {init && <PipelineMiddlewareList pipeline={init} label=\"Initialize\" />}\n {update && <PipelineMiddlewareList pipeline={update} label=\"Update\" />}\n {render && <PipelineMiddlewareList pipeline={render} label=\"Render\" />}\n {sync && <PipelineMiddlewareList pipeline={sync} label=\"Sync\" />}\n </Accordion>\n </>\n );\n}\n\nfunction formatError(error: unknown): string {\n return error instanceof Error ? error.message : String(error);\n}\n\nexport default SystemsModuleLayout;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { SystemsModuleNodeData } from '../abstract/node-props';\nimport CamelCaseFormatter from '../components/formatter-camel-case';\nimport { useSystemsModule } from '../hooks';\nimport SystemsModuleLayout from '../layout/systems-module-layout';\n\nfunction SystemsModuleNode({ id, data, selected, type }: NodeProps<Node<SystemsModuleNodeData>>) {\n const module = useSystemsModule(data.entityType);\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth color=\"indigo\" variant=\"transparent\">\n <CamelCaseFormatter value={data.entityType} />\n </Badge>\n }\n type={type}\n >\n {module && <SystemsModuleLayout type={data.entityType} module={module} />}\n </NodeContainer>\n );\n}\n\nexport default SystemsModuleNode;\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge, Group, Stack, Text } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { useMiddlewareMetrics } from '../hooks';\n\nfunction TelemetryNode({ id, data, selected, type }: NodeProps<Node<EcsToolNodeData>>) {\n const metrics = useMiddlewareMetrics();\n const visibleMetrics = metrics.slice(0, data.limit ?? 6);\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth color=\"lime\" variant=\"transparent\">\n Telemetry\n </Badge>\n }\n type={type}\n >\n <Stack gap=\"xs\">\n <Badge variant=\"light\">metrics {metrics.length}</Badge>\n {visibleMetrics.length === 0 && (\n <Text size=\"xs\" c=\"dimmed\">\n No metrics recorded.\n </Text>\n )}\n {visibleMetrics.map((metric) => (\n <Group key={`${metric.category}:${metric.name}`} justify=\"space-between\" gap=\"xs\" wrap=\"nowrap\">\n <Text size=\"xs\" truncate>\n {metric.name}\n </Text>\n <Badge size=\"xs\" variant=\"outline\">\n {metric.lastMs.toFixed(2)}ms\n </Badge>\n </Group>\n ))}\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(TelemetryNode);\n","import { NodeContainer } from '@awesome-flow/core/layout';\nimport { Badge, Group, Stack, Text } from '@mantine/core';\nimport { Node, NodeProps } from '@xyflow/react';\nimport { memo } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { useUpdateQueue } from '../hooks';\nimport { EcsIdGenerator } from '../utils/id-generator';\n\nfunction UpdateQueueNode({ id, data, selected, type }: NodeProps<Node<EcsToolNodeData>>) {\n const queue = useUpdateQueue(data.limit ?? 10);\n const items = queue?.items ?? [];\n\n return (\n <NodeContainer\n id={id}\n selected={selected}\n data={data}\n title={\n <Badge fullWidth color=\"orange\" variant=\"transparent\">\n Dirty Updates\n </Badge>\n }\n type={type}\n >\n <Stack gap=\"xs\">\n <Badge variant=\"light\">dirty {queue?.size ?? 0}</Badge>\n {!queue && (\n <Text size=\"xs\" c=\"dimmed\">\n No runtime scheduler connected.\n </Text>\n )}\n {items.map((item, index) => (\n <Group key={`${item.type}:${EcsIdGenerator.entityProxy(item.entity)}:${index}`} gap=\"xs\" wrap=\"nowrap\">\n <Badge size=\"xs\" variant=\"outline\">\n {item.type}\n </Badge>\n <Text size=\"xs\" truncate>\n {EcsIdGenerator.entityProxy(item.entity)}\n </Text>\n </Group>\n ))}\n </Stack>\n </NodeContainer>\n );\n}\n\nexport default memo(UpdateQueueNode);\n","import { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { ScopeGroupNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { EcsTemplateGroup } from '../abstract/templates';\n\nexport class ScopeGroupNodeTemplate implements ITemplateFactory {\n readonly template: NodeTemplate<ScopeGroupNodeData> = {\n type: EcsNodeType.scopeGroup,\n group: EcsTemplateGroup.ecs,\n data: {\n title: 'Scope Group',\n isGroup: true,\n scopeId: null,\n initialSize: {\n width: 420,\n height: 260\n },\n collapsedSize: {\n width: 320,\n height: 80\n }\n },\n handles: []\n };\n}\n","import { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { Position } from '@xyflow/react';\nimport { EcsHandleDataType } from '../abstract/handle-types';\nimport { SystemsModuleNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { EcsTemplateGroup } from '../abstract/templates';\n\nexport class SystemsModuleNodeTemplate implements ITemplateFactory {\n readonly template: NodeTemplate<SystemsModuleNodeData> = {\n type: EcsNodeType.systemsModule,\n group: EcsTemplateGroup.ecs,\n data: {\n title: 'Systems Module',\n entityType: null\n },\n handles: [\n {\n dataType: EcsHandleDataType.module,\n position: Position.Left,\n connection: 'target',\n disabled: true\n }\n ]\n };\n}\n","import { ITemplateFactory, NodeTemplate } from '@awesome-flow/core/abstract';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { EcsTemplateGroup } from '../abstract/templates';\n\nfunction createToolTemplate(type: EcsNodeType, title: string): NodeTemplate<EcsToolNodeData> {\n return {\n type,\n group: EcsTemplateGroup.tools,\n data: {\n title,\n limit: 10,\n initialSize: {\n width: 260,\n height: 180\n }\n },\n handles: []\n };\n}\n\nexport class SchedulerNodeTemplate implements ITemplateFactory {\n readonly template = createToolTemplate(EcsNodeType.scheduler, 'Scheduler');\n}\n\nexport class EventTimelineNodeTemplate implements ITemplateFactory {\n readonly template = createToolTemplate(EcsNodeType.eventTimeline, 'Event Timeline');\n}\n\nexport class TelemetryNodeTemplate implements ITemplateFactory {\n readonly template = createToolTemplate(EcsNodeType.telemetry, 'Telemetry');\n}\n\nexport class UpdateQueueNodeTemplate implements ITemplateFactory {\n readonly template = createToolTemplate(EcsNodeType.updateQueue, 'Dirty Updates');\n}\n","import { NodeTypes } from '@xyflow/react';\nimport EventTimelineNode from '../nodes/node-event-timeline';\nimport EntityNode from '../nodes/node-entity';\nimport SchedulerNode from '../nodes/node-scheduler';\nimport ScopeGroupNode from '../nodes/node-scope-group';\nimport SystemsModuleNode from '../nodes/node-systems-module';\nimport TelemetryNode from '../nodes/node-telemetry';\nimport UpdateQueueNode from '../nodes/node-update-queue';\nimport { EntityNodeTemplate } from '../templates/template-entity-node';\nimport { ScopeGroupNodeTemplate } from '../templates/template-scope-group';\nimport { SystemsModuleNodeTemplate } from '../templates/template-systems-module';\nimport {\n EventTimelineNodeTemplate,\n SchedulerNodeTemplate,\n TelemetryNodeTemplate,\n UpdateQueueNodeTemplate\n} from '../templates/template-tool-nodes';\n\nexport enum EcsNodeType {\n systemsModule = 'systems-module-node',\n entity = 'entity-node',\n scopeGroup = 'scope-group-node',\n scheduler = 'scheduler-node',\n eventTimeline = 'event-timeline-node',\n telemetry = 'telemetry-node',\n updateQueue = 'update-queue-node'\n}\n\nexport const ecsNodeTypes = {\n [EcsNodeType.systemsModule]: SystemsModuleNode,\n [EcsNodeType.entity]: EntityNode,\n [EcsNodeType.scopeGroup]: ScopeGroupNode,\n [EcsNodeType.scheduler]: SchedulerNode,\n [EcsNodeType.eventTimeline]: EventTimelineNode,\n [EcsNodeType.telemetry]: TelemetryNode,\n [EcsNodeType.updateQueue]: UpdateQueueNode\n} satisfies NodeTypes;\n\nexport const ecsNodeTemplates = {\n [EcsNodeType.entity]: new EntityNodeTemplate(),\n [EcsNodeType.systemsModule]: new SystemsModuleNodeTemplate(),\n [EcsNodeType.scopeGroup]: new ScopeGroupNodeTemplate(),\n [EcsNodeType.scheduler]: new SchedulerNodeTemplate(),\n [EcsNodeType.eventTimeline]: new EventTimelineNodeTemplate(),\n [EcsNodeType.telemetry]: new TelemetryNodeTemplate(),\n [EcsNodeType.updateQueue]: new UpdateQueueNodeTemplate()\n};\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_node_types = require('../node-types-CNO_-52M.cjs');
2
+ const require_node_types = require('../node-types-Z4QaJir-.cjs');
3
3
 
4
4
  exports.EntityNode = require_node_types.EntityNode;
5
5
  exports.EventTimelineNode = require_node_types.node_event_timeline_default;
@@ -1,3 +1,3 @@
1
- import { n as EntityNode, t as SystemsModuleNode } from "../node-systems-module-Dx-hISbg.cjs";
2
- import { a as _default, i as _default$1, n as _default$3, r as _default$2, t as _default$4 } from "../index-Ht3fVcsn.cjs";
1
+ import { n as EntityNode, t as SystemsModuleNode } from "../node-systems-module-BiefT_Cv.cjs";
2
+ import { a as _default, i as _default$1, n as _default$3, r as _default$2, t as _default$4 } from "../index-N2r0CM_0.cjs";
3
3
  export { EntityNode, _default as EventTimelineNode, _default$1 as SchedulerNode, _default$2 as ScopeGroupNode, SystemsModuleNode, _default$3 as TelemetryNode, _default$4 as UpdateQueueNode };
@@ -1,3 +1,3 @@
1
- import { n as EntityNode, t as SystemsModuleNode } from "../node-systems-module-B8aKhvBo.mjs";
2
- import { a as _default, i as _default$1, n as _default$3, r as _default$2, t as _default$4 } from "../index-2l9Vdh2S.mjs";
1
+ import { n as EntityNode, t as SystemsModuleNode } from "../node-systems-module-EYtTf6Re.mjs";
2
+ import { a as _default, i as _default$1, n as _default$3, r as _default$2, t as _default$4 } from "../index-BabUtsGu.mjs";
3
3
  export { EntityNode, _default as EventTimelineNode, _default$1 as SchedulerNode, _default$2 as ScopeGroupNode, SystemsModuleNode, _default$3 as TelemetryNode, _default$4 as UpdateQueueNode };
@@ -1,3 +1,3 @@
1
- import { d as node_telemetry_default, f as SystemsModuleNode, g as node_event_timeline_default, h as EntityNode, m as node_scheduler_default, p as node_scope_group_default, u as node_update_queue_default } from "../node-types-l0GwV0mz.mjs";
1
+ import { d as node_telemetry_default, f as SystemsModuleNode, g as node_event_timeline_default, h as EntityNode, m as node_scheduler_default, p as node_scope_group_default, u as node_update_queue_default } from "../node-types-DV97CoAJ.mjs";
2
2
 
3
3
  export { EntityNode, node_event_timeline_default as EventTimelineNode, node_scheduler_default as SchedulerNode, node_scope_group_default as ScopeGroupNode, SystemsModuleNode, node_telemetry_default as TelemetryNode, node_update_queue_default as UpdateQueueNode };
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_node_types = require('../node-types-CNO_-52M.cjs');
2
+ const require_node_types = require('../node-types-Z4QaJir-.cjs');
3
3
 
4
4
  exports.EntityNodeTemplate = require_node_types.EntityNodeTemplate;
5
5
  exports.EventTimelineNodeTemplate = require_node_types.EventTimelineNodeTemplate;
@@ -1,3 +1,3 @@
1
- import { D as EntityNodeTemplate, O as createEntityTypeTemplate, a as SchedulerNodeTemplate, c as SystemsModuleNodeTemplate, i as EventTimelineNodeTemplate, l as ScopeGroupNodeTemplate, o as TelemetryNodeTemplate, s as UpdateQueueNodeTemplate } from "../node-types-l0GwV0mz.mjs";
1
+ import { D as EntityNodeTemplate, O as createEntityTypeTemplate, a as SchedulerNodeTemplate, c as SystemsModuleNodeTemplate, i as EventTimelineNodeTemplate, l as ScopeGroupNodeTemplate, o as TelemetryNodeTemplate, s as UpdateQueueNodeTemplate } from "../node-types-DV97CoAJ.mjs";
2
2
 
3
3
  export { EntityNodeTemplate, EventTimelineNodeTemplate, SchedulerNodeTemplate, ScopeGroupNodeTemplate, SystemsModuleNodeTemplate, TelemetryNodeTemplate, UpdateQueueNodeTemplate, createEntityTypeTemplate };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awesome-flow/ecs",
3
- "version": "0.14.1",
3
+ "version": "0.15.0",
4
4
  "description": "The ECS package for Awesome Flow. Provides basic components to map Awesome ECS objects.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -17,7 +17,7 @@
17
17
  "peerDependencies": {
18
18
  "@awesome-ecs/abstract": ">=0.32.1",
19
19
  "@awesome-ecs/core": ">=0.32.1",
20
- "@awesome-flow/core": ">=0.12.0",
20
+ "@awesome-flow/core": "^0.15.0",
21
21
  "@mantine/core": ">=9.2.0",
22
22
  "@mantine/hooks": ">=9.2.0",
23
23
  "@tabler/icons-react": ">=3.44.0",
@@ -28,17 +28,16 @@
28
28
  "zustand": ">=5.0.13"
29
29
  },
30
30
  "devDependencies": {
31
- "@awesome-ecs/abstract": "^0.32.1",
32
- "@awesome-ecs/core": "^0.32.1",
33
- "@awesome-flow/core": "0.14.1",
34
- "@mantine/core": "^9.2.0",
35
- "@mantine/hooks": "^9.2.0",
36
- "@tabler/icons-react": "^3.44.0",
37
- "@xyflow/react": "^12.10.2",
38
- "@xyflow/system": "^0.0.76",
39
- "react": "^19.2.6",
40
- "react-dom": "^19.2.6",
41
- "zustand": "^5.0.13"
31
+ "@awesome-ecs/abstract": "^0.35.0",
32
+ "@awesome-ecs/core": "^0.35.0",
33
+ "@mantine/core": "^9.5.2",
34
+ "@mantine/hooks": "^9.5.2",
35
+ "@tabler/icons-react": "^3.46.0",
36
+ "@xyflow/react": "^12.11.5",
37
+ "@xyflow/system": "^0.0.81",
38
+ "react": "^19.2.8",
39
+ "react-dom": "^19.2.8",
40
+ "zustand": "^5.0.15"
42
41
  },
43
42
  "exports": {
44
43
  ".": {
@@ -139,5 +138,5 @@
139
138
  "url": "https://github.com/privatebytes/awesome-flow/issues"
140
139
  },
141
140
  "homepage": "https://github.com/privatebytes/awesome-flow#readme",
142
- "gitHead": "39e5d7a14d75ddef7c9484d02e9ef0ece1f3a8c6"
141
+ "gitHead": "bbb72c4de8c58952cfdf37f788e2f50b2e155fe7"
143
142
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"canvas-WWAJ6C2l.cjs","names":["useFlowStore","Node","useEffect","EntityNodeData","useBridgeStoreVersion","useEcsBridge","FlowEcsEdgeProxiesProps","nodesToConnect","FlowEcsEdgeModules","props","$","_c","onConnect","_temp","bridge","moduleVersion","t0","node","data","entity","sourceHandle","handles","find","_temp2","entityRepository","getEntity","systemModule","ecsFlowRepository","getSystemModuleNode","identity","proxy","entityType","targetHandle","_temp3","source","id","target","handleId","t1","t2","Symbol","for","h_0","h","connection","state","useFlowStore","Node","useEffect","EntityNodeData","useBridgeStoreVersion","useEcsBridge","FlowEcsEdgeProxiesProps","nodesToConnect","FlowEcsEdgeProxies","props","$","_c","onConnect","_temp","bridge","proxyVersion","t0","node","data","entity","sourceHandle","handles","find","_temp2","entityRepository","getEntity","proxies","Array","from","entityProxyRepository","getAllProxies","identity","proxy","values","flat","proxyNode","ecsFlowRepository","getEntityNode","targetHandle","_temp3","source","id","target","handleId","t1","t2","Symbol","for","h_0","h","connection","state","FlowContext","useFlowStore","Node","useContext","useEffect","useState","EntityNodeData","EcsNodeType","useEcsBridge","useEntityList","FlowEcsEdgeModules","FlowEcsEdgeProxies","FlowEcsEntities","$","_c","nodeFactory","addNodes","_temp","bridge","entities","t0","Symbol","for","entityNodes","setEntityNodes","t1","t2","nodesToAdd","nodesToConnect","entity","node","ecsFlowRepository","getEntityNode","identity","proxy","createNodeFromType","data","entityType","position","x","y","addEntityNode","push","length","t3","state","FlowContext","useFlowStore","Node","useContext","useEffect","SystemsModuleNodeData","EcsNodeType","useEcsBridge","useSystemsModuleList","FlowEcsModules","$","_c","nodeFactory","addNodes","_temp","bridge","modules","t0","t1","keys","Array","from","nodesToAdd","element","ecsFlowRepository","getSystemModuleNode","node","createNodeFromType","systemsModule","data","entityType","position","x","y","addSystemModuleNode","push","length","t2","Symbol","for","state","FlowContext","StoreContext","useFlowStore","Node","useContext","useEffect","shallow","EntityNodeData","ScopeGroupNodeData","EcsNodeType","useEcsBridge","useScopeList","FlowEcsScopes","$","_c","nodeFactory","flowStore","bridge","scopes","nodes","setGroups","setNodes","_temp","t0","length","changed","currentNodes","instance","getState","nextNodes","groups","scope","groupNode","ecsFlowRepository","getScopeGroupNode","scopeId","createNodeFromType","scopeGroup","data","title","position","x","y","className","addScopeGroupNode","unshift","childIds","entity","entities","entityNode","getEntityNode","identity","proxy","push","id","scopedNodeIds","Set","Object","values","flat","groupIds","keys","orderedNodes","map","node","has","type","parentId","entries","find","t1","children","includes","undefined","extent","const","sort","_temp2","t2","Symbol","for","a","b","Number","isGroup","state","useFlowStore","FlowState","Node","useEffect","shallow","EntityNodeData","EcsNodeType","useEcsBridge","selector","state","nodes","updateNodeData","FlowEcsSpawnEntities","$","_c","bridge","t0","t1","node","type","entity","data","spawn","update","enqueueEntitySpawn","id","spawnStatus","entityType","ecsFlowRepository","addEntityNode","t2","Symbol","for","FlowContext","useFlowStore","Node","useContext","useEffect","EcsToolNodeData","EcsNodeType","useEcsBridge","defaultEcsToolNodes","scheduler","eventTimeline","telemetry","updateQueue","const","EcsToolNodeType","FlowEcsToolNodesProps","nodes","FlowEcsToolNodes","t0","$","_c","t1","undefined","nodeFactory","addNodes","_temp","bridge","t2","t3","nodesToAdd","forEach","type","index","ecsFlowRepository","getToolNode","node","createNodeFromType","position","x","y","addToolNode","push","length","t4","Symbol","for","state","FlowAutoLayout","memo","useEffect","useState","useBridgeStoreVersion","useEcsBridge","FlowEcsEntities","FlowEcsModules","FlowEcsScopes","FlowEcsSpawnEntities","FlowEcsToolNodes","EcsToolNodeType","FlowEcsStateProps","showSystemModules","showEntities","autoLayout","enableEntitySpawning","showScopes","toolNodes","FlowEcsState","props","$","_c","refreshLayout","setRefreshLayout","bridge","entityVersion","moduleVersion","t0","Symbol","for","frame","requestAnimationFrame","cancelAnimationFrame","t1","ecsFlowRepository","sizeNodes","t2","t3","t4","t5","t6","Array","isArray","undefined","t7","t8","FlowCanvasContext","FlowCanvasDropWrapper","FlowCanvasRenderIntersections","FlowCanvasWrapper","FlowConnectionStatus","FlowEdgesSelection","FlowTemplatesList","Portal","useState","ecsNodeTemplates","ecsNodeTypes","FlowEcsState","FlowEcsStateProps","useEntityTypeTemplates","FlowEcsCanvasProps","Partial","enableDragDrop","showEntityTypeTemplates","showTemplates","FlowEcsCanvas","t0","$","_c","autoLayout","t1","enableEntitySpawning","t2","t3","showEntities","t4","t5","showScopes","t6","showSystemModules","t7","t8","toolNodes","t9","undefined","over","setOver","entityTypeTemplates","t10","canvas","t11","t12","t13","Symbol","for","t14","t15","t16"],"sources":["../src/flow/flow-ecs-edge-modules.tsx","../src/flow/flow-ecs-edge-proxies.tsx","../src/flow/flow-ecs-entities.tsx","../src/flow/flow-ecs-modules.tsx","../src/flow/flow-ecs-scopes.tsx","../src/flow/flow-ecs-spawn-entities.tsx","../src/flow/flow-ecs-tool-nodes.tsx","../src/flow/flow-ecs-state.tsx","../src/canvas/flow-ecs-canvas.tsx"],"sourcesContent":["import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\n\nexport type FlowEcsEdgeProxiesProps = {\n nodesToConnect: Node<EntityNodeData>[];\n};\n\nfunction FlowEcsEdgeModules(props: Readonly<FlowEcsEdgeProxiesProps>) {\n const { nodesToConnect } = props;\n\n const onConnect = useFlowStore((state: { onConnect: any }) => state.onConnect);\n\n const bridge = useEcsBridge();\n const moduleVersion = useBridgeStoreVersion('modules');\n\n useEffect(() => {\n for (const node of nodesToConnect) {\n if (!node.data.entity) {\n continue;\n }\n\n const sourceHandle = node.data.handles.find((h) => h.connection === 'source');\n const entity = bridge.entityRepository.getEntity(node.data.entity);\n\n const systemModule = bridge.ecsFlowRepository.getSystemModuleNode(entity.identity.proxy.entityType);\n const targetHandle = systemModule?.data.handles.find((h) => h.connection === 'target');\n\n if (sourceHandle && targetHandle) {\n onConnect({\n source: node.id,\n target: systemModule.id,\n sourceHandle: sourceHandle.handleId,\n targetHandle: targetHandle.handleId\n });\n }\n }\n }, [bridge, moduleVersion, nodesToConnect, onConnect]);\n\n return <></>;\n}\n\nexport default FlowEcsEdgeModules;\n","import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\n\nexport type FlowEcsEdgeProxiesProps = {\n nodesToConnect: Node<EntityNodeData>[];\n};\n\nfunction FlowEcsEdgeProxies(props: Readonly<FlowEcsEdgeProxiesProps>) {\n const { nodesToConnect } = props;\n\n const onConnect = useFlowStore((state: { onConnect: any }) => state.onConnect);\n\n const bridge = useEcsBridge();\n const proxyVersion = useBridgeStoreVersion('proxies');\n\n useEffect(() => {\n for (const node of nodesToConnect) {\n if (!node.data.entity) {\n continue;\n }\n\n const sourceHandle = node.data.handles.find((h) => h.connection === 'source');\n const entity = bridge.entityRepository.getEntity(node.data.entity);\n const proxies = Array.from(bridge.entityProxyRepository.getAllProxies(entity.identity.proxy).values()).flat();\n\n for (const proxy of proxies) {\n const proxyNode = bridge.ecsFlowRepository.getEntityNode(proxy);\n\n if (proxyNode) {\n const targetHandle = proxyNode.data.handles.find((h) => h.connection === 'target');\n\n if (sourceHandle && targetHandle) {\n onConnect({\n source: node.id,\n target: proxyNode.id,\n sourceHandle: sourceHandle.handleId,\n targetHandle: targetHandle.handleId\n });\n }\n }\n }\n }\n }, [bridge, nodesToConnect, onConnect, proxyVersion]);\n\n return <></>;\n}\n\nexport default FlowEcsEdgeProxies;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect, useState } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useEntityList } from '../hooks';\nimport FlowEcsEdgeModules from './flow-ecs-edge-modules';\nimport FlowEcsEdgeProxies from './flow-ecs-edge-proxies';\n\nfunction FlowEcsEntities() {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n\n const bridge = useEcsBridge();\n const entities = useEntityList();\n const [entityNodes, setEntityNodes] = useState<Node<EntityNodeData>[]>([]);\n\n useEffect(() => {\n const nodesToAdd: Node<EntityNodeData>[] = [];\n const nodesToConnect: Node<EntityNodeData>[] = [];\n\n for (const entity of entities) {\n let node = bridge.ecsFlowRepository.getEntityNode(entity.identity.proxy);\n\n if (!node) {\n node = nodeFactory.createNodeFromType<EntityNodeData>(EcsNodeType.entity);\n node.data.entity = entity.identity.proxy;\n node.data.entityType = entity.identity.proxy.entityType;\n node.position = { x: 0, y: 0 };\n\n bridge.ecsFlowRepository.addEntityNode(node);\n nodesToAdd.push(node);\n }\n\n nodesToConnect.push(node);\n }\n\n setEntityNodes(nodesToConnect);\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, entities, nodeFactory]);\n\n return (\n <>\n <FlowEcsEdgeProxies nodesToConnect={entityNodes} />\n <FlowEcsEdgeModules nodesToConnect={entityNodes} />\n </>\n );\n}\n\nexport default FlowEcsEntities;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { SystemsModuleNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useSystemsModuleList } from '../hooks';\n\nfunction FlowEcsModules() {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n\n const bridge = useEcsBridge();\n const modules = useSystemsModuleList();\n\n useEffect(() => {\n const keys = Array.from(modules.keys());\n\n const nodesToAdd: Node<SystemsModuleNodeData>[] = [];\n\n for (const element of keys) {\n if (bridge.ecsFlowRepository.getSystemModuleNode(element)) {\n continue;\n }\n\n const node = nodeFactory.createNodeFromType<SystemsModuleNodeData>(EcsNodeType.systemsModule);\n\n node.data.entityType = element;\n node.position = { x: 0, y: 0 };\n\n bridge.ecsFlowRepository.addSystemModuleNode(node);\n nodesToAdd.push(node);\n }\n\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, modules, nodeFactory]);\n\n return <></>;\n}\n\nexport default FlowEcsModules;\n","import { FlowContext, StoreContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { EntityNodeData, ScopeGroupNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useScopeList } from '../hooks';\n\nfunction FlowEcsScopes() {\n const { nodeFactory } = useContext(FlowContext);\n const { flowStore } = useContext(StoreContext);\n const bridge = useEcsBridge();\n const scopes = useScopeList();\n\n const { nodes, setGroups, setNodes } = useFlowStore(\n (state) => ({\n nodes: state.nodes,\n setGroups: state.setGroups,\n setNodes: state.setNodes\n }),\n shallow\n );\n\n useEffect(() => {\n if (!scopes.length) {\n return;\n }\n\n let changed = false;\n const currentNodes = flowStore.instance.getState().nodes;\n const nextNodes = [...currentNodes];\n const groups: Record<string, string[]> = {};\n\n for (const scope of scopes) {\n let groupNode = bridge.ecsFlowRepository.getScopeGroupNode(scope.scopeId);\n\n if (!groupNode) {\n groupNode = nodeFactory.createNodeFromType<ScopeGroupNodeData>(EcsNodeType.scopeGroup);\n groupNode.data.scopeId = scope.scopeId;\n groupNode.data.title = 'Scope';\n groupNode.position = { x: 0, y: 0 };\n groupNode.className = 'react-flow__node-group';\n\n bridge.ecsFlowRepository.addScopeGroupNode(groupNode);\n nextNodes.unshift(groupNode);\n changed = true;\n }\n\n const childIds: string[] = [];\n for (const entity of scope.entities) {\n const entityNode = bridge.ecsFlowRepository.getEntityNode(entity.identity.proxy) as Node<EntityNodeData> | undefined;\n if (!entityNode) {\n continue;\n }\n\n childIds.push(entityNode.id);\n }\n\n groups[groupNode.id] = childIds;\n }\n\n const scopedNodeIds = new Set(Object.values(groups).flat());\n const groupIds = new Set(Object.keys(groups));\n const orderedNodes = nextNodes\n .map((node) => {\n if (groupIds.has(node.id)) {\n return node;\n }\n\n if (node.type !== EcsNodeType.entity) {\n return node;\n }\n\n const parentId = scopedNodeIds.has(node.id)\n ? Object.entries(groups).find(([, children]) => children.includes(node.id))?.[0]\n : undefined;\n\n if (node.parentId !== parentId) {\n changed = true;\n return {\n ...node,\n extent: parentId ? ('parent' as const) : undefined,\n parentId\n };\n }\n\n return node;\n })\n .sort((a, b) => Number(!a.data?.isGroup) - Number(!b.data?.isGroup));\n\n if (changed) {\n setNodes(orderedNodes);\n }\n\n setGroups(groups);\n }, [bridge, flowStore, nodeFactory, nodes, scopes, setGroups, setNodes]);\n\n return <></>;\n}\n\nexport default FlowEcsScopes;\n","import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { FlowState } from '@awesome-flow/core/stores';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge } from '../hooks';\n\nconst selector = (state: FlowState) => ({\n nodes: state.nodes,\n updateNodeData: state.updateNodeData\n});\n\nfunction FlowEcsSpawnEntities() {\n const bridge = useEcsBridge();\n const { nodes, updateNodeData } = useFlowStore(selector, shallow);\n\n useEffect(() => {\n for (const node of nodes as Node<EntityNodeData>[]) {\n if (node.type !== EcsNodeType.entity || !node.data.spawn || node.data.entity) {\n continue;\n }\n\n const update = bridge.enqueueEntitySpawn(node.data.spawn);\n if (!update) {\n updateNodeData<EntityNodeData>(node.id, {\n spawnStatus: 'missing-scheduler'\n });\n continue;\n }\n\n const data: Partial<EntityNodeData> = {\n entity: update.entity,\n entityType: update.entity.entityType,\n spawnStatus: 'queued'\n };\n\n bridge.ecsFlowRepository.addEntityNode({\n ...node,\n data: {\n ...node.data,\n ...data\n }\n });\n updateNodeData<EntityNodeData>(node.id, data);\n }\n }, [bridge, nodes, updateNodeData]);\n\n return <></>;\n}\n\nexport default FlowEcsSpawnEntities;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge } from '../hooks';\n\nexport const defaultEcsToolNodes = [\n EcsNodeType.scheduler,\n EcsNodeType.eventTimeline,\n EcsNodeType.telemetry,\n EcsNodeType.updateQueue\n] as const;\n\nexport type EcsToolNodeType = (typeof defaultEcsToolNodes)[number];\n\nexport type FlowEcsToolNodesProps = {\n nodes?: readonly EcsToolNodeType[];\n};\n\nfunction FlowEcsToolNodes({ nodes = defaultEcsToolNodes }: Readonly<FlowEcsToolNodesProps>) {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n const bridge = useEcsBridge();\n\n useEffect(() => {\n const nodesToAdd: Node<EcsToolNodeData>[] = [];\n\n nodes.forEach((type, index) => {\n if (bridge.ecsFlowRepository.getToolNode(type)) {\n return;\n }\n\n const node = nodeFactory.createNodeFromType<EcsToolNodeData>(type);\n node.position = { x: 980, y: index * 220 };\n bridge.ecsFlowRepository.addToolNode(node);\n nodesToAdd.push(node);\n });\n\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, nodeFactory, nodes]);\n\n return <></>;\n}\n\nexport default FlowEcsToolNodes;\n","import { FlowAutoLayout } from '@awesome-flow/core/canvas';\nimport { memo, useEffect, useState } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\nimport FlowEcsEntities from './flow-ecs-entities';\nimport FlowEcsModules from './flow-ecs-modules';\nimport FlowEcsScopes from './flow-ecs-scopes';\nimport FlowEcsSpawnEntities from './flow-ecs-spawn-entities';\nimport FlowEcsToolNodes, { EcsToolNodeType } from './flow-ecs-tool-nodes';\n\nexport type FlowEcsStateProps = {\n showSystemModules: boolean;\n showEntities: boolean;\n autoLayout: boolean;\n enableEntitySpawning?: boolean;\n showScopes?: boolean;\n toolNodes?: boolean | readonly EcsToolNodeType[];\n};\n\nfunction FlowEcsState(props: Readonly<FlowEcsStateProps>) {\n const [refreshLayout, setRefreshLayout] = useState(false);\n const bridge = useEcsBridge();\n const entityVersion = useBridgeStoreVersion('entities');\n const moduleVersion = useBridgeStoreVersion('modules');\n\n useEffect(() => {\n setRefreshLayout(false);\n const frame = requestAnimationFrame(() => setRefreshLayout(true));\n\n return () => cancelAnimationFrame(frame);\n }, [bridge.ecsFlowRepository.sizeNodes, entityVersion, moduleVersion]);\n\n return (\n <>\n {props.showSystemModules && <FlowEcsModules />}\n {props.showEntities && <FlowEcsEntities />}\n {props.enableEntitySpawning && <FlowEcsSpawnEntities />}\n {props.showScopes && <FlowEcsScopes />}\n {props.toolNodes && <FlowEcsToolNodes nodes={Array.isArray(props.toolNodes) ? props.toolNodes : undefined} />}\n {props.autoLayout && <FlowAutoLayout refreshLayout={refreshLayout} />}\n </>\n );\n}\n\nexport default memo(FlowEcsState);\n","import {\n FlowCanvasContext,\n FlowCanvasDropWrapper,\n FlowCanvasRenderIntersections,\n FlowCanvasWrapper,\n FlowConnectionStatus,\n FlowEdgesSelection,\n FlowTemplatesList\n} from '@awesome-flow/core/canvas';\nimport { Portal } from '@mantine/core';\nimport { useState } from 'react';\nimport { ecsNodeTemplates, ecsNodeTypes } from '../abstract/node-types';\nimport FlowEcsState, { FlowEcsStateProps } from '../flow/flow-ecs-state';\nimport { useEntityTypeTemplates } from '../hooks';\n\nexport type FlowEcsCanvasProps = Partial<FlowEcsStateProps> & {\n enableDragDrop?: boolean;\n showEntityTypeTemplates?: boolean;\n showTemplates?: boolean;\n};\n\nexport function FlowEcsCanvas({\n autoLayout = true,\n enableEntitySpawning = true,\n enableDragDrop = true,\n showEntities = true,\n showEntityTypeTemplates = true,\n showScopes = true,\n showSystemModules = true,\n showTemplates = false,\n toolNodes = false\n}: Readonly<FlowEcsCanvasProps>) {\n const [over, setOver] = useState(false);\n const entityTypeTemplates = useEntityTypeTemplates(showEntityTypeTemplates);\n const canvas = <FlowCanvasRenderIntersections canvasHighlighted={over} nodeTypes={ecsNodeTypes} />;\n\n return (\n <FlowCanvasContext nodeTemplates={ecsNodeTemplates}>\n {enableDragDrop ? (\n <FlowCanvasDropWrapper setOver={setOver}>{canvas}</FlowCanvasDropWrapper>\n ) : (\n <FlowCanvasWrapper>{canvas}</FlowCanvasWrapper>\n )}\n <FlowEdgesSelection />\n <FlowConnectionStatus />\n <FlowEcsState\n autoLayout={autoLayout}\n enableEntitySpawning={enableEntitySpawning}\n showEntities={showEntities}\n showScopes={showScopes}\n showSystemModules={showSystemModules}\n toolNodes={toolNodes}\n />\n {showTemplates && (\n <Portal target=\"#portal-navbar\">\n <FlowTemplatesList extraTemplates={entityTypeTemplates} nodeTypes={ecsNodeTypes} />\n </Portal>\n )}\n </FlowCanvasContext>\n );\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"canvas-cO2NAQyX.mjs","names":["useFlowStore","Node","useEffect","EntityNodeData","useBridgeStoreVersion","useEcsBridge","FlowEcsEdgeProxiesProps","nodesToConnect","FlowEcsEdgeModules","props","$","_c","onConnect","_temp","bridge","moduleVersion","t0","node","data","entity","sourceHandle","handles","find","_temp2","entityRepository","getEntity","systemModule","ecsFlowRepository","getSystemModuleNode","identity","proxy","entityType","targetHandle","_temp3","source","id","target","handleId","t1","t2","Symbol","for","h_0","h","connection","state","useFlowStore","Node","useEffect","EntityNodeData","useBridgeStoreVersion","useEcsBridge","FlowEcsEdgeProxiesProps","nodesToConnect","FlowEcsEdgeProxies","props","$","_c","onConnect","_temp","bridge","proxyVersion","t0","node","data","entity","sourceHandle","handles","find","_temp2","entityRepository","getEntity","proxies","Array","from","entityProxyRepository","getAllProxies","identity","proxy","values","flat","proxyNode","ecsFlowRepository","getEntityNode","targetHandle","_temp3","source","id","target","handleId","t1","t2","Symbol","for","h_0","h","connection","state","FlowContext","useFlowStore","Node","useContext","useEffect","useState","EntityNodeData","EcsNodeType","useEcsBridge","useEntityList","FlowEcsEdgeModules","FlowEcsEdgeProxies","FlowEcsEntities","$","_c","nodeFactory","addNodes","_temp","bridge","entities","t0","Symbol","for","entityNodes","setEntityNodes","t1","t2","nodesToAdd","nodesToConnect","entity","node","ecsFlowRepository","getEntityNode","identity","proxy","createNodeFromType","data","entityType","position","x","y","addEntityNode","push","length","t3","state","FlowContext","useFlowStore","Node","useContext","useEffect","SystemsModuleNodeData","EcsNodeType","useEcsBridge","useSystemsModuleList","FlowEcsModules","$","_c","nodeFactory","addNodes","_temp","bridge","modules","t0","t1","keys","Array","from","nodesToAdd","element","ecsFlowRepository","getSystemModuleNode","node","createNodeFromType","systemsModule","data","entityType","position","x","y","addSystemModuleNode","push","length","t2","Symbol","for","state","FlowContext","StoreContext","useFlowStore","Node","useContext","useEffect","shallow","EntityNodeData","ScopeGroupNodeData","EcsNodeType","useEcsBridge","useScopeList","FlowEcsScopes","$","_c","nodeFactory","flowStore","bridge","scopes","nodes","setGroups","setNodes","_temp","t0","length","changed","currentNodes","instance","getState","nextNodes","groups","scope","groupNode","ecsFlowRepository","getScopeGroupNode","scopeId","createNodeFromType","scopeGroup","data","title","position","x","y","className","addScopeGroupNode","unshift","childIds","entity","entities","entityNode","getEntityNode","identity","proxy","push","id","scopedNodeIds","Set","Object","values","flat","groupIds","keys","orderedNodes","map","node","has","type","parentId","entries","find","t1","children","includes","undefined","extent","const","sort","_temp2","t2","Symbol","for","a","b","Number","isGroup","state","useFlowStore","FlowState","Node","useEffect","shallow","EntityNodeData","EcsNodeType","useEcsBridge","selector","state","nodes","updateNodeData","FlowEcsSpawnEntities","$","_c","bridge","t0","t1","node","type","entity","data","spawn","update","enqueueEntitySpawn","id","spawnStatus","entityType","ecsFlowRepository","addEntityNode","t2","Symbol","for","FlowContext","useFlowStore","Node","useContext","useEffect","EcsToolNodeData","EcsNodeType","useEcsBridge","defaultEcsToolNodes","scheduler","eventTimeline","telemetry","updateQueue","const","EcsToolNodeType","FlowEcsToolNodesProps","nodes","FlowEcsToolNodes","t0","$","_c","t1","undefined","nodeFactory","addNodes","_temp","bridge","t2","t3","nodesToAdd","forEach","type","index","ecsFlowRepository","getToolNode","node","createNodeFromType","position","x","y","addToolNode","push","length","t4","Symbol","for","state","FlowAutoLayout","memo","useEffect","useState","useBridgeStoreVersion","useEcsBridge","FlowEcsEntities","FlowEcsModules","FlowEcsScopes","FlowEcsSpawnEntities","FlowEcsToolNodes","EcsToolNodeType","FlowEcsStateProps","showSystemModules","showEntities","autoLayout","enableEntitySpawning","showScopes","toolNodes","FlowEcsState","props","$","_c","refreshLayout","setRefreshLayout","bridge","entityVersion","moduleVersion","t0","Symbol","for","frame","requestAnimationFrame","cancelAnimationFrame","t1","ecsFlowRepository","sizeNodes","t2","t3","t4","t5","t6","Array","isArray","undefined","t7","t8","FlowCanvasContext","FlowCanvasDropWrapper","FlowCanvasRenderIntersections","FlowCanvasWrapper","FlowConnectionStatus","FlowEdgesSelection","FlowTemplatesList","Portal","useState","ecsNodeTemplates","ecsNodeTypes","FlowEcsState","FlowEcsStateProps","useEntityTypeTemplates","FlowEcsCanvasProps","Partial","enableDragDrop","showEntityTypeTemplates","showTemplates","FlowEcsCanvas","t0","$","_c","autoLayout","t1","enableEntitySpawning","t2","t3","showEntities","t4","t5","showScopes","t6","showSystemModules","t7","t8","toolNodes","t9","undefined","over","setOver","entityTypeTemplates","t10","canvas","t11","t12","t13","Symbol","for","t14","t15","t16"],"sources":["../src/flow/flow-ecs-edge-modules.tsx","../src/flow/flow-ecs-edge-proxies.tsx","../src/flow/flow-ecs-entities.tsx","../src/flow/flow-ecs-modules.tsx","../src/flow/flow-ecs-scopes.tsx","../src/flow/flow-ecs-spawn-entities.tsx","../src/flow/flow-ecs-tool-nodes.tsx","../src/flow/flow-ecs-state.tsx","../src/canvas/flow-ecs-canvas.tsx"],"sourcesContent":["import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\n\nexport type FlowEcsEdgeProxiesProps = {\n nodesToConnect: Node<EntityNodeData>[];\n};\n\nfunction FlowEcsEdgeModules(props: Readonly<FlowEcsEdgeProxiesProps>) {\n const { nodesToConnect } = props;\n\n const onConnect = useFlowStore((state: { onConnect: any }) => state.onConnect);\n\n const bridge = useEcsBridge();\n const moduleVersion = useBridgeStoreVersion('modules');\n\n useEffect(() => {\n for (const node of nodesToConnect) {\n if (!node.data.entity) {\n continue;\n }\n\n const sourceHandle = node.data.handles.find((h) => h.connection === 'source');\n const entity = bridge.entityRepository.getEntity(node.data.entity);\n\n const systemModule = bridge.ecsFlowRepository.getSystemModuleNode(entity.identity.proxy.entityType);\n const targetHandle = systemModule?.data.handles.find((h) => h.connection === 'target');\n\n if (sourceHandle && targetHandle) {\n onConnect({\n source: node.id,\n target: systemModule.id,\n sourceHandle: sourceHandle.handleId,\n targetHandle: targetHandle.handleId\n });\n }\n }\n }, [bridge, moduleVersion, nodesToConnect, onConnect]);\n\n return <></>;\n}\n\nexport default FlowEcsEdgeModules;\n","import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\n\nexport type FlowEcsEdgeProxiesProps = {\n nodesToConnect: Node<EntityNodeData>[];\n};\n\nfunction FlowEcsEdgeProxies(props: Readonly<FlowEcsEdgeProxiesProps>) {\n const { nodesToConnect } = props;\n\n const onConnect = useFlowStore((state: { onConnect: any }) => state.onConnect);\n\n const bridge = useEcsBridge();\n const proxyVersion = useBridgeStoreVersion('proxies');\n\n useEffect(() => {\n for (const node of nodesToConnect) {\n if (!node.data.entity) {\n continue;\n }\n\n const sourceHandle = node.data.handles.find((h) => h.connection === 'source');\n const entity = bridge.entityRepository.getEntity(node.data.entity);\n const proxies = Array.from(bridge.entityProxyRepository.getAllProxies(entity.identity.proxy).values()).flat();\n\n for (const proxy of proxies) {\n const proxyNode = bridge.ecsFlowRepository.getEntityNode(proxy);\n\n if (proxyNode) {\n const targetHandle = proxyNode.data.handles.find((h) => h.connection === 'target');\n\n if (sourceHandle && targetHandle) {\n onConnect({\n source: node.id,\n target: proxyNode.id,\n sourceHandle: sourceHandle.handleId,\n targetHandle: targetHandle.handleId\n });\n }\n }\n }\n }\n }, [bridge, nodesToConnect, onConnect, proxyVersion]);\n\n return <></>;\n}\n\nexport default FlowEcsEdgeProxies;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect, useState } from 'react';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useEntityList } from '../hooks';\nimport FlowEcsEdgeModules from './flow-ecs-edge-modules';\nimport FlowEcsEdgeProxies from './flow-ecs-edge-proxies';\n\nfunction FlowEcsEntities() {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n\n const bridge = useEcsBridge();\n const entities = useEntityList();\n const [entityNodes, setEntityNodes] = useState<Node<EntityNodeData>[]>([]);\n\n useEffect(() => {\n const nodesToAdd: Node<EntityNodeData>[] = [];\n const nodesToConnect: Node<EntityNodeData>[] = [];\n\n for (const entity of entities) {\n let node = bridge.ecsFlowRepository.getEntityNode(entity.identity.proxy);\n\n if (!node) {\n node = nodeFactory.createNodeFromType<EntityNodeData>(EcsNodeType.entity);\n node.data.entity = entity.identity.proxy;\n node.data.entityType = entity.identity.proxy.entityType;\n node.position = { x: 0, y: 0 };\n\n bridge.ecsFlowRepository.addEntityNode(node);\n nodesToAdd.push(node);\n }\n\n nodesToConnect.push(node);\n }\n\n setEntityNodes(nodesToConnect);\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, entities, nodeFactory]);\n\n return (\n <>\n <FlowEcsEdgeProxies nodesToConnect={entityNodes} />\n <FlowEcsEdgeModules nodesToConnect={entityNodes} />\n </>\n );\n}\n\nexport default FlowEcsEntities;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { SystemsModuleNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useSystemsModuleList } from '../hooks';\n\nfunction FlowEcsModules() {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n\n const bridge = useEcsBridge();\n const modules = useSystemsModuleList();\n\n useEffect(() => {\n const keys = Array.from(modules.keys());\n\n const nodesToAdd: Node<SystemsModuleNodeData>[] = [];\n\n for (const element of keys) {\n if (bridge.ecsFlowRepository.getSystemModuleNode(element)) {\n continue;\n }\n\n const node = nodeFactory.createNodeFromType<SystemsModuleNodeData>(EcsNodeType.systemsModule);\n\n node.data.entityType = element;\n node.position = { x: 0, y: 0 };\n\n bridge.ecsFlowRepository.addSystemModuleNode(node);\n nodesToAdd.push(node);\n }\n\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, modules, nodeFactory]);\n\n return <></>;\n}\n\nexport default FlowEcsModules;\n","import { FlowContext, StoreContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { EntityNodeData, ScopeGroupNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge, useScopeList } from '../hooks';\n\nfunction FlowEcsScopes() {\n const { nodeFactory } = useContext(FlowContext);\n const { flowStore } = useContext(StoreContext);\n const bridge = useEcsBridge();\n const scopes = useScopeList();\n\n const { nodes, setGroups, setNodes } = useFlowStore(\n (state) => ({\n nodes: state.nodes,\n setGroups: state.setGroups,\n setNodes: state.setNodes\n }),\n shallow\n );\n\n useEffect(() => {\n if (!scopes.length) {\n return;\n }\n\n let changed = false;\n const currentNodes = flowStore.instance.getState().nodes;\n const nextNodes = [...currentNodes];\n const groups: Record<string, string[]> = {};\n\n for (const scope of scopes) {\n let groupNode = bridge.ecsFlowRepository.getScopeGroupNode(scope.scopeId);\n\n if (!groupNode) {\n groupNode = nodeFactory.createNodeFromType<ScopeGroupNodeData>(EcsNodeType.scopeGroup);\n groupNode.data.scopeId = scope.scopeId;\n groupNode.data.title = 'Scope';\n groupNode.position = { x: 0, y: 0 };\n groupNode.className = 'react-flow__node-group';\n\n bridge.ecsFlowRepository.addScopeGroupNode(groupNode);\n nextNodes.unshift(groupNode);\n changed = true;\n }\n\n const childIds: string[] = [];\n for (const entity of scope.entities) {\n const entityNode = bridge.ecsFlowRepository.getEntityNode(entity.identity.proxy) as Node<EntityNodeData> | undefined;\n if (!entityNode) {\n continue;\n }\n\n childIds.push(entityNode.id);\n }\n\n groups[groupNode.id] = childIds;\n }\n\n const scopedNodeIds = new Set(Object.values(groups).flat());\n const groupIds = new Set(Object.keys(groups));\n const orderedNodes = nextNodes\n .map((node) => {\n if (groupIds.has(node.id)) {\n return node;\n }\n\n if (node.type !== EcsNodeType.entity) {\n return node;\n }\n\n const parentId = scopedNodeIds.has(node.id)\n ? Object.entries(groups).find(([, children]) => children.includes(node.id))?.[0]\n : undefined;\n\n if (node.parentId !== parentId) {\n changed = true;\n return {\n ...node,\n extent: parentId ? ('parent' as const) : undefined,\n parentId\n };\n }\n\n return node;\n })\n .sort((a, b) => Number(!a.data?.isGroup) - Number(!b.data?.isGroup));\n\n if (changed) {\n setNodes(orderedNodes);\n }\n\n setGroups(groups);\n }, [bridge, flowStore, nodeFactory, nodes, scopes, setGroups, setNodes]);\n\n return <></>;\n}\n\nexport default FlowEcsScopes;\n","import { useFlowStore } from '@awesome-flow/core/hooks';\nimport { FlowState } from '@awesome-flow/core/stores';\nimport { Node } from '@xyflow/react';\nimport { useEffect } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { EntityNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge } from '../hooks';\n\nconst selector = (state: FlowState) => ({\n nodes: state.nodes,\n updateNodeData: state.updateNodeData\n});\n\nfunction FlowEcsSpawnEntities() {\n const bridge = useEcsBridge();\n const { nodes, updateNodeData } = useFlowStore(selector, shallow);\n\n useEffect(() => {\n for (const node of nodes as Node<EntityNodeData>[]) {\n if (node.type !== EcsNodeType.entity || !node.data.spawn || node.data.entity) {\n continue;\n }\n\n const update = bridge.enqueueEntitySpawn(node.data.spawn);\n if (!update) {\n updateNodeData<EntityNodeData>(node.id, {\n spawnStatus: 'missing-scheduler'\n });\n continue;\n }\n\n const data: Partial<EntityNodeData> = {\n entity: update.entity,\n entityType: update.entity.entityType,\n spawnStatus: 'queued'\n };\n\n bridge.ecsFlowRepository.addEntityNode({\n ...node,\n data: {\n ...node.data,\n ...data\n }\n });\n updateNodeData<EntityNodeData>(node.id, data);\n }\n }, [bridge, nodes, updateNodeData]);\n\n return <></>;\n}\n\nexport default FlowEcsSpawnEntities;\n","import { FlowContext } from '@awesome-flow/core/abstract';\nimport { useFlowStore } from '@awesome-flow/core/hooks';\nimport { Node } from '@xyflow/react';\nimport { useContext, useEffect } from 'react';\nimport { EcsToolNodeData } from '../abstract/node-props';\nimport { EcsNodeType } from '../abstract/node-types';\nimport { useEcsBridge } from '../hooks';\n\nexport const defaultEcsToolNodes = [\n EcsNodeType.scheduler,\n EcsNodeType.eventTimeline,\n EcsNodeType.telemetry,\n EcsNodeType.updateQueue\n] as const;\n\nexport type EcsToolNodeType = (typeof defaultEcsToolNodes)[number];\n\nexport type FlowEcsToolNodesProps = {\n nodes?: readonly EcsToolNodeType[];\n};\n\nfunction FlowEcsToolNodes({ nodes = defaultEcsToolNodes }: Readonly<FlowEcsToolNodesProps>) {\n const { nodeFactory } = useContext(FlowContext);\n const addNodes = useFlowStore((state) => state.addNodes);\n const bridge = useEcsBridge();\n\n useEffect(() => {\n const nodesToAdd: Node<EcsToolNodeData>[] = [];\n\n nodes.forEach((type, index) => {\n if (bridge.ecsFlowRepository.getToolNode(type)) {\n return;\n }\n\n const node = nodeFactory.createNodeFromType<EcsToolNodeData>(type);\n node.position = { x: 980, y: index * 220 };\n bridge.ecsFlowRepository.addToolNode(node);\n nodesToAdd.push(node);\n });\n\n if (nodesToAdd.length) {\n addNodes(nodesToAdd);\n }\n }, [addNodes, bridge, nodeFactory, nodes]);\n\n return <></>;\n}\n\nexport default FlowEcsToolNodes;\n","import { FlowAutoLayout } from '@awesome-flow/core/canvas';\nimport { memo, useEffect, useState } from 'react';\nimport { useBridgeStoreVersion, useEcsBridge } from '../hooks';\nimport FlowEcsEntities from './flow-ecs-entities';\nimport FlowEcsModules from './flow-ecs-modules';\nimport FlowEcsScopes from './flow-ecs-scopes';\nimport FlowEcsSpawnEntities from './flow-ecs-spawn-entities';\nimport FlowEcsToolNodes, { EcsToolNodeType } from './flow-ecs-tool-nodes';\n\nexport type FlowEcsStateProps = {\n showSystemModules: boolean;\n showEntities: boolean;\n autoLayout: boolean;\n enableEntitySpawning?: boolean;\n showScopes?: boolean;\n toolNodes?: boolean | readonly EcsToolNodeType[];\n};\n\nfunction FlowEcsState(props: Readonly<FlowEcsStateProps>) {\n const [refreshLayout, setRefreshLayout] = useState(false);\n const bridge = useEcsBridge();\n const entityVersion = useBridgeStoreVersion('entities');\n const moduleVersion = useBridgeStoreVersion('modules');\n\n useEffect(() => {\n setRefreshLayout(false);\n const frame = requestAnimationFrame(() => setRefreshLayout(true));\n\n return () => cancelAnimationFrame(frame);\n }, [bridge.ecsFlowRepository.sizeNodes, entityVersion, moduleVersion]);\n\n return (\n <>\n {props.showSystemModules && <FlowEcsModules />}\n {props.showEntities && <FlowEcsEntities />}\n {props.enableEntitySpawning && <FlowEcsSpawnEntities />}\n {props.showScopes && <FlowEcsScopes />}\n {props.toolNodes && <FlowEcsToolNodes nodes={Array.isArray(props.toolNodes) ? props.toolNodes : undefined} />}\n {props.autoLayout && <FlowAutoLayout refreshLayout={refreshLayout} />}\n </>\n );\n}\n\nexport default memo(FlowEcsState);\n","import {\n FlowCanvasContext,\n FlowCanvasDropWrapper,\n FlowCanvasRenderIntersections,\n FlowCanvasWrapper,\n FlowConnectionStatus,\n FlowEdgesSelection,\n FlowTemplatesList\n} from '@awesome-flow/core/canvas';\nimport { Portal } from '@mantine/core';\nimport { useState } from 'react';\nimport { ecsNodeTemplates, ecsNodeTypes } from '../abstract/node-types';\nimport FlowEcsState, { FlowEcsStateProps } from '../flow/flow-ecs-state';\nimport { useEntityTypeTemplates } from '../hooks';\n\nexport type FlowEcsCanvasProps = Partial<FlowEcsStateProps> & {\n enableDragDrop?: boolean;\n showEntityTypeTemplates?: boolean;\n showTemplates?: boolean;\n};\n\nexport function FlowEcsCanvas({\n autoLayout = true,\n enableEntitySpawning = true,\n enableDragDrop = true,\n showEntities = true,\n showEntityTypeTemplates = true,\n showScopes = true,\n showSystemModules = true,\n showTemplates = false,\n toolNodes = false\n}: Readonly<FlowEcsCanvasProps>) {\n const [over, setOver] = useState(false);\n const entityTypeTemplates = useEntityTypeTemplates(showEntityTypeTemplates);\n const canvas = <FlowCanvasRenderIntersections canvasHighlighted={over} nodeTypes={ecsNodeTypes} />;\n\n return (\n <FlowCanvasContext nodeTemplates={ecsNodeTemplates}>\n {enableDragDrop ? (\n <FlowCanvasDropWrapper setOver={setOver}>{canvas}</FlowCanvasDropWrapper>\n ) : (\n <FlowCanvasWrapper>{canvas}</FlowCanvasWrapper>\n )}\n <FlowEdgesSelection />\n <FlowConnectionStatus />\n <FlowEcsState\n autoLayout={autoLayout}\n enableEntitySpawning={enableEntitySpawning}\n showEntities={showEntities}\n showScopes={showScopes}\n showSystemModules={showSystemModules}\n toolNodes={toolNodes}\n />\n {showTemplates && (\n <Portal target=\"#portal-navbar\">\n <FlowTemplatesList extraTemplates={entityTypeTemplates} nodeTypes={ecsNodeTypes} />\n </Portal>\n )}\n </FlowCanvasContext>\n );\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-2l9Vdh2S.d.mts","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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BFqa6aqs.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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BTs_8SY-.d.cts","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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-C3QIukqX.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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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-CPTq4oOA.d.cts","names":[],"sources":["../src/abstract/handle-types.ts","../src/abstract/templates.ts","../src/hooks/use-ecs-bridge.ts","../src/hooks/use-entities-in-scope.ts","../src/hooks/use-entity.ts","../src/hooks/use-entity-list.ts","../src/hooks/use-entity-type-descriptors.ts","../src/hooks/use-entity-type-templates.ts","../src/hooks/use-entity-updates.ts","../src/hooks/use-event-stream.ts","../src/hooks/use-pipeline-metrics.ts","../src/hooks/use-scheduler.ts","../src/hooks/use-scope-list.ts","../src/hooks/use-systems-module.ts","../src/hooks/use-update-queue.ts"],"mappings":";;;;;;;;;aAAY,iBAAA;EACV,KAAA;EACA,MAAM;AAAA;;;aCFI,gBAAA;EACV,GAAA;EACA,QAAA;EACA,KAAA;AAAA;;;iBCCc,YAAA,CAAA,GAAY,mBAAA;AAAA,iBAUZ,qBAAA,CAAsB,SAA6B,EAAlB,kBAAkB;;;iBCVnD,kBAAA,iBAAmC,OAAA,GAAU,OAAA,CAAA,CAC3D,OAAA,uBACC,OAAA;;;iBCDa,SAAA,iBAA0B,OAAA,GAAU,OAAA,CAAA,CAClD,KAAA,EAAO,YAAA,eACN,OAAA;;;iBCHa,aAAA,iBAA8B,OAAA,GAAU,OAAA,CAAA,CACtD,IAAA,GAAO,aAAA,GACN,OAAA;;;iBCHa,wBAAA,CAAA,GAAwB,uBAAA;;;iBCCxB,sBAAA,CAAuB,OAAA,aAAc,8BAAA,CAAA,YAAA,CAAf,cAAA;;;iBCCtB,gBAAA,CAAiB,MAAA,EAAQ,YAAA,GAAe,SAAA,GAAY,kBAAA;;;iBCDpD,cAAA,CAAe,MAAA,GAAS,oBAAA,GAAoB,gBAAA;;;iBCG5C,kBAAA,CAAmB,UAAA,GAAa,aAAA,EAAe,KAAA,GAAQ,UAAA,YAAU,sBAAA;AAAA,iBAUjE,oBAAA,CAAqB,MAAA,GAAS,gBAAA;EAAqB,QAAA,GAAW,oBAAA;AAAA,IAAoB,8BAAA,CAAE,wBAAA;;;iBCdpF,YAAA,CAAA,GAAY,oBAAA;;;iBCAZ,YAAA,CAAA,GAAY,eAAA;;;iBCEZ,gBAAA,iBAAiC,OAAA,GAAU,OAAA,CAAA,CACzD,IAAA,EAAM,aAAA,eACL,cAAA,CAAe,OAAA;AAAA,iBAaF,oBAAA,CAAA,GAAwB,WAAA,CAAY,aAAA,EAAe,cAAA,CAAe,OAAA;;;iBCjBlE,cAAA,CAAe,KAAA,YAAD,sBAAe"}
@@ -1 +0,0 @@
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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-Ht3fVcsn.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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-edb-X9uc.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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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-pInK6VDK.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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-vf1CSWta.d.mts","names":[],"sources":["../src/abstract/handle-types.ts","../src/abstract/templates.ts","../src/hooks/use-ecs-bridge.ts","../src/hooks/use-entities-in-scope.ts","../src/hooks/use-entity.ts","../src/hooks/use-entity-list.ts","../src/hooks/use-entity-type-descriptors.ts","../src/hooks/use-entity-type-templates.ts","../src/hooks/use-entity-updates.ts","../src/hooks/use-event-stream.ts","../src/hooks/use-pipeline-metrics.ts","../src/hooks/use-scheduler.ts","../src/hooks/use-scope-list.ts","../src/hooks/use-systems-module.ts","../src/hooks/use-update-queue.ts"],"mappings":";;;;;;;;;aAAY,iBAAA;EACV,KAAA;EACA,MAAM;AAAA;;;aCFI,gBAAA;EACV,GAAA;EACA,QAAA;EACA,KAAA;AAAA;;;iBCCc,YAAA,CAAA,GAAY,mBAAA;AAAA,iBAUZ,qBAAA,CAAsB,SAA6B,EAAlB,kBAAkB;;;iBCVnD,kBAAA,iBAAmC,OAAA,GAAU,OAAA,CAAA,CAC3D,OAAA,uBACC,OAAA;;;iBCDa,SAAA,iBAA0B,OAAA,GAAU,OAAA,CAAA,CAClD,KAAA,EAAO,YAAA,eACN,OAAA;;;iBCHa,aAAA,iBAA8B,OAAA,GAAU,OAAA,CAAA,CACtD,IAAA,GAAO,aAAA,GACN,OAAA;;;iBCHa,wBAAA,CAAA,GAAwB,uBAAA;;;iBCCxB,sBAAA,CAAuB,OAAA,aAAc,8BAAA,CAAA,YAAA,CAAf,cAAA;;;iBCCtB,gBAAA,CAAiB,MAAA,EAAQ,YAAA,GAAe,SAAA,GAAY,kBAAA;;;iBCDpD,cAAA,CAAe,MAAA,GAAS,oBAAA,GAAoB,gBAAA;;;iBCG5C,kBAAA,CAAmB,UAAA,GAAa,aAAA,EAAe,KAAA,GAAQ,UAAA,YAAU,sBAAA;AAAA,iBAUjE,oBAAA,CAAqB,MAAA,GAAS,gBAAA;EAAqB,QAAA,GAAW,oBAAA;AAAA,IAAoB,8BAAA,CAAE,wBAAA;;;iBCdpF,YAAA,CAAA,GAAY,oBAAA;;;iBCAZ,YAAA,CAAA,GAAY,eAAA;;;iBCEZ,gBAAA,iBAAiC,OAAA,GAAU,OAAA,CAAA,CACzD,IAAA,EAAM,aAAA,eACL,cAAA,CAAe,OAAA;AAAA,iBAaF,oBAAA,CAAA,GAAwB,WAAA,CAAY,aAAA,EAAe,cAAA,CAAe,OAAA;;;iBCjBlE,cAAA,CAAe,KAAA,YAAD,sBAAe"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-systems-module-B8aKhvBo.d.mts","names":[],"sources":["../src/nodes/node-entity.tsx","../src/nodes/node-systems-module.tsx"],"mappings":";;;;;iBAQS,UAAA,CAAA;EAAa,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,cAAA,KAAgB,oBAAA,CAAA,GAAA,CAAA,OAAA;;;iBCAxE,iBAAA,CAAA;EAAoB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,qBAAA,KAAuB,oBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"node-systems-module-Dx-hISbg.d.cts","names":[],"sources":["../src/nodes/node-entity.tsx","../src/nodes/node-systems-module.tsx"],"mappings":";;;;;iBAQS,UAAA,CAAA;EAAa,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,cAAA,KAAgB,oBAAA,CAAA,GAAA,CAAA,OAAA;;;iBCAxE,iBAAA,CAAA;EAAoB,EAAA;EAAI,IAAA;EAAM,QAAA;EAAU;AAAA,GAAQ,SAAA,CAAU,IAAA,CAAK,qBAAA,KAAuB,oBAAA,CAAA,GAAA,CAAA,OAAA"}