{"version":3,"file":"myprintClientService.mjs","sources":["../../../../src/plugins/myprintClientService.ts"],"sourcesContent":["import { useSocket } from '@myprint/design/stores/socket';\nimport { ClientCmd, ClientResult, Panel, Printer, PrintOptions, PrintResult } from '@myprint/design/types/entity';\nimport { generateUUID } from '@myprint/design/utils/utils';\nimport { unit2unit } from '@myprint/design/utils/devicePixelRatio';\nimport { getCurrentPanelUnit, getPrintRealHeight } from '@myprint/design/utils/elementUtil';\n\nexport const myPrintClientService = {\n    print(clientCmd: ClientCmd, panel: Panel) {\n        const options = clientCmd.options!;\n        if (options.html != null) {\n            options.width = unit2unit(getCurrentPanelUnit(panel), 'mm', panel.width);\n            options.height = unit2unit(getCurrentPanelUnit(panel), 'mm', getPrintRealHeight(panel));\n        }\n        return new Promise<ClientResult>((resolve, _reject) => {\n            useSocket().SEND(clientCmd.taskId, JSON.stringify(clientCmd)).then((msg: ClientResult) => {\n                resolve(msg);\n            });\n        });\n    },\n\n    connectIs() {\n        return useSocket().connect;\n    },\n\n    getPrinterList() {\n        return useSocket().printerList as Printer[];\n    },\n\n    asyncGetPrinterList() {\n        return new Promise<Printer[]>((resolve, reject) => {\n            if (useSocket().connect) {\n                const taskId = generateUUID();\n                useSocket().SEND(taskId, JSON.stringify({\n                    taskId,\n                    cmd: 'printerList'\n                })).then((res: ClientResult) => {\n                    useSocket().SET_PRINTER_LIST(res.data);\n                    resolve(res.data);\n                }).catch(e => {\n                    reject(e);\n                });\n            } else {\n                reject({ msg: '客户端未连接' });\n            }\n        });\n    }\n};\n\nexport const handleClientResult = (clientCmd: ClientResult, printResult: Function, previewTimeOutMap: any, resolveMap: any) => {\n    if (clientCmd.cmd == 'printResult') {\n        printResult(clientCmd.taskId, {\n            status: clientCmd.status ? 'SUCCESS' : 'ERROR',\n            msg: clientCmd.msg,\n            type: 'CLIENT_PRINT'\n        }, previewTimeOutMap, resolveMap);\n    }\n\n    if (clientCmd.cmd == 'generatePdfResult') {\n        let data = clientCmd.data as Buffer;\n        let blob: Blob = null!;\n        if (data != null) {\n            // 将Buffer对象转换为Uint8Array数组\n            // @ts-ignore\n            const uint8Array = new Uint8Array(data.data);\n            // 将Uint8Array数组转换为Blob对象\n            blob = new Blob([uint8Array], { type: 'application/octet-stream' });\n            // download(blob, pdfName + '.pdf');\n        }\n\n        printResult(clientCmd.taskId, {\n            status: 'SUCCESS',\n            msg: '',\n            blob,\n            type: 'CLIENT_GENERATE_PDF'\n        }, previewTimeOutMap, resolveMap);\n\n        return blob;\n    }\n};\n\nexport function printResult(taskId: string, result: PrintResult, previewTimeOutMap: any, resolveMap: any) {\n    if (previewTimeOutMap[taskId]) {\n        clearTimeout(previewTimeOutMap[taskId]);\n        delete previewTimeOutMap[taskId];\n    }\n\n    if (resolveMap[taskId]) {\n        resolveMap[taskId](result);\n        delete resolveMap[taskId];\n    }\n}\n\nexport function handleTimeOut(printProps: PrintOptions, previewTimeOutMap: any, resolveMap: any) {\n    if (printProps.timeout! > 0) {\n        previewTimeOutMap[printProps.taskId!] = setTimeout(() => {\n            printResult(printProps.taskId!, {\n                status: 'TIMEOUT',\n                type: 'TIMEOUT'\n            }, previewTimeOutMap, resolveMap);\n        }, printProps.timeout);\n    }\n}\n"],"names":["printResult"],"mappings":"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"}