eli-video-interview 1.5.0 → 1.6.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.
- package/esm/components/Charts/ReportPie.js +2 -2
- package/esm/index.d.ts +2 -0
- package/esm/index.js +2 -0
- package/esm/modules/ai-report/components/AIEvaluate/index.js +1 -1
- package/esm/modules/ai-report/interface.d.ts +28 -0
- package/esm/modules/ai-report-v3/Root.d.ts +4 -0
- package/esm/modules/ai-report-v3/Root.js +110 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/Evaluate.d.ts +11 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/Evaluate.js +79 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/Graph.d.ts +22 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/Graph.js +272 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/index.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/AIEvaluate/index.js +32 -0
- package/esm/modules/ai-report-v3/components/Candidate/Candidate.d.ts +7 -0
- package/esm/modules/ai-report-v3/components/Candidate/Candidate.js +55 -0
- package/esm/modules/ai-report-v3/components/Candidate/Interface.d.ts +16 -0
- package/esm/modules/ai-report-v3/components/Candidate/Interface.js +1 -0
- package/esm/modules/ai-report-v3/components/Candidate/Podium.d.ts +6 -0
- package/esm/modules/ai-report-v3/components/Candidate/Podium.js +50 -0
- package/esm/modules/ai-report-v3/components/Candidate/index.d.ts +2 -0
- package/esm/modules/ai-report-v3/components/Candidate/index.js +2 -0
- package/esm/modules/ai-report-v3/components/CapabilityTable/CapabilityTable.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/CapabilityTable/CapabilityTable.js +62 -0
- package/esm/modules/ai-report-v3/components/CheatRisk/CheatRisk.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/CheatRisk/CheatRisk.js +42 -0
- package/esm/modules/ai-report-v3/components/Form/Form.d.ts +23 -0
- package/esm/modules/ai-report-v3/components/Form/Form.js +67 -0
- package/esm/modules/ai-report-v3/components/Form/Forms.d.ts +9 -0
- package/esm/modules/ai-report-v3/components/Form/Forms.js +45 -0
- package/esm/modules/ai-report-v3/components/Form/Nps.d.ts +6 -0
- package/esm/modules/ai-report-v3/components/Form/Nps.js +57 -0
- package/esm/modules/ai-report-v3/components/Form/index.d.ts +1 -0
- package/esm/modules/ai-report-v3/components/Form/index.js +1 -0
- package/esm/modules/ai-report-v3/components/Form/interface.d.ts +57 -0
- package/esm/modules/ai-report-v3/components/Form/interface.js +1 -0
- package/esm/modules/ai-report-v3/components/MenuAnchor/index.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/MenuAnchor/index.js +130 -0
- package/esm/modules/ai-report-v3/components/ModuleTitle.d.ts +5 -0
- package/esm/modules/ai-report-v3/components/ModuleTitle.js +24 -0
- package/esm/modules/ai-report-v3/components/NotFinish/index.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/NotFinish/index.js +32 -0
- package/esm/modules/ai-report-v3/components/RankingRange/Item.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/RankingRange/Item.js +46 -0
- package/esm/modules/ai-report-v3/components/RankingRange/index.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/RankingRange/index.js +187 -0
- package/esm/modules/ai-report-v3/components/RankingRange/interface.d.ts +26 -0
- package/esm/modules/ai-report-v3/components/RankingRange/interface.js +1 -0
- package/esm/modules/ai-report-v3/components/RankingRange/styled.d.ts +7 -0
- package/esm/modules/ai-report-v3/components/RankingRange/styled.js +11 -0
- package/esm/modules/ai-report-v3/components/ReportHeader/ReportHeader.d.ts +17 -0
- package/esm/modules/ai-report-v3/components/ReportHeader/ReportHeader.js +105 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Bar.d.ts +6 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Bar.js +68 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Failed.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Failed.js +33 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/RecommendIcon.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/RecommendIcon.js +17 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Report.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Report.js +22 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Score.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Score.js +83 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/ScoreLegend.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/ScoreLegend.js +33 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Tips.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/Tips.js +18 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/index.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/index.js +39 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/interface.d.ts +20 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/interface.js +1 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/styled.d.ts +22 -0
- package/esm/modules/ai-report-v3/components/ScoreReport/styled.js +21 -0
- package/esm/modules/ai-report-v3/components/SectionTabs/SectionTabs.d.ts +11 -0
- package/esm/modules/ai-report-v3/components/SectionTabs/SectionTabs.js +114 -0
- package/esm/modules/ai-report-v3/components/Suggestion/Suggestion.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/Suggestion/Suggestion.js +31 -0
- package/esm/modules/ai-report-v3/components/Suggestion/index.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/Suggestion/index.js +27 -0
- package/esm/modules/ai-report-v3/components/V3Header/V3Header.d.ts +11 -0
- package/esm/modules/ai-report-v3/components/V3Header/V3Header.js +154 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Abilities.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Abilities.js +42 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/BodyImages.d.ts +7 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/BodyImages.js +56 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Evaluate.d.ts +11 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Evaluate.js +79 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/QuestionItem.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/QuestionItem.js +145 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/ScoreSlider.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/ScoreSlider.js +47 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/SingleChoice.d.ts +8 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/SingleChoice.js +31 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Workplaces.d.ts +10 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/Workplaces.js +91 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/index.d.ts +6 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/index.js +24 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/interface.d.ts +17 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/interface.js +1 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/styled.d.ts +72 -0
- package/esm/modules/ai-report-v3/components/VideoQuestion/styled.js +93 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/ScoreSlider.d.ts +4 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/ScoreSlider.js +24 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/WorkPlace.d.ts +12 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/WorkPlace.js +72 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/index.d.ts +3 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/index.js +70 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/interface.d.ts +7 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/interface.js +1 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/styled.d.ts +62 -0
- package/esm/modules/ai-report-v3/components/WorkPlaces/styled.js +27 -0
- package/esm/modules/ai-report-v3/components/styled.d.ts +42 -0
- package/esm/modules/ai-report-v3/components/styled.js +140 -0
- package/esm/modules/ai-report-v3/index.d.ts +4 -0
- package/esm/modules/ai-report-v3/index.js +20 -0
- package/esm/modules/ai-report-v3/interface.d.ts +257 -0
- package/esm/modules/ai-report-v3/interface.js +1 -0
- package/esm/modules/ai-report-v3/useAiReport.d.ts +37 -0
- package/esm/modules/ai-report-v3/useAiReport.js +18 -0
- package/esm/modules/ai-report-v3/useAiReportVersion.d.ts +5 -0
- package/esm/modules/ai-report-v3/useAiReportVersion.js +45 -0
- package/esm/modules/ai-report-v3/utils.d.ts +1 -0
- package/esm/modules/ai-report-v3/utils.js +1 -0
- package/lib/components/Charts/ReportPie.js +2 -2
- package/lib/index.d.ts +2 -0
- package/lib/index.js +5 -1
- package/lib/modules/ai-report/components/AIEvaluate/index.js +1 -1
- package/lib/modules/ai-report/interface.d.ts +28 -0
- package/lib/modules/ai-report-v3/Root.d.ts +4 -0
- package/lib/modules/ai-report-v3/Root.js +115 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/Evaluate.d.ts +11 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/Evaluate.js +81 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/Graph.d.ts +22 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/Graph.js +276 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/index.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/AIEvaluate/index.js +37 -0
- package/lib/modules/ai-report-v3/components/Candidate/Candidate.d.ts +7 -0
- package/lib/modules/ai-report-v3/components/Candidate/Candidate.js +57 -0
- package/lib/modules/ai-report-v3/components/Candidate/Interface.d.ts +16 -0
- package/lib/modules/ai-report-v3/components/Candidate/Interface.js +2 -0
- package/lib/modules/ai-report-v3/components/Candidate/Podium.d.ts +6 -0
- package/lib/modules/ai-report-v3/components/Candidate/Podium.js +52 -0
- package/lib/modules/ai-report-v3/components/Candidate/index.d.ts +2 -0
- package/lib/modules/ai-report-v3/components/Candidate/index.js +10 -0
- package/lib/modules/ai-report-v3/components/CapabilityTable/CapabilityTable.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/CapabilityTable/CapabilityTable.js +64 -0
- package/lib/modules/ai-report-v3/components/CheatRisk/CheatRisk.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/CheatRisk/CheatRisk.js +44 -0
- package/lib/modules/ai-report-v3/components/Form/Form.d.ts +23 -0
- package/lib/modules/ai-report-v3/components/Form/Form.js +73 -0
- package/lib/modules/ai-report-v3/components/Form/Forms.d.ts +9 -0
- package/lib/modules/ai-report-v3/components/Form/Forms.js +50 -0
- package/lib/modules/ai-report-v3/components/Form/Nps.d.ts +6 -0
- package/lib/modules/ai-report-v3/components/Form/Nps.js +59 -0
- package/lib/modules/ai-report-v3/components/Form/index.d.ts +1 -0
- package/lib/modules/ai-report-v3/components/Form/index.js +8 -0
- package/lib/modules/ai-report-v3/components/Form/interface.d.ts +57 -0
- package/lib/modules/ai-report-v3/components/Form/interface.js +2 -0
- package/lib/modules/ai-report-v3/components/MenuAnchor/index.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/MenuAnchor/index.js +132 -0
- package/lib/modules/ai-report-v3/components/ModuleTitle.d.ts +5 -0
- package/lib/modules/ai-report-v3/components/ModuleTitle.js +28 -0
- package/lib/modules/ai-report-v3/components/NotFinish/index.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/NotFinish/index.js +34 -0
- package/lib/modules/ai-report-v3/components/RankingRange/Item.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/RankingRange/Item.js +48 -0
- package/lib/modules/ai-report-v3/components/RankingRange/index.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/RankingRange/index.js +192 -0
- package/lib/modules/ai-report-v3/components/RankingRange/interface.d.ts +26 -0
- package/lib/modules/ai-report-v3/components/RankingRange/interface.js +2 -0
- package/lib/modules/ai-report-v3/components/RankingRange/styled.d.ts +7 -0
- package/lib/modules/ai-report-v3/components/RankingRange/styled.js +14 -0
- package/lib/modules/ai-report-v3/components/ReportHeader/ReportHeader.d.ts +17 -0
- package/lib/modules/ai-report-v3/components/ReportHeader/ReportHeader.js +110 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Bar.d.ts +6 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Bar.js +70 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Failed.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Failed.js +34 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/RecommendIcon.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/RecommendIcon.js +22 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Report.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Report.js +27 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Score.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Score.js +86 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/ScoreLegend.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/ScoreLegend.js +35 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Tips.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/Tips.js +20 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/index.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/index.js +44 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/interface.d.ts +20 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/interface.js +2 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/styled.d.ts +22 -0
- package/lib/modules/ai-report-v3/components/ScoreReport/styled.js +24 -0
- package/lib/modules/ai-report-v3/components/SectionTabs/SectionTabs.d.ts +11 -0
- package/lib/modules/ai-report-v3/components/SectionTabs/SectionTabs.js +116 -0
- package/lib/modules/ai-report-v3/components/Suggestion/Suggestion.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/Suggestion/Suggestion.js +33 -0
- package/lib/modules/ai-report-v3/components/Suggestion/index.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/Suggestion/index.js +32 -0
- package/lib/modules/ai-report-v3/components/V3Header/V3Header.d.ts +11 -0
- package/lib/modules/ai-report-v3/components/V3Header/V3Header.js +159 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Abilities.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Abilities.js +47 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/BodyImages.d.ts +7 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/BodyImages.js +61 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Evaluate.d.ts +11 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Evaluate.js +81 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/QuestionItem.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/QuestionItem.js +150 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/ScoreSlider.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/ScoreSlider.js +49 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/SingleChoice.d.ts +8 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/SingleChoice.js +33 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Workplaces.d.ts +10 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/Workplaces.js +93 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/index.d.ts +6 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/index.js +29 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/interface.d.ts +17 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/interface.js +2 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/styled.d.ts +72 -0
- package/lib/modules/ai-report-v3/components/VideoQuestion/styled.js +96 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/ScoreSlider.d.ts +4 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/ScoreSlider.js +26 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/WorkPlace.d.ts +12 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/WorkPlace.js +74 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/index.d.ts +3 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/index.js +75 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/interface.d.ts +7 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/interface.js +2 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/styled.d.ts +62 -0
- package/lib/modules/ai-report-v3/components/WorkPlaces/styled.js +30 -0
- package/lib/modules/ai-report-v3/components/styled.d.ts +42 -0
- package/lib/modules/ai-report-v3/components/styled.js +146 -0
- package/lib/modules/ai-report-v3/index.d.ts +4 -0
- package/lib/modules/ai-report-v3/index.js +25 -0
- package/lib/modules/ai-report-v3/interface.d.ts +257 -0
- package/lib/modules/ai-report-v3/interface.js +2 -0
- package/lib/modules/ai-report-v3/useAiReport.d.ts +37 -0
- package/lib/modules/ai-report-v3/useAiReport.js +25 -0
- package/lib/modules/ai-report-v3/useAiReportVersion.d.ts +5 -0
- package/lib/modules/ai-report-v3/useAiReportVersion.js +49 -0
- package/lib/modules/ai-report-v3/utils.d.ts +1 -0
- package/lib/modules/ai-report-v3/utils.js +5 -0
- package/package.json +2 -2
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { BulbFilledIcon, CopyIcon, LayerIcon, styled, Typography } from 'fbm-ui';
|
|
14
|
+
import { Box, Stack } from 'fbm-ui/lib/mui';
|
|
15
|
+
var TagTitle = styled(Box)(function () { return ({
|
|
16
|
+
boxSizing: 'border-box',
|
|
17
|
+
padding: '0 16px',
|
|
18
|
+
minWidth: 100,
|
|
19
|
+
height: 32,
|
|
20
|
+
display: 'inline-block',
|
|
21
|
+
textAlign: 'center',
|
|
22
|
+
color: 'RGBA(0, 0, 0, 0.86)',
|
|
23
|
+
borderLeft: '4px solid #4CAF50',
|
|
24
|
+
backgroundColor: '#E8F5E9',
|
|
25
|
+
margin: '24px 0 16px',
|
|
26
|
+
}); });
|
|
27
|
+
var Suggestion = function (_a) {
|
|
28
|
+
var abilityName = _a.abilityName, interviewQuestion = _a.interviewQuestion, keyPoints = _a.keyPoints;
|
|
29
|
+
return (_jsxs(Stack, { children: [_jsx(Box, __assign({ display: "flex", alignItems: "center" }, { children: _jsx(TagTitle, { children: _jsx(Typography, __assign({ variant: "subtitle1", fontWeight: "medium", style: { lineHeight: '32px' } }, { children: abilityName })) }) })), _jsxs(Box, __assign({ display: "flex", justifyContent: "space-between" }, { children: [_jsxs(Box, __assign({ display: "flex", flexDirection: "column", style: { background: '#FAFAFA', borderRadius: 8, padding: 16, flex: 1 }, mr: 2 }, { children: [_jsxs(Box, __assign({ display: "flex", alignItems: "center", mb: 2 }, { children: [_jsx(BulbFilledIcon, { style: { color: '#4CAF50', fontSize: 16 } }), _jsx(Typography, __assign({ variant: "body2", style: { marginLeft: 4 } }, { children: "\u9762\u8BD5\u95EE\u9898" }))] })), interviewQuestion.map(function (v, index) { return (_jsxs(Box, __assign({ display: "flex", mb: 2 }, { children: [_jsx(CopyIcon, { style: { color: '#81C784', fontSize: 16, marginTop: 4 } }), _jsx(Typography, __assign({ variant: "body2", style: { marginLeft: 4 }, color: "secondary" }, { children: v }))] }), index)); })] })), _jsxs(Box, __assign({ display: "flex", flexDirection: "column", style: { background: '#FFF3E0', borderRadius: 8, padding: 16, flex: 1 } }, { children: [_jsxs(Box, __assign({ display: "flex", alignItems: "center", mb: 2 }, { children: [_jsx(LayerIcon, { style: { color: '#FF9800', fontSize: 16 } }), _jsx(Typography, __assign({ variant: "body2", style: { marginLeft: 4 } }, { children: "\u8BC4\u5206\u5173\u952E\u70B9" }))] })), keyPoints.map(function (v, index) { return (_jsxs(Box, __assign({ display: "flex", mb: 2 }, { children: [_jsx(CopyIcon, { style: { color: '#FFB74D', fontSize: 16, marginTop: 4 } }), _jsx(Typography, __assign({ variant: "body2", style: { marginLeft: 4 }, color: "secondary" }, { children: v }))] }), index)); })] }))] }))] }));
|
|
30
|
+
};
|
|
31
|
+
export default Suggestion;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import Suggestion from './Suggestion';
|
|
14
|
+
import { useAiReportStore } from "../../../../store/ai-report/global-store";
|
|
15
|
+
import AiHeaderTitle from "../../../../components/AiHeaderTitleV2";
|
|
16
|
+
import { Typography } from 'fbm-ui';
|
|
17
|
+
import { Box, Collapse, Stack } from 'fbm-ui/lib/mui';
|
|
18
|
+
var Index = function () {
|
|
19
|
+
var _a, _b, _c, _d;
|
|
20
|
+
var _e = useAiReportStore(function (store) { return [store.reportResult]; }), reportResult = _e.reportResult, showAiDimension = _e.showAiDimension;
|
|
21
|
+
if (!showAiDimension || !((_a = reportResult === null || reportResult === void 0 ? void 0 : reportResult.suggestion) === null || _a === void 0 ? void 0 : _a.show))
|
|
22
|
+
return null;
|
|
23
|
+
return (_jsxs(Box, __assign({ id: "report-suggestion", px: 2, mt: 2, pb: 2 }, { children: [_jsx(Stack, __assign({ direction: "row", height: 56, alignItems: "center", spacing: 1 }, { children: _jsx(AiHeaderTitle, { name: "\u8003\u5BDF\u5EFA\u8BAE" }) })), _jsx(Typography, __assign({ variant: "body2", color: "secondary", mt: 1 }, { children: (_b = reportResult === null || reportResult === void 0 ? void 0 : reportResult.suggestion) === null || _b === void 0 ? void 0 : _b.text })), _jsx(Collapse, __assign({ in: true }, { children: (_d = (_c = reportResult === null || reportResult === void 0 ? void 0 : reportResult.suggestion) === null || _c === void 0 ? void 0 : _c.abilitys) === null || _d === void 0 ? void 0 : _d.map(function (v) {
|
|
24
|
+
return _jsx(Suggestion, { abilityName: v.abilityName, interviewQuestion: v.interviewQuestion, keyPoints: v.keyPoints }, v.abilityName);
|
|
25
|
+
}) }))] })));
|
|
26
|
+
};
|
|
27
|
+
export default Index;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { CandidateInfo } from '../Candidate/Interface';
|
|
3
|
+
interface V3HeaderProps {
|
|
4
|
+
status: number;
|
|
5
|
+
customScore?: number;
|
|
6
|
+
onRefreshSuccess: () => void;
|
|
7
|
+
fetchCandidateInfo?: () => Promise<CandidateInfo>;
|
|
8
|
+
v3AssetBase?: string;
|
|
9
|
+
}
|
|
10
|
+
declare const V3Header: ({ status, customScore, onRefreshSuccess, fetchCandidateInfo, v3AssetBase }: V3HeaderProps) => JSX.Element;
|
|
11
|
+
export default V3Header;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
29
|
+
import { Box, Stack } from 'fbm-ui/lib/mui';
|
|
30
|
+
import { Button, IconButton, Message, Popover, Typography } from 'fbm-ui';
|
|
31
|
+
import { RefreshIcon } from 'fbm-icons';
|
|
32
|
+
import { useRequest } from 'ahooks';
|
|
33
|
+
import dayjs from 'dayjs';
|
|
34
|
+
import { useEffect, useMemo, useState } from 'react';
|
|
35
|
+
import { useAiReportStore } from "../../../../store/ai-report/global-store";
|
|
36
|
+
import { PostAiInterviewRefresh } from "../../../../services/ai-report";
|
|
37
|
+
import { INTERVIEW_STATUS } from "../../../../enum/ai-report";
|
|
38
|
+
import { formatScore } from "../../../../utils/utils";
|
|
39
|
+
var matchLevel = function (score) {
|
|
40
|
+
if (score >= 80)
|
|
41
|
+
return 'high';
|
|
42
|
+
if (score >= 60)
|
|
43
|
+
return 'middle';
|
|
44
|
+
return 'low';
|
|
45
|
+
};
|
|
46
|
+
var matchText = function (level) {
|
|
47
|
+
switch (level) {
|
|
48
|
+
case 'high':
|
|
49
|
+
return '非常匹配';
|
|
50
|
+
case 'middle':
|
|
51
|
+
return '中等匹配';
|
|
52
|
+
default:
|
|
53
|
+
return '匹配度低';
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
var matchColor = function (level) {
|
|
57
|
+
switch (level) {
|
|
58
|
+
case 'high':
|
|
59
|
+
return '#FF8908';
|
|
60
|
+
case 'middle':
|
|
61
|
+
return '#18C01F';
|
|
62
|
+
default:
|
|
63
|
+
return '#2360FF';
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
var tagColors = [
|
|
67
|
+
{ color: '#009908', bg: '#E7FBF0' },
|
|
68
|
+
{ color: '#FE9D0D', bg: '#FFF3E0' },
|
|
69
|
+
{ color: '#629CFF', bg: '#EAF2FF' },
|
|
70
|
+
{ color: '#FF6C6C', bg: '#FFEBEE' },
|
|
71
|
+
];
|
|
72
|
+
var DefaultAvatar = function () { return (_jsxs("svg", __assign({ viewBox: "0 0 137 192", width: "100%", height: "100%", preserveAspectRatio: "xMidYMid slice" }, { children: [_jsx("defs", { children: _jsxs("linearGradient", __assign({ id: "avbg", x1: "0", y1: "0", x2: "0", y2: "1" }, { children: [_jsx("stop", { offset: "0", stopColor: "#EDF4F0" }), _jsx("stop", { offset: "1", stopColor: "#E2EEE6" })] })) }), _jsx("rect", { width: "137", height: "192", fill: "url(#avbg)" }), _jsx("circle", { cx: "68.5", cy: "78", r: "33", fill: "#C6D8CD" }), _jsx("path", { d: "M26 192c4-45 22-64 42.5-64s38.5 19 42.5 64z", fill: "#C6D8CD" })] }))); };
|
|
73
|
+
var V3Header = function (_a) {
|
|
74
|
+
var _b;
|
|
75
|
+
var status = _a.status, customScore = _a.customScore, onRefreshSuccess = _a.onRefreshSuccess, fetchCandidateInfo = _a.fetchCandidateInfo, _c = _a.v3AssetBase, v3AssetBase = _c === void 0 ? '' : _c;
|
|
76
|
+
var _d = useAiReportStore(function (store) { return [store.token, store.reportResult, store.operableButtons]; }), token = _d.token, reportResult = _d.reportResult, operableButtons = _d.operableButtons;
|
|
77
|
+
var _e = reportResult || {}, _f = _e.score, score = _f === void 0 ? 0 : _f, _g = _e.createTime, createTime = _g === void 0 ? 0 : _g, _h = _e.steps, steps = _h === void 0 ? [] : _h, _j = _e.tags, tags = _j === void 0 ? [] : _j, candidateInfo = _e.candidateInfo;
|
|
78
|
+
var _k = __read(useState(score || 0), 2), feScore = _k[0], setFeScore = _k[1];
|
|
79
|
+
var _l = __read(useState(false), 2), openRefresh = _l[0], setOpenRefresh = _l[1];
|
|
80
|
+
var _m = __read(useState(null), 2), candidate = _m[0], setCandidate = _m[1];
|
|
81
|
+
var _o = __read(useState(false), 2), avatarErr = _o[0], setAvatarErr = _o[1];
|
|
82
|
+
var _p = useRequest(function () { return PostAiInterviewRefresh(token); }, {
|
|
83
|
+
manual: true,
|
|
84
|
+
onSuccess: function () {
|
|
85
|
+
onRefreshSuccess();
|
|
86
|
+
Message.success('刷新成功');
|
|
87
|
+
},
|
|
88
|
+
}), run = _p.run, loading = _p.loading;
|
|
89
|
+
useEffect(function () {
|
|
90
|
+
if (candidateInfo)
|
|
91
|
+
setCandidate(__assign(__assign({}, candidateInfo), { tags: (candidateInfo.tags || []) }));
|
|
92
|
+
}, [candidateInfo]);
|
|
93
|
+
useEffect(function () {
|
|
94
|
+
setAvatarErr(false);
|
|
95
|
+
}, [candidate === null || candidate === void 0 ? void 0 : candidate.avatar]);
|
|
96
|
+
useEffect(function () {
|
|
97
|
+
if (!fetchCandidateInfo)
|
|
98
|
+
return;
|
|
99
|
+
fetchCandidateInfo()
|
|
100
|
+
.then(setCandidate)
|
|
101
|
+
.catch(function () { return Message.error('获取候选人信息失败'); });
|
|
102
|
+
}, [fetchCandidateInfo]);
|
|
103
|
+
useEffect(function () {
|
|
104
|
+
if (typeof customScore === 'number' && customScore > -1) {
|
|
105
|
+
setFeScore(customScore);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
setFeScore(score || 0);
|
|
109
|
+
}
|
|
110
|
+
if (!loading)
|
|
111
|
+
setOpenRefresh(false);
|
|
112
|
+
}, [customScore, score, loading]);
|
|
113
|
+
var durationSeconds = useMemo(function () { return (steps || []).reduce(function (acc, step) { var _a, _b; return acc + (((_b = (_a = step.answer) === null || _a === void 0 ? void 0 : _a.media) === null || _b === void 0 ? void 0 : _b.durationTime) || 0); }, 0); }, [steps]);
|
|
114
|
+
var durationText = useMemo(function () {
|
|
115
|
+
var m = Math.floor(durationSeconds / 60);
|
|
116
|
+
var s = durationSeconds % 60;
|
|
117
|
+
return "".concat(String(m).padStart(2, '0'), ":").concat(String(s).padStart(2, '0'));
|
|
118
|
+
}, [durationSeconds]);
|
|
119
|
+
var level = matchLevel(feScore);
|
|
120
|
+
var labelFile = level === 'high' ? 'high' : level === 'middle' ? 'mid' : 'low';
|
|
121
|
+
var showTags = ((_b = candidate === null || candidate === void 0 ? void 0 : candidate.tags) === null || _b === void 0 ? void 0 : _b.length) ? candidate.tags : (tags === null || tags === void 0 ? void 0 : tags.length) ? tags.map(function (t) { return ({ name: t.name, token: t.token }); }) : [];
|
|
122
|
+
var refreshContent = (_jsxs(Box, __assign({ padding: 2 }, { children: [_jsx(Typography, __assign({ variant: "body1", color: "secondary" }, { children: "\u5237\u65B0\u540E\u5C06\u6309\u6700\u65B0\u7B97\u5206\u89C4\u5219\u8BA1\u7B97\uFF0C\u662F\u5426\u786E\u8BA4\u5237\u65B0" })), _jsx(Box, __assign({ paddingTop: 1, textAlign: "right" }, { children: _jsx(Button, __assign({ loading: loading, onClick: run }, { children: "\u5237\u65B0" })) }))] })));
|
|
123
|
+
return (_jsxs(Box, __assign({ id: "report-header", sx: {
|
|
124
|
+
backgroundColor: '#fff',
|
|
125
|
+
backgroundImage: v3AssetBase ? "url('".concat(v3AssetBase, "/01_background.png')") : undefined,
|
|
126
|
+
backgroundRepeat: 'no-repeat',
|
|
127
|
+
backgroundSize: '100% auto',
|
|
128
|
+
backgroundPosition: 'top center',
|
|
129
|
+
} }, { children: [_jsx(Box, __assign({ sx: {
|
|
130
|
+
px: 3,
|
|
131
|
+
pt: 2,
|
|
132
|
+
pb: 1.5,
|
|
133
|
+
} }, { children: _jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 1.5 }, { children: [v3AssetBase && _jsx("img", { src: "".concat(v3AssetBase, "/02_logo.png"), alt: "", width: 18, height: 30 }), _jsx(Typography, __assign({ sx: {
|
|
134
|
+
fontFamily: 'TBMCYXT, "Source Han Sans", sans-serif',
|
|
135
|
+
fontWeight: 400,
|
|
136
|
+
fontSize: 28,
|
|
137
|
+
lineHeight: '39px',
|
|
138
|
+
color: 'rgba(0,0,0,0.86)',
|
|
139
|
+
} }, { children: "AI\u9762\u8BD5\u62A5\u544A" })), _jsxs(Typography, __assign({ variant: "body2", color: "rgba(74,74,74,0.72)", sx: { ml: 1 } }, { children: ["\u62A5\u544A\u751F\u6210\u65F6\u95F4\uFF1A", dayjs(createTime * 1000).format('YYYY-MM-DD HH:mm')] })), (operableButtons === null || operableButtons === void 0 ? void 0 : operableButtons.includes('refresh')) && (_jsx(Popover, __assign({ open: openRefresh, content: refreshContent, onClickAway: function () { return setOpenRefresh(false); } }, { children: _jsx(IconButton, __assign({ onClick: function () { return setOpenRefresh(true); }, size: "small" }, { children: _jsx(RefreshIcon, { sx: { color: '#009908' } }) })) })))] })) })), _jsx(Box, __assign({ sx: { px: 3, py: 2 } }, { children: _jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 3 }, { children: [_jsx(Box, __assign({ width: 137, height: 170, borderRadius: 2, overflow: "hidden", flexShrink: 0, display: "flex", alignItems: "center", justifyContent: "center", bgcolor: "#F2F5F3" }, { children: (candidate === null || candidate === void 0 ? void 0 : candidate.avatar) && !avatarErr ? (_jsx("img", { src: candidate.avatar, alt: "", onError: function () { return setAvatarErr(true); }, style: { width: '100%', height: '100%', objectFit: 'cover' } })) : (_jsx(DefaultAvatar, {})) })), _jsx(Box, __assign({ flex: "1 1 auto", minWidth: 0, sx: {
|
|
140
|
+
background: '#FBFDFC',
|
|
141
|
+
borderRadius: 2,
|
|
142
|
+
px: 2,
|
|
143
|
+
py: 1.5,
|
|
144
|
+
border: '1px solid #EEF6F1',
|
|
145
|
+
alignSelf: 'stretch',
|
|
146
|
+
display: 'flex',
|
|
147
|
+
flexDirection: 'column',
|
|
148
|
+
justifyContent: 'center',
|
|
149
|
+
} }, { children: _jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 3 }, { children: [_jsxs(Box, __assign({ flex: "1 1 auto", minWidth: 0 }, { children: [_jsx(Typography, __assign({ variant: "subtitle1", fontWeight: "bold", sx: { fontSize: 18, color: 'rgba(0,0,0,0.86)' } }, { children: (candidate === null || candidate === void 0 ? void 0 : candidate.positionName) || '' })), _jsxs(Typography, __assign({ variant: "body1", sx: { color: 'rgba(0,0,0,0.6)', mt: 0.5 } }, { children: [(candidate === null || candidate === void 0 ? void 0 : candidate.name) || '', " ", (candidate === null || candidate === void 0 ? void 0 : candidate.mobile) || ''] })), _jsxs(Typography, __assign({ variant: "body2", color: "rgba(0,0,0,0.6)", mt: 1 }, { children: ["\u9762\u8BD5\u65F6\u957F\uFF1A", durationText] })), showTags && showTags.length > 0 && (_jsx(Stack, __assign({ direction: "row", flexWrap: "wrap", gap: 1, mt: 1 }, { children: showTags.map(function (tag, i) {
|
|
150
|
+
var color = tagColors[i % tagColors.length];
|
|
151
|
+
return (_jsx(Box, __assign({ px: 1.2, py: 0.3, borderRadius: 10, sx: { color: color.color, bgcolor: color.bg } }, { children: _jsx(Typography, __assign({ variant: "body2" }, { children: tag.name })) }), tag.token || tag.name));
|
|
152
|
+
}) })))] })), _jsxs(Box, __assign({ alignItems: "flex-end", sx: { display: 'flex', flexDirection: 'column', alignItems: 'flex-end', minWidth: 160 } }, { children: [status === INTERVIEW_STATUS.COMPLETED && v3AssetBase ? (_jsx("img", { src: "".concat(v3AssetBase, "/label_").concat(labelFile, ".png"), alt: matchText(level), width: 134, height: 42 })) : (_jsx(Box, __assign({ sx: { bgcolor: matchColor(level), px: 2, py: 0.75, borderRadius: 2, display: 'inline-flex', alignItems: 'center' } }, { children: _jsx(Typography, __assign({ sx: { color: '#fff', fontSize: 18, fontWeight: 600 } }, { children: status === INTERVIEW_STATUS.COMPLETED ? matchText(level) : '计算中' })) }))), _jsxs(Stack, __assign({ direction: "row", alignItems: "baseline", spacing: 0.5, mt: 1 }, { children: [_jsx(Typography, __assign({ variant: "body2", color: "rgba(0,0,0,0.3)", fontWeight: 700 }, { children: "\u603B\u5206\uFF1A" })), _jsx(Typography, __assign({ sx: { fontFamily: 'TBMCYXT, sans-serif', fontWeight: 800, fontSize: 40, lineHeight: 1, color: matchColor(level) } }, { children: formatScore(feScore) })), _jsx(Typography, __assign({ variant: "body2", color: "rgba(0,0,0,0.3)", fontWeight: 700 }, { children: "\u5206" }))] })), v3AssetBase && _jsx("img", { src: "".concat(v3AssetBase, "/04_path.png"), alt: "", width: 110, height: 12 })] }))] })) }))] })) }))] })));
|
|
153
|
+
};
|
|
154
|
+
export default V3Header;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import ScoreSlider from './ScoreSlider';
|
|
14
|
+
import { useAiReportStore } from "../../../../store/ai-report/global-store";
|
|
15
|
+
import { Box, Typography } from 'fbm-ui';
|
|
16
|
+
import update from 'immutability-helper';
|
|
17
|
+
import { useCallback } from 'react';
|
|
18
|
+
var Abilities = function (_a) {
|
|
19
|
+
var stepIndex = _a.stepIndex, disabledScore = _a.disabledScore;
|
|
20
|
+
var _b = useAiReportStore(function (store) { return [store.reportResult]; }), reportResult = _b.reportResult, updateReportResult = _b.updateReportResult, onScoreChange = _b.onScoreChange;
|
|
21
|
+
var steps = (reportResult || {}).steps;
|
|
22
|
+
var handleChangeCommitted = useCallback(function (score, index, type) {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
if (disabledScore)
|
|
25
|
+
return;
|
|
26
|
+
var newSteps = update(steps, (_a = {}, _a[stepIndex] = { scoreInfo: { abilities: (_b = {}, _b[index] = { finalScore: { $set: score } }, _b) } }, _a));
|
|
27
|
+
updateReportResult(__assign(__assign({}, reportResult), { steps: newSteps }));
|
|
28
|
+
onScoreChange &&
|
|
29
|
+
onScoreChange({
|
|
30
|
+
flowStepToken: steps ? steps[stepIndex].token : '',
|
|
31
|
+
aiAbilityChangeType: steps && steps[stepIndex].scoreInfo.abilities[index].type,
|
|
32
|
+
type: 2,
|
|
33
|
+
score: score,
|
|
34
|
+
});
|
|
35
|
+
}, [stepIndex, reportResult, steps, updateReportResult, onScoreChange, disabledScore]);
|
|
36
|
+
return (_jsxs(Box, __assign({ mt: 1 }, { children: [_jsx(Typography, __assign({ variant: "body2", color: "secondary", mb: 1 }, { children: "\u5206\u503C\u8BA1\u7B97\u89C4\u5219\uFF1A\u7EFC\u5408\u8BC4\u5206=AI\u8BC4\u5206*\u5355\u9898\u6743\u91CD" })), _jsx(Box, __assign({ mt: 3 }, { children: steps &&
|
|
37
|
+
steps[stepIndex].scoreInfo.abilities.map(function (_a, index) {
|
|
38
|
+
var name = _a.name, originScore = _a.originScore, finalScore = _a.finalScore;
|
|
39
|
+
return (_jsxs(Box, { children: [_jsx(Typography, __assign({ variant: "body2" }, { children: name })), _jsx(ScoreSlider, { width: 604, disabledScore: disabledScore, isShowLabel: true, originScore: originScore, finalScore: finalScore, valueLabelDisplay: "".concat(disabledScore ? 'off' : 'auto'), onChangeCommitted: function (score) { return handleChangeCommitted(score, index, 'ability'); } })] }, name));
|
|
40
|
+
}) }))] })));
|
|
41
|
+
};
|
|
42
|
+
export default Abilities;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
29
|
+
import { Image } from './styled';
|
|
30
|
+
import { PhotoSlider } from "../../../../components/react-photo-view";
|
|
31
|
+
import "../../../../components/react-photo-view/Photo";
|
|
32
|
+
import PhotoPage from "../../../../components/react-photo-view/PhotoPage";
|
|
33
|
+
import "../../../../components/react-photo-view/PhotoSlider";
|
|
34
|
+
import { Box, Typography } from 'fbm-ui';
|
|
35
|
+
import { Stack } from 'fbm-ui/lib/mui';
|
|
36
|
+
import { useCallback, useState } from 'react';
|
|
37
|
+
var BodyImages = function (_a) {
|
|
38
|
+
var reviewImgs = _a.reviewImgs;
|
|
39
|
+
var _b = __read(useState(false), 2), visible = _b[0], setVisible = _b[1];
|
|
40
|
+
var _c = __read(useState(0), 2), index = _c[0], setIndex = _c[1];
|
|
41
|
+
var handleSelected = useCallback(function (_, i) {
|
|
42
|
+
setIndex(i);
|
|
43
|
+
setVisible(true);
|
|
44
|
+
}, []);
|
|
45
|
+
return (_jsxs(_Fragment, { children: [_jsx(Stack, __assign({ spacing: 2, direction: "row" }, { children: reviewImgs === null || reviewImgs === void 0 ? void 0 : reviewImgs.map(function (_a, i) {
|
|
46
|
+
var url = _a.url, title = _a.title;
|
|
47
|
+
return (_jsxs(Stack, __assign({ spacing: 0.5, onClick: function () {
|
|
48
|
+
setIndex(i);
|
|
49
|
+
setVisible(true);
|
|
50
|
+
} }, { children: [_jsx(Image, { src: url, alt: "" }), _jsx(Typography, __assign({ variant: "caption", color: "textSecondary", textAlign: "center" }, { children: title }))] }), url));
|
|
51
|
+
}) })), _jsx(PhotoSlider, { maskOpacity: 0.56, visible: visible, onClose: function () { return setVisible(false); }, index: index, onIndexChange: setIndex, images: reviewImgs === null || reviewImgs === void 0 ? void 0 : reviewImgs.map(function (item) { return ({ src: item.url, key: item.url, title: item === null || item === void 0 ? void 0 : item.title }); }), overlayRender: function (_a) {
|
|
52
|
+
var images = _a.images, index = _a.index;
|
|
53
|
+
return (_jsx(Box, __assign({ sx: { width: 1, position: 'absolute', bottom: 0, zIndex: 50 } }, { children: _jsx(PhotoPage, { onSelected: handleSelected, images: images, index: index }) })));
|
|
54
|
+
} })] }));
|
|
55
|
+
};
|
|
56
|
+
export default BodyImages;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type Mode = 'edit' | 'show';
|
|
3
|
+
interface EvaluateProps {
|
|
4
|
+
title: string;
|
|
5
|
+
token: string;
|
|
6
|
+
evaluation: string;
|
|
7
|
+
mode?: Mode;
|
|
8
|
+
canEdit?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const Evaluate: React.FC<EvaluateProps>;
|
|
11
|
+
export default Evaluate;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
29
|
+
import { PostInterviewEvaluation } from "../../../../services/ai-report";
|
|
30
|
+
import { Button, confirm, FormItem, Typography } from 'fbm-ui';
|
|
31
|
+
import { Box, Stack } from 'fbm-ui/lib/mui';
|
|
32
|
+
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
33
|
+
var Evaluate = function (_a) {
|
|
34
|
+
var title = _a.title, evaluation = _a.evaluation, token = _a.token, _b = _a.mode, mode = _b === void 0 ? 'show' : _b;
|
|
35
|
+
var _c = __read(useState(evaluation), 2), content = _c[0], setContent = _c[1];
|
|
36
|
+
var _d = __read(useState('show'), 2), internalMode = _d[0], setInternalMode = _d[1];
|
|
37
|
+
var handleChange = useCallback(function (e) {
|
|
38
|
+
var value = e.target.value;
|
|
39
|
+
setContent(value);
|
|
40
|
+
}, []);
|
|
41
|
+
var handleModeChange = useCallback(function () {
|
|
42
|
+
setInternalMode(internalMode === 'show' ? 'edit' : 'show');
|
|
43
|
+
}, [internalMode]);
|
|
44
|
+
var isValidate = useMemo(function () {
|
|
45
|
+
return content.trim().length > 0;
|
|
46
|
+
}, [content]);
|
|
47
|
+
var handleSubmit = useCallback(function () {
|
|
48
|
+
if (!isValidate)
|
|
49
|
+
return;
|
|
50
|
+
confirm({
|
|
51
|
+
header: null,
|
|
52
|
+
content: '确认将评价内容修改吗?该动作无法被撤销。',
|
|
53
|
+
okText: '修改',
|
|
54
|
+
okProps: {
|
|
55
|
+
color: 'error',
|
|
56
|
+
variant: 'contained',
|
|
57
|
+
},
|
|
58
|
+
onOk: function (_a) {
|
|
59
|
+
var onClose = _a.onClose;
|
|
60
|
+
var data = {
|
|
61
|
+
flowStepToken: token,
|
|
62
|
+
scoreManualEvaluation: content,
|
|
63
|
+
};
|
|
64
|
+
PostInterviewEvaluation(data).then(handleModeChange).then(onClose).catch(console.error);
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
}, [isValidate, token, content, handleModeChange]);
|
|
68
|
+
useEffect(function () {
|
|
69
|
+
setInternalMode(mode);
|
|
70
|
+
}, [mode]);
|
|
71
|
+
return (_jsxs(Stack, { children: [_jsx(Stack, __assign({ direction: "row", alignItems: "center", justifyContent: "space-between", height: 36, mb: 1 }, { children: _jsx(Typography, __assign({ variant: "body1", fontWeight: 700, sx: { color: '#4caf50' } }, { children: title })) })), internalMode === 'edit' && (_jsxs(Box, __assign({ width: 1, pr: 2 }, { children: [_jsx(FormItem, { sx: { height: 'auto', pr: 0 }, multiline: true, rows: 3.5, required: true, name: "name", placeholder: "", value: content, error: !isValidate, onChange: handleChange }), _jsxs(Stack, __assign({ boxSizing: "border-box", mr: 2, mt: 1, spacing: 1, direction: "row", width: 1, justifyContent: "flex-end" }, { children: [_jsx(Button, __assign({ size: "medium", variant: "text", color: "secondary", onClick: function () {
|
|
72
|
+
handleModeChange();
|
|
73
|
+
setContent(evaluation);
|
|
74
|
+
} }, { children: "\u53D6\u6D88" })), _jsx(Button, __assign({ size: "medium", onClick: handleSubmit }, { children: "\u4FDD\u5B58" }))] }))] }))), internalMode === 'show' && (_jsx(Typography, { variant: "body2", sx: {
|
|
75
|
+
color: '#424242',
|
|
76
|
+
whiteSpace: 'pre-wrap',
|
|
77
|
+
}, dangerouslySetInnerHTML: { __html: content } }))] }));
|
|
78
|
+
};
|
|
79
|
+
export default Evaluate;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
13
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
14
|
+
if (!m) return o;
|
|
15
|
+
var i = m.call(o), r, ar = [], e;
|
|
16
|
+
try {
|
|
17
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
18
|
+
}
|
|
19
|
+
catch (error) { e = { error: error }; }
|
|
20
|
+
finally {
|
|
21
|
+
try {
|
|
22
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
23
|
+
}
|
|
24
|
+
finally { if (e) throw e.error; }
|
|
25
|
+
}
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
import { createElement as _createElement } from "react";
|
|
29
|
+
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
30
|
+
import { ExportButton, Video } from '../styled';
|
|
31
|
+
import Abilities from './Abilities';
|
|
32
|
+
import BodyImages from './BodyImages';
|
|
33
|
+
import Evaluate from './Evaluate';
|
|
34
|
+
import ScoreSlider from './ScoreSlider';
|
|
35
|
+
import SingleChoice from './SingleChoice';
|
|
36
|
+
import { QuestionDesc } from './styled';
|
|
37
|
+
import Workplaces from './Workplaces';
|
|
38
|
+
import { ADD_QUESTION_TYPE, QUESTION_TYPE } from "../../../../enum/ai-question";
|
|
39
|
+
import { INTERVIEW_STEP_STATUS } from "../../../../enum/ai-report";
|
|
40
|
+
import { useAiReportStore } from "../../../../store/ai-report/global-store";
|
|
41
|
+
import { formatScore, highlighKeywords } from "../../../../utils/utils";
|
|
42
|
+
import { Box, Button, Message, Typography } from 'fbm-ui';
|
|
43
|
+
import { theme } from 'fbm-ui/lib/components/ThemeProvider';
|
|
44
|
+
import { Paper, Stack } from 'fbm-ui/lib/mui';
|
|
45
|
+
import update from 'immutability-helper';
|
|
46
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
47
|
+
var isShowVideoMessage = function (type) { return [QUESTION_TYPE.SINGLECHIOCE, QUESTION_TYPE.ALPHABETIC_DICTATION, QUESTION_TYPE.COLOR_BLINDNESS].includes(type); };
|
|
48
|
+
var STEP_NO_ANSWER = INTERVIEW_STEP_STATUS.STEP_NO_ANSWER, STEP_COMPLETED = INTERVIEW_STEP_STATUS.STEP_COMPLETED, STEP_FAILED = INTERVIEW_STEP_STATUS.STEP_FAILED, STEP_IN_CALCULATION = INTERVIEW_STEP_STATUS.STEP_IN_CALCULATION;
|
|
49
|
+
var QuestionItem = function (props) {
|
|
50
|
+
var token = props.token, reviewImgs = props.reviewImgs, followupQuestions = props.followupQuestions, index = props.index, status = props.status, _a = props.answer, analysisResult = _a.analysisResult, videoUrl = _a.videoUrl, posterUrl = _a.posterUrl, _b = props.question, desc = _b.desc, type = _b.type, options = _b.options, aiShowType = _b.aiShowType, _c = props.scoreInfo, score = _c.score, weight = _c.weight, originScore = _c.originScore, finalScore = _c.finalScore, abilities = _c.abilities, workplaceEvaluation = _c.workplaceEvaluation, workplaceName = _c.workplaceName, isExportPdf = props.isExportPdf;
|
|
51
|
+
var _d = __read(useState(false), 2), showAbilities = _d[0], setShowAbilities = _d[1];
|
|
52
|
+
var _e = useAiReportStore(function (store) { return [
|
|
53
|
+
store.reportResult,
|
|
54
|
+
store.stepToken,
|
|
55
|
+
store.operableButtons,
|
|
56
|
+
store.showAbilitiesDetails,
|
|
57
|
+
]; }), reportResult = _e.reportResult, operableButtons = _e.operableButtons, showAbilitiesDetails = _e.showAbilitiesDetails, updateReportResult = _e.updateReportResult, onScoreChange = _e.onScoreChange, canEditAiDimension = _e.canEditAiDimension;
|
|
58
|
+
var v3AssetBase = (useAiReportStore().v3AssetBase || '');
|
|
59
|
+
var _f = reportResult || {}, steps = _f.steps, isSimulated = _f.isSimulated;
|
|
60
|
+
var quoteIconSrc = v3AssetBase ? "".concat(v3AssetBase, "/14_quote.png") : '//webcdn.fbmms.cn/assets/OYDO/1-c2bdx4v1upzLDJ4Ko-c';
|
|
61
|
+
var _g = __read(useState('show'), 2), internalMode = _g[0], setInternalMode = _g[1];
|
|
62
|
+
var handleModeChange = useCallback(function () {
|
|
63
|
+
setInternalMode(internalMode === 'show' ? 'edit' : 'show');
|
|
64
|
+
}, [internalMode]);
|
|
65
|
+
var isAbilities = operableButtons === null || operableButtons === void 0 ? void 0 : operableButtons.includes('abilities');
|
|
66
|
+
var isExistWeight = Number(weight) > 0;
|
|
67
|
+
var showScoreBlock = status === STEP_COMPLETED;
|
|
68
|
+
var isShowAbilitiesButton = abilities.length > 0 && isAbilities && !showAbilitiesDetails;
|
|
69
|
+
var isShowAbilitiesDetails = abilities.length > 0 && (showAbilities || showAbilitiesDetails);
|
|
70
|
+
var isSingleChoice = aiShowType === ADD_QUESTION_TYPE.SINGLECHIOCE;
|
|
71
|
+
var comprehensiveScore = useMemo(function () {
|
|
72
|
+
if (status === STEP_COMPLETED) {
|
|
73
|
+
return (_jsxs(Typography, __assign({ variant: "body2", color: theme.palette.primary.main, fontSize: 16, fontWeight: 500 }, { children: [formatScore(score), "\u5206"] })));
|
|
74
|
+
}
|
|
75
|
+
else if (status === STEP_NO_ANSWER) {
|
|
76
|
+
return (_jsx(Typography, __assign({ variant: "body2", color: "rgba(0,0,0,0.26)", fontSize: 16, fontWeight: 500 }, { children: "\u672A\u4F5C\u7B54" })));
|
|
77
|
+
}
|
|
78
|
+
else if (status === STEP_IN_CALCULATION) {
|
|
79
|
+
return (_jsx(Typography, __assign({ variant: "body2", color: "#4CAF50", fontSize: 16, fontWeight: 500 }, { children: "\u8BA1\u7B97\u4E2D" })));
|
|
80
|
+
}
|
|
81
|
+
else if (status === STEP_FAILED) {
|
|
82
|
+
return (_jsx(Typography, __assign({ variant: "body2", color: "error", fontSize: 16, fontWeight: 500 }, { children: "\u8BA1\u7B97\u5931\u8D25" })));
|
|
83
|
+
}
|
|
84
|
+
}, [score, status]);
|
|
85
|
+
var renderText = useMemo(function () {
|
|
86
|
+
var keyPointAnalysis = analysisResult[6];
|
|
87
|
+
if (keyPointAnalysis && (analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.text)) {
|
|
88
|
+
var content_1 = analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.text;
|
|
89
|
+
Object.entries(keyPointAnalysis).forEach(function (_a) {
|
|
90
|
+
var _b = __read(_a, 2), keyword = _b[0], config = _b[1];
|
|
91
|
+
content_1 = highlighKeywords(content_1, keyword, config.color);
|
|
92
|
+
});
|
|
93
|
+
return content_1;
|
|
94
|
+
}
|
|
95
|
+
if (analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.letter) {
|
|
96
|
+
return "\u6B63\u786E\u7B54\u6848\uFF1A".concat(analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.letter, " <br/> \u56DE\u7B54\uFF1A").concat(analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.answer);
|
|
97
|
+
}
|
|
98
|
+
return analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.text;
|
|
99
|
+
}, [analysisResult]);
|
|
100
|
+
var handleChangeCommitted = useCallback(function (score) {
|
|
101
|
+
var _a;
|
|
102
|
+
if (isSingleChoice)
|
|
103
|
+
return;
|
|
104
|
+
var newSteps = update(steps, (_a = {}, _a[index] = { scoreInfo: { finalScore: { $set: score } } }, _a));
|
|
105
|
+
updateReportResult(__assign(__assign({}, reportResult), { steps: newSteps }));
|
|
106
|
+
onScoreChange &&
|
|
107
|
+
onScoreChange({
|
|
108
|
+
flowStepToken: steps ? steps[index].token : '',
|
|
109
|
+
type: 1,
|
|
110
|
+
score: score,
|
|
111
|
+
});
|
|
112
|
+
}, [index, reportResult, steps, updateReportResult, onScoreChange, isSingleChoice]);
|
|
113
|
+
var handleVideoClick = useCallback(function () {
|
|
114
|
+
// 如果没有视频URL且符合显示错误消息的条件,则显示错误提示
|
|
115
|
+
if (!videoUrl && isShowVideoMessage(type)) {
|
|
116
|
+
Message.error('因候选人回答时长过短,未获取到题目视频。');
|
|
117
|
+
}
|
|
118
|
+
// 其他视频点击逻辑可以在这里处理
|
|
119
|
+
}, [videoUrl, type]);
|
|
120
|
+
return (_jsxs(Stack, __assign({ component: Paper, elevation: 1, sx: {
|
|
121
|
+
padding: '16px 16px',
|
|
122
|
+
mt: 2,
|
|
123
|
+
background: '#fff',
|
|
124
|
+
mx: 1,
|
|
125
|
+
borderRadius: '12px',
|
|
126
|
+
position: 'relative',
|
|
127
|
+
} }, { children: [_jsxs(Stack, __assign({ direction: "row", justifyContent: "space-between", spacing: 4 }, { children: [_jsxs(Stack, __assign({ flex: 1, mt: 1 }, { children: [_jsxs(Stack, __assign({ direction: "row", alignItems: "center" }, { children: [_jsx(Box, __assign({ sx: {
|
|
128
|
+
background: '#4EC953',
|
|
129
|
+
color: '#fff',
|
|
130
|
+
borderRadius: 6,
|
|
131
|
+
boxShadow: '4px 0px 8px 0px rgba(78,201,83,0.3)',
|
|
132
|
+
width: 33,
|
|
133
|
+
height: 20,
|
|
134
|
+
display: 'flex',
|
|
135
|
+
alignItems: 'center',
|
|
136
|
+
justifyContent: 'center',
|
|
137
|
+
fontSize: 16,
|
|
138
|
+
flexShrink: 0,
|
|
139
|
+
} }, { children: index + 1 })), _jsx(Typography, __assign({ ml: 1.5, variant: "body2", sx: { color: '#03BA4C', fontSize: 14, lineHeight: '21px' } }, { children: desc }))] })), _jsxs(QuestionDesc, { children: [_jsx(BodyImages, { reviewImgs: reviewImgs }), _jsx("img", { className: "MuiSvgIcon-root", src: quoteIconSrc, alt: "", width: 20, height: 15 }), status === STEP_IN_CALCULATION ? (_jsx(Typography, __assign({ variant: "body2", color: "secondary" }, { children: "\u89C6\u9891\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u5019" }))) : (_jsxs(_Fragment, { children: [isSingleChoice && _jsx(SingleChoice, { options: options || [], selected: (analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.selected) || [] }), _jsx(Typography, { variant: "body2", sx: { color: 'rgba(0,0,0,0.6)', fontSize: 12, lineHeight: '18px' }, dangerouslySetInnerHTML: { __html: renderText } }), type === QUESTION_TYPE.COLOR_BLINDNESS && (analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.img) && (_jsxs(Box, { children: [_jsx("img", { style: { width: 100, height: 100 }, src: analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.img, alt: "" }), _jsxs(Typography, __assign({ variant: "body2", color: "secondary", ml: 1 }, { children: ["\u56DE\u7B54\uFF1A", analysisResult === null || analysisResult === void 0 ? void 0 : analysisResult.answer] }))] }))] }))] }), followupQuestions === null || followupQuestions === void 0 ? void 0 : followupQuestions.map(function (v, followupIndex) {
|
|
140
|
+
return (_jsxs(Box, { children: [_jsx(Typography, __assign({ mt: 1, variant: "body2", sx: { color: '#03BA4C', fontSize: 14 } }, { children: "\u8FFD\u95EE\uFF1A".concat(v === null || v === void 0 ? void 0 : v.desc) })), _jsxs(QuestionDesc, { children: [_jsx("img", { className: "MuiSvgIcon-root", src: quoteIconSrc, alt: "", width: 20, height: 15 }), _jsx(Typography, __assign({ variant: "body2", sx: { color: 'rgba(0,0,0,0.6)', fontSize: 12 }, ml: 1 }, { children: v === null || v === void 0 ? void 0 : v.answer }))] })] }, "followup-".concat(index, "-").concat(followupIndex)));
|
|
141
|
+
})] })), _jsxs(Box, __assign({ position: "relative" }, { children: [isExportPdf && (_jsx(ExportButton, __assign({ href: videoUrl, target: "_blank" }, { children: _jsx("img", { src: "//webcdn.fbmms.cn/assets/htyk/jjn4TDJ1eW5akU_lblzYe", alt: "", style: { width: 166, height: 296 } }) }))), !isExportPdf && (_jsx(Video, { src: videoUrl, poster: posterUrl, onClick: handleVideoClick, width: 135, onPlay: function (event) {
|
|
142
|
+
document.querySelectorAll('video').forEach(function (v) { return v !== event.target && v.pause(); });
|
|
143
|
+
} }))] }))] })), isExistWeight && status !== STEP_COMPLETED && (_jsxs(Box, __assign({ width: "100%", display: "flex", alignItems: "center", mt: 2 }, { children: [_jsx(Box, __assign({ flex: "1 0", display: "flex", alignItems: "center", pl: 2 }, { children: workplaceName && (_jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 0.5, mb: 1 }, { children: [_jsx(Typography, __assign({ sx: { color: '#03BA4C', fontSize: 14 }, variant: "body2", fontWeight: "500" }, { children: "\u8003\u6838\u70B9\uFF1A" })), _jsx(Typography, __assign({ variant: "body2", sx: { fontSize: 14, color: 'rgba(0,0,0,0.8)' } }, { children: workplaceName }))] }))) })), _jsx(Box, __assign({ width: 150, textAlign: "right" }, { children: _jsxs(Typography, __assign({ variant: "body1", fontSize: 16, fontWeight: 500, noWrap: true, display: "flex" }, { children: ["\u7EFC\u5408\u8BC4\u5206\uFF1A", comprehensiveScore] })) }))] }))), showScoreBlock && (_jsxs(Stack, __assign({ mt: 3, spacing: 1, sx: { position: 'relative' } }, { children: [canEditAiDimension && ((workplaceEvaluation && !isSimulated) || (isSimulated && abilities.length > 0)) && (_jsx("img", { onClick: handleModeChange, src: "//webcdn.fbmms.cn/assets/CVlD/V8fHAovf4X6wfXN75KkI9", alt: "", style: { width: 36, height: 36, position: 'absolute', top: 0, right: 0, cursor: 'pointer' } })), workplaceName && (_jsxs(Stack, __assign({ direction: "row", alignItems: "center", spacing: 0.5, mb: 1 }, { children: [_jsx(Typography, __assign({ sx: { color: '#03BA4C', fontSize: 14 }, variant: "body2", fontWeight: "500" }, { children: "\u8003\u6838\u70B9\uFF1A" })), _jsx(Typography, __assign({ variant: "body2", sx: { fontSize: 14, color: 'rgba(0,0,0,0.8)' } }, { children: workplaceName }))] }))), _jsxs(Box, __assign({ mt: 2, display: "flex" }, { children: [_jsxs(Typography, __assign({ variant: "body2", mr: 4, sx: { color: 'rgba(0,0,0,0.6)' } }, { children: ["\u8BC4\u5206\uFF1A", finalScore.toFixed(0), "\u5206"] })), _jsxs(Typography, __assign({ variant: "body2", sx: { color: 'rgba(0,0,0,0.6)' } }, { children: ["\u5355\u9898\u6743\u91CD\uFF1A", weight, "%"] }))] })), _jsxs(Box, __assign({ width: "100%", display: "flex", alignItems: "center", mt: 2 }, { children: [_jsxs(Box, __assign({ flex: "1 0", display: "flex", alignItems: "center" }, { children: [_jsx(ScoreSlider, { valueLabelDisplay: "".concat(isSingleChoice ? 'off' : 'auto'), originScore: originScore, disabledScore: isSingleChoice, finalScore: finalScore, isShowScoreRank: true, onChangeCommitted: handleChangeCommitted }), isShowAbilitiesButton && (_jsx(Button, __assign({ variant: "text", size: "small", sx: { color: 'rgba(0,0,0,0.6)' }, style: { whiteSpace: 'nowrap', marginLeft: 8 }, onClick: function () { return setShowAbilities(!showAbilities); } }, { children: showAbilities ? '收起' : '详情' })))] })), _jsx(Box, __assign({ width: 150, textAlign: "right" }, { children: _jsxs(Typography, __assign({ variant: "body1", fontWeight: 500, noWrap: true, display: "flex" }, { children: ["\u7EFC\u5408\u8BC4\u5206\uFF1A", comprehensiveScore] })) }))] })), isShowAbilitiesDetails && (_jsx(Box, __assign({ sx: { border: '1px solid #E7F4EC', borderRadius: 2, p: 1.5, mt: 1 } }, { children: _jsx(Abilities, { stepIndex: index, disabledScore: isSingleChoice }) }))), isSimulated && (_jsx(_Fragment, { children: abilities.map(function (v) { return (_createElement(Workplaces, __assign({}, v, { key: v.token, mode: internalMode, token: token }))); }) })), workplaceEvaluation && !isSimulated && (_jsx(_Fragment, { children: _jsx(Evaluate, { token: token, evaluation: workplaceEvaluation, title: " AI\u8BC4\u4EF7", mode: internalMode }) }))] })))] }), token));
|
|
144
|
+
};
|
|
145
|
+
export default QuestionItem;
|