boneIO 0.9.0.dev4__tar.gz → 0.9.0.dev6__tar.gz

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 (126) hide show
  1. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/PKG-INFO +2 -2
  2. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/yaml_util.py +1 -1
  3. boneio-0.9.0.dev6/boneio/version.py +2 -0
  4. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/webui/app.py +15 -2
  5. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/css.worker-YzWC8yAR.js +84 -0
  6. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/editor.worker-D5ngByhL.js +12 -0
  7. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/html.worker-D5NPIcdM.js +461 -0
  8. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/index-Bs_Dk8Uy.css +1 -0
  9. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/index-JxJAopze.js +72 -0
  10. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/json.worker-F0ZGA5Zk.js +49 -0
  11. boneio-0.9.0.dev6/boneio/webui/frontend-dist/assets/ts.worker-BSchkg-h.js +51334 -0
  12. boneio-0.9.0.dev6/boneio/webui/frontend-dist/boneio.svg +1 -0
  13. boneio-0.9.0.dev6/boneio/webui/frontend-dist/boneio_fav.svg +40 -0
  14. boneio-0.9.0.dev6/boneio/webui/frontend-dist/index.html +14 -0
  15. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/pyproject.toml +2 -2
  16. boneIO-0.9.0.dev4/boneio/version.py +0 -2
  17. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/LICENSE +0 -0
  18. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/README.md +0 -0
  19. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/__init__.py +0 -0
  20. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/boards/0.7/output_32_10.yaml +0 -0
  21. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/boards/0.8/input.yaml +0 -0
  22. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/boards/0.8/output_32_10.yaml +0 -0
  23. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/bonecli.py +0 -0
  24. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/const.py +0 -0
  25. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/cover.py +0 -0
  26. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/__init__.py +0 -0
  27. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/adc.yaml +0 -0
  28. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/binary_sensor.yaml +0 -0
  29. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/binary_sensor_v_0_7.yaml +0 -0
  30. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/config.yaml +0 -0
  31. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/cover.yaml +0 -0
  32. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/event.yaml +0 -0
  33. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/event_all.yaml +0 -0
  34. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/event_v_0_7.yaml +0 -0
  35. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/led32x4A.yaml +0 -0
  36. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/output24x16A.yaml +0 -0
  37. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/output24x16A_v0.3.yaml +0 -0
  38. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/output32x10A.yaml +0 -0
  39. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/example_config/output32x5A.yaml +0 -0
  40. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/fonts/danube__.ttf +0 -0
  41. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/group/__init__.py +0 -0
  42. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/group/output.py +0 -0
  43. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/__init__.py +0 -0
  44. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/async_updater.py +0 -0
  45. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/click_timer.py +0 -0
  46. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/config.py +0 -0
  47. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/events.py +0 -0
  48. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/exceptions.py +0 -0
  49. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/filter.py +0 -0
  50. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/gpio.py +0 -0
  51. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/gpiod.py +0 -0
  52. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/ha_discovery.py +0 -0
  53. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/loader.py +0 -0
  54. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/logger.py +0 -0
  55. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/message_bus.py +0 -0
  56. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/mqtt.py +0 -0
  57. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/oled.py +0 -0
  58. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/onewire/W1ThermSensor.py +0 -0
  59. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/onewire/__init__.py +0 -0
  60. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/onewire/ds2482.py +0 -0
  61. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/onewire/onewire.py +0 -0
  62. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/pcf8575.py +0 -0
  63. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/queue.py +0 -0
  64. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/sensor/ina_219_smbus.py +0 -0
  65. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/state_manager.py +0 -0
  66. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/stats.py +0 -0
  67. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/timeperiod.py +0 -0
  68. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/helper/util.py +0 -0
  69. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/input/__init__.py +0 -0
  70. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/input/gpio.py +0 -0
  71. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/input/gpio_new.py +0 -0
  72. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/manager.py +0 -0
  73. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/__init__.py +0 -0
  74. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/client.py +0 -0
  75. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/cwt.json +0 -0
  76. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/dts1964_3f.json +0 -0
  77. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/liquid-sensor.json +0 -0
  78. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/modbuscli.py +0 -0
  79. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/orno-or-we-517.json +0 -0
  80. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/pt100.json +0 -0
  81. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/r4dcb08.json +0 -0
  82. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sdm120.json +0 -0
  83. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sdm630.json +0 -0
  84. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sensor.py +0 -0
  85. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sht20.json +0 -0
  86. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sht30.json +0 -0
  87. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/single_sensor.py +0 -0
  88. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/socomec_e03.json +0 -0
  89. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/socomec_e23.json +0 -0
  90. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/sofar.json +0 -0
  91. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/modbus/utils.py +0 -0
  92. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/models/__init__.py +0 -0
  93. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/models/files.py +0 -0
  94. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/models/logs.py +0 -0
  95. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/mqtt_client.py +0 -0
  96. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/oled.py +0 -0
  97. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/__init__.py +0 -0
  98. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/basic.py +0 -0
  99. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/gpio.py +0 -0
  100. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/mcp.py +0 -0
  101. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/pca.py +0 -0
  102. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/relay/pcf.py +0 -0
  103. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/runner.py +0 -0
  104. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/actions.yaml +0 -0
  105. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/actions_sensor.yaml +0 -0
  106. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/actions_switch.yaml +0 -0
  107. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/filters.yaml +0 -0
  108. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/filters_adc.yaml +0 -0
  109. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/id.yaml +0 -0
  110. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/schema.yaml +0 -0
  111. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/temp_unit.yaml +0 -0
  112. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/schema/update_interval.yaml +0 -0
  113. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/__init__.py +0 -0
  114. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/adc.py +0 -0
  115. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/gpio.py +0 -0
  116. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/gpio_new.py +0 -0
  117. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/ina219.py +0 -0
  118. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/temp/__init__.py +0 -0
  119. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/temp/dallas.py +0 -0
  120. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/temp/lm75.py +0 -0
  121. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/sensor/temp/mcp9808.py +0 -0
  122. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/webui/web_server.py +0 -0
  123. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/boneio/webui/websocket_manager.py +0 -0
  124. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/tests/32_5_config.yaml +0 -0
  125. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/tests/bandit.yaml +0 -0
  126. {boneIO-0.9.0.dev4 → boneio-0.9.0.dev6}/tests/relay_32_5.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
