@shencom/wechat-opencv
Version:
1 lines • 4.26 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport type { OpenCVInstance } from './types';\n\nlet cvInstance: OpenCVInstance | null = null;\nlet isInitializing = false;\nlet initPromise: Promise<OpenCVInstance> | null = null;\n\nexport async function opencvInit(): Promise<OpenCVInstance> {\n if (cvInstance) {\n return cvInstance;\n }\n\n if (isInitializing) {\n return initPromise!;\n }\n\n isInitializing = true;\n initPromise = new Promise((resolve, reject) => {\n const __Module__ = {\n preRun: [],\n postRun: [],\n print: console.log,\n printErr: console.error,\n setStatus: console.log,\n onRuntimeInitialized: async () => {\n try {\n if (window.__cv__ instanceof Promise) {\n cvInstance = await window.__cv__;\n } else {\n cvInstance = window.__cv__;\n }\n resolve(cvInstance);\n } catch (error) {\n reject(error);\n }\n },\n totalDependencies: 0,\n };\n\n window.__Module__ = __Module__;\n window.onerror = () => {\n __Module__.setStatus(`Exception thrown, see JavaScript console`);\n __Module__.setStatus = (text: string) => {\n if (text) __Module__.printErr(`[post-exception status] ${text}`);\n };\n };\n\n const script1 = document.createElement('script');\n script1.src =\n 'https://scplugins.oss-cn-shenzhen.aliyuncs.com/plugins/scloud/assets/qrcode/wechat_qrcode_files.js';\n script1.setAttribute('crossorigin', 'anonymous');\n script1.onerror = () => {\n reject(new Error('Failed to load wechat_qrcode_files.js'));\n };\n document.body.appendChild(script1);\n\n const script2 = document.createElement('script');\n script2.src =\n 'https://scplugins.oss-cn-shenzhen.aliyuncs.com/plugins/scloud/assets/qrcode/opencv.js';\n script2.async = true;\n script2.setAttribute('crossorigin', 'anonymous');\n script2.type = 'application/javascript';\n script2.onerror = () => {\n reject(new Error('Failed to load OpenCV.js'));\n };\n document.body.appendChild(script2);\n });\n\n return initPromise;\n}\n\ndeclare global {\n interface Window {\n __Module__: any;\n __cv__: OpenCVInstance | Promise<OpenCVInstance>;\n }\n}\n"],"names":[],"mappings":";;;;AAGA,IAAI,UAAoC,GAAA,IAAA,CAAA;AACxC,IAAI,cAAiB,GAAA,KAAA,CAAA;AACrB,IAAI,WAA8C,GAAA,IAAA,CAAA;AAElD,eAAsB,UAAsC,GAAA;AAC1D,EAAA,IAAI,UAAY,EAAA;AACd,IAAO,OAAA,UAAA,CAAA;AAAA,GACT;AAEA,EAAA,IAAI,cAAgB,EAAA;AAClB,IAAO,OAAA,WAAA,CAAA;AAAA,GACT;AAEA,EAAiB,cAAA,GAAA,IAAA,CAAA;AACjB,EAAA,WAAA,GAAc,IAAI,OAAA,CAAQ,CAAC,OAAA,EAAS,MAAW,KAAA;AAC7C,IAAA,MAAM,UAAa,GAAA;AAAA,MACjB,QAAQ,EAAC;AAAA,MACT,SAAS,EAAC;AAAA,MACV,OAAO,OAAQ,CAAA,GAAA;AAAA,MACf,UAAU,OAAQ,CAAA,KAAA;AAAA,MAClB,WAAW,OAAQ,CAAA,GAAA;AAAA,MACnB,sBAAsB,YAAY;AAChC,QAAI,IAAA;AACF,UAAI,IAAA,MAAA,CAAO,kBAAkB,OAAS,EAAA;AACpC,YAAA,UAAA,GAAa,MAAM,MAAO,CAAA,MAAA,CAAA;AAAA,WACrB,MAAA;AACL,YAAA,UAAA,GAAa,MAAO,CAAA,MAAA,CAAA;AAAA,WACtB;AACA,UAAA,OAAA,CAAQ,UAAU,CAAA,CAAA;AAAA,iBACX,KAAO,EAAA;AACd,UAAA,MAAA,CAAO,KAAK,CAAA,CAAA;AAAA,SACd;AAAA,OACF;AAAA,MACA,iBAAmB,EAAA,CAAA;AAAA,KACrB,CAAA;AAEA,IAAA,MAAA,CAAO,UAAa,GAAA,UAAA,CAAA;AACpB,IAAA,MAAA,CAAO,UAAU,MAAM;AACrB,MAAA,UAAA,CAAW,UAAU,CAA0C,wCAAA,CAAA,CAAA,CAAA;AAC/D,MAAW,UAAA,CAAA,SAAA,GAAY,CAAC,IAAiB,KAAA;AACvC,QAAI,IAAA,IAAA;AAAM,UAAW,UAAA,CAAA,QAAA,CAAS,CAA2B,wBAAA,EAAA,IAAI,CAAE,CAAA,CAAA,CAAA;AAAA,OACjE,CAAA;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,OAAA,GAAU,QAAS,CAAA,aAAA,CAAc,QAAQ,CAAA,CAAA;AAC/C,IAAA,OAAA,CAAQ,GACN,GAAA,oGAAA,CAAA;AACF,IAAQ,OAAA,CAAA,YAAA,CAAa,eAAe,WAAW,CAAA,CAAA;AAC/C,IAAA,OAAA,CAAQ,UAAU,MAAM;AACtB,MAAO,MAAA,CAAA,IAAI,KAAM,CAAA,uCAAuC,CAAC,CAAA,CAAA;AAAA,KAC3D,CAAA;AACA,IAAS,QAAA,CAAA,IAAA,CAAK,YAAY,OAAO,CAAA,CAAA;AAEjC,IAAM,MAAA,OAAA,GAAU,QAAS,CAAA,aAAA,CAAc,QAAQ,CAAA,CAAA;AAC/C,IAAA,OAAA,CAAQ,GACN,GAAA,uFAAA,CAAA;AACF,IAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,IAAQ,OAAA,CAAA,YAAA,CAAa,eAAe,WAAW,CAAA,CAAA;AAC/C,IAAA,OAAA,CAAQ,IAAO,GAAA,wBAAA,CAAA;AACf,IAAA,OAAA,CAAQ,UAAU,MAAM;AACtB,MAAO,MAAA,CAAA,IAAI,KAAM,CAAA,0BAA0B,CAAC,CAAA,CAAA;AAAA,KAC9C,CAAA;AACA,IAAS,QAAA,CAAA,IAAA,CAAK,YAAY,OAAO,CAAA,CAAA;AAAA,GAClC,CAAA,CAAA;AAED,EAAO,OAAA,WAAA,CAAA;AACT;;;;"}