New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@undecaf/barcode-detector-polyfill

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@undecaf/barcode-detector-polyfill - npm Package Compare versions

Comparing version 0.9.14 to 0.9.15

6

dist/index.js
/*!
* @undecaf/barcode-detector-polyfill v0.9.14
* @undecaf/barcode-detector-polyfill v0.9.15
* A WebAssembly polyfill for the Barcode Detection API
* Built 2022-12-09T07:41:58.212Z
* Built 2023-01-26T12:39:45.098Z
* (c) 2021-present Ferdinand Kasper <fkasper@modus-operandi.at>

@@ -25,3 +25,3 @@ * Released under the MIT license.

PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */function r(e,t,r,n){return new(r||(r=Promise))((function(a,i){function o(e){try{m(n.next(e))}catch(e){i(e)}}function s(e){try{m(n.throw(e))}catch(e){i(e)}}function m(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}m((n=n.apply(e,t||[])).next())}))}class n{constructor(e,r=t.ZBarConfigType.ZBAR_CFG_ENABLE,n=1){this.symbolType=e,this.configType=r,this.number=n,this.configSteps=[this]}static register(e,t,r=t.symbolType){return n.formatsToConfigs[e]=t,n.typesToFormats[r]=n.typesToFormats[r]||e,t}static formats(){return Object.keys(n.formatsToConfigs)}static toFormat(e){return n.typesToFormats[e]}static configure(e,t){var r;null===(r=n.formatsToConfigs[t])||void 0===r||r.configSteps.forEach((t=>e.setConfig(t.symbolType,t.configType,t.number)))}add(e){return this.configSteps.push(e),this}}var a;n.formatsToConfigs={},n.typesToFormats={},n.register("codabar",new n(t.ZBarSymbolType.ZBAR_CODABAR)),n.register("code_39",new n(t.ZBarSymbolType.ZBAR_CODE39)),n.register("code_93",new n(t.ZBarSymbolType.ZBAR_CODE93)),n.register("code_128",new n(t.ZBarSymbolType.ZBAR_CODE128)),n.register("databar",new n(t.ZBarSymbolType.ZBAR_DATABAR)),n.register("databar_exp",new n(t.ZBarSymbolType.ZBAR_DATABAR_EXP)),n.register("ean_2",new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("ean_5",new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("ean_8",new n(t.ZBarSymbolType.ZBAR_EAN8)),n.register("ean_13",new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("ean_13+2",new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("ean_13+5",new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("isbn_10",new n(t.ZBarSymbolType.ZBAR_ISBN10)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("isbn_13",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("isbn_13+2",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("isbn_13+5",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("itf",new n(t.ZBarSymbolType.ZBAR_I25)),n.register("qr_code",new n(t.ZBarSymbolType.ZBAR_QRCODE)),n.register("sq_code",new n(t.ZBarSymbolType.ZBAR_SQCODE)),n.register("upc_a",new n(t.ZBarSymbolType.ZBAR_UPCA)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("upc_e",new n(t.ZBarSymbolType.ZBAR_UPCE)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),e.Orientation=void 0,(a=e.Orientation||(e.Orientation={}))[a.UNKNOWN=-1]="UNKNOWN",a[a.UPRIGHT=0]="UPRIGHT",a[a.ROTATED_RIGHT=1]="ROTATED_RIGHT",a[a.UPSIDE_DOWN=2]="UPSIDE_DOWN",a[a.ROTATED_LEFT=3]="ROTATED_LEFT";class i{}const o=(()=>{try{return new OffscreenCanvas(1,1).getContext("2d")instanceof OffscreenCanvasRenderingContext2D}catch(e){return!1}})();class s{constructor(e={}){if(void 0!==e.formats){if(!Array.isArray(e.formats)||!e.formats.length)throw new TypeError(`Barcode formats should be a non-empty array of strings but are: ${JSON.stringify(e)}`);const t=e.formats.filter((e=>!n.formats().includes(e)));if(t.length)throw new TypeError(`Unsupported barcode format(s): ${t.join(", ")}`)}this.formats=e.formats||n.formats(),this.zbarConfig=e.zbar||new i}static getSupportedFormats(){return Promise.resolve(n.formats())}detect(e){if(!s.isImageBitmapSource(e))throw new TypeError("BarcodeDetector.detect() argument is not an ImageBitmapSource");const r=s.intrinsicDimensions(e);if(0===r.width||0===r.height)return Promise.resolve([]);try{return Promise.all([this.toImageData(e),this.getScanner()]).then((e=>{const r=e[0],n=e[1];return void 0!==this.zbarConfig.enableCache&&n.enableCache(this.zbarConfig.enableCache),t.scanRGBABuffer(r.data,r.width,r.height,n)})).then((e=>e.map((e=>this.toBarcodeDetectorResult(e)))))}catch(e){return Promise.reject(e)}}getScanner(){return new Promise(((e,a)=>r(this,void 0,void 0,(function*(){if(!this.scanner){const e=yield t.ZBarScanner.create();this.formats.length>0&&(e.setConfig(t.ZBarSymbolType.ZBAR_NONE,t.ZBarConfigType.ZBAR_CFG_ENABLE,0),this.formats.forEach((t=>n.configure(e,t)))),this.scanner=e}e(this.scanner)}))))}toImageData(e){const t=e=>{const t=s.intrinsicDimensions(e);this.canvas&&this.canvas.width===t.width&&this.canvas.height===t.height||(this.canvas=function(e,t){if(o)return new OffscreenCanvas(e,t);{const r=document.createElement("canvas");return r.width=e,r.height=t,r}}(t.width,t.height));const r=this.canvas,n=r.getContext("2d");return n.drawImage(e,0,0),n.getImageData(0,0,r.width,r.height)};if(e instanceof ImageData)return Promise.resolve(e);if(e instanceof Blob){const r=document.createElement("img");return r.src=URL.createObjectURL(e),r.decode().then((()=>t(r))).finally((()=>URL.revokeObjectURL(r.src)))}return e instanceof CanvasRenderingContext2D?Promise.resolve(e.getImageData(0,0,e.canvas.width,e.canvas.height)):Promise.resolve(t(e))}toBarcodeDetectorResult(e){const t={minX:1/0,maxX:-1/0,minY:1/0,maxY:-1/0};e.points.forEach((e=>{t.minX=Math.min(t.minX,e.x),t.maxX=Math.max(t.maxX,e.x),t.minY=Math.min(t.minY,e.y),t.maxY=Math.max(t.maxY,e.y)}));return{format:n.toFormat(e.type),rawValue:e.decode(this.zbarConfig.encoding),orientation:e.orientation,quality:e.quality,boundingBox:DOMRectReadOnly.fromRect({x:t.minX,y:t.minY,width:t.maxX-t.minX,height:t.maxY-t.minY}),cornerPoints:[{x:t.minX,y:t.minY},{x:t.maxX,y:t.minY},{x:t.maxX,y:t.maxY},{x:t.minX,y:t.maxY}]}}static isImageBitmapSource(e){return e instanceof HTMLImageElement||e instanceof HTMLVideoElement||e instanceof HTMLCanvasElement||e instanceof Blob||e instanceof ImageData||e instanceof CanvasRenderingContext2D||e instanceof ImageBitmap||e&&0==e.width||e&&0==e.height}static intrinsicDimensions(e){return{width:Number(e.naturalWidth||e.videoWidth||e.width),height:Number(e.naturalHeight||e.videoHeight||e.height)}}}return e.BarcodeDetectorPolyfill=s,e.ZBAR_WASM_PKG_NAME="@undecaf/zbar-wasm",e.ZBAR_WASM_REPOSITORY="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.11",e.ZBAR_WASM_VERSION="0.9.11",e.ZBarConfig=i,Object.defineProperty(e,"__esModule",{value:!0}),e}({},zbarWasm);
***************************************************************************** */function r(e,t,r,n){return new(r||(r=Promise))((function(a,i){function o(e){try{m(n.next(e))}catch(e){i(e)}}function s(e){try{m(n.throw(e))}catch(e){i(e)}}function m(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}m((n=n.apply(e,t||[])).next())}))}class n{constructor(e,r=t.ZBarConfigType.ZBAR_CFG_ENABLE,n=1){this.symbolType=e,this.configType=r,this.number=n,this.configSteps=[this]}static register(e,t,r=t.symbolType){return n.formatsToConfigs[e]=t,n.typesToFormats[r]=n.typesToFormats[r]||e,t}static formats(){return Object.keys(n.formatsToConfigs)}static toFormat(e){return n.typesToFormats[e]}static configure(e,t){var r;null===(r=n.formatsToConfigs[t])||void 0===r||r.configSteps.forEach((t=>e.setConfig(t.symbolType,t.configType,t.number)))}add(e){return this.configSteps.push(e),this}}var a;n.formatsToConfigs={},n.typesToFormats={},n.register("codabar",new n(t.ZBarSymbolType.ZBAR_CODABAR)),n.register("code_39",new n(t.ZBarSymbolType.ZBAR_CODE39)),n.register("code_93",new n(t.ZBarSymbolType.ZBAR_CODE93)),n.register("code_128",new n(t.ZBarSymbolType.ZBAR_CODE128)),n.register("databar",new n(t.ZBarSymbolType.ZBAR_DATABAR)),n.register("databar_exp",new n(t.ZBarSymbolType.ZBAR_DATABAR_EXP)),n.register("ean_2",new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("ean_5",new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("ean_8",new n(t.ZBarSymbolType.ZBAR_EAN8)),n.register("ean_13",new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("ean_13+2",new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("ean_13+5",new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("isbn_10",new n(t.ZBarSymbolType.ZBAR_ISBN10)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("isbn_13",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("isbn_13+2",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN2)),n.register("isbn_13+5",new n(t.ZBarSymbolType.ZBAR_ISBN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)).add(new n(t.ZBarSymbolType.ZBAR_EAN5)),n.register("itf",new n(t.ZBarSymbolType.ZBAR_I25)),n.register("qr_code",new n(t.ZBarSymbolType.ZBAR_QRCODE)),n.register("sq_code",new n(t.ZBarSymbolType.ZBAR_SQCODE)),n.register("upc_a",new n(t.ZBarSymbolType.ZBAR_UPCA)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),n.register("upc_e",new n(t.ZBarSymbolType.ZBAR_UPCE)).add(new n(t.ZBarSymbolType.ZBAR_EAN13)),e.Orientation=void 0,(a=e.Orientation||(e.Orientation={}))[a.UNKNOWN=-1]="UNKNOWN",a[a.UPRIGHT=0]="UPRIGHT",a[a.ROTATED_RIGHT=1]="ROTATED_RIGHT",a[a.UPSIDE_DOWN=2]="UPSIDE_DOWN",a[a.ROTATED_LEFT=3]="ROTATED_LEFT";class i{}const o=(()=>{try{return new OffscreenCanvas(1,1).getContext("2d")instanceof OffscreenCanvasRenderingContext2D}catch(e){return!1}})();class s{constructor(e={}){if(void 0!==e.formats){if(!Array.isArray(e.formats)||!e.formats.length)throw new TypeError(`Barcode formats should be a non-empty array of strings but are: ${JSON.stringify(e)}`);const t=e.formats.filter((e=>!n.formats().includes(e)));if(t.length)throw new TypeError(`Unsupported barcode format(s): ${t.join(", ")}`)}this.formats=e.formats||n.formats(),this.zbarConfig=e.zbar||new i}static getSupportedFormats(){return Promise.resolve(n.formats())}detect(e){if(!s.isImageBitmapSource(e))throw new TypeError("BarcodeDetector.detect() argument is not an ImageBitmapSource");const r=s.intrinsicDimensions(e);if(0===r.width||0===r.height)return Promise.resolve([]);try{return Promise.all([this.toImageData(e),this.getScanner()]).then((e=>{const r=e[0],n=e[1];return void 0!==this.zbarConfig.enableCache&&n.enableCache(this.zbarConfig.enableCache),t.scanRGBABuffer(r.data,r.width,r.height,n)})).then((e=>e.map((e=>this.toBarcodeDetectorResult(e)))))}catch(e){return Promise.reject(e)}}getScanner(){return new Promise(((e,a)=>r(this,void 0,void 0,(function*(){if(!this.scanner){const e=yield t.ZBarScanner.create();this.formats.length>0&&(e.setConfig(t.ZBarSymbolType.ZBAR_NONE,t.ZBarConfigType.ZBAR_CFG_ENABLE,0),this.formats.forEach((t=>n.configure(e,t)))),this.scanner=e}e(this.scanner)}))))}toImageData(e){const t=e=>{const t=s.intrinsicDimensions(e);this.canvas&&this.canvas.width===t.width&&this.canvas.height===t.height||(this.canvas=function(e,t){if(o)return new OffscreenCanvas(e,t);{const r=document.createElement("canvas");return r.width=e,r.height=t,r}}(t.width,t.height));const r=this.canvas,n=r.getContext("2d");return n.drawImage(e,0,0),n.getImageData(0,0,r.width,r.height)};if(e instanceof ImageData)return Promise.resolve(e);if(e instanceof Blob){const r=document.createElement("img");return r.src=URL.createObjectURL(e),r.decode().then((()=>t(r))).finally((()=>URL.revokeObjectURL(r.src)))}return e instanceof CanvasRenderingContext2D?Promise.resolve(e.getImageData(0,0,e.canvas.width,e.canvas.height)):Promise.resolve(t(e))}toBarcodeDetectorResult(e){const t={minX:1/0,maxX:-1/0,minY:1/0,maxY:-1/0};e.points.forEach((e=>{t.minX=Math.min(t.minX,e.x),t.maxX=Math.max(t.maxX,e.x),t.minY=Math.min(t.minY,e.y),t.maxY=Math.max(t.maxY,e.y)}));return{format:n.toFormat(e.type),rawValue:e.decode(this.zbarConfig.encoding),orientation:e.orientation,quality:e.quality,boundingBox:DOMRectReadOnly.fromRect({x:t.minX,y:t.minY,width:t.maxX-t.minX,height:t.maxY-t.minY}),cornerPoints:[{x:t.minX,y:t.minY},{x:t.maxX,y:t.minY},{x:t.maxX,y:t.maxY},{x:t.minX,y:t.maxY}]}}static isImageBitmapSource(e){return e instanceof HTMLImageElement||e instanceof HTMLVideoElement||e instanceof HTMLCanvasElement||e instanceof Blob||e instanceof ImageData||e instanceof CanvasRenderingContext2D||e instanceof ImageBitmap||e&&0==e.width||e&&0==e.height}static intrinsicDimensions(e){return{width:Number(e.naturalWidth||e.videoWidth||e.width),height:Number(e.naturalHeight||e.videoHeight||e.height)}}}return e.BarcodeDetectorPolyfill=s,e.ZBAR_WASM_PKG_NAME="@undecaf/zbar-wasm",e.ZBAR_WASM_REPOSITORY="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.12",e.ZBAR_WASM_VERSION="0.9.12",e.ZBarConfig=i,Object.defineProperty(e,"__esModule",{value:!0}),e}({},zbarWasm);
//# sourceMappingURL=index.js.map
/*!
* @undecaf/barcode-detector-polyfill v0.9.14
* @undecaf/barcode-detector-polyfill v0.9.15
* A WebAssembly polyfill for the Barcode Detection API
* Built 2022-12-09T07:41:58.212Z
* Built 2023-01-26T12:39:45.098Z
* (c) 2021-present Ferdinand Kasper <fkasper@modus-operandi.at>

@@ -11,3 +11,3 @@ * Released under the MIT license.

*/
import{ZBarSymbolType as e,ZBarConfigType as t,scanRGBABuffer as n,ZBarScanner as r}from"https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.11/dist/main.js";
import{ZBarSymbolType as e,ZBarConfigType as t,scanRGBABuffer as n,ZBarScanner as r}from"https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.12/dist/main.js";
/*! *****************************************************************************

@@ -26,3 +26,3 @@ Copyright (c) Microsoft Corporation.

PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */function a(e,t,n,r){return new(n||(n=Promise))((function(a,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function o(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((r=r.apply(e,t||[])).next())}))}class i{constructor(e,n=t.ZBAR_CFG_ENABLE,r=1){this.symbolType=e,this.configType=n,this.number=r,this.configSteps=[this]}static register(e,t,n=t.symbolType){return i.formatsToConfigs[e]=t,i.typesToFormats[n]=i.typesToFormats[n]||e,t}static formats(){return Object.keys(i.formatsToConfigs)}static toFormat(e){return i.typesToFormats[e]}static configure(e,t){var n;null===(n=i.formatsToConfigs[t])||void 0===n||n.configSteps.forEach((t=>e.setConfig(t.symbolType,t.configType,t.number)))}add(e){return this.configSteps.push(e),this}}var s;i.formatsToConfigs={},i.typesToFormats={},i.register("codabar",new i(e.ZBAR_CODABAR)),i.register("code_39",new i(e.ZBAR_CODE39)),i.register("code_93",new i(e.ZBAR_CODE93)),i.register("code_128",new i(e.ZBAR_CODE128)),i.register("databar",new i(e.ZBAR_DATABAR)),i.register("databar_exp",new i(e.ZBAR_DATABAR_EXP)),i.register("ean_2",new i(e.ZBAR_EAN2)),i.register("ean_5",new i(e.ZBAR_EAN5)),i.register("ean_8",new i(e.ZBAR_EAN8)),i.register("ean_13",new i(e.ZBAR_EAN13)),i.register("ean_13+2",new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN2)),i.register("ean_13+5",new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN5)),i.register("isbn_10",new i(e.ZBAR_ISBN10)).add(new i(e.ZBAR_EAN13)),i.register("isbn_13",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)),i.register("isbn_13+2",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN2)),i.register("isbn_13+5",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN5)),i.register("itf",new i(e.ZBAR_I25)),i.register("qr_code",new i(e.ZBAR_QRCODE)),i.register("sq_code",new i(e.ZBAR_SQCODE)),i.register("upc_a",new i(e.ZBAR_UPCA)).add(new i(e.ZBAR_EAN13)),i.register("upc_e",new i(e.ZBAR_UPCE)).add(new i(e.ZBAR_EAN13)),function(e){e[e.UNKNOWN=-1]="UNKNOWN",e[e.UPRIGHT=0]="UPRIGHT",e[e.ROTATED_RIGHT=1]="ROTATED_RIGHT",e[e.UPSIDE_DOWN=2]="UPSIDE_DOWN",e[e.ROTATED_LEFT=3]="ROTATED_LEFT"}(s||(s={}));class o{}const c=(()=>{try{return new OffscreenCanvas(1,1).getContext("2d")instanceof OffscreenCanvasRenderingContext2D}catch(e){return!1}})();class m{constructor(e={}){if(void 0!==e.formats){if(!Array.isArray(e.formats)||!e.formats.length)throw new TypeError(`Barcode formats should be a non-empty array of strings but are: ${JSON.stringify(e)}`);const t=e.formats.filter((e=>!i.formats().includes(e)));if(t.length)throw new TypeError(`Unsupported barcode format(s): ${t.join(", ")}`)}this.formats=e.formats||i.formats(),this.zbarConfig=e.zbar||new o}static getSupportedFormats(){return Promise.resolve(i.formats())}detect(e){if(!m.isImageBitmapSource(e))throw new TypeError("BarcodeDetector.detect() argument is not an ImageBitmapSource");const t=m.intrinsicDimensions(e);if(0===t.width||0===t.height)return Promise.resolve([]);try{return Promise.all([this.toImageData(e),this.getScanner()]).then((e=>{const t=e[0],r=e[1];return void 0!==this.zbarConfig.enableCache&&r.enableCache(this.zbarConfig.enableCache),n(t.data,t.width,t.height,r)})).then((e=>e.map((e=>this.toBarcodeDetectorResult(e)))))}catch(e){return Promise.reject(e)}}getScanner(){return new Promise(((n,s)=>a(this,void 0,void 0,(function*(){if(!this.scanner){const n=yield r.create();this.formats.length>0&&(n.setConfig(e.ZBAR_NONE,t.ZBAR_CFG_ENABLE,0),this.formats.forEach((e=>i.configure(n,e)))),this.scanner=n}n(this.scanner)}))))}toImageData(e){const t=e=>{const t=m.intrinsicDimensions(e);this.canvas&&this.canvas.width===t.width&&this.canvas.height===t.height||(this.canvas=function(e,t){if(c)return new OffscreenCanvas(e,t);{const n=document.createElement("canvas");return n.width=e,n.height=t,n}}(t.width,t.height));const n=this.canvas,r=n.getContext("2d");return r.drawImage(e,0,0),r.getImageData(0,0,n.width,n.height)};if(e instanceof ImageData)return Promise.resolve(e);if(e instanceof Blob){const n=document.createElement("img");return n.src=URL.createObjectURL(e),n.decode().then((()=>t(n))).finally((()=>URL.revokeObjectURL(n.src)))}return e instanceof CanvasRenderingContext2D?Promise.resolve(e.getImageData(0,0,e.canvas.width,e.canvas.height)):Promise.resolve(t(e))}toBarcodeDetectorResult(e){const t={minX:1/0,maxX:-1/0,minY:1/0,maxY:-1/0};e.points.forEach((e=>{t.minX=Math.min(t.minX,e.x),t.maxX=Math.max(t.maxX,e.x),t.minY=Math.min(t.minY,e.y),t.maxY=Math.max(t.maxY,e.y)}));return{format:i.toFormat(e.type),rawValue:e.decode(this.zbarConfig.encoding),orientation:e.orientation,quality:e.quality,boundingBox:DOMRectReadOnly.fromRect({x:t.minX,y:t.minY,width:t.maxX-t.minX,height:t.maxY-t.minY}),cornerPoints:[{x:t.minX,y:t.minY},{x:t.maxX,y:t.minY},{x:t.maxX,y:t.maxY},{x:t.minX,y:t.maxY}]}}static isImageBitmapSource(e){return e instanceof HTMLImageElement||e instanceof HTMLVideoElement||e instanceof HTMLCanvasElement||e instanceof Blob||e instanceof ImageData||e instanceof CanvasRenderingContext2D||e instanceof ImageBitmap||e&&0==e.width||e&&0==e.height}static intrinsicDimensions(e){return{width:Number(e.naturalWidth||e.videoWidth||e.width),height:Number(e.naturalHeight||e.videoHeight||e.height)}}}const h="@undecaf/zbar-wasm",d="0.9.11",f="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.11";export{m as BarcodeDetectorPolyfill,s as Orientation,h as ZBAR_WASM_PKG_NAME,f as ZBAR_WASM_REPOSITORY,d as ZBAR_WASM_VERSION,o as ZBarConfig};
***************************************************************************** */function a(e,t,n,r){return new(n||(n=Promise))((function(a,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function o(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((r=r.apply(e,t||[])).next())}))}class i{constructor(e,n=t.ZBAR_CFG_ENABLE,r=1){this.symbolType=e,this.configType=n,this.number=r,this.configSteps=[this]}static register(e,t,n=t.symbolType){return i.formatsToConfigs[e]=t,i.typesToFormats[n]=i.typesToFormats[n]||e,t}static formats(){return Object.keys(i.formatsToConfigs)}static toFormat(e){return i.typesToFormats[e]}static configure(e,t){var n;null===(n=i.formatsToConfigs[t])||void 0===n||n.configSteps.forEach((t=>e.setConfig(t.symbolType,t.configType,t.number)))}add(e){return this.configSteps.push(e),this}}var s;i.formatsToConfigs={},i.typesToFormats={},i.register("codabar",new i(e.ZBAR_CODABAR)),i.register("code_39",new i(e.ZBAR_CODE39)),i.register("code_93",new i(e.ZBAR_CODE93)),i.register("code_128",new i(e.ZBAR_CODE128)),i.register("databar",new i(e.ZBAR_DATABAR)),i.register("databar_exp",new i(e.ZBAR_DATABAR_EXP)),i.register("ean_2",new i(e.ZBAR_EAN2)),i.register("ean_5",new i(e.ZBAR_EAN5)),i.register("ean_8",new i(e.ZBAR_EAN8)),i.register("ean_13",new i(e.ZBAR_EAN13)),i.register("ean_13+2",new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN2)),i.register("ean_13+5",new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN5)),i.register("isbn_10",new i(e.ZBAR_ISBN10)).add(new i(e.ZBAR_EAN13)),i.register("isbn_13",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)),i.register("isbn_13+2",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN2)),i.register("isbn_13+5",new i(e.ZBAR_ISBN13)).add(new i(e.ZBAR_EAN13)).add(new i(e.ZBAR_EAN5)),i.register("itf",new i(e.ZBAR_I25)),i.register("qr_code",new i(e.ZBAR_QRCODE)),i.register("sq_code",new i(e.ZBAR_SQCODE)),i.register("upc_a",new i(e.ZBAR_UPCA)).add(new i(e.ZBAR_EAN13)),i.register("upc_e",new i(e.ZBAR_UPCE)).add(new i(e.ZBAR_EAN13)),function(e){e[e.UNKNOWN=-1]="UNKNOWN",e[e.UPRIGHT=0]="UPRIGHT",e[e.ROTATED_RIGHT=1]="ROTATED_RIGHT",e[e.UPSIDE_DOWN=2]="UPSIDE_DOWN",e[e.ROTATED_LEFT=3]="ROTATED_LEFT"}(s||(s={}));class o{}const c=(()=>{try{return new OffscreenCanvas(1,1).getContext("2d")instanceof OffscreenCanvasRenderingContext2D}catch(e){return!1}})();class m{constructor(e={}){if(void 0!==e.formats){if(!Array.isArray(e.formats)||!e.formats.length)throw new TypeError(`Barcode formats should be a non-empty array of strings but are: ${JSON.stringify(e)}`);const t=e.formats.filter((e=>!i.formats().includes(e)));if(t.length)throw new TypeError(`Unsupported barcode format(s): ${t.join(", ")}`)}this.formats=e.formats||i.formats(),this.zbarConfig=e.zbar||new o}static getSupportedFormats(){return Promise.resolve(i.formats())}detect(e){if(!m.isImageBitmapSource(e))throw new TypeError("BarcodeDetector.detect() argument is not an ImageBitmapSource");const t=m.intrinsicDimensions(e);if(0===t.width||0===t.height)return Promise.resolve([]);try{return Promise.all([this.toImageData(e),this.getScanner()]).then((e=>{const t=e[0],r=e[1];return void 0!==this.zbarConfig.enableCache&&r.enableCache(this.zbarConfig.enableCache),n(t.data,t.width,t.height,r)})).then((e=>e.map((e=>this.toBarcodeDetectorResult(e)))))}catch(e){return Promise.reject(e)}}getScanner(){return new Promise(((n,s)=>a(this,void 0,void 0,(function*(){if(!this.scanner){const n=yield r.create();this.formats.length>0&&(n.setConfig(e.ZBAR_NONE,t.ZBAR_CFG_ENABLE,0),this.formats.forEach((e=>i.configure(n,e)))),this.scanner=n}n(this.scanner)}))))}toImageData(e){const t=e=>{const t=m.intrinsicDimensions(e);this.canvas&&this.canvas.width===t.width&&this.canvas.height===t.height||(this.canvas=function(e,t){if(c)return new OffscreenCanvas(e,t);{const n=document.createElement("canvas");return n.width=e,n.height=t,n}}(t.width,t.height));const n=this.canvas,r=n.getContext("2d");return r.drawImage(e,0,0),r.getImageData(0,0,n.width,n.height)};if(e instanceof ImageData)return Promise.resolve(e);if(e instanceof Blob){const n=document.createElement("img");return n.src=URL.createObjectURL(e),n.decode().then((()=>t(n))).finally((()=>URL.revokeObjectURL(n.src)))}return e instanceof CanvasRenderingContext2D?Promise.resolve(e.getImageData(0,0,e.canvas.width,e.canvas.height)):Promise.resolve(t(e))}toBarcodeDetectorResult(e){const t={minX:1/0,maxX:-1/0,minY:1/0,maxY:-1/0};e.points.forEach((e=>{t.minX=Math.min(t.minX,e.x),t.maxX=Math.max(t.maxX,e.x),t.minY=Math.min(t.minY,e.y),t.maxY=Math.max(t.maxY,e.y)}));return{format:i.toFormat(e.type),rawValue:e.decode(this.zbarConfig.encoding),orientation:e.orientation,quality:e.quality,boundingBox:DOMRectReadOnly.fromRect({x:t.minX,y:t.minY,width:t.maxX-t.minX,height:t.maxY-t.minY}),cornerPoints:[{x:t.minX,y:t.minY},{x:t.maxX,y:t.minY},{x:t.maxX,y:t.maxY},{x:t.minX,y:t.maxY}]}}static isImageBitmapSource(e){return e instanceof HTMLImageElement||e instanceof HTMLVideoElement||e instanceof HTMLCanvasElement||e instanceof Blob||e instanceof ImageData||e instanceof CanvasRenderingContext2D||e instanceof ImageBitmap||e&&0==e.width||e&&0==e.height}static intrinsicDimensions(e){return{width:Number(e.naturalWidth||e.videoWidth||e.width),height:Number(e.naturalHeight||e.videoHeight||e.height)}}}const h="@undecaf/zbar-wasm",d="0.9.12",f="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.12";export{m as BarcodeDetectorPolyfill,s as Orientation,h as ZBAR_WASM_PKG_NAME,f as ZBAR_WASM_REPOSITORY,d as ZBAR_WASM_VERSION,o as ZBarConfig};
//# sourceMappingURL=main.js.map

@@ -1,1 +0,1 @@

const a="@undecaf/zbar-wasm",n="0.9.11",e="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.11";export{a as ZBAR_WASM_PKG_NAME,e as ZBAR_WASM_REPOSITORY,n as ZBAR_WASM_VERSION};
const a="@undecaf/zbar-wasm",n="0.9.12",e="https://cdn.jsdelivr.net/npm/@undecaf/zbar-wasm@0.9.12";export{a as ZBAR_WASM_PKG_NAME,e as ZBAR_WASM_REPOSITORY,n as ZBAR_WASM_VERSION};
{
"name": "@undecaf/barcode-detector-polyfill",
"version": "0.9.14",
"version": "0.9.15",
"description": "A WebAssembly polyfill for the Barcode Detection API",

@@ -47,6 +47,7 @@ "keywords": [

"test:unit:debug": "karma start --browsers Chromium --no-single-run ./karma.conf.cjs",
"npm:audit": "npm audit --production"
"npm:audit": "npm audit --omit=dev",
"npm:pack": "npm pack"
},
"dependencies": {
"@undecaf/zbar-wasm": "^0.9.11"
"@undecaf/zbar-wasm": "^0.9.12"
},

@@ -62,3 +63,3 @@ "devDependencies": {

"chai": "^4.3.4",
"karma": "^6.3.9",
"karma": "^6.4.1",
"karma-browserstack-launcher": "^1.6.0",

@@ -72,3 +73,3 @@ "karma-chai": "^0.1.0",

"karma-spec-reporter": "0.0.33",
"mocha": "^8.3.2",
"mocha": "^8.4.0",
"rimraf": "^3.0.2",

@@ -75,0 +76,0 @@ "rollup": "^2.62.0",

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc