Marc Brooks
cedad5f516
Update npm packages for the UI
...
Upgraded most packages to current as of 2025-05-09 for almost everything.
Remove the erroneous extra dependency to old xterm package since the correct @xterm/xterm package was already included (suspect a bad merge) and it was causing issues with react 19.1.
Switched to using the hooks exposed in the usehooks-ts package (this package was already referenced, suspect a bad merge) removing our private copies of useInterval, useIsMounted, useResizeObserver which are identical.
Added import of JSX from react now needed because NPX is not in global scope in react 19.x.
Explicitly cast the ref of included elements due to change in react 19.x
2025-05-09 17:20:47 -05:00
Siyuan Miao
d79f359c43
chore: bump version to 0.4.0
2025-04-16 02:17:09 +02:00
Aveline
189b84380b
network enhanecment / refactor ( #361 )
...
* chore(network): improve connectivity check
* refactor(network): rewrite network and timesync component
* feat(display): show cloud connection status
* chore: change logging verbosity
* chore(websecure): update log message
* fix(ota): validate root certificate when downloading update
* feat(ui): add network settings tab
* fix(display): cloud connecting animation
* fix: golintci issues
* feat: add network settings tab
* feat(timesync): query servers in parallel
* refactor(network): move to internal/network package
* feat(timesync): add metrics
* refactor(log): move log to internal/logging package
* refactor(mdms): move mdns to internal/mdns package
* feat(developer): add pprof endpoint
* feat(logging): add a simple logging streaming endpoint
* fix(mdns): do not start mdns until network is up
* feat(network): allow users to update network settings from ui
* fix(network): handle errors when net.IPAddr is nil
* fix(mdns): scopedLogger SIGSEGV
* fix(dhcp): watch directory instead of file to catch fsnotify.Create event
* refactor(nbd): move platform-specific code to different files
* refactor(native): move platform-specific code to different files
* chore: fix linter issues
* chore(dev_deploy): allow to override PION_LOG_TRACE
2025-04-16 01:39:23 +02:00
Aveline
2b2a14204d
feat: implement pointer-lock and keyboard-lock ( #352 )
...
* feat: implement pointer-lock and keyboard-lock
* feat: Add Pointer lock functionality and SSL support in dev mode
- Introduced @vitejs/plugin-basic-ssl for enabling SSL in development.
- Added a new script `dev:ssl` to run the development server with SSL.
- Implemented pointer lock feature in the WebRTCVideo component, enhancing user interaction.
- Added a PointerLockBar component to guide users on enabling mouse control.
- Cleaned up the VideoOverlay and WebRTCVideo components for better readability and functionality.
---------
Co-authored-by: Adam Shiervani <adam.shiervani@gmail.com>
2025-04-16 01:34:53 +02:00
Simão Gomes Viana
440f85f091
VideoOverlay: add missing word to adapter line ( #355 )
...
THe sentence was incomplete without "ensure".
2025-04-16 00:28:52 +02:00
Ben Kochie
009b0abbe9
refactor: update golintci-lint and linter issues
...
* Update golangci-lint
Update golangci-lint to v2.
Signed-off-by: SuperQ <superq@gmail.com>
* Fixup various linter issues.
Signed-off-by: SuperQ <superq@gmail.com>
---------
Signed-off-by: SuperQ <superq@gmail.com>
2025-04-13 03:55:30 +02:00
Siyuan Miao
951e673e0c
chore(ntp): add logging for time sync errors
2025-04-11 18:55:31 +02:00
Siyuan Miao
edca8a4cb5
fix(log): segmentation violation when err is nil
2025-04-11 18:49:08 +02:00
Aveline
87ee954e70
chore(log): move each component to its own logger ( #353 )
2025-04-11 18:38:34 +02:00
Siyuan Miao
94e83249ef
chore(cloud): use request id from the cloud
2025-04-11 16:03:46 +02:00
Siyuan Miao
f98eaddf15
chore(log): ntp logger
2025-04-11 13:12:14 +02:00
Siyuan Miao
8888d13824
chore(log): add nbdLogger
2025-04-11 13:08:52 +02:00
Siyuan Miao
334b3bee60
chore: fix linting issue
2025-04-11 13:05:03 +02:00
Siyuan Miao
0ba7902f82
chore: update logging
2025-04-11 12:55:36 +02:00
Siyuan Miao
924b55059f
chore(log): add wolLogger
2025-04-11 08:14:44 +02:00
Siyuan Miao
6489421605
fix(ota): verifyFile missing arguments
2025-04-11 08:05:35 +02:00
Siyuan Miao
e08ff425c3
chore(log): add webRtcLogger
2025-04-11 08:05:04 +02:00
Siyuan Miao
d5f8e51a14
chore(log): add terminalLogger
2025-04-11 07:58:11 +02:00
Siyuan Miao
612c50bfe2
chore(log): add serialLogger
2025-04-11 07:56:18 +02:00
Siyuan Miao
48a917fd76
chore(log): add otaLogger
2025-04-11 07:49:03 +02:00
Siyuan Miao
5f7dded973
chore(log): add watchdogLogger
2025-04-11 07:42:47 +02:00
Siyuan Miao
04aa35249a
chore(log): add jsonRpcLogger
2025-04-11 07:41:21 +02:00
Siyuan Miao
82c018a2f6
feat(tls): #330
2025-04-11 00:43:58 +02:00
Siyuan Miao
4c37f7e079
refactor: use structured logging
2025-04-11 00:43:46 +02:00
Andrew Davis
8f6e64fd9c
Add keyboard macros ( #305 )
...
* add jsonrpc keyboard macro get/set
* add ui keyboard macros settings and macro bar
* use notifications component and handle jsonrpc errors
* cleanup settings menu
* return error rather than truncate steps in validation
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* feat(ui): add className prop to Checkbox component to allow custom styling
* use existing components and CTA
* extract display key mappings
* create generic combobox component
* remove macro description
* cleanup styles and macro list
* create sortable list component
* split up macro routes
* remove sortable list and simplify
* cleanup macrobar
* use and add info to fieldlabel
* add useCallback optimizations
* add confirm dialog component
* cleanup delete buttons
* revert info on field label
* cleanup combobox focus
* cleanup icons
* set default label for delay
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-11 00:43:46 +02:00
Adam Shiervani
76efa56083
chore(dev_deploy): update logging for websocket in deployment script ( #348 )
2025-04-11 00:43:46 +02:00
Aveline
dc1ce03697
chore(websocket): logging and metrics improvement ( #347 )
...
* chore(websocket): only show warning if websocket is closed abnormally
* chore(websocket): add counter for ping requests received
2025-04-11 00:43:46 +02:00
Aveline
66a3352e5d
feat(websocket): handle ping messages sent from react and add logging ( #346 )
2025-04-11 00:43:46 +02:00
Adam Shiervani
9c758b6d57
fix(ui): adjust layout and z-index for improved UI consistency in KvmIdRoute ( #345 )
2025-04-11 00:43:46 +02:00
Adam Shiervani
647250c32b
fix(ui): update WebRTCVideo component to properly animate on peer connection state ( #343 )
2025-04-11 00:43:46 +02:00
Ben Kochie
3f20c23ea1
fix: Shell linting ( #328 )
...
Cleanup various shell linting issues
* Use `/usr/bin/env` consistently for better platform compatibility.
* SC2317 (info): Command appears to be unreachable.
* SC2002 (style): Useless cat.
Signed-off-by: SuperQ <superq@gmail.com>
2025-04-11 00:43:45 +02:00
Adam Shiervani
b94de38510
fix(ui): increase z-index for Modal component to improve layering ( #341 )
2025-04-11 00:43:45 +02:00
Adam Shiervani
1505ca1bc1
fix(dev_device): update JETKVM_PROXY_URL to use WebSocket protocol ( #342 )
2025-04-11 00:43:45 +02:00
Adam Shiervani
960ef230ba
Don't block new PC if connection is stable. No need to ( #340 )
2025-04-11 00:43:45 +02:00
Adam Shiervani
98af805089
refactor: remove unnecessary whitespace in setupRouter function
2025-04-11 00:43:45 +02:00
Adam Shiervani
84b35d5deb
re-add old signaling for when upgrading
2025-04-11 00:43:45 +02:00
Siyuan Miao
652e845d83
fix(ota): certificate signed by unknown authority
2025-04-09 20:25:26 +02:00
Adam Shiervani
1a30977085
Feat/Trickle ice ( #336 )
...
* feat(cloud): Use Websocket signaling in cloud mode
* refactor: Enhance WebRTC signaling and connection handling
* refactor: Improve WebRTC connection management and logging in KvmIdRoute
* refactor: Update PeerConnectionDisconnectedOverlay to use Card component for better UI structure
* refactor: Standardize metric naming and improve websocket logging
* refactor: Rename WebRTC signaling functions and update deployment script for debug version
* fix: Handle error when writing new ICE candidate to WebRTC signaling channel
* refactor: Rename signaling handler function for clarity
* refactor: Remove old http local http endpoint
* refactor: Improve metric help text and standardize comparison operator in KvmIdRoute
* chore(websocket): use MetricVec instead of Metric to store metrics
* fix conflicts
* fix: use wss when the page is served over https
* feat: Add app version header and update WebRTC signaling endpoint
* fix: Handle error when writing device metadata to WebRTC signaling channel
---------
Co-authored-by: Siyuan Miao <i@xswan.net>
2025-04-09 00:10:38 +02:00
Aveline
fa1b11b228
chore(ota): allow a longer timeout when downloading packages ( #332 )
2025-04-08 00:43:03 +02:00
Aveline
abc6d92331
feat(cloud): disconnect from cloud immediately when cloud URL changes… ( #326 )
2025-04-07 14:19:43 +02:00
Siyuan Miao
73e715117e
feat(cloud): disconnect from cloud immediately when cloud URL changes or user requests to deregister
2025-04-04 13:16:38 +02:00
Adam Shiervani
8268b20f32
refactor: Update WebRTC connection handling and overlays ( #320 )
...
* refactor: Update WebRTC connection handling and overlays
* fix: Update comments for WebRTC connection handling in KvmIdRoute
* chore: Clean up import statements in devices.$id.tsx
2025-04-03 19:32:14 +02:00
Aveline
1a26431147
chore(cloud): websocket client improvements ( #323 )
2025-04-03 19:28:37 +02:00
Siyuan Miao
f3b5011d65
feat(cloud): add metrics for cloud connections
2025-04-03 19:06:21 +02:00
Siyuan Miao
1e9adf81d4
chore: skip websocket client if net isn't up or time sync hasn't complete
2025-04-03 18:16:41 +02:00
Aveline
65e4a58ad9
chore: Update README Discord Link ( #308 )
2025-03-31 06:05:30 +02:00
Cameron Fleming
df0d083a28
chore: Update README Discord Link
...
Corrects Discord link in the help section.
2025-03-29 21:13:59 +00:00
Aveline
1f8f885a1d
chore: Enable more linters ( #255 )
2025-03-28 10:21:49 +01:00
SuperQ
aed453cc8c
chore: Enable more linters
...
Enable more golangci-lint linters.
* `forbidigo` to stop use of non-logger console printing.
* `goimports` to make sure `import` blocks are formatted nicely.
* `misspell` to catch spelling mistakes.
* `whitespace` to catch whitespace issues.
Signed-off-by: SuperQ <superq@gmail.com>
2025-03-26 18:41:09 +01:00
Aveline
edafe996a9
chore: fix linting issues of web_tls.go ( #287 )
2025-03-26 18:32:55 +01:00