eli-video-interview 1.6.8 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,9 +10,9 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
13
- import { Box, Stack } from 'fbm-ui/lib/mui';
14
- import { Typography } from 'fbm-ui';
15
13
  import { useAiReportStore } from "../../../../store/ai-report/global-store";
14
+ import { Typography } from 'fbm-ui';
15
+ import { Box, Stack } from 'fbm-ui/lib/mui';
16
16
  // 报告头部与"作弊风险"章节共用的风险标签名(命中其一即视为存在面试过程风险)
17
17
  var RISK_TAG_NAMES = ['疑似读稿', '疑似作弊', '面试切屏'];
18
18
  // 后端打的标签名是「疑似读背稿」,报告设计文案用「疑似读稿」,按同一项处理
@@ -59,11 +59,25 @@ var RiskBadge = function (_a) {
59
59
  : { color: '#52C41A', bgcolor: '#EAFBEA', border: '1px solid #B7EB8F' })) }, { children: has ? '有风险' : '无风险' })));
60
60
  };
61
61
  // 作弊检测详情表(不带头标题行,仅表格)
62
+ var RECITE_ROW_NAME = '疑似读稿';
63
+ var ReadReciteEvidence = function (_a) {
64
+ var evidence = _a.evidence, stepIndex = _a.stepIndex;
65
+ var text = evidence.text || '';
66
+ var matched = /「([^」]+)」/.exec(text);
67
+ var quote = matched === null || matched === void 0 ? void 0 : matched[1];
68
+ var rest = quote ? text.replace("\u300C".concat(quote, "\u300D"), '') : text;
69
+ var metrics = (evidence.metrics || []).slice(0, 3);
70
+ return (_jsxs("span", __assign({ style: { display: 'block', textAlign: 'left', lineHeight: '20px' } }, { children: [stepIndex > 0 && _jsxs("span", __assign({ style: { fontWeight: 600 } }, { children: ["\u7B2C ", stepIndex, " \u9898\uFF1A"] })), quote && _jsxs("span", __assign({ style: { color: '#D46B08', fontWeight: 600 } }, { children: ["\u300C", quote, "\u300D"] })), _jsx("span", { children: rest }), metrics.length > 0 && (_jsx("span", __assign({ style: { display: 'block', marginTop: 4, color: 'rgba(0,0,0,.45)', fontSize: 12, lineHeight: '18px' } }, { children: metrics
71
+ .map(function (m) {
72
+ return "".concat(m.name, " ").concat(m.value).concat(m.unit || '').concat(m.compare ? "\uFF08\u672C\u573A".concat(m.compare).concat(m.baseline ? "\uFF0C\u4E2D\u4F4D ".concat(m.baseline).concat(m.unit || '') : '', "\uFF09") : '');
73
+ })
74
+ .join(' · ') })))] })));
75
+ };
62
76
  var COL_W1 = 118; // 检测项目列宽
63
77
  var COL_W2 = 130; // 风险评估列宽
64
78
  var TEXT_COLOR = 'rgba(0,0,0,0.85)'; // 表格文字:比 0.6 深、不纯黑
