Merge pull request #15627 from Budibase/qr-code-zoom

QR Code scanner zoom capabilities
This commit is contained in:
Michael Drury 2025-02-25 16:04:07 +00:00 committed by GitHub
commit e514d7c11d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 22 additions and 5 deletions

View File

@ -4492,6 +4492,12 @@
} }
] ]
}, },
{
"type": "text",
"label": "Zoom level",
"key": "defaultZoom",
"defaultValue": "1"
},
{ {
"type": "event", "type": "event",
"label": "On change", "label": "On change",

View File

@ -28,7 +28,7 @@
"apexcharts": "^3.48.0", "apexcharts": "^3.48.0",
"dayjs": "^1.10.8", "dayjs": "^1.10.8",
"downloadjs": "1.4.7", "downloadjs": "1.4.7",
"html5-qrcode": "^2.2.1", "html5-qrcode": "^2.3.8",
"leaflet": "^1.7.1", "leaflet": "^1.7.1",
"sanitize-html": "^2.13.0", "sanitize-html": "^2.13.0",
"screenfull": "^6.0.1", "screenfull": "^6.0.1",

View File

@ -20,6 +20,7 @@
export let beepFrequency = 2637 export let beepFrequency = 2637
export let customFrequency = 1046 export let customFrequency = 1046
export let preferredCamera = "environment" export let preferredCamera = "environment"
export let defaultZoom = 1
export let validator export let validator
const dispatch = createEventDispatcher() const dispatch = createEventDispatcher()
@ -58,6 +59,14 @@
html5QrCode html5QrCode
.start(cameraSetting, cameraConfig, onScanSuccess) .start(cameraSetting, cameraConfig, onScanSuccess)
.then(() => { .then(() => {
if (defaultZoom > 1) {
const cameraOptions =
html5QrCode.getRunningTrackCameraCapabilities()
const zoom = cameraOptions.zoomFeature()
if (zoom.isSupported()) {
zoom.apply(defaultZoom)
}
}
resolve({ initialised: true }) resolve({ initialised: true })
}) })
.catch(err => { .catch(err => {

View File

@ -17,6 +17,7 @@
export let beepFrequency export let beepFrequency
export let customFrequency export let customFrequency
export let preferredCamera export let preferredCamera
export let defaultZoom
export let helpText = null export let helpText = null
let fieldState let fieldState
@ -56,6 +57,7 @@
{beepFrequency} {beepFrequency}
{customFrequency} {customFrequency}
{preferredCamera} {preferredCamera}
{defaultZoom}
validator={fieldState.validator} validator={fieldState.validator}
/> />
{/if} {/if}

View File

@ -12789,10 +12789,10 @@ html-tag@^2.0.0:
is-self-closing "^1.0.1" is-self-closing "^1.0.1"
kind-of "^6.0.0" kind-of "^6.0.0"
html5-qrcode@^2.2.1: html5-qrcode@^2.3.8:
version "2.3.7" version "2.3.8"
resolved "https://registry.yarnpkg.com/html5-qrcode/-/html5-qrcode-2.3.7.tgz#09ed2ca7473a47bd551088c15fcfcb7cb409a5be" resolved "https://registry.yarnpkg.com/html5-qrcode/-/html5-qrcode-2.3.8.tgz#0b0cdf7a9926cfd4be530e13a51db47592adfa0d"
integrity sha512-Jmlok9Ynm49hgVXkdupWryf8o430proIFoQsRl1LmTg4Rq461W72omylR9yw9tsEMtswMEw3wacUM5y0agOBQA== integrity sha512-jsr4vafJhwoLVEDW3n1KvPnCCXWaQfRng0/EEYk1vNcQGcG/htAdhJX0be8YyqMoSz7+hZvOZSTAepsabiuhiQ==
htmlparser2@^8.0.0: htmlparser2@^8.0.0:
version "8.0.1" version "8.0.1"