UNPKG

t-comm

Version:

专业、稳定、纯粹的工具库

152 lines (149 loc) 5.35 kB
import { b as __awaiter, c as __generator } from '../tslib.es6-096fffdd.js'; import { timeStampFormat } from '../time/time.mjs'; import { batchSendWxRobotMarkdown } from '../wecom-robot/batch-send.mjs'; import { getHistoryModeConfigDiff } from './api.mjs'; import '../wecom-robot/base.mjs'; import '../wecom-robot/helper.mjs'; import 'axios'; import '../wecom-robot/send-img.mjs'; import '../node-img/img.mjs'; import '../rainbow-to-cos/api.mjs'; import '../node/fs-util.mjs'; import 'fs'; import 'path'; import '../fs/fs.mjs'; import '../rainbow/rainbow-admin.mjs'; import '../rainbow/helper/helper.mjs'; import '../rainbow/helper/rainbow-base-request.mjs'; import '../rainbow/helper/rainbow-signature.mjs'; import '../rainbow/rainbow-user.mjs'; import '../list/flat.mjs'; import '@babel/runtime/helpers/typeof'; import '../rainbow/sdk.mjs'; import '../json/json-parse.mjs'; import '../rainbow-to-cos/helper/helper.mjs'; import '../string/string.mjs'; import '../tencent-cloud/cos/link.mjs'; import '../rainbow-to-cos/helper/value-type.mjs'; function getHistoryModeConfigDiffAndSendRobot(_a) { var secretInfo = _a.secretInfo, appName = _a.appName, key = _a.key, chatId = _a.chatId, webhookUrl = _a.webhookUrl, mentions = _a.mentions, fetchRainbowConfigOptions = _a.fetchRainbowConfigOptions, _b = _a.heartbeat, heartbeat = _b === void 0 ? false : _b; return __awaiter(this, void 0, void 0, function () { var res, equal, addedMap, deletedMap, parsed, message; return __generator(this, function (_c) { switch (_c.label) { case 0: return [4 /*yield*/, getHistoryModeConfigDiff({ secretInfo: secretInfo, appName: appName, key: key, fetchRainbowConfigOptions: fetchRainbowConfigOptions })]; case 1: res = _c.sent(); equal = res.equal, addedMap = res.addedMap, deletedMap = res.deletedMap, parsed = res.parsed; if (equal && !heartbeat) { return [2 /*return*/, { message: '', equal: equal, addedMap: addedMap, deletedMap: deletedMap }]; } message = ''; if (heartbeat) { message = getHeartbeatMessage({ parsed: parsed, mentions: mentions }); } else { message = genMessage({ addedMap: addedMap, deletedMap: deletedMap, mentions: mentions, parsed: parsed }); } try { if (chatId && webhookUrl) { batchSendWxRobotMarkdown({ chatId: chatId, content: message, webhookUrl: webhookUrl }); } } catch (err) { console.log('[sendRainbowInfoToRobot] err: \n', err); } return [2 /*return*/, { message: message, equal: equal, addedMap: addedMap, deletedMap: deletedMap }]; } }); }); } function getHeartbeatMessage(_a) { var _b; var parsed = _a.parsed, mentions = _a.mentions; var mentionStr = ((_b = mentions === null || mentions === void 0 ? void 0 : mentions.map(function (item) { return "<@".concat(item, ">"); })) === null || _b === void 0 ? void 0 : _b.join('')) || ''; var result = ["\u3010History \u6A21\u5F0F\u5B50\u5DE5\u7A0B\u7EDF\u8BA1\u3011".concat(timeStampFormat(new Date().getTime(), 'yyyy-MM-dd')).concat(mentionStr)]; result.push("- ".concat(getStatisticsMessage({ parsed: parsed }))); return result.join('\n'); } function getStatisticsMessage(_a) { var parsed = _a.parsed; var validDomainLength = Object.keys(parsed).filter(function (domain) { return parsed[domain].length; }).length; var totalSubProjects = Object.keys(parsed).reduce(function (acc, item) { return acc + (parsed[item].length || 0); }, 0); return "\u5F53\u524D\u4F7F\u7528`history`\u6A21\u5F0F\u7684\u57DF\u540D\u5171`".concat(validDomainLength, "`\u4E2A\uFF0C\u5B50\u5DE5\u7A0B\u5171`").concat(totalSubProjects, "`\u4E2A"); } function genMessage(_a) { var _b; var addedMap = _a.addedMap, deletedMap = _a.deletedMap, mentions = _a.mentions, parsed = _a.parsed; var mentionStr = ((_b = mentions === null || mentions === void 0 ? void 0 : mentions.map(function (item) { return "<@".concat(item, ">"); })) === null || _b === void 0 ? void 0 : _b.join('')) || ''; var result = ["> \u26A0\uFE0F \u3010History \u6A21\u5F0F\u5B50\u5DE5\u7A0B\u66F4\u65B0\u3011".concat(mentionStr)]; Object.keys(addedMap).forEach(function (domain) { var list = addedMap[domain].map(function (item) { return "`".concat(item, "`"); }); if (list.length) { result.push("- `".concat(domain, "`\u65B0\u589E: ").concat(list.join('、'))); } }); Object.keys(deletedMap).forEach(function (domain) { var list = deletedMap[domain].map(function (item) { return "`".concat(item, "`"); }); if (list.length) { result.push("- `".concat(domain, "`\u5220\u9664: ").concat(list.join('、'))); } }); result.push(getStatisticsMessage({ parsed: parsed })); return result.join('\n'); } export { getHistoryModeConfigDiffAndSendRobot };