"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.buildEncryptedXmlResponse = buildEncryptedXmlResponse;exports.extractEncryptFromXml = extractEncryptFromXml;exports.extractToUserNameFromXml = extractToUserNameFromXml; /** * WeCom XML 加解密辅助函数 * 用于 Agent 模式处理 XML 格式回调 */ /** * 从 XML 密文中提取 Encrypt 字段 */ function extractEncryptFromXml(xml) { const match = /<\/Encrypt>/s.exec(xml); if (!match?.[1]) { // 尝试不带 CDATA 的格式 const altMatch = /(.*?)<\/Encrypt>/s.exec(xml); if (!altMatch?.[1]) { throw new Error("Invalid XML: missing Encrypt field"); } return altMatch[1]; } return match[1]; } /** * 从 XML 中提取 ToUserName (CorpID) */ function extractToUserNameFromXml(xml) { const match = /<\/ToUserName>/s.exec(xml); if (!match?.[1]) { const altMatch = /(.*?)<\/ToUserName>/s.exec(xml); return altMatch?.[1] ?? ""; } return match[1]; } /** * 构建加密 XML 响应 */ function buildEncryptedXmlResponse(params) { return ` ${params.timestamp} `; } /* v9-2a99198eb6194966 */