@oasys/oecs 0.5.3 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1399 -276
- package/README.md +327 -169
- package/dist/core/ecs/access_check.d.cts +31 -31
- package/dist/core/ecs/access_check.d.ts +31 -31
- package/dist/core/ecs/access_check.d.ts.map +1 -1
- package/dist/core/ecs/archetype.d.cts +273 -205
- package/dist/core/ecs/archetype.d.ts +273 -205
- package/dist/core/ecs/archetype.d.ts.map +1 -1
- package/dist/core/ecs/archetype_closure.d.cts +23 -0
- package/dist/core/ecs/archetype_closure.d.ts +23 -0
- package/dist/core/ecs/archetype_closure.d.ts.map +1 -0
- package/dist/core/ecs/archetype_graph.d.cts +34 -34
- package/dist/core/ecs/archetype_graph.d.ts +34 -34
- package/dist/core/ecs/archetype_graph.d.ts.map +1 -1
- package/dist/core/ecs/archetype_types.d.cts +55 -0
- package/dist/core/ecs/archetype_types.d.ts +55 -0
- package/dist/core/ecs/archetype_types.d.ts.map +1 -0
- package/dist/core/ecs/change_feed.d.cts +53 -0
- package/dist/core/ecs/change_feed.d.ts +53 -0
- package/dist/core/ecs/change_feed.d.ts.map +1 -0
- package/dist/core/ecs/changed_query.d.cts +36 -0
- package/dist/core/ecs/changed_query.d.ts +36 -0
- package/dist/core/ecs/changed_query.d.ts.map +1 -0
- package/dist/core/ecs/chunk_columns.d.cts +49 -0
- package/dist/core/ecs/chunk_columns.d.ts +49 -0
- package/dist/core/ecs/chunk_columns.d.ts.map +1 -0
- package/dist/core/ecs/command_log.d.cts +30 -30
- package/dist/core/ecs/command_log.d.ts +30 -30
- package/dist/core/ecs/command_log.d.ts.map +1 -1
- package/dist/core/ecs/component.d.cts +45 -44
- package/dist/core/ecs/component.d.ts +45 -44
- package/dist/core/ecs/component.d.ts.map +1 -1
- package/dist/core/ecs/component_registry.d.cts +53 -0
- package/dist/core/ecs/component_registry.d.ts +53 -0
- package/dist/core/ecs/component_registry.d.ts.map +1 -0
- package/dist/core/ecs/compute_backend.d.cts +18 -7
- package/dist/core/ecs/compute_backend.d.ts +18 -7
- package/dist/core/ecs/compute_backend.d.ts.map +1 -1
- package/dist/core/ecs/deferred_commands.d.cts +15 -14
- package/dist/core/ecs/deferred_commands.d.ts +15 -14
- package/dist/core/ecs/deferred_commands.d.ts.map +1 -1
- package/dist/core/ecs/dispatch_trace.d.cts +32 -31
- package/dist/core/ecs/dispatch_trace.d.ts +32 -31
- package/dist/core/ecs/dispatch_trace.d.ts.map +1 -1
- package/dist/core/ecs/ecs.d.cts +337 -276
- package/dist/core/ecs/ecs.d.ts +337 -276
- package/dist/core/ecs/ecs.d.ts.map +1 -1
- package/dist/core/ecs/ecs_memory.d.cts +134 -136
- package/dist/core/ecs/ecs_memory.d.ts +134 -136
- package/dist/core/ecs/ecs_memory.d.ts.map +1 -1
- package/dist/core/ecs/ecs_options.d.cts +89 -0
- package/dist/core/ecs/ecs_options.d.ts +89 -0
- package/dist/core/ecs/ecs_options.d.ts.map +1 -0
- package/dist/core/ecs/entity.d.cts +4 -4
- package/dist/core/ecs/entity.d.ts +4 -4
- package/dist/core/ecs/entity_allocator.d.cts +24 -22
- package/dist/core/ecs/entity_allocator.d.ts +24 -22
- package/dist/core/ecs/entity_allocator.d.ts.map +1 -1
- package/dist/core/ecs/event.d.cts +37 -23
- package/dist/core/ecs/event.d.ts +37 -23
- package/dist/core/ecs/event.d.ts.map +1 -1
- package/dist/core/ecs/facades.d.cts +12 -126
- package/dist/core/ecs/facades.d.ts +12 -126
- package/dist/core/ecs/facades.d.ts.map +1 -1
- package/dist/core/ecs/frame_stepper.d.cts +12 -12
- package/dist/core/ecs/frame_stepper.d.ts +12 -12
- package/dist/core/ecs/frame_stepper.d.ts.map +1 -1
- package/dist/core/ecs/frame_trace.d.cts +34 -34
- package/dist/core/ecs/frame_trace.d.ts +34 -34
- package/dist/core/ecs/frame_trace.d.ts.map +1 -1
- package/dist/core/ecs/host_commands.d.cts +107 -89
- package/dist/core/ecs/host_commands.d.ts +107 -89
- package/dist/core/ecs/host_commands.d.ts.map +1 -1
- package/dist/core/ecs/index.d.cts +22 -12
- package/dist/core/ecs/index.d.ts +22 -12
- package/dist/core/ecs/index.d.ts.map +1 -1
- package/dist/core/ecs/observer.d.cts +41 -122
- package/dist/core/ecs/observer.d.ts +41 -122
- package/dist/core/ecs/observer.d.ts.map +1 -1
- package/dist/core/ecs/phase.d.cts +79 -0
- package/dist/core/ecs/phase.d.ts +79 -0
- package/dist/core/ecs/phase.d.ts.map +1 -0
- package/dist/core/ecs/plugin.d.cts +125 -0
- package/dist/core/ecs/plugin.d.ts +125 -0
- package/dist/core/ecs/plugin.d.ts.map +1 -0
- package/dist/core/ecs/plugin_slots.d.cts +26 -0
- package/dist/core/ecs/plugin_slots.d.ts +26 -0
- package/dist/core/ecs/plugin_slots.d.ts.map +1 -0
- package/dist/core/ecs/query.d.cts +219 -568
- package/dist/core/ecs/query.d.ts +219 -568
- package/dist/core/ecs/query.d.ts.map +1 -1
- package/dist/core/ecs/query_cache.d.cts +130 -0
- package/dist/core/ecs/query_cache.d.ts +130 -0
- package/dist/core/ecs/query_cache.d.ts.map +1 -0
- package/dist/core/ecs/query_registry.d.cts +47 -0
- package/dist/core/ecs/query_registry.d.ts +47 -0
- package/dist/core/ecs/query_registry.d.ts.map +1 -0
- package/dist/core/ecs/query_terms.d.cts +126 -0
- package/dist/core/ecs/query_terms.d.ts +126 -0
- package/dist/core/ecs/query_terms.d.ts.map +1 -0
- package/dist/core/ecs/ref.d.cts +129 -16
- package/dist/core/ecs/ref.d.ts +129 -16
- package/dist/core/ecs/ref.d.ts.map +1 -1
- package/dist/core/ecs/relation.d.cts +105 -186
- package/dist/core/ecs/relation.d.ts +105 -186
- package/dist/core/ecs/relation.d.ts.map +1 -1
- package/dist/core/ecs/resource.d.cts +14 -14
- package/dist/core/ecs/resource.d.ts +14 -14
- package/dist/core/ecs/resource_registry.d.cts +6 -6
- package/dist/core/ecs/resource_registry.d.ts +6 -6
- package/dist/core/ecs/resource_registry.d.ts.map +1 -1
- package/dist/core/ecs/row_kinds.d.cts +24 -0
- package/dist/core/ecs/row_kinds.d.ts +24 -0
- package/dist/core/ecs/row_kinds.d.ts.map +1 -0
- package/dist/core/ecs/run_condition.d.cts +23 -23
- package/dist/core/ecs/run_condition.d.ts +23 -23
- package/dist/core/ecs/run_condition.d.ts.map +1 -1
- package/dist/core/ecs/schedule.d.cts +98 -114
- package/dist/core/ecs/schedule.d.ts +98 -114
- package/dist/core/ecs/schedule.d.ts.map +1 -1
- package/dist/core/ecs/schedule_plan.d.cts +33 -0
- package/dist/core/ecs/schedule_plan.d.ts +33 -0
- package/dist/core/ecs/schedule_plan.d.ts.map +1 -0
- package/dist/core/ecs/snapshot.d.cts +77 -0
- package/dist/core/ecs/snapshot.d.ts +77 -0
- package/dist/core/ecs/snapshot.d.ts.map +1 -0
- package/dist/core/ecs/snapshot_mount.d.cts +42 -0
- package/dist/core/ecs/snapshot_mount.d.ts +42 -0
- package/dist/core/ecs/snapshot_mount.d.ts.map +1 -0
- package/dist/core/ecs/sparse_store.d.cts +110 -53
- package/dist/core/ecs/sparse_store.d.ts +110 -53
- package/dist/core/ecs/sparse_store.d.ts.map +1 -1
- package/dist/core/ecs/store.d.cts +644 -511
- package/dist/core/ecs/store.d.ts +644 -511
- package/dist/core/ecs/store.d.ts.map +1 -1
- package/dist/core/ecs/store_layout_listener.d.cts +8 -8
- package/dist/core/ecs/store_layout_listener.d.ts +8 -8
- package/dist/core/ecs/store_types.d.cts +122 -0
- package/dist/core/ecs/store_types.d.ts +122 -0
- package/dist/core/ecs/store_types.d.ts.map +1 -0
- package/dist/core/ecs/system.d.cts +151 -66
- package/dist/core/ecs/system.d.ts +151 -66
- package/dist/core/ecs/system.d.ts.map +1 -1
- package/dist/core/ecs/system_context.d.cts +296 -0
- package/dist/core/ecs/system_context.d.ts +296 -0
- package/dist/core/ecs/system_context.d.ts.map +1 -0
- package/dist/core/ecs/system_set.d.cts +48 -0
- package/dist/core/ecs/system_set.d.ts +48 -0
- package/dist/core/ecs/system_set.d.ts.map +1 -0
- package/dist/core/ecs/utils/arrays.d.cts +15 -1
- package/dist/core/ecs/utils/arrays.d.ts +15 -1
- package/dist/core/ecs/utils/arrays.d.ts.map +1 -1
- package/dist/core/ecs/utils/error.d.cts +87 -4
- package/dist/core/ecs/utils/error.d.ts +87 -4
- package/dist/core/ecs/utils/error.d.ts.map +1 -1
- package/dist/core/ecs/utils/plugin_error.d.cts +10 -0
- package/dist/core/ecs/utils/plugin_error.d.ts +10 -0
- package/dist/core/ecs/utils/plugin_error.d.ts.map +1 -0
- package/dist/core/restore_errors.d.cts +30 -0
- package/dist/core/restore_errors.d.ts +30 -0
- package/dist/core/restore_errors.d.ts.map +1 -0
- package/dist/core/store/action_ring.d.cts +48 -49
- package/dist/core/store/action_ring.d.ts +48 -49
- package/dist/core/store/action_ring.d.ts.map +1 -1
- package/dist/core/store/allocator.d.cts +166 -114
- package/dist/core/store/allocator.d.ts +166 -114
- package/dist/core/store/allocator.d.ts.map +1 -1
- package/dist/core/store/buffer_backed_column.d.cts +21 -22
- package/dist/core/store/buffer_backed_column.d.ts +21 -22
- package/dist/core/store/buffer_backed_column.d.ts.map +1 -1
- package/dist/core/store/column_store.d.cts +138 -100
- package/dist/core/store/column_store.d.ts +138 -100
- package/dist/core/store/column_store.d.ts.map +1 -1
- package/dist/core/store/command_dispatch.d.cts +14 -15
- package/dist/core/store/command_dispatch.d.ts +14 -15
- package/dist/core/store/command_dispatch.d.ts.map +1 -1
- package/dist/core/store/command_ring.d.cts +41 -45
- package/dist/core/store/command_ring.d.ts +41 -45
- package/dist/core/store/command_ring.d.ts.map +1 -1
- package/dist/core/store/descriptor.d.cts +35 -18
- package/dist/core/store/descriptor.d.ts +35 -18
- package/dist/core/store/descriptor.d.ts.map +1 -1
- package/dist/core/store/entity_index.d.cts +34 -35
- package/dist/core/store/entity_index.d.ts +34 -35
- package/dist/core/store/entity_index.d.ts.map +1 -1
- package/dist/core/store/event_ring.d.cts +40 -42
- package/dist/core/store/event_ring.d.ts +40 -42
- package/dist/core/store/event_ring.d.ts.map +1 -1
- package/dist/core/store/extend.d.cts +15 -9
- package/dist/core/store/extend.d.ts +15 -9
- package/dist/core/store/extend.d.ts.map +1 -1
- package/dist/core/store/grow.d.cts +3 -3
- package/dist/core/store/grow.d.ts +3 -3
- package/dist/core/store/grow.d.ts.map +1 -1
- package/dist/core/store/header.d.cts +37 -33
- package/dist/core/store/header.d.ts +37 -33
- package/dist/core/store/header.d.ts.map +1 -1
- package/dist/core/store/index.d.cts +10 -10
- package/dist/core/store/index.d.ts +10 -10
- package/dist/core/store/index.d.ts.map +1 -1
- package/dist/core/store/layout_ops.d.cts +72 -63
- package/dist/core/store/layout_ops.d.ts +72 -63
- package/dist/core/store/layout_ops.d.ts.map +1 -1
- package/dist/core/store/region_table.d.cts +28 -21
- package/dist/core/store/region_table.d.ts +28 -21
- package/dist/core/store/region_table.d.ts.map +1 -1
- package/dist/core/store/snapshot.d.cts +31 -16
- package/dist/core/store/snapshot.d.ts +31 -16
- package/dist/core/store/snapshot.d.ts.map +1 -1
- package/dist/core/store/state_hash.d.cts +14 -14
- package/dist/core/store/state_hash.d.ts +14 -14
- package/dist/core/store/state_hash.d.ts.map +1 -1
- package/dist/core/store/store_regions.d.cts +10 -10
- package/dist/core/store/store_regions.d.ts +10 -10
- package/dist/core/store/store_regions.d.ts.map +1 -1
- package/dist/core/store/vendored_abi/abi.d.cts +27 -2
- package/dist/core/store/vendored_abi/abi.d.ts +27 -2
- package/dist/core/store/vendored_abi/abi.d.ts.map +1 -1
- package/dist/host_commands-B2KMx8O2.cjs +1 -0
- package/dist/host_commands-ClVPvhSa.cjs +2 -0
- package/dist/host_commands-CwxVQS1z.js +1524 -0
- package/dist/host_commands-nJvTy88E.js +1667 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +16 -11
- package/dist/index.d.ts +16 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.development.cjs +1 -1
- package/dist/index.development.js +6709 -5729
- package/dist/index.js +5664 -4743
- package/dist/internal.cjs +2 -2
- package/dist/internal.d.cts +5 -2
- package/dist/internal.d.ts +5 -2
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.development.cjs +1 -1
- package/dist/internal.development.js +70 -20
- package/dist/internal.js +138 -83
- package/dist/plugins/abi-D3V-QUSf.cjs +1 -0
- package/dist/plugins/abi-NP8pNxpd.js +42 -0
- package/dist/plugins/arrays-Dr_1hCjL.js +28 -0
- package/dist/plugins/arrays-Dt-Joc4i.cjs +1 -0
- package/dist/plugins/assertions-gtDVfbnQ.js +6 -0
- package/dist/plugins/assertions-z5GQd_bB.cjs +1 -0
- package/dist/{extensions → plugins}/editor/editor.d.cts +56 -56
- package/dist/{extensions → plugins}/editor/editor.d.ts +56 -56
- package/dist/plugins/editor/editor.d.ts.map +1 -0
- package/dist/{extensions → plugins}/editor/field_handle.d.cts +13 -13
- package/dist/{extensions → plugins}/editor/field_handle.d.ts +13 -13
- package/dist/plugins/editor/field_handle.d.ts.map +1 -0
- package/dist/plugins/editor/index.d.cts +22 -0
- package/dist/plugins/editor/index.d.ts +22 -0
- package/dist/plugins/editor/index.d.ts.map +1 -0
- package/dist/plugins/editor.cjs +1 -0
- package/dist/plugins/editor.d.cts +1 -0
- package/dist/plugins/editor.d.ts +1 -0
- package/dist/plugins/editor.development.cjs +1 -0
- package/dist/{extensions/editor/index.development.js → plugins/editor.development.js} +83 -66
- package/dist/{extensions/editor/index.js → plugins/editor.js} +83 -66
- package/dist/plugins/events/event_channel.d.cts +13 -0
- package/dist/plugins/events/event_channel.d.ts +13 -0
- package/dist/plugins/events/event_channel.d.ts.map +1 -0
- package/dist/plugins/events/event_registry.d.cts +22 -0
- package/dist/plugins/events/event_registry.d.ts +22 -0
- package/dist/plugins/events/event_registry.d.ts.map +1 -0
- package/dist/plugins/events/facade.d.cts +26 -0
- package/dist/plugins/events/facade.d.ts +26 -0
- package/dist/plugins/events/facade.d.ts.map +1 -0
- package/dist/plugins/events/index.d.cts +10 -0
- package/dist/plugins/events/index.d.ts +10 -0
- package/dist/plugins/events/index.d.ts.map +1 -0
- package/dist/plugins/events.cjs +1 -0
- package/dist/plugins/events.d.cts +1 -0
- package/dist/plugins/events.d.ts +1 -0
- package/dist/plugins/events.development.cjs +1 -0
- package/dist/plugins/events.development.js +174 -0
- package/dist/plugins/events.js +159 -0
- package/dist/plugins/observers/index.d.cts +23 -0
- package/dist/plugins/observers/index.d.ts +23 -0
- package/dist/plugins/observers/index.d.ts.map +1 -0
- package/dist/plugins/observers/observer_registry.d.cts +101 -0
- package/dist/plugins/observers/observer_registry.d.ts +101 -0
- package/dist/plugins/observers/observer_registry.d.ts.map +1 -0
- package/dist/plugins/observers.cjs +1 -0
- package/dist/plugins/observers.d.cts +1 -0
- package/dist/plugins/observers.d.ts +1 -0
- package/dist/plugins/observers.development.cjs +1 -0
- package/dist/plugins/observers.development.js +431 -0
- package/dist/plugins/observers.js +403 -0
- package/dist/plugins/relation_store-BsoegrZh.js +313 -0
- package/dist/plugins/relation_store-DQKSnxsm.cjs +1 -0
- package/dist/plugins/relation_store-RBhpcE28.cjs +1 -0
- package/dist/plugins/relation_store-RqW5Snx6.js +328 -0
- package/dist/plugins/relations/builtin_relations.d.cts +48 -0
- package/dist/plugins/relations/builtin_relations.d.ts +48 -0
- package/dist/plugins/relations/builtin_relations.d.ts.map +1 -0
- package/dist/plugins/relations/facade.d.cts +73 -0
- package/dist/plugins/relations/facade.d.ts +73 -0
- package/dist/plugins/relations/facade.d.ts.map +1 -0
- package/dist/plugins/relations/index.d.cts +11 -0
- package/dist/plugins/relations/index.d.ts +11 -0
- package/dist/plugins/relations/index.d.ts.map +1 -0
- package/dist/{core/ecs → plugins/relations}/relation_service.d.cts +93 -105
- package/dist/{core/ecs → plugins/relations}/relation_service.d.ts +93 -105
- package/dist/plugins/relations/relation_service.d.ts.map +1 -0
- package/dist/plugins/relations/relation_store.d.cts +177 -0
- package/dist/plugins/relations/relation_store.d.ts +177 -0
- package/dist/plugins/relations/relation_store.d.ts.map +1 -0
- package/dist/plugins/relations.cjs +1 -0
- package/dist/plugins/relations.d.cts +1 -0
- package/dist/plugins/relations.d.ts +1 -0
- package/dist/plugins/relations.development.cjs +1 -0
- package/dist/plugins/relations.development.js +603 -0
- package/dist/plugins/relations.js +553 -0
- package/dist/plugins/snapshots/index.d.cts +33 -0
- package/dist/plugins/snapshots/index.d.ts +33 -0
- package/dist/plugins/snapshots/index.d.ts.map +1 -0
- package/dist/plugins/snapshots/resume.d.cts +57 -0
- package/dist/plugins/snapshots/resume.d.ts +57 -0
- package/dist/plugins/snapshots/resume.d.ts.map +1 -0
- package/dist/plugins/snapshots/snapshot_service.d.cts +59 -0
- package/dist/plugins/snapshots/snapshot_service.d.ts +59 -0
- package/dist/plugins/snapshots/snapshot_service.d.ts.map +1 -0
- package/dist/plugins/snapshots.cjs +1 -0
- package/dist/plugins/snapshots.d.cts +1 -0
- package/dist/plugins/snapshots.d.ts +1 -0
- package/dist/plugins/snapshots.development.cjs +1 -0
- package/dist/plugins/snapshots.development.js +737 -0
- package/dist/plugins/snapshots.js +737 -0
- package/dist/plugins/solid/index.d.cts +8 -0
- package/dist/plugins/solid/index.d.ts +8 -0
- package/dist/plugins/solid/index.d.ts.map +1 -0
- package/dist/plugins/solid/solid.d.cts +97 -0
- package/dist/plugins/solid/solid.d.ts +97 -0
- package/dist/plugins/solid/solid.d.ts.map +1 -0
- package/dist/plugins/solid.cjs +1 -0
- package/dist/plugins/solid.d.cts +1 -0
- package/dist/plugins/solid.d.ts +1 -0
- package/dist/plugins/solid.development.cjs +1 -0
- package/dist/plugins/solid.development.js +319 -0
- package/dist/plugins/solid.js +319 -0
- package/dist/plugins/workers/index.d.cts +75 -0
- package/dist/plugins/workers/index.d.ts +75 -0
- package/dist/plugins/workers/index.d.ts.map +1 -0
- package/dist/plugins/workers/node_threads.d.cts +25 -0
- package/dist/plugins/workers/node_threads.d.ts +25 -0
- package/dist/plugins/workers/node_threads.d.ts.map +1 -0
- package/dist/plugins/workers/plan.d.cts +61 -0
- package/dist/plugins/workers/plan.d.ts +61 -0
- package/dist/plugins/workers/plan.d.ts.map +1 -0
- package/dist/plugins/workers/pool.d.cts +144 -0
- package/dist/plugins/workers/pool.d.ts +144 -0
- package/dist/plugins/workers/pool.d.ts.map +1 -0
- package/dist/plugins/workers/protocol.d.cts +112 -0
- package/dist/plugins/workers/protocol.d.ts +112 -0
- package/dist/plugins/workers/protocol.d.ts.map +1 -0
- package/dist/plugins/workers/worker_bind.d.cts +64 -0
- package/dist/plugins/workers/worker_bind.d.ts +64 -0
- package/dist/plugins/workers/worker_bind.d.ts.map +1 -0
- package/dist/plugins/workers/worker_loop.d.cts +14 -0
- package/dist/plugins/workers/worker_loop.d.ts +14 -0
- package/dist/plugins/workers/worker_loop.d.ts.map +1 -0
- package/dist/plugins/workers.cjs +1 -0
- package/dist/plugins/workers.d.cts +1 -0
- package/dist/plugins/workers.d.ts +1 -0
- package/dist/plugins/workers.development.cjs +1 -0
- package/dist/plugins/workers.development.js +596 -0
- package/dist/plugins/workers.js +474 -0
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.d.cts +4 -4
- package/dist/primitives.d.ts +4 -4
- package/dist/primitives.development.cjs +1 -1
- package/dist/primitives.development.js +66 -22
- package/dist/primitives.js +66 -22
- package/dist/shared-BKl12xF1.js +132 -0
- package/dist/shared-Dk-pACZT.cjs +1 -0
- package/dist/shared.cjs +1 -1
- package/dist/shared.d.cts +7 -7
- package/dist/shared.d.ts +7 -7
- package/dist/shared.d.ts.map +1 -1
- package/dist/shared.development.cjs +1 -1
- package/dist/shared.development.js +4 -3
- package/dist/shared.js +4 -3
- package/dist/topological_sort-Cc_yXqPT.js +346 -0
- package/dist/topological_sort-vp1imU6D.cjs +1 -0
- package/dist/type_primitives/assertions.d.cts +12 -16
- package/dist/type_primitives/assertions.d.ts +12 -16
- package/dist/type_primitives/assertions.d.ts.map +1 -1
- package/dist/type_primitives/binary_heap/binary_heap.d.cts +2 -6
- package/dist/type_primitives/binary_heap/binary_heap.d.ts +2 -6
- package/dist/type_primitives/binary_heap/binary_heap.d.ts.map +1 -1
- package/dist/type_primitives/bitset/bitset.d.cts +7 -11
- package/dist/type_primitives/bitset/bitset.d.ts +7 -11
- package/dist/type_primitives/bitset/bitset.d.ts.map +1 -1
- package/dist/type_primitives/brand.d.cts +2 -7
- package/dist/type_primitives/brand.d.ts +2 -7
- package/dist/type_primitives/brand.d.ts.map +1 -1
- package/dist/type_primitives/error.d.cts +1 -2
- package/dist/type_primitives/error.d.ts +1 -2
- package/dist/type_primitives/error.d.ts.map +1 -1
- package/dist/type_primitives/index.d.cts +1 -1
- package/dist/type_primitives/index.d.ts +1 -1
- package/dist/type_primitives/sparse_map/sparse_map.d.cts +3 -7
- package/dist/type_primitives/sparse_map/sparse_map.d.ts +3 -7
- package/dist/type_primitives/sparse_map/sparse_map.d.ts.map +1 -1
- package/dist/type_primitives/sparse_set/sparse_set.d.cts +2 -6
- package/dist/type_primitives/sparse_set/sparse_set.d.ts +2 -6
- package/dist/type_primitives/sparse_set/sparse_set.d.ts.map +1 -1
- package/dist/type_primitives/topological_sort/topological_sort.d.cts +1 -5
- package/dist/type_primitives/topological_sort/topological_sort.d.ts +1 -5
- package/dist/type_primitives/topological_sort/topological_sort.d.ts.map +1 -1
- package/dist/type_primitives/typed_arrays/typed_arrays.d.cts +18 -17
- package/dist/type_primitives/typed_arrays/typed_arrays.d.ts +18 -17
- package/dist/type_primitives/typed_arrays/typed_arrays.d.ts.map +1 -1
- package/dist/utils/error.d.ts.map +1 -1
- package/dist/version.d.cts +4 -4
- package/dist/version.d.ts +4 -4
- package/dist/worker.cjs +1 -0
- package/dist/worker.d.cts +17 -0
- package/dist/worker.d.ts +17 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.development.cjs +1 -0
- package/dist/worker.development.js +253 -0
- package/dist/worker.js +253 -0
- package/package.json +363 -191
- package/dist/core/ecs/builtin_relations.d.cts +0 -43
- package/dist/core/ecs/builtin_relations.d.ts +0 -43
- package/dist/core/ecs/builtin_relations.d.ts.map +0 -1
- package/dist/core/ecs/event_registry.d.cts +0 -22
- package/dist/core/ecs/event_registry.d.ts +0 -22
- package/dist/core/ecs/event_registry.d.ts.map +0 -1
- package/dist/core/ecs/relation_service.d.ts.map +0 -1
- package/dist/core/ecs/resume.d.cts +0 -85
- package/dist/core/ecs/resume.d.ts +0 -85
- package/dist/core/ecs/resume.d.ts.map +0 -1
- package/dist/core/ecs/snapshot_service.d.cts +0 -94
- package/dist/core/ecs/snapshot_service.d.ts +0 -94
- package/dist/core/ecs/snapshot_service.d.ts.map +0 -1
- package/dist/extensions/editor/editor.d.ts.map +0 -1
- package/dist/extensions/editor/field_handle.d.ts.map +0 -1
- package/dist/extensions/editor/index.cjs +0 -1
- package/dist/extensions/editor/index.d.cts +0 -21
- package/dist/extensions/editor/index.d.ts +0 -21
- package/dist/extensions/editor/index.d.ts.map +0 -1
- package/dist/extensions/editor/index.development.cjs +0 -1
- package/dist/extensions/reactive/ecs_sync.d.cts +0 -214
- package/dist/extensions/reactive/ecs_sync.d.ts +0 -214
- package/dist/extensions/reactive/ecs_sync.d.ts.map +0 -1
- package/dist/extensions/reactive/index.cjs +0 -1
- package/dist/extensions/reactive/index.d.cts +0 -23
- package/dist/extensions/reactive/index.d.ts +0 -23
- package/dist/extensions/reactive/index.d.ts.map +0 -1
- package/dist/extensions/reactive/index.development.cjs +0 -1
- package/dist/extensions/reactive/index.development.js +0 -215
- package/dist/extensions/reactive/index.js +0 -215
- package/dist/extensions/solid/index.cjs +0 -1
- package/dist/extensions/solid/index.d.cts +0 -6
- package/dist/extensions/solid/index.d.ts +0 -6
- package/dist/extensions/solid/index.d.ts.map +0 -1
- package/dist/extensions/solid/index.development.cjs +0 -1
- package/dist/extensions/solid/index.development.js +0 -40
- package/dist/extensions/solid/index.js +0 -36
- package/dist/extensions/solid/kernel_solid.d.cts +0 -45
- package/dist/extensions/solid/kernel_solid.d.ts +0 -45
- package/dist/extensions/solid/kernel_solid.d.ts.map +0 -1
- package/dist/host_commands-3jyFfWNg.js +0 -2326
- package/dist/host_commands-DNf0f6ko.cjs +0 -1
- package/dist/internal-C9jjL90H.js +0 -2485
- package/dist/internal-RZN14uMw.cjs +0 -2
- package/dist/interop-CT-REx0W.cjs +0 -1
- package/dist/interop-CcY6ASQc.js +0 -18
- package/dist/interop-DqxleBo7.js +0 -18
- package/dist/interop-T1HZ-Dpa.cjs +0 -1
- package/dist/kernel-Cz2Kxlwl.js +0 -240
- package/dist/kernel-DgyrLFjW.js +0 -227
- package/dist/kernel-sw7ScKWu.cjs +0 -1
- package/dist/kernel-yWV3XnAb.cjs +0 -1
- package/dist/reactive/array.d.cts +0 -24
- package/dist/reactive/array.d.ts +0 -24
- package/dist/reactive/array.d.ts.map +0 -1
- package/dist/reactive/index.cjs +0 -1
- package/dist/reactive/index.d.cts +0 -11
- package/dist/reactive/index.d.ts +0 -11
- package/dist/reactive/index.d.ts.map +0 -1
- package/dist/reactive/index.development.cjs +0 -1
- package/dist/reactive/index.development.js +0 -18
- package/dist/reactive/index.js +0 -18
- package/dist/reactive/interop.d.cts +0 -19
- package/dist/reactive/interop.d.ts +0 -19
- package/dist/reactive/interop.d.ts.map +0 -1
- package/dist/reactive/kernel.d.cts +0 -73
- package/dist/reactive/kernel.d.ts +0 -73
- package/dist/reactive/kernel.d.ts.map +0 -1
- package/dist/reactive/map.d.cts +0 -16
- package/dist/reactive/map.d.ts +0 -16
- package/dist/reactive/map.d.ts.map +0 -1
- package/dist/reactive/shallow.d.cts +0 -11
- package/dist/reactive/shallow.d.ts +0 -11
- package/dist/reactive/shallow.d.ts.map +0 -1
- package/dist/reactive/struct.d.cts +0 -10
- package/dist/reactive/struct.d.ts +0 -10
- package/dist/reactive/struct.d.ts.map +0 -1
- package/dist/shallow-9S1pY_Iw.js +0 -159
- package/dist/shallow-C5YmTbtb.cjs +0 -1
- package/dist/shallow-DQ8aG51_.cjs +0 -1
- package/dist/shallow-DfnAm9vG.js +0 -150
- package/dist/shared-BMXh9hxm.cjs +0 -1
- package/dist/shared-DQKK0i-E.js +0 -109
- package/dist/topological_sort-BDvEyb9W.cjs +0 -1
- package/dist/topological_sort-DK6EjpWa.js +0 -135
- package/dist/typed_arrays-BcXcnzB4.js +0 -258
- package/dist/typed_arrays-D3NmwtCG.cjs +0 -1
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ArchetypeView } from './archetype.cjs';
|
|
2
|
+
import { ComponentDef } from './component.cjs';
|
|
3
|
+
import { Query } from './query.cjs';
|
|
4
|
+
import { ChunkColumns } from './chunk_columns.cjs';
|
|
5
|
+
export declare class ChangedQuery<Defs extends readonly ComponentDef[]> {
|
|
6
|
+
private readonly _query;
|
|
7
|
+
private readonly _changedIds;
|
|
8
|
+
constructor(query: Query<Defs>, changedIds: number[]);
|
|
9
|
+
/** Also require these components (mirrors `Query.and`). */
|
|
10
|
+
and<D extends ComponentDef[]>(...comps: D): ChangedQuery<[...Defs, ...D]>;
|
|
11
|
+
/** Exclude archetypes holding any of these (mirrors `Query.not`). */
|
|
12
|
+
not(...comps: ComponentDef[]): ChangedQuery<Defs>;
|
|
13
|
+
/** Require at least one of these (mirrors `Query.or`). */
|
|
14
|
+
or(...comps: ComponentDef[]): ChangedQuery<Defs>;
|
|
15
|
+
/** Permit optional-component data access in the loop (mirrors `Query.optional`). */
|
|
16
|
+
optional(...defs: ComponentDef[]): ChangedQuery<Defs>;
|
|
17
|
+
forEach(cb: (arch: ArchetypeView<Defs>) => void): void;
|
|
18
|
+
/** The chunk form of `forEach`: the changed archetypes, as column groups.
|
|
19
|
+
* The row grain sits inside: `cols.ticksRead(def)` is the row tick column,
|
|
20
|
+
* and a row above `cols.since` changed since the previous run of the
|
|
21
|
+
* system. `def` needs row ticks (`ecs.trackRows`). Same include-disabled
|
|
22
|
+
* handling as `Query.forEachChunk`. */
|
|
23
|
+
forEachChunk(cb: (cols: ChunkColumns<Defs>, count: number) => void): void;
|
|
24
|
+
/** @internal, the body of `forEachChunk`: `Query._forEachChunkInner` with
|
|
25
|
+
* the change-tick filter of `forEach` in front of each archetype. */
|
|
26
|
+
private _forEachChunkInner;
|
|
27
|
+
/** @internal, cold `includeDisabled` wrapper, split out of `forEach`
|
|
28
|
+
* so the all-rows flag dance stays out of the inlined hot body. */
|
|
29
|
+
private _forEachIncludeDisabled;
|
|
30
|
+
/** @internal, the `includeDisabled` delegate for `forEach`. The
|
|
31
|
+
* default path inlines this body directly into `forEach` to dodge a
|
|
32
|
+
* megamorphic delegate hop. This copy survives only for the rare all-rows
|
|
33
|
+
* path, which needs the `_setIterAllRows` `finally` wrap. */
|
|
34
|
+
private _forEachInner;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=changed_query.d.ts.map
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ArchetypeView } from './archetype.js';
|
|
2
|
+
import { ComponentDef } from './component.js';
|
|
3
|
+
import { Query } from './query.js';
|
|
4
|
+
import { ChunkColumns } from './chunk_columns.js';
|
|
5
|
+
export declare class ChangedQuery<Defs extends readonly ComponentDef[]> {
|
|
6
|
+
private readonly _query;
|
|
7
|
+
private readonly _changedIds;
|
|
8
|
+
constructor(query: Query<Defs>, changedIds: number[]);
|
|
9
|
+
/** Also require these components (mirrors `Query.and`). */
|
|
10
|
+
and<D extends ComponentDef[]>(...comps: D): ChangedQuery<[...Defs, ...D]>;
|
|
11
|
+
/** Exclude archetypes holding any of these (mirrors `Query.not`). */
|
|
12
|
+
not(...comps: ComponentDef[]): ChangedQuery<Defs>;
|
|
13
|
+
/** Require at least one of these (mirrors `Query.or`). */
|
|
14
|
+
or(...comps: ComponentDef[]): ChangedQuery<Defs>;
|
|
15
|
+
/** Permit optional-component data access in the loop (mirrors `Query.optional`). */
|
|
16
|
+
optional(...defs: ComponentDef[]): ChangedQuery<Defs>;
|
|
17
|
+
forEach(cb: (arch: ArchetypeView<Defs>) => void): void;
|
|
18
|
+
/** The chunk form of `forEach`: the changed archetypes, as column groups.
|
|
19
|
+
* The row grain sits inside: `cols.ticksRead(def)` is the row tick column,
|
|
20
|
+
* and a row above `cols.since` changed since the previous run of the
|
|
21
|
+
* system. `def` needs row ticks (`ecs.trackRows`). Same include-disabled
|
|
22
|
+
* handling as `Query.forEachChunk`. */
|
|
23
|
+
forEachChunk(cb: (cols: ChunkColumns<Defs>, count: number) => void): void;
|
|
24
|
+
/** @internal, the body of `forEachChunk`: `Query._forEachChunkInner` with
|
|
25
|
+
* the change-tick filter of `forEach` in front of each archetype. */
|
|
26
|
+
private _forEachChunkInner;
|
|
27
|
+
/** @internal, cold `includeDisabled` wrapper, split out of `forEach`
|
|
28
|
+
* so the all-rows flag dance stays out of the inlined hot body. */
|
|
29
|
+
private _forEachIncludeDisabled;
|
|
30
|
+
/** @internal, the `includeDisabled` delegate for `forEach`. The
|
|
31
|
+
* default path inlines this body directly into `forEach` to dodge a
|
|
32
|
+
* megamorphic delegate hop. This copy survives only for the rare all-rows
|
|
33
|
+
* path, which needs the `_setIterAllRows` `finally` wrap. */
|
|
34
|
+
private _forEachInner;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=changed_query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"changed_query.d.ts","sourceRoot":"","sources":["../../../src/core/ecs/changed_query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;KAYK;AAEL,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAK/C,qBAAa,YAAY,CAAC,IAAI,SAAS,SAAS,YAAY,EAAE;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAW;gBAE3B,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;IAwBpD,2DAA2D;IACpD,GAAG,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAIhF,qEAAqE;IAC9D,GAAG,CAAC,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;IAIxD,0DAA0D;IACnD,EAAE,CAAC,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;IAIvD,oFAAoF;IAC7E,QAAQ,CAAC,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;IAIrD,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,IAAI;IAqD7D;;;;2CAIuC;IAChC,YAAY,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAahF;yEACqE;IACrE,OAAO,CAAC,kBAAkB;IA6C1B;uEACmE;IACnE,OAAO,CAAC,uBAAuB;IAS/B;;;iEAG6D;IAC7D,OAAO,CAAC,aAAa;CAyCrB"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Archetype } from './archetype.cjs';
|
|
2
|
+
import { ColumnsForSchema, ComponentDef, DeclaredQueryTerm, MutableColumnsForSchema, SchemaOf } from './component.cjs';
|
|
3
|
+
import { QueryResolver } from './query_cache.cjs';
|
|
4
|
+
/**
|
|
5
|
+
* forEachChunk cursor. One instance is allocated per `forEachChunk`
|
|
6
|
+
* pass and reused across every matched archetype in that pass. Only `arch` and
|
|
7
|
+
* `tick` are re-pointed per archetype, so the inner loop allocates nothing.
|
|
8
|
+
* Per-call (not cached on the query) so a nested `forEachChunk` on the same query
|
|
9
|
+
* gets its own cursor and can't re-point an outer pass's position. `.mut(def)`
|
|
10
|
+
* and `.read(def)` resolve a whole component's columns at once into a field-keyed
|
|
11
|
+
* object (a per-archetype-per-component cache refreshed in place), hiding the
|
|
12
|
+
* change tick. Destructure the group immediately. Don't retain it across calls.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ChunkColumns<out Defs extends readonly ComponentDef<any>[] = readonly ComponentDef<any>[]> {
|
|
15
|
+
/** @internal */ arch: Archetype;
|
|
16
|
+
/** The change tick this pass stamps. Store it into a row of `ticks(def)`
|
|
17
|
+
* to record that row for an entity-level `onSet`. */
|
|
18
|
+
tick: number;
|
|
19
|
+
/** The change tick of the previous run of the system this pass runs in,
|
|
20
|
+
* and 0 on its first run or on the host. A row of `ticksRead(def)` above it
|
|
21
|
+
* changed since that run. */
|
|
22
|
+
since: number;
|
|
23
|
+
/** @internal */ resolver: QueryResolver;
|
|
24
|
+
/** Mutable column group, `const { x, y } = cols.mut(Pos)`. Stamps the tick.
|
|
25
|
+
* `def` must be a term of the iterating query. */
|
|
26
|
+
mut<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): MutableColumnsForSchema<SchemaOf<D>>;
|
|
27
|
+
/** Read-only column group, `const { vx, vy } = cols.read(Vel)`. No tick bump.
|
|
28
|
+
* `def` must be a term of the iterating query. */
|
|
29
|
+
read<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): ColumnsForSchema<SchemaOf<D>>;
|
|
30
|
+
/** The row tick column of `def` for this archetype, the record a raw column
|
|
31
|
+
* loop makes for an entity-level `onSet`: `t[i] = cols.tick` beside the
|
|
32
|
+
* write of row `i`. One typed-array store per row, where `ctx.markChanged`
|
|
33
|
+
* is a call and a list push. Taking the column marks the archetype changed
|
|
34
|
+
* and asks the drain of this frame to scan every archetype of `def` that a
|
|
35
|
+
* writer stamped, so take it only in a loop that stores into it. Throws
|
|
36
|
+
* when no entity-level `onSet` observer tracks `def`, because the column
|
|
37
|
+
* exists for tracked components only. `def` must be a term of the
|
|
38
|
+
* iterating query. */
|
|
39
|
+
ticks<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): Uint32Array;
|
|
40
|
+
/** The row tick column of `def` for this archetype, read-only: the row
|
|
41
|
+
* grain of change detection. A row `i` with `t[i] > cols.since` changed
|
|
42
|
+
* since the previous run of this system, through any write path that
|
|
43
|
+
* records (`setField`, `ref`, a cursor, `markChanged`, or a store into
|
|
44
|
+
* `ticks(def)`). No stamp, no scan request. Throws when `def` has no row
|
|
45
|
+
* ticks: `ecs.trackRows(def)` turns them on. `def` must be a term of the
|
|
46
|
+
* iterating query. */
|
|
47
|
+
ticksRead<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): Readonly<Uint32Array>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=chunk_columns.d.ts.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Archetype } from './archetype.js';
|
|
2
|
+
import { ColumnsForSchema, ComponentDef, DeclaredQueryTerm, MutableColumnsForSchema, SchemaOf } from './component.js';
|
|
3
|
+
import { QueryResolver } from './query_cache.js';
|
|
4
|
+
/**
|
|
5
|
+
* forEachChunk cursor. One instance is allocated per `forEachChunk`
|
|
6
|
+
* pass and reused across every matched archetype in that pass. Only `arch` and
|
|
7
|
+
* `tick` are re-pointed per archetype, so the inner loop allocates nothing.
|
|
8
|
+
* Per-call (not cached on the query) so a nested `forEachChunk` on the same query
|
|
9
|
+
* gets its own cursor and can't re-point an outer pass's position. `.mut(def)`
|
|
10
|
+
* and `.read(def)` resolve a whole component's columns at once into a field-keyed
|
|
11
|
+
* object (a per-archetype-per-component cache refreshed in place), hiding the
|
|
12
|
+
* change tick. Destructure the group immediately. Don't retain it across calls.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ChunkColumns<out Defs extends readonly ComponentDef<any>[] = readonly ComponentDef<any>[]> {
|
|
15
|
+
/** @internal */ arch: Archetype;
|
|
16
|
+
/** The change tick this pass stamps. Store it into a row of `ticks(def)`
|
|
17
|
+
* to record that row for an entity-level `onSet`. */
|
|
18
|
+
tick: number;
|
|
19
|
+
/** The change tick of the previous run of the system this pass runs in,
|
|
20
|
+
* and 0 on its first run or on the host. A row of `ticksRead(def)` above it
|
|
21
|
+
* changed since that run. */
|
|
22
|
+
since: number;
|
|
23
|
+
/** @internal */ resolver: QueryResolver;
|
|
24
|
+
/** Mutable column group, `const { x, y } = cols.mut(Pos)`. Stamps the tick.
|
|
25
|
+
* `def` must be a term of the iterating query. */
|
|
26
|
+
mut<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): MutableColumnsForSchema<SchemaOf<D>>;
|
|
27
|
+
/** Read-only column group, `const { vx, vy } = cols.read(Vel)`. No tick bump.
|
|
28
|
+
* `def` must be a term of the iterating query. */
|
|
29
|
+
read<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): ColumnsForSchema<SchemaOf<D>>;
|
|
30
|
+
/** The row tick column of `def` for this archetype, the record a raw column
|
|
31
|
+
* loop makes for an entity-level `onSet`: `t[i] = cols.tick` beside the
|
|
32
|
+
* write of row `i`. One typed-array store per row, where `ctx.markChanged`
|
|
33
|
+
* is a call and a list push. Taking the column marks the archetype changed
|
|
34
|
+
* and asks the drain of this frame to scan every archetype of `def` that a
|
|
35
|
+
* writer stamped, so take it only in a loop that stores into it. Throws
|
|
36
|
+
* when no entity-level `onSet` observer tracks `def`, because the column
|
|
37
|
+
* exists for tracked components only. `def` must be a term of the
|
|
38
|
+
* iterating query. */
|
|
39
|
+
ticks<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): Uint32Array;
|
|
40
|
+
/** The row tick column of `def` for this archetype, read-only: the row
|
|
41
|
+
* grain of change detection. A row `i` with `t[i] > cols.since` changed
|
|
42
|
+
* since the previous run of this system, through any write path that
|
|
43
|
+
* records (`setField`, `ref`, a cursor, `markChanged`, or a store into
|
|
44
|
+
* `ticks(def)`). No stamp, no scan request. Throws when `def` has no row
|
|
45
|
+
* ticks: `ecs.trackRows(def)` turns them on. `def` must be a term of the
|
|
46
|
+
* iterating query. */
|
|
47
|
+
ticksRead<D extends ComponentDef<any>>(def: D & DeclaredQueryTerm<Defs, D>): Readonly<Uint32Array>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=chunk_columns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk_columns.d.ts","sourceRoot":"","sources":["../../../src/core/ecs/chunk_columns.ts"],"names":[],"mappings":"AAAA;;;;;;;;;KASK;AAEL,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACX,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,QAAQ,EACR,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAMnD;;;;;;;;;GASG;AACH,qBAAa,YAAY,CACxB,GAAG,CAAC,IAAI,SAAS,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE;IAE5E,gBAAgB,CAAC,IAAI,EAAG,SAAS,CAAC;IAClC;yDACqD;IACrD,IAAI,SAAK;IACT;;iCAE6B;IAC7B,KAAK,SAAK;IACV,gBAAgB,CAAC,QAAQ,EAAG,aAAa,CAAC;IAE1C;sDACkD;IAC3C,GAAG,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,EACrC,GAAG,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,GACjC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAIvC;sDACkD;IAC3C,IAAI,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,EACtC,GAAG,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,GACjC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAIhC;;;;;;;;0BAQsB;IACf,KAAK,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,WAAW;IAW3F;;;;;;0BAMsB;IACf,SAAS,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,EAC3C,GAAG,EAAE,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,GACjC,QAAQ,CAAC,WAAW,CAAC;CAQxB"}
|
|
@@ -2,8 +2,8 @@ import { ECS } from './ecs.cjs';
|
|
|
2
2
|
import { HostCommand, HostCommandQueue, HostCommandSink } from './host_commands.cjs';
|
|
3
3
|
/** One recorded update tick: the commands the apply system drained at this
|
|
4
4
|
* tick's update-phase head, plus the `dt` passed to `ecs.update(dt)`. Replay
|
|
5
|
-
*
|
|
6
|
-
* `dt` itself drives the sim (movement, timers), not
|
|
5
|
+
* must re-issue `update(dt)` for every recorded tick, even an empty one, since
|
|
6
|
+
* `dt` itself drives the sim (movement, timers), not only the commands. */
|
|
7
7
|
export interface RecordedTick {
|
|
8
8
|
/** The ECS tick (`ctx.ecsTick`) this bucket belongs to. */
|
|
9
9
|
readonly tick: number;
|
|
@@ -15,35 +15,35 @@ export interface RecordedTick {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* A recorded session: the `seed` it ran under, the seed-time commands drained at
|
|
18
|
-
* startup, and the per-tick command stream. Plain, serializable data
|
|
18
|
+
* startup, and the per-tick command stream. Plain, serializable data, the
|
|
19
19
|
* record-side mirror of the typed `HostCommand` vocabulary. Replay it with
|
|
20
|
-
* {@link replayCommandLog}
|
|
20
|
+
* {@link replayCommandLog}. Persist it with {@link serializeCommandLog}.
|
|
21
21
|
*/
|
|
22
22
|
export interface CommandLog {
|
|
23
|
-
/** Session seed
|
|
24
|
-
* Opaque to the engine
|
|
23
|
+
/** Session seed, the implementer's deterministic input (e.g. an RNG seed).
|
|
24
|
+
* Opaque to the engine, because the core tick takes only `dt`. Carried so a replay
|
|
25
25
|
* rebuilds the world the same way the original was built. */
|
|
26
26
|
readonly seed: number;
|
|
27
|
-
/** Commands drained at the PRE_STARTUP head (seed-time edits), applied before
|
|
28
|
-
* the first update tick. Enqueued
|
|
27
|
+
/** Commands drained at the `PRE_STARTUP` head (seed-time edits), applied before
|
|
28
|
+
* the first update tick. Enqueued before `ecs.startup()` on replay. */
|
|
29
29
|
readonly startup: readonly HostCommand[];
|
|
30
30
|
/** One entry per update tick, in order. */
|
|
31
31
|
readonly ticks: readonly RecordedTick[];
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
|
-
* The record side of record
|
|
34
|
+
* The record side of record and replay: a {@link HostCommandSink} the apply system
|
|
35
35
|
* feeds. Construct one with the session `seed`, hand it to
|
|
36
36
|
* `installHostCommandSeam(world, { recorder })`, and it accumulates the
|
|
37
37
|
* command stream as the ECS ticks. Read it back with {@link log} (a live view,
|
|
38
38
|
* ready to {@link serializeCommandLog serialize}).
|
|
39
39
|
*
|
|
40
|
-
* Bucketing: STARTUP
|
|
41
|
-
* the {@link startup} bucket
|
|
42
|
-
*
|
|
40
|
+
* Bucketing: a `STARTUP`-phase drain never calls {@link openTick}, so it appends to
|
|
41
|
+
* the {@link startup} bucket. Each update-phase drain {@link openTick}s its tick.
|
|
42
|
+
* Multiple update-phase drains in one tick reuse the same bucket (keyed by the
|
|
43
43
|
* ECS tick), so a frame's commands stay together. The apply system runs every
|
|
44
44
|
* tick, so every tick's `dt` is recorded even when no commands were applied.
|
|
45
45
|
*
|
|
46
|
-
* One recorder per session
|
|
46
|
+
* One recorder per session, don't share across worlds.
|
|
47
47
|
*/
|
|
48
48
|
export declare class HostCommandRecorder implements HostCommandSink {
|
|
49
49
|
/** Session seed, echoed into the produced {@link CommandLog}. */
|
|
@@ -51,29 +51,29 @@ export declare class HostCommandRecorder implements HostCommandSink {
|
|
|
51
51
|
private readonly _startup;
|
|
52
52
|
private readonly _ticks;
|
|
53
53
|
/** Where {@link record} appends. Defaults to the startup bucket (seed-time
|
|
54
|
-
* drains happen before any `openTick`)
|
|
55
|
-
private
|
|
54
|
+
* drains happen before any `openTick`). Each `openTick` repoints it. */
|
|
55
|
+
private _sink;
|
|
56
56
|
constructor(seed?: number);
|
|
57
57
|
openTick(tick: number, dt: number): void;
|
|
58
58
|
readonly record: (cmd: HostCommand) => void;
|
|
59
|
-
/** A live {@link CommandLog} view over the accumulated stream
|
|
59
|
+
/** A live {@link CommandLog} view over the accumulated stream, not a copy.
|
|
60
60
|
* Serialize it (which deep-copies through JSON) before mutating the world
|
|
61
61
|
* further if you need a stable snapshot, or use {@link snapshotLog}. */
|
|
62
62
|
log(): CommandLog;
|
|
63
|
-
/** A
|
|
64
|
-
* further recording (the safe default
|
|
63
|
+
/** A stable deep copy of the accumulated stream, safe to hold across
|
|
64
|
+
* further recording (the safe default, `log()` is the zero-copy live view). */
|
|
65
65
|
snapshotLog(): CommandLog;
|
|
66
66
|
}
|
|
67
67
|
/** Serialize a {@link CommandLog} to a JSON string. `EntityID` is a plain number
|
|
68
|
-
* and round-trips as-is
|
|
68
|
+
* and round-trips as-is. A `ComponentDef` is a callable, so the replacer writes
|
|
69
69
|
* it as `{ [DEF_TAG]: id }`. (The recorder already stripped `onSpawned`, the
|
|
70
70
|
* only other non-serializable member.)
|
|
71
71
|
*
|
|
72
72
|
* Throws {@link ECS_ERROR.COMMAND_LOG_TAG_COLLISION} if any non-def object in the
|
|
73
73
|
* log (i.e. a command's `values` map) owns a field named {@link DEF_TAG}: the
|
|
74
74
|
* reviver tags defs in-band, so such a value would be silently revived as a def,
|
|
75
|
-
* dropping the real field data. Field names are arbitrary, so this is reachable
|
|
76
|
-
*
|
|
75
|
+
* dropping the real field data. Field names are arbitrary, so this is reachable.
|
|
76
|
+
* Failing here keeps the round-trip lossless instead of corrupting on parse. */
|
|
77
77
|
export declare function serializeCommandLog(log: CommandLog): string;
|
|
78
78
|
/** Parse a {@link CommandLog} from {@link serializeCommandLog} output. */
|
|
79
79
|
export declare function deserializeCommandLog(json: string): CommandLog;
|
|
@@ -83,32 +83,32 @@ export interface ReplayResult {
|
|
|
83
83
|
readonly startupCommands: number;
|
|
84
84
|
/** Update ticks replayed. */
|
|
85
85
|
readonly ticks: number;
|
|
86
|
-
/** Per-tick `stateHash` captured after each `update`, in tick order
|
|
86
|
+
/** Per-tick `stateHash` captured after each `update`, in tick order, empty
|
|
87
87
|
* unless the world is deterministic (or `hash` was forced). Compare against
|
|
88
|
-
* the original run's per-tick hashes to prove the replay matched
|
|
88
|
+
* the original run's per-tick hashes to prove the replay matched. */
|
|
89
89
|
readonly stateHashes: readonly number[];
|
|
90
90
|
}
|
|
91
91
|
/** Options for {@link replayCommandLog}. */
|
|
92
92
|
export interface ReplayOptions {
|
|
93
93
|
/** Capture `ecs.snapshots.stateHash()` after each tick. Defaults to the world's
|
|
94
|
-
* `deterministic` flag
|
|
95
|
-
* one is not (its `stateHash` would throw
|
|
94
|
+
* `deterministic` flag, a deterministic world is hashed, a non-deterministic
|
|
95
|
+
* one is not (its `stateHash` would throw). Force `true` only on a
|
|
96
96
|
* deterministic world. */
|
|
97
97
|
readonly hash?: boolean;
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
100
100
|
* Replay a recorded {@link CommandLog} against `world`, reproducing the original
|
|
101
|
-
* session tick-for-tick. `world` must be
|
|
101
|
+
* session tick-for-tick. `world` must be fresh and not yet started, built
|
|
102
102
|
* identically to the recorded run (same components registered in the same order,
|
|
103
|
-
* same systems, same `seed` from `log.seed`) and seam-installed
|
|
103
|
+
* same systems, same `seed` from `log.seed`) and seam-installed, pass the
|
|
104
104
|
* `HostCommandQueue` `installHostCommandSeam` returned as `queue`. The driver
|
|
105
105
|
* owns startup: it enqueues the seed-time commands, calls `ecs.startup()`
|
|
106
106
|
* (which drains them at PRE_STARTUP), then for each recorded tick enqueues that
|
|
107
107
|
* tick's commands and calls `ecs.update(dt)` with the recorded `dt`.
|
|
108
108
|
*
|
|
109
|
-
* Determinism
|
|
110
|
-
* `stateHashes` this returns must equal the original run's
|
|
111
|
-
* replay fidelity. Identity caveat
|
|
109
|
+
* Determinism: with `{ deterministic: true }` the per-tick
|
|
110
|
+
* `stateHashes` this returns must equal the original run's, that equality is
|
|
111
|
+
* replay fidelity. Identity caveat: a despawned-then-respawned entity gets
|
|
112
112
|
* a fresh id, but because spawn order is reproduced, every recorded id still
|
|
113
113
|
* resolves to the same entity on replay.
|
|
114
114
|
*/
|
|
@@ -2,8 +2,8 @@ import { ECS } from './ecs.js';
|
|
|
2
2
|
import { HostCommand, HostCommandQueue, HostCommandSink } from './host_commands.js';
|
|
3
3
|
/** One recorded update tick: the commands the apply system drained at this
|
|
4
4
|
* tick's update-phase head, plus the `dt` passed to `ecs.update(dt)`. Replay
|
|
5
|
-
*
|
|
6
|
-
* `dt` itself drives the sim (movement, timers), not
|
|
5
|
+
* must re-issue `update(dt)` for every recorded tick, even an empty one, since
|
|
6
|
+
* `dt` itself drives the sim (movement, timers), not only the commands. */
|
|
7
7
|
export interface RecordedTick {
|
|
8
8
|
/** The ECS tick (`ctx.ecsTick`) this bucket belongs to. */
|
|
9
9
|
readonly tick: number;
|
|
@@ -15,35 +15,35 @@ export interface RecordedTick {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* A recorded session: the `seed` it ran under, the seed-time commands drained at
|
|
18
|
-
* startup, and the per-tick command stream. Plain, serializable data
|
|
18
|
+
* startup, and the per-tick command stream. Plain, serializable data, the
|
|
19
19
|
* record-side mirror of the typed `HostCommand` vocabulary. Replay it with
|
|
20
|
-
* {@link replayCommandLog}
|
|
20
|
+
* {@link replayCommandLog}. Persist it with {@link serializeCommandLog}.
|
|
21
21
|
*/
|
|
22
22
|
export interface CommandLog {
|
|
23
|
-
/** Session seed
|
|
24
|
-
* Opaque to the engine
|
|
23
|
+
/** Session seed, the implementer's deterministic input (e.g. an RNG seed).
|
|
24
|
+
* Opaque to the engine, because the core tick takes only `dt`. Carried so a replay
|
|
25
25
|
* rebuilds the world the same way the original was built. */
|
|
26
26
|
readonly seed: number;
|
|
27
|
-
/** Commands drained at the PRE_STARTUP head (seed-time edits), applied before
|
|
28
|
-
* the first update tick. Enqueued
|
|
27
|
+
/** Commands drained at the `PRE_STARTUP` head (seed-time edits), applied before
|
|
28
|
+
* the first update tick. Enqueued before `ecs.startup()` on replay. */
|
|
29
29
|
readonly startup: readonly HostCommand[];
|
|
30
30
|
/** One entry per update tick, in order. */
|
|
31
31
|
readonly ticks: readonly RecordedTick[];
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
|
-
* The record side of record
|
|
34
|
+
* The record side of record and replay: a {@link HostCommandSink} the apply system
|
|
35
35
|
* feeds. Construct one with the session `seed`, hand it to
|
|
36
36
|
* `installHostCommandSeam(world, { recorder })`, and it accumulates the
|
|
37
37
|
* command stream as the ECS ticks. Read it back with {@link log} (a live view,
|
|
38
38
|
* ready to {@link serializeCommandLog serialize}).
|
|
39
39
|
*
|
|
40
|
-
* Bucketing: STARTUP
|
|
41
|
-
* the {@link startup} bucket
|
|
42
|
-
*
|
|
40
|
+
* Bucketing: a `STARTUP`-phase drain never calls {@link openTick}, so it appends to
|
|
41
|
+
* the {@link startup} bucket. Each update-phase drain {@link openTick}s its tick.
|
|
42
|
+
* Multiple update-phase drains in one tick reuse the same bucket (keyed by the
|
|
43
43
|
* ECS tick), so a frame's commands stay together. The apply system runs every
|
|
44
44
|
* tick, so every tick's `dt` is recorded even when no commands were applied.
|
|
45
45
|
*
|
|
46
|
-
* One recorder per session
|
|
46
|
+
* One recorder per session, don't share across worlds.
|
|
47
47
|
*/
|
|
48
48
|
export declare class HostCommandRecorder implements HostCommandSink {
|
|
49
49
|
/** Session seed, echoed into the produced {@link CommandLog}. */
|
|
@@ -51,29 +51,29 @@ export declare class HostCommandRecorder implements HostCommandSink {
|
|
|
51
51
|
private readonly _startup;
|
|
52
52
|
private readonly _ticks;
|
|
53
53
|
/** Where {@link record} appends. Defaults to the startup bucket (seed-time
|
|
54
|
-
* drains happen before any `openTick`)
|
|
55
|
-
private
|
|
54
|
+
* drains happen before any `openTick`). Each `openTick` repoints it. */
|
|
55
|
+
private _sink;
|
|
56
56
|
constructor(seed?: number);
|
|
57
57
|
openTick(tick: number, dt: number): void;
|
|
58
58
|
readonly record: (cmd: HostCommand) => void;
|
|
59
|
-
/** A live {@link CommandLog} view over the accumulated stream
|
|
59
|
+
/** A live {@link CommandLog} view over the accumulated stream, not a copy.
|
|
60
60
|
* Serialize it (which deep-copies through JSON) before mutating the world
|
|
61
61
|
* further if you need a stable snapshot, or use {@link snapshotLog}. */
|
|
62
62
|
log(): CommandLog;
|
|
63
|
-
/** A
|
|
64
|
-
* further recording (the safe default
|
|
63
|
+
/** A stable deep copy of the accumulated stream, safe to hold across
|
|
64
|
+
* further recording (the safe default, `log()` is the zero-copy live view). */
|
|
65
65
|
snapshotLog(): CommandLog;
|
|
66
66
|
}
|
|
67
67
|
/** Serialize a {@link CommandLog} to a JSON string. `EntityID` is a plain number
|
|
68
|
-
* and round-trips as-is
|
|
68
|
+
* and round-trips as-is. A `ComponentDef` is a callable, so the replacer writes
|
|
69
69
|
* it as `{ [DEF_TAG]: id }`. (The recorder already stripped `onSpawned`, the
|
|
70
70
|
* only other non-serializable member.)
|
|
71
71
|
*
|
|
72
72
|
* Throws {@link ECS_ERROR.COMMAND_LOG_TAG_COLLISION} if any non-def object in the
|
|
73
73
|
* log (i.e. a command's `values` map) owns a field named {@link DEF_TAG}: the
|
|
74
74
|
* reviver tags defs in-band, so such a value would be silently revived as a def,
|
|
75
|
-
* dropping the real field data. Field names are arbitrary, so this is reachable
|
|
76
|
-
*
|
|
75
|
+
* dropping the real field data. Field names are arbitrary, so this is reachable.
|
|
76
|
+
* Failing here keeps the round-trip lossless instead of corrupting on parse. */
|
|
77
77
|
export declare function serializeCommandLog(log: CommandLog): string;
|
|
78
78
|
/** Parse a {@link CommandLog} from {@link serializeCommandLog} output. */
|
|
79
79
|
export declare function deserializeCommandLog(json: string): CommandLog;
|
|
@@ -83,32 +83,32 @@ export interface ReplayResult {
|
|
|
83
83
|
readonly startupCommands: number;
|
|
84
84
|
/** Update ticks replayed. */
|
|
85
85
|
readonly ticks: number;
|
|
86
|
-
/** Per-tick `stateHash` captured after each `update`, in tick order
|
|
86
|
+
/** Per-tick `stateHash` captured after each `update`, in tick order, empty
|
|
87
87
|
* unless the world is deterministic (or `hash` was forced). Compare against
|
|
88
|
-
* the original run's per-tick hashes to prove the replay matched
|
|
88
|
+
* the original run's per-tick hashes to prove the replay matched. */
|
|
89
89
|
readonly stateHashes: readonly number[];
|
|
90
90
|
}
|
|
91
91
|
/** Options for {@link replayCommandLog}. */
|
|
92
92
|
export interface ReplayOptions {
|
|
93
93
|
/** Capture `ecs.snapshots.stateHash()` after each tick. Defaults to the world's
|
|
94
|
-
* `deterministic` flag
|
|
95
|
-
* one is not (its `stateHash` would throw
|
|
94
|
+
* `deterministic` flag, a deterministic world is hashed, a non-deterministic
|
|
95
|
+
* one is not (its `stateHash` would throw). Force `true` only on a
|
|
96
96
|
* deterministic world. */
|
|
97
97
|
readonly hash?: boolean;
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
100
100
|
* Replay a recorded {@link CommandLog} against `world`, reproducing the original
|
|
101
|
-
* session tick-for-tick. `world` must be
|
|
101
|
+
* session tick-for-tick. `world` must be fresh and not yet started, built
|
|
102
102
|
* identically to the recorded run (same components registered in the same order,
|
|
103
|
-
* same systems, same `seed` from `log.seed`) and seam-installed
|
|
103
|
+
* same systems, same `seed` from `log.seed`) and seam-installed, pass the
|
|
104
104
|
* `HostCommandQueue` `installHostCommandSeam` returned as `queue`. The driver
|
|
105
105
|
* owns startup: it enqueues the seed-time commands, calls `ecs.startup()`
|
|
106
106
|
* (which drains them at PRE_STARTUP), then for each recorded tick enqueues that
|
|
107
107
|
* tick's commands and calls `ecs.update(dt)` with the recorded `dt`.
|
|
108
108
|
*
|
|
109
|
-
* Determinism
|
|
110
|
-
* `stateHashes` this returns must equal the original run's
|
|
111
|
-
* replay fidelity. Identity caveat
|
|
109
|
+
* Determinism: with `{ deterministic: true }` the per-tick
|
|
110
|
+
* `stateHashes` this returns must equal the original run's, that equality is
|
|
111
|
+
* replay fidelity. Identity caveat: a despawned-then-respawned entity gets
|
|
112
112
|
* a fresh id, but because spawn order is reproduced, every recorded id still
|
|
113
113
|
* resolves to the same entity on replay.
|
|
114
114
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command_log.d.ts","sourceRoot":"","sources":["../../../src/core/ecs/command_log.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEtF;;;2EAG2E;AAC3E,MAAM,WAAW,YAAY;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;+BAC2B;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IAC1B;;iEAE6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;2EACuE;IACvE,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;CACxC;AAiBD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAC1D,iEAAiE;IACjE,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C;4EACwE;IACxE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"command_log.d.ts","sourceRoot":"","sources":["../../../src/core/ecs/command_log.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEtF;;;2EAG2E;AAC3E,MAAM,WAAW,YAAY;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;+BAC2B;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IAC1B;;iEAE6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;2EACuE;IACvE,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;CACxC;AAiBD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IAC1D,iEAAiE;IACjE,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C;4EACwE;IACxE,OAAO,CAAC,KAAK,CAAgC;gBAEjC,IAAI,SAAI;IAIpB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAaxC,QAAQ,CAAC,MAAM,QAAS,WAAW,KAAG,IAAI,CAExC;IAEF;;4EAEwE;IACxE,GAAG,IAAI,UAAU;IAIjB;mFAC+E;IAC/E,WAAW,IAAI,UAAU;CAOzB;AAYD;;;;;;;;;gFASgF;AAChF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAqB3D;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAW9D;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;yEAEqE;IACrE,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,4CAA4C;AAC5C,MAAM,WAAW,aAAa;IAC7B;;;8BAG0B;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAC/B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,gBAAgB,EACvB,GAAG,EAAE,UAAU,EACf,IAAI,CAAC,EAAE,aAAa,GAClB,YAAY,CAcd"}
|