**Rationale:**
Some bugs were discovered in Project Nautilus integration.
**Changes:**
- Command and Telemetry paths now support `.`
- Telemetry Values now work with Boolean types in the frontend
- Constant Command Parameters no longer reset in the panel editor when you open the inspector
Reviewed-on: #12
Co-authored-by: Sergey Savelyev <sergeysav.nn@gmail.com>
Co-committed-by: Sergey Savelyev <sergeysav.nn@gmail.com>
**Rationale:**
Realized that #10 did not include any way to register commands without going through the IntoCommandDefinition trait.
**Changes:**
- Adds a method to register a raw command handler
Reviewed-on: #11
Co-authored-by: Sergey Savelyev <sergeysav.nn@gmail.com>
Co-committed-by: Sergey Savelyev <sergeysav.nn@gmail.com>
**Rationale:**
Having two separate servers and communication methods resulted in additional maintenance & the need to convert often between backend & frontend data types.
By moving the backend communication off of gRPC and to just use websockets it both gives more control & allows for simplification of the implementation.
#8
**Changes:**
- Replaces gRPC backend.
- New implementation automatically handles reconnect logic
- Implements an api layer
- Migrates examples to the api layer
- Implements a proc macro to make command handling easier
- Implements unit tests for the api layer (90+% coverage)
- Implements integration tests for the proc macro (90+% coverage)
Reviewed-on: #10
Co-authored-by: Sergey Savelyev <sergeysav.nn@gmail.com>
Co-committed-by: Sergey Savelyev <sergeysav.nn@gmail.com>