code-battles 1.5.8 → 1.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/code_battles/__init__.py +31 -0
  2. package/dist/code_battles/__pycache__/__init__.cpython-312.pyc +0 -0
  3. package/dist/code_battles/__pycache__/battles.cpython-312.pyc +0 -0
  4. package/dist/code_battles/__pycache__/utilities.cpython-312.pyc +0 -0
  5. package/dist/code_battles/battles.py +970 -0
  6. package/dist/code_battles/js.pyi +136 -0
  7. package/dist/code_battles/pyodide/ffi/__init__.pyi +2 -0
  8. package/dist/code_battles/pyscript/__init__.pyi +4 -0
  9. package/dist/code_battles/pyscript/ffi/__init__.pyi +3 -0
  10. package/dist/code_battles/utilities.py +321 -0
  11. package/dist/pyscript/codemirror-BEtcgaoQ.js +2 -0
  12. package/dist/pyscript/codemirror-BEtcgaoQ.js.map +1 -0
  13. package/dist/pyscript/codemirror_commands-DDxffOmd.js +2 -0
  14. package/dist/pyscript/codemirror_commands-DDxffOmd.js.map +1 -0
  15. package/dist/pyscript/codemirror_lang-python-CnWnFqxD.js +2 -0
  16. package/dist/pyscript/codemirror_lang-python-CnWnFqxD.js.map +1 -0
  17. package/dist/pyscript/codemirror_language-CjmvX4ix.js +2 -0
  18. package/dist/pyscript/codemirror_language-CjmvX4ix.js.map +1 -0
  19. package/dist/pyscript/codemirror_state-D1qTXrff.js +2 -0
  20. package/dist/pyscript/codemirror_state-D1qTXrff.js.map +1 -0
  21. package/dist/pyscript/codemirror_view-DVb8uYMr.js +2 -0
  22. package/dist/pyscript/codemirror_view-DVb8uYMr.js.map +1 -0
  23. package/dist/pyscript/core-CjO3FOKB.js +2 -0
  24. package/dist/pyscript/core-CjO3FOKB.js.map +1 -0
  25. package/dist/pyscript/core.css +1 -0
  26. package/dist/pyscript/core.js +2 -0
  27. package/dist/pyscript/core.js.map +1 -0
  28. package/dist/pyscript/deprecations-manager-pFtn19mE.js +2 -0
  29. package/dist/pyscript/deprecations-manager-pFtn19mE.js.map +1 -0
  30. package/dist/pyscript/error-tq-z48YI.js +2 -0
  31. package/dist/pyscript/error-tq-z48YI.js.map +1 -0
  32. package/dist/pyscript/index-S1Do43bx.js +2 -0
  33. package/dist/pyscript/index-S1Do43bx.js.map +1 -0
  34. package/dist/pyscript/mpy-DovD7Qjy.js +2 -0
  35. package/dist/pyscript/mpy-DovD7Qjy.js.map +1 -0
  36. package/dist/pyscript/py-BUsUWVJg.js +2 -0
  37. package/dist/pyscript/py-BUsUWVJg.js.map +1 -0
  38. package/dist/pyscript/py-editor-CeySmmer.js +2 -0
  39. package/dist/pyscript/py-editor-CeySmmer.js.map +1 -0
  40. package/dist/pyscript/py-terminal-CH_wV7wQ.js +2 -0
  41. package/dist/pyscript/py-terminal-CH_wV7wQ.js.map +1 -0
  42. package/dist/pyscript/storage.js +2 -0
  43. package/dist/pyscript/storage.js.map +1 -0
  44. package/dist/pyscript/toml-CvAfdf9_.js +3 -0
  45. package/dist/pyscript/toml-CvAfdf9_.js.map +1 -0
  46. package/dist/pyscript/toml-DiUM0_qs.js +3 -0
  47. package/dist/pyscript/toml-DiUM0_qs.js.map +1 -0
  48. package/dist/pyscript/xterm-BY7uk_OU.js +2 -0
  49. package/dist/pyscript/xterm-BY7uk_OU.js.map +1 -0
  50. package/dist/pyscript/xterm-readline-CZfBw7ic.js +2 -0
  51. package/dist/pyscript/xterm-readline-CZfBw7ic.js.map +1 -0
  52. package/dist/pyscript/xterm.css +7 -0
  53. package/dist/pyscript/xterm_addon-fit--gyF3PcZ.js +2 -0
  54. package/dist/pyscript/xterm_addon-fit--gyF3PcZ.js.map +1 -0
  55. package/dist/pyscript/xterm_addon-web-links-Cnej-nJ6.js +2 -0
  56. package/dist/pyscript/xterm_addon-web-links-Cnej-nJ6.js.map +1 -0
  57. package/dist/pyscript/zip-DrwYHuF9.js +2 -0
  58. package/dist/pyscript/zip-DrwYHuF9.js.map +1 -0
  59. package/package.json +1 -1
@@ -0,0 +1,31 @@
1
+ import sys
2
+
3
+ from code_battles.utilities import GameCanvas, Alignment, is_web, is_worker
4
+ from code_battles.battles import CodeBattles
5
+
6
+
7
+ def run_game(battles: CodeBattles):
8
+ """
9
+ Binds the given code battles instance to the React code to enable all simulations.
10
+ """
11
+
12
+ if is_web():
13
+ from js import window
14
+ from pyscript.ffi import create_proxy
15
+
16
+ window._startSimulation = create_proxy(battles._start_simulation)
17
+ window._startSimulationFromFile = create_proxy(
18
+ battles._start_simulation_from_file
19
+ )
20
+ elif is_worker():
21
+ setattr(
22
+ sys.modules["__main__"],
23
+ "_run_webworker_simulation",
24
+ battles._run_webworker_simulation,
25
+ )
26
+ setattr(sys.modules["__main__"], "__export__", ["_run_webworker_simulation"])
27
+ else:
28
+ battles._run_local_simulation()
29
+
30
+
31
+ __all__ = ["CodeBattles", "GameCanvas", "Alignment", "run_game"]