-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix scanning of small QR codes with JS #22651
Conversation
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
I'll give this a shot later |
I can see that the wasm file gets loaded, but I'm not sure this is actually working better than before. I'll try to make a comparison tomorrow with Z-Wave JS UI and the HA frontend. |
Turns out the wasm version gives a slightly different error msg. Fixed. Also added a fix for the "add device" button. It was stuck on disabled after a canceled inclusion. |
d82db22
to
53d443a
Compare
Realized that originally the PR was not zwave specific and the zwave fix should have been in a separate PR. But they are related so pls don't make me separate it 🥺 |
Proposed change
Based on zwave-js/zwave-js-ui#3946 by @AlCalzone
https://github.com/nimiq/qr-scanner uses the native BarcodeDetector if available in browsers (essentially only Chrome), otherwise defaults to a JS port of ZXing. That port seems to be suboptimal, since it really struggles with the small Z-Wave QR codes.
https://www.npmjs.com/package/barcode-detector is a polyfill based on the WASM version of ZXing, which works much, much better.
The wasm file is added to
static/js
on build.Type of change
Example configuration
Additional information
Checklist
If user exposed functionality or configuration variables are added/changed: