eli-video-interview 1.9.1 → 1.9.2

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.
@@ -111,14 +111,16 @@ var ReportPie = function (props) {
111
111
  color: '#33A853',
112
112
  fontSize: 10,
113
113
  lineHeight: 15,
114
+ // 固定胶囊宽高:否则容器宽度不够时「全局」会被折成两行
115
+ width: 32,
116
+ height: 17,
114
117
  padding: [1, 5],
115
118
  borderRadius: 8,
116
119
  backgroundColor: 'rgba(78, 201, 83, 0.14)',
117
120
  align: 'center',
118
121
  },
119
122
  },
120
- overflow: 'break',
121
- width: 76,
123
+ // 不再写死 label 宽度(写死会让长维度名 + 全局胶囊互相挤压):交给 echarts 按内容布局
122
124
  lineHeight: 18,
123
125
  },
124
126
  labelLine: {
@@ -52,7 +52,7 @@ function setupCanvas(canvas) {
52
52
  // Good: Array<number>;
53
53
  // Best: Array<number>;
54
54
  // }
55
- var DIVIDER_TEXT = '以下为全局维度(不按题目评价)';
55
+ var DIVIDER_TEXT = '以下为全局维度';
56
56
  var DIVIDER_HEIGHT = 20;
57
57
  var MAX_WIDTH = 315;
58
58
  var MAX_HEIGHT = 24;
@@ -55,6 +55,8 @@ var tdStyle = {
55
55
  padding: '12px',
56
56
  verticalAlign: 'middle',
57
57
  };
58
+ // 左侧几列按内容定宽 + 不换行,把剩余宽度让给「一句话评价」(否则维度名/得分会被折行)
59
+ var tdNowrapStyle = __assign(__assign({}, tdStyle), { whiteSpace: 'nowrap' });
58
60
  /**
59
61
  * 全局维度(只绑试卷、不绑题目):紧凑表格展示,行内展开可改分 / 改评价。
60
62
  * 由宿主 `ReportSectionFrame`(与「视频题」同一套白框)承载,标题缎带挂在白框左上角。
@@ -79,6 +81,6 @@ var Index = function () {
79
81
  if (!showAiDimension || globalDimensions.length === 0) {
80
82
  return null;
81
83
  }
82
- return (_jsx(ReportSectionFrame, __assign({ sx: { mt: 2, mb: 2 } }, { children: _jsxs(Box, __assign({ id: "report-global-dimension" }, { children: [_jsx(AiHeaderTitle, { name: "\u5168\u5C40\u7EF4\u5EA6" }), _jsx(Box, __assign({ mx: 1, mt: 2 }, { children: _jsx(Box, __assign({ sx: { border: BORDER, borderRadius: 2, overflow: 'hidden' } }, { children: _jsxs("table", __assign({ style: { width: '100%', borderCollapse: 'collapse', fontSize: 13, color: 'rgba(0, 0, 0, 0.86)' } }, { children: [_jsx("thead", { children: _jsxs("tr", __assign({ style: { background: 'rgba(0, 0, 0, 0.02)' } }, { children: [_jsx("th", __assign({ style: thStyle }, { children: "\u7EF4\u5EA6" })), _jsx("th", __assign({ style: thStyle }, { children: "\u6765\u6E90" })), _jsx("th", __assign({ style: thStyle }, { children: "\u6743\u91CD" })), _jsx("th", __assign({ style: thStyle }, { children: "\u5F97\u5206" })), _jsx("th", __assign({ style: thStyle }, { children: "\u4E00\u53E5\u8BDD\u8BC4\u4EF7" })), _jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 56, textAlign: 'center' }) }, { children: "\u64CD\u4F5C" }))] })) }), globalDimensions.map(function (v, index) { return (_jsxs("tbody", { children: [_jsxs("tr", __assign({ style: { borderTop: BORDER } }, { children: [_jsx("td", __assign({ style: __assign(__assign({}, tdStyle), { fontWeight: 500 }) }, { children: v.name })), _jsx("td", __assign({ style: tdStyle }, { children: _jsx(Chip, { color: "success", label: "\u5168\u5C40", size: "small" }) })), _jsxs("td", __assign({ style: __assign(__assign({}, tdStyle), { color: TEXT_MUTED }) }, { children: [v.weight, "%"] })), _jsxs("td", __assign({ style: tdStyle }, { children: [_jsx(Box, __assign({ component: "span", sx: { color: SCORE_COLOR[v.scoreLevel] || 'rgba(0, 0, 0, 0.86)', fontWeight: 600 } }, { children: v.score })), _jsx(Box, __assign({ component: "span", sx: { color: TEXT_MUTED, ml: 0.5, fontSize: 12 } }, { children: v.scoreText }))] })), _jsx("td", __assign({ style: __assign(__assign({}, tdStyle), { color: 'rgba(0, 0, 0, 0.6)' }) }, { children: v.answer })), _jsx("td", __assign({ style: __assign(__assign({}, tdStyle), { textAlign: 'center' }) }, { children: canEditAiDimension && (_jsx(IconButton, __assign({ size: "small", onClick: function () { return setExpandedIndex(expandedIndex === index ? -1 : index); } }, { children: _jsx(EditIcon, {}) }))) }))] })), _jsx("tr", { children: _jsx("td", __assign({ colSpan: 6, style: { padding: 0 } }, { children: _jsx(Collapse, __assign({ in: expandedIndex === index }, { children: _jsxs(Box, __assign({ sx: { px: 2, pt: 1.5, pb: 2, bgcolor: '#FAFBFA', borderTop: BORDER } }, { children: [_jsxs(Typography, __assign({ variant: "caption", color: "textSecondary", display: "block", mb: 1 }, { children: ["\u8BC4\u4EF7\u6807\u51C6\uFF1A", v.define || '—'] })), _jsx(ScoreSlider, { width: "100%", isShowLabel: true, score: v.score, scoreText: v.scoreText, scoreLevel: v.scoreLevel, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleScoreChange(index, score); } }), _jsx(Stack, __assign({ mt: 1.5 }, { children: _jsx(WorkPlace, { thirdOrderID: orderToken, token: v.token, canEdit: canEditAiDimension, answer: v.answer, mode: "show" }) }))] })) })) })) })] }, v.token || v.name)); })] })) })) }))] })) })));
84
+ return (_jsx(ReportSectionFrame, __assign({ sx: { mt: 2, mb: 2 } }, { children: _jsxs(Box, __assign({ id: "report-global-dimension" }, { children: [_jsx(AiHeaderTitle, { name: "\u5168\u5C40\u7EF4\u5EA6" }), _jsx(Box, __assign({ mx: 1, mt: 2 }, { children: _jsx(Box, __assign({ sx: { border: BORDER, borderRadius: 2, overflow: 'hidden' } }, { children: _jsxs("table", __assign({ style: { width: '100%', borderCollapse: 'collapse', fontSize: 13, color: 'rgba(0, 0, 0, 0.86)' } }, { children: [_jsx("thead", { children: _jsxs("tr", __assign({ style: { background: 'rgba(0, 0, 0, 0.02)' } }, { children: [_jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 150 }) }, { children: "\u7EF4\u5EA6" })), _jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 88 }) }, { children: "\u6765\u6E90" })), _jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 76 }) }, { children: "\u6743\u91CD" })), _jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 96 }) }, { children: "\u5F97\u5206" })), _jsx("th", __assign({ style: thStyle }, { children: "\u4E00\u53E5\u8BDD\u8BC4\u4EF7" })), _jsx("th", __assign({ style: __assign(__assign({}, thStyle), { width: 56, textAlign: 'center' }) }, { children: "\u64CD\u4F5C" }))] })) }), globalDimensions.map(function (v, index) { return (_jsxs("tbody", { children: [_jsxs("tr", __assign({ style: { borderTop: BORDER } }, { children: [_jsx("td", __assign({ style: __assign(__assign({}, tdNowrapStyle), { fontWeight: 500 }) }, { children: v.name })), _jsx("td", __assign({ style: tdNowrapStyle }, { children: _jsx(Chip, { color: "success", label: "\u5168\u5C40", size: "small" }) })), _jsxs("td", __assign({ style: __assign(__assign({}, tdNowrapStyle), { color: TEXT_MUTED }) }, { children: [v.weight, "%"] })), _jsxs("td", __assign({ style: tdNowrapStyle }, { children: [_jsx(Box, __assign({ component: "span", sx: { color: SCORE_COLOR[v.scoreLevel] || 'rgba(0, 0, 0, 0.86)', fontWeight: 600 } }, { children: v.score })), _jsx(Box, __assign({ component: "span", sx: { color: TEXT_MUTED, ml: 0.5, fontSize: 12 } }, { children: v.scoreText }))] })), _jsx("td", __assign({ style: __assign(__assign({}, tdStyle), { color: 'rgba(0, 0, 0, 0.6)' }) }, { children: v.answer })), _jsx("td", __assign({ style: __assign(__assign({}, tdStyle), { textAlign: 'center' }) }, { children: canEditAiDimension && (_jsx(IconButton, __assign({ size: "small", onClick: function () { return setExpandedIndex(expandedIndex === index ? -1 : index); } }, { children: _jsx(EditIcon, {}) }))) }))] })), _jsx("tr", { children: _jsx("td", __assign({ colSpan: 6, style: { padding: 0 } }, { children: _jsx(Collapse, __assign({ in: expandedIndex === index }, { children: _jsxs(Box, __assign({ sx: { px: 2, pt: 1.5, pb: 2, bgcolor: '#FAFBFA', borderTop: BORDER } }, { children: [_jsxs(Typography, __assign({ variant: "caption", color: "textSecondary", display: "block", mb: 1 }, { children: ["\u8BC4\u4EF7\u6807\u51C6\uFF1A", v.define || '—'] })), _jsx(ScoreSlider, { width: "100%", isShowLabel: true, score: v.score, scoreText: v.scoreText, scoreLevel: v.scoreLevel, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleScoreChange(index, score); } }), _jsx(Stack, __assign({ mt: 1.5 }, { children: _jsx(WorkPlace, { thirdOrderID: orderToken, token: v.token, canEdit: canEditAiDimension, answer: v.answer, mode: "show" }) }))] })) })) })) })] }, v.token || v.name)); })] })) })) }))] })) })));
83
85
  };
84
86
  export default memo(Index);
@@ -13,7 +13,6 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
13
13
  import AIEvaluate from './components/AIEvaluate';
14
14
  import CheatRisk from './components/CheatRisk/CheatRisk';
15
15
  import { FormReport } from './components/Form';
16
- import GlobalDimensions from './components/GlobalDimensions';
17
16
  import NotFinish from './components/NotFinish';
18
17
  import V3Header from './components/V3Header/V3Header';
19
18
  import VideoQuestion from './components/VideoQuestion';
@@ -84,7 +83,7 @@ var AiReportRoot = forwardRef(function (props, ref) {
84
83
  borderRadius: 2,
85
84
  overflow: 'hidden',
86
85
  pb: 3,
87
- } }, { children: [_jsx(V3Header, { v3AssetBase: v3AssetBase, status: status, customScore: customScore, passScore: passScore, onRefreshSuccess: handleRefreshSuccess, fetchCandidateInfo: fetchCandidateInfo, onExportReportClick: onExportReportClick }), _jsxs(Box, __assign({ sx: { mx: 2, mt: 0.75 } }, { children: [((collection === null || collection === void 0 ? void 0 : collection.length) > 0 || !!(reportResult === null || reportResult === void 0 ? void 0 : reportResult.workplaceEvaluation)) && (_jsx(AIEvaluate, {})), _jsx(GlobalDimensions, {}), fetchFormResult && _jsx(FormReport, { fetchFormResult: fetchFormResult }), _jsx(CheatRisk, {}), hasRisk && (_jsx(Box, __assign({ id: "report-risk-alert" }, { children: _jsx(NotFinish, {}) }))), _jsx(VideoQuestion, { isExportPdf: isExportPdf })] }))] })) })) })));
86
+ } }, { children: [_jsx(V3Header, { v3AssetBase: v3AssetBase, status: status, customScore: customScore, passScore: passScore, onRefreshSuccess: handleRefreshSuccess, fetchCandidateInfo: fetchCandidateInfo, onExportReportClick: onExportReportClick }), _jsxs(Box, __assign({ sx: { mx: 2, mt: 0.75 } }, { children: [((collection === null || collection === void 0 ? void 0 : collection.length) > 0 || !!(reportResult === null || reportResult === void 0 ? void 0 : reportResult.workplaceEvaluation)) && (_jsx(AIEvaluate, {})), fetchFormResult && _jsx(FormReport, { fetchFormResult: fetchFormResult }), _jsx(CheatRisk, {}), hasRisk && (_jsx(Box, __assign({ id: "report-risk-alert" }, { children: _jsx(NotFinish, {}) }))), _jsx(VideoQuestion, { isExportPdf: isExportPdf })] }))] })) })) })));
88
87
  }, [
89
88
  loading,
90
89
  status,
@@ -55,7 +55,7 @@ function setupCanvas(canvas) {
55
55
  var MAX_WIDTH = 354;
56
56
  var MAX_HEIGHT = 18;
57
57
  // 题目维度与全局维度之间的分隔线 + 说明(方案③:不逐条打标)
58
- var DIVIDER_TEXT = '以下为全局维度(不按题目评价)';
58
+ var DIVIDER_TEXT = '以下为全局维度';
59
59
  var DIVIDER_HEIGHT = 20;
60
60
  // 粗略估算文本像素宽(与下方绘制所用 sans-serif 接近;中文宽、拉丁/数字窄)
61
61
  var estimateTextWidth = function (s, cjkW, latinW) {
@@ -17,6 +17,8 @@ import { Box } from 'fbm-ui';
17
17
  var Report = function () {
18
18
  var reportResult = useAiReportStore(function (store) { return [store.reportResult]; }).reportResult;
19
19
  var _a = reportResult || {}, orderToken = _a.orderToken, score = _a.score, status = _a.status, _b = _a.collection, collection = _b === void 0 ? [] : _b;
20
- return (_jsx(Box, __assign({ width: 400, flexShrink: 0 }, { children: _jsxs(Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [_jsx(ReportPie, { id: orderToken || '', source: collection }), _jsx(ScoreBigBall, { score: score || 0, status: status })] })) })));
20
+ return (
21
+ // 400 宽度会把饼图标签挤到条形图上面(v2 是 500),这里放宽到 480 让标签有完整空间
22
+ _jsx(Box, __assign({ width: 480, flexShrink: 0 }, { children: _jsxs(Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [_jsx(ReportPie, { id: orderToken || '', source: collection }), _jsx(ScoreBigBall, { score: score || 0, status: status })] })) })));
21
23
  };
22
24
  export default Report;
@@ -116,14 +116,16 @@ var ReportPie = function (props) {
116
116
  color: '#33A853',
117
117
  fontSize: 10,
118
118
  lineHeight: 15,
119
+ // 固定胶囊宽高:否则容器宽度不够时「全局」会被折成两行
120
+ width: 32,
121
+ height: 17,
119
122
  padding: [1, 5],
120
123
  borderRadius: 8,
121
124
  backgroundColor: 'rgba(78, 201, 83, 0.14)',
122
125
  align: 'center',
123
126
  },
124
127
  },
125
- overflow: 'break',
126
- width: 76,
128
+ // 不再写死 label 宽度(写死会让长维度名 + 全局胶囊互相挤压):交给 echarts 按内容布局
127
129
  lineHeight: 18,
128
130
  },
129
131
  labelLine: {
@@ -55,7 +55,7 @@ function setupCanvas(canvas) {
55
55
  // Good: Array<number>;
56
56
  // Best: Array<number>;
57
57
  // }
58
- var DIVIDER_TEXT = '以下为全局维度(不按题目评价)';
58
+ var DIVIDER_TEXT = '以下为全局维度';
59
59
  var DIVIDER_HEIGHT = 20;
60
60
  var MAX_WIDTH = 315;
61
61
  var MAX_HEIGHT = 24;
@@ -60,6 +60,8 @@ var tdStyle = {
60
60
  padding: '12px',
61
61
  verticalAlign: 'middle',
62
62
  };
63
+ // 左侧几列按内容定宽 + 不换行,把剩余宽度让给「一句话评价」(否则维度名/得分会被折行)
64
+ var tdNowrapStyle = __assign(__assign({}, tdStyle), { whiteSpace: 'nowrap' });
63
65
  /**
64
66
  * 全局维度(只绑试卷、不绑题目):紧凑表格展示,行内展开可改分 / 改评价。
65
67
  * 由宿主 `ReportSectionFrame`(与「视频题」同一套白框)承载,标题缎带挂在白框左上角。
@@ -84,6 +86,6 @@ var Index = function () {
84
86
  if (!showAiDimension || globalDimensions.length === 0) {
85
87
  return null;
86
88
  }
87
- return ((0, jsx_runtime_1.jsx)(styled_1.ReportSectionFrame, __assign({ sx: { mt: 2, mb: 2 } }, { children: (0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ id: "report-global-dimension" }, { children: [(0, jsx_runtime_1.jsx)(AiHeaderTitleV2_1.default, { name: "\u5168\u5C40\u7EF4\u5EA6" }), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ mx: 1, mt: 2 }, { children: (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { border: BORDER, borderRadius: 2, overflow: 'hidden' } }, { children: (0, jsx_runtime_1.jsxs)("table", __assign({ style: { width: '100%', borderCollapse: 'collapse', fontSize: 13, color: 'rgba(0, 0, 0, 0.86)' } }, { children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", __assign({ style: { background: 'rgba(0, 0, 0, 0.02)' } }, { children: [(0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u7EF4\u5EA6" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u6765\u6E90" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u6743\u91CD" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u5F97\u5206" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u4E00\u53E5\u8BDD\u8BC4\u4EF7" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 56, textAlign: 'center' }) }, { children: "\u64CD\u4F5C" }))] })) }), globalDimensions.map(function (v, index) { return ((0, jsx_runtime_1.jsxs)("tbody", { children: [(0, jsx_runtime_1.jsxs)("tr", __assign({ style: { borderTop: BORDER } }, { children: [(0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdStyle), { fontWeight: 500 }) }, { children: v.name })), (0, jsx_runtime_1.jsx)("td", __assign({ style: tdStyle }, { children: (0, jsx_runtime_1.jsx)(fbm_ui_1.Chip, { color: "success", label: "\u5168\u5C40", size: "small" }) })), (0, jsx_runtime_1.jsxs)("td", __assign({ style: __assign(__assign({}, tdStyle), { color: TEXT_MUTED }) }, { children: [v.weight, "%"] })), (0, jsx_runtime_1.jsxs)("td", __assign({ style: tdStyle }, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ component: "span", sx: { color: SCORE_COLOR[v.scoreLevel] || 'rgba(0, 0, 0, 0.86)', fontWeight: 600 } }, { children: v.score })), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ component: "span", sx: { color: TEXT_MUTED, ml: 0.5, fontSize: 12 } }, { children: v.scoreText }))] })), (0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdStyle), { color: 'rgba(0, 0, 0, 0.6)' }) }, { children: v.answer })), (0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdStyle), { textAlign: 'center' }) }, { children: canEditAiDimension && ((0, jsx_runtime_1.jsx)(fbm_ui_1.IconButton, __assign({ size: "small", onClick: function () { return setExpandedIndex(expandedIndex === index ? -1 : index); } }, { children: (0, jsx_runtime_1.jsx)(fbm_ui_1.EditIcon, {}) }))) }))] })), (0, jsx_runtime_1.jsx)("tr", { children: (0, jsx_runtime_1.jsx)("td", __assign({ colSpan: 6, style: { padding: 0 } }, { children: (0, jsx_runtime_1.jsx)(mui_1.Collapse, __assign({ in: expandedIndex === index }, { children: (0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ sx: { px: 2, pt: 1.5, pb: 2, bgcolor: '#FAFBFA', borderTop: BORDER } }, { children: [(0, jsx_runtime_1.jsxs)(fbm_ui_1.Typography, __assign({ variant: "caption", color: "textSecondary", display: "block", mb: 1 }, { children: ["\u8BC4\u4EF7\u6807\u51C6\uFF1A", v.define || '—'] })), (0, jsx_runtime_1.jsx)(ScoreSlider_1.default, { width: "100%", isShowLabel: true, score: v.score, scoreText: v.scoreText, scoreLevel: v.scoreLevel, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleScoreChange(index, score); } }), (0, jsx_runtime_1.jsx)(mui_1.Stack, __assign({ mt: 1.5 }, { children: (0, jsx_runtime_1.jsx)(WorkPlace_1.default, { thirdOrderID: orderToken, token: v.token, canEdit: canEditAiDimension, answer: v.answer, mode: "show" }) }))] })) })) })) })] }, v.token || v.name)); })] })) })) }))] })) })));
89
+ return ((0, jsx_runtime_1.jsx)(styled_1.ReportSectionFrame, __assign({ sx: { mt: 2, mb: 2 } }, { children: (0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ id: "report-global-dimension" }, { children: [(0, jsx_runtime_1.jsx)(AiHeaderTitleV2_1.default, { name: "\u5168\u5C40\u7EF4\u5EA6" }), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ mx: 1, mt: 2 }, { children: (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ sx: { border: BORDER, borderRadius: 2, overflow: 'hidden' } }, { children: (0, jsx_runtime_1.jsxs)("table", __assign({ style: { width: '100%', borderCollapse: 'collapse', fontSize: 13, color: 'rgba(0, 0, 0, 0.86)' } }, { children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", __assign({ style: { background: 'rgba(0, 0, 0, 0.02)' } }, { children: [(0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 150 }) }, { children: "\u7EF4\u5EA6" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 88 }) }, { children: "\u6765\u6E90" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 76 }) }, { children: "\u6743\u91CD" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 96 }) }, { children: "\u5F97\u5206" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: thStyle }, { children: "\u4E00\u53E5\u8BDD\u8BC4\u4EF7" })), (0, jsx_runtime_1.jsx)("th", __assign({ style: __assign(__assign({}, thStyle), { width: 56, textAlign: 'center' }) }, { children: "\u64CD\u4F5C" }))] })) }), globalDimensions.map(function (v, index) { return ((0, jsx_runtime_1.jsxs)("tbody", { children: [(0, jsx_runtime_1.jsxs)("tr", __assign({ style: { borderTop: BORDER } }, { children: [(0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdNowrapStyle), { fontWeight: 500 }) }, { children: v.name })), (0, jsx_runtime_1.jsx)("td", __assign({ style: tdNowrapStyle }, { children: (0, jsx_runtime_1.jsx)(fbm_ui_1.Chip, { color: "success", label: "\u5168\u5C40", size: "small" }) })), (0, jsx_runtime_1.jsxs)("td", __assign({ style: __assign(__assign({}, tdNowrapStyle), { color: TEXT_MUTED }) }, { children: [v.weight, "%"] })), (0, jsx_runtime_1.jsxs)("td", __assign({ style: tdNowrapStyle }, { children: [(0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ component: "span", sx: { color: SCORE_COLOR[v.scoreLevel] || 'rgba(0, 0, 0, 0.86)', fontWeight: 600 } }, { children: v.score })), (0, jsx_runtime_1.jsx)(mui_1.Box, __assign({ component: "span", sx: { color: TEXT_MUTED, ml: 0.5, fontSize: 12 } }, { children: v.scoreText }))] })), (0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdStyle), { color: 'rgba(0, 0, 0, 0.6)' }) }, { children: v.answer })), (0, jsx_runtime_1.jsx)("td", __assign({ style: __assign(__assign({}, tdStyle), { textAlign: 'center' }) }, { children: canEditAiDimension && ((0, jsx_runtime_1.jsx)(fbm_ui_1.IconButton, __assign({ size: "small", onClick: function () { return setExpandedIndex(expandedIndex === index ? -1 : index); } }, { children: (0, jsx_runtime_1.jsx)(fbm_ui_1.EditIcon, {}) }))) }))] })), (0, jsx_runtime_1.jsx)("tr", { children: (0, jsx_runtime_1.jsx)("td", __assign({ colSpan: 6, style: { padding: 0 } }, { children: (0, jsx_runtime_1.jsx)(mui_1.Collapse, __assign({ in: expandedIndex === index }, { children: (0, jsx_runtime_1.jsxs)(mui_1.Box, __assign({ sx: { px: 2, pt: 1.5, pb: 2, bgcolor: '#FAFBFA', borderTop: BORDER } }, { children: [(0, jsx_runtime_1.jsxs)(fbm_ui_1.Typography, __assign({ variant: "caption", color: "textSecondary", display: "block", mb: 1 }, { children: ["\u8BC4\u4EF7\u6807\u51C6\uFF1A", v.define || '—'] })), (0, jsx_runtime_1.jsx)(ScoreSlider_1.default, { width: "100%", isShowLabel: true, score: v.score, scoreText: v.scoreText, scoreLevel: v.scoreLevel, valueLabelDisplay: "auto", onChangeCommitted: function (score) { return handleScoreChange(index, score); } }), (0, jsx_runtime_1.jsx)(mui_1.Stack, __assign({ mt: 1.5 }, { children: (0, jsx_runtime_1.jsx)(WorkPlace_1.default, { thirdOrderID: orderToken, token: v.token, canEdit: canEditAiDimension, answer: v.answer, mode: "show" }) }))] })) })) })) })] }, v.token || v.name)); })] })) })) }))] })) })));
88
90
  };
89
91
  exports.default = (0, react_1.memo)(Index);
@@ -18,7 +18,6 @@ var jsx_runtime_1 = require("react/jsx-runtime");
18
18
  var AIEvaluate_1 = __importDefault(require("./components/AIEvaluate"));
19
19
  var CheatRisk_1 = __importDefault(require("./components/CheatRisk/CheatRisk"));
20
20
  var Form_1 = require("./components/Form");
21
- var GlobalDimensions_1 = __importDefault(require("./components/GlobalDimensions"));
22
21
  var NotFinish_1 = __importDefault(require("./components/NotFinish"));
23
22
  var V3Header_1 = __importDefault(require("./components/V3Header/V3Header"));
24
23
  var VideoQuestion_1 = __importDefault(require("./components/VideoQuestion"));
@@ -89,7 +88,7 @@ var AiReportRoot = (0, react_1.forwardRef)(function (props, ref) {
89
88
  borderRadius: 2,
90
89
  overflow: 'hidden',
91
90
  pb: 3,
92
- } }, { children: [(0, jsx_runtime_1.jsx)(V3Header_1.default, { v3AssetBase: v3AssetBase, status: status, customScore: customScore, passScore: passScore, onRefreshSuccess: handleRefreshSuccess, fetchCandidateInfo: fetchCandidateInfo, onExportReportClick: onExportReportClick }), (0, jsx_runtime_1.jsxs)(fbm_ui_1.Box, __assign({ sx: { mx: 2, mt: 0.75 } }, { children: [((collection === null || collection === void 0 ? void 0 : collection.length) > 0 || !!(reportResult === null || reportResult === void 0 ? void 0 : reportResult.workplaceEvaluation)) && ((0, jsx_runtime_1.jsx)(AIEvaluate_1.default, {})), (0, jsx_runtime_1.jsx)(GlobalDimensions_1.default, {}), fetchFormResult && (0, jsx_runtime_1.jsx)(Form_1.FormReport, { fetchFormResult: fetchFormResult }), (0, jsx_runtime_1.jsx)(CheatRisk_1.default, {}), hasRisk && ((0, jsx_runtime_1.jsx)(fbm_ui_1.Box, __assign({ id: "report-risk-alert" }, { children: (0, jsx_runtime_1.jsx)(NotFinish_1.default, {}) }))), (0, jsx_runtime_1.jsx)(VideoQuestion_1.default, { isExportPdf: isExportPdf })] }))] })) })) })));
91
+ } }, { children: [(0, jsx_runtime_1.jsx)(V3Header_1.default, { v3AssetBase: v3AssetBase, status: status, customScore: customScore, passScore: passScore, onRefreshSuccess: handleRefreshSuccess, fetchCandidateInfo: fetchCandidateInfo, onExportReportClick: onExportReportClick }), (0, jsx_runtime_1.jsxs)(fbm_ui_1.Box, __assign({ sx: { mx: 2, mt: 0.75 } }, { children: [((collection === null || collection === void 0 ? void 0 : collection.length) > 0 || !!(reportResult === null || reportResult === void 0 ? void 0 : reportResult.workplaceEvaluation)) && ((0, jsx_runtime_1.jsx)(AIEvaluate_1.default, {})), fetchFormResult && (0, jsx_runtime_1.jsx)(Form_1.FormReport, { fetchFormResult: fetchFormResult }), (0, jsx_runtime_1.jsx)(CheatRisk_1.default, {}), hasRisk && ((0, jsx_runtime_1.jsx)(fbm_ui_1.Box, __assign({ id: "report-risk-alert" }, { children: (0, jsx_runtime_1.jsx)(NotFinish_1.default, {}) }))), (0, jsx_runtime_1.jsx)(VideoQuestion_1.default, { isExportPdf: isExportPdf })] }))] })) })) })));
93
92
  }, [
94
93
  loading,
95
94
  status,
@@ -58,7 +58,7 @@ function setupCanvas(canvas) {
58
58
  var MAX_WIDTH = 354;
59
59
  var MAX_HEIGHT = 18;
60
60
  // 题目维度与全局维度之间的分隔线 + 说明(方案③:不逐条打标)
61
- var DIVIDER_TEXT = '以下为全局维度(不按题目评价)';
61
+ var DIVIDER_TEXT = '以下为全局维度';
62
62
  var DIVIDER_HEIGHT = 20;
63
63
  // 粗略估算文本像素宽(与下方绘制所用 sans-serif 接近;中文宽、拉丁/数字窄)
64
64
  var estimateTextWidth = function (s, cjkW, latinW) {
@@ -22,6 +22,8 @@ var fbm_ui_1 = require("fbm-ui");
22
22
  var Report = function () {
23
23
  var reportResult = (0, global_store_1.useAiReportStore)(function (store) { return [store.reportResult]; }).reportResult;
24
24
  var _a = reportResult || {}, orderToken = _a.orderToken, score = _a.score, status = _a.status, _b = _a.collection, collection = _b === void 0 ? [] : _b;
25
- return ((0, jsx_runtime_1.jsx)(fbm_ui_1.Box, __assign({ width: 400, flexShrink: 0 }, { children: (0, jsx_runtime_1.jsxs)(fbm_ui_1.Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [(0, jsx_runtime_1.jsx)(ReportPie_1.default, { id: orderToken || '', source: collection }), (0, jsx_runtime_1.jsx)(ScoreBigBall_1.default, { score: score || 0, status: status })] })) })));
25
+ return (
26
+ // 400 宽度会把饼图标签挤到条形图上面(v2 是 500),这里放宽到 480 让标签有完整空间
27
+ (0, jsx_runtime_1.jsx)(fbm_ui_1.Box, __assign({ width: 480, flexShrink: 0 }, { children: (0, jsx_runtime_1.jsxs)(fbm_ui_1.Box, __assign({ height: 300, sx: { position: 'relative' } }, { children: [(0, jsx_runtime_1.jsx)(ReportPie_1.default, { id: orderToken || '', source: collection }), (0, jsx_runtime_1.jsx)(ScoreBigBall_1.default, { score: score || 0, status: status })] })) })));
26
28
  };
27
29
  exports.default = Report;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eli-video-interview",
3
- "version": "1.9.1",
3
+ "version": "1.9.2",
4
4
  "description": "鳄梨科技 AI视频面试 React SDK",
5
5
  "author": "鳄梨科技",
6
6
  "license": "MIT",