65
79
  var CheatDetailTable = function (_a) {
66
- var hitNames = _a.hitNames;
80
+ var hitNames = _a.hitNames, reciteEvidence = _a.reciteEvidence, reciteStepIndex = _a.reciteStepIndex;
67
81
  return (_jsxs(Box, __assign({ sx: { mt: 2, borderRadius: 2, overflow: 'hidden', border: '1px solid rgba(0,191,255,0.05)', bgcolor: '#fff' } }, { children: [_jsxs(Stack, __assign({ direction: "row", sx: { background: 'rgba(0,191,255,0.04)', px: 1.5, py: 0.75, alignItems: 'center' } }, { children: [_jsx(Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u68C0\u6D4B\u9879\u76EE" })), _jsx(Typography, __assign({ sx: { width: COL_W2, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u98CE\u9669\u8BC4\u4F30" })), _jsx(Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u8BE6\u60C5\u8BF4\u660E" }))] })), CHEAT_ROWS.map(function (row, i) {
68
82
  var hit = hitNames.has(row.name);
69
83
  return (_jsxs(Stack, __assign({ direction: "row", sx: {
@@ -72,7 +86,7 @@ var CheatDetailTable = function (_a) {
72
86
  alignItems: 'center',
73
87
  borderTop: '1px solid #F2F4F6',
74
88
  bgcolor: i % 2 ? '#FAFCFE' : '#fff',
75
- } }, { children: [_jsx(Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12 } }, { children: row.name })), _jsx(Box, __assign({ sx: { width: COL_W2, flexShrink: 0, display: 'flex', justifyContent: 'center' } }, { children: _jsx(RiskBadge, { has: hit }) })), _jsx(Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, lineHeight: '20px' } }, { children: hit ? row.detail : '暂无风险' }))] }), row.name));
89
+ } }, { children: [_jsx(Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12 } }, { children: row.name })), _jsx(Box, __assign({ sx: { width: COL_W2, flexShrink: 0, display: 'flex', justifyContent: 'center' } }, { children: _jsx(RiskBadge, { has: hit }) })), _jsx(Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, lineHeight: '20px' } }, { children: hit && row.name === RECITE_ROW_NAME && (reciteEvidence === null || reciteEvidence === void 0 ? void 0 : reciteEvidence.text) ? (_jsx(ReadReciteEvidence, { evidence: reciteEvidence, stepIndex: reciteStepIndex })) : hit ? (row.detail) : ('暂无风险') }))] }), row.name));
76
90
  })] })));
77
91
  };
78
92
  var CheatRisk = function () {
@@ -81,7 +95,12 @@ var CheatRisk = function () {
81
95
  var v3AssetBase = store.v3AssetBase || '';
82
96
  var reportResult = store.reportResult || {};
83
97
  var interviewCheat = store.interviewCheat;
84
- var _b = reportResult.screenSwitchCount, screenSwitchCount = _b === void 0 ? 0 : _b, _c = reportResult.candidateInfo, candidateInfo = _c === void 0 ? {} : _c, _d = reportResult.tags, reportTags = _d === void 0 ? [] : _d;
98
+ var _b = reportResult.screenSwitchCount, screenSwitchCount = _b === void 0 ? 0 : _b, _c = reportResult.candidateInfo, candidateInfo = _c === void 0 ? {} : _c, _d = reportResult.tags, reportTags = _d === void 0 ? [] : _d, _e = reportResult.steps, reportSteps = _e === void 0 ? [] : _e;
99
+ // 读背稿线索:后端判定命中时一并返回;题号靠 stepToken 在 steps 里的位置算(1-based)
100
+ var readReciteEvidence = reportResult.readReciteEvidence;
101
+ var reciteStepIndex = (readReciteEvidence === null || readReciteEvidence === void 0 ? void 0 : readReciteEvidence.stepToken)
102
+ ? reportSteps.findIndex(function (step) { return (step === null || step === void 0 ? void 0 : step.token) === readReciteEvidence.stepToken; }) + 1
103
+ : 0;
85
104
  // 与报告头部同源取标签:候选人信息卡标签优先,兜底报告级标签
86
105
  var tagList = ((_a = candidateInfo === null || candidateInfo === void 0 ? void 0 : candidateInfo.tags) === null || _a === void 0 ? void 0 : _a.length) ? candidateInfo.tags : reportTags;
87
106
  var hitNames = new Set((tagList || []).map(function (t) { return normalizeTagName(t === null || t === void 0 ? void 0 : t.name); }).filter(function (n) { return Boolean(n); }));
@@ -89,7 +108,7 @@ var CheatRisk = function () {
89
108
  // 命中风险标签 或 旧字段(isCheat/切屏次数) 均视为有风险
90
109
  var hasRisk = riskTags.length > 0 || !!(interviewCheat === null || interviewCheat === void 0 ? void 0 : interviewCheat.isCheat) || screenSwitchCount > 0;
91
110
  var fallbackInfo = (interviewCheat === null || interviewCheat === void 0 ? void 0 : interviewCheat.info) || '面试过程中可能存在作弊行为,请结合面试视频核对。';
92
- return (_jsxs(Box, __assign({ id: "report-risk", px: 2, mt: 3 }, { children: [_jsx(Box, __assign({ sx: { display: 'flex', alignItems: 'center' } }, { children: v3AssetBase && _jsx("img", { src: "".concat(v3AssetBase, "/risk_title.png"), alt: "\u4F5C\u5F0A\u98CE\u9669", width: 94, height: 28, style: { flexShrink: 0 } }) })), hasRisk ? (_jsxs(_Fragment, { children: [_jsx(Box, __assign({ sx: { bgcolor: 'rgba(0,191,255,0.03)', borderRadius: 2, p: 2, mt: 2 } }, { children: riskTags.length > 0 ? (_jsxs(Stack, __assign({ direction: "row", alignItems: "center", flexWrap: "wrap", gap: 1 }, { children: [_jsx(Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: "\u9762\u8BD5\u8FC7\u7A0B\u98CE\u9669" })), riskTags.map(function (t) { return (_jsx(RiskPill, { name: t.name }, t.token || t.name)); })] }))) : (_jsx(Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14 } }, { children: fallbackInfo }))) })), _jsx(CheatDetailTable, { hitNames: hitNames })] })) : (
111
+ return (_jsxs(Box, __assign({ id: "report-risk", px: 2, mt: 3 }, { children: [_jsx(Box, __assign({ sx: { display: 'flex', alignItems: 'center' } }, { children: v3AssetBase && _jsx("img", { src: "".concat(v3AssetBase, "/risk_title.png"), alt: "\u4F5C\u5F0A\u98CE\u9669", width: 94, height: 28, style: { flexShrink: 0 } }) })), hasRisk ? (_jsxs(_Fragment, { children: [_jsx(Box, __assign({ sx: { bgcolor: 'rgba(0,191,255,0.03)', borderRadius: 2, p: 2, mt: 2 } }, { children: riskTags.length > 0 ? (_jsxs(Stack, __assign({ direction: "row", alignItems: "center", flexWrap: "wrap", gap: 1 }, { children: [_jsx(Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: "\u9762\u8BD5\u8FC7\u7A0B\u98CE\u9669" })), riskTags.map(function (t) { return (_jsx(RiskPill, { name: t.name }, t.token || t.name)); })] }))) : (_jsx(Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14 } }, { children: fallbackInfo }))) })), _jsx(CheatDetailTable, { hitNames: hitNames, reciteEvidence: readReciteEvidence, reciteStepIndex: reciteStepIndex })] })) : (
93
112
  /* 无风险(蓝湖「AI面试报告 v16」定义):作弊风险评估 + 无风险(不显示表格) */
94
113
  _jsxs(Box, __assign({ sx: { bgcolor: '#F0F8FB', borderRadius: 2, p: 2, mt: 2 } }, { children: [_jsxs(Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: ["\u4F5C\u5F0A\u98CE\u9669\u8BC4\u4F30\uFF1A", _jsx("span", __assign({ style: { color: '#52C41A', fontWeight: 600 } }, { children: "\u65E0\u98CE\u9669" }))] })), _jsx(Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14, mt: 1 } }, { children: "\u672A\u53D1\u73B0\u660E\u786E\u4F5C\u5F0A\u98CE\u9669\uFF0C\u8BF7\u7ED3\u5408\u9762\u8BD5\u89C6\u9891\u7EE7\u7EED\u6838\u5BF9\u3002" }))] })))] })));
95
114
  };
@@ -12,9 +12,9 @@ var __assign = (this && this.__assign) || function () {
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  var jsx_runtime_1 = require("react/jsx-runtime");
15
- var mui_1 = require("fbm-ui/lib/mui");
16
- var fbm_ui_1 = require("fbm-ui");
17
15
  var global_store_1 = require("../../../../store/ai-report/global-store");
16
+ var fbm_ui_1 = require("fbm-ui");
17
+ var mui_1 = require("fbm-ui/lib/mui");
18
18
  // 报告头部与"作弊风险"章节共用的风险标签名(命中其一即视为存在面试过程风险)
19
19
  var RISK_TAG_NAMES = ['疑似读稿', '疑似作弊', '面试切屏'];
20
20
  // 后端打的标签名是「疑似读背稿」,报告设计文案用「疑似读稿」,按同一项处理
@@ -61,11 +61,25 @@ var RiskBadge = function (_a) {
61
61
  : { color: '#52C41A', bgcolor: '#EAFBEA', border: '1px solid #B7EB8F' })) }, { children: has ? '有风险' : '无风险' })));
62
62
  };
63
63
  // 作弊检测详情表(不带头标题行,仅表格)
64
+ var RECITE_ROW_NAME = '疑似读稿';
65
+ var ReadReciteEvidence = function (_a) {
66
+ var evidence = _a.evidence, stepIndex = _a.stepIndex;
67
+ var text = evidence.text || '';
68
+ var matched = /「([^」]+)」/.exec(text);
69
+ var quote = matched === null || matched === void 0 ? void 0 : matched[1];
70
+ var rest = quote ? text.replace("\u300C".concat(quote, "\u300D"), '') : text;
71
+ var metrics = (evidence.metrics || []).slice(0, 3);
72
+ return ((0, jsx_runtime_1.jsxs)("span", __assign({ style: { display: 'block', textAlign: 'left', lineHeight: '20px' } }, { children: [stepIndex > 0 && (0, jsx_runtime_1.jsxs)("span", __assign({ style: { fontWeight: 600 } }, { children: ["\u7B2C ", stepIndex, " \u9898\uFF1A"] })), quote && (0, jsx_runtime_1.jsxs)("span", __assign({ style: { color: '#D46B08', fontWeight: 600 } }, { children: ["\u300C", quote, "\u300D"] })), (0, jsx_runtime_1.jsx)("span", { children: rest }), metrics.length > 0 && ((0, jsx_runtime_1.jsx)("span", __assign({ style: { display: 'block', marginTop: 4, color: 'rgba(0,0,0,.45)', fontSize: 12, lineHeight: '18px' } }, { children: metrics
73
+ .map(function (m) {
74
+ return "".concat(m.name, " ").concat(m.value).concat(m.unit || '').concat(m.compare ? "\uFF08\u672C\u573A".concat(m.compare).concat(m.baseline ? "\uFF0C\u4E2D\u4F4D ".concat(m.baseline).concat(m.unit || '') : '', "\uFF09") : '');
75
+ })
76
+ .join(' · ') })))] })));
77
+ };
64
78
  var COL_W1 = 118; // 检测项目列宽
65
79
  var COL_W2 = 130; // 风险评估列宽
66
80
  var TEXT_COLOR = 'rgba(0,0,0,0.85)'; // 表格文字:比 0.6 深、不纯黑
67
81
  var CheatDetailTable = function (_a) {
68
- var hitNames = _a.hitNames;
82
+ var hitNames = _a.hitNames, reciteEvidence = _a.reciteEvidence, reciteStepIndex = _a.reciteStepIndex;
69
83
  return ((0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ sx: { mt: 2, borderRadius: 2, overflow: 'hidden', border: '1px solid rgba(0,191,255,0.05)', bgcolor: '#fff' } }, { children: [(0, jsx_runtime_1.jsxs)(mui_1.Stack, __assign({ direction: "row", sx: { background: 'rgba(0,191,255,0.04)', px: 1.5, py: 0.75, alignItems: 'center' } }, { children: [(0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u68C0\u6D4B\u9879\u76EE" })), (0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { width: COL_W2, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u98CE\u9669\u8BC4\u4F30" })), (0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, fontWeight: 600 } }, { children: "\u8BE6\u60C5\u8BF4\u660E" }))] })), CHEAT_ROWS.map(function (row, i) {
70
84
  var hit = hitNames.has(row.name);
71
85
  return ((0, jsx_runtime_1.jsxs)(mui_1.Stack, __assign({ direction: "row", sx: {
@@ -74,7 +88,7 @@ var CheatDetailTable = function (_a) {
74
88
  alignItems: 'center',
75
89
  borderTop: '1px solid #F2F4F6',
76
90
  bgcolor: i % 2 ? '#FAFCFE' : '#fff',
77
- } }, { children: [(0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12 } }, { children: row.name })), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { width: COL_W2, flexShrink: 0, display: 'flex', justifyContent: 'center' } }, { children: (0, jsx_runtime_1.jsx)(RiskBadge, { has: hit }) })), (0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, lineHeight: '20px' } }, { children: hit ? row.detail : '暂无风险' }))] }), row.name));
91
+ } }, { children: [(0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { width: COL_W1, flexShrink: 0, textAlign: 'center', color: TEXT_COLOR, fontSize: 12 } }, { children: row.name })), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { width: COL_W2, flexShrink: 0, display: 'flex', justifyContent: 'center' } }, { children: (0, jsx_runtime_1.jsx)(RiskBadge, { has: hit }) })), (0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { flex: 1, textAlign: 'center', color: TEXT_COLOR, fontSize: 12, lineHeight: '20px' } }, { children: hit && row.name === RECITE_ROW_NAME && (reciteEvidence === null || reciteEvidence === void 0 ? void 0 : reciteEvidence.text) ? ((0, jsx_runtime_1.jsx)(ReadReciteEvidence, { evidence: reciteEvidence, stepIndex: reciteStepIndex })) : hit ? (row.detail) : ('暂无风险') }))] }), row.name));
78
92
  })] })));
79
93
  };
80
94
  var CheatRisk = function () {
@@ -83,7 +97,12 @@ var CheatRisk = function () {
83
97
  var v3AssetBase = store.v3AssetBase || '';
84
98
  var reportResult = store.reportResult || {};
85
99
  var interviewCheat = store.interviewCheat;
86
- var _b = reportResult.screenSwitchCount, screenSwitchCount = _b === void 0 ? 0 : _b, _c = reportResult.candidateInfo, candidateInfo = _c === void 0 ? {} : _c, _d = reportResult.tags, reportTags = _d === void 0 ? [] : _d;
100
+ var _b = reportResult.screenSwitchCount, screenSwitchCount = _b === void 0 ? 0 : _b, _c = reportResult.candidateInfo, candidateInfo = _c === void 0 ? {} : _c, _d = reportResult.tags, reportTags = _d === void 0 ? [] : _d, _e = reportResult.steps, reportSteps = _e === void 0 ? [] : _e;
101
+ // 读背稿线索:后端判定命中时一并返回;题号靠 stepToken 在 steps 里的位置算(1-based)
102
+ var readReciteEvidence = reportResult.readReciteEvidence;
103
+ var reciteStepIndex = (readReciteEvidence === null || readReciteEvidence === void 0 ? void 0 : readReciteEvidence.stepToken)
104
+ ? reportSteps.findIndex(function (step) { return (step === null || step === void 0 ? void 0 : step.token) === readReciteEvidence.stepToken; }) + 1
105
+ : 0;
87
106
  // 与报告头部同源取标签:候选人信息卡标签优先,兜底报告级标签
88
107
  var tagList = ((_a = candidateInfo === null || candidateInfo === void 0 ? void 0 : candidateInfo.tags) === null || _a === void 0 ? void 0 : _a.length) ? candidateInfo.tags : reportTags;
89
108
  var hitNames = new Set((tagList || []).map(function (t) { return normalizeTagName(t === null || t === void 0 ? void 0 : t.name); }).filter(function (n) { return Boolean(n); }));
@@ -91,7 +110,7 @@ var CheatRisk = function () {
91
110
  // 命中风险标签 或 旧字段(isCheat/切屏次数) 均视为有风险
92
111
  var hasRisk = riskTags.length > 0 || !!(interviewCheat === null || interviewCheat === void 0 ? void 0 : interviewCheat.isCheat) || screenSwitchCount > 0;
93
112
  var fallbackInfo = (interviewCheat === null || interviewCheat === void 0 ? void 0 : interviewCheat.info) || '面试过程中可能存在作弊行为,请结合面试视频核对。';
94
- return ((0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ id: "report-risk", px: 2, mt: 3 }, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { display: 'flex', alignItems: 'center' } }, { children: v3AssetBase && (0, jsx_runtime_1.jsx)("img", { src: "".concat(v3AssetBase, "/risk_title.png"), alt: "\u4F5C\u5F0A\u98CE\u9669", width: 94, height: 28, style: { flexShrink: 0 } }) })), hasRisk ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { bgcolor: 'rgba(0,191,255,0.03)', borderRadius: 2, p: 2, mt: 2 } }, { children: riskTags.length > 0 ? ((0, jsx_runtime_1.jsxs)(mui_1.Stack, __assign({ direction: "row", alignItems: "center", flexWrap: "wrap", gap: 1 }, { children: [(0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: "\u9762\u8BD5\u8FC7\u7A0B\u98CE\u9669" })), riskTags.map(function (t) { return ((0, jsx_runtime_1.jsx)(RiskPill, { name: t.name }, t.token || t.name)); })] }))) : ((0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14 } }, { children: fallbackInfo }))) })), (0, jsx_runtime_1.jsx)(CheatDetailTable, { hitNames: hitNames })] })) : (
113
+ return ((0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ id: "report-risk", px: 2, mt: 3 }, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { display: 'flex', alignItems: 'center' } }, { children: v3AssetBase && (0, jsx_runtime_1.jsx)("img", { src: "".concat(v3AssetBase, "/risk_title.png"), alt: "\u4F5C\u5F0A\u98CE\u9669", width: 94, height: 28, style: { flexShrink: 0 } }) })), hasRisk ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { bgcolor: 'rgba(0,191,255,0.03)', borderRadius: 2, p: 2, mt: 2 } }, { children: riskTags.length > 0 ? ((0, jsx_runtime_1.jsxs)(mui_1.Stack, __assign({ direction: "row", alignItems: "center", flexWrap: "wrap", gap: 1 }, { children: [(0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: "\u9762\u8BD5\u8FC7\u7A0B\u98CE\u9669" })), riskTags.map(function (t) { return ((0, jsx_runtime_1.jsx)(RiskPill, { name: t.name }, t.token || t.name)); })] }))) : ((0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14 } }, { children: fallbackInfo }))) })), (0, jsx_runtime_1.jsx)(CheatDetailTable, { hitNames: hitNames, reciteEvidence: readReciteEvidence, reciteStepIndex: reciteStepIndex })] })) : (
95
114
  /* 无风险(蓝湖「AI面试报告 v16」定义):作弊风险评估 + 无风险(不显示表格) */
96
115
  (0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ sx: { bgcolor: '#F0F8FB', borderRadius: 2, p: 2, mt: 2 } }, { children: [(0, jsx_runtime_1.jsxs)(fbm_ui_1.Typography, __assign({ sx: { color: '#1890FF', fontSize: 14, fontWeight: 600 } }, { children: ["\u4F5C\u5F0A\u98CE\u9669\u8BC4\u4F30\uFF1A", (0, jsx_runtime_1.jsx)("span", __assign({ style: { color: '#52C41A', fontWeight: 600 } }, { children: "\u65E0\u98CE\u9669" }))] })), (0, jsx_runtime_1.jsx)(fbm_ui_1.Typography, __assign({ sx: { color: 'rgba(0,0,0,0.6)', fontSize: 14, mt: 1 } }, { children: "\u672A\u53D1\u73B0\u660E\u786E\u4F5C\u5F0A\u98CE\u9669\uFF0C\u8BF7\u7ED3\u5408\u9762\u8BD5\u89C6\u9891\u7EE7\u7EED\u6838\u5BF9\u3002" }))] })))] })));
97
116
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eli-video-interview",
3
- "version": "1.6.8",
3
+ "version": "1.8.0",
4
4
  "description": "鳄梨科技 AI视频面试 React SDK",
5
5
  "author": "鳄梨科技",
6
6
  "license": "MIT",