UNPKG

dynamsoft-barcode-reader-bundle

Version:

Dynamsoft Barcode Reader JS is a recognition SDK which enables you to embed barcode reading functionality in your web, desktop, and mobile applications. With a few lines of JavaScript code, you can develop a robust application to scan a linear barcode, QR

11 lines 87.2 kB
/*! * Dynamsoft JavaScript Library * @product Dynamsoft Barcode Reader JS Edition Bundle * @website http://www.dynamsoft.com * @copyright Copyright 2025, Dynamsoft Corporation * @author Dynamsoft * @version 11.2.2000 * @fileoverview Dynamsoft JavaScript Library for Barcode Reader * More info on dbr JS: https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/ */ !function(){"use strict";function e(e,t,r,n){return new(r||(r=Promise))(function(i,s){function o(e){try{_(n.next(e))}catch(e){s(e)}}function a(e){try{_(n.throw(e))}catch(e){s(e)}}function _(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r(function(e){e(t)})).then(o,a)}_((n=n.apply(e,t||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;const t=e=>e&&"object"==typeof e&&"function"==typeof e.then,r=(async()=>{})().constructor;class n extends r{get status(){return this._s}get isPending(){return"pending"===this._s}get isFulfilled(){return"fulfilled"===this._s}get isRejected(){return"rejected"===this._s}get task(){return this._task}set task(e){let n;this._task=e,t(e)?n=e:"function"==typeof e&&(n=new r(e)),n&&(async()=>{try{const t=await n;e===this._task&&this.resolve(t)}catch(t){e===this._task&&this.reject(t)}})()}get isEmpty(){return null==this._task}constructor(e){let r,n;super((e,t)=>{r=e,n=t}),this._s="pending",this.resolve=e=>{this.isPending&&(t(e)?this.task=e:(this._s="fulfilled",r(e)))},this.reject=e=>{this.isPending&&(this._s="rejected",n(e))},this.task=e}}const i=e=>e&&"object"==typeof e&&"function"==typeof e.then,s=(async()=>{})().constructor;class o extends s{get status(){return this._s}get isPending(){return"pending"===this._s}get isFulfilled(){return"fulfilled"===this._s}get isRejected(){return"rejected"===this._s}get task(){return this._task}set task(e){let t;this._task=e,i(e)?t=e:"function"==typeof e&&(t=new s(e)),t&&(async()=>{try{const r=await t;e===this._task&&this.resolve(r)}catch(t){e===this._task&&this.reject(t)}})()}get isEmpty(){return null==this._task}constructor(e){let t,r;super((e,n)=>{t=e,r=n}),this._s="pending",this.resolve=e=>{this.isPending&&(i(e)?this.task=e:(this._s="fulfilled",t(e)))},this.reject=e=>{this.isPending&&(this._s="rejected",r(e))},this.task=e}}var a,_,c;"function"==typeof SuppressedError&&SuppressedError,function(e){e[e.BOPM_BLOCK=0]="BOPM_BLOCK",e[e.BOPM_UPDATE=1]="BOPM_UPDATE"}(a||(a={})),function(e){e[e.CCUT_AUTO=0]="CCUT_AUTO",e[e.CCUT_FULL_CHANNEL=1]="CCUT_FULL_CHANNEL",e[e.CCUT_Y_CHANNEL_ONLY=2]="CCUT_Y_CHANNEL_ONLY",e[e.CCUT_RGB_R_CHANNEL_ONLY=3]="CCUT_RGB_R_CHANNEL_ONLY",e[e.CCUT_RGB_G_CHANNEL_ONLY=4]="CCUT_RGB_G_CHANNEL_ONLY",e[e.CCUT_RGB_B_CHANNEL_ONLY=5]="CCUT_RGB_B_CHANNEL_ONLY"}(_||(_={})),function(e){e[e.IPF_BINARY=0]="IPF_BINARY",e[e.IPF_BINARYINVERTED=1]="IPF_BINARYINVERTED",e[e.IPF_GRAYSCALED=2]="IPF_GRAYSCALED",e[e.IPF_NV21=3]="IPF_NV21",e[e.IPF_RGB_565=4]="IPF_RGB_565",e[e.IPF_RGB_555=5]="IPF_RGB_555",e[e.IPF_RGB_888=6]="IPF_RGB_888",e[e.IPF_ARGB_8888=7]="IPF_ARGB_8888",e[e.IPF_RGB_161616=8]="IPF_RGB_161616",e[e.IPF_ARGB_16161616=9]="IPF_ARGB_16161616",e[e.IPF_ABGR_8888=10]="IPF_ABGR_8888",e[e.IPF_ABGR_16161616=11]="IPF_ABGR_16161616",e[e.IPF_BGR_888=12]="IPF_BGR_888",e[e.IPF_BINARY_8=13]="IPF_BINARY_8",e[e.IPF_NV12=14]="IPF_NV12",e[e.IPF_BINARY_8_INVERTED=15]="IPF_BINARY_8_INVERTED"}(c||(c={}));const d="undefined"==typeof self,l="function"==typeof importScripts,E=(()=>{if(!l){if(!d&&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"./"}})(),u=e=>{if(null==e&&(e="./"),d||l);else{let t=document.createElement("a");t.href=e,e=t.href}return e.endsWith("/")||(e+="/"),e},f=e=>"number"==typeof e&&!Number.isNaN(e),m=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),I=e=>!(!(e=>!(!m(e)||!f(e.width)||e.width<=0||!f(e.height)||e.height<=0||!f(e.stride)||e.stride<=0||!("format"in e)||"tag"in e&&!p(e.tag)))(e)||!f(e.bytes.length)&&!f(e.bytes.ptr)),p=e=>null===e||!!m(e)&&!!f(e.imageId)&&"type"in e,g=async(e,t,r)=>await new Promise((n,i)=>{let s=new XMLHttpRequest;s.responseType=t,s.onloadstart=()=>{r&&r.loadstartCallback&&r.loadstartCallback()},s.onloadend=async()=>{r&&r.loadendCallback&&r.loadendCallback(),s.status<200||s.status>=300?i(new Error(e+" "+s.status)):n(s.response)},s.onprogress=e=>{r&&r.progressCallback&&r.progressCallback(e)},s.onerror=()=>{i(new Error("Network Error: "+s.statusText))},s.open("GET",e,!0),s.send()}),T=(e,t)=>{let r=e.split("."),n=t.split(".");for(let e=0;e<r.length&&e<n.length;++e){let t=r[e],i=n[e];if(t===i)continue;let s=parseInt(r[e]),o=parseInt(n[e]);return s===o||Number.isNaN(s)&&Number.isNaN(o)?t<i?-1:1:s<o||Number.isNaN(s)&&Number.isInteger(o)?-1:1}return r.length===n.length?0:r.length<n.length?-1:1},C={std:"dynamsoft-capture-vision-std",dip:"dynamsoft-image-processing",core:"dynamsoft-core",dnn:"dynamsoft-capture-vision-dnn",license:"dynamsoft-license",utility:"dynamsoft-utility",cvr:"dynamsoft-capture-vision-router",dbr:"dynamsoft-barcode-reader",dlr:"dynamsoft-label-recognizer",ddn:"dynamsoft-document-normalizer",dcp:"dynamsoft-code-parser",dcvData:"dynamsoft-capture-vision-data",dce:"dynamsoft-camera-enhancer",ddv:"dynamsoft-document-viewer",dwt:"dwt",dbrBundle:"dynamsoft-barcode-reader-bundle",dcvBundle:"dynamsoft-capture-vision-bundle"};let h,y,R,N,v;"undefined"!=typeof navigator&&(h=navigator,y=h.userAgent,R=h.platform,N=h.mediaDevices),function(){if(!d){const e={Edge:{search:"Edg",verSearch:"Edg"},OPR:null,Chrome:null,Safari:{str:h.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:R,search:"Win"},Mac:{str:R},Linux:{str:R}};let r="unknownBrowser",n=0,i="unknownOS";for(let t in e){const i=e[t]||{};let s=i.str||y,o=i.search||t,a=i.verStr||y,_=i.verSearch||t;if(_ instanceof Array||(_=[_]),-1!=s.indexOf(o)){r=t;for(let e of _){let t=a.indexOf(e);if(-1!=t){n=parseFloat(a.substring(t+e.length+1));break}}break}}for(let e in t){const r=t[e]||{};let n=r.str||y,s=r.search||e;if(-1!=n.indexOf(s)){i=e;break}}"Linux"==i&&-1!=y.indexOf("Windows NT")&&(i="HarmonyOS"),v={browser:r,version:n,OS:i}}d&&(v={browser:"ssr",version:0,OS:"ssr"})}();const A="undefined"!=typeof WebAssembly&&y&&!(/Safari/.test(y)&&!/Chrome/.test(y)&&/\(.+\s11_2_([2-6]).*\)/.test(y)),D=!("undefined"==typeof Worker),S=!(!N||!N.getUserMedia),O=async()=>{let e=!1;if(S)try{(await N.getUserMedia({video:!0})).getTracks().forEach(e=>{e.stop()}),e=!0}catch(e){}return e};var b,L,M,w,U,P,B,F,G;"Chrome"===v.browser&&v.version>66||"Safari"===v.browser&&v.version>13||"OPR"===v.browser&&v.version>43||"Edge"===v.browser&&v.version,function(e){e[e.CRIT_ORIGINAL_IMAGE=1]="CRIT_ORIGINAL_IMAGE",e[e.CRIT_BARCODE=2]="CRIT_BARCODE",e[e.CRIT_TEXT_LINE=4]="CRIT_TEXT_LINE",e[e.CRIT_DETECTED_QUAD=8]="CRIT_DETECTED_QUAD",e[e.CRIT_DESKEWED_IMAGE=16]="CRIT_DESKEWED_IMAGE",e[e.CRIT_PARSED_RESULT=32]="CRIT_PARSED_RESULT",e[e.CRIT_ENHANCED_IMAGE=64]="CRIT_ENHANCED_IMAGE"}(b||(b={})),function(e){e[e.CT_NORMAL_INTERSECTED=0]="CT_NORMAL_INTERSECTED",e[e.CT_T_INTERSECTED=1]="CT_T_INTERSECTED",e[e.CT_CROSS_INTERSECTED=2]="CT_CROSS_INTERSECTED",e[e.CT_NOT_INTERSECTED=3]="CT_NOT_INTERSECTED"}(L||(L={})),function(e){e[e.EC_OK=0]="EC_OK",e[e.EC_UNKNOWN=-1e4]="EC_UNKNOWN",e[e.EC_NO_MEMORY=-10001]="EC_NO_MEMORY",e[e.EC_NULL_POINTER=-10002]="EC_NULL_POINTER",e[e.EC_LICENSE_INVALID=-10003]="EC_LICENSE_INVALID",e[e.EC_LICENSE_EXPIRED=-10004]="EC_LICENSE_EXPIRED",e[e.EC_FILE_NOT_FOUND=-10005]="EC_FILE_NOT_FOUND",e[e.EC_FILE_TYPE_NOT_SUPPORTED=-10006]="EC_FILE_TYPE_NOT_SUPPORTED",e[e.EC_BPP_NOT_SUPPORTED=-10007]="EC_BPP_NOT_SUPPORTED",e[e.EC_INDEX_INVALID=-10008]="EC_INDEX_INVALID",e[e.EC_CUSTOM_REGION_INVALID=-10010]="EC_CUSTOM_REGION_INVALID",e[e.EC_IMAGE_READ_FAILED=-10012]="EC_IMAGE_READ_FAILED",e[e.EC_TIFF_READ_FAILED=-10013]="EC_TIFF_READ_FAILED",e[e.EC_DIB_BUFFER_INVALID=-10018]="EC_DIB_BUFFER_INVALID",e[e.EC_PDF_READ_FAILED=-10021]="EC_PDF_READ_FAILED",e[e.EC_PDF_DLL_MISSING=-10022]="EC_PDF_DLL_MISSING",e[e.EC_PAGE_NUMBER_INVALID=-10023]="EC_PAGE_NUMBER_INVALID",e[e.EC_CUSTOM_SIZE_INVALID=-10024]="EC_CUSTOM_SIZE_INVALID",e[e.EC_TIMEOUT=-10026]="EC_TIMEOUT",e[e.EC_JSON_PARSE_FAILED=-10030]="EC_JSON_PARSE_FAILED",e[e.EC_JSON_TYPE_INVALID=-10031]="EC_JSON_TYPE_INVALID",e[e.EC_JSON_KEY_INVALID=-10032]="EC_JSON_KEY_INVALID",e[e.EC_JSON_VALUE_INVALID=-10033]="EC_JSON_VALUE_INVALID",e[e.EC_JSON_NAME_KEY_MISSING=-10034]="EC_JSON_NAME_KEY_MISSING",e[e.EC_JSON_NAME_VALUE_DUPLICATED=-10035]="EC_JSON_NAME_VALUE_DUPLICATED",e[e.EC_TEMPLATE_NAME_INVALID=-10036]="EC_TEMPLATE_NAME_INVALID",e[e.EC_JSON_NAME_REFERENCE_INVALID=-10037]="EC_JSON_NAME_REFERENCE_INVALID",e[e.EC_PARAMETER_VALUE_INVALID=-10038]="EC_PARAMETER_VALUE_INVALID",e[e.EC_DOMAIN_NOT_MATCH=-10039]="EC_DOMAIN_NOT_MATCH",e[e.EC_LICENSE_KEY_NOT_MATCH=-10043]="EC_LICENSE_KEY_NOT_MATCH",e[e.EC_SET_MODE_ARGUMENT_ERROR=-10051]="EC_SET_MODE_ARGUMENT_ERROR",e[e.EC_GET_MODE_ARGUMENT_ERROR=-10055]="EC_GET_MODE_ARGUMENT_ERROR",e[e.EC_IRT_LICENSE_INVALID=-10056]="EC_IRT_LICENSE_INVALID",e[e.EC_FILE_SAVE_FAILED=-10058]="EC_FILE_SAVE_FAILED",e[e.EC_STAGE_TYPE_INVALID=-10059]="EC_STAGE_TYPE_INVALID",e[e.EC_IMAGE_ORIENTATION_INVALID=-10060]="EC_IMAGE_ORIENTATION_INVALID",e[e.EC_CONVERT_COMPLEX_TEMPLATE_ERROR=-10061]="EC_CONVERT_COMPLEX_TEMPLATE_ERROR",e[e.EC_CALL_REJECTED_WHEN_CAPTURING=-10062]="EC_CALL_REJECTED_WHEN_CAPTURING",e[e.EC_NO_IMAGE_SOURCE=-10063]="EC_NO_IMAGE_SOURCE",e[e.EC_READ_DIRECTORY_FAILED=-10064]="EC_READ_DIRECTORY_FAILED",e[e.EC_MODULE_NOT_FOUND=-10065]="EC_MODULE_NOT_FOUND",e[e.EC_MULTI_PAGES_NOT_SUPPORTED=-10066]="EC_MULTI_PAGES_NOT_SUPPORTED",e[e.EC_FILE_ALREADY_EXISTS=-10067]="EC_FILE_ALREADY_EXISTS",e[e.EC_CREATE_FILE_FAILED=-10068]="EC_CREATE_FILE_FAILED",e[e.EC_IMGAE_DATA_INVALID=-10069]="EC_IMGAE_DATA_INVALID",e[e.EC_IMAGE_SIZE_NOT_MATCH=-10070]="EC_IMAGE_SIZE_NOT_MATCH",e[e.EC_IMAGE_PIXEL_FORMAT_NOT_MATCH=-10071]="EC_IMAGE_PIXEL_FORMAT_NOT_MATCH",e[e.EC_SECTION_LEVEL_RESULT_IRREPLACEABLE=-10072]="EC_SECTION_LEVEL_RESULT_IRREPLACEABLE",e[e.EC_AXIS_DEFINITION_INCORRECT=-10073]="EC_AXIS_DEFINITION_INCORRECT",e[e.EC_RESULT_TYPE_MISMATCH_IRREPLACEABLE=-10074]="EC_RESULT_TYPE_MISMATCH_IRREPLACEABLE",e[e.EC_PDF_LIBRARY_LOAD_FAILED=-10075]="EC_PDF_LIBRARY_LOAD_FAILED",e[e.EC_UNSUPPORTED_JSON_KEY_WARNING=-10077]="EC_UNSUPPORTED_JSON_KEY_WARNING",e[e.EC_MODEL_FILE_NOT_FOUND=-10078]="EC_MODEL_FILE_NOT_FOUND",e[e.EC_PDF_LICENSE_NOT_FOUND=-10079]="EC_PDF_LICENSE_NOT_FOUND",e[e.EC_RECT_INVALID=-10080]="EC_RECT_INVALID",e[e.EC_TEMPLATE_VERSION_INCOMPATIBLE=-10081]="EC_TEMPLATE_VERSION_INCOMPATIBLE",e[e.EC_NO_LICENSE=-2e4]="EC_NO_LICENSE",e[e.EC_LICENSE_BUFFER_FAILED=-20002]="EC_LICENSE_BUFFER_FAILED",e[e.EC_LICENSE_SYNC_FAILED=-20003]="EC_LICENSE_SYNC_FAILED",e[e.EC_DEVICE_NOT_MATCH=-20004]="EC_DEVICE_NOT_MATCH",e[e.EC_BIND_DEVICE_FAILED=-20005]="EC_BIND_DEVICE_FAILED",e[e.EC_INSTANCE_COUNT_OVER_LIMIT=-20008]="EC_INSTANCE_COUNT_OVER_LIMIT",e[e.EC_TRIAL_LICENSE=-20010]="EC_TRIAL_LICENSE",e[e.EC_LICENSE_VERSION_NOT_MATCH=-20011]="EC_LICENSE_VERSION_NOT_MATCH",e[e.EC_LICENSE_CACHE_USED=-20012]="EC_LICENSE_CACHE_USED",e[e.EC_LICENSE_AUTH_QUOTA_EXCEEDED=-20013]="EC_LICENSE_AUTH_QUOTA_EXCEEDED",e[e.EC_LICENSE_RESULTS_LIMIT_EXCEEDED=-20014]="EC_LICENSE_RESULTS_LIMIT_EXCEEDED",e[e.EC_BARCODE_FORMAT_INVALID=-30009]="EC_BARCODE_FORMAT_INVALID",e[e.EC_CUSTOM_MODULESIZE_INVALID=-30025]="EC_CUSTOM_MODULESIZE_INVALID",e[e.EC_TEXT_LINE_GROUP_LAYOUT_CONFLICT=-40101]="EC_TEXT_LINE_GROUP_LAYOUT_CONFLICT",e[e.EC_TEXT_LINE_GROUP_REGEX_CONFLICT=-40102]="EC_TEXT_LINE_GROUP_REGEX_CONFLICT",e[e.EC_QUADRILATERAL_INVALID=-50057]="EC_QUADRILATERAL_INVALID",e[e.EC_PANORAMA_LICENSE_INVALID=-70060]="EC_PANORAMA_LICENSE_INVALID",e[e.EC_RESOURCE_PATH_NOT_EXIST=-90001]="EC_RESOURCE_PATH_NOT_EXIST",e[e.EC_RESOURCE_LOAD_FAILED=-90002]="EC_RESOURCE_LOAD_FAILED",e[e.EC_CODE_SPECIFICATION_NOT_FOUND=-90003]="EC_CODE_SPECIFICATION_NOT_FOUND",e[e.EC_FULL_CODE_EMPTY=-90004]="EC_FULL_CODE_EMPTY",e[e.EC_FULL_CODE_PREPROCESS_FAILED=-90005]="EC_FULL_CODE_PREPROCESS_FAILED",e[e.EC_LICENSE_WARNING=-10076]="EC_LICENSE_WARNING",e[e.EC_BARCODE_READER_LICENSE_NOT_FOUND=-30063]="EC_BARCODE_READER_LICENSE_NOT_FOUND",e[e.EC_LABEL_RECOGNIZER_LICENSE_NOT_FOUND=-40103]="EC_LABEL_RECOGNIZER_LICENSE_NOT_FOUND",e[e.EC_DOCUMENT_NORMALIZER_LICENSE_NOT_FOUND=-50058]="EC_DOCUMENT_NORMALIZER_LICENSE_NOT_FOUND",e[e.EC_CODE_PARSER_LICENSE_NOT_FOUND=-90012]="EC_CODE_PARSER_LICENSE_NOT_FOUND"}(M||(M={})),function(e){e[e.GEM_SKIP=0]="GEM_SKIP",e[e.GEM_AUTO=1]="GEM_AUTO",e[e.GEM_GENERAL=2]="GEM_GENERAL",e[e.GEM_GRAY_EQUALIZE=4]="GEM_GRAY_EQUALIZE",e[e.GEM_GRAY_SMOOTH=8]="GEM_GRAY_SMOOTH",e[e.GEM_SHARPEN_SMOOTH=16]="GEM_SHARPEN_SMOOTH",e[e.GEM_REV=-2147483648]="GEM_REV",e[e.GEM_END=-1]="GEM_END"}(w||(w={})),function(e){e[e.GTM_SKIP=0]="GTM_SKIP",e[e.GTM_INVERTED=1]="GTM_INVERTED",e[e.GTM_ORIGINAL=2]="GTM_ORIGINAL",e[e.GTM_AUTO=4]="GTM_AUTO",e[e.GTM_REV=-2147483648]="GTM_REV",e[e.GTM_END=-1]="GTM_END"}(U||(U={})),function(e){e[e.ITT_FILE_IMAGE=0]="ITT_FILE_IMAGE",e[e.ITT_VIDEO_FRAME=1]="ITT_VIDEO_FRAME"}(P||(P={})),function(e){e[e.PDFRM_VECTOR=1]="PDFRM_VECTOR",e[e.PDFRM_RASTER=2]="PDFRM_RASTER",e[e.PDFRM_REV=-2147483648]="PDFRM_REV"}(B||(B={})),function(e){e[e.RDS_RASTERIZED_PAGES=0]="RDS_RASTERIZED_PAGES",e[e.RDS_EXTRACTED_IMAGES=1]="RDS_EXTRACTED_IMAGES"}(F||(F={})),function(e){e[e.CVS_NOT_VERIFIED=0]="CVS_NOT_VERIFIED",e[e.CVS_PASSED=1]="CVS_PASSED",e[e.CVS_FAILED=2]="CVS_FAILED"}(G||(G={}));const k={IRUT_NULL:BigInt(0),IRUT_COLOUR_IMAGE:BigInt(1),IRUT_SCALED_COLOUR_IMAGE:BigInt(2),IRUT_GRAYSCALE_IMAGE:BigInt(4),IRUT_TRANSOFORMED_GRAYSCALE_IMAGE:BigInt(8),IRUT_ENHANCED_GRAYSCALE_IMAGE:BigInt(16),IRUT_PREDETECTED_REGIONS:BigInt(32),IRUT_BINARY_IMAGE:BigInt(64),IRUT_TEXTURE_DETECTION_RESULT:BigInt(128),IRUT_TEXTURE_REMOVED_GRAYSCALE_IMAGE:BigInt(256),IRUT_TEXTURE_REMOVED_BINARY_IMAGE:BigInt(512),IRUT_CONTOURS:BigInt(1024),IRUT_LINE_SEGMENTS:BigInt(2048),IRUT_TEXT_ZONES:BigInt(4096),IRUT_TEXT_REMOVED_BINARY_IMAGE:BigInt(8192),IRUT_CANDIDATE_BARCODE_ZONES:BigInt(16384),IRUT_LOCALIZED_BARCODES:BigInt(32768),IRUT_SCALED_BARCODE_IMAGE:BigInt(65536),IRUT_DEFORMATION_RESISTED_BARCODE_IMAGE:BigInt(1<<17),IRUT_COMPLEMENTED_BARCODE_IMAGE:BigInt(1<<18),IRUT_DECODED_BARCODES:BigInt(1<<19),IRUT_LONG_LINES:BigInt(1<<20),IRUT_CORNERS:BigInt(1<<21),IRUT_CANDIDATE_QUAD_EDGES:BigInt(1<<22),IRUT_DETECTED_QUADS:BigInt(1<<23),IRUT_LOCALIZED_TEXT_LINES:BigInt(1<<24),IRUT_RECOGNIZED_TEXT_LINES:BigInt(1<<25),IRUT_DESKEWED_IMAGE:BigInt(1<<26),IRUT_SHORT_LINES:BigInt(1<<27),IRUT_RAW_TEXT_LINES:BigInt(1<<28),IRUT_LOGIC_LINES:BigInt(1<<29),IRUT_ENHANCED_IMAGE:BigInt(Math.pow(2,30)),IRUT_ALL:BigInt("0xFFFFFFFFFFFFFFFF")};var W,x,V,H,Y,j;!function(e){e[e.ROET_PREDETECTED_REGION=0]="ROET_PREDETECTED_REGION",e[e.ROET_LOCALIZED_BARCODE=1]="ROET_LOCALIZED_BARCODE",e[e.ROET_DECODED_BARCODE=2]="ROET_DECODED_BARCODE",e[e.ROET_LOCALIZED_TEXT_LINE=3]="ROET_LOCALIZED_TEXT_LINE",e[e.ROET_RECOGNIZED_TEXT_LINE=4]="ROET_RECOGNIZED_TEXT_LINE",e[e.ROET_DETECTED_QUAD=5]="ROET_DETECTED_QUAD",e[e.ROET_DESKEWED_IMAGE=6]="ROET_DESKEWED_IMAGE",e[e.ROET_SOURCE_IMAGE=7]="ROET_SOURCE_IMAGE",e[e.ROET_TARGET_ROI=8]="ROET_TARGET_ROI",e[e.ROET_ENHANCED_IMAGE=9]="ROET_ENHANCED_IMAGE"}(W||(W={})),function(e){e[e.ST_NULL=0]="ST_NULL",e[e.ST_REGION_PREDETECTION=1]="ST_REGION_PREDETECTION",e[e.ST_BARCODE_LOCALIZATION=2]="ST_BARCODE_LOCALIZATION",e[e.ST_BARCODE_DECODING=3]="ST_BARCODE_DECODING",e[e.ST_TEXT_LINE_LOCALIZATION=4]="ST_TEXT_LINE_LOCALIZATION",e[e.ST_TEXT_LINE_RECOGNITION=5]="ST_TEXT_LINE_RECOGNITION",e[e.ST_DOCUMENT_DETECTION=6]="ST_DOCUMENT_DETECTION",e[e.ST_DOCUMENT_DESKEWING=7]="ST_DOCUMENT_DESKEWING",e[e.ST_IMAGE_ENHANCEMENT=8]="ST_IMAGE_ENHANCEMENT"}(x||(x={})),function(e){e[e.IFF_JPEG=0]="IFF_JPEG",e[e.IFF_PNG=1]="IFF_PNG",e[e.IFF_BMP=2]="IFF_BMP",e[e.IFF_PDF=3]="IFF_PDF"}(V||(V={})),function(e){e[e.ICDM_NEAR=0]="ICDM_NEAR",e[e.ICDM_FAR=1]="ICDM_FAR"}(H||(H={})),function(e){e.MN_DYNAMSOFT_CAPTURE_VISION_ROUTER="cvr",e.MN_DYNAMSOFT_CORE="core",e.MN_DYNAMSOFT_LICENSE="license",e.MN_DYNAMSOFT_IMAGE_PROCESSING="dip",e.MN_DYNAMSOFT_UTILITY="utility",e.MN_DYNAMSOFT_BARCODE_READER="dbr",e.MN_DYNAMSOFT_DOCUMENT_NORMALIZER="ddn",e.MN_DYNAMSOFT_LABEL_RECOGNIZER="dlr",e.MN_DYNAMSOFT_CAPTURE_VISION_DATA="dcvData",e.MN_DYNAMSOFT_NEURAL_NETWORK="dnn",e.MN_DYNAMSOFT_CODE_PARSER="dcp",e.MN_DYNAMSOFT_CAMERA_ENHANCER="dce",e.MN_DYNAMSOFT_CAPTURE_VISION_STD="std"}(Y||(Y={})),function(e){e[e.TMT_LOCAL_TO_ORIGINAL_IMAGE=0]="TMT_LOCAL_TO_ORIGINAL_IMAGE",e[e.TMT_ORIGINAL_TO_LOCAL_IMAGE=1]="TMT_ORIGINAL_TO_LOCAL_IMAGE",e[e.TMT_LOCAL_TO_SECTION_IMAGE=2]="TMT_LOCAL_TO_SECTION_IMAGE",e[e.TMT_SECTION_TO_LOCAL_IMAGE=3]="TMT_SECTION_TO_LOCAL_IMAGE"}(j||(j={}));const J={},$=async e=>{let t="string"==typeof e?[e]:e,r=[];for(let e of t)r.push(J[e]=J[e]||new o);await Promise.all(r)};let X,K=0;const Z=()=>K++,z={};let Q;let q=!1;const ee={},te={dip:{wasm:!0}},re={std:{version:"2.0.0",path:u(E+"../../dynamsoft-capture-vision-std@2.0.0/dist/"),isInternal:!0},core:{version:"4.2.20-dev-20251029130528",path:E,isInternal:!0}};let ne=5;"undefined"!=typeof navigator&&(ne=navigator.hardwareConcurrency?navigator.hardwareConcurrency-1:5),z[-3]=async e=>{ie.onWasmLoadProgressChanged&&ie.onWasmLoadProgressChanged(e.resourcesPath,e.tag,{loaded:e.loaded,total:e.total})};class ie{static get engineResourcePaths(){return re}static set engineResourcePaths(e){Object.assign(re,e)}static get bSupportDce4Module(){return this._bSupportDce4Module}static get bSupportIRTModule(){return this._bSupportIRTModule}static get versions(){return this._versions}static get _onLog(){return Q}static set _onLog(e){(e=>{Q=e,X&&X.postMessage({type:"setBLog",body:{value:!!e}})})(e)}static get _bDebug(){return q}static set _bDebug(e){(e=>{q=e,X&&X.postMessage({type:"setBDebug",body:{value:!!e}})})(e)}static get _workerName(){return`${ie._bundleEnv.toLowerCase()}.bundle.worker.js`}static get wasmLoadOptions(){return ie._wasmLoadOptions}static set wasmLoadOptions(e){Object.assign(ie._wasmLoadOptions,e)}static isModuleLoaded(e){return e=(e=e||"core").toLowerCase(),!!J[e]&&J[e].isFulfilled}static async loadWasm(){return await(async()=>{let e,t;e instanceof Array||(e=e?[e]:[]);let r=J.core;t=!r||r.isEmpty,t||await $("core");let n=new Map;const i=e=>{if(e=e.toLowerCase(),Y.MN_DYNAMSOFT_CAPTURE_VISION_STD==e||Y.MN_DYNAMSOFT_CORE==e)return;let t=te[e].deps;if(null==t?void 0:t.length)for(let e of t)i(e);let r=J[e];n.has(e)||n.set(e,!r||r.isEmpty)};for(let t of e)i(t);let s=[];t&&s.push("core"),s.push(...n.keys());const a=[...n.entries()].filter(e=>!e[1]).map(e=>e[0]);await(async(e,t)=>{let r,n="string"==typeof e?[e]:e,i=[];for(let e of n){let n;i.push(n=J[e]=J[e]||new o(r=r||t())),n.isEmpty&&(n.task=r=r||t())}await Promise.all(i)})(s,async()=>{const e=[...n.entries()].filter(e=>e[1]).map(e=>e[0]);await $(a);const r=(e=>{const t={};for(let r in e){if("rootDirectory"===r)continue;let n=r,i=e[n],s=i&&"object"==typeof i&&i.path?i.path:i,o=e.rootDirectory;if(o&&!o.endsWith("/")&&(o+="/"),"object"==typeof i&&i.isInternal)o&&(s=e[n].version?`${o}${C[n]}@${e[n].version}/${"dcvData"===n?"":"dist/"}${"ddv"===n?"engine":""}`:`${o}${C[n]}/${"dcvData"===n?"":"dist/"}${"ddv"===n?"engine":""}`);else{const r=/^@engineRootDirectory(\/?)/;if("string"==typeof s&&(s=s.replace(r,o||"")),"object"==typeof s&&"dwt"===n){const i=e[n].resourcesPath,s=e[n].serviceInstallerLocation;t[n]={resourcesPath:i.replace(r,o||""),serviceInstallerLocation:s.replace(r,o||"")};continue}}t[n]=u(s)}return t})(re),i={};for(let t of e)i[t]=te[t];const s={engineResourcePaths:r,autoResources:i,names:e,_bundleEnv:ie._bundleEnv,wasmLoadOptions:ie.wasmLoadOptions};let _=new o;if(t){s.needLoadCore=!0;let e=r[`${ie._bundleEnv.toLowerCase()}Bundle`]+ie._workerName;e.startsWith(location.origin)||(e=await fetch(e).then(e=>e.blob()).then(e=>URL.createObjectURL(e))),X=new Worker(e),X.onerror=e=>{let t=new Error(e.message);_.reject(t)},X.addEventListener("message",e=>{let t=e.data?e.data:e,r=t.type,n=t.id,i=t.body;switch(r){case"log":Q&&Q(t.message);break;case"warning":console.warn(t.message);break;case"task":try{z[n](i),delete z[n]}catch(e){throw delete z[n],e}break;case"event":try{z[n](i)}catch(e){throw e}break;default:console.log(e)}}),s.bLog=!!Q,s.bd=q,s.dm=location.origin.startsWith("http")?location.origin:"https://localhost"}else await $("core");let c=K++;z[c]=e=>{if(e.success)Object.assign(ee,e.versions),"{}"!==JSON.stringify(e.versions)&&(ie._versions=e.versions),ie.loadedWasmType=e.loadedWasmType,_.resolve(void 0);else{const t=Error(e.message);e.stack&&(t.stack=e.stack),_.reject(t)}},X.postMessage({type:"loadWasm",id:c,body:s}),await _})})()}static async detectEnvironment(){return await(async()=>({wasm:A,worker:D,getUserMedia:S,camera:await O(),browser:v.browser,version:v.version,OS:v.OS}))()}static async getModuleVersion(){return await new Promise((e,t)=>{let r=Z();z[r]=async r=>{if(r.success)return e(r.versions);{let e=new Error(r.message);return e.stack=r.stack+"\n"+e.stack,t(e)}},X.postMessage({type:"getModuleVersion",id:r})})}static getVersion(){return`4.2.20-dev-20251029130528(Worker: ${ee.core&&ee.core.worker||"Not Loaded"}, Wasm: ${ee.core&&ee.core.wasm||"Not Loaded"})`}static enableLogging(){ie._onLog=console.log}static disableLogging(){ie._onLog=null}static async cfd(e){return await new Promise((t,r)=>{let n=Z();z[n]=async e=>{if(e.success)return t();{let t=new Error(e.message);return t.stack=e.stack+"\n"+t.stack,r(t)}},X.postMessage({type:"cfd",id:n,body:{count:e}})})}}ie._bSupportDce4Module=-1,ie._bSupportIRTModule=-1,ie._versions=null,ie._bundleEnv="DCV",ie._wasmLoadOptions={wasmType:"auto",pthreadPoolSize:ne},ie.loadedWasmType="ml-simd-pthread",ie.browserInfo=v;const se="undefined"==typeof self,oe=se?{}:self;let ae,_e,ce,de,le;"undefined"!=typeof navigator&&(ae=navigator,_e=ae.userAgent,ce=ae.platform,de=ae.mediaDevices),function(){if(!se){const e={Edge:{search:"Edg",verSearch:"Edg"},OPR:null,Chrome:null,Safari:{str:ae.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:ce,search:"Win"},Mac:{str:ce},Linux:{str:ce}};let r="unknownBrowser",n=0,i="unknownOS";for(let t in e){const i=e[t]||{};let s=i.str||_e,o=i.search||t,a=i.verStr||_e,_=i.verSearch||t;if(_ instanceof Array||(_=[_]),-1!=s.indexOf(o)){r=t;for(let e of _){let t=a.indexOf(e);if(-1!=t){n=parseFloat(a.substring(t+e.length+1));break}}break}}for(let e in t){const r=t[e]||{};let n=r.str||_e,s=r.search||e;if(-1!=n.indexOf(s)){i=e;break}}"Linux"==i&&-1!=_e.indexOf("Windows NT")&&(i="HarmonyOS"),le={browser:r,version:n,OS:i}}se&&(le={browser:"ssr",version:0,OS:"ssr"})}(),de&&de.getUserMedia;const Ee="Chrome"===le.browser&&le.version>66||"Safari"===le.browser&&le.version>13||"OPR"===le.browser&&le.version>43||"Edge"===le.browser&&le.version>15;var ue=function(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(e){return}}();function fe(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(i){if("TypeError"!==i.name)throw i;for(var r=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),n=0;n<e.length;n+=1)r.append(e[n]);return r.getBlob(t.type)}}function me(e,t){t&&e.then(function(e){t(null,e)},function(e){t(e)})}function Ie(e,t,r){"function"==typeof t&&e.then(t),"function"==typeof r&&e.catch(r)}function pe(e){return"string"!=typeof e&&(console.warn(`${e} used as a key, but it is not a string.`),e=String(e)),e}function ge(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}const Te="local-forage-detect-blob-support";let Ce;const he={},ye=Object.prototype.toString,Re="readonly",Ne="readwrite";function ve(e){return"boolean"==typeof Ce?Promise.resolve(Ce):function(e){return new Promise(function(t){var r=e.transaction(Te,Ne),n=fe([""]);r.objectStore(Te).put(n,"key"),r.onabort=function(e){e.preventDefault(),e.stopPropagation(),t(!1)},r.oncomplete=function(){var e=navigator.userAgent.match(/Chrome\/(\d+)/),r=navigator.userAgent.match(/Edge\//);t(r||!e||parseInt(e[1],10)>=43)}}).catch(function(){return!1})}(e).then(function(e){return Ce=e,Ce})}function Ae(e){var t=he[e.name],r={};r.promise=new Promise(function(e,t){r.resolve=e,r.reject=t}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function De(e){var t=he[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function Se(e,t){var r=he[e.name].deferredOperations.pop();if(r)return r.reject(t),r.promise}function Oe(e,t){return new Promise(function(r,n){if(he[e.name]=he[e.name]||{forages:[],db:null,dbReady:null,deferredOperations:[]},e.db){if(!t)return r(e.db);Ae(e),e.db.close()}var i=[e.name];t&&i.push(e.version);var s=ue.open.apply(ue,i);t&&(s.onupgradeneeded=function(t){var r=s.result;try{r.createObjectStore(e.storeName),t.oldVersion<=1&&r.createObjectStore(Te)}catch(r){if("ConstraintError"!==r.name)throw r;console.warn('The database "'+e.name+'" has been upgraded from version '+t.oldVersion+" to version "+t.newVersion+', but the storage "'+e.storeName+'" already exists.')}}),s.onerror=function(e){e.preventDefault(),n(s.error)},s.onsuccess=function(){var t=s.result;t.onversionchange=function(e){e.target.close()},r(t),De(e)}})}function be(e){return Oe(e,!1)}function Le(e){return Oe(e,!0)}function Me(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),n=e.version<e.db.version,i=e.version>e.db.version;if(n&&(e.version!==t&&console.warn('The database "'+e.name+"\" can't be downgraded from version "+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var s=e.db.version+1;s>e.version&&(e.version=s)}return!0}return!1}function we(e){var t=function(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i<t;i++)n[i]=e.charCodeAt(i);return r}(atob(e.data));return fe([t],{type:e.type})}function Ue(e){var t=this,r=t._initReady().then(function(){var e=he[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady});return Ie(r,e,e),r}function Pe(e,t,r,n){void 0===n&&(n=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(i){if(n>0&&(!e.db||"InvalidStateError"===i.name||"NotFoundError"===i.name))return Promise.resolve().then(()=>{if(!e.db||"NotFoundError"===i.name&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),Le(e)}).then(()=>function(e){Ae(e);for(var t=he[e.name],r=t.forages,n=0;n<r.length;n++){const e=r[n];e._dbInfo.db&&(e._dbInfo.db.close(),e._dbInfo.db=null)}return e.db=null,be(e).then(t=>(e.db=t,Me(e)?Le(e):t)).then(n=>{e.db=t.db=n;for(var i=0;i<r.length;i++)r[i]._dbInfo.db=n}).catch(t=>{throw Se(e,t),t})}(e).then(function(){Pe(e,t,r,n-1)})).catch(r);r(i)}}var Be={_driver:"asyncStorage",_initStorage:function(e){var t=this,r={db:null};if(e)for(var n in e)r[n]=e[n];var i=he[r.name];i||(i={forages:[],db:null,dbReady:null,deferredOperations:[]},he[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=Ue);var s=[];function o(){return Promise.resolve()}for(var a=0;a<i.forages.length;a++){var _=i.forages[a];_!==t&&s.push(_._initReady().catch(o))}var c=i.forages.slice(0);return Promise.all(s).then(function(){return r.db=i.db,be(r)}).then(function(e){return r.db=e,Me(r,t._defaultConfig.version)?Le(r):e}).then(function(e){r.db=i.db=e,t._dbInfo=r;for(var n=0;n<c.length;n++){var s=c[n];s!==t&&(s._dbInfo.db=r.db,s._dbInfo.version=r.version)}})},_support:function(){try{if(!ue||!ue.open)return!1;var e="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!e||t)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(e){return!1}}(),getItem:function(e,t){var r=this;e=pe(e);var n=new Promise(function(t,n){r.ready().then(function(){Pe(r._dbInfo,Re,function(i,s){if(i)return n(i);try{var o=s.objectStore(r._dbInfo.storeName).get(e);o.onsuccess=function(){var e=o.result;void 0===e&&(e=null),function(e){return e&&e.__local_forage_encoded_blob}(e)&&(e=we(e)),t(e)},o.onerror=function(){n(o.error)}}catch(e){n(e)}})}).catch(n)});return me(n,t),n},setItem:function(e,t,r){var n=this;e=pe(e);var i=new Promise(function(r,i){var s;n.ready().then(function(){return s=n._dbInfo,"[object Blob]"===ye.call(t)?ve(s.db).then(function(e){return e?t:(r=t,new Promise(function(e,t){var n=new FileReader;n.onerror=t,n.onloadend=function(t){var n=btoa(t.target.result||"");e({__local_forage_encoded_blob:!0,data:n,type:r.type})},n.readAsBinaryString(r)}));var r}):t}).then(function(t){Pe(n._dbInfo,Ne,function(s,o){if(s)return i(s);try{var a=o.objectStore(n._dbInfo.storeName);null===t&&(t=void 0);var _=a.put(t,e);o.oncomplete=function(){void 0===t&&(t=null),r(t)},o.onabort=o.onerror=function(){var e=_.error?_.error:_.transaction.error;i(e)}}catch(e){i(e)}})}).catch(i)});return me(i,r),i},removeItem:function(e,t){var r=this;e=pe(e);var n=new Promise(function(t,n){r.ready().then(function(){Pe(r._dbInfo,Ne,function(i,s){if(i)return n(i);try{var o=s.objectStore(r._dbInfo.storeName).delete(e);s.oncomplete=function(){t()},s.onerror=function(){n(o.error)},s.onabort=function(){var e=o.error?o.error:o.transaction.error;n(e)}}catch(e){n(e)}})}).catch(n)});return me(n,t),n},clear:function(e){var t=this,r=new Promise(function(e,r){t.ready().then(function(){Pe(t._dbInfo,Ne,function(n,i){if(n)return r(n);try{var s=i.objectStore(t._dbInfo.storeName).clear();i.oncomplete=function(){e()},i.onabort=i.onerror=function(){var e=s.error?s.error:s.transaction.error;r(e)}}catch(e){r(e)}})}).catch(r)});return me(r,e),r},length:function(e){var t=this,r=new Promise(function(e,r){t.ready().then(function(){Pe(t._dbInfo,Re,function(n,i){if(n)return r(n);try{var s=i.objectStore(t._dbInfo.storeName).count();s.onsuccess=function(){e(s.result)},s.onerror=function(){r(s.error)}}catch(e){r(e)}})}).catch(r)});return me(r,e),r},keys:function(e){var t=this,r=new Promise(function(e,r){t.ready().then(function(){Pe(t._dbInfo,Re,function(n,i){if(n)return r(n);try{var s=i.objectStore(t._dbInfo.storeName).openKeyCursor(),o=[];s.onsuccess=function(){var t=s.result;t?(o.push(t.key),t.continue()):e(o)},s.onerror=function(){r(s.error)}}catch(e){r(e)}})}).catch(r)});return me(r,e),r},dropInstance:function(e,t){t=ge.apply(this,arguments);var r,n=this.config();if((e="function"!=typeof e&&e||{}).name||(e.name=e.name||n.name,e.storeName=e.storeName||n.storeName),e.name){const t=e.name===n.name&&this._dbInfo.db?Promise.resolve(this._dbInfo.db):be(e).then(t=>{const r=he[e.name],n=r.forages;r.db=t;for(var i=0;i<n.length;i++)n[i]._dbInfo.db=t;return t});r=e.storeName?t.then(t=>{if(!t.objectStoreNames.contains(e.storeName))return;const r=t.version+1;Ae(e);const n=he[e.name],i=n.forages;t.close();for(let e=0;e<i.length;e++){const t=i[e];t._dbInfo.db=null,t._dbInfo.version=r}const s=new Promise((t,n)=>{const i=ue.open(e.name,r);i.onerror=e=>{i.result.close(),n(e)},i.onupgradeneeded=()=>{i.result.deleteObjectStore(e.storeName)},i.onsuccess=()=>{const e=i.result;e.close(),t(e)}});return s.then(e=>{n.db=e;for(let t=0;t<i.length;t++){const r=i[t];r._dbInfo.db=e,De(r._dbInfo)}}).catch(t=>{throw(Se(e,t)||Promise.resolve()).catch(()=>{}),t})}):t.then(t=>{Ae(e);const r=he[e.name],n=r.forages;t.close();for(var i=0;i<n.length;i++){n[i]._dbInfo.db=null}const s=new Promise((t,r)=>{var n=ue.deleteDatabase(e.name);n.onerror=()=>{const e=n.result;e&&e.close(),r(n.error)},n.onblocked=()=>{console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},n.onsuccess=()=>{const e=n.result;e&&e.close(),t(e)}});return s.then(e=>{r.db=e;for(var t=0;t<n.length;t++){De(n[t]._dbInfo)}}).catch(t=>{throw(Se(e,t)||Promise.resolve()).catch(()=>{}),t})})}else r=Promise.reject("Invalid arguments");return me(r,t),r}};const Fe=new Map;function Ge(e,t){let r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}var ke={_driver:"tempStorageWrapper",_initStorage:async function(e){const t={};if(e)for(let r in e)t[r]=e[r];const r=t.keyPrefix=Ge(e,this._defaultConfig);this._dbInfo=t,Fe.has(r)||Fe.set(r,new Map)},getItem:function(e,t){e=pe(e);const r=this.ready().then(()=>Fe.get(this._dbInfo.keyPrefix).get(e));return me(r,t),r},setItem:function(e,t,r){e=pe(e);const n=this.ready().then(()=>(void 0===t&&(t=null),Fe.get(this._dbInfo.keyPrefix).set(e,t),t));return me(n,r),n},removeItem:function(e,t){e=pe(e);const r=this.ready().then(()=>{Fe.get(this._dbInfo.keyPrefix).delete(e)});return me(r,t),r},clear:function(e){const t=this.ready().then(()=>{const e=this._dbInfo.keyPrefix;Fe.has(e)&&Fe.delete(e)});return me(t,e),t},length:function(e){const t=this.ready().then(()=>Fe.get(this._dbInfo.keyPrefix).size);return me(t,e),t},keys:function(e){const t=this.ready().then(()=>[...Fe.get(this._dbInfo.keyPrefix).keys()]);return me(t,e),t},dropInstance:function(e,t){if(t=ge.apply(this,arguments),!(e="function"!=typeof e&&e||{}).name){const t=this.config();e.name=e.name||t.name,e.storeName=e.storeName||t.storeName}let r;return r=e.name?new Promise(t=>{e.storeName?t(Ge(e,this._defaultConfig)):t(`${e.name}/`)}).then(e=>{Fe.delete(e)}):Promise.reject("Invalid arguments"),me(r,t),r}};const We=(e,t)=>e===t||"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t),xe=(e,t)=>{const r=e.length;let n=0;for(;n<r;){if(We(e[n],t))return!0;n++}return!1},Ve=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},He={},Ye={},je={INDEXEDDB:Be,TEMPSTORAGE:ke},Je=[je.INDEXEDDB._driver,je.TEMPSTORAGE._driver],$e=["dropInstance"],Xe=["clear","getItem","keys","length","removeItem","setItem"].concat($e),Ke={description:"",driver:Je.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Ze(e,t){e[t]=function(){const r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function ze(){for(let e=1;e<arguments.length;e++){const t=arguments[e];if(t)for(let e in t)t.hasOwnProperty(e)&&(Ve(t[e])?arguments[0][e]=t[e].slice():arguments[0][e]=t[e])}return arguments[0]}class Qe{constructor(e){for(let e in je)if(je.hasOwnProperty(e)){const t=je[e],r=t._driver;this[e]=r,He[r]||this.defineDriver(t)}this._defaultConfig=ze({},Ke),this._config=ze({},this._defaultConfig,e),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(()=>{})}config(e){if("object"==typeof e){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(let t in e){if("storeName"===t&&(e[t]=e[t].replace(/\W/g,"_")),"version"===t&&"number"!=typeof e[t])return new Error("Database version must be a number.");this._config[t]=e[t]}return!("driver"in e)||!e.driver||this.setDriver(this._config.driver)}return"string"==typeof e?this._config[e]:this._config}defineDriver(e,t,r){const n=new Promise(function(t,r){try{const n=e._driver,i=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!e._driver)return void r(i);const s=Xe.concat("_initStorage");for(let t=0,n=s.length;t<n;t++){const n=s[t];if((!xe($e,n)||e[n])&&"function"!=typeof e[n])return void r(i)}const o=function(){const t=function(e){return function(){const t=new Error(`Method ${e} is not implemented by the current driver`),r=Promise.reject(t);return me(r,arguments[arguments.length-1]),r}};for(let r=0,n=$e.length;r<n;r++){const n=$e[r];e[n]||(e[n]=t(n))}};o();const a=function(r){He[n]&&console.info(`Redefining LocalForage driver: ${n}`),He[n]=e,Ye[n]=r,t()};"_support"in e?e._support&&"function"==typeof e._support?e._support().then(a,r):a(!!e._support):a(!0)}catch(e){r(e)}});return Ie(n,t,r),n}driver(){return this._driver||null}getDriver(e,t,r){const n=He[e]?Promise.resolve(He[e]):Promise.reject(new Error("Driver not found."));return Ie(n,t,r),n}ready(e){const t=this,r=t._driverSet.then(()=>(null===t._ready&&(t._ready=t._initDriver()),t._ready));return Ie(r,e,e),r}setDriver(e,t,r){const n=this;Ve(e)||(e=[e]);const i=this._getSupportedDrivers(e);function s(){n._config.driver=n.driver()}function o(e){return n._extend(e),s(),n._ready=n._initStorage(n._config),n._ready}const a=null!==this._driverSet?this._driverSet.catch(()=>Promise.resolve()):Promise.resolve();return this._driverSet=a.then(()=>{const e=i[0];return n._dbInfo=null,n._ready=null,n.getDriver(e).then(e=>{n._driver=e._driver,s(),n._wrapLibraryMethodsWithReady(),n._initDriver=function(e){return function(){let t=0;return function r(){for(;t<e.length;){let i=e[t];return t++,n._dbInfo=null,n._ready=null,n.getDriver(i).then(o).catch(r)}s();const i=new Error("No available storage method found.");return n._driverSet=Promise.reject(i),n._driverSet}()}}(i)})}).catch(()=>{s();const e=new Error("No available storage method found.");return n._driverSet=Promise.reject(e),n._driverSet}),Ie(this._driverSet,t,r),this._driverSet}supports(e){return!!Ye[e]}_extend(e){ze(this,e)}_getSupportedDrivers(e){const t=[];for(let r=0,n=e.length;r<n;r++){const n=e[r];this.supports(n)&&t.push(n)}return t}_wrapLibraryMethodsWithReady(){for(let e=0,t=Xe.length;e<t;e++)Ze(this,Xe[e])}createInstance(e){return new Qe(e)}}var qe=new Qe;Date.prototype.kUtilFormat=function(e){const t={"M+":this.getUTCMonth()+1,"d+":this.getUTCDate(),"H+":this.getUTCHours(),"h+":this.getUTCHours()%12||12,"m+":this.getUTCMinutes(),"s+":this.getUTCSeconds(),"q+":Math.floor((this.getUTCMonth()+3)/3),"S+":this.getUTCMilliseconds()};/(y+)/.test(e)&&(e=e.replace(RegExp.$1,(this.getUTCFullYear()+"").substr(4-RegExp.$1.length)));for(let r in t)new RegExp("("+r+")").test(e)&&(e=e.replace(RegExp.$1,1==RegExp.$1.length?t[r]:("000"+t[r]).substr(("000"+t[r]).length-RegExp.$1.length)));return e};let et=e=>{let t,r,i,s,o,a,_,c,d,l,E,u,f,m,I,p,g,T,C,h,y=oe.btoa,R=oe.atob,N=e.bd,v=e.pd,A=e.vm,D=e.hs,S=e.dt,O=e.dm,b=["https://mlts.dynamsoft.com/","https://slts.dynamsoft.com/"],L=!1,M=Promise.resolve(),w=e.log&&((...t)=>{try{e.log.apply(null,t)}catch(e){setTimeout(()=>{throw e},0)}})||(()=>{}),U=N&&w||(()=>{}),P=e=>e.join(""),B={a:[80,88,27,82,145,164,199,211],b:[187,87,89,128,150,44,190,213],c:[89,51,74,53,99,72,82,118],d:[99,181,118,158,215,103,76,117],e:[99,51,86,105,100,71,120,108],f:[97,87,49,119,98,51,74,48,83,50,86,53],g:[81,85,86,84,76,85,100,68,84,81,32,32],h:[90,87,53,106,99,110,108,119,100,65,32,32],i:[90,71,86,106,99,110,108,119,100,65,32,32],j:[97,88,89,32],k:[29,83,122,137,5,180,157,114],l:[100,71,70,110,84,71,86,117,90,51,82,111]},F=()=>oe[P(B.c)][P(B.e)][P(B.f)]("raw",new Uint8Array(B.a.concat(B.b,B.d,B.k)),P(B.g),!0,[P(B.h),P(B.i)]),G=async e=>{if(oe[P(B.c)]&&oe[P(B.c)][P(B.e)]&&oe[P(B.c)][P(B.e)][P(B.f)]){let t=R(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;++e)r[e]=t.charCodeAt(e);let n=r.subarray(0,12),i=r.subarray(n.length);h||(h=await F());let s=await oe[P(B.c)][P(B.e)][P(B.i)]({name:P(B.g),[P(B.j)]:n,[P(B.l)]:128},h,i);return String.fromCharCode.apply(null,new Uint8Array(s))}},k=e=>R(R(e.replace(/\n/g,"+").replace(/\s/g,"=")).substring(1)),W=e=>y(String.fromCharCode(97+25*Math.random())+y(e)).replace(/\+/g,"\n").replace(/=/g," "),x=()=>{if(oe.crypto){let e=new Uint8Array(36);oe.crypto.getRandomValues(e);let t="";for(let r=0;r<36;++r){let n=e[r]%36;t+=n<10?n:String.fromCharCode(n+87)}return t}return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})};const V="Failed to connect to the Dynamsoft License Server: ",H=" Check your Internet connection or contact Dynamsoft Support (support@dynamsoft.com) to acquire an offline license.",Y={dlsErrorAndCacheExpire:V+"The cached license has expired. Please get connected to the network as soon as possible or contact the site administrator for more information.",publicTrialNetworkTimeout:V+"network timed out."+H,networkTimeout:V+"network timed out. Check your Internet connection or contact the site administrator for more information.",publicTrialFailConnect:V+"network connection error."+H,failConnect:V+"network connection error. Check your Internet connection or contact the site administrator for more information.",checkLocalTime:"Your system date and time appear to have been changed, causing the license to fail. Please correct the system date and time, then try again.",idbTimeout:"Failed to open indexedDB: Timeout.",dlsOfflineLicenseExpired:"The DLS2 Offline license has expired. Please contact the site administrator for more information."};let j,J,$,X,K=async()=>{if(j)return j;j=new n,await(async()=>{u||(u=qe)})(),await Promise.race([(async()=>{let e=await u.createInstance({name:"dynamjssdkhello"});await e.setItem("dynamjssdkhello","available")})(),new Promise((e,t)=>{setTimeout(()=>t(new Error(Y.idbTimeout)),5e3)})]),m=await u.createInstance({name:"dynamdlsinfo"}),I=y(y("v2")+String.fromCharCode(O.charCodeAt(O.length/2)+1)+y(O));try{let e=await m.getItem(I),t=null;self.indexedDB&&(t=await self.indexedDB.databases());let r=t&&t.some(e=>{if(e)return"dynamltsinfo"===e.name});if(!e&&r){let t=await u.createInstance({name:"dynamltsinfo"});e=await t.getItem(I),e&&await m.setItem(I,e)}e&&([i,l]=JSON.parse(await k(e)))}catch(e){}try{null==i&&(i=x(),m.setItem(I,await W(JSON.stringify([i,null]))))}catch(e){}j.resolve()},Z=async()=>{p=y(String.fromCharCode(D.charCodeAt(0)+10)+y(v)+y(D)+A+y(""+S)),f=await u.createInstance({name:"dynamdlsuns"+y(y("v2"))+y(String.fromCharCode(D.charCodeAt(0)+10)+y(v)+y(D)+A+y(""+S))});try{r=await m.getItem(p)}catch(e){}P=e=>R(String.fromCharCode.apply(null,e).replace(/\n/g,"+").replace(/\s/g,"="))},z=async(e,u)=>{if($=Date.now(),J)return J;J=new n;try{let n={pd:v,vm:A,v:t,dt:S||"browser",ed:"javascript",cu:i,ad:O,os:s,fn:o,om:u&&u.om?u.om:[],ic:u&&u.ic?u.ic:{}};c&&(n.rmk=c),D&&(-1!=D.indexOf("-")?n.hs=D:n.og=D);let E={};if(l){let e=await m.getItem(I);e&&([i,l]=JSON.parse(await k(e))),E["lts-time"]=l}_&&(n.sp=_);let f=await Promise.race([(async()=>{let t,s=(new Date).kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ");l&&(m.setItem(I,await W(JSON.stringify([i,s]))),l=s);let o="auth/?ext="+encodeURIComponent(y(JSON.stringify(n)));d&&(o+="&"+encodeURIComponent(d));let _,c=!1,u=!1,f=async e=>{if(e&&!e.ok)try{let t=await e.text();if(t){let e=JSON.parse(t);e.errorCode&&(_=e,e.errorCode>100&&e.errorCode<200&&(r=null,c=!0,u=!0))}}catch(e){}};try{t=await Promise.race([fetch(b[0]+o,{headers:E,cache:e?"reload":"default",mode:"cors"}),new Promise((e,t)=>setTimeout(t,1e4))]),await f(t)}catch(e){}if(!(r||t&&t.ok||c))try{t=await Promise.race([fetch(b[1]+o,{headers:E,mode:"cors"}),new Promise((e,t)=>setTimeout(t,3e4))]),await f(t)}catch(e){}if(!(r||t&&t.ok||c))try{t=await Promise.race([fetch(b[0]+o,{headers:E,mode:"cors"}),new Promise((e,t)=>setTimeout(t,3e4))]),await f(t)}catch(e){}_&&151==_.errorCode&&(m.removeItem(I),m.removeItem(p),i=x(),n.cu=i,l=void 0,o="auth/?ext="+encodeURIComponent(y(JSON.stringify(n))),t=await Promise.race([fetch(b[0]+o,{headers:E,mode:"cors"}),new Promise((e,t)=>setTimeout(t,3e4))]),await f(t)),(()=>{if(!t||!t.ok){let e;u&&m.setItem(p,""),_?111==_.errorCode?e=_.message:(e=_.message.trim(),e.endsWith(".")||(e+="."),e=a?`An error occurred during authorization: ${e} [Contact Dynamsoft](https://www.dynamsoft.com/company/contact/) for more information.`:`An error occurred during authorization: ${e} Contact the site administrator for more information.`):e=a?Y.publicTrialFailConnect:Y.failConnect;let t=Error(e);throw _&&_.errorCode&&(t.ltsErrorCode=_.errorCode),t}})();let g=await t.text();try{l||(m.setItem(I,await W(JSON.stringify([i,s]))),l=s),m.setItem(p,g)}catch(e){}return g})(),new Promise((e,t)=>{let n;n=a?Y.publicTrialNetworkTimeout:Y.networkTimeout,setTimeout(()=>t(new Error(n)),r?3e3:15e3)})]);r=f}catch(e){N&&console.error(e),E=e}J.resolve(),J=null},Q=async()=>{X||(X=(async()=>{if(U(i),!r){if(!L)throw w(E.message),E;return}let e={dm:O};N&&(e.bd=!0),e.brtk=!0,e.ls=b[0],D&&(-1!=D.indexOf("-")?e.hs=D:e.og=D),e.cu=i,o&&(e.fn=o),v&&(e.pd=v),t&&(e.v=t),S&&(e.dt=S),s&&(e.os=s),c&&(e.rmk=c),U(r);try{let t=JSON.parse(await G(r));if(t.pv&&(e.pv=JSON.stringify(t.pv)),t.ba&&(e.ba=t.ba),t.usu&&(e.usu=t.usu),t.trial&&(e.trial=t.trial),t.its&&(e.its=t.its),t.lm&&(e.lm=t.lm),t.mli){const r={};for(let e in t.mli)r[e]=t.mli[e][0];e.ic=r,e.mli=t.mli}t.mlo&&(e.mlo=t.mlo),1==e.trial&&t.msg?e.msg=t.msg:E?e.msg=E.message||E:t.msg&&(e.msg=t.msg),e.ar=t.in,e.bafc=!!E}catch(e){}U(e);try{await g(e)}catch(e){U("error updl")}await q(),L||(L=!0),X=null})()),await X},q=async()=>{let e=(new Date).kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ"),t=await C();if(U(t),t&&t<e)throw E?new Error(Y.dlsErrorAndCacheExpire):new Error(Y.checkLocalTime)};const ee=new n;let te=null,re=async(e,t)=>(M=M.then(async()=>{try{let r=await f.keys();if(t||(ee.isFulfilled?e&&(r=r.filter(t=>t<e)):e&&r.includes(e)?r=[e]:(r=[],U("Unexpected null key"))),!r.length)return;for(let e=0;e<r.length/1e3;++e){let t=r.slice(1e3*e,1e3*(e+1)),n=[];for(let e=0;e<t.length;++e)n.push(await f.getItem(t[e]));l=(new Date).kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ");{let e=await m.getItem(I);e&&([i]=JSON.parse(await k(e))),m.setItem(I,await W(JSON.stringify([i,l])))}try{let e,r,i=b[0]+"verify/v2";l&&(i+="?ltstime="+encodeURIComponent(l));try{e=fetch(i,{method:"POST",body:n.join(";"),keepalive:!0})}finally{!ee.isFulfilled&&Ee&&ee.resolve()}try{r=await e}finally{ee.isFulfilled||ee.resolve()}if(!r.ok)throw new Error("verify failed. Status Code: "+r.status);for(let e=0;e<t.length;++e)await f.removeItem(t[e])}catch(e){throw ee.isFulfilled||ee.resolve(),e}}}catch(e){}}),await M);return{i:async e=>{v=e.pd,t=e.v,A=t.split(".")[0],e.dt&&(S=e.dt),D=e.l||"",s="string"!=typeof e.os?JSON.stringify(e.os):e.os,o=e.fn,"string"==typeof o&&(o=o.substring(0,255)),e.ls&&e.ls.length&&(b=e.ls,1==b.length&&b.push(b[0])),a=!D||"200001"===D||D.startsWith("200001-"),_=e.sp,c=e.rmk,"string"==typeof c&&(c=c.substring(0,255)),e.cv&&(d=""+e.cv),g=e.updl,T=e.mnet,C=e.mxet,await K(),await Z(),await z(),await Q(),(!E||E.ltsErrorCode>=102&&E.ltsErrorCode<=120)&&re(null,!0)},i2:async({updl:e,mxet:t,strDLC2:n})=>{g=e,C=t,await K(),P=e=>R(String.fromCharCode.apply(null,e).replace(/\n/g,"+").replace(/\s/g,"="));let s={pk:n,dm:O};N&&(s.bd=!0),s.cu=i;try{r=n.substring(4);let e=JSON.parse(await G(r));e.pv&&(s.pv=JSON.stringify(e.pv)),e.ba&&(s.ba=e.ba),s.ar=e.in}catch(e){}U(s);try{await g(s)}catch(e){U("error updl")}let o=(new Date).kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ"),a=await C();if(a&&a<o)throw new Error(Y.dlsOfflineLicenseExpired)},ih:Z,c:async()=>{let e=new Date;if(e.getTime()<$+36e4)return;let t=e.kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ"),r=await T(),n=await C();if(n&&n<t)await z(!0),await Q();else if(r&&r<t){let t=new Date(e.getTime());t.setMinutes(e.getMinutes()-6);let r=t.kUtilFormat("yyyy-MM-ddTHH:mm:ss.SSSZ");l<r&&z().then(()=>Q())}},s:async(e,t,r,n)=>{try{let e=(t=t.trim()).startsWith("{")&&t.endsWith("}")?await(async e=>{if(oe[P(B.c)]&&oe[P(B.c)][P(B.e)]&&oe[P(B.c)][P(B.e)][P(B.f)]){let t=new Uint8Array(e.length);for(let r=0;r<e.length;++r)t[r]=e.charCodeAt(r);let r=oe.crypto.getRandomValues(new Uint8Array(12));h||(h=await F());let n=await oe[P(B.c)][P(B.e)][P(B.h)]({name:P(B.g),[P(B.j)]:r,[P(B.l)]:128},h,t),i=new Uint8Array(n),s=new Uint8Array(r.length+i.length);return s.set(r),s.set(i,r.length),y(String.fromCharCode.apply(null,s))}})(t):t;e?(U("bs "+r),await f.setItem(r,e),U("ss "+r)):U("ept ecpt")}catch(e){}n&&(U("bd "+r),await re(r,2==n),U("sd "+r)),te&&clearTimeout(te),te=setTimeout(async()=>{await re()},36e4)},p:ee,u:async()=>(await K(),i),ar:()=>r,pt:()=>a,ae:()=>E,glfd:z,caul:Q}};const tt="undefined"==typeof self,rt="function"==typeof importScripts,nt=(()=>{if(!rt){if(!tt&&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"./"}})(),it=e=>{if(null==e&&(e="./"),tt||rt);else{let t=document.createElement("a");t.href=e,e=t.href}return e.endsWith("/")||(e+="/"),e};ie.engineResourcePaths.dbr={version:"11.2.20-dev-20251029130556",path:nt,isInternal:!0},te.dbr={js:!1,wasm:!0,deps:[Y.MN_DYNAMSOFT_LICENSE,Y.MN_DYNAMSOFT_IMAGE_PROCESSING]};const st="2.0.0";"string"!=typeof ie.engineResourcePaths.std&&T(ie.engineResourcePaths.std.version,st)<0&&(ie.engineResourcePaths.std={version:st,path:it(nt+`../../dynamsoft-capture-vision-std@${st}/dist/`),isInternal:!0});const ot="3.0.10";(!ie.engineResourcePaths.dip||"string"!=typeof ie.engineResourcePaths.dip&&T(ie.engineResourcePaths.dip.version,ot)<0)&&(ie.engineResourcePaths.dip={version:ot,path:it(nt+`../../dynamsoft-image-processing@${ot}/dist/`),isInternal:!0});BigInt(0),BigInt("0xFFFFFFFEFFFFFFFF"),BigInt(4265345023);const at=BigInt(3147775),_t=BigInt(260096),ct=(BigInt(1),BigInt(2),BigInt(4),BigInt(8),BigInt(16),BigInt(32),BigInt(64),BigInt(128),BigInt(256),BigInt(512),BigInt(1024),BigInt(2048),BigInt(4096),BigInt(8192),BigInt(16384),BigInt(32768),BigInt(65536),BigInt(131072),BigInt(262144)),dt=BigInt(16777216),lt=BigInt(33554432),Et=BigInt(67108864),ut=BigInt(134217728),ft=BigInt(268435456),mt=BigInt(536870912),It=BigInt(1073741824),pt=BigInt(524288),gt=BigInt(2147483648),Tt=(BigInt(1048576),BigInt(2097152),BigInt(4194304),BigInt(8388608),BigInt(68719476736)),Ct=BigInt(0x3f0000000000000),ht=BigInt(4294967296),yt=(BigInt(4503599627370496),BigInt