@reicek/neataptic-ts 0.1.21 → 0.1.23
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/.github/agents/boundary-mapper.agent.md +31 -0
- package/.github/agents/docs-scout.agent.md +29 -0
- package/.github/agents/plan-scout.agent.md +31 -0
- package/.github/agents/solid-split.agent.md +143 -0
- package/.github/copilot-instructions.md +119 -0
- package/.github/skills/solid-split-playbook/SKILL.md +220 -0
- package/.github/skills/solid-split-playbook/assets/docs-checklist.md +34 -0
- package/.github/skills/solid-split-playbook/assets/split-plan-template.md +48 -0
- package/.github/skills/solid-split-playbook/assets/split-workflow-checklist.md +51 -0
- package/.github/skills/trace-analyzer-extension/SKILL.md +63 -0
- package/.github/skills/trace-analyzer-extension/assets/extension-checklist.md +24 -0
- package/.github/skills/trace-analyzer-extension/references/analyzer-extension-workflow.md +101 -0
- package/.github/skills/trace-audit-reporting/SKILL.md +96 -0
- package/.github/skills/trace-audit-reporting/assets/performance-report-template.md +123 -0
- package/.github/skills/trace-audit-reporting/references/trace-analysis-workflow.md +132 -0
- package/package.json +7 -3
- package/plans/ES2023 migration +13 -8
- package/plans/Evolution_Training_Interoperability_Contracts.md +1 -1
- package/plans/Flappy_Bird_Folder_Documentation_Pass.md +53 -0
- package/plans/Flappy_Evolution_Worker_Documentation_Pass.md +58 -0
- package/plans/Interactive_Examples_and_Learning_Path.md +10 -2
- package/plans/Memory_Optimization.md +3 -3
- package/plans/README.md +63 -0
- package/plans/Roadmap.md +15 -3
- package/plans/asciiMaze_SOLID_split.done.md +130 -0
- package/plans/flappy_bird_SOLID_split.done.md +67 -0
- package/scripts/analyze-trace.ts +590 -0
- package/scripts/assets/theme.css +221 -34
- package/scripts/copy-examples.mjs +9 -5
- package/scripts/export-onnx.mjs +3 -3
- package/scripts/generate-bench-tables.mjs +10 -10
- package/scripts/generate-bench-tables.ts +10 -10
- package/scripts/generate-docs.ts +1415 -449
- package/scripts/render-docs-html.ts +15 -8
- package/src/README.md +127 -222
- package/src/architecture/README.md +117 -184
- package/src/architecture/architect.ts +6 -0
- package/src/architecture/layer/README.md +38 -38
- package/src/architecture/network/README.md +49 -31
- package/src/architecture/network/activate/README.md +77 -77
- package/src/architecture/network/connect/README.md +15 -13
- package/src/architecture/network/deterministic/README.md +7 -7
- package/src/architecture/network/evolve/README.md +44 -44
- package/src/architecture/network/gating/README.md +20 -20
- package/src/architecture/network/genetic/README.md +51 -51
- package/src/architecture/network/mutate/README.md +97 -97
- package/src/architecture/network/network.types.ts +39 -0
- package/src/architecture/network/onnx/README.md +264 -264
- package/src/architecture/network/prune/README.md +39 -39
- package/src/architecture/network/remove/README.md +26 -26
- package/src/architecture/network/serialize/README.md +56 -56
- package/src/architecture/network/serialize/network.serialize.json.utils.ts +1 -0
- package/src/architecture/network/serialize/network.serialize.utils.ts +6 -1
- package/src/architecture/network/serialize/network.serialize.utils.types.ts +1 -1
- package/src/architecture/network/slab/README.md +61 -61
- package/src/architecture/network/standalone/README.md +24 -24
- package/src/architecture/network/stats/README.md +9 -9
- package/src/architecture/network/topology/README.md +46 -46
- package/src/architecture/network/training/README.md +21 -21
- package/src/architecture/network.ts +114 -10
- package/src/methods/README.md +9 -87
- package/src/multithreading/README.md +8 -77
- package/src/multithreading/workers/README.md +2 -2
- package/src/multithreading/workers/browser/README.md +0 -6
- package/src/multithreading/workers/node/README.md +0 -3
- package/src/neat/README.md +623 -568
- package/src/neat/neat.evolve.population.utils.ts +29 -5
- package/src/neat/neat.helpers.ts +16 -0
- package/src/neat/neat.topology-intent.utils.ts +160 -0
- package/src/utils/README.md +18 -18
- package/test/examples/asciiMaze/README.md +59 -59
- package/test/examples/asciiMaze/asciiMaze.e2e.test.ts +14 -9
- package/test/examples/asciiMaze/browser-entry/README.md +196 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.abort.services.ts +95 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.constants.ts +23 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.curriculum.services.ts +115 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.globals.services.ts +106 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.host.services.ts +157 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.services.ts +14 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.ts +129 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.types.ts +120 -0
- package/test/examples/asciiMaze/browser-entry/browser-entry.utils.ts +98 -0
- package/test/examples/asciiMaze/browser-entry.ts +10 -576
- package/test/examples/asciiMaze/dashboardManager/README.md +276 -0
- package/test/examples/asciiMaze/dashboardManager/archive/README.md +16 -0
- package/test/examples/asciiMaze/dashboardManager/archive/dashboardManager.archive.services.ts +267 -0
- package/test/examples/asciiMaze/dashboardManager/dashboardManager.constants.ts +35 -0
- package/test/examples/asciiMaze/dashboardManager/dashboardManager.services.ts +103 -0
- package/test/examples/asciiMaze/dashboardManager/dashboardManager.ts +181 -0
- package/test/examples/asciiMaze/dashboardManager/dashboardManager.types.ts +267 -0
- package/test/examples/asciiMaze/dashboardManager/dashboardManager.utils.ts +254 -0
- package/test/examples/asciiMaze/dashboardManager/live/README.md +14 -0
- package/test/examples/asciiMaze/dashboardManager/live/dashboardManager.live.services.ts +264 -0
- package/test/examples/asciiMaze/dashboardManager/telemetry/README.md +47 -0
- package/test/examples/asciiMaze/dashboardManager/telemetry/dashboardManager.telemetry.services.ts +513 -0
- package/test/examples/asciiMaze/dashboardManager.ts +13 -2335
- package/test/examples/asciiMaze/evolutionEngine/README.md +1058 -0
- package/test/examples/asciiMaze/evolutionEngine/curriculumPhase.ts +90 -0
- package/test/examples/asciiMaze/evolutionEngine/engineState.constants.ts +36 -0
- package/test/examples/asciiMaze/evolutionEngine/engineState.ts +58 -513
- package/test/examples/asciiMaze/evolutionEngine/engineState.types.ts +212 -0
- package/test/examples/asciiMaze/evolutionEngine/engineState.utils.ts +301 -0
- package/test/examples/asciiMaze/evolutionEngine/evolutionEngine.types.ts +445 -0
- package/test/examples/asciiMaze/evolutionEngine/evolutionLoop.ts +81 -50
- package/test/examples/asciiMaze/evolutionEngine/optionsAndSetup.ts +2 -4
- package/test/examples/asciiMaze/evolutionEngine/populationDynamics.ts +17 -33
- package/test/examples/asciiMaze/evolutionEngine/populationPruning.ts +1 -1
- package/test/examples/asciiMaze/evolutionEngine/rngAndTiming.ts +1 -2
- package/test/examples/asciiMaze/evolutionEngine/sampling.ts +1 -1
- package/test/examples/asciiMaze/evolutionEngine/scratchPools.ts +2 -5
- package/test/examples/asciiMaze/evolutionEngine/setupHelpers.ts +30 -37
- package/test/examples/asciiMaze/evolutionEngine/telemetryMetrics.ts +16 -58
- package/test/examples/asciiMaze/evolutionEngine/trainingWarmStart.ts +2 -2
- package/test/examples/asciiMaze/evolutionEngine.ts +55 -55
- package/test/examples/asciiMaze/fitness.ts +2 -2
- package/test/examples/asciiMaze/fitness.types.ts +65 -0
- package/test/examples/asciiMaze/interfaces.ts +64 -1352
- package/test/examples/asciiMaze/mazeMovement/README.md +356 -0
- package/test/examples/asciiMaze/mazeMovement/finalization/README.md +49 -0
- package/test/examples/asciiMaze/mazeMovement/finalization/mazeMovement.finalization.ts +138 -0
- package/test/examples/asciiMaze/mazeMovement/mazeMovement.constants.ts +101 -0
- package/test/examples/asciiMaze/mazeMovement/mazeMovement.services.ts +230 -0
- package/test/examples/asciiMaze/mazeMovement/mazeMovement.ts +299 -0
- package/test/examples/asciiMaze/mazeMovement/mazeMovement.types.ts +185 -0
- package/test/examples/asciiMaze/mazeMovement/mazeMovement.utils.ts +153 -0
- package/test/examples/asciiMaze/mazeMovement/policy/README.md +91 -0
- package/test/examples/asciiMaze/mazeMovement/policy/mazeMovement.policy.ts +467 -0
- package/test/examples/asciiMaze/mazeMovement/runtime/README.md +95 -0
- package/test/examples/asciiMaze/mazeMovement/runtime/mazeMovement.runtime.ts +354 -0
- package/test/examples/asciiMaze/mazeMovement/shaping/README.md +124 -0
- package/test/examples/asciiMaze/mazeMovement/shaping/mazeMovement.shaping.ts +459 -0
- package/test/examples/asciiMaze/mazeMovement.ts +12 -2978
- package/test/examples/flappy_bird/README.md +193 -88
- package/test/examples/flappy_bird/browser-entry/README.md +1441 -0
- package/test/examples/flappy_bird/browser-entry/browser-entry.host.utils.ts +4 -324
- package/test/examples/flappy_bird/browser-entry/browser-entry.network-view.utils.ts +9 -396
- package/test/examples/flappy_bird/browser-entry/browser-entry.playback.utils.ts +6 -714
- package/test/examples/flappy_bird/browser-entry/browser-entry.render.types.ts +26 -3
- package/test/examples/flappy_bird/browser-entry/browser-entry.runtime.types.ts +16 -1
- package/test/examples/flappy_bird/browser-entry/browser-entry.simulation.types.ts +39 -5
- package/test/examples/flappy_bird/browser-entry/browser-entry.spawn.utils.ts +11 -31
- package/test/examples/flappy_bird/browser-entry/browser-entry.stats.types.ts +32 -4
- package/test/examples/flappy_bird/browser-entry/browser-entry.ts +11 -0
- package/test/examples/flappy_bird/browser-entry/browser-entry.types.ts +8 -0
- package/test/examples/flappy_bird/browser-entry/browser-entry.visualization.types.ts +50 -7
- package/test/examples/flappy_bird/browser-entry/browser-entry.visualization.utils.ts +21 -893
- package/test/examples/flappy_bird/browser-entry/browser-entry.worker.types.ts +91 -10
- package/test/examples/flappy_bird/browser-entry/host/README.md +318 -0
- package/test/examples/flappy_bird/browser-entry/host/host.canvas.service.ts +16 -0
- package/test/examples/flappy_bird/browser-entry/host/host.constants.ts +20 -0
- package/test/examples/flappy_bird/browser-entry/host/host.dom.service.ts +10 -0
- package/test/examples/flappy_bird/browser-entry/host/host.resize.service.ts +1 -295
- package/test/examples/flappy_bird/browser-entry/host/host.stats.service.ts +14 -0
- package/test/examples/flappy_bird/browser-entry/host/host.ts +592 -6
- package/test/examples/flappy_bird/browser-entry/host/host.types.ts +13 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/README.md +309 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.constants.ts +47 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.services.ts +392 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.ts +132 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types.ts +92 -0
- package/test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.utils.ts +272 -0
- package/test/examples/flappy_bird/browser-entry/network-view/README.md +389 -0
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.draw.service.ts +13 -0
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.labels.utils.ts +12 -0
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.layout.utils.ts +14 -0
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.topology.utils.ts +267 -0
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.ts +823 -7
- package/test/examples/flappy_bird/browser-entry/network-view/network-view.types.ts +11 -0
- package/test/examples/flappy_bird/browser-entry/playback/README.md +845 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/README.md +355 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/README.md +1068 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.batch.services.ts +64 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.cache.services.ts +207 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.constants.ts +197 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.geometry.batch.utils.ts +114 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.geometry.layout.utils.test.ts +96 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.geometry.layout.utils.ts +204 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.geometry.services.ts +49 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.geometry.utils.ts +313 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.layer.services.ts +81 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.math.utils.test.ts +33 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.math.utils.ts +201 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.pulse.selection.utils.ts +171 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.pulse.timing.utils.ts +124 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.pulse.utils.test.ts +279 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.pulse.utils.ts +132 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.scene.services.ts +26 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.services.ts +65 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.ts +48 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.types.ts +342 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/playback.background.ground-grid.utils.ts +10 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.cache.services.ts +96 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.constants.ts +127 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.draw.services.ts +184 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.scene.services.ts +64 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.services.ts +6 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.ts +53 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.types.ts +105 -0
- package/test/examples/flappy_bird/browser-entry/playback/background/playback.background.utils.ts +100 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/README.md +541 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.bird.utils.ts +180 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.canvas.services.ts +77 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.entity.services.ts +167 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.scene.services.ts +57 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.service.test.ts +176 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.service.ts +113 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.services.ts +35 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.trail.utils.ts +248 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.types.ts +103 -0
- package/test/examples/flappy_bird/browser-entry/playback/frame-render/playback.frame-render.utils.ts +11 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.constants.ts +1 -1
- package/test/examples/flappy_bird/browser-entry/playback/playback.frame-render.service.ts +10 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.iteration.services.ts +192 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.loop.service.ts +12 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.orchestration.types.ts +78 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.render.pipe-outline.service.ts +128 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.render.service.ts +1 -116
- package/test/examples/flappy_bird/browser-entry/playback/playback.session.services.ts +184 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.snapshot.utils.test.ts +121 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.snapshot.utils.ts +8 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.starfield.layer.services.ts +36 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.starfield.service.ts +11 -128
- package/test/examples/flappy_bird/browser-entry/playback/playback.starfield.services.ts +268 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.starfield.types.ts +91 -0
- package/test/examples/flappy_bird/browser-entry/playback/playback.starfield.utils.ts +11 -4
- package/test/examples/flappy_bird/browser-entry/playback/playback.trail.utils.ts +9 -86
- package/test/examples/flappy_bird/browser-entry/playback/playback.ts +75 -7
- package/test/examples/flappy_bird/browser-entry/playback/playback.types.ts +12 -9
- package/test/examples/flappy_bird/browser-entry/playback/playback.worker-channel.utils.ts +11 -123
- package/test/examples/flappy_bird/browser-entry/playback/snapshot/README.md +55 -0
- package/test/examples/flappy_bird/browser-entry/playback/snapshot/playback.snapshot.services.ts +103 -0
- package/test/examples/flappy_bird/browser-entry/playback/snapshot/playback.snapshot.summary.utils.test.ts +45 -0
- package/test/examples/flappy_bird/browser-entry/playback/snapshot/playback.snapshot.summary.utils.ts +28 -0
- package/test/examples/flappy_bird/browser-entry/playback/trail/README.md +95 -0
- package/test/examples/flappy_bird/browser-entry/playback/trail/playback.trail.history.services.test.ts +35 -0
- package/test/examples/flappy_bird/browser-entry/playback/trail/playback.trail.history.services.ts +64 -0
- package/test/examples/flappy_bird/browser-entry/playback/trail/playback.trail.opacity.utils.test.ts +37 -0
- package/test/examples/flappy_bird/browser-entry/playback/trail/playback.trail.opacity.utils.ts +74 -0
- package/test/examples/flappy_bird/browser-entry/playback/worker-channel/README.md +71 -0
- package/test/examples/flappy_bird/browser-entry/playback/worker-channel/playback.worker-channel.request.services.ts +45 -0
- package/test/examples/flappy_bird/browser-entry/playback/worker-channel/playback.worker-channel.summary.services.ts +74 -0
- package/test/examples/flappy_bird/browser-entry/playback/worker-channel/playback.worker-channel.types.ts +53 -0
- package/test/examples/flappy_bird/browser-entry/runtime/README.md +304 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.browser-globals.service.ts +15 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.errors.ts +17 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.evolution-launch.service.ts +56 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.evolution-loop.service.ts +19 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.lifecycle.service.ts +96 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.startup.service.ts +92 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.telemetry.service.ts +24 -0
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.ts +31 -121
- package/test/examples/flappy_bird/browser-entry/runtime/runtime.types.ts +65 -0
- package/test/examples/flappy_bird/browser-entry/visualization/README.md +568 -0
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.colors.utils.ts +26 -0
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.constants.ts +110 -0
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.draw.service.ts +979 -19
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.legend.utils.ts +157 -3
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.topology.utils.ts +13 -27
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.ts +7 -20
- package/test/examples/flappy_bird/browser-entry/visualization/visualization.types.ts +14 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/README.md +238 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.errors.ts +11 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.generation.service.ts +12 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.playback.service.test.ts +143 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.playback.service.ts +140 -14
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.request.service.ts +27 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.ts +8 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.types.ts +23 -0
- package/test/examples/flappy_bird/browser-entry/worker-channel/worker-channel.url.service.ts +5 -0
- package/test/examples/flappy_bird/constants/README.md +1163 -0
- package/test/examples/flappy_bird/constants/constants.birds.ts +16 -38
- package/test/examples/flappy_bird/constants/constants.difficulty.ts +21 -0
- package/test/examples/flappy_bird/constants/constants.network-view.ts +24 -0
- package/test/examples/flappy_bird/constants/constants.network.ts +1 -1
- package/test/examples/flappy_bird/constants/constants.observation.ts +7 -0
- package/test/examples/flappy_bird/constants/constants.palette.ts +9 -2
- package/test/examples/flappy_bird/constants/constants.physics.ts +9 -0
- package/test/examples/flappy_bird/constants/constants.pipe-render.ts +3 -0
- package/test/examples/flappy_bird/constants/constants.pipes.ts +22 -3
- package/test/examples/flappy_bird/constants/constants.runtime.ts +28 -4
- package/test/examples/flappy_bird/constants/constants.starfield.ts +78 -3
- package/test/examples/flappy_bird/constants/constants.ts +6 -0
- package/test/examples/flappy_bird/environment/README.md +182 -0
- package/test/examples/flappy_bird/environment/environment.collision.utils.ts +7 -0
- package/test/examples/flappy_bird/environment/environment.constants.ts +16 -3
- package/test/examples/flappy_bird/environment/environment.observation.utils.ts +12 -19
- package/test/examples/flappy_bird/environment/environment.state.service.ts +10 -0
- package/test/examples/flappy_bird/environment/environment.step.service.ts +15 -66
- package/test/examples/flappy_bird/environment/environment.types.ts +14 -0
- package/test/examples/flappy_bird/evaluation/README.md +155 -0
- package/test/examples/flappy_bird/evaluation/evaluation.constants.ts +23 -4
- package/test/examples/flappy_bird/evaluation/evaluation.fitness.utils.ts +16 -1
- package/test/examples/flappy_bird/evaluation/evaluation.rollout.service.ts +7 -374
- package/test/examples/flappy_bird/evaluation/evaluation.seed.utils.ts +4 -0
- package/test/examples/flappy_bird/evaluation/evaluation.types.ts +18 -2
- package/test/examples/flappy_bird/evaluation/rollout/README.md +355 -0
- package/test/examples/flappy_bird/evaluation/rollout/evaluation.rollout.constants.ts +38 -0
- package/test/examples/flappy_bird/evaluation/rollout/evaluation.rollout.service.ts +71 -0
- package/test/examples/flappy_bird/evaluation/rollout/evaluation.rollout.services.ts +338 -0
- package/test/examples/flappy_bird/evaluation/rollout/evaluation.rollout.types.ts +69 -0
- package/test/examples/flappy_bird/evaluation/rollout/evaluation.rollout.utils.ts +399 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/README.md +845 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.constants.ts +49 -7
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.errors.ts +34 -3
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.evolution.service.ts +22 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.playback.service.ts +62 -26
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.protocol.service.ts +27 -1
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.runtime.service.ts +23 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.simulation.frame.service.ts +378 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.simulation.types.ts +22 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.simulation.utils.ts +20 -203
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.snapshot.utils.test.ts +94 -0
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.snapshot.utils.ts +78 -13
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.ts +235 -344
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.types.ts +170 -22
- package/test/examples/flappy_bird/flappy-evolution-worker/flappy-evolution-worker.warm-start.service.ts +314 -0
- package/test/examples/flappy_bird/flappy.simulation.shared.utils.ts +17 -0
- package/test/examples/flappy_bird/flappyEnvironment.ts +21 -0
- package/test/examples/flappy_bird/flappyEvaluation.ts +12 -0
- package/test/examples/flappy_bird/flappyEvolution.worker.ts +7 -0
- package/test/examples/flappy_bird/index.ts +8 -2
- package/test/examples/flappy_bird/rng.ts +10 -0
- package/test/examples/flappy_bird/simulation-shared/README.md +518 -0
- package/test/examples/flappy_bird/simulation-shared/observation/README.md +255 -0
- package/test/examples/flappy_bird/simulation-shared/observation/observation.features.utils.ts +339 -0
- package/test/examples/flappy_bird/simulation-shared/observation/observation.ts +19 -0
- package/test/examples/flappy_bird/simulation-shared/observation/observation.vector.utils.ts +81 -0
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.constants.ts +3 -0
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.control.utils.ts +6 -0
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.difficulty.utils.ts +9 -0
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.errors.ts +10 -1
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.memory.utils.ts +18 -0
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.observation.utils.ts +7 -402
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.spawn.utils.ts +36 -6
- package/test/examples/flappy_bird/{evaluation/evaluation.statistics.utils.ts → simulation-shared/simulation-shared.statistics.utils.ts} +30 -9
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.types.ts +38 -5
- package/test/examples/flappy_bird/trainFlappyBird.ts +13 -0
- package/test/examples/flappy_bird/trainer/README.md +676 -0
- package/test/examples/flappy_bird/trainer/evaluation/README.md +253 -0
- package/test/examples/flappy_bird/trainer/evaluation/trainer.evaluation.service.constants.ts +15 -0
- package/test/examples/flappy_bird/trainer/evaluation/trainer.evaluation.service.services.ts +86 -0
- package/test/examples/flappy_bird/trainer/evaluation/trainer.evaluation.service.ts +187 -0
- package/test/examples/flappy_bird/trainer/evaluation/trainer.evaluation.service.types.ts +32 -0
- package/test/examples/flappy_bird/trainer/evaluation/trainer.evaluation.service.utils.ts +182 -0
- package/test/examples/flappy_bird/trainer/trainer.evaluation.service.ts +13 -0
- package/test/examples/flappy_bird/trainer/trainer.fitness.service.ts +23 -1
- package/test/examples/flappy_bird/trainer/trainer.loop.service.ts +17 -1
- package/test/examples/flappy_bird/trainer/trainer.report.service.services.ts +181 -0
- package/test/examples/flappy_bird/trainer/trainer.report.service.ts +136 -0
- package/test/examples/flappy_bird/trainer/trainer.selection.utils.ts +89 -0
- package/test/examples/flappy_bird/trainer/trainer.setup.service.ts +22 -0
- package/test/examples/flappy_bird/trainer/trainer.signals.service.ts +8 -0
- package/test/examples/flappy_bird/trainer/trainer.ts +38 -553
- package/test/examples/flappy_bird/trainer/trainer.types.ts +44 -7
- package/test/neat/neat.topology-intent.test.ts +129 -0
- package/test/network/network.topology-intent.test.ts +44 -0
- package/test/examples/flappy_bird/browser-entry/browser-entry.utils.ts +0 -12
- package/test/examples/flappy_bird/environment/environment.ts +0 -7
- package/test/examples/flappy_bird/evaluation/evaluation.ts +0 -7
- package/test/examples/flappy_bird/simulation-shared/simulation-shared.ts +0 -15
- package/test/examples/flappy_bird/trainer/trainer.statistics.utils.ts +0 -78
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
# browser-entry/host/resize
|
|
2
|
+
|
|
3
|
+
## browser-entry/host/resize/host.resize.service.types.ts
|
|
4
|
+
|
|
5
|
+
### host.resize.service.types
|
|
6
|
+
|
|
7
|
+
Shared contracts for responsive browser-host sizing.
|
|
8
|
+
|
|
9
|
+
The resize subsystem coordinates several DOM elements and several layout modes
|
|
10
|
+
at once, so these types capture the measured viewport state, the active mode
|
|
11
|
+
flags, and the grouped DOM handles needed by the appliers.
|
|
12
|
+
|
|
13
|
+
### DeferredNetworkRedrawController
|
|
14
|
+
|
|
15
|
+
Deferred redraw controller used after layout-affecting changes.
|
|
16
|
+
|
|
17
|
+
The network panel redraw is deferred because flexbox and canvas sizing can
|
|
18
|
+
settle over multiple animation frames.
|
|
19
|
+
|
|
20
|
+
### ResponsiveViewportLayoutContext
|
|
21
|
+
|
|
22
|
+
Full responsive layout context shared across sizing helpers.
|
|
23
|
+
|
|
24
|
+
This merges measurements and mode flags into the one context object used by
|
|
25
|
+
the resize appliers.
|
|
26
|
+
|
|
27
|
+
### ResponsiveViewportLayoutFlags
|
|
28
|
+
|
|
29
|
+
Layout-mode flags resolved from the current viewport.
|
|
30
|
+
|
|
31
|
+
The host currently distinguishes between minimal mobile, landscape split, and
|
|
32
|
+
compact network-only variants.
|
|
33
|
+
|
|
34
|
+
### ResponsiveViewportMeasurements
|
|
35
|
+
|
|
36
|
+
Measured viewport and panel budgets for responsive layout.
|
|
37
|
+
|
|
38
|
+
These values are the raw numeric inputs to the resize policy before any mode
|
|
39
|
+
branching happens.
|
|
40
|
+
|
|
41
|
+
### ResponsiveViewportSizingElements
|
|
42
|
+
|
|
43
|
+
Shared contracts for responsive browser-host sizing.
|
|
44
|
+
|
|
45
|
+
The resize subsystem coordinates several DOM elements and several layout modes
|
|
46
|
+
at once, so these types capture the measured viewport state, the active mode
|
|
47
|
+
flags, and the grouped DOM handles needed by the appliers.
|
|
48
|
+
|
|
49
|
+
### SimulationCanvasBounds
|
|
50
|
+
|
|
51
|
+
Width and height bounds for the simulation canvas.
|
|
52
|
+
|
|
53
|
+
These are the final pixel budgets the simulation canvas may consume for the
|
|
54
|
+
current responsive layout.
|
|
55
|
+
|
|
56
|
+
### StatsPanelDimensions
|
|
57
|
+
|
|
58
|
+
Resolved height and width budgets for the stats panel.
|
|
59
|
+
|
|
60
|
+
The stats panel dimensions are derived from the current viewport budget after
|
|
61
|
+
minimum readable canvas space is reserved.
|
|
62
|
+
|
|
63
|
+
## browser-entry/host/resize/host.resize.service.ts
|
|
64
|
+
|
|
65
|
+
### applyResponsiveViewportSizing
|
|
66
|
+
|
|
67
|
+
`(responsiveViewportSizingElements: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportSizingElements, deferredNetworkRedrawController: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").DeferredNetworkRedrawController, onNetworkResize: () => void) => void`
|
|
68
|
+
|
|
69
|
+
Applies responsive sizing to the simulation and network canvases.
|
|
70
|
+
|
|
71
|
+
The resize flow is intentionally split into two branches: the minimal mobile
|
|
72
|
+
path and the richer standard path used for tablet and desktop layouts.
|
|
73
|
+
|
|
74
|
+
Parameters:
|
|
75
|
+
- `responsiveViewportSizingElements` - - Host elements participating in layout.
|
|
76
|
+
- `deferredNetworkRedrawController` - - Deferred redraw controller.
|
|
77
|
+
- `onNetworkResize` - - Immediate network resize callback.
|
|
78
|
+
|
|
79
|
+
Returns: Nothing.
|
|
80
|
+
|
|
81
|
+
### installResponsiveViewportSizing
|
|
82
|
+
|
|
83
|
+
`(canvas: HTMLCanvasElement, containerElement: HTMLElement, mainSplitContainer: HTMLElement, statsContainer: HTMLElement, statsSplitContainer: HTMLElement, statsTableHost: HTMLElement, networkCanvas: HTMLCanvasElement, networkCanvasHost: HTMLElement, onNetworkResize: () => void) => void`
|
|
84
|
+
|
|
85
|
+
Top-level responsive sizing orchestration for the browser host.
|
|
86
|
+
|
|
87
|
+
This module wires the host resize lifecycle together: gather the relevant DOM
|
|
88
|
+
elements, run the initial layout pass, and keep canvas sizing synchronized with
|
|
89
|
+
viewport changes over time.
|
|
90
|
+
|
|
91
|
+
## browser-entry/host/resize/host.resize.service.services.ts
|
|
92
|
+
|
|
93
|
+
### applyMinimalMobileViewportLayout
|
|
94
|
+
|
|
95
|
+
`(responsiveViewportSizingElements: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportSizingElements, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext) => void`
|
|
96
|
+
|
|
97
|
+
Applies the minimal mobile layout that hides the auxiliary panes.
|
|
98
|
+
|
|
99
|
+
On the smallest viewports, the resize policy prioritizes the simulation canvas
|
|
100
|
+
and temporarily hides the stats/network panel to preserve playable space.
|
|
101
|
+
|
|
102
|
+
Parameters:
|
|
103
|
+
- `responsiveViewportSizingElements` - - Host elements participating in layout.
|
|
104
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
105
|
+
|
|
106
|
+
Returns: Nothing.
|
|
107
|
+
|
|
108
|
+
### applyNetworkCanvasHostHeight
|
|
109
|
+
|
|
110
|
+
`(networkCanvasHost: HTMLElement, deferredNetworkRedrawController: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").DeferredNetworkRedrawController) => void`
|
|
111
|
+
|
|
112
|
+
Applies the fixed network host height and queues redraw when it changes.
|
|
113
|
+
|
|
114
|
+
The network panel uses a fixed-height target so the visualization remains
|
|
115
|
+
readable and stable across layout transitions.
|
|
116
|
+
|
|
117
|
+
Parameters:
|
|
118
|
+
- `networkCanvasHost` - - Network canvas host element.
|
|
119
|
+
- `deferredNetworkRedrawController` - - Deferred redraw controller.
|
|
120
|
+
|
|
121
|
+
Returns: Nothing.
|
|
122
|
+
|
|
123
|
+
### applyResponsiveCanvasBounds
|
|
124
|
+
|
|
125
|
+
`(responsiveViewportSizingElements: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportSizingElements, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext, statsPanelDimensions: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").StatsPanelDimensions, onNetworkResize: () => void) => void`
|
|
126
|
+
|
|
127
|
+
Applies simulation and network canvas backing sizes for the active layout.
|
|
128
|
+
|
|
129
|
+
Once panel dimensions are known, this helper updates both backing stores and
|
|
130
|
+
triggers an immediate network redraw when the visualization canvas changed.
|
|
131
|
+
|
|
132
|
+
Parameters:
|
|
133
|
+
- `responsiveViewportSizingElements` - - Host elements participating in layout.
|
|
134
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
135
|
+
- `statsPanelDimensions` - - Resolved stats panel dimensions.
|
|
136
|
+
- `onNetworkResize` - - Immediate network resize callback.
|
|
137
|
+
|
|
138
|
+
Returns: Nothing.
|
|
139
|
+
|
|
140
|
+
### applySplitContainerLayoutStyles
|
|
141
|
+
|
|
142
|
+
`(responsiveViewportSizingElements: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportSizingElements, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext) => void`
|
|
143
|
+
|
|
144
|
+
Applies the split-container styles for the standard layout modes.
|
|
145
|
+
|
|
146
|
+
This helper decides whether the main panels should stack or sit side-by-side,
|
|
147
|
+
then applies the matching flexbox configuration.
|
|
148
|
+
|
|
149
|
+
Parameters:
|
|
150
|
+
- `responsiveViewportSizingElements` - - Host elements participating in layout.
|
|
151
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
152
|
+
|
|
153
|
+
Returns: Nothing.
|
|
154
|
+
|
|
155
|
+
### applyStandardViewportLayout
|
|
156
|
+
|
|
157
|
+
`(responsiveViewportSizingElements: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportSizingElements, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext, deferredNetworkRedrawController: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").DeferredNetworkRedrawController) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").StatsPanelDimensions`
|
|
158
|
+
|
|
159
|
+
Applies the standard tablet and desktop layout and returns panel dimensions.
|
|
160
|
+
|
|
161
|
+
This path keeps the auxiliary panes visible and resolves a balanced split
|
|
162
|
+
between simulation and side-panel content.
|
|
163
|
+
|
|
164
|
+
Parameters:
|
|
165
|
+
- `responsiveViewportSizingElements` - - Host elements participating in layout.
|
|
166
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
167
|
+
- `deferredNetworkRedrawController` - - Deferred redraw controller.
|
|
168
|
+
|
|
169
|
+
Returns: Resolved stats panel dimensions.
|
|
170
|
+
|
|
171
|
+
### applyStatsContainerDimensions
|
|
172
|
+
|
|
173
|
+
`(statsContainer: HTMLElement, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext, statsPanelDimensions: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").StatsPanelDimensions) => void`
|
|
174
|
+
|
|
175
|
+
Applies the resolved dimensions and scrolling rules to the stats container.
|
|
176
|
+
|
|
177
|
+
Parameters:
|
|
178
|
+
- `statsContainer` - - Stats host element.
|
|
179
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
180
|
+
- `statsPanelDimensions` - - Resolved stats panel dimensions.
|
|
181
|
+
|
|
182
|
+
Returns: Nothing.
|
|
183
|
+
|
|
184
|
+
### applyStatsPaneOrdering
|
|
185
|
+
|
|
186
|
+
`(statsTableHost: HTMLElement, networkCanvasHost: HTMLElement, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext) => void`
|
|
187
|
+
|
|
188
|
+
Applies ordering and flex styles for stats and network panes.
|
|
189
|
+
|
|
190
|
+
Compact layouts may hide the stats table or promote the network panel so the
|
|
191
|
+
most informative content remains visible in constrained space.
|
|
192
|
+
|
|
193
|
+
Parameters:
|
|
194
|
+
- `statsTableHost` - - Stats table host element.
|
|
195
|
+
- `networkCanvasHost` - - Network canvas host element.
|
|
196
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
197
|
+
|
|
198
|
+
Returns: Nothing.
|
|
199
|
+
|
|
200
|
+
### createDeferredNetworkRedrawController
|
|
201
|
+
|
|
202
|
+
`(onNetworkResize: () => void) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").DeferredNetworkRedrawController`
|
|
203
|
+
|
|
204
|
+
Layout-application helpers for responsive host sizing.
|
|
205
|
+
|
|
206
|
+
These helpers implement the actual responsive policy once the viewport has
|
|
207
|
+
been measured: choose a layout mode, resize canvases, reorder panes, and
|
|
208
|
+
trigger redraws when the network panel geometry changes.
|
|
209
|
+
|
|
210
|
+
### installResponsiveViewportSizingListeners
|
|
211
|
+
|
|
212
|
+
`(containerElement: HTMLElement, applyCanvasSize: () => void, deferredNetworkRedrawController: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").DeferredNetworkRedrawController) => void`
|
|
213
|
+
|
|
214
|
+
Installs window and container listeners for responsive host sizing.
|
|
215
|
+
|
|
216
|
+
The host listens both to global window resizes and to container-specific size
|
|
217
|
+
changes when `ResizeObserver` is available.
|
|
218
|
+
|
|
219
|
+
Parameters:
|
|
220
|
+
- `containerElement` - - Width and height source.
|
|
221
|
+
- `applyCanvasSize` - - Shared sizing callback.
|
|
222
|
+
- `deferredNetworkRedrawController` - - Deferred redraw controller.
|
|
223
|
+
|
|
224
|
+
Returns: Nothing.
|
|
225
|
+
|
|
226
|
+
## browser-entry/host/resize/host.resize.service.constants.ts
|
|
227
|
+
|
|
228
|
+
### host.resize.service.constants
|
|
229
|
+
|
|
230
|
+
Shared constants for responsive host sizing.
|
|
231
|
+
|
|
232
|
+
These values keep the resize policy readable by naming the split ratio, the
|
|
233
|
+
minimum positive dimension, and the CSS token bundle used by layout appliers.
|
|
234
|
+
|
|
235
|
+
### FLAPPY_HOST_RESIZE_MIN_DIMENSION_PX
|
|
236
|
+
|
|
237
|
+
### FLAPPY_HOST_RESIZE_SPLIT_RATIO
|
|
238
|
+
|
|
239
|
+
### FLAPPY_HOST_RESIZE_STYLE_TOKENS
|
|
240
|
+
|
|
241
|
+
## browser-entry/host/resize/host.resize.service.utils.ts
|
|
242
|
+
|
|
243
|
+
### resolveHeaderHeightPx
|
|
244
|
+
|
|
245
|
+
`(containerElement: HTMLElement) => number`
|
|
246
|
+
|
|
247
|
+
Resolves the header canvas height, if present.
|
|
248
|
+
|
|
249
|
+
The resize system subtracts the header from the total container height before
|
|
250
|
+
budgeting the main panels.
|
|
251
|
+
|
|
252
|
+
Parameters:
|
|
253
|
+
- `containerElement` - - Width and height source.
|
|
254
|
+
|
|
255
|
+
Returns: Header height in pixels.
|
|
256
|
+
|
|
257
|
+
### resolveMinimalMobileCanvasBounds
|
|
258
|
+
|
|
259
|
+
`(containerElement: HTMLElement, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").SimulationCanvasBounds`
|
|
260
|
+
|
|
261
|
+
Resolves the simulation canvas bounds for the minimal mobile layout.
|
|
262
|
+
|
|
263
|
+
Minimal mobile mode spends nearly the entire available budget on the main
|
|
264
|
+
simulation surface.
|
|
265
|
+
|
|
266
|
+
Parameters:
|
|
267
|
+
- `containerElement` - - Width and height source.
|
|
268
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
269
|
+
|
|
270
|
+
Returns: Simulation canvas bounds.
|
|
271
|
+
|
|
272
|
+
### resolveResponsiveViewportLayoutContext
|
|
273
|
+
|
|
274
|
+
`(containerElement: HTMLElement, statsContainer: HTMLElement, networkCanvasHost: HTMLElement) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext`
|
|
275
|
+
|
|
276
|
+
Measurement and budget helpers for responsive host sizing.
|
|
277
|
+
|
|
278
|
+
These functions convert live DOM dimensions into the numeric budgets used by
|
|
279
|
+
the resize appliers.
|
|
280
|
+
|
|
281
|
+
### resolveSimulationCanvasBounds
|
|
282
|
+
|
|
283
|
+
`(containerElement: HTMLElement, responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext, statsPanelDimensions: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").StatsPanelDimensions) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").SimulationCanvasBounds`
|
|
284
|
+
|
|
285
|
+
Resolves simulation canvas bounds from the current viewport layout.
|
|
286
|
+
|
|
287
|
+
The simulation canvas consumes the remainder after the stats/network budget and
|
|
288
|
+
fixed gutters are applied.
|
|
289
|
+
|
|
290
|
+
Parameters:
|
|
291
|
+
- `containerElement` - - Width and height source.
|
|
292
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
293
|
+
- `statsPanelDimensions` - - Resolved stats panel dimensions.
|
|
294
|
+
|
|
295
|
+
Returns: Simulation canvas bounds.
|
|
296
|
+
|
|
297
|
+
### resolveStatsPanelDimensions
|
|
298
|
+
|
|
299
|
+
`(responsiveViewportLayoutContext: import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").ResponsiveViewportLayoutContext) => import("test/examples/flappy_bird/browser-entry/host/resize/host.resize.service.types").StatsPanelDimensions`
|
|
300
|
+
|
|
301
|
+
Resolves the stats panel height and width budgets.
|
|
302
|
+
|
|
303
|
+
The stats panel budget is computed after preserving a minimum readable region
|
|
304
|
+
for the simulation canvas.
|
|
305
|
+
|
|
306
|
+
Parameters:
|
|
307
|
+
- `responsiveViewportLayoutContext` - - Responsive layout context.
|
|
308
|
+
|
|
309
|
+
Returns: Stats panel dimensions.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared constants for responsive host sizing.
|
|
3
|
+
*
|
|
4
|
+
* These values keep the resize policy readable by naming the split ratio, the
|
|
5
|
+
* minimum positive dimension, and the CSS token bundle used by layout appliers.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Shared CSS tokens used by the host resize layout appliers.
|
|
10
|
+
*
|
|
11
|
+
* Centralizing these string tokens reduces repetition across the responsive DOM
|
|
12
|
+
* style appliers.
|
|
13
|
+
*/
|
|
14
|
+
export const FLAPPY_HOST_RESIZE_STYLE_TOKENS = {
|
|
15
|
+
rowDirection: 'row' as CSSStyleDeclaration['flexDirection'],
|
|
16
|
+
columnDirection: 'column' as CSSStyleDeclaration['flexDirection'],
|
|
17
|
+
stretchAlignment: 'stretch' as CSSStyleDeclaration['alignItems'],
|
|
18
|
+
flexStartAlignment: 'flex-start' as CSSStyleDeclaration['alignItems'],
|
|
19
|
+
hiddenDisplay: 'none' as CSSStyleDeclaration['display'],
|
|
20
|
+
blockDisplay: 'block' as CSSStyleDeclaration['display'],
|
|
21
|
+
autoSize: 'auto',
|
|
22
|
+
zeroSizePx: '0px',
|
|
23
|
+
fullSize: '100%',
|
|
24
|
+
hiddenOverflow: 'hidden' as CSSStyleDeclaration['overflowY'],
|
|
25
|
+
autoOverflow: 'auto' as CSSStyleDeclaration['overflowY'],
|
|
26
|
+
primaryOrder: '0',
|
|
27
|
+
secondaryOrder: '1',
|
|
28
|
+
autoFlex: '0 0 auto',
|
|
29
|
+
fillFlex: '1 1 0',
|
|
30
|
+
fullFlex: '1 1 100%',
|
|
31
|
+
} as const;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Split ratio used when dividing the viewport between simulation and stats.
|
|
35
|
+
*
|
|
36
|
+
* A value of `0.5` means the standard stacked layout begins from an even split
|
|
37
|
+
* before clamping against minimum-height constraints.
|
|
38
|
+
*/
|
|
39
|
+
export const FLAPPY_HOST_RESIZE_SPLIT_RATIO = 0.5;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Minimum positive dimension enforced by resize math.
|
|
43
|
+
*
|
|
44
|
+
* This prevents zero or negative canvas sizes from leaking into downstream
|
|
45
|
+
* layout and backing-store calculations.
|
|
46
|
+
*/
|
|
47
|
+
export const FLAPPY_HOST_RESIZE_MIN_DIMENSION_PX = 1;
|