- Name: boneIO
3
- Version: 0.9.0.dev4
2
+ Name: boneio
3
+ Version: 0.9.0.dev6
4
4
  Summary: Python App for BoneIO
5
5
  License: GNU General Public License v3.0
6
6
  Author-email: Paweł Szafer <pszafer@gmail.com>
@@ -498,7 +498,7 @@ def load_config_from_string(config_str: str) -> dict:
498
498
  error_lines = []
499
499
  if "line" in v.errors[field][0]:
500
500
  error_lines = [
501
- f"{v.errors[field][0]['line']}: {line}"
501
+ f"{v.errors[field][0]['line']+1}: {line}"
502
502
  for line in config_str.splitlines()[v.errors[field][0]["line"]-1:v.errors[field][0]["line"]+1]
503
503
  ]
504
504
  error_msg += f"\n- {field}: {errors}\n{', '.join(error_lines)}"
@@ -0,0 +1,2 @@
1
+ # flake8: noqa
2
+ __version__ = "0.9.0dev6"
@@ -33,6 +33,8 @@ from starlette.websockets import WebSocketState
33
33
 
34
34
  from boneio.helper.config import ConfigHelper
35
35
  from boneio.helper.events import GracefulExit
36
+ from boneio.helper.exceptions import ConfigurationException
37
+ from boneio.helper.yaml_util import load_config_from_file
36
38
  from boneio.manager import Manager
37
39
  from boneio.models import (
38
40
  InputState,
@@ -487,6 +489,18 @@ async def get_name(config_helper: ConfigHelper = Depends(get_config_helper)):
487
489
  """Get application version."""
488
490
  return {"name": config_helper.name}
489
491
 
492
+ @app.get("/api/check_configuration")
493
+ async def check_configuration():
494
+ """Check if the configuration is valid."""
495
+ print("Checking configuration...")
496
+ try:
497
+ print(app.state.yaml_config_file)
498
+ load_config_from_file(config_file=app.state.yaml_config_file)
499
+ return {"status": "success"}
500
+ except ConfigurationException as e:
501
+ return {"status": "error", "message": str(e)}
502
+ except Exception as e:
503
+ return {"status": "error", "message": str(e)}
490
504
 
491
505
  @app.get("/api/files")
492
506
  async def list_files(path: str = None):
@@ -530,7 +544,6 @@ async def list_files(path: str = None):
530
544
  except Exception as e:
531
545
  raise HTTPException(status_code=500, detail=str(e))
532
546
 
533
-
534
547
  @app.get("/api/files/{file_path:path}")
535
548
  async def get_file_content(file_path: str):
536
549
  """Get content of a file."""
@@ -869,7 +882,7 @@ async def websocket_endpoint(
869
882
  # _LOGGER.error(f"Error during WebSocket cleanup: {type(e).__name__} - {e}")
870
883
 
871
884
  # Static files setup
872
- FRONTEND_DIR = Path(__file__).parent.parent.parent / "frontend" / "dist"
885
+ FRONTEND_DIR = Path(__file__).parent / "frontend-dist"
873
886
 
874
887
 
875
888
  if FRONTEND_DIR.exists():