diff --git a/Api Reference.url b/Api Reference.url index 86d6db6..9a43bd6 100644 --- a/Api Reference.url +++ b/Api Reference.url @@ -1,2 +1,2 @@ [InternetShortcut] -URL=https://www.dynamsoft.com/barcode-reader/programming/javascript/api-reference/?ver=9.6.11 \ No newline at end of file +URL=https://www.dynamsoft.com/barcode-reader/programming/javascript/api-reference/?ver=9.6.20 \ No newline at end of file diff --git a/README.md b/README.md index 6742c7c..09f6fb8 100644 --- a/README.md +++ b/README.md @@ -33,19 +33,19 @@ In this guide, you will learn step by step on how to integrate the DBR-JS SDK in **Popular Examples** -- Hello World - [Guide](#hello-world---simplest-implementation) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/1.hello-world/1.hello-world.html) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/1.hello-world.html?ver=9.6.11&utm_source=github) -- Angular App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-angular.html?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/1.hello-world/3.read-video-angular) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/3.read-video-angular/dist/hello-world/?ver=9.6.11&utm_source=github) -- React App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-reactjs.html?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/1.hello-world/4.read-video-react) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/4.read-video-react/build/?ver=9.6.11&utm_source=github) -- Vue App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-vuejsv3.html?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/1.hello-world/6.read-video-vue3) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/6.read-video-vue3/dist/?ver=9.6.11&utm_source=github) -- PWA App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-pwa.html?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/1.hello-world/10.read-video-pwa) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/10.read-video-pwa/helloworld-pwa.html?ver=9.6.11&utm_source=github) -- Read Driver Licenses - [Guide](https://www.dynamsoft.com/barcode-reader/docs/core/programming/usecases/scan-and-parse-AAMVA.html?ver=9.6.11&utm_source=github&&lang=js) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/4.use-case/2.read-a-drivers-license.html) \| [Run](https://demo.dynamsoft.com/samples/dbr/js/4.use-case/2.read-a-drivers-license.html?ver=9.6.11&utm_source=github) -- Fill A Form - [Guide](https://www.dynamsoft.com/barcode-reader/docs/core/programming/usecases/scan-barcodes-as-input.html?lang=js&&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/4.use-case/1.fill-a-form-with-barcode-reading.html) \| [Run](https://demo.dynamsoft.com/samples/dbr/js/4.use-case/1.fill-a-form-with-barcode-reading.html?ver=9.6.11&utm_source=github) -- Debug Camera and Collect Video Frame - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/debug.html?lang=js&&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.11/5.others/debug) +- Hello World - [Guide](#hello-world---simplest-implementation) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/1.hello-world/1.hello-world.html) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/1.hello-world.html?ver=9.6.20&utm_source=github) +- Angular App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-angular.html?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/1.hello-world/3.read-video-angular) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/3.read-video-angular/dist/hello-world/?ver=9.6.20&utm_source=github) +- React App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-reactjs.html?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/1.hello-world/4.read-video-react) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/4.read-video-react/build/?ver=9.6.20&utm_source=github) +- Vue App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-vuejsv3.html?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/1.hello-world/6.read-video-vue3) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/6.read-video-vue3/dist/?ver=9.6.20&utm_source=github) +- PWA App - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/helloworld-pwa.html?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/1.hello-world/10.read-video-pwa) \| [Run](https://demo.dynamsoft.com/Samples/DBR/JS/1.hello-world/10.read-video-pwa/helloworld-pwa.html?ver=9.6.20&utm_source=github) +- Read Driver Licenses - [Guide](https://www.dynamsoft.com/barcode-reader/docs/core/programming/usecases/scan-and-parse-AAMVA.html?ver=9.6.20&utm_source=github&&lang=js) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/4.use-case/2.read-a-drivers-license.html) \| [Run](https://demo.dynamsoft.com/samples/dbr/js/4.use-case/2.read-a-drivers-license.html?ver=9.6.20&utm_source=github) +- Fill A Form - [Guide](https://www.dynamsoft.com/barcode-reader/docs/core/programming/usecases/scan-barcodes-as-input.html?lang=js&&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/4.use-case/1.fill-a-form-with-barcode-reading.html) \| [Run](https://demo.dynamsoft.com/samples/dbr/js/4.use-case/1.fill-a-form-with-barcode-reading.html?ver=9.6.20&utm_source=github) +- Debug Camera and Collect Video Frame - [Guide](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/debug.html?lang=js&&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/blob/v9.6.20/5.others/debug) You can also: -- Try the Official Demo - [Run](https://demo.dynamsoft.com/barcode-reader-js/?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-demo/) -- Try Online Examples - [Run](https://demo.dynamsoft.com/Samples/DBR/JS/index.html?ver=9.6.11&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/tree/v9.6.11/) +- Try the Official Demo - [Run](https://demo.dynamsoft.com/barcode-reader-js/?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-demo/) +- Try Online Examples - [Run](https://demo.dynamsoft.com/Samples/DBR/JS/index.html?ver=9.6.20&utm_source=github) \| [Github](https://github.com/Dynamsoft/barcode-reader-javascript-samples/tree/v9.6.20/) ## Hello World - Simplest Implementation @@ -65,9 +65,9 @@ The complete code of the "Hello World" example is shown below
- + + ``` - UNPKG ```html - + ``` #### Host the SDK yourself @@ -171,7 +171,7 @@ Options to download the SDK: - From the website - Download the JavaScript Package + Download the JavaScript Package - yarn @@ -188,7 +188,7 @@ Options to download the SDK: Depending on how you downloaded the SDK and how you intend to use it, you can typically include it like this: ```html - + ``` or @@ -230,7 +230,7 @@ The SDK requires a license to work, use the API `license` to specify a license k Dynamsoft.DBR.BarcodeScanner.license = "YOUR-LICENSE-KEY"; ``` -To test the SDK, you can request a 30-day trial license via the [customer portal](https://www.dynamsoft.com/customer/license/trialLicense?ver=9.6.11&utm_source=github&product=dbr&package=js). +To test the SDK, you can request a 30-day trial license via the [customer portal](https://www.dynamsoft.com/customer/license/trialLicense?ver=9.6.20&utm_source=github&product=dbr&package=js). > If you register a Dynamsoft account and download the SDK from the official website, Dynamsoft will automatically generate a 30-day trial license for you, and put the license key into all the samples attached to the SDK. @@ -242,7 +242,7 @@ The purpose is to tell the SDK where to find the engine files (\*.worker.js, \*. ```javascript //The following code uses the jsDelivr CDN, feel free to change it to your own location of these files -Dynamsoft.DBR.BarcodeScanner.engineResourcePath = "https://cdn.jsdelivr.net/npm/dynamsoft-javascript-barcode@9.6.11/dist/"; +Dynamsoft.DBR.BarcodeScanner.engineResourcePath = "https://cdn.jsdelivr.net/npm/dynamsoft-javascript-barcode@9.6.20/dist/"; ``` ### Interact with the SDK @@ -337,9 +337,9 @@ As you can see from the above code snippets, there are three types of configurat Try in [JSFiddle](https://jsfiddle.net/DynamsoftTeam/f24h8c1m/). - See also [settings samples](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/parameter-settings.html?ver=9.6.11&utm_source=github). + See also [settings samples](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/samples-demos/parameter-settings.html?ver=9.6.20&utm_source=github). -> Find the full list of the runtime settings here. +> Find the full list of the runtime settings here. ### Customize the UI (optional) @@ -437,7 +437,7 @@ The built-in UI of the `BarcodeScanner` object is defined in the file `dist/dbr. ## API Documentation You can check out the detailed documentation about the APIs of the SDK at -[https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/?ver=9.6.11](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/?ver=9.6.11). +[https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/?ver=9.6.20](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/?ver=9.6.20). ## System Requirements @@ -458,7 +458,7 @@ DBR requires the following features to work: - `MediaDevices`/`getUserMedia` - This API is only required for in-browser video streaming. If a browser does not support this API, the [Single Frame Mode](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/BarcodeScanner.html?ver=9.6.11&utm_source=github#singleframemode) will be used automatically. If the API exists but doesn't work correctly, the Single Frame Mode can be used as an alternative way to access the camera. + This API is only required for in-browser video streaming. If a browser does not support this API, the [Single Frame Mode](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/BarcodeScanner.html?ver=9.6.20&utm_source=github#singleframemode) will be used automatically. If the API exists but doesn't work correctly, the Single Frame Mode can be used as an alternative way to access the camera. - `getSettings` @@ -483,7 +483,7 @@ Apart from the browsers, the operating systems may impose some limitations of th ## How to Upgrade -If you want to upgrade the SDK from an old version to a newer one, please see [how to upgrade](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/upgrade-guide/?ver=9.6.11&utm_source=github). +If you want to upgrade the SDK from an old version to a newer one, please see [how to upgrade](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/upgrade-guide/?ver=9.6.20&utm_source=github). ## Release Notes diff --git a/dist/dbr-9.6.11.browser.worker.js b/dist/dbr-9.6.20.browser.worker.js similarity index 99% rename from dist/dbr-9.6.11.browser.worker.js rename to dist/dbr-9.6.20.browser.worker.js index dfacea2..fc7f3eb 100644 --- a/dist/dbr-9.6.11.browser.worker.js +++ b/dist/dbr-9.6.20.browser.worker.js @@ -4,7 +4,7 @@ * @website http://www.dynamsoft.com * @copyright Copyright 2023, Dynamsoft Corporation * @author Dynamsoft - * @version 9.6.11 (js 20230310) + * @version 9.6.20 (js 20230410) * @fileoverview Dynamsoft JavaScript Library for Barcode Reader * More info on DBR JS: https://www.dynamsoft.com/barcode-reader/sdk-javascript/ */ diff --git a/dist/dbr-9.6.11.full.wasm b/dist/dbr-9.6.20.full.wasm similarity index 80% rename from dist/dbr-9.6.11.full.wasm rename to dist/dbr-9.6.20.full.wasm index caaed80..dcb2cd6 100644 Binary files a/dist/dbr-9.6.11.full.wasm and b/dist/dbr-9.6.20.full.wasm differ diff --git a/dist/dbr-9.6.11.full.wasm.js b/dist/dbr-9.6.20.full.wasm.js similarity index 100% rename from dist/dbr-9.6.11.full.wasm.js rename to dist/dbr-9.6.20.full.wasm.js diff --git a/dist/dbr-9.6.11.standby.full.wasm b/dist/dbr-9.6.20.standby.full.wasm similarity index 79% rename from dist/dbr-9.6.11.standby.full.wasm rename to dist/dbr-9.6.20.standby.full.wasm index 94f9e13..7ed985d 100644 Binary files a/dist/dbr-9.6.11.standby.full.wasm and b/dist/dbr-9.6.20.standby.full.wasm differ diff --git a/dist/dbr-9.6.11.standby.full.wasm.js b/dist/dbr-9.6.20.standby.full.wasm.js similarity index 99% rename from dist/dbr-9.6.11.standby.full.wasm.js rename to dist/dbr-9.6.20.standby.full.wasm.js index 6d1025d..b9e6563 100644 --- a/dist/dbr-9.6.11.standby.full.wasm.js +++ b/dist/dbr-9.6.20.standby.full.wasm.js @@ -456,7 +456,7 @@ function updateGlobalBufferAndViews(buf) { Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); } -var DYNAMIC_BASE = 7173936, DYNAMICTOP_PTR = 1930896; +var DYNAMIC_BASE = 7173952, DYNAMICTOP_PTR = 1930912; var INITIAL_INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216; @@ -5739,9 +5739,9 @@ function _fd_write(fd, iov, iovcnt, pnum) { } } -var ___tm_current = 1930912; +var ___tm_current = 1930928; -var ___tm_timezone = (stringToUTF8("GMT", 1930960, 4), 1930960); +var ___tm_timezone = (stringToUTF8("GMT", 1930976, 4), 1930976); function _gmtime_r(time, tmPtr) { var date = new Date(HEAP32[time >> 2] * 1e3); diff --git a/dist/dbr-9.6.11.standby.wasm b/dist/dbr-9.6.20.standby.wasm similarity index 79% rename from dist/dbr-9.6.11.standby.wasm rename to dist/dbr-9.6.20.standby.wasm index ff02ae5..ce7198d 100644 Binary files a/dist/dbr-9.6.11.standby.wasm and b/dist/dbr-9.6.20.standby.wasm differ diff --git a/dist/dbr-9.6.11.standby.wasm.js b/dist/dbr-9.6.20.standby.wasm.js similarity index 99% rename from dist/dbr-9.6.11.standby.wasm.js rename to dist/dbr-9.6.20.standby.wasm.js index 3b3305e..f776b25 100644 --- a/dist/dbr-9.6.11.standby.wasm.js +++ b/dist/dbr-9.6.20.standby.wasm.js @@ -456,7 +456,7 @@ function updateGlobalBufferAndViews(buf) { Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); } -var DYNAMIC_BASE = 6638320, DYNAMICTOP_PTR = 1395280; +var DYNAMIC_BASE = 6638336, DYNAMICTOP_PTR = 1395296; var INITIAL_INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216; @@ -5739,9 +5739,9 @@ function _fd_write(fd, iov, iovcnt, pnum) { } } -var ___tm_current = 1395296; +var ___tm_current = 1395312; -var ___tm_timezone = (stringToUTF8("GMT", 1395344, 4), 1395344); +var ___tm_timezone = (stringToUTF8("GMT", 1395360, 4), 1395360); function _gmtime_r(time, tmPtr) { var date = new Date(HEAP32[time >> 2] * 1e3); diff --git a/dist/dbr-9.6.11.wasm b/dist/dbr-9.6.20.wasm similarity index 79% rename from dist/dbr-9.6.11.wasm rename to dist/dbr-9.6.20.wasm index 38ea685..719aa68 100644 Binary files a/dist/dbr-9.6.11.wasm and b/dist/dbr-9.6.20.wasm differ diff --git a/dist/dbr-9.6.11.wasm.js b/dist/dbr-9.6.20.wasm.js similarity index 100% rename from dist/dbr-9.6.11.wasm.js rename to dist/dbr-9.6.20.wasm.js diff --git a/dist/dbr.js b/dist/dbr.js index 668776b..df424b0 100644 --- a/dist/dbr.js +++ b/dist/dbr.js @@ -4,18 +4,18 @@ * @website http://www.dynamsoft.com * @copyright Copyright 2023, Dynamsoft Corporation * @author Dynamsoft - * @version 9.6.11 (js 20230310) + * @version 9.6.20 (js 20230410) * @fileoverview Dynamsoft JavaScript Library for Barcode Reader * More info on DBR JS: https://www.dynamsoft.com/barcode-reader/sdk-javascript/ */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).Dynamsoft=e.Dynamsoft||{},e.Dynamsoft.DBR={}))}(this,(function(e){"use strict";const t="undefined"==typeof self;let i,r,n,s,o;if("undefined"!=typeof navigator&&(i=navigator,r=i.userAgent,n=i.platform,s=i.mediaDevices),!t){const e={Edge:{search:"Edg",verSearch:"Edg"},OPR:null,Chrome:null,Safari:{str:i.vendor,search:"Apple",verSearch:["Version","iPhone OS","CPU OS"]},Firefox:null,Explorer:{search:"MSIE",verSearch:"MSIE"}},t={HarmonyOS:null,Android:null,iPhone:null,iPad:null,Windows:{str:n,search:"Win"},Mac:{str:n},Linux:{str:n}};let s="unknownBrowser",a=0,h="unknownOS";for(let t in e){const i=e[t]||{};let n=i.str||r,o=i.search||t,h=i.verStr||r,l=i.verSearch||t;if(l instanceof Array||(l=[l]),-1!=n.indexOf(o)){s=t;for(let e of l){let t=h.indexOf(e);if(-1!=t){a=parseFloat(h.substring(t+e.length+1));break}}break}}for(let e in t){const i=t[e]||{};let n=i.str||r,s=i.search||e;if(-1!=n.indexOf(s)){h=e;break}}"Linux"==h&&-1!=r.indexOf("Windows NT")&&(h="HarmonyOS"),o={browser:s,version:a,OS:h}}t&&(o={browser:"ssr",version:0,OS:"ssr"});const a="undefined"!=typeof WebAssembly&&r&&!(/Safari/.test(r)&&!/Chrome/.test(r)&&/\(.+\s11_2_([2-6]).*\)/.test(r)),h=!("undefined"==typeof Worker),l=!(!s||!s.getUserMedia),c=async()=>{let e=!1;if(l)try{(await s.getUserMedia({video:!0})).getTracks().forEach((e=>{e.stop()})),e=!0}catch(e){}return e};"Chrome"===o.browser&&o.version>66||"Safari"===o.browser&&o.version>13||"OPR"===o.browser&&o.version>43||"Edge"===o.browser&&o.version;const u=(()=>{if(!t&&document.currentScript){let e=document.currentScript.src,t=e.indexOf("?");if(-1!=t)e=e.substring(0,t);else{let t=e.indexOf("#");-1!=t&&(e=e.substring(0,t))}return e.substring(0,e.lastIndexOf("/")+1)}return"./"})(),d=" is not allowed to change after `createInstance` or `loadWasm` is called.",f=!t&&document.currentScript&&(document.currentScript.getAttribute("data-license")||document.currentScript.getAttribute("data-productKeys")||document.currentScript.getAttribute("data-licenseKey")||document.currentScript.getAttribute("data-handshakeCode")||document.currentScript.getAttribute("data-organizationID"))||"",g=!t&&document.currentScript&&document.currentScript.getAttribute("data-sessionPassword")||"",_=e=>{if(null==e)e=[];else{e=e instanceof Array?[...e]:[e];for(let i=0